diff --git a/G51/ExerciceAccesConcurrentsGestionTransaction.xls b/G51/ExerciceAccesConcurrentsGestionTransaction.xls new file mode 100644 index 0000000..ba3c5bf Binary files /dev/null and b/G51/ExerciceAccesConcurrentsGestionTransaction.xls differ diff --git a/G51/LicenceTP01.pdf b/G51/LicenceTP01.pdf new file mode 100644 index 0000000..5059559 Binary files /dev/null and b/G51/LicenceTP01.pdf differ diff --git a/G51/TD01.texte b/G51/TD01.texte new file mode 100644 index 0000000..86ad26b --- /dev/null +++ b/G51/TD01.texte @@ -0,0 +1,84 @@ ++ NOTES : +--------- + ++ Connexion depuis notre poste sur Oracle : +sqlplus trois_dossmanno@lpdt ++ Adresse de la documentation d'Oracle : +http://www.oracle.com/global/fr/support/index.html ++ Ceci permet d'aggrandir la longueur de la ligne dans SQLPLUS : +set linesize 255 ++ Enlever les entêtes de colonne +set heading off +*Afficher les champs de la table V$INSTANCE +desc V$INSTANCE; + +* Sauvegarde dans un fichier la commande +save tssize +* Défini l'éditeur par défaut +define_editor=vim +* Editer le fichier +ed tssize +* Lance ledit fichier +@tssize + ++ EXERCICE : +------------ + +CREATION UTILISATEURS : +----------------------- +create user litt +identified by litt +default tablespace USERS +temporary tablespace TEMP; + +create user trois_dossmanno +identified by olivier +default tablespace USERS +temporary tablespace TEMP; + +DROITS SUR BASE : +----------------- +grant DBA to litt; + +grant DBA to trois_dossmanno; + +* Affiche la date pour l'utilisateur courant. +select 'Date du jour : '|| to_char(sysdate, 'DD/MM/YYYY') " " from dual; + +INSTANCE EN COURS : +------------------- + +select INSTANCE_NAME, INSTANCE_NAME "IDENTIFIANT", VERSION, HOST_NAME "SERVEUR", CREATED "CREATION", STARTUP_TIME "DEMARRAGE", STATUS "STATUT" from V$INSTANCE + +TABLESPACE : +------------ + +* Affiche l'ensemble des tablespaces : +select * from dba_tablespaces; + +* Afficher les détails des tablespaces +select ut.tablespace_name "Tablespace", ut.status "Statut", df.file_name "Fichier(s)", df.status "Statut" from user_tablespaces ut,dba_data_files df; + +AFFICHER QUELQUES DONNES SUR LA TABLE SYSTEM : +----------------------------------------------- + +select * from dba_free_space fs, dba_data_files df where fs.tablespace_name = df.tablespace_name and fs.tablespace_name = 'SYSTEM'; + +*TOTAL maximum +select tablespace_name, to_char(SUM(BYTES)/1048579,'999D000') "Total MB" +from dba_data_files +group by tablespace_name + +* Affiche la mémoire utilisée pour chacune des tables +select df.tablespace_name, to_char((SUM(fs.BYTES)+SUM(df.BYTES))/1048579,'999D00') "Total MB", to_char(SUM(fs.BYTES)/1048579,'999D00') "Libre MB" , to_char(SUM(df.BYTES)/1048579, '999D00') "Utilise MB" +from dba_data_files df, dba_free_space fs +where df.tablespace_name = fs.tablespace_name +group by df.tablespace_name + + +CREER un table space : +---------------------- + +create tablespace VAL_DOSS datafile '/opt/oralp/LPDT/tablespaces/data/VAL_DOSS.dbf' size 1m reuse autoextend off; + + diff --git a/G51/TD02.texte b/G51/TD02.texte new file mode 100644 index 0000000..ad66650 --- /dev/null +++ b/G51/TD02.texte @@ -0,0 +1,172 @@ + +Aller sur pipit/~tancrez/ +pour avoir le sujet. + +TD02 : + +Création des tables : + + +create table film ( + id_film number(4) PRIMARY KEY, + titre varchar(255), + annee number(6), + id_realisateur varchar(255) +) + TABLESPACE USERS; + +create table seance ( + id_seance number(4) PRIMARY KEY, + heuredebut number(4), + heurefin number(4), + id_salle number(4), + id_film number(4) + +create table cinema ( + id_cinema number(4) PRIMARY KEY, + nom varchar(255), + adresse varchar(255) +) + TABLESPACE USERS; + +create table salle ( + id_salle number(4) PRIMARY KEY, + nom varchar(255), + capacite number(3), + id_cinema number(4) +) + TABLESPACE USERS; + +ALTER TABLE salle + ADD CONSTRAINT f_id_cinema FOREIGN KEY (id_cinema) REFERENCES cinema(id_cinema); + +) + +ALTER TABLE seance + ADD CONSTRAINT f_id_salle FOREIGN KEY (id_salle) REFERENCES salle(id_salle); + +ALTER TABLE seance + ADD CONSTRAINT f_id_film FOREIGN KEY (id_film) REFERENCES film(id_film); + + +-------------------------------------------------------------------------- +AIDE AIDE AIDE AIDE AIDE + +http://www.toutenligne.com/index.php?contenu=sql_explain&menu=sql + + +Aller aussi sur : http://pipit/~3fheitz + +--------------------------------------------------------------------------- + + +create table PLAN_TABLE ( + statement_id varchar2(30), + timestamp date, + remarks varchar2(80), + operation varchar2(30), + options varchar2(30), + object_node varchar2(128), + object_owner varchar2(30), + object_name varchar2(30), + object_instance numeric, + object_type varchar2(30), + optimizer varchar2(255), + search_columns number, + id numeric, + parent_id numeric, + position numeric, + cost numeric, + cardinality numeric, + bytes numeric, + other_tag varchar2(255), + partition_start varchar2(255), + partition_stop varchar2(255), + partition_id numeric, + other long, + distribution varchar2(30)) +tablespace USERS +; + +---------------------------------------------------------------------------- + +set linesize 255 +set wrap on +col acces for a20 +col object_name for a10 +select id, lpad(' ',parent_id+1)||operation acces,options,object_name,parent_id,position +from plan_table where statement_id ='MonPremierEssai'; + +---------------------------------------------------------------------------- + ensuite taper la commande suivante : + +explain plan +set statement_id ='MonPremierEssai' +for +select * from cinema where nom='Le rex' +; + +Pour finalement vérifier le contenu ainsi générer : + +select operation,options,object_name,id,parent_id,position +from plan_table +where statement_id='MonPremierEssai' order by id +; + +CE QUI DONNE : + +OPERATION OPTIONS OBJECT_NAME ID PARENT_ID POSITION +------------------------------ ------------------------------ ------------------------------ ---------- ---------- ---------- +SELECT STATEMENT 0 +TABLE ACCESS FULL CINEMA 1 0 1 + + +¤ Pour question 2 on a : + +explain plan +set statement_id ='MonSecondEssai' +for +SELECT * FROM cinema WHERE id_cinema=1908; + +set linesize 255 +set wrap on +col acces for a20 +col object_name for a10 +select id, lpad(' ',parent_id+1)||operation acces,options,object_name,parent_id,position +from plan_table where statement_id ='MonSecondEssai'; + +¤ Ce qui donne : + + ID ACCES OPTIONS OBJECT_NAM PARENT_ID POSITION +---------- -------------------- ------------------------------ ---------- ---------- ---------- + 0 SELECT STATEMENT + 1 TABLE ACCESS BY INDEX ROWID CINEMA 0 1 + 2 INDEX UNIQUE SCAN SYS_C00243 1 1 + 9 + +¤ Pour les jointures on a : + +explain plan +set statement_id ='MonTroisiemeEssai' +for +SELECT cinema.nom, capacite +FROM cinema, salle WHERE cinema.id_cinema=salle.id_cinema; + +set linesize 255 +set wrap on +col acces for a20 +col object_name for a10 +select id, lpad(' ',parent_id+1)||operation acces,options,object_name,parent_id,position +from plan_table where statement_id ='MonTroisiemeEssai'; + +¤ Ce qui donne : + + ID ACCES OPTIONS OBJECT_NAM PARENT_ID POSITION +---------- -------------------- ------------------------------ ---------- ---------- ---------- + 0 SELECT STATEMENT + 1 NESTED LOOPS 0 1 + 2 TABLE ACCESS FULL SALLE 1 1 + 3 TABLE ACCESS BY INDEX ROWID CINEMA 1 2 + 4 INDEX UNIQUE SCAN SYS_C00243 3 1 + 9 + diff --git a/G54/FabriqueDocuments.uml b/G54/FabriqueDocuments.uml new file mode 100644 index 0000000..1d4361f --- /dev/null +++ b/G54/FabriqueDocuments.uml @@ -0,0 +1,2110 @@ + + + + + + +UMLStandard + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +JHbYS/ung0u9sLR9NaB6+AAA + +/h9+d8myqU6rQ9F8ePlsUQAA + + + + +Analysis Model +UMLStandard +analysisModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +True +RobustnessDiagram +RAmAA59hh06H2Lgzh2ws6wAA + +8y2XTjpsVEW84pSq+fO9CgAA + + + + +Design Model +UMLStandard +designModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +True +rdpYIcoK9Em30t5d9g3BhgAA + +vKUNnDfUF0a5ZdpPtMjO/gAA +30 + +clMaroon +$00B9FFFF +832 +8 +313 +565 +JMH/lV3enEWLeRUov/mQhgAA + + +IHM + + +False + + +False + + + + +clMaroon +$00B9FFFF +484 +8 +317 +565 +qJtKf9XZIkypw6FrOikzVgAA + + +Gestion + + +False + + +False + + + + +clMaroon +$00B9FFFF +12 +8 +461 +561 +Impda0SpPESB4/qCzi4/LwAA + + +Documents + + +False + + +False + + + + +clMaroon +$00B9FFFF +24 +268 +125 +95 +7PB0Q/ABFU2nmEBmf5C3sQAA + + +1 +Texte + + +False + + +False + + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +False +7PB0Q/ABFU2nmEBmf5C3sQAA + + + +clMaroon +$00B9FFFF +164 +264 +118 +95 +lKDXBy6K20m5qoHJqD7wNQAA + + +1 +Figure + + +False + + +False + + + +lKDXBy6K20m5qoHJqD7wNQAA + + +lKDXBy6K20m5qoHJqD7wNQAA + + +False +lKDXBy6K20m5qoHJqD7wNQAA + + + +clMaroon +$00B9FFFF +300 +284 +165 +94 +wLGeEZTkNk6DSYrx4LXTJwAA + + +1 +Section + + +False + + +False + + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +False +wLGeEZTkNk6DSYrx4LXTJwAA + + + +clMaroon +$00B9FFFF +200 +48 +178 +174 +gQoe9RSSW0OjJ//CTwBU7wAA + + +3 +Element + + +False + + +False + + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +False +gQoe9RSSW0OjJ//CTwBU7wAA + + + +clMaroon +$00B9FFFF +lsRectilinear +402,284;402,124;377,124 +2QdImmKJPEKQbcoOJlxxPgAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +1,5707963267949 +30 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +-1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +0,356911880866181 +62,9682459657247 +epHead ++Elements +KCIdSwBnJ0uohZj1QTpYnQAA + + +-0,799889982760072 +48,7954915950234 +epTail ++Conteneur +vUAG/l9ewkidQeX5aRnYxwAA + + +0,643500808793404 +20 +epHead +0..* +KCIdSwBnJ0uohZj1QTpYnQAA + + +-0,523598775598299 +25 +epTail +0..1 +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-0,785398163397448 +40 +epHead +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +0,785398163397448 +40 +epTail +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-1168 +-1024 +50 +8 +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +-1168 +-1024 +50 +8 +vUAG/l9ewkidQeX5aRnYxwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +352,284;352,268;298,268;298,221 +True +xTD57L5WYE6QCUfz2s5U5QAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +1,5707963267949 +30 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +-1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + + +clMaroon +$00B9FFFF +lsRectilinear +96,268;96,188;200,188 +IzsrjrzKn02WHI6doKm26AAA +IZrUep6ckUuRPEQSsWDumQAA +lLhY7Ox3k0mQQC0dLUTASwAA + +False +1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + +False +1,5707963267949 +30 +IzsrjrzKn02WHI6doKm26AAA + + +False +-1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + + +clMaroon +$00B9FFFF +lsRectilinear +248,264;248,221 +True +T5KG/Eqx6kqP/URCm/jPqwAA +IZrUep6ckUuRPEQSsWDumQAA +TaTuOxbRu0KSM/avnE4YhwAA + +False +1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +1,5707963267949 +30 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +-1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +672,428;672,408;796,408;796,490;778,490 +8S66RFsDdEa5XqTHl5TBbgAA +GgzpQjr4u0iuK5eMrLvVnAAA +GgzpQjr4u0iuK5eMrLvVnAAA + +False +1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +1,5707963267949 +30 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +-1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +4 +-0,523598775598299 +30 +epHead +-instance +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,523598775598299 +30 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +0,523598775598299 +25 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-0,523598775598299 +25 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-0,785398163397448 +40 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,785398163397448 +40 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-1148 +-988 +50 +8 +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-1148 +-988 +50 +8 +JZM2DpGZAE6m4QvsBB1V0gAA + + + +clMaroon +$00B9FFFF +lsRectilinear +377,146;612,146;612,428 +tY2DMCUVHUOWQDQ8D8yQIgAA +GgzpQjr4u0iuK5eMrLvVnAAA +IZrUep6ckUuRPEQSsWDumQAA + +False +1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +1,5707963267949 +30 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-0,636508321891975 +57,2013985843004 +epHead ++Documents +62HREk8rX0Sc9cgZ2vd5OAAA + + +0,053639767733732 +149,214610544678 +epTail ++Documents +JkDLBRvCP0K10wkkvGdk9gAA + + +0,523598775598299 +25 +epHead +0..* +62HREk8rX0Sc9cgZ2vd5OAAA + + +-0,523598775598299 +25 +epTail +0..* +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-0,785398163397448 +40 +epHead +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +0,785398163397448 +40 +epTail +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-1168 +-1024 +50 +8 +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +-1168 +-1024 +50 +8 +JkDLBRvCP0K10wkkvGdk9gAA + + + +clMaroon +$00B9FFFF +860 +184 +140 +82 +Ly5Gzi7l80CSAnPpQyskqgAA + + +3 +IHM_Acteur + + +False + + +False + + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +False +Ly5Gzi7l80CSAnPpQyskqgAA + + + +clMaroon +$00B9FFFF +496 +428 +283 +126 +DpTZIs2Xu0i1gBSzuYZrrQAA + + +3 +Fabrique + + +<<singleton>> + + +False + + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +False +DpTZIs2Xu0i1gBSzuYZrrQAA + + + +clMaroon +$00B9FFFF +16 +404 +246 +56 +FwMOtxt65UqiV6b+R4wngQAA + + +1 +FabriqueTexte + + +False + + +False + + + +FwMOtxt65UqiV6b+R4wngQAA + + +FwMOtxt65UqiV6b+R4wngQAA + + +False +FwMOtxt65UqiV6b+R4wngQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +860,206;551,206;551,428 +/Tf5ww9HIk26fn0XuP8sfgAA +GgzpQjr4u0iuK5eMrLvVnAAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +1,5707963267949 +30 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-0,523598775598299 +30 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,523598775598299 +30 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +0,523598775598299 +25 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-0,523598775598299 +25 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-0,785398163397448 +40 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,785398163397448 +40 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-1168 +-1024 +50 +8 +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-1168 +-1024 +50 +8 +v/3JzN1mHkiM/jF82ZDGSgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +953,184;953,168;377,168 +1iuwg1OgkkKmD5szUfIx9wAA +IZrUep6ckUuRPEQSsWDumQAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +1,5707963267949 +30 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-0,523598775598299 +30 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,523598775598299 +30 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +0,523598775598299 +25 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-0,523598775598299 +25 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-0,785398163397448 +40 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,785398163397448 +40 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-1168 +-1024 +50 +8 +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-1168 +-1024 +50 +8 +SlDb+R4REUGthoXfmcjSygAA + + + +clMaroon +$00B9FFFF +lsRectilinear +96,459;96,524;496,524 +2PpC0Fqr6UqE0aMfqQ46GwAA +GgzpQjr4u0iuK5eMrLvVnAAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +1,5707963267949 +30 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +-1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + + +clMaroon +$00B9FFFF +272 +408 +191 +56 +4WYHqFXU/Ei9XC5FeDIRcAAA + + +1 +FabriqueSection + + +False + + +False + + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +False +4WYHqFXU/Ei9XC5FeDIRcAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +379,408;379,377 +Ul/fzQqTAUukGYtpbwyHTQAA +4tEdqQwMtE2uuSutrJ+auAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +1,5707963267949 +30 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +-1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +462,452;496,452 +clNqWUTgp0+2091x1gbjyQAA +GgzpQjr4u0iuK5eMrLvVnAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + +False +1,5707963267949 +30 +clNqWUTgp0+2091x1gbjyQAA + + +False +-1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + + +clMaroon +$00B9FFFF +72 +500 +291 +56 +DRf42+A5fk+PlBjqQM3BtgAA + + +1 +FabriqueFigure + + +False + + +False + + + +DRf42+A5fk+PlBjqQM3BtgAA + + +DRf42+A5fk+PlBjqQM3BtgAA + + +False +DRf42+A5fk+PlBjqQM3BtgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +276,500;276,492;496,492 +FkAvYphJvk+GhCrWQg0hMwAA +GgzpQjr4u0iuK5eMrLvVnAAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +1,5707963267949 +30 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +-1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +105,404;105,362 +dJmGmjPQe0SCGupNm425rAAA +lLhY7Ox3k0mQQC0dLUTASwAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + +False +1,5707963267949 +30 +dJmGmjPQe0SCGupNm425rAAA + + +False +-1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +264,500;264,358 +Nqze4q3bu06gBwJorRWqcwAA +TaTuOxbRu0KSM/avnE4YhwAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + +False +1,5707963267949 +30 +Nqze4q3bu06gBwJorRWqcwAA + + +False +-1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + + +clMaroon +$00B9FFFF +964 +56 +145 +69 +6s7gNM7H50yqpGioT/feqgAA + + +1 +Redacteur + + +False + + +False + + + +6s7gNM7H50yqpGioT/feqgAA + + +6s7gNM7H50yqpGioT/feqgAA + + +False +6s7gNM7H50yqpGioT/feqgAA + + + +clMaroon +$00B9FFFF +868 +316 +234 +69 +MnkwLOdbOEe7eRLOB7CxBwAA + + +1 +Lecteur + + +False + + +False + + + +MnkwLOdbOEe7eRLOB7CxBwAA + + +MnkwLOdbOEe7eRLOB7CxBwAA + + +False +MnkwLOdbOEe7eRLOB7CxBwAA + + + +clMaroon +$00B9FFFF +1009,124;961,184 +JK2MxvnL/UiAlL6BB7jGvAAA +RD1fjP+6TU+OFn6MZHxYxAAA +DqHuCxa1DUey+2GMGzdmzgAA + +False +1,5707963267949 +15 +JK2MxvnL/UiAlL6BB7jGvAAA + + +False +1,5707963267949 +30 +JK2MxvnL/UiAlL6BB7jGvAAA + + +False +-1,5707963267949 +15 +JK2MxvnL/UiAlL6BB7jGvAAA + + + +clMaroon +$00B9FFFF +969,316;947,265 +yfBkx3/zI0qLl3KFCn8v0wAA +RD1fjP+6TU+OFn6MZHxYxAAA +ZA+4aIbNS0KK4pZIbi5n9AAA + +False +1,5707963267949 +15 +yfBkx3/zI0qLl3KFCn8v0wAA + + +False +1,5707963267949 +30 +yfBkx3/zI0qLl3KFCn8v0wAA + + +False +-1,5707963267949 +15 +yfBkx3/zI0qLl3KFCn8v0wAA + + + + +28 + +rdpYIcoK9Em30t5d9g3BhgAA +7PB0Q/ABFU2nmEBmf5C3sQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +F+KzEqgZukKebZ9wrEk1YwAA +/B3KwthTp0aKqDFivdLmBQAA +lqL/Q1v++067Zr+IohbimQAA +TJc4oZj+xUa55ki/ba43gAAA + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +rdpYIcoK9Em30t5d9g3BhgAA +wLGeEZTkNk6DSYrx4LXTJwAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +gw6dorecbk6fD17w0h/iLAAA +DGqTTY/L3U+h6dsyjTgALQAA +aTou8p43o0+LXZYHDLCTlAAA +OY/5uFcVQki3pJ887NcqeQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +Q6yD3QsMzE25YDMaVU6+TAAA +uMq6qFvcbUyZxaY+eaUtmQAA +BXfFtAXkoEOtbs7g9yN0bwAA +iNST/Zu3zkCNa4JrcftV3AAA +2 + +Conteneur +akAggregate +0..1 +2QdImmKJPEKQbcoOJlxxPgAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +09EKbaxDJkuR6XwlrjhSeAAA +u6mmwaSMHEqaZr0JoddhNQAA +9Rx+XA88LEiuVRe+QyJmZAAA +uyS/EAbxZk+cwSaQlKy/VgAA + + +Elements +0..* +2QdImmKJPEKQbcoOJlxxPgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +6BjnnKTz2E6rrcPfDEH7CwAA +3x3v68wUz0iyJzfHFPglXAAA +e4xWxFBchk6ea3K4xE3JeQAA +MKgq+2XM4UeXvlK+1z8iqwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 ++nBYw7fZdEGdRvZrY3KnPwAA +Pu821KTtjEiwSgcLvLTM+AAA +H2Ywz05jcUW0ijk6j+DJRQAA +5h/LJBrOK0y3aIvPW6DT0AAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +FcRZSwUMu0u/p+CFECzXeAAA +GvNXbQuiqEuhdnDzJSqn1wAA +fdVZ3TRlSEG2CCvlkcp1EAAA +pb7/YvwTWkOydEduVK6fOAAA +2 + +False +8S66RFsDdEa5XqTHl5TBbgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +kkjTujizw0C+6uBXCnK24gAA +PB9M47k47keNP9Pe79WmKgAA +mVPKyBTqkkWCbMUuemYp9wAA +blMWv7Oqn02naij/1fdXZAAA + + +instance +vkPrivate +skClassifier +8S66RFsDdEa5XqTHl5TBbgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +1HR+bQo66EC9KzlWuTaPcgAA +q+GdAN/bgU+xKz43fwKvfQAA ++IzzQfo89kqo6OXT8ddxtgAA +o/G0RX0uWUK7HdmbbGLm+gAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +u9KUFvRGpkSx5YNgHn1oqAAA +WFYbk3ivI06nlEVWRVbygwAA +IhVcCvAau0OV8xLtvXOrkAAA +CgIvFfZ4bkC5gFBq56BTBAAA +2 + +Documents +0..* +tY2DMCUVHUOWQDQ8D8yQIgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +d57JhDFplUmUdi3dXCpinAAA +TFloeNbN+E2gYHfAk9ZItQAA +roKGFttIDkS/Y7rkKoS31AAA +4IuQSyf9pUG6+/Krgy/F4AAA + + +akComposite +0..* +tY2DMCUVHUOWQDQ8D8yQIgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +pHvCxGMwPku8L9gjWD1SSgAA +qNfeuC53cUSimFjWBncUHgAA +jFjWdylWUE65sWUrBY6pfgAA +Zz8I8J9IZU2rkCpgvKhg3QAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +skbxGhtEq0qqOdpSojyiTAAA +IqN5merIyUyzMNXxyUSTxwAA +VCd5XrrqOkW9HGHKdiTmQAAA +Fh1h/Dt1lEuvKKd8P1ozNgAA +2 + +False +/Tf5ww9HIk26fn0XuP8sfgAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +VnuGW79Hh0mGnLGCU+/xuQAA +5hxFsJPxAUGIvjklN6D1awAA +InHmfn16ZkeDqd6h5me7BAAA +eI30KyRAyU+5iMwLZU8twgAA + + +/Tf5ww9HIk26fn0XuP8sfgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +I8kjgZZ5D0iqoX/g8eRJyQAA +kgbIQPln502UbsCqr+rcbQAA +sahQPR7tEUeUPh+3sevqFQAA +J/of49t/4UuMqYbJlL1lpQAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +ODYZmWboWUOcUj7XPHz6HQAA +qRYpMnlX2Uu7tHn/HQZmpwAA +PLydsm11lEmC3X6Mm8TGGgAA +Gkqzli9fnE2hY9yJAdZLPQAA +2 + +False +1iuwg1OgkkKmD5szUfIx9wAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +QxE9zIymekqfAcQYCcWW9QAA +n3MJIySJBEGaN3sepTPtwAAA +lTQunBGT6EClbyYz6zOxtgAA +B8KaOmMc0UuyLvy9I+Mg/gAA + + +False +1iuwg1OgkkKmD5szUfIx9wAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +MUamdQJ3dUCx6iaBNWM0vgAA +exg1jFJb2k2TmHHiu81J1wAA +XDtFq5O8T0yUkOTTmoO/BAAA +OLEbIsiGbEyk5G8LzyGNzwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +XoLcZddSUEitQEk5GoIDiAAA +nD3/pEkwkk+xBVfcScNMQAAA +RpmvIPr5TEOlK4gWx2s2GwAA +ykSUAeGgx0KXmALZog//4QAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +lKDXBy6K20m5qoHJqD7wNQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +sqBcmD5cIUuw9zysmhDF2wAA +jdMvKaHxmEeiFufDE2xiawAA +5zfnwtcPAU2Ido+x12zH6AAA +bfISscEtpECF/dwEeH6wUgAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +yAadqRWlgkesJ8rLajOQkQAA +6zGx7dvjLEyzocy2kx6kIQAA +PpfDRWJ6xkiMDSbfog6pBAAA +/P/BevfwEUy+kGivjMh2jQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +doPYhTezD02w7U5jPuxCQgAA +suYxnRNJfEuqxans+gb7+QAA +6kMoTMhweUGB4UEBAxLGLwAA +7diJMjxz3ki5B8VbJ5ROWQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA +4 +P3WLWzk/NUWvhq7xl5OlBgAA +tGE/twJxYEi84uCEs5ECZwAA +ZqZ3hJMJmk2LJXDTdNfYbgAA +Y2gNVwd6o0KdoTXLdAsPYwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +lKDXBy6K20m5qoHJqD7wNQAA +4 +RpZ17jQU7EC4iprPWEOyUwAA +zIeBOJ4CmUuKYp/6QkJqOAAA +Z8cD/TUOW0efzIm99JAQJAAA +4NQM4L6WDk+LfoeiH/HoBwAA + + +Documents +rdpYIcoK9Em30t5d9g3BhgAA +1 +BQvYyShr5EOSbw3vbUAwUwAA +7 + +Texte +Impda0SpPESB4/qCzi4/LwAA +4 +lLhY7Ox3k0mQQC0dLUTASwAA +0Y6EtkqpNUuiwu0Kbcdd0QAA +vYO/JJUL00Kzjt9Z+fm/vAAA +FfCvkyOpEU2zPcblPYbUGAAA +5 +dUJBsw8f8USUy/2zIoFvdwAA +WnTr4KJx70C4VaSvin7HXQAA +iatn9+C99UCssosZqWKzswAA +7nGjTHJtwUCKpHGHTmBehgAA +dJmGmjPQe0SCGupNm425rAAA +1 +IzsrjrzKn02WHI6doKm26AAA +2 + +getTxt +7PB0Q/ABFU2nmEBmf5C3sQAA +1 + +pdkReturn +String +a211u7tHMEyBWKbSHBOuhgAA + + + +ModifyTxt +7PB0Q/ABFU2nmEBmf5C3sQAA +1 + +String new +nMREuO/W/0iDooyJOIhZUAAA + + +2 +6Uv/SLUEZEi/Mvo4Y0SNbQAA +B8iPbASkZUaxzINrFr/CBAAA +2 + +txt +String +7PB0Q/ABFU2nmEBmf5C3sQAA + + +auteur +String +7PB0Q/ABFU2nmEBmf5C3sQAA + + + +Figure +Impda0SpPESB4/qCzi4/LwAA +4 +TaTuOxbRu0KSM/avnE4YhwAA +c2R5VvgjOEyODr0f/JeSOgAA +af2s8ltnlkGVPoABlpvqYQAA +doCEn86POUiuasP/LHOu3wAA +2 +IQigfW7cFkuy6OO9Zmh5nQAA +Nqze4q3bu06gBwJorRWqcwAA +2 +E7ANNG+L90eGTfeiRqTS3wAA +T5KG/Eqx6kqP/URCm/jPqwAA +1 + +getLegende +lKDXBy6K20m5qoHJqD7wNQAA +1 + +pdkReturn +String +13WYeRcA3E2wlfRRJ/5F/gAA + + +2 +ajgsBrqrS0eKmPR8SRDoBgAA +FutiEglbLk29yWvupNXBswAA +3 + +hauteur +int +lKDXBy6K20m5qoHJqD7wNQAA + + +legende +String +lKDXBy6K20m5qoHJqD7wNQAA + + +largeur +int +lKDXBy6K20m5qoHJqD7wNQAA + + + +Section +Impda0SpPESB4/qCzi4/LwAA +4 +4tEdqQwMtE2uuSutrJ+auAAA +aIsWyC4ywEG2eMGWPqBVaAAA +XSUYfie7LEOuh+InSyxfPwAA +ukBek/GSYUaORKWTtkl+1AAA +3 +BcP93RjKUEePCa17jW7zxAAA +b7xRRVT5SEeBIJugkb/NlwAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +xTD57L5WYE6QCUfz2s5U5QAA +2 + +addElement +wLGeEZTkNk6DSYrx4LXTJwAA +1 + +el +rXElPo41nk+Km2Yr4sQrMQAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +removeElement +wLGeEZTkNk6DSYrx4LXTJwAA +1 + +el +DkkyzuaqnUK3nZ2r6DBv1AAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +2 +f8PMnfAUH0awFdeg4GhlmAAA +weC7jpfXIUSXpEP6g/RP6gAA +1 +vUAG/l9ewkidQeX5aRnYxwAA +1 + +titre +String +wLGeEZTkNk6DSYrx4LXTJwAA + + + +Element +True +Impda0SpPESB4/qCzi4/LwAA +4 +IZrUep6ckUuRPEQSsWDumQAA +CzhQfB86ikSMBJl/41G9kwAA +N/48nhs2f0aZb4f39vcbfAAA +ORPs1w8k1kqYgR9RXsnDCgAA +4 +IzsrjrzKn02WHI6doKm26AAA +E7ANNG+L90eGTfeiRqTS3wAA +xTD57L5WYE6QCUfz2s5U5QAA +T5KG/Eqx6kqP/URCm/jPqwAA +5 + +Operation +gQoe9RSSW0OjJ//CTwBU7wAA + + +getNiveau +True +gQoe9RSSW0OjJ//CTwBU7wAA +2 + +pdkReturn +int +7CLfAZ7XM0qICMoPrPb8JAAA + + +Element e +7CLfAZ7XM0qICMoPrPb8JAAA + + + +getOrdre +True +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +pdkReturn +int +8r/a1rfny0epbaC0ETzyCQAA + + + +getPoids +True +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +pdkReturn +int +UcUdsuDJy0O993AmrTGZdwAA + + + +GetChild +gQoe9RSSW0OjJ//CTwBU7wAA +2 + +pdkReturn +xmAIdT/56UiF1o+a13LzGgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +int +xmAIdT/56UiF1o+a13LzGgAA + + +6 +6sfXfueADU6TZh9DP5X8oQAA ++cqMexxO5UuiFo2TIDRhJwAA +CfI30KDMLUyoeZgLZnTkXgAA +OyNjBnb5M0i9mQ+IqGNKeQAA +YfOTYqdH+0ehqvZxuE/F6gAA +0ALjCJQQNkecXUgkyORDnAAA +3 +KCIdSwBnJ0uohZj1QTpYnQAA +JkDLBRvCP0K10wkkvGdk9gAA +q6DU2+AOnkezrN+UTDwlIAAA +3 + +reference +String +gQoe9RSSW0OjJ//CTwBU7wAA + + +coefficient +int +gQoe9RSSW0OjJ//CTwBU7wAA + + +annotation +String +gQoe9RSSW0OjJ//CTwBU7wAA + + + +FabriqueTexte +Impda0SpPESB4/qCzi4/LwAA +4 +myt0n6WtjUWxfTwmDb5q8gAA +LDosoBAUVUGWwUizSDJNSQAA +axHW8rmhEEeDwgAplOI+HQAA +S4MW5ter20O9ap5C+fRkSgAA +7 +BcP93RjKUEePCa17jW7zxAAA +dUJBsw8f8USUy/2zIoFvdwAA +IQigfW7cFkuy6OO9Zmh5nQAA +WnTr4KJx70C4VaSvin7HXQAA +b7xRRVT5SEeBIJugkb/NlwAA +iatn9+C99UCssosZqWKzswAA +dJmGmjPQe0SCGupNm425rAAA +2 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA +1 + +CreateText +FwMOtxt65UqiV6b+R4wngQAA +3 + +pdkReturn +EDxxI1UkcUiejG3vdB9EDAAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +text +String +EDxxI1UkcUiejG3vdB9EDAAA + + +Auteur +String +EDxxI1UkcUiejG3vdB9EDAAA + + + + +FabriqueSection +Impda0SpPESB4/qCzi4/LwAA +4 +jfsCQrzPr0W6vrlELMYPIQAA +kBn4mytbaUaYuW3YzVT59wAA +UXn7uPlQQ0yFqYnPMxEqhAAA +060rGD10d0myPWnogdZyzQAA +2 +7nGjTHJtwUCKpHGHTmBehgAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +clNqWUTgp0+2091x1gbjyQAA +1 + +CreateSection +4WYHqFXU/Ei9XC5FeDIRcAAA +2 + +pdkReturn +nLrflJzA2UWsSQZu0YUlnAAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +titre +String +nLrflJzA2UWsSQZu0YUlnAAA + + + + +FabriqueFigure +Impda0SpPESB4/qCzi4/LwAA +4 +7mOzScVF+0ePZlw8hu2WXQAA +5fufJMTjIUSheF0eG3hJiAAA +hqxrvkkR5UmzE6kMnXQhtgAA +/faRb5iZi0Wln9O2bIMGSwAA +1 +Nqze4q3bu06gBwJorRWqcwAA +1 +FkAvYphJvk+GhCrWQg0hMwAA +1 + +CreateFigure +DRf42+A5fk+PlBjqQM3BtgAA +4 + +pdkReturn +duBaxA95YEWztQ1ZgxfOGQAA +lKDXBy6K20m5qoHJqD7wNQAA + + +haut +int +duBaxA95YEWztQ1ZgxfOGQAA + + +larg +int +duBaxA95YEWztQ1ZgxfOGQAA + + +legende +String +duBaxA95YEWztQ1ZgxfOGQAA + + + + + +Gestion +rdpYIcoK9Em30t5d9g3BhgAA +1 +3AGRwkWtJEq/eLf89tXEgQAA +1 + +Fabrique +singleton +True +qJtKf9XZIkypw6FrOikzVgAA +4 +GgzpQjr4u0iuK5eMrLvVnAAA +IxMoiWf3lUSt7VYgzemuwgAA +2sRsaBoBo066Rc5SEdkoIwAA +uCQzXiXYv0y7TVXQJ/Xd5QAA +4 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA +clNqWUTgp0+2091x1gbjyQAA +FkAvYphJvk+GhCrWQg0hMwAA +5 + +Instance +DpTZIs2Xu0i1gBSzuYZrrQAA +1 + +Parameter1 +pdkReturn +0FdPtEx2wEuTRcF63bIwTQAA + + + +getElement +DpTZIs2Xu0i1gBSzuYZrrQAA +2 + +pdkReturn +x1c07047QEuh+UxPJKfWhgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +ref +int +x1c07047QEuh+UxPJKfWhgAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +3 + +pdkReturn +YFbB3M+nmk6BCaRO6WYNtwAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +text +String +YFbB3M+nmk6BCaRO6WYNtwAA + + +auteur +String +YFbB3M+nmk6BCaRO6WYNtwAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +4 + +pdkReturn +F7Q8Ma0QtkGHkrpTf3DzcgAA +lKDXBy6K20m5qoHJqD7wNQAA + + +haut +int +F7Q8Ma0QtkGHkrpTf3DzcgAA + + +larg +int +F7Q8Ma0QtkGHkrpTf3DzcgAA + + +legende +String +F7Q8Ma0QtkGHkrpTf3DzcgAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +2 + +pdkReturn +KY6Z04W3kkGEEmOsPDQVgwAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +titre +String +KY6Z04W3kkGEEmOsPDQVgwAA + + +4 +xYkzq+2k9EOGDHDUAvMMgAAA +62HREk8rX0Sc9cgZ2vd5OAAA +JZM2DpGZAE6m4QvsBB1V0gAA +L1cYpQuZNU6K8h4Z0RaDxQAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +6s7gNM7H50yqpGioT/feqgAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +9QIWFifSw0GQS5U68eO2lQAA +GmbTLFbIw0uAIg6xeYCZrgAA ++g6u32qWa0SimUkKMbIPDgAA +4z780dgDeEayvR7ygOLfVAAA + + +rdpYIcoK9Em30t5d9g3BhgAA +MnkwLOdbOEe7eRLOB7CxBwAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +zCmzxKiqy02z2TY335CEogAA +H/4fcYUTCE29QEwgxJGOpwAA +TSkIjfHAhkaTZkLQIfoZswAA +7aaXAWsiukSdtOtWeuyYfgAA + + +IHM +rdpYIcoK9Em30t5d9g3BhgAA +1 +L1fwIIWBIUG2kj0KFcAm4wAA +3 + +IHM_Acteur +True +JMH/lV3enEWLeRUov/mQhgAA +4 +RD1fjP+6TU+OFn6MZHxYxAAA +yUnPnFE/CUyLDW4MlvzJ1AAA +90WBoVJPUkWvN/mo4hdN+QAA +mcJXOPaZrUWp6nOAhOVHcgAA +2 +JK2MxvnL/UiAlL6BB7jGvAAA +yfBkx3/zI0qLl3KFCn8v0wAA +3 + +AfficherDoc +Ly5Gzi7l80CSAnPpQyskqgAA +1 + +ref +int +umRpiI1lUEyYaIZS/My1RgAA + + + +authentifier +Ly5Gzi7l80CSAnPpQyskqgAA +1 + +code +String +wFY/AIOfR0WIZbVEFRLJcgAA + + + +listeDocuments +Ly5Gzi7l80CSAnPpQyskqgAA + +2 +v/3JzN1mHkiM/jF82ZDGSgAA +SlDb+R4REUGthoXfmcjSygAA + + +Redacteur +JMH/lV3enEWLeRUov/mQhgAA +4 +DqHuCxa1DUey+2GMGzdmzgAA +G7Ot+jCF3k6bsfhntQtcdwAA +syKcg7aj20yTd1wg02FQzAAA +RgIdYvAmekO1WvyUk47aAQAA +1 +JK2MxvnL/UiAlL6BB7jGvAAA +2 + +creerDocument +6s7gNM7H50yqpGioT/feqgAA + + +modifierDocument +6s7gNM7H50yqpGioT/feqgAA +1 + +ref +int +Y28Cp8eW7U209lEaU4R3MgAA + + + + +Lecteur +JMH/lV3enEWLeRUov/mQhgAA +4 +ZA+4aIbNS0KK4pZIbi5n9AAA +xd6xQ8oIoU2zeGesGnBKcwAA +rjFmrvFRx02BJPCEnieXEQAA +z3kRONNLxEGcs/a5VqsSWAAA +1 +yfBkx3/zI0qLl3KFCn8v0wAA +2 + +noter +MnkwLOdbOEe7eRLOB7CxBwAA +2 + +elem +gk3FzLSoV0O48iPWwdTaCgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +note +int +gk3FzLSoV0O48iPWwdTaCgAA + + + +annoter +MnkwLOdbOEe7eRLOB7CxBwAA +2 + +elem +NHQtZoXVDUamy3eFCcrtYwAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +commentaire +String +NHQtZoXVDUamy3eFCcrtYwAA + + + + + + +Implementation Model +UMLStandard +implementationModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +XcLfywYsRUuj7Opj8099IQAA + +iIZL+yTBD0i9dHKnbBEQrgAA + + + + +Deployment Model +UMLStandard +deploymentModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +LAjGs5I1w0ahdbiud/6TZwAA + +yo9IMES6W0Sx2his8HULEgAA + + + + + + diff --git a/G54/FabriqueDocuments.~ml b/G54/FabriqueDocuments.~ml new file mode 100644 index 0000000..784b97a --- /dev/null +++ b/G54/FabriqueDocuments.~ml @@ -0,0 +1,2115 @@ + + + + + + +UMLStandard + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +JHbYS/ung0u9sLR9NaB6+AAA + +/h9+d8myqU6rQ9F8ePlsUQAA + + + + +Analysis Model +UMLStandard +analysisModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +True +RobustnessDiagram +RAmAA59hh06H2Lgzh2ws6wAA + +8y2XTjpsVEW84pSq+fO9CgAA + + + + +Design Model +UMLStandard +designModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +True +rdpYIcoK9Em30t5d9g3BhgAA + +vKUNnDfUF0a5ZdpPtMjO/gAA +30 + +clMaroon +$00B9FFFF +832 +4 +465 +561 +JMH/lV3enEWLeRUov/mQhgAA + + +IHM + + +False + + +False + + + + +clMaroon +$00B9FFFF +484 +8 +317 +565 +qJtKf9XZIkypw6FrOikzVgAA + + +Gestion + + +False + + +False + + + + +clMaroon +$00B9FFFF +12 +8 +461 +581 +Impda0SpPESB4/qCzi4/LwAA + + +Documents + + +False + + +False + + + + +clMaroon +$00B9FFFF +24 +268 +125 +95 +7PB0Q/ABFU2nmEBmf5C3sQAA + + +1 +Texte + + +False + + +False + + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +False +7PB0Q/ABFU2nmEBmf5C3sQAA + + + +clMaroon +$00B9FFFF +164 +264 +118 +95 +lKDXBy6K20m5qoHJqD7wNQAA + + +1 +Figure + + +False + + +False + + + +lKDXBy6K20m5qoHJqD7wNQAA + + +lKDXBy6K20m5qoHJqD7wNQAA + + +False +lKDXBy6K20m5qoHJqD7wNQAA + + + +clMaroon +$00B9FFFF +300 +284 +165 +94 +wLGeEZTkNk6DSYrx4LXTJwAA + + +1 +Section + + +False + + +False + + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +False +wLGeEZTkNk6DSYrx4LXTJwAA + + + +clMaroon +$00B9FFFF +200 +64 +178 +174 +gQoe9RSSW0OjJ//CTwBU7wAA + + +3 +Element + + +False + + +False + + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +False +gQoe9RSSW0OjJ//CTwBU7wAA + + + +clMaroon +$00B9FFFF +lsRectilinear +402,284;402,124;377,124 +2QdImmKJPEKQbcoOJlxxPgAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +1,5707963267949 +30 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +-1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +0,356911880866181 +62,9682459657247 +epHead ++Elements +KCIdSwBnJ0uohZj1QTpYnQAA + + +-0,799889982760072 +48,7954915950234 +epTail ++Conteneur +vUAG/l9ewkidQeX5aRnYxwAA + + +0,643500808793404 +20 +epHead +0..* +KCIdSwBnJ0uohZj1QTpYnQAA + + +-0,523598775598299 +25 +epTail +0..1 +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-0,785398163397448 +40 +epHead +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +0,785398163397448 +40 +epTail +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-1168 +-1024 +50 +8 +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +-1168 +-1024 +50 +8 +vUAG/l9ewkidQeX5aRnYxwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +352,284;352,268;298,268;298,237 +True +xTD57L5WYE6QCUfz2s5U5QAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +1,5707963267949 +30 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +-1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + + +clMaroon +$00B9FFFF +lsRectilinear +96,268;96,188;200,188 +IzsrjrzKn02WHI6doKm26AAA +IZrUep6ckUuRPEQSsWDumQAA +lLhY7Ox3k0mQQC0dLUTASwAA + +False +1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + +False +1,5707963267949 +30 +IzsrjrzKn02WHI6doKm26AAA + + +False +-1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + + +clMaroon +$00B9FFFF +lsRectilinear +248,264;248,237 +True +T5KG/Eqx6kqP/URCm/jPqwAA +IZrUep6ckUuRPEQSsWDumQAA +TaTuOxbRu0KSM/avnE4YhwAA + +False +1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +1,5707963267949 +30 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +-1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +672,428;672,408;796,408;796,490;778,490 +8S66RFsDdEa5XqTHl5TBbgAA +GgzpQjr4u0iuK5eMrLvVnAAA +GgzpQjr4u0iuK5eMrLvVnAAA + +False +1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +1,5707963267949 +30 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +-1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +4 +-0,523598775598299 +30 +epHead +-instance +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,523598775598299 +30 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +0,523598775598299 +25 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-0,523598775598299 +25 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-0,785398163397448 +40 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,785398163397448 +40 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-1148 +-988 +50 +8 +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-1148 +-988 +50 +8 +JZM2DpGZAE6m4QvsBB1V0gAA + + + +clMaroon +$00B9FFFF +lsRectilinear +377,146;612,146;612,428 +tY2DMCUVHUOWQDQ8D8yQIgAA +GgzpQjr4u0iuK5eMrLvVnAAA +IZrUep6ckUuRPEQSsWDumQAA + +False +1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +1,5707963267949 +30 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-0,636508321891975 +57,2013985843004 +epHead ++Documents +62HREk8rX0Sc9cgZ2vd5OAAA + + +0,053639767733732 +149,214610544678 +epTail ++Documents +JkDLBRvCP0K10wkkvGdk9gAA + + +0,523598775598299 +25 +epHead +0..* +62HREk8rX0Sc9cgZ2vd5OAAA + + +-0,523598775598299 +25 +epTail +0..* +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-0,785398163397448 +40 +epHead +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +0,785398163397448 +40 +epTail +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-1168 +-1024 +50 +8 +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +-1168 +-1024 +50 +8 +JkDLBRvCP0K10wkkvGdk9gAA + + + +clMaroon +$00B9FFFF +884 +172 +140 +82 +Ly5Gzi7l80CSAnPpQyskqgAA + + +3 +IHM_Acteur + + +False + + +False + + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +False +Ly5Gzi7l80CSAnPpQyskqgAA + + + +clMaroon +$00B9FFFF +496 +428 +283 +126 +DpTZIs2Xu0i1gBSzuYZrrQAA + + +3 +Fabrique + + +<<singleton>> + + +False + + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +False +DpTZIs2Xu0i1gBSzuYZrrQAA + + + +clMaroon +$00B9FFFF +404 +246 +56 +FwMOtxt65UqiV6b+R4wngQAA + + +1 +FabriqueTexte + + +False + + +False + + + +FwMOtxt65UqiV6b+R4wngQAA + + +FwMOtxt65UqiV6b+R4wngQAA + + +False +FwMOtxt65UqiV6b+R4wngQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +884,206;551,206;551,428 +/Tf5ww9HIk26fn0XuP8sfgAA +GgzpQjr4u0iuK5eMrLvVnAAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +1,5707963267949 +30 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-0,523598775598299 +30 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,523598775598299 +30 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +0,523598775598299 +25 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-0,523598775598299 +25 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-0,785398163397448 +40 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,785398163397448 +40 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-1168 +-1024 +50 +8 +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-1168 +-1024 +50 +8 +v/3JzN1mHkiM/jF82ZDGSgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +953,172;953,168;377,168 +1iuwg1OgkkKmD5szUfIx9wAA +IZrUep6ckUuRPEQSsWDumQAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +1,5707963267949 +30 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-0,523598775598299 +30 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,523598775598299 +30 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +0,523598775598299 +25 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-0,523598775598299 +25 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-0,785398163397448 +40 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,785398163397448 +40 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-1168 +-1024 +50 +8 +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-1168 +-1024 +50 +8 +SlDb+R4REUGthoXfmcjSygAA + + + +clMaroon +$00B9FFFF +lsRectilinear +96,459;96,524;496,524 +2PpC0Fqr6UqE0aMfqQ46GwAA +GgzpQjr4u0iuK5eMrLvVnAAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +1,5707963267949 +30 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +-1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + + +clMaroon +$00B9FFFF +264 +412 +191 +56 +4WYHqFXU/Ei9XC5FeDIRcAAA + + +1 +FabriqueSection + + +False + + +False + + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +False +4WYHqFXU/Ei9XC5FeDIRcAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +379,412;379,377 +Ul/fzQqTAUukGYtpbwyHTQAA +4tEdqQwMtE2uuSutrJ+auAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +1,5707963267949 +30 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +-1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +454,463;496,463 +clNqWUTgp0+2091x1gbjyQAA +GgzpQjr4u0iuK5eMrLvVnAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + +False +1,5707963267949 +30 +clNqWUTgp0+2091x1gbjyQAA + + +False +-1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + + +clMaroon +$00B9FFFF +72 +500 +291 +56 +DRf42+A5fk+PlBjqQM3BtgAA + + +1 +FabriqueFigure + + +False + + +False + + + +DRf42+A5fk+PlBjqQM3BtgAA + + +DRf42+A5fk+PlBjqQM3BtgAA + + +False +DRf42+A5fk+PlBjqQM3BtgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +276,500;276,492;496,492 +FkAvYphJvk+GhCrWQg0hMwAA +GgzpQjr4u0iuK5eMrLvVnAAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +1,5707963267949 +30 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +-1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +105,404;105,362 +dJmGmjPQe0SCGupNm425rAAA +lLhY7Ox3k0mQQC0dLUTASwAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + +False +1,5707963267949 +30 +dJmGmjPQe0SCGupNm425rAAA + + +False +-1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +246,500;246,358 +Nqze4q3bu06gBwJorRWqcwAA +TaTuOxbRu0KSM/avnE4YhwAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + +False +1,5707963267949 +30 +Nqze4q3bu06gBwJorRWqcwAA + + +False +-1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + + +clMaroon +$00B9FFFF +1048 +112 +145 +69 +6s7gNM7H50yqpGioT/feqgAA + + +1 +Redacteur + + +False + + +False + + + +6s7gNM7H50yqpGioT/feqgAA + + +6s7gNM7H50yqpGioT/feqgAA + + +False +6s7gNM7H50yqpGioT/feqgAA + + + +clMaroon +$00B9FFFF +1048 +212 +234 +69 +MnkwLOdbOEe7eRLOB7CxBwAA + + +1 +Lecteur + + +False + + +False + + + +MnkwLOdbOEe7eRLOB7CxBwAA + + +MnkwLOdbOEe7eRLOB7CxBwAA + + +False +MnkwLOdbOEe7eRLOB7CxBwAA + + + +clMaroon +$00B9FFFF +1048,174;1023,184 +JK2MxvnL/UiAlL6BB7jGvAAA +RD1fjP+6TU+OFn6MZHxYxAAA +DqHuCxa1DUey+2GMGzdmzgAA + +False +1,5707963267949 +15 +JK2MxvnL/UiAlL6BB7jGvAAA + + +False +1,5707963267949 +30 +JK2MxvnL/UiAlL6BB7jGvAAA + + +False +-1,5707963267949 +15 +JK2MxvnL/UiAlL6BB7jGvAAA + + + +clMaroon +$00B9FFFF +1048,227;1023,223 +yfBkx3/zI0qLl3KFCn8v0wAA +RD1fjP+6TU+OFn6MZHxYxAAA +ZA+4aIbNS0KK4pZIbi5n9AAA + +False +1,5707963267949 +15 +yfBkx3/zI0qLl3KFCn8v0wAA + + +False +1,5707963267949 +30 +yfBkx3/zI0qLl3KFCn8v0wAA + + +False +-1,5707963267949 +15 +yfBkx3/zI0qLl3KFCn8v0wAA + + + + +28 + +rdpYIcoK9Em30t5d9g3BhgAA +7PB0Q/ABFU2nmEBmf5C3sQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +F+KzEqgZukKebZ9wrEk1YwAA +/B3KwthTp0aKqDFivdLmBQAA +lqL/Q1v++067Zr+IohbimQAA +TJc4oZj+xUa55ki/ba43gAAA + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +rdpYIcoK9Em30t5d9g3BhgAA +wLGeEZTkNk6DSYrx4LXTJwAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +gw6dorecbk6fD17w0h/iLAAA +DGqTTY/L3U+h6dsyjTgALQAA +aTou8p43o0+LXZYHDLCTlAAA +OY/5uFcVQki3pJ887NcqeQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +Q6yD3QsMzE25YDMaVU6+TAAA +uMq6qFvcbUyZxaY+eaUtmQAA +BXfFtAXkoEOtbs7g9yN0bwAA +iNST/Zu3zkCNa4JrcftV3AAA +2 + +Conteneur +akAggregate +0..1 +2QdImmKJPEKQbcoOJlxxPgAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +09EKbaxDJkuR6XwlrjhSeAAA +u6mmwaSMHEqaZr0JoddhNQAA +9Rx+XA88LEiuVRe+QyJmZAAA +uyS/EAbxZk+cwSaQlKy/VgAA + + +Elements +0..* +2QdImmKJPEKQbcoOJlxxPgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +6BjnnKTz2E6rrcPfDEH7CwAA +3x3v68wUz0iyJzfHFPglXAAA +e4xWxFBchk6ea3K4xE3JeQAA +MKgq+2XM4UeXvlK+1z8iqwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 ++nBYw7fZdEGdRvZrY3KnPwAA +Pu821KTtjEiwSgcLvLTM+AAA +H2Ywz05jcUW0ijk6j+DJRQAA +5h/LJBrOK0y3aIvPW6DT0AAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +FcRZSwUMu0u/p+CFECzXeAAA +GvNXbQuiqEuhdnDzJSqn1wAA +fdVZ3TRlSEG2CCvlkcp1EAAA +pb7/YvwTWkOydEduVK6fOAAA +2 + +False +8S66RFsDdEa5XqTHl5TBbgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +kkjTujizw0C+6uBXCnK24gAA +PB9M47k47keNP9Pe79WmKgAA +mVPKyBTqkkWCbMUuemYp9wAA +blMWv7Oqn02naij/1fdXZAAA + + +instance +vkPrivate +skClassifier +8S66RFsDdEa5XqTHl5TBbgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +1HR+bQo66EC9KzlWuTaPcgAA +q+GdAN/bgU+xKz43fwKvfQAA ++IzzQfo89kqo6OXT8ddxtgAA +o/G0RX0uWUK7HdmbbGLm+gAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +u9KUFvRGpkSx5YNgHn1oqAAA +WFYbk3ivI06nlEVWRVbygwAA +IhVcCvAau0OV8xLtvXOrkAAA +CgIvFfZ4bkC5gFBq56BTBAAA +2 + +Documents +0..* +tY2DMCUVHUOWQDQ8D8yQIgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +d57JhDFplUmUdi3dXCpinAAA +TFloeNbN+E2gYHfAk9ZItQAA +roKGFttIDkS/Y7rkKoS31AAA +4IuQSyf9pUG6+/Krgy/F4AAA + + +akComposite +0..* +tY2DMCUVHUOWQDQ8D8yQIgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +pHvCxGMwPku8L9gjWD1SSgAA +qNfeuC53cUSimFjWBncUHgAA +jFjWdylWUE65sWUrBY6pfgAA +Zz8I8J9IZU2rkCpgvKhg3QAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +skbxGhtEq0qqOdpSojyiTAAA +IqN5merIyUyzMNXxyUSTxwAA +VCd5XrrqOkW9HGHKdiTmQAAA +Fh1h/Dt1lEuvKKd8P1ozNgAA +2 + +False +/Tf5ww9HIk26fn0XuP8sfgAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +VnuGW79Hh0mGnLGCU+/xuQAA +5hxFsJPxAUGIvjklN6D1awAA +InHmfn16ZkeDqd6h5me7BAAA +eI30KyRAyU+5iMwLZU8twgAA + + +/Tf5ww9HIk26fn0XuP8sfgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +I8kjgZZ5D0iqoX/g8eRJyQAA +kgbIQPln502UbsCqr+rcbQAA +sahQPR7tEUeUPh+3sevqFQAA +J/of49t/4UuMqYbJlL1lpQAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +ODYZmWboWUOcUj7XPHz6HQAA +qRYpMnlX2Uu7tHn/HQZmpwAA +PLydsm11lEmC3X6Mm8TGGgAA +Gkqzli9fnE2hY9yJAdZLPQAA +2 + +False +1iuwg1OgkkKmD5szUfIx9wAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +QxE9zIymekqfAcQYCcWW9QAA +n3MJIySJBEGaN3sepTPtwAAA +lTQunBGT6EClbyYz6zOxtgAA +B8KaOmMc0UuyLvy9I+Mg/gAA + + +1iuwg1OgkkKmD5szUfIx9wAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +MUamdQJ3dUCx6iaBNWM0vgAA +exg1jFJb2k2TmHHiu81J1wAA +XDtFq5O8T0yUkOTTmoO/BAAA +OLEbIsiGbEyk5G8LzyGNzwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +XoLcZddSUEitQEk5GoIDiAAA +nD3/pEkwkk+xBVfcScNMQAAA +RpmvIPr5TEOlK4gWx2s2GwAA +ykSUAeGgx0KXmALZog//4QAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +lKDXBy6K20m5qoHJqD7wNQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +sqBcmD5cIUuw9zysmhDF2wAA +jdMvKaHxmEeiFufDE2xiawAA +5zfnwtcPAU2Ido+x12zH6AAA +bfISscEtpECF/dwEeH6wUgAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +yAadqRWlgkesJ8rLajOQkQAA +6zGx7dvjLEyzocy2kx6kIQAA +PpfDRWJ6xkiMDSbfog6pBAAA +/P/BevfwEUy+kGivjMh2jQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +doPYhTezD02w7U5jPuxCQgAA +suYxnRNJfEuqxans+gb7+QAA +6kMoTMhweUGB4UEBAxLGLwAA +7diJMjxz3ki5B8VbJ5ROWQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA +4 +P3WLWzk/NUWvhq7xl5OlBgAA +tGE/twJxYEi84uCEs5ECZwAA +ZqZ3hJMJmk2LJXDTdNfYbgAA +Y2gNVwd6o0KdoTXLdAsPYwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +lKDXBy6K20m5qoHJqD7wNQAA +4 +RpZ17jQU7EC4iprPWEOyUwAA +zIeBOJ4CmUuKYp/6QkJqOAAA +Z8cD/TUOW0efzIm99JAQJAAA +4NQM4L6WDk+LfoeiH/HoBwAA + + +Documents +rdpYIcoK9Em30t5d9g3BhgAA +1 +BQvYyShr5EOSbw3vbUAwUwAA +7 + +Texte +Impda0SpPESB4/qCzi4/LwAA +4 +lLhY7Ox3k0mQQC0dLUTASwAA +0Y6EtkqpNUuiwu0Kbcdd0QAA +vYO/JJUL00Kzjt9Z+fm/vAAA +FfCvkyOpEU2zPcblPYbUGAAA +5 +dUJBsw8f8USUy/2zIoFvdwAA +WnTr4KJx70C4VaSvin7HXQAA +iatn9+C99UCssosZqWKzswAA +7nGjTHJtwUCKpHGHTmBehgAA +dJmGmjPQe0SCGupNm425rAAA +1 +IzsrjrzKn02WHI6doKm26AAA +2 + +getTxt +7PB0Q/ABFU2nmEBmf5C3sQAA +1 + +pdkReturn +String +a211u7tHMEyBWKbSHBOuhgAA + + + +ModifyTxt +7PB0Q/ABFU2nmEBmf5C3sQAA +1 + +String new +nMREuO/W/0iDooyJOIhZUAAA + + +5 +S+rqfLyLQE6Et0Qrr3ge+AAA +nVWdKX08rEGrf2iFbmogJwAA +6Uv/SLUEZEi/Mvo4Y0SNbQAA +elOexDKI/E6Y7JFCNTYZmgAA +B8iPbASkZUaxzINrFr/CBAAA +2 + +txt +String +7PB0Q/ABFU2nmEBmf5C3sQAA + + +auteur +String +7PB0Q/ABFU2nmEBmf5C3sQAA + + + +Figure +Impda0SpPESB4/qCzi4/LwAA +4 +TaTuOxbRu0KSM/avnE4YhwAA +c2R5VvgjOEyODr0f/JeSOgAA +af2s8ltnlkGVPoABlpvqYQAA +doCEn86POUiuasP/LHOu3wAA +2 +IQigfW7cFkuy6OO9Zmh5nQAA +Nqze4q3bu06gBwJorRWqcwAA +2 +E7ANNG+L90eGTfeiRqTS3wAA +T5KG/Eqx6kqP/URCm/jPqwAA +1 + +getLegende +lKDXBy6K20m5qoHJqD7wNQAA +1 + +pdkReturn +String +13WYeRcA3E2wlfRRJ/5F/gAA + + +4 +XXcAnO6GT0emgZhWFBV5pwAA +ajgsBrqrS0eKmPR8SRDoBgAA +JVm2Fk22w0eVooW2ooTwDgAA +FutiEglbLk29yWvupNXBswAA +3 + +hauteur +int +lKDXBy6K20m5qoHJqD7wNQAA + + +legende +String +lKDXBy6K20m5qoHJqD7wNQAA + + +largeur +int +lKDXBy6K20m5qoHJqD7wNQAA + + + +Section +Impda0SpPESB4/qCzi4/LwAA +4 +4tEdqQwMtE2uuSutrJ+auAAA +aIsWyC4ywEG2eMGWPqBVaAAA +XSUYfie7LEOuh+InSyxfPwAA +ukBek/GSYUaORKWTtkl+1AAA +3 +BcP93RjKUEePCa17jW7zxAAA +b7xRRVT5SEeBIJugkb/NlwAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +xTD57L5WYE6QCUfz2s5U5QAA +2 + +addElement +wLGeEZTkNk6DSYrx4LXTJwAA +1 + +el +rXElPo41nk+Km2Yr4sQrMQAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +removeElement +wLGeEZTkNk6DSYrx4LXTJwAA +1 + +el +DkkyzuaqnUK3nZ2r6DBv1AAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +3 +jrTHYCWgYkCBv2f6kfHLIwAA +f8PMnfAUH0awFdeg4GhlmAAA +weC7jpfXIUSXpEP6g/RP6gAA +1 +vUAG/l9ewkidQeX5aRnYxwAA +1 + +titre +String +wLGeEZTkNk6DSYrx4LXTJwAA + + + +Element +True +Impda0SpPESB4/qCzi4/LwAA +4 +IZrUep6ckUuRPEQSsWDumQAA +CzhQfB86ikSMBJl/41G9kwAA +N/48nhs2f0aZb4f39vcbfAAA +ORPs1w8k1kqYgR9RXsnDCgAA +4 +IzsrjrzKn02WHI6doKm26AAA +E7ANNG+L90eGTfeiRqTS3wAA +xTD57L5WYE6QCUfz2s5U5QAA +T5KG/Eqx6kqP/URCm/jPqwAA +5 + +Operation +gQoe9RSSW0OjJ//CTwBU7wAA + + +getNiveau +True +gQoe9RSSW0OjJ//CTwBU7wAA +2 + +pdkReturn +int +7CLfAZ7XM0qICMoPrPb8JAAA + + +Element e +7CLfAZ7XM0qICMoPrPb8JAAA + + + +getOrdre +True +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +pdkReturn +int +8r/a1rfny0epbaC0ETzyCQAA + + + +getPoids +True +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +pdkReturn +int +UcUdsuDJy0O993AmrTGZdwAA + + + +GetChild +gQoe9RSSW0OjJ//CTwBU7wAA +2 + +pdkReturn +xmAIdT/56UiF1o+a13LzGgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +int +xmAIdT/56UiF1o+a13LzGgAA + + +7 +6sfXfueADU6TZh9DP5X8oQAA ++cqMexxO5UuiFo2TIDRhJwAA +CfI30KDMLUyoeZgLZnTkXgAA +OyNjBnb5M0i9mQ+IqGNKeQAA +YfOTYqdH+0ehqvZxuE/F6gAA +avHNCyjgr0eu+s/BMGnU3AAA +0ALjCJQQNkecXUgkyORDnAAA +3 +KCIdSwBnJ0uohZj1QTpYnQAA +JkDLBRvCP0K10wkkvGdk9gAA +q6DU2+AOnkezrN+UTDwlIAAA +3 + +reference +String +gQoe9RSSW0OjJ//CTwBU7wAA + + +coefficient +int +gQoe9RSSW0OjJ//CTwBU7wAA + + +annotation +String +gQoe9RSSW0OjJ//CTwBU7wAA + + + +FabriqueTexte +Impda0SpPESB4/qCzi4/LwAA +4 +myt0n6WtjUWxfTwmDb5q8gAA +LDosoBAUVUGWwUizSDJNSQAA +axHW8rmhEEeDwgAplOI+HQAA +S4MW5ter20O9ap5C+fRkSgAA +7 +BcP93RjKUEePCa17jW7zxAAA +dUJBsw8f8USUy/2zIoFvdwAA +IQigfW7cFkuy6OO9Zmh5nQAA +WnTr4KJx70C4VaSvin7HXQAA +b7xRRVT5SEeBIJugkb/NlwAA +iatn9+C99UCssosZqWKzswAA +dJmGmjPQe0SCGupNm425rAAA +2 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA +1 + +CreateText +FwMOtxt65UqiV6b+R4wngQAA +3 + +pdkReturn +EDxxI1UkcUiejG3vdB9EDAAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +text +String +EDxxI1UkcUiejG3vdB9EDAAA + + +Auteur +String +EDxxI1UkcUiejG3vdB9EDAAA + + + + +FabriqueSection +Impda0SpPESB4/qCzi4/LwAA +4 +jfsCQrzPr0W6vrlELMYPIQAA +kBn4mytbaUaYuW3YzVT59wAA +UXn7uPlQQ0yFqYnPMxEqhAAA +060rGD10d0myPWnogdZyzQAA +2 +7nGjTHJtwUCKpHGHTmBehgAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +clNqWUTgp0+2091x1gbjyQAA +1 + +CreateSection +4WYHqFXU/Ei9XC5FeDIRcAAA +2 + +pdkReturn +nLrflJzA2UWsSQZu0YUlnAAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +titre +String +nLrflJzA2UWsSQZu0YUlnAAA + + + + +FabriqueFigure +Impda0SpPESB4/qCzi4/LwAA +4 +7mOzScVF+0ePZlw8hu2WXQAA +5fufJMTjIUSheF0eG3hJiAAA +hqxrvkkR5UmzE6kMnXQhtgAA +/faRb5iZi0Wln9O2bIMGSwAA +1 +Nqze4q3bu06gBwJorRWqcwAA +1 +FkAvYphJvk+GhCrWQg0hMwAA +1 + +CreateFigure +DRf42+A5fk+PlBjqQM3BtgAA +4 + +pdkReturn +duBaxA95YEWztQ1ZgxfOGQAA +lKDXBy6K20m5qoHJqD7wNQAA + + +haut +int +duBaxA95YEWztQ1ZgxfOGQAA + + +larg +int +duBaxA95YEWztQ1ZgxfOGQAA + + +legende +String +duBaxA95YEWztQ1ZgxfOGQAA + + + + + +Gestion +rdpYIcoK9Em30t5d9g3BhgAA +1 +3AGRwkWtJEq/eLf89tXEgQAA +1 + +Fabrique +singleton +True +qJtKf9XZIkypw6FrOikzVgAA +4 +GgzpQjr4u0iuK5eMrLvVnAAA +IxMoiWf3lUSt7VYgzemuwgAA +2sRsaBoBo066Rc5SEdkoIwAA +uCQzXiXYv0y7TVXQJ/Xd5QAA +4 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA +clNqWUTgp0+2091x1gbjyQAA +FkAvYphJvk+GhCrWQg0hMwAA +5 + +Instance +DpTZIs2Xu0i1gBSzuYZrrQAA +1 + +Parameter1 +pdkReturn +0FdPtEx2wEuTRcF63bIwTQAA + + + +getElement +DpTZIs2Xu0i1gBSzuYZrrQAA +2 + +pdkReturn +x1c07047QEuh+UxPJKfWhgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +ref +int +x1c07047QEuh+UxPJKfWhgAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +3 + +pdkReturn +YFbB3M+nmk6BCaRO6WYNtwAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +text +String +YFbB3M+nmk6BCaRO6WYNtwAA + + +auteur +String +YFbB3M+nmk6BCaRO6WYNtwAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +4 + +pdkReturn +F7Q8Ma0QtkGHkrpTf3DzcgAA +lKDXBy6K20m5qoHJqD7wNQAA + + +haut +int +F7Q8Ma0QtkGHkrpTf3DzcgAA + + +larg +int +F7Q8Ma0QtkGHkrpTf3DzcgAA + + +legende +String +F7Q8Ma0QtkGHkrpTf3DzcgAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +2 + +pdkReturn +KY6Z04W3kkGEEmOsPDQVgwAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +titre +String +KY6Z04W3kkGEEmOsPDQVgwAA + + +4 +xYkzq+2k9EOGDHDUAvMMgAAA +62HREk8rX0Sc9cgZ2vd5OAAA +JZM2DpGZAE6m4QvsBB1V0gAA +L1cYpQuZNU6K8h4Z0RaDxQAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +6s7gNM7H50yqpGioT/feqgAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +9QIWFifSw0GQS5U68eO2lQAA +GmbTLFbIw0uAIg6xeYCZrgAA ++g6u32qWa0SimUkKMbIPDgAA +4z780dgDeEayvR7ygOLfVAAA + + +rdpYIcoK9Em30t5d9g3BhgAA +MnkwLOdbOEe7eRLOB7CxBwAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +zCmzxKiqy02z2TY335CEogAA +H/4fcYUTCE29QEwgxJGOpwAA +TSkIjfHAhkaTZkLQIfoZswAA +7aaXAWsiukSdtOtWeuyYfgAA + + +IHM +rdpYIcoK9Em30t5d9g3BhgAA +1 +L1fwIIWBIUG2kj0KFcAm4wAA +3 + +IHM_Acteur +True +JMH/lV3enEWLeRUov/mQhgAA +4 +RD1fjP+6TU+OFn6MZHxYxAAA +yUnPnFE/CUyLDW4MlvzJ1AAA +90WBoVJPUkWvN/mo4hdN+QAA +mcJXOPaZrUWp6nOAhOVHcgAA +2 +JK2MxvnL/UiAlL6BB7jGvAAA +yfBkx3/zI0qLl3KFCn8v0wAA +3 + +AfficherDoc +Ly5Gzi7l80CSAnPpQyskqgAA +1 + +ref +int +umRpiI1lUEyYaIZS/My1RgAA + + + +authentifier +Ly5Gzi7l80CSAnPpQyskqgAA +1 + +code +String +wFY/AIOfR0WIZbVEFRLJcgAA + + + +listeDocuments +Ly5Gzi7l80CSAnPpQyskqgAA + +2 +v/3JzN1mHkiM/jF82ZDGSgAA +SlDb+R4REUGthoXfmcjSygAA + + +Redacteur +JMH/lV3enEWLeRUov/mQhgAA +4 +DqHuCxa1DUey+2GMGzdmzgAA +G7Ot+jCF3k6bsfhntQtcdwAA +syKcg7aj20yTd1wg02FQzAAA +RgIdYvAmekO1WvyUk47aAQAA +1 +JK2MxvnL/UiAlL6BB7jGvAAA +2 + +creerDocument +6s7gNM7H50yqpGioT/feqgAA + + +modifierDocument +6s7gNM7H50yqpGioT/feqgAA +1 + +ref +int +Y28Cp8eW7U209lEaU4R3MgAA + + + + +Lecteur +JMH/lV3enEWLeRUov/mQhgAA +4 +ZA+4aIbNS0KK4pZIbi5n9AAA +xd6xQ8oIoU2zeGesGnBKcwAA +rjFmrvFRx02BJPCEnieXEQAA +z3kRONNLxEGcs/a5VqsSWAAA +1 +yfBkx3/zI0qLl3KFCn8v0wAA +2 + +noter +MnkwLOdbOEe7eRLOB7CxBwAA +2 + +elem +gk3FzLSoV0O48iPWwdTaCgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +note +int +gk3FzLSoV0O48iPWwdTaCgAA + + + +annoter +MnkwLOdbOEe7eRLOB7CxBwAA +2 + +elem +NHQtZoXVDUamy3eFCcrtYwAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +commentaire +String +NHQtZoXVDUamy3eFCcrtYwAA + + + + + + +Implementation Model +UMLStandard +implementationModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +XcLfywYsRUuj7Opj8099IQAA + +iIZL+yTBD0i9dHKnbBEQrgAA + + + + +Deployment Model +UMLStandard +deploymentModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +LAjGs5I1w0ahdbiud/6TZwAA + +yo9IMES6W0Sx2his8HULEgAA + + + + + + diff --git a/G54/FabriqueDocumentsDCA.uml b/G54/FabriqueDocumentsDCA.uml new file mode 100644 index 0000000..a900612 --- /dev/null +++ b/G54/FabriqueDocumentsDCA.uml @@ -0,0 +1,2213 @@ + + + + + + +UMLStandard + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +JHbYS/ung0u9sLR9NaB6+AAA + +/h9+d8myqU6rQ9F8ePlsUQAA + + + + +Analysis Model +UMLStandard +analysisModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +True +RobustnessDiagram +RAmAA59hh06H2Lgzh2ws6wAA + +8y2XTjpsVEW84pSq+fO9CgAA + + + + +Design Model +UMLStandard +designModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +True +rdpYIcoK9Em30t5d9g3BhgAA + +vKUNnDfUF0a5ZdpPtMjO/gAA +30 + +clMaroon +$00B9FFFF +876 +8 +313 +393 +JMH/lV3enEWLeRUov/mQhgAA + + +IHM + + +False + + +False + + + + +clMaroon +$00B9FFFF +516 +8 +349 +565 +qJtKf9XZIkypw6FrOikzVgAA + + +Gestion + + +False + + +False + + + + +clMaroon +$00B9FFFF +12 +8 +481 +565 +Impda0SpPESB4/qCzi4/LwAA + + +Documents + + +False + + +False + + + + +clMaroon +$00B9FFFF +20 +240 +141 +134 +7PB0Q/ABFU2nmEBmf5C3sQAA + + +1 +Texte + + +False + + +False + + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +False +7PB0Q/ABFU2nmEBmf5C3sQAA + + + +clMaroon +$00B9FFFF +168 +252 +141 +134 +lKDXBy6K20m5qoHJqD7wNQAA + + +1 +Figure + + +False + + +False + + + +lKDXBy6K20m5qoHJqD7wNQAA + + +lKDXBy6K20m5qoHJqD7wNQAA + + +False +lKDXBy6K20m5qoHJqD7wNQAA + + + +clMaroon +$00B9FFFF +324 +264 +165 +121 +wLGeEZTkNk6DSYrx4LXTJwAA + + +1 +Section + + +False + + +False + + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +False +wLGeEZTkNk6DSYrx4LXTJwAA + + + +clMaroon +$00B9FFFF +200 +48 +178 +174 +gQoe9RSSW0OjJ//CTwBU7wAA + + +3 +Element + + +False + + +False + + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +False +gQoe9RSSW0OjJ//CTwBU7wAA + + + +clMaroon +$00B9FFFF +lsRectilinear +402,264;402,124;377,124 +2QdImmKJPEKQbcoOJlxxPgAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +1,5707963267949 +30 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +-1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +0,356911880866181 +62,9682459657247 +epHead ++Elements +KCIdSwBnJ0uohZj1QTpYnQAA + + +-0,694738354211909 +54,6717477313466 +epTail ++Conteneur +vUAG/l9ewkidQeX5aRnYxwAA + + +0,643500808793404 +20 +epHead +0..* +KCIdSwBnJ0uohZj1QTpYnQAA + + +-0,523598775598299 +25 +epTail +0..1 +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-0,785398163397448 +40 +epHead +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +0,785398163397448 +40 +epTail +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-1168 +-1024 +50 +8 +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +-1168 +-1024 +50 +8 +vUAG/l9ewkidQeX5aRnYxwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +348,264;348,221 +True +xTD57L5WYE6QCUfz2s5U5QAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +1,5707963267949 +30 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +-1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + + +clMaroon +$00B9FFFF +lsRectilinear +96,240;96,188;200,188 +IzsrjrzKn02WHI6doKm26AAA +IZrUep6ckUuRPEQSsWDumQAA +lLhY7Ox3k0mQQC0dLUTASwAA + +False +1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + +False +1,5707963267949 +30 +IzsrjrzKn02WHI6doKm26AAA + + +False +-1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + + +clMaroon +$00B9FFFF +lsRectilinear +248,252;248,221 +True +T5KG/Eqx6kqP/URCm/jPqwAA +IZrUep6ckUuRPEQSsWDumQAA +TaTuOxbRu0KSM/avnE4YhwAA + +False +1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +1,5707963267949 +30 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +-1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +704,428;704,408;828,408;828,490;810,490 +8S66RFsDdEa5XqTHl5TBbgAA +GgzpQjr4u0iuK5eMrLvVnAAA +GgzpQjr4u0iuK5eMrLvVnAAA + +False +1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +1,5707963267949 +30 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +-1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +4 +-0,523598775598299 +30 +epHead +-instance +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,523598775598299 +30 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +0,523598775598299 +25 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-0,523598775598299 +25 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-0,785398163397448 +40 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,785398163397448 +40 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-1116 +-988 +50 +8 +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-1116 +-988 +50 +8 +JZM2DpGZAE6m4QvsBB1V0gAA + + + +clMaroon +$00B9FFFF +lsRectilinear +377,146;612,146;612,428 +tY2DMCUVHUOWQDQ8D8yQIgAA +GgzpQjr4u0iuK5eMrLvVnAAA +IZrUep6ckUuRPEQSsWDumQAA + +False +1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +1,5707963267949 +30 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-0,636508321891975 +57,2013985843004 +epHead ++Documents +62HREk8rX0Sc9cgZ2vd5OAAA + + +0,053639767733732 +149,214610544678 +epTail ++Documents +JkDLBRvCP0K10wkkvGdk9gAA + + +0,523598775598299 +25 +epHead +0..* +62HREk8rX0Sc9cgZ2vd5OAAA + + +-0,523598775598299 +25 +epTail +0..* +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-0,785398163397448 +40 +epHead +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +0,785398163397448 +40 +epTail +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-1168 +-1024 +50 +8 +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +-1168 +-1024 +50 +8 +JkDLBRvCP0K10wkkvGdk9gAA + + + +clMaroon +$00B9FFFF +916 +180 +140 +82 +Ly5Gzi7l80CSAnPpQyskqgAA + + +3 +IHM_Acteur + + +False + + +False + + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +False +Ly5Gzi7l80CSAnPpQyskqgAA + + + +clMaroon +$00B9FFFF +528 +428 +283 +126 +DpTZIs2Xu0i1gBSzuYZrrQAA + + +3 +Fabrique + + +<<singleton>> + + +False + + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +False +DpTZIs2Xu0i1gBSzuYZrrQAA + + + +clMaroon +$00B9FFFF +16 +404 +246 +56 +FwMOtxt65UqiV6b+R4wngQAA + + +1 +FabriqueTexte + + +False + + +False + + + +FwMOtxt65UqiV6b+R4wngQAA + + +FwMOtxt65UqiV6b+R4wngQAA + + +False +FwMOtxt65UqiV6b+R4wngQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +916,206;551,206;551,428 +/Tf5ww9HIk26fn0XuP8sfgAA +GgzpQjr4u0iuK5eMrLvVnAAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +1,5707963267949 +30 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-0,523598775598299 +30 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,523598775598299 +30 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +0,523598775598299 +25 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-0,523598775598299 +25 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-0,785398163397448 +40 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,785398163397448 +40 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-1168 +-1024 +50 +8 +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-1168 +-1024 +50 +8 +v/3JzN1mHkiM/jF82ZDGSgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +972,180;972,168;377,168 +1iuwg1OgkkKmD5szUfIx9wAA +IZrUep6ckUuRPEQSsWDumQAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +1,5707963267949 +30 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-0,523598775598299 +30 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,523598775598299 +30 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +0,523598775598299 +25 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-0,523598775598299 +25 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-0,785398163397448 +40 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,785398163397448 +40 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-1168 +-1024 +50 +8 +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-1168 +-1024 +50 +8 +SlDb+R4REUGthoXfmcjSygAA + + + +clMaroon +$00B9FFFF +lsRectilinear +96,459;96,524;528,524 +2PpC0Fqr6UqE0aMfqQ46GwAA +GgzpQjr4u0iuK5eMrLvVnAAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +1,5707963267949 +30 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +-1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + + +clMaroon +$00B9FFFF +272 +408 +191 +56 +4WYHqFXU/Ei9XC5FeDIRcAAA + + +1 +FabriqueSection + + +False + + +False + + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +False +4WYHqFXU/Ei9XC5FeDIRcAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +379,408;379,384 +Ul/fzQqTAUukGYtpbwyHTQAA +4tEdqQwMtE2uuSutrJ+auAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +1,5707963267949 +30 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +-1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +462,452;528,452 +clNqWUTgp0+2091x1gbjyQAA +GgzpQjr4u0iuK5eMrLvVnAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + +False +1,5707963267949 +30 +clNqWUTgp0+2091x1gbjyQAA + + +False +-1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + + +clMaroon +$00B9FFFF +72 +500 +291 +56 +DRf42+A5fk+PlBjqQM3BtgAA + + +1 +FabriqueFigure + + +False + + +False + + + +DRf42+A5fk+PlBjqQM3BtgAA + + +DRf42+A5fk+PlBjqQM3BtgAA + + +False +DRf42+A5fk+PlBjqQM3BtgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +276,500;276,492;528,492 +FkAvYphJvk+GhCrWQg0hMwAA +GgzpQjr4u0iuK5eMrLvVnAAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +1,5707963267949 +30 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +-1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +105,404;105,373 +dJmGmjPQe0SCGupNm425rAAA +lLhY7Ox3k0mQQC0dLUTASwAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + +False +1,5707963267949 +30 +dJmGmjPQe0SCGupNm425rAAA + + +False +-1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +264,500;264,385 +Nqze4q3bu06gBwJorRWqcwAA +TaTuOxbRu0KSM/avnE4YhwAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + +False +1,5707963267949 +30 +Nqze4q3bu06gBwJorRWqcwAA + + +False +-1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + + +clMaroon +$00B9FFFF +1016 +52 +145 +69 +6s7gNM7H50yqpGioT/feqgAA + + +1 +Redacteur + + +False + + +False + + + +6s7gNM7H50yqpGioT/feqgAA + + +6s7gNM7H50yqpGioT/feqgAA + + +False +6s7gNM7H50yqpGioT/feqgAA + + + +clMaroon +$00B9FFFF +924 +312 +234 +69 +MnkwLOdbOEe7eRLOB7CxBwAA + + +1 +Lecteur + + +False + + +False + + + +MnkwLOdbOEe7eRLOB7CxBwAA + + +MnkwLOdbOEe7eRLOB7CxBwAA + + +False +MnkwLOdbOEe7eRLOB7CxBwAA + + + +clMaroon +$00B9FFFF +1062,120;1016,180 +JK2MxvnL/UiAlL6BB7jGvAAA +RD1fjP+6TU+OFn6MZHxYxAAA +DqHuCxa1DUey+2GMGzdmzgAA + +False +1,5707963267949 +15 +JK2MxvnL/UiAlL6BB7jGvAAA + + +False +1,5707963267949 +30 +JK2MxvnL/UiAlL6BB7jGvAAA + + +False +-1,5707963267949 +15 +JK2MxvnL/UiAlL6BB7jGvAAA + + + +clMaroon +$00B9FFFF +1025,312;1003,261 +yfBkx3/zI0qLl3KFCn8v0wAA +RD1fjP+6TU+OFn6MZHxYxAAA +ZA+4aIbNS0KK4pZIbi5n9AAA + +False +1,5707963267949 +15 +yfBkx3/zI0qLl3KFCn8v0wAA + + +False +1,5707963267949 +30 +yfBkx3/zI0qLl3KFCn8v0wAA + + +False +-1,5707963267949 +15 +yfBkx3/zI0qLl3KFCn8v0wAA + + + + +28 + +rdpYIcoK9Em30t5d9g3BhgAA +7PB0Q/ABFU2nmEBmf5C3sQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +F+KzEqgZukKebZ9wrEk1YwAA +/B3KwthTp0aKqDFivdLmBQAA +lqL/Q1v++067Zr+IohbimQAA +TJc4oZj+xUa55ki/ba43gAAA + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +rdpYIcoK9Em30t5d9g3BhgAA +wLGeEZTkNk6DSYrx4LXTJwAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +gw6dorecbk6fD17w0h/iLAAA +DGqTTY/L3U+h6dsyjTgALQAA +aTou8p43o0+LXZYHDLCTlAAA +OY/5uFcVQki3pJ887NcqeQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +Q6yD3QsMzE25YDMaVU6+TAAA +uMq6qFvcbUyZxaY+eaUtmQAA +BXfFtAXkoEOtbs7g9yN0bwAA +iNST/Zu3zkCNa4JrcftV3AAA +2 + +Conteneur +akAggregate +0..1 +2QdImmKJPEKQbcoOJlxxPgAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +09EKbaxDJkuR6XwlrjhSeAAA +u6mmwaSMHEqaZr0JoddhNQAA +9Rx+XA88LEiuVRe+QyJmZAAA +uyS/EAbxZk+cwSaQlKy/VgAA + + +Elements +0..* +2QdImmKJPEKQbcoOJlxxPgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +6BjnnKTz2E6rrcPfDEH7CwAA +3x3v68wUz0iyJzfHFPglXAAA +e4xWxFBchk6ea3K4xE3JeQAA +MKgq+2XM4UeXvlK+1z8iqwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 ++nBYw7fZdEGdRvZrY3KnPwAA +Pu821KTtjEiwSgcLvLTM+AAA +H2Ywz05jcUW0ijk6j+DJRQAA +5h/LJBrOK0y3aIvPW6DT0AAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +FcRZSwUMu0u/p+CFECzXeAAA +GvNXbQuiqEuhdnDzJSqn1wAA +fdVZ3TRlSEG2CCvlkcp1EAAA +pb7/YvwTWkOydEduVK6fOAAA +2 + +False +8S66RFsDdEa5XqTHl5TBbgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +kkjTujizw0C+6uBXCnK24gAA +PB9M47k47keNP9Pe79WmKgAA +mVPKyBTqkkWCbMUuemYp9wAA +blMWv7Oqn02naij/1fdXZAAA + + +instance +vkPrivate +skClassifier +8S66RFsDdEa5XqTHl5TBbgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +1HR+bQo66EC9KzlWuTaPcgAA +q+GdAN/bgU+xKz43fwKvfQAA ++IzzQfo89kqo6OXT8ddxtgAA +o/G0RX0uWUK7HdmbbGLm+gAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +u9KUFvRGpkSx5YNgHn1oqAAA +WFYbk3ivI06nlEVWRVbygwAA +IhVcCvAau0OV8xLtvXOrkAAA +CgIvFfZ4bkC5gFBq56BTBAAA +2 + +Documents +0..* +tY2DMCUVHUOWQDQ8D8yQIgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +d57JhDFplUmUdi3dXCpinAAA +TFloeNbN+E2gYHfAk9ZItQAA +roKGFttIDkS/Y7rkKoS31AAA +4IuQSyf9pUG6+/Krgy/F4AAA + + +akComposite +0..* +tY2DMCUVHUOWQDQ8D8yQIgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +pHvCxGMwPku8L9gjWD1SSgAA +qNfeuC53cUSimFjWBncUHgAA +jFjWdylWUE65sWUrBY6pfgAA +Zz8I8J9IZU2rkCpgvKhg3QAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +skbxGhtEq0qqOdpSojyiTAAA +IqN5merIyUyzMNXxyUSTxwAA +VCd5XrrqOkW9HGHKdiTmQAAA +Fh1h/Dt1lEuvKKd8P1ozNgAA +2 + +False +/Tf5ww9HIk26fn0XuP8sfgAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +VnuGW79Hh0mGnLGCU+/xuQAA +5hxFsJPxAUGIvjklN6D1awAA +InHmfn16ZkeDqd6h5me7BAAA +eI30KyRAyU+5iMwLZU8twgAA + + +False +/Tf5ww9HIk26fn0XuP8sfgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +I8kjgZZ5D0iqoX/g8eRJyQAA +kgbIQPln502UbsCqr+rcbQAA +sahQPR7tEUeUPh+3sevqFQAA +J/of49t/4UuMqYbJlL1lpQAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +ODYZmWboWUOcUj7XPHz6HQAA +qRYpMnlX2Uu7tHn/HQZmpwAA +PLydsm11lEmC3X6Mm8TGGgAA +Gkqzli9fnE2hY9yJAdZLPQAA +2 + +False +1iuwg1OgkkKmD5szUfIx9wAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +QxE9zIymekqfAcQYCcWW9QAA +n3MJIySJBEGaN3sepTPtwAAA +lTQunBGT6EClbyYz6zOxtgAA +B8KaOmMc0UuyLvy9I+Mg/gAA + + +False +1iuwg1OgkkKmD5szUfIx9wAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +MUamdQJ3dUCx6iaBNWM0vgAA +exg1jFJb2k2TmHHiu81J1wAA +XDtFq5O8T0yUkOTTmoO/BAAA +OLEbIsiGbEyk5G8LzyGNzwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +XoLcZddSUEitQEk5GoIDiAAA +nD3/pEkwkk+xBVfcScNMQAAA +RpmvIPr5TEOlK4gWx2s2GwAA +ykSUAeGgx0KXmALZog//4QAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +lKDXBy6K20m5qoHJqD7wNQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +sqBcmD5cIUuw9zysmhDF2wAA +jdMvKaHxmEeiFufDE2xiawAA +5zfnwtcPAU2Ido+x12zH6AAA +bfISscEtpECF/dwEeH6wUgAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +yAadqRWlgkesJ8rLajOQkQAA +6zGx7dvjLEyzocy2kx6kIQAA +PpfDRWJ6xkiMDSbfog6pBAAA +/P/BevfwEUy+kGivjMh2jQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +doPYhTezD02w7U5jPuxCQgAA +suYxnRNJfEuqxans+gb7+QAA +6kMoTMhweUGB4UEBAxLGLwAA +7diJMjxz3ki5B8VbJ5ROWQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA +4 +P3WLWzk/NUWvhq7xl5OlBgAA +tGE/twJxYEi84uCEs5ECZwAA +ZqZ3hJMJmk2LJXDTdNfYbgAA +Y2gNVwd6o0KdoTXLdAsPYwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +lKDXBy6K20m5qoHJqD7wNQAA +4 +RpZ17jQU7EC4iprPWEOyUwAA +zIeBOJ4CmUuKYp/6QkJqOAAA +Z8cD/TUOW0efzIm99JAQJAAA +4NQM4L6WDk+LfoeiH/HoBwAA + + +Documents +rdpYIcoK9Em30t5d9g3BhgAA +1 +BQvYyShr5EOSbw3vbUAwUwAA +7 + +Texte +Impda0SpPESB4/qCzi4/LwAA +4 +lLhY7Ox3k0mQQC0dLUTASwAA +0Y6EtkqpNUuiwu0Kbcdd0QAA +vYO/JJUL00Kzjt9Z+fm/vAAA +FfCvkyOpEU2zPcblPYbUGAAA +5 +dUJBsw8f8USUy/2zIoFvdwAA +WnTr4KJx70C4VaSvin7HXQAA +iatn9+C99UCssosZqWKzswAA +7nGjTHJtwUCKpHGHTmBehgAA +dJmGmjPQe0SCGupNm425rAAA +1 +IzsrjrzKn02WHI6doKm26AAA +5 + +getTxt +7PB0Q/ABFU2nmEBmf5C3sQAA +1 + +pdkReturn +String +a211u7tHMEyBWKbSHBOuhgAA + + + +ModifyTxt +7PB0Q/ABFU2nmEBmf5C3sQAA +1 + +String new +nMREuO/W/0iDooyJOIhZUAAA + + + +getNiveau +7PB0Q/ABFU2nmEBmf5C3sQAA +2 + +pdkReturn +int +b5a5xMb/cEWx4QdOTaRXjwAA + + +Element e +b5a5xMb/cEWx4QdOTaRXjwAA + + + +getOrdre +7PB0Q/ABFU2nmEBmf5C3sQAA +1 + +pdkReturn +int +XqrTTSqyZkiBNAgvAzpOcwAA + + + +getPoids +7PB0Q/ABFU2nmEBmf5C3sQAA +1 + +pdkReturn +int +gfg1IsxApkm37C8vtXbm+AAA + + +2 +6Uv/SLUEZEi/Mvo4Y0SNbQAA +B8iPbASkZUaxzINrFr/CBAAA +2 + +txt +String +7PB0Q/ABFU2nmEBmf5C3sQAA + + +auteur +String +7PB0Q/ABFU2nmEBmf5C3sQAA + + + +Figure +Impda0SpPESB4/qCzi4/LwAA +4 +TaTuOxbRu0KSM/avnE4YhwAA +c2R5VvgjOEyODr0f/JeSOgAA +af2s8ltnlkGVPoABlpvqYQAA +doCEn86POUiuasP/LHOu3wAA +2 +IQigfW7cFkuy6OO9Zmh5nQAA +Nqze4q3bu06gBwJorRWqcwAA +2 +E7ANNG+L90eGTfeiRqTS3wAA +T5KG/Eqx6kqP/URCm/jPqwAA +4 + +getLegende +lKDXBy6K20m5qoHJqD7wNQAA +1 + +pdkReturn +String +13WYeRcA3E2wlfRRJ/5F/gAA + + + +getNiveau +lKDXBy6K20m5qoHJqD7wNQAA +2 + +pdkReturn +int +pRiq9PYfjkupAiAAbkwFSwAA + + +Element e +pRiq9PYfjkupAiAAbkwFSwAA + + + +getOrdre +lKDXBy6K20m5qoHJqD7wNQAA +1 + +pdkReturn +int +4FT0ym2nFESF7uuiHhno7gAA + + + +getPoids +lKDXBy6K20m5qoHJqD7wNQAA +1 + +pdkReturn +int +dfYVhTMOxkWhC+nr0g4hcwAA + + +2 +ajgsBrqrS0eKmPR8SRDoBgAA +FutiEglbLk29yWvupNXBswAA +3 + +hauteur +int +lKDXBy6K20m5qoHJqD7wNQAA + + +legende +String +lKDXBy6K20m5qoHJqD7wNQAA + + +largeur +int +lKDXBy6K20m5qoHJqD7wNQAA + + + +Section +Impda0SpPESB4/qCzi4/LwAA +4 +4tEdqQwMtE2uuSutrJ+auAAA +aIsWyC4ywEG2eMGWPqBVaAAA +XSUYfie7LEOuh+InSyxfPwAA +ukBek/GSYUaORKWTtkl+1AAA +3 +BcP93RjKUEePCa17jW7zxAAA +b7xRRVT5SEeBIJugkb/NlwAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +xTD57L5WYE6QCUfz2s5U5QAA +5 + +addElement +wLGeEZTkNk6DSYrx4LXTJwAA +1 + +el +rXElPo41nk+Km2Yr4sQrMQAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +removeElement +wLGeEZTkNk6DSYrx4LXTJwAA +1 + +el +DkkyzuaqnUK3nZ2r6DBv1AAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +getNiveau +wLGeEZTkNk6DSYrx4LXTJwAA +2 + +pdkReturn +int +MUi0K2f3HUOFw5GrnZkkjgAA + + +Element e +MUi0K2f3HUOFw5GrnZkkjgAA + + + +getOrdre +wLGeEZTkNk6DSYrx4LXTJwAA +1 + +pdkReturn +int +tRgNYVPr8EGDUfUVq1njuwAA + + + +getPoids +wLGeEZTkNk6DSYrx4LXTJwAA +1 + +pdkReturn +int +nFWNAKhGZ0OUTfFMFdTFqwAA + + +2 +f8PMnfAUH0awFdeg4GhlmAAA +weC7jpfXIUSXpEP6g/RP6gAA +1 +vUAG/l9ewkidQeX5aRnYxwAA +1 + +titre +String +wLGeEZTkNk6DSYrx4LXTJwAA + + + +Element +True +Impda0SpPESB4/qCzi4/LwAA +4 +IZrUep6ckUuRPEQSsWDumQAA +CzhQfB86ikSMBJl/41G9kwAA +N/48nhs2f0aZb4f39vcbfAAA +ORPs1w8k1kqYgR9RXsnDCgAA +4 +IzsrjrzKn02WHI6doKm26AAA +E7ANNG+L90eGTfeiRqTS3wAA +xTD57L5WYE6QCUfz2s5U5QAA +T5KG/Eqx6kqP/URCm/jPqwAA +5 + +Operation +gQoe9RSSW0OjJ//CTwBU7wAA + + +getNiveau +True +gQoe9RSSW0OjJ//CTwBU7wAA +2 + +pdkReturn +int +7CLfAZ7XM0qICMoPrPb8JAAA + + +Element e +7CLfAZ7XM0qICMoPrPb8JAAA + + + +getOrdre +True +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +pdkReturn +int +8r/a1rfny0epbaC0ETzyCQAA + + + +getPoids +True +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +pdkReturn +int +UcUdsuDJy0O993AmrTGZdwAA + + + +GetChild +gQoe9RSSW0OjJ//CTwBU7wAA +2 + +pdkReturn +xmAIdT/56UiF1o+a13LzGgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +int +xmAIdT/56UiF1o+a13LzGgAA + + +6 +6sfXfueADU6TZh9DP5X8oQAA ++cqMexxO5UuiFo2TIDRhJwAA +CfI30KDMLUyoeZgLZnTkXgAA +OyNjBnb5M0i9mQ+IqGNKeQAA +YfOTYqdH+0ehqvZxuE/F6gAA +0ALjCJQQNkecXUgkyORDnAAA +3 +KCIdSwBnJ0uohZj1QTpYnQAA +JkDLBRvCP0K10wkkvGdk9gAA +q6DU2+AOnkezrN+UTDwlIAAA +3 + +reference +String +gQoe9RSSW0OjJ//CTwBU7wAA + + +coefficient +int +gQoe9RSSW0OjJ//CTwBU7wAA + + +annotation +String +gQoe9RSSW0OjJ//CTwBU7wAA + + + +FabriqueTexte +Impda0SpPESB4/qCzi4/LwAA +4 +myt0n6WtjUWxfTwmDb5q8gAA +LDosoBAUVUGWwUizSDJNSQAA +axHW8rmhEEeDwgAplOI+HQAA +S4MW5ter20O9ap5C+fRkSgAA +7 +BcP93RjKUEePCa17jW7zxAAA +dUJBsw8f8USUy/2zIoFvdwAA +IQigfW7cFkuy6OO9Zmh5nQAA +WnTr4KJx70C4VaSvin7HXQAA +b7xRRVT5SEeBIJugkb/NlwAA +iatn9+C99UCssosZqWKzswAA +dJmGmjPQe0SCGupNm425rAAA +2 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA +1 + +CreateText +FwMOtxt65UqiV6b+R4wngQAA +3 + +pdkReturn +EDxxI1UkcUiejG3vdB9EDAAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +text +String +EDxxI1UkcUiejG3vdB9EDAAA + + +Auteur +String +EDxxI1UkcUiejG3vdB9EDAAA + + + + +FabriqueSection +Impda0SpPESB4/qCzi4/LwAA +4 +jfsCQrzPr0W6vrlELMYPIQAA +kBn4mytbaUaYuW3YzVT59wAA +UXn7uPlQQ0yFqYnPMxEqhAAA +060rGD10d0myPWnogdZyzQAA +2 +7nGjTHJtwUCKpHGHTmBehgAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +clNqWUTgp0+2091x1gbjyQAA +1 + +CreateSection +4WYHqFXU/Ei9XC5FeDIRcAAA +2 + +pdkReturn +nLrflJzA2UWsSQZu0YUlnAAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +titre +String +nLrflJzA2UWsSQZu0YUlnAAA + + + + +FabriqueFigure +Impda0SpPESB4/qCzi4/LwAA +4 +7mOzScVF+0ePZlw8hu2WXQAA +5fufJMTjIUSheF0eG3hJiAAA +hqxrvkkR5UmzE6kMnXQhtgAA +/faRb5iZi0Wln9O2bIMGSwAA +1 +Nqze4q3bu06gBwJorRWqcwAA +1 +FkAvYphJvk+GhCrWQg0hMwAA +1 + +CreateFigure +DRf42+A5fk+PlBjqQM3BtgAA +4 + +pdkReturn +duBaxA95YEWztQ1ZgxfOGQAA +lKDXBy6K20m5qoHJqD7wNQAA + + +haut +int +duBaxA95YEWztQ1ZgxfOGQAA + + +larg +int +duBaxA95YEWztQ1ZgxfOGQAA + + +legende +String +duBaxA95YEWztQ1ZgxfOGQAA + + + + + +Gestion +rdpYIcoK9Em30t5d9g3BhgAA +1 +3AGRwkWtJEq/eLf89tXEgQAA +1 + +Fabrique +singleton +True +qJtKf9XZIkypw6FrOikzVgAA +4 +GgzpQjr4u0iuK5eMrLvVnAAA +IxMoiWf3lUSt7VYgzemuwgAA +2sRsaBoBo066Rc5SEdkoIwAA +uCQzXiXYv0y7TVXQJ/Xd5QAA +4 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA +clNqWUTgp0+2091x1gbjyQAA +FkAvYphJvk+GhCrWQg0hMwAA +5 + +Instance +DpTZIs2Xu0i1gBSzuYZrrQAA +1 + +Parameter1 +pdkReturn +0FdPtEx2wEuTRcF63bIwTQAA + + + +getElement +DpTZIs2Xu0i1gBSzuYZrrQAA +2 + +pdkReturn +x1c07047QEuh+UxPJKfWhgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +ref +int +x1c07047QEuh+UxPJKfWhgAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +3 + +pdkReturn +YFbB3M+nmk6BCaRO6WYNtwAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +text +String +YFbB3M+nmk6BCaRO6WYNtwAA + + +auteur +String +YFbB3M+nmk6BCaRO6WYNtwAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +4 + +pdkReturn +F7Q8Ma0QtkGHkrpTf3DzcgAA +lKDXBy6K20m5qoHJqD7wNQAA + + +haut +int +F7Q8Ma0QtkGHkrpTf3DzcgAA + + +larg +int +F7Q8Ma0QtkGHkrpTf3DzcgAA + + +legende +String +F7Q8Ma0QtkGHkrpTf3DzcgAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +2 + +pdkReturn +KY6Z04W3kkGEEmOsPDQVgwAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +titre +String +KY6Z04W3kkGEEmOsPDQVgwAA + + +4 +xYkzq+2k9EOGDHDUAvMMgAAA +62HREk8rX0Sc9cgZ2vd5OAAA +JZM2DpGZAE6m4QvsBB1V0gAA +L1cYpQuZNU6K8h4Z0RaDxQAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +6s7gNM7H50yqpGioT/feqgAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +9QIWFifSw0GQS5U68eO2lQAA +GmbTLFbIw0uAIg6xeYCZrgAA ++g6u32qWa0SimUkKMbIPDgAA +4z780dgDeEayvR7ygOLfVAAA + + +rdpYIcoK9Em30t5d9g3BhgAA +MnkwLOdbOEe7eRLOB7CxBwAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +zCmzxKiqy02z2TY335CEogAA +H/4fcYUTCE29QEwgxJGOpwAA +TSkIjfHAhkaTZkLQIfoZswAA +7aaXAWsiukSdtOtWeuyYfgAA + + +IHM +rdpYIcoK9Em30t5d9g3BhgAA +1 +L1fwIIWBIUG2kj0KFcAm4wAA +3 + +IHM_Acteur +True +JMH/lV3enEWLeRUov/mQhgAA +4 +RD1fjP+6TU+OFn6MZHxYxAAA +yUnPnFE/CUyLDW4MlvzJ1AAA +90WBoVJPUkWvN/mo4hdN+QAA +mcJXOPaZrUWp6nOAhOVHcgAA +2 +JK2MxvnL/UiAlL6BB7jGvAAA +yfBkx3/zI0qLl3KFCn8v0wAA +3 + +AfficherDoc +Ly5Gzi7l80CSAnPpQyskqgAA +1 + +ref +int +umRpiI1lUEyYaIZS/My1RgAA + + + +authentifier +Ly5Gzi7l80CSAnPpQyskqgAA +1 + +code +String +wFY/AIOfR0WIZbVEFRLJcgAA + + + +listeDocuments +Ly5Gzi7l80CSAnPpQyskqgAA + +2 +v/3JzN1mHkiM/jF82ZDGSgAA +SlDb+R4REUGthoXfmcjSygAA + + +Redacteur +JMH/lV3enEWLeRUov/mQhgAA +4 +DqHuCxa1DUey+2GMGzdmzgAA +G7Ot+jCF3k6bsfhntQtcdwAA +syKcg7aj20yTd1wg02FQzAAA +RgIdYvAmekO1WvyUk47aAQAA +1 +JK2MxvnL/UiAlL6BB7jGvAAA +2 + +creerDocument +6s7gNM7H50yqpGioT/feqgAA + + +modifierDocument +6s7gNM7H50yqpGioT/feqgAA +1 + +ref +int +Y28Cp8eW7U209lEaU4R3MgAA + + + + +Lecteur +JMH/lV3enEWLeRUov/mQhgAA +4 +ZA+4aIbNS0KK4pZIbi5n9AAA +xd6xQ8oIoU2zeGesGnBKcwAA +rjFmrvFRx02BJPCEnieXEQAA +z3kRONNLxEGcs/a5VqsSWAAA +1 +yfBkx3/zI0qLl3KFCn8v0wAA +2 + +noter +MnkwLOdbOEe7eRLOB7CxBwAA +2 + +elem +gk3FzLSoV0O48iPWwdTaCgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +note +int +gk3FzLSoV0O48iPWwdTaCgAA + + + +annoter +MnkwLOdbOEe7eRLOB7CxBwAA +2 + +elem +NHQtZoXVDUamy3eFCcrtYwAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +commentaire +String +NHQtZoXVDUamy3eFCcrtYwAA + + + + + + +Implementation Model +UMLStandard +implementationModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +XcLfywYsRUuj7Opj8099IQAA + +iIZL+yTBD0i9dHKnbBEQrgAA + + + + +Deployment Model +UMLStandard +deploymentModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +LAjGs5I1w0ahdbiud/6TZwAA + +yo9IMES6W0Sx2his8HULEgAA + + + + + + diff --git a/G54/FabriqueDocumentsDCA.~ml b/G54/FabriqueDocumentsDCA.~ml new file mode 100644 index 0000000..1d4361f --- /dev/null +++ b/G54/FabriqueDocumentsDCA.~ml @@ -0,0 +1,2110 @@ + + + + + + +UMLStandard + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +JHbYS/ung0u9sLR9NaB6+AAA + +/h9+d8myqU6rQ9F8ePlsUQAA + + + + +Analysis Model +UMLStandard +analysisModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +True +RobustnessDiagram +RAmAA59hh06H2Lgzh2ws6wAA + +8y2XTjpsVEW84pSq+fO9CgAA + + + + +Design Model +UMLStandard +designModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +True +rdpYIcoK9Em30t5d9g3BhgAA + +vKUNnDfUF0a5ZdpPtMjO/gAA +30 + +clMaroon +$00B9FFFF +832 +8 +313 +565 +JMH/lV3enEWLeRUov/mQhgAA + + +IHM + + +False + + +False + + + + +clMaroon +$00B9FFFF +484 +8 +317 +565 +qJtKf9XZIkypw6FrOikzVgAA + + +Gestion + + +False + + +False + + + + +clMaroon +$00B9FFFF +12 +8 +461 +561 +Impda0SpPESB4/qCzi4/LwAA + + +Documents + + +False + + +False + + + + +clMaroon +$00B9FFFF +24 +268 +125 +95 +7PB0Q/ABFU2nmEBmf5C3sQAA + + +1 +Texte + + +False + + +False + + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +False +7PB0Q/ABFU2nmEBmf5C3sQAA + + + +clMaroon +$00B9FFFF +164 +264 +118 +95 +lKDXBy6K20m5qoHJqD7wNQAA + + +1 +Figure + + +False + + +False + + + +lKDXBy6K20m5qoHJqD7wNQAA + + +lKDXBy6K20m5qoHJqD7wNQAA + + +False +lKDXBy6K20m5qoHJqD7wNQAA + + + +clMaroon +$00B9FFFF +300 +284 +165 +94 +wLGeEZTkNk6DSYrx4LXTJwAA + + +1 +Section + + +False + + +False + + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +False +wLGeEZTkNk6DSYrx4LXTJwAA + + + +clMaroon +$00B9FFFF +200 +48 +178 +174 +gQoe9RSSW0OjJ//CTwBU7wAA + + +3 +Element + + +False + + +False + + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +False +gQoe9RSSW0OjJ//CTwBU7wAA + + + +clMaroon +$00B9FFFF +lsRectilinear +402,284;402,124;377,124 +2QdImmKJPEKQbcoOJlxxPgAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +1,5707963267949 +30 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +-1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +0,356911880866181 +62,9682459657247 +epHead ++Elements +KCIdSwBnJ0uohZj1QTpYnQAA + + +-0,799889982760072 +48,7954915950234 +epTail ++Conteneur +vUAG/l9ewkidQeX5aRnYxwAA + + +0,643500808793404 +20 +epHead +0..* +KCIdSwBnJ0uohZj1QTpYnQAA + + +-0,523598775598299 +25 +epTail +0..1 +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-0,785398163397448 +40 +epHead +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +0,785398163397448 +40 +epTail +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-1168 +-1024 +50 +8 +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +-1168 +-1024 +50 +8 +vUAG/l9ewkidQeX5aRnYxwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +352,284;352,268;298,268;298,221 +True +xTD57L5WYE6QCUfz2s5U5QAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +1,5707963267949 +30 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +-1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + + +clMaroon +$00B9FFFF +lsRectilinear +96,268;96,188;200,188 +IzsrjrzKn02WHI6doKm26AAA +IZrUep6ckUuRPEQSsWDumQAA +lLhY7Ox3k0mQQC0dLUTASwAA + +False +1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + +False +1,5707963267949 +30 +IzsrjrzKn02WHI6doKm26AAA + + +False +-1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + + +clMaroon +$00B9FFFF +lsRectilinear +248,264;248,221 +True +T5KG/Eqx6kqP/URCm/jPqwAA +IZrUep6ckUuRPEQSsWDumQAA +TaTuOxbRu0KSM/avnE4YhwAA + +False +1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +1,5707963267949 +30 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +-1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +672,428;672,408;796,408;796,490;778,490 +8S66RFsDdEa5XqTHl5TBbgAA +GgzpQjr4u0iuK5eMrLvVnAAA +GgzpQjr4u0iuK5eMrLvVnAAA + +False +1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +1,5707963267949 +30 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +-1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +4 +-0,523598775598299 +30 +epHead +-instance +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,523598775598299 +30 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +0,523598775598299 +25 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-0,523598775598299 +25 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-0,785398163397448 +40 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,785398163397448 +40 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-1148 +-988 +50 +8 +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-1148 +-988 +50 +8 +JZM2DpGZAE6m4QvsBB1V0gAA + + + +clMaroon +$00B9FFFF +lsRectilinear +377,146;612,146;612,428 +tY2DMCUVHUOWQDQ8D8yQIgAA +GgzpQjr4u0iuK5eMrLvVnAAA +IZrUep6ckUuRPEQSsWDumQAA + +False +1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +1,5707963267949 +30 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-0,636508321891975 +57,2013985843004 +epHead ++Documents +62HREk8rX0Sc9cgZ2vd5OAAA + + +0,053639767733732 +149,214610544678 +epTail ++Documents +JkDLBRvCP0K10wkkvGdk9gAA + + +0,523598775598299 +25 +epHead +0..* +62HREk8rX0Sc9cgZ2vd5OAAA + + +-0,523598775598299 +25 +epTail +0..* +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-0,785398163397448 +40 +epHead +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +0,785398163397448 +40 +epTail +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-1168 +-1024 +50 +8 +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +-1168 +-1024 +50 +8 +JkDLBRvCP0K10wkkvGdk9gAA + + + +clMaroon +$00B9FFFF +860 +184 +140 +82 +Ly5Gzi7l80CSAnPpQyskqgAA + + +3 +IHM_Acteur + + +False + + +False + + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +False +Ly5Gzi7l80CSAnPpQyskqgAA + + + +clMaroon +$00B9FFFF +496 +428 +283 +126 +DpTZIs2Xu0i1gBSzuYZrrQAA + + +3 +Fabrique + + +<<singleton>> + + +False + + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +False +DpTZIs2Xu0i1gBSzuYZrrQAA + + + +clMaroon +$00B9FFFF +16 +404 +246 +56 +FwMOtxt65UqiV6b+R4wngQAA + + +1 +FabriqueTexte + + +False + + +False + + + +FwMOtxt65UqiV6b+R4wngQAA + + +FwMOtxt65UqiV6b+R4wngQAA + + +False +FwMOtxt65UqiV6b+R4wngQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +860,206;551,206;551,428 +/Tf5ww9HIk26fn0XuP8sfgAA +GgzpQjr4u0iuK5eMrLvVnAAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +1,5707963267949 +30 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-0,523598775598299 +30 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,523598775598299 +30 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +0,523598775598299 +25 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-0,523598775598299 +25 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-0,785398163397448 +40 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,785398163397448 +40 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-1168 +-1024 +50 +8 +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-1168 +-1024 +50 +8 +v/3JzN1mHkiM/jF82ZDGSgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +953,184;953,168;377,168 +1iuwg1OgkkKmD5szUfIx9wAA +IZrUep6ckUuRPEQSsWDumQAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +1,5707963267949 +30 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-0,523598775598299 +30 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,523598775598299 +30 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +0,523598775598299 +25 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-0,523598775598299 +25 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-0,785398163397448 +40 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,785398163397448 +40 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-1168 +-1024 +50 +8 +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-1168 +-1024 +50 +8 +SlDb+R4REUGthoXfmcjSygAA + + + +clMaroon +$00B9FFFF +lsRectilinear +96,459;96,524;496,524 +2PpC0Fqr6UqE0aMfqQ46GwAA +GgzpQjr4u0iuK5eMrLvVnAAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +1,5707963267949 +30 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +-1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + + +clMaroon +$00B9FFFF +272 +408 +191 +56 +4WYHqFXU/Ei9XC5FeDIRcAAA + + +1 +FabriqueSection + + +False + + +False + + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +False +4WYHqFXU/Ei9XC5FeDIRcAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +379,408;379,377 +Ul/fzQqTAUukGYtpbwyHTQAA +4tEdqQwMtE2uuSutrJ+auAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +1,5707963267949 +30 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +-1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +462,452;496,452 +clNqWUTgp0+2091x1gbjyQAA +GgzpQjr4u0iuK5eMrLvVnAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + +False +1,5707963267949 +30 +clNqWUTgp0+2091x1gbjyQAA + + +False +-1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + + +clMaroon +$00B9FFFF +72 +500 +291 +56 +DRf42+A5fk+PlBjqQM3BtgAA + + +1 +FabriqueFigure + + +False + + +False + + + +DRf42+A5fk+PlBjqQM3BtgAA + + +DRf42+A5fk+PlBjqQM3BtgAA + + +False +DRf42+A5fk+PlBjqQM3BtgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +276,500;276,492;496,492 +FkAvYphJvk+GhCrWQg0hMwAA +GgzpQjr4u0iuK5eMrLvVnAAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +1,5707963267949 +30 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +-1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +105,404;105,362 +dJmGmjPQe0SCGupNm425rAAA +lLhY7Ox3k0mQQC0dLUTASwAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + +False +1,5707963267949 +30 +dJmGmjPQe0SCGupNm425rAAA + + +False +-1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +264,500;264,358 +Nqze4q3bu06gBwJorRWqcwAA +TaTuOxbRu0KSM/avnE4YhwAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + +False +1,5707963267949 +30 +Nqze4q3bu06gBwJorRWqcwAA + + +False +-1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + + +clMaroon +$00B9FFFF +964 +56 +145 +69 +6s7gNM7H50yqpGioT/feqgAA + + +1 +Redacteur + + +False + + +False + + + +6s7gNM7H50yqpGioT/feqgAA + + +6s7gNM7H50yqpGioT/feqgAA + + +False +6s7gNM7H50yqpGioT/feqgAA + + + +clMaroon +$00B9FFFF +868 +316 +234 +69 +MnkwLOdbOEe7eRLOB7CxBwAA + + +1 +Lecteur + + +False + + +False + + + +MnkwLOdbOEe7eRLOB7CxBwAA + + +MnkwLOdbOEe7eRLOB7CxBwAA + + +False +MnkwLOdbOEe7eRLOB7CxBwAA + + + +clMaroon +$00B9FFFF +1009,124;961,184 +JK2MxvnL/UiAlL6BB7jGvAAA +RD1fjP+6TU+OFn6MZHxYxAAA +DqHuCxa1DUey+2GMGzdmzgAA + +False +1,5707963267949 +15 +JK2MxvnL/UiAlL6BB7jGvAAA + + +False +1,5707963267949 +30 +JK2MxvnL/UiAlL6BB7jGvAAA + + +False +-1,5707963267949 +15 +JK2MxvnL/UiAlL6BB7jGvAAA + + + +clMaroon +$00B9FFFF +969,316;947,265 +yfBkx3/zI0qLl3KFCn8v0wAA +RD1fjP+6TU+OFn6MZHxYxAAA +ZA+4aIbNS0KK4pZIbi5n9AAA + +False +1,5707963267949 +15 +yfBkx3/zI0qLl3KFCn8v0wAA + + +False +1,5707963267949 +30 +yfBkx3/zI0qLl3KFCn8v0wAA + + +False +-1,5707963267949 +15 +yfBkx3/zI0qLl3KFCn8v0wAA + + + + +28 + +rdpYIcoK9Em30t5d9g3BhgAA +7PB0Q/ABFU2nmEBmf5C3sQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +F+KzEqgZukKebZ9wrEk1YwAA +/B3KwthTp0aKqDFivdLmBQAA +lqL/Q1v++067Zr+IohbimQAA +TJc4oZj+xUa55ki/ba43gAAA + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +rdpYIcoK9Em30t5d9g3BhgAA +wLGeEZTkNk6DSYrx4LXTJwAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +gw6dorecbk6fD17w0h/iLAAA +DGqTTY/L3U+h6dsyjTgALQAA +aTou8p43o0+LXZYHDLCTlAAA +OY/5uFcVQki3pJ887NcqeQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +Q6yD3QsMzE25YDMaVU6+TAAA +uMq6qFvcbUyZxaY+eaUtmQAA +BXfFtAXkoEOtbs7g9yN0bwAA +iNST/Zu3zkCNa4JrcftV3AAA +2 + +Conteneur +akAggregate +0..1 +2QdImmKJPEKQbcoOJlxxPgAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +09EKbaxDJkuR6XwlrjhSeAAA +u6mmwaSMHEqaZr0JoddhNQAA +9Rx+XA88LEiuVRe+QyJmZAAA +uyS/EAbxZk+cwSaQlKy/VgAA + + +Elements +0..* +2QdImmKJPEKQbcoOJlxxPgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +6BjnnKTz2E6rrcPfDEH7CwAA +3x3v68wUz0iyJzfHFPglXAAA +e4xWxFBchk6ea3K4xE3JeQAA +MKgq+2XM4UeXvlK+1z8iqwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 ++nBYw7fZdEGdRvZrY3KnPwAA +Pu821KTtjEiwSgcLvLTM+AAA +H2Ywz05jcUW0ijk6j+DJRQAA +5h/LJBrOK0y3aIvPW6DT0AAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +FcRZSwUMu0u/p+CFECzXeAAA +GvNXbQuiqEuhdnDzJSqn1wAA +fdVZ3TRlSEG2CCvlkcp1EAAA +pb7/YvwTWkOydEduVK6fOAAA +2 + +False +8S66RFsDdEa5XqTHl5TBbgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +kkjTujizw0C+6uBXCnK24gAA +PB9M47k47keNP9Pe79WmKgAA +mVPKyBTqkkWCbMUuemYp9wAA +blMWv7Oqn02naij/1fdXZAAA + + +instance +vkPrivate +skClassifier +8S66RFsDdEa5XqTHl5TBbgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +1HR+bQo66EC9KzlWuTaPcgAA +q+GdAN/bgU+xKz43fwKvfQAA ++IzzQfo89kqo6OXT8ddxtgAA +o/G0RX0uWUK7HdmbbGLm+gAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +u9KUFvRGpkSx5YNgHn1oqAAA +WFYbk3ivI06nlEVWRVbygwAA +IhVcCvAau0OV8xLtvXOrkAAA +CgIvFfZ4bkC5gFBq56BTBAAA +2 + +Documents +0..* +tY2DMCUVHUOWQDQ8D8yQIgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +d57JhDFplUmUdi3dXCpinAAA +TFloeNbN+E2gYHfAk9ZItQAA +roKGFttIDkS/Y7rkKoS31AAA +4IuQSyf9pUG6+/Krgy/F4AAA + + +akComposite +0..* +tY2DMCUVHUOWQDQ8D8yQIgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +pHvCxGMwPku8L9gjWD1SSgAA +qNfeuC53cUSimFjWBncUHgAA +jFjWdylWUE65sWUrBY6pfgAA +Zz8I8J9IZU2rkCpgvKhg3QAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +skbxGhtEq0qqOdpSojyiTAAA +IqN5merIyUyzMNXxyUSTxwAA +VCd5XrrqOkW9HGHKdiTmQAAA +Fh1h/Dt1lEuvKKd8P1ozNgAA +2 + +False +/Tf5ww9HIk26fn0XuP8sfgAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +VnuGW79Hh0mGnLGCU+/xuQAA +5hxFsJPxAUGIvjklN6D1awAA +InHmfn16ZkeDqd6h5me7BAAA +eI30KyRAyU+5iMwLZU8twgAA + + +/Tf5ww9HIk26fn0XuP8sfgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +I8kjgZZ5D0iqoX/g8eRJyQAA +kgbIQPln502UbsCqr+rcbQAA +sahQPR7tEUeUPh+3sevqFQAA +J/of49t/4UuMqYbJlL1lpQAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +ODYZmWboWUOcUj7XPHz6HQAA +qRYpMnlX2Uu7tHn/HQZmpwAA +PLydsm11lEmC3X6Mm8TGGgAA +Gkqzli9fnE2hY9yJAdZLPQAA +2 + +False +1iuwg1OgkkKmD5szUfIx9wAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +QxE9zIymekqfAcQYCcWW9QAA +n3MJIySJBEGaN3sepTPtwAAA +lTQunBGT6EClbyYz6zOxtgAA +B8KaOmMc0UuyLvy9I+Mg/gAA + + +False +1iuwg1OgkkKmD5szUfIx9wAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +MUamdQJ3dUCx6iaBNWM0vgAA +exg1jFJb2k2TmHHiu81J1wAA +XDtFq5O8T0yUkOTTmoO/BAAA +OLEbIsiGbEyk5G8LzyGNzwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +XoLcZddSUEitQEk5GoIDiAAA +nD3/pEkwkk+xBVfcScNMQAAA +RpmvIPr5TEOlK4gWx2s2GwAA +ykSUAeGgx0KXmALZog//4QAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +lKDXBy6K20m5qoHJqD7wNQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +sqBcmD5cIUuw9zysmhDF2wAA +jdMvKaHxmEeiFufDE2xiawAA +5zfnwtcPAU2Ido+x12zH6AAA +bfISscEtpECF/dwEeH6wUgAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +yAadqRWlgkesJ8rLajOQkQAA +6zGx7dvjLEyzocy2kx6kIQAA +PpfDRWJ6xkiMDSbfog6pBAAA +/P/BevfwEUy+kGivjMh2jQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +doPYhTezD02w7U5jPuxCQgAA +suYxnRNJfEuqxans+gb7+QAA +6kMoTMhweUGB4UEBAxLGLwAA +7diJMjxz3ki5B8VbJ5ROWQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA +4 +P3WLWzk/NUWvhq7xl5OlBgAA +tGE/twJxYEi84uCEs5ECZwAA +ZqZ3hJMJmk2LJXDTdNfYbgAA +Y2gNVwd6o0KdoTXLdAsPYwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +lKDXBy6K20m5qoHJqD7wNQAA +4 +RpZ17jQU7EC4iprPWEOyUwAA +zIeBOJ4CmUuKYp/6QkJqOAAA +Z8cD/TUOW0efzIm99JAQJAAA +4NQM4L6WDk+LfoeiH/HoBwAA + + +Documents +rdpYIcoK9Em30t5d9g3BhgAA +1 +BQvYyShr5EOSbw3vbUAwUwAA +7 + +Texte +Impda0SpPESB4/qCzi4/LwAA +4 +lLhY7Ox3k0mQQC0dLUTASwAA +0Y6EtkqpNUuiwu0Kbcdd0QAA +vYO/JJUL00Kzjt9Z+fm/vAAA +FfCvkyOpEU2zPcblPYbUGAAA +5 +dUJBsw8f8USUy/2zIoFvdwAA +WnTr4KJx70C4VaSvin7HXQAA +iatn9+C99UCssosZqWKzswAA +7nGjTHJtwUCKpHGHTmBehgAA +dJmGmjPQe0SCGupNm425rAAA +1 +IzsrjrzKn02WHI6doKm26AAA +2 + +getTxt +7PB0Q/ABFU2nmEBmf5C3sQAA +1 + +pdkReturn +String +a211u7tHMEyBWKbSHBOuhgAA + + + +ModifyTxt +7PB0Q/ABFU2nmEBmf5C3sQAA +1 + +String new +nMREuO/W/0iDooyJOIhZUAAA + + +2 +6Uv/SLUEZEi/Mvo4Y0SNbQAA +B8iPbASkZUaxzINrFr/CBAAA +2 + +txt +String +7PB0Q/ABFU2nmEBmf5C3sQAA + + +auteur +String +7PB0Q/ABFU2nmEBmf5C3sQAA + + + +Figure +Impda0SpPESB4/qCzi4/LwAA +4 +TaTuOxbRu0KSM/avnE4YhwAA +c2R5VvgjOEyODr0f/JeSOgAA +af2s8ltnlkGVPoABlpvqYQAA +doCEn86POUiuasP/LHOu3wAA +2 +IQigfW7cFkuy6OO9Zmh5nQAA +Nqze4q3bu06gBwJorRWqcwAA +2 +E7ANNG+L90eGTfeiRqTS3wAA +T5KG/Eqx6kqP/URCm/jPqwAA +1 + +getLegende +lKDXBy6K20m5qoHJqD7wNQAA +1 + +pdkReturn +String +13WYeRcA3E2wlfRRJ/5F/gAA + + +2 +ajgsBrqrS0eKmPR8SRDoBgAA +FutiEglbLk29yWvupNXBswAA +3 + +hauteur +int +lKDXBy6K20m5qoHJqD7wNQAA + + +legende +String +lKDXBy6K20m5qoHJqD7wNQAA + + +largeur +int +lKDXBy6K20m5qoHJqD7wNQAA + + + +Section +Impda0SpPESB4/qCzi4/LwAA +4 +4tEdqQwMtE2uuSutrJ+auAAA +aIsWyC4ywEG2eMGWPqBVaAAA +XSUYfie7LEOuh+InSyxfPwAA +ukBek/GSYUaORKWTtkl+1AAA +3 +BcP93RjKUEePCa17jW7zxAAA +b7xRRVT5SEeBIJugkb/NlwAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +xTD57L5WYE6QCUfz2s5U5QAA +2 + +addElement +wLGeEZTkNk6DSYrx4LXTJwAA +1 + +el +rXElPo41nk+Km2Yr4sQrMQAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +removeElement +wLGeEZTkNk6DSYrx4LXTJwAA +1 + +el +DkkyzuaqnUK3nZ2r6DBv1AAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +2 +f8PMnfAUH0awFdeg4GhlmAAA +weC7jpfXIUSXpEP6g/RP6gAA +1 +vUAG/l9ewkidQeX5aRnYxwAA +1 + +titre +String +wLGeEZTkNk6DSYrx4LXTJwAA + + + +Element +True +Impda0SpPESB4/qCzi4/LwAA +4 +IZrUep6ckUuRPEQSsWDumQAA +CzhQfB86ikSMBJl/41G9kwAA +N/48nhs2f0aZb4f39vcbfAAA +ORPs1w8k1kqYgR9RXsnDCgAA +4 +IzsrjrzKn02WHI6doKm26AAA +E7ANNG+L90eGTfeiRqTS3wAA +xTD57L5WYE6QCUfz2s5U5QAA +T5KG/Eqx6kqP/URCm/jPqwAA +5 + +Operation +gQoe9RSSW0OjJ//CTwBU7wAA + + +getNiveau +True +gQoe9RSSW0OjJ//CTwBU7wAA +2 + +pdkReturn +int +7CLfAZ7XM0qICMoPrPb8JAAA + + +Element e +7CLfAZ7XM0qICMoPrPb8JAAA + + + +getOrdre +True +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +pdkReturn +int +8r/a1rfny0epbaC0ETzyCQAA + + + +getPoids +True +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +pdkReturn +int +UcUdsuDJy0O993AmrTGZdwAA + + + +GetChild +gQoe9RSSW0OjJ//CTwBU7wAA +2 + +pdkReturn +xmAIdT/56UiF1o+a13LzGgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +int +xmAIdT/56UiF1o+a13LzGgAA + + +6 +6sfXfueADU6TZh9DP5X8oQAA ++cqMexxO5UuiFo2TIDRhJwAA +CfI30KDMLUyoeZgLZnTkXgAA +OyNjBnb5M0i9mQ+IqGNKeQAA +YfOTYqdH+0ehqvZxuE/F6gAA +0ALjCJQQNkecXUgkyORDnAAA +3 +KCIdSwBnJ0uohZj1QTpYnQAA +JkDLBRvCP0K10wkkvGdk9gAA +q6DU2+AOnkezrN+UTDwlIAAA +3 + +reference +String +gQoe9RSSW0OjJ//CTwBU7wAA + + +coefficient +int +gQoe9RSSW0OjJ//CTwBU7wAA + + +annotation +String +gQoe9RSSW0OjJ//CTwBU7wAA + + + +FabriqueTexte +Impda0SpPESB4/qCzi4/LwAA +4 +myt0n6WtjUWxfTwmDb5q8gAA +LDosoBAUVUGWwUizSDJNSQAA +axHW8rmhEEeDwgAplOI+HQAA +S4MW5ter20O9ap5C+fRkSgAA +7 +BcP93RjKUEePCa17jW7zxAAA +dUJBsw8f8USUy/2zIoFvdwAA +IQigfW7cFkuy6OO9Zmh5nQAA +WnTr4KJx70C4VaSvin7HXQAA +b7xRRVT5SEeBIJugkb/NlwAA +iatn9+C99UCssosZqWKzswAA +dJmGmjPQe0SCGupNm425rAAA +2 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA +1 + +CreateText +FwMOtxt65UqiV6b+R4wngQAA +3 + +pdkReturn +EDxxI1UkcUiejG3vdB9EDAAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +text +String +EDxxI1UkcUiejG3vdB9EDAAA + + +Auteur +String +EDxxI1UkcUiejG3vdB9EDAAA + + + + +FabriqueSection +Impda0SpPESB4/qCzi4/LwAA +4 +jfsCQrzPr0W6vrlELMYPIQAA +kBn4mytbaUaYuW3YzVT59wAA +UXn7uPlQQ0yFqYnPMxEqhAAA +060rGD10d0myPWnogdZyzQAA +2 +7nGjTHJtwUCKpHGHTmBehgAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +clNqWUTgp0+2091x1gbjyQAA +1 + +CreateSection +4WYHqFXU/Ei9XC5FeDIRcAAA +2 + +pdkReturn +nLrflJzA2UWsSQZu0YUlnAAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +titre +String +nLrflJzA2UWsSQZu0YUlnAAA + + + + +FabriqueFigure +Impda0SpPESB4/qCzi4/LwAA +4 +7mOzScVF+0ePZlw8hu2WXQAA +5fufJMTjIUSheF0eG3hJiAAA +hqxrvkkR5UmzE6kMnXQhtgAA +/faRb5iZi0Wln9O2bIMGSwAA +1 +Nqze4q3bu06gBwJorRWqcwAA +1 +FkAvYphJvk+GhCrWQg0hMwAA +1 + +CreateFigure +DRf42+A5fk+PlBjqQM3BtgAA +4 + +pdkReturn +duBaxA95YEWztQ1ZgxfOGQAA +lKDXBy6K20m5qoHJqD7wNQAA + + +haut +int +duBaxA95YEWztQ1ZgxfOGQAA + + +larg +int +duBaxA95YEWztQ1ZgxfOGQAA + + +legende +String +duBaxA95YEWztQ1ZgxfOGQAA + + + + + +Gestion +rdpYIcoK9Em30t5d9g3BhgAA +1 +3AGRwkWtJEq/eLf89tXEgQAA +1 + +Fabrique +singleton +True +qJtKf9XZIkypw6FrOikzVgAA +4 +GgzpQjr4u0iuK5eMrLvVnAAA +IxMoiWf3lUSt7VYgzemuwgAA +2sRsaBoBo066Rc5SEdkoIwAA +uCQzXiXYv0y7TVXQJ/Xd5QAA +4 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA +clNqWUTgp0+2091x1gbjyQAA +FkAvYphJvk+GhCrWQg0hMwAA +5 + +Instance +DpTZIs2Xu0i1gBSzuYZrrQAA +1 + +Parameter1 +pdkReturn +0FdPtEx2wEuTRcF63bIwTQAA + + + +getElement +DpTZIs2Xu0i1gBSzuYZrrQAA +2 + +pdkReturn +x1c07047QEuh+UxPJKfWhgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +ref +int +x1c07047QEuh+UxPJKfWhgAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +3 + +pdkReturn +YFbB3M+nmk6BCaRO6WYNtwAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +text +String +YFbB3M+nmk6BCaRO6WYNtwAA + + +auteur +String +YFbB3M+nmk6BCaRO6WYNtwAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +4 + +pdkReturn +F7Q8Ma0QtkGHkrpTf3DzcgAA +lKDXBy6K20m5qoHJqD7wNQAA + + +haut +int +F7Q8Ma0QtkGHkrpTf3DzcgAA + + +larg +int +F7Q8Ma0QtkGHkrpTf3DzcgAA + + +legende +String +F7Q8Ma0QtkGHkrpTf3DzcgAA + + + +CreateElem +DpTZIs2Xu0i1gBSzuYZrrQAA +2 + +pdkReturn +KY6Z04W3kkGEEmOsPDQVgwAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +titre +String +KY6Z04W3kkGEEmOsPDQVgwAA + + +4 +xYkzq+2k9EOGDHDUAvMMgAAA +62HREk8rX0Sc9cgZ2vd5OAAA +JZM2DpGZAE6m4QvsBB1V0gAA +L1cYpQuZNU6K8h4Z0RaDxQAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +6s7gNM7H50yqpGioT/feqgAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +9QIWFifSw0GQS5U68eO2lQAA +GmbTLFbIw0uAIg6xeYCZrgAA ++g6u32qWa0SimUkKMbIPDgAA +4z780dgDeEayvR7ygOLfVAAA + + +rdpYIcoK9Em30t5d9g3BhgAA +MnkwLOdbOEe7eRLOB7CxBwAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +zCmzxKiqy02z2TY335CEogAA +H/4fcYUTCE29QEwgxJGOpwAA +TSkIjfHAhkaTZkLQIfoZswAA +7aaXAWsiukSdtOtWeuyYfgAA + + +IHM +rdpYIcoK9Em30t5d9g3BhgAA +1 +L1fwIIWBIUG2kj0KFcAm4wAA +3 + +IHM_Acteur +True +JMH/lV3enEWLeRUov/mQhgAA +4 +RD1fjP+6TU+OFn6MZHxYxAAA +yUnPnFE/CUyLDW4MlvzJ1AAA +90WBoVJPUkWvN/mo4hdN+QAA +mcJXOPaZrUWp6nOAhOVHcgAA +2 +JK2MxvnL/UiAlL6BB7jGvAAA +yfBkx3/zI0qLl3KFCn8v0wAA +3 + +AfficherDoc +Ly5Gzi7l80CSAnPpQyskqgAA +1 + +ref +int +umRpiI1lUEyYaIZS/My1RgAA + + + +authentifier +Ly5Gzi7l80CSAnPpQyskqgAA +1 + +code +String +wFY/AIOfR0WIZbVEFRLJcgAA + + + +listeDocuments +Ly5Gzi7l80CSAnPpQyskqgAA + +2 +v/3JzN1mHkiM/jF82ZDGSgAA +SlDb+R4REUGthoXfmcjSygAA + + +Redacteur +JMH/lV3enEWLeRUov/mQhgAA +4 +DqHuCxa1DUey+2GMGzdmzgAA +G7Ot+jCF3k6bsfhntQtcdwAA +syKcg7aj20yTd1wg02FQzAAA +RgIdYvAmekO1WvyUk47aAQAA +1 +JK2MxvnL/UiAlL6BB7jGvAAA +2 + +creerDocument +6s7gNM7H50yqpGioT/feqgAA + + +modifierDocument +6s7gNM7H50yqpGioT/feqgAA +1 + +ref +int +Y28Cp8eW7U209lEaU4R3MgAA + + + + +Lecteur +JMH/lV3enEWLeRUov/mQhgAA +4 +ZA+4aIbNS0KK4pZIbi5n9AAA +xd6xQ8oIoU2zeGesGnBKcwAA +rjFmrvFRx02BJPCEnieXEQAA +z3kRONNLxEGcs/a5VqsSWAAA +1 +yfBkx3/zI0qLl3KFCn8v0wAA +2 + +noter +MnkwLOdbOEe7eRLOB7CxBwAA +2 + +elem +gk3FzLSoV0O48iPWwdTaCgAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +note +int +gk3FzLSoV0O48iPWwdTaCgAA + + + +annoter +MnkwLOdbOEe7eRLOB7CxBwAA +2 + +elem +NHQtZoXVDUamy3eFCcrtYwAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +commentaire +String +NHQtZoXVDUamy3eFCcrtYwAA + + + + + + +Implementation Model +UMLStandard +implementationModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +XcLfywYsRUuj7Opj8099IQAA + +iIZL+yTBD0i9dHKnbBEQrgAA + + + + +Deployment Model +UMLStandard +deploymentModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +LAjGs5I1w0ahdbiud/6TZwAA + +yo9IMES6W0Sx2his8HULEgAA + + + + + + diff --git a/G54/FabriqueDocumentsUC.uml b/G54/FabriqueDocumentsUC.uml new file mode 100644 index 0000000..3dc16b4 --- /dev/null +++ b/G54/FabriqueDocumentsUC.uml @@ -0,0 +1,4496 @@ + + + + + + +UMLStandard + + + + +Untitled +6 + +Use Case Model +UMLStandard +useCaseModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Cas d'utilisation +JHbYS/ung0u9sLR9NaB6+AAA + +/h9+d8myqU6rQ9F8ePlsUQAA +17 + +clMaroon +$00B9FFFF +116 +76 +481 +353 +System + + +clMaroon +$00B9FFFF +624 +132 +72 +78 +oR4SEUJ3ok++PwPj9tP/gAAA + + +1 +Rédacteur + + +False + + +False + + + +False +oR4SEUJ3ok++PwPj9tP/gAAA + + +False +oR4SEUJ3ok++PwPj9tP/gAAA + + + +clMaroon +$00B9FFFF +616 +276 +101 +78 +1easdQNAokyuA8V6wKYKcAAA + + +1 +Relecteur + + +False + + +False + + + +False +1easdQNAokyuA8V6wKYKcAAA + + +False +1easdQNAokyuA8V6wKYKcAAA + + + +clMaroon +$00B9FFFF +376 +104 +168 +45 +1MCIPHZtz06bf8ViWw0FtwAA + + +1 +Créer un élément + + +False + + +False + + + +False +1MCIPHZtz06bf8ViWw0FtwAA + + +False +1MCIPHZtz06bf8ViWw0FtwAA + + +False +1MCIPHZtz06bf8ViWw0FtwAA + + + +clMaroon +$00B9FFFF +372 +180 +173 +45 +fw7K2Ry7kUqF7Br3+IVxOgAA + + +1 +Modifier un élément + + +False + + +False + + + +False +fw7K2Ry7kUqF7Br3+IVxOgAA + + +False +fw7K2Ry7kUqF7Br3+IVxOgAA + + +False +fw7K2Ry7kUqF7Br3+IVxOgAA + + + +clMaroon +$00B9FFFF +400 +316 +152 +45 +2E5a6M7qzkGq167X+RXudgAA + + +1 +Noter un élément + + +False + + +False + + + +False +2E5a6M7qzkGq167X+RXudgAA + + +False +2E5a6M7qzkGq167X+RXudgAA + + +False +2E5a6M7qzkGq167X+RXudgAA + + + +clMaroon +$00B9FFFF +380 +248 +171 +45 +HiF20+zsr0O+sD0Sk9Fd1wAA + + +1 +Afficher un élément + + +False + + +False + + + +False +HiF20+zsr0O+sD0Sk9Fd1wAA + + +False +HiF20+zsr0O+sD0Sk9Fd1wAA + + +False +HiF20+zsr0O+sD0Sk9Fd1wAA + + + +clMaroon +$00B9FFFF +616,320;551,328 +oOQT2+/RU0KlrA7V78/pcAAA +K+K7F+tnzkSAd7VDNa+nWAAA +kGUhGWQcbU+LwVdv8PSpFAAA + +False +1,5707963267949 +15 +oOQT2+/RU0KlrA7V78/pcAAA + + +False +1,5707963267949 +30 +oOQT2+/RU0KlrA7V78/pcAAA + + +False +-1,5707963267949 +15 +oOQT2+/RU0KlrA7V78/pcAAA + + +False +-0,523598775598299 +30 +epHead +3bXXVPQClka6VeLxW3/AXAAA + + +False +0,523598775598299 +30 +epTail +26UEdf3yUEyQz36fUuPx3wAA + + +False +0,523598775598299 +25 +epHead +3bXXVPQClka6VeLxW3/AXAAA + + +False +-0,523598775598299 +25 +epTail +26UEdf3yUEyQz36fUuPx3wAA + + +False +-0,785398163397448 +40 +epHead +3bXXVPQClka6VeLxW3/AXAAA + + +False +0,785398163397448 +40 +epTail +26UEdf3yUEyQz36fUuPx3wAA + + +False +-1000 +-1000 +50 +8 +3bXXVPQClka6VeLxW3/AXAAA + + +False +-1000 +-1000 +50 +8 +26UEdf3yUEyQz36fUuPx3wAA + + + +clMaroon +$00B9FFFF +616,303;550,289 +ldci0+BPf0uHUNYMkYKI3wAA +Z4l/Up/OhU2y8/Wo7rfwIwAA +kGUhGWQcbU+LwVdv8PSpFAAA + +False +1,5707963267949 +15 +ldci0+BPf0uHUNYMkYKI3wAA + + +False +1,5707963267949 +30 +ldci0+BPf0uHUNYMkYKI3wAA + + +False +-1,5707963267949 +15 +ldci0+BPf0uHUNYMkYKI3wAA + + +False +-0,523598775598299 +30 +epHead +BCbIWV9tNEO4IV+uVoO62QAA + + +False +0,523598775598299 +30 +epTail +rVbihr2uG02CeWhaw+PBAQAA + + +False +0,523598775598299 +25 +epHead +BCbIWV9tNEO4IV+uVoO62QAA + + +False +-0,523598775598299 +25 +epTail +rVbihr2uG02CeWhaw+PBAQAA + + +False +-0,785398163397448 +40 +epHead +BCbIWV9tNEO4IV+uVoO62QAA + + +False +0,785398163397448 +40 +epTail +rVbihr2uG02CeWhaw+PBAQAA + + +False +-1000 +-1000 +50 +8 +BCbIWV9tNEO4IV+uVoO62QAA + + +False +-1000 +-1000 +50 +8 +rVbihr2uG02CeWhaw+PBAQAA + + + +clMaroon +$00B9FFFF +624,188;508,248 +yzCJKNgVZEeKUCS1d1iOLQAA +Z4l/Up/OhU2y8/Wo7rfwIwAA +SZRzQ4b64UKReKvrlb5tGgAA + +False +1,5707963267949 +15 +yzCJKNgVZEeKUCS1d1iOLQAA + + +False +1,5707963267949 +30 +yzCJKNgVZEeKUCS1d1iOLQAA + + +False +-1,5707963267949 +15 +yzCJKNgVZEeKUCS1d1iOLQAA + + +False +-0,523598775598299 +30 +epHead +iPF4A175OUWpATRSBEpliQAA + + +False +0,523598775598299 +30 +epTail +IlLhN/q79kuQoHrBU/7EXQAA + + +False +0,523598775598299 +25 +epHead +iPF4A175OUWpATRSBEpliQAA + + +False +-0,523598775598299 +25 +epTail +IlLhN/q79kuQoHrBU/7EXQAA + + +False +-0,785398163397448 +40 +epHead +iPF4A175OUWpATRSBEpliQAA + + +False +0,785398163397448 +40 +epTail +IlLhN/q79kuQoHrBU/7EXQAA + + +False +-1000 +-1000 +50 +8 +iPF4A175OUWpATRSBEpliQAA + + +False +-1000 +-1000 +50 +8 +IlLhN/q79kuQoHrBU/7EXQAA + + + +clMaroon +$00B9FFFF +624,176;544,189 +BfLH6u/dRki4qouRqI1hZwAA +Pbcpi0pUpk28lff8OP8qSwAA +SZRzQ4b64UKReKvrlb5tGgAA + +False +1,5707963267949 +15 +BfLH6u/dRki4qouRqI1hZwAA + + +False +1,5707963267949 +30 +BfLH6u/dRki4qouRqI1hZwAA + + +False +-1,5707963267949 +15 +BfLH6u/dRki4qouRqI1hZwAA + + +False +-0,523598775598299 +30 +epHead +f5IjU8G2WEio979xKCYaAwAA + + +False +0,523598775598299 +30 +epTail ++LeESxXIhUeNnGPyM5B/JgAA + + +False +0,523598775598299 +25 +epHead +f5IjU8G2WEio979xKCYaAwAA + + +False +-0,523598775598299 +25 +epTail ++LeESxXIhUeNnGPyM5B/JgAA + + +False +-0,785398163397448 +40 +epHead +f5IjU8G2WEio979xKCYaAwAA + + +False +0,785398163397448 +40 +epTail ++LeESxXIhUeNnGPyM5B/JgAA + + +False +-1000 +-1000 +50 +8 +f5IjU8G2WEio979xKCYaAwAA + + +False +-1000 +-1000 +50 +8 ++LeESxXIhUeNnGPyM5B/JgAA + + + +clMaroon +$00B9FFFF +624,162;543,144 +mwQWNw58DEWx44mCp2k4DAAA +6tOJ90DAxEqC4zlUiSDlfwAA +SZRzQ4b64UKReKvrlb5tGgAA + +False +1,5707963267949 +15 +mwQWNw58DEWx44mCp2k4DAAA + + +False +1,5707963267949 +30 +mwQWNw58DEWx44mCp2k4DAAA + + +False +-1,5707963267949 +15 +mwQWNw58DEWx44mCp2k4DAAA + + +False +-0,523598775598299 +30 +epHead +oNhOq+yYL0es17fUclxnYwAA + + +False +0,523598775598299 +30 +epTail +BtPDTyf2YUmY2q1HWT8LFgAA + + +False +0,523598775598299 +25 +epHead +oNhOq+yYL0es17fUclxnYwAA + + +False +-0,523598775598299 +25 +epTail +BtPDTyf2YUmY2q1HWT8LFgAA + + +False +-0,785398163397448 +40 +epHead +oNhOq+yYL0es17fUclxnYwAA + + +False +0,785398163397448 +40 +epTail +BtPDTyf2YUmY2q1HWT8LFgAA + + +False +-1000 +-1000 +50 +8 +oNhOq+yYL0es17fUclxnYwAA + + +False +-1000 +-1000 +50 +8 +BtPDTyf2YUmY2q1HWT8LFgAA + + + +clMaroon +$00B9FFFF +140 +124 +142 +45 +Yjqsad54NEudLqslqPO+5QAA + + +1 +Authentification + + +False + + +False + + + +False +Yjqsad54NEudLqslqPO+5QAA + + +False +Yjqsad54NEudLqslqPO+5QAA + + +False +Yjqsad54NEudLqslqPO+5QAA + + + +clMaroon +$00B9FFFF +376,133;281,140 +FKgVDWy7TkiHDTqf1KIcQwAA +HwkYb8FmD0WUv93gwnKPZgAA +6tOJ90DAxEqC4zlUiSDlfwAA + +False +1,5707963267949 +15 +FKgVDWy7TkiHDTqf1KIcQwAA + + +1,5707963267949 +30 +<<include>> +FKgVDWy7TkiHDTqf1KIcQwAA + + +False +-1,5707963267949 +15 +FKgVDWy7TkiHDTqf1KIcQwAA + + + +clMaroon +$00B9FFFF +372,183;281,162 +4I1m6fbfk0mwHpimkfJLFgAA +HwkYb8FmD0WUv93gwnKPZgAA +Pbcpi0pUpk28lff8OP8qSwAA + +False +1,5707963267949 +15 +4I1m6fbfk0mwHpimkfJLFgAA + + +1,5707963267949 +30 +<<include>> +4I1m6fbfk0mwHpimkfJLFgAA + + +False +-1,5707963267949 +15 +4I1m6fbfk0mwHpimkfJLFgAA + + + +clMaroon +$00B9FFFF +152 +212 +114 +45 +obCqMYT8AkWNturwx7rMCQAA + + +1 +Vérifier code + + +False + + +False + + + +False +obCqMYT8AkWNturwx7rMCQAA + + +False +obCqMYT8AkWNturwx7rMCQAA + + +False +obCqMYT8AkWNturwx7rMCQAA + + + +clMaroon +$00B9FFFF +208,212;209,168 +4aByRBwK1kqKCJp+fy26OwAA +HwkYb8FmD0WUv93gwnKPZgAA +KQewVFIFaUKTZHiTd+mTkAAA + +False +1,5707963267949 +15 +4aByRBwK1kqKCJp+fy26OwAA + + +False +1,5707963267949 +30 +4aByRBwK1kqKCJp+fy26OwAA + + +False +-1,5707963267949 +15 +4aByRBwK1kqKCJp+fy26OwAA + + +False +-0,523598775598299 +30 +epHead +pelFgXOPxkqhqLhCwIBhFQAA + + +False +0,523598775598299 +30 +epTail +n0QPXAj+cUeih3ZYlPUDxQAA + + +False +0,523598775598299 +25 +epHead +pelFgXOPxkqhqLhCwIBhFQAA + + +False +-0,523598775598299 +25 +epTail +n0QPXAj+cUeih3ZYlPUDxQAA + + +False +-0,785398163397448 +40 +epHead +pelFgXOPxkqhqLhCwIBhFQAA + + +False +0,785398163397448 +40 +epTail +n0QPXAj+cUeih3ZYlPUDxQAA + + +False +-1000 +-1000 +50 +8 +pelFgXOPxkqhqLhCwIBhFQAA + + +False +-1000 +-1000 +50 +8 +n0QPXAj+cUeih3ZYlPUDxQAA + + + + +17 + +Rédacteur +JHbYS/ung0u9sLR9NaB6+AAA +3 +SZRzQ4b64UKReKvrlb5tGgAA +bxILq3wcsUyS8YelSwTFjgAA +AmifWmcVkEy9abjVYGHGfwAA +4 +AilzAdh7Xk6q2QWqo3yzDQAA +IlLhN/q79kuQoHrBU/7EXQAA ++LeESxXIhUeNnGPyM5B/JgAA +BtPDTyf2YUmY2q1HWT8LFgAA + + +Relecteur +JHbYS/ung0u9sLR9NaB6+AAA +3 +kGUhGWQcbU+LwVdv8PSpFAAA +LAKRR4nENUyrHzcjSUmfrgAA +UCnO6gbCVkad5+WJEcgzhQAA +3 +v/BiX00Bh0SNT5u+MpUZ7gAA +26UEdf3yUEyQz36fUuPx3wAA +rVbihr2uG02CeWhaw+PBAQAA + + +JHbYS/ung0u9sLR9NaB6+AAA +2 + +False +/CzAY1/rMECNUB7cASoKywAA +oR4SEUJ3ok++PwPj9tP/gAAA + + +/CzAY1/rMECNUB7cASoKywAA +1easdQNAokyuA8V6wKYKcAAA + + + +Créer un élément +JHbYS/ung0u9sLR9NaB6+AAA +4 +6tOJ90DAxEqC4zlUiSDlfwAA +wSiuoFtkpUOGOWRE0YaO+AAA +05V3KbCm+kSQBbWESB2M3QAA +HK5Q2N02L0K9rBBQjxnebAAA +1 +oNhOq+yYL0es17fUclxnYwAA +1 +FKgVDWy7TkiHDTqf1KIcQwAA + + +Modifier un élément +JHbYS/ung0u9sLR9NaB6+AAA +4 +Pbcpi0pUpk28lff8OP8qSwAA +L0KNExPQZE6E4b7ipvVkbgAA +A2X43nQ0UEuDw7n1v9ZveAAA +6QEkfwdU8UGizQ/UvaJauwAA +1 +f5IjU8G2WEio979xKCYaAwAA +1 +4I1m6fbfk0mwHpimkfJLFgAA + + +Noter un élément +JHbYS/ung0u9sLR9NaB6+AAA +4 +K+K7F+tnzkSAd7VDNa+nWAAA +nuU08g57TEqKbJwkhIm6+QAA +kxKl0Y1BDUKHsDQV+Ad+tgAA +W1to9BqlZEagiq68IHjptAAA +1 +3bXXVPQClka6VeLxW3/AXAAA + + +Afficher un élément +JHbYS/ung0u9sLR9NaB6+AAA +4 +Z4l/Up/OhU2y8/Wo7rfwIwAA +NdFHeOTmNEKmH3vLgmMg/QAA +/Xqj9g7kx0G7U7xfafkAVAAA +qC8obfT0YEKGPrujuOje2wAA +2 +BCbIWV9tNEO4IV+uVoO62QAA +iPF4A175OUWpATRSBEpliQAA + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +Zs5KXBmDHEO2SMMOINZxAAAA +a44EfdDMykizn6CRa4Fi/QAA +0RsVAoY/p0eB3UucEVIOowAA +9vPUzQZp2kqnv0xUyjUxsAAA +2 + +False +oOQT2+/RU0KlrA7V78/pcAAA +1easdQNAokyuA8V6wKYKcAAA +4 +29NyjaNqvEydn1wZyvgLbwAA +Hqv4FWnMrUacTV3aCfFv2QAA +vXC5fDPqmEGUcmjxeOAK9AAA +t4zYL+ntBE+vfMFB8z9GKAAA + + +oOQT2+/RU0KlrA7V78/pcAAA +2E5a6M7qzkGq167X+RXudgAA +4 +xBffm/jsY027HqRlFV2apQAA +X5UoCxvXiUukekYlZ55eqwAA +sHt62XBEJ0WlRKL/HMq50AAA ++EfsHiByFEuEPCh0VpgC6wAA + + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +LLLyF6/HGEKSvXZQA6nXnQAA +C3BEY7Xv30y1FKp83PH0vAAA +ABKJlXwRuk+sNuE7RO+ZXQAA +cJbDfmsERkONsAjVXFcHbgAA +2 + +False +ldci0+BPf0uHUNYMkYKI3wAA +1easdQNAokyuA8V6wKYKcAAA +4 +mSycQQuEmE+szi0NBr1TCwAA +/lNhNt7IgEuUogdh/xzd1AAA +vjbDrFRBJUa0uKyos8Vc5wAA +7HJ1cDW6pUOT7IAfxAej1gAA + + +ldci0+BPf0uHUNYMkYKI3wAA +HiF20+zsr0O+sD0Sk9Fd1wAA +4 +4oZ3DX8J3ky/+20C6q2LmwAA +e3TwHg0ZqE6EMEzBP5U7RwAA +DxMUezaOCk6pYtvVgg55twAA +sRfwKrVkC0a8c6oT9uiBDgAA + + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +9+OMxMwWz0ezxc6mOX3lywAA +DoM2Bii6uU+jFgfVI6wtmAAA +YAdTYz5iw0+4RF7HO2zA2gAA +d9HXmjeyPUm7xlrW5FW01AAA +2 + +False +yzCJKNgVZEeKUCS1d1iOLQAA +oR4SEUJ3ok++PwPj9tP/gAAA +4 +dulXqpUFNkKB63hHoRXikwAA +HbSo4VgNVEqMjaLtjYD28wAA +2bu8jfAetUiLl/kAAIaTQgAA +/3xqUixPR0CrZ1A5NK9uBwAA + + +yzCJKNgVZEeKUCS1d1iOLQAA +HiF20+zsr0O+sD0Sk9Fd1wAA +4 +lIOayezj80ypwP1u6WcEPAAA +W5e0JS6/AUODBL1xP4titAAA ++dsaEf7hF0WlgGbleTUn+gAA +DDqvxOJ1uEqEH8ySGX25JgAA + + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +gq9l551YoUijxmIv5WY8WQAA +yXF0xmGwGEulXcq74YMbAgAA +mF3xCrleOkS0PPMUVocR/AAA +D1N+EZnvW0uNFs7CR6OrQwAA +2 + +False +BfLH6u/dRki4qouRqI1hZwAA +oR4SEUJ3ok++PwPj9tP/gAAA +4 +b4eRRcNd60G3BRttPyXtIQAA +FTw6tvdtU0+UzjYjUQYP1AAA +y+QUrsvrX0eabbl2orWlpgAA ++URlaVSTP0aKAcZIP7J+KgAA + + +BfLH6u/dRki4qouRqI1hZwAA +fw7K2Ry7kUqF7Br3+IVxOgAA +4 +0oT3jx1sAkCVPOJSIp1PBwAA +C1k1YFYHeEmfmsEGM7B9+QAA +jmcwIW/Lw0ebGe8XzCHEeAAA +nYg9fYarkUy8wB7Ht+Pv/gAA + + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +uuhEIO/IsUmbvTHmgY26XAAA +HBaoC8yURUmyLmXZD/WOyAAA +bQQSGBhkikqWYDud2m0YKAAA +NJWSYanUjkaBSt+JhTCqQQAA +2 + +False +mwQWNw58DEWx44mCp2k4DAAA +oR4SEUJ3ok++PwPj9tP/gAAA +4 +c9OtnLlo1UGLpi4EZfB4FAAA +7likppmyukiLhtPMVYRWOAAA +DhmecTjXF02KcVrm6Rd+CwAA +adM55q27mkuJ1PAp1k2XTgAA + + +mwQWNw58DEWx44mCp2k4DAAA +1MCIPHZtz06bf8ViWw0FtwAA +4 +k9JxmNntxEaTqg1fEJeaAgAA +yy3635qOTku3aBaSklWRkwAA +elEt3XHErECa6OPuEcB/ugAA +1aZJelAzAkav+Qd4tphObwAA + + + +Authentification +JHbYS/ung0u9sLR9NaB6+AAA +4 +HwkYb8FmD0WUv93gwnKPZgAA +2dR/5gdgGE+xGH4xBNieaAAA +fWDiBcUm50GkaDtgVsQLEAAA +k1khbyJJXkSA7IBhYS9LnQAA +1 +pelFgXOPxkqhqLhCwIBhFQAA +2 +FKgVDWy7TkiHDTqf1KIcQwAA +4I1m6fbfk0mwHpimkfJLFgAA + + +JHbYS/ung0u9sLR9NaB6+AAA +Yjqsad54NEudLqslqPO+5QAA +1MCIPHZtz06bf8ViWw0FtwAA +4 ++rgn6gprFUGb8n7f/4uL/AAA +ihDjpiGpd0Gnlo7+GEwzcAAA +f8QpfdaMn0WtaTKxdeofegAA +mPVVtAGME0SnPoALTOS5hQAA + + +JHbYS/ung0u9sLR9NaB6+AAA +Yjqsad54NEudLqslqPO+5QAA +fw7K2Ry7kUqF7Br3+IVxOgAA +4 +U1gS8VwExUuV6OOU+SIMzAAA +Beh0z9+sTEe9UK5vC7tt9gAA +287qMzWER0mXg5LLZdrrZwAA +uuWSrtA0TkipRkF7OznbqgAA + + +Vérifier code +JHbYS/ung0u9sLR9NaB6+AAA +4 +KQewVFIFaUKTZHiTd+mTkAAA +rtD9Vs+56UKgt7kdJ0qIAQAA +q+ottlXn20u1ozNY9Goz6AAA +nz+LFLsrQkiupF/hpXIMbAAA +1 +n0QPXAj+cUeih3ZYlPUDxQAA + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +2LehA46yEU2+iyShmDf++AAA +s8V3vI9iBU2Kx0DDX+bEzgAA +dMrf/Qg7iEW08uXLoz7DSgAA +7DDKcSPM10OPhz3+4XkFvwAA +2 + +False +4aByRBwK1kqKCJp+fy26OwAA +obCqMYT8AkWNturwx7rMCQAA +4 +wMS+eeSzX0O+4mlOZ6jHRgAA +tyUuWuYbQ0qImf8pbKs9IQAA +EYyacFD7Zk++7PixcFLZogAA +rL33A7TW80qAH7nmvEXF4QAA + + +4aByRBwK1kqKCJp+fy26OwAA +Yjqsad54NEudLqslqPO+5QAA +4 +lBmpj8aZV0+Xm6lbTFJ2qgAA +hA98b6oy5k+ydI8lHZ5JNQAA +z8NWfdN8m02bvQeW4nSaWgAA +Y+Yf/YJHaUyd2cVIiPkhDgAA + + + + +Analysis Model +UMLStandard +analysisModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +True +RobustnessDiagram +RAmAA59hh06H2Lgzh2ws6wAA + +8y2XTjpsVEW84pSq+fO9CgAA + + + + +Design Model +UMLStandard +designModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Diagramme de classe de conception +True +rdpYIcoK9Em30t5d9g3BhgAA + +vKUNnDfUF0a5ZdpPtMjO/gAA +25 + +clMaroon +$00B9FFFF +16 +52 +785 +489 +Impda0SpPESB4/qCzi4/LwAA + + +Documents + + +False + + +False + + + + +clMaroon +$00B9FFFF +236 +292 +80 +43 +7PB0Q/ABFU2nmEBmf5C3sQAA + + +1 +Texte + + +False + + +False + + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +False +7PB0Q/ABFU2nmEBmf5C3sQAA + + + +clMaroon +$00B9FFFF +376 +300 +80 +43 +lKDXBy6K20m5qoHJqD7wNQAA + + +1 +Figure + + +False + + +False + + + +lKDXBy6K20m5qoHJqD7wNQAA + + +lKDXBy6K20m5qoHJqD7wNQAA + + +False +lKDXBy6K20m5qoHJqD7wNQAA + + + +clMaroon +$00B9FFFF +520 +304 +101 +43 +wLGeEZTkNk6DSYrx4LXTJwAA + + +1 +Section + + +False + + +False + + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +False +wLGeEZTkNk6DSYrx4LXTJwAA + + + +clMaroon +$00B9FFFF +384 +104 +166 +95 +gQoe9RSSW0OjJ//CTwBU7wAA + + +3 +Element + + +False + + +False + + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +False +gQoe9RSSW0OjJ//CTwBU7wAA + + + +clMaroon +$00B9FFFF +72 +124 +153 +56 +ZbGTCRLiKkm1ULWMurxPHQAA + + +1 +GestionnaireDoc + + +False + + +False + + + +ZbGTCRLiKkm1ULWMurxPHQAA + + +ZbGTCRLiKkm1ULWMurxPHQAA + + +False +ZbGTCRLiKkm1ULWMurxPHQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +570,304;570,148;549,148 +2QdImmKJPEKQbcoOJlxxPgAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +1,5707963267949 +30 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +-1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +-0,523598775598299 +30 +epHead +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +0,523598775598299 +30 +epTail +vUAG/l9ewkidQeX5aRnYxwAA + + +0,523598775598299 +25 +epHead +* +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +-0,523598775598299 +25 +epTail +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-0,785398163397448 +40 +epHead +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +0,785398163397448 +40 +epTail +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-1000 +-1000 +50 +8 +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +-1000 +-1000 +50 +8 +vUAG/l9ewkidQeX5aRnYxwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +520,325;466,325;466,198 +True +xTD57L5WYE6QCUfz2s5U5QAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +1,5707963267949 +30 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +-1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + + +clMaroon +$00B9FFFF +lsRectilinear +303,292;303,252;466,252;466,198 +IzsrjrzKn02WHI6doKm26AAA +IZrUep6ckUuRPEQSsWDumQAA +lLhY7Ox3k0mQQC0dLUTASwAA + +False +1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + +False +1,5707963267949 +30 +IzsrjrzKn02WHI6doKm26AAA + + +False +-1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + + +clMaroon +$00B9FFFF +lsRectilinear +416,300;416,198 +True +T5KG/Eqx6kqP/URCm/jPqwAA +IZrUep6ckUuRPEQSsWDumQAA +TaTuOxbRu0KSM/avnE4YhwAA + +False +1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +1,5707963267949 +30 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +-1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +148,124;148,104;40,104;40,151;72,151 +8S66RFsDdEa5XqTHl5TBbgAA +eMyyKMTI3k2JYDkeItLW8AAA +eMyyKMTI3k2JYDkeItLW8AAA + +False +1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +1,5707963267949 +30 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +-1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +4 +-0,523598775598299 +30 +epHead +-instance +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,523598775598299 +30 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +0,523598775598299 +25 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-0,523598775598299 +25 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-0,785398163397448 +40 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,785398163397448 +40 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-1000 +-984 +50 +8 +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-1000 +-984 +50 +8 +JZM2DpGZAE6m4QvsBB1V0gAA + + + +clMaroon +$00B9FFFF +384,151;224,151 +tY2DMCUVHUOWQDQ8D8yQIgAA +eMyyKMTI3k2JYDkeItLW8AAA +IZrUep6ckUuRPEQSsWDumQAA + +False +1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +1,5707963267949 +30 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-0,523598775598299 +30 +epHead +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +0,523598775598299 +30 +epTail +JkDLBRvCP0K10wkkvGdk9gAA + + +False +0,523598775598299 +25 +epHead +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +-0,523598775598299 +25 +epTail +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-0,785398163397448 +40 +epHead +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +0,785398163397448 +40 +epTail +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-1000 +-1000 +50 +8 +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +-1000 +-1000 +50 +8 +JkDLBRvCP0K10wkkvGdk9gAA + + + +clMaroon +$00B9FFFF +680 +256 +80 +43 +Ly5Gzi7l80CSAnPpQyskqgAA + + +1 +Acteur + + +False + + +False + + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +False +Ly5Gzi7l80CSAnPpQyskqgAA + + + +clMaroon +$00B9FFFF +672 +468 +96 +56 +DpTZIs2Xu0i1gBSzuYZrrQAA + + +3 +Fabrique + + +False + + +False + + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +False +DpTZIs2Xu0i1gBSzuYZrrQAA + + + +clMaroon +$00B9FFFF +212 +404 +105 +43 +FwMOtxt65UqiV6b+R4wngQAA + + +1 +FabriqueTexte + + +False + + +False + + + +FwMOtxt65UqiV6b+R4wngQAA + + +FwMOtxt65UqiV6b+R4wngQAA + + +False +FwMOtxt65UqiV6b+R4wngQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +719,298;719,468 +/Tf5ww9HIk26fn0XuP8sfgAA +GgzpQjr4u0iuK5eMrLvVnAAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +1,5707963267949 +30 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-0,523598775598299 +30 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,523598775598299 +30 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +0,523598775598299 +25 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-0,523598775598299 +25 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-0,785398163397448 +40 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,785398163397448 +40 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-1000 +-1000 +50 +8 +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-1000 +-1000 +50 +8 +v/3JzN1mHkiM/jF82ZDGSgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +691,256;691,192;549,192 +1iuwg1OgkkKmD5szUfIx9wAA +IZrUep6ckUuRPEQSsWDumQAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +1,5707963267949 +30 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-0,523598775598299 +30 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,523598775598299 +30 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +0,523598775598299 +25 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-0,523598775598299 +25 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-0,785398163397448 +40 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,785398163397448 +40 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-1000 +-1000 +50 +8 +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-1000 +-1000 +50 +8 +SlDb+R4REUGthoXfmcjSygAA + + + +clMaroon +$00B9FFFF +lsRectilinear +264,446;264,508;672,508 +2PpC0Fqr6UqE0aMfqQ46GwAA +GgzpQjr4u0iuK5eMrLvVnAAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +1,5707963267949 +30 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +-1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + + +clMaroon +$00B9FFFF +528 +400 +101 +43 +4WYHqFXU/Ei9XC5FeDIRcAAA + + +1 +FabriqueSection + + +False + + +False + + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +False +4WYHqFXU/Ei9XC5FeDIRcAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +547,400;547,346 +Ul/fzQqTAUukGYtpbwyHTQAA +4tEdqQwMtE2uuSutrJ+auAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +1,5707963267949 +30 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +-1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +578,442;578,476;672,476 +clNqWUTgp0+2091x1gbjyQAA +GgzpQjr4u0iuK5eMrLvVnAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + +False +1,5707963267949 +30 +clNqWUTgp0+2091x1gbjyQAA + + +False +-1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + + +clMaroon +$00B9FFFF +364 +404 +94 +43 +DRf42+A5fk+PlBjqQM3BtgAA + + +1 +FabriqueFigure + + +False + + +False + + + +DRf42+A5fk+PlBjqQM3BtgAA + + +DRf42+A5fk+PlBjqQM3BtgAA + + +False +DRf42+A5fk+PlBjqQM3BtgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +453,446;453,492;672,492 +FkAvYphJvk+GhCrWQg0hMwAA +GgzpQjr4u0iuK5eMrLvVnAAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +1,5707963267949 +30 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +-1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +273,404;273,334 +dJmGmjPQe0SCGupNm425rAAA +lLhY7Ox3k0mQQC0dLUTASwAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + +False +1,5707963267949 +30 +dJmGmjPQe0SCGupNm425rAAA + + +False +-1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +414,404;414,342 +Nqze4q3bu06gBwJorRWqcwAA +TaTuOxbRu0KSM/avnE4YhwAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + +False +1,5707963267949 +30 +Nqze4q3bu06gBwJorRWqcwAA + + +False +-1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + + + +28 + +rdpYIcoK9Em30t5d9g3BhgAA +7PB0Q/ABFU2nmEBmf5C3sQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +F+KzEqgZukKebZ9wrEk1YwAA +/B3KwthTp0aKqDFivdLmBQAA +lqL/Q1v++067Zr+IohbimQAA +TJc4oZj+xUa55ki/ba43gAAA + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +rdpYIcoK9Em30t5d9g3BhgAA +wLGeEZTkNk6DSYrx4LXTJwAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +gw6dorecbk6fD17w0h/iLAAA +DGqTTY/L3U+h6dsyjTgALQAA +aTou8p43o0+LXZYHDLCTlAAA +OY/5uFcVQki3pJ887NcqeQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +Q6yD3QsMzE25YDMaVU6+TAAA +uMq6qFvcbUyZxaY+eaUtmQAA +BXfFtAXkoEOtbs7g9yN0bwAA +iNST/Zu3zkCNa4JrcftV3AAA +2 + +False +akAggregate +2QdImmKJPEKQbcoOJlxxPgAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +09EKbaxDJkuR6XwlrjhSeAAA +u6mmwaSMHEqaZr0JoddhNQAA +9Rx+XA88LEiuVRe+QyJmZAAA +uyS/EAbxZk+cwSaQlKy/VgAA + + +* +2QdImmKJPEKQbcoOJlxxPgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +6BjnnKTz2E6rrcPfDEH7CwAA +3x3v68wUz0iyJzfHFPglXAAA +e4xWxFBchk6ea3K4xE3JeQAA +MKgq+2XM4UeXvlK+1z8iqwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +2 + +False +vBs2HXVeCUmtwCRaw4v18AAA +ZbGTCRLiKkm1ULWMurxPHQAA + + +vBs2HXVeCUmtwCRaw4v18AAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 ++nBYw7fZdEGdRvZrY3KnPwAA +Pu821KTtjEiwSgcLvLTM+AAA +H2Ywz05jcUW0ijk6j+DJRQAA +5h/LJBrOK0y3aIvPW6DT0AAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +FcRZSwUMu0u/p+CFECzXeAAA +GvNXbQuiqEuhdnDzJSqn1wAA +fdVZ3TRlSEG2CCvlkcp1EAAA +pb7/YvwTWkOydEduVK6fOAAA +2 + +False +8S66RFsDdEa5XqTHl5TBbgAA +ZbGTCRLiKkm1ULWMurxPHQAA +4 +kkjTujizw0C+6uBXCnK24gAA +PB9M47k47keNP9Pe79WmKgAA +mVPKyBTqkkWCbMUuemYp9wAA +blMWv7Oqn02naij/1fdXZAAA + + +instance +vkPrivate +skClassifier +8S66RFsDdEa5XqTHl5TBbgAA +ZbGTCRLiKkm1ULWMurxPHQAA +4 +1HR+bQo66EC9KzlWuTaPcgAA +q+GdAN/bgU+xKz43fwKvfQAA ++IzzQfo89kqo6OXT8ddxtgAA +o/G0RX0uWUK7HdmbbGLm+gAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +2 + +QcbzX/N/GUS74U7HxqvNjAAA +ZbGTCRLiKkm1ULWMurxPHQAA + + +akAggregate +QcbzX/N/GUS74U7HxqvNjAAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +u9KUFvRGpkSx5YNgHn1oqAAA +WFYbk3ivI06nlEVWRVbygwAA +IhVcCvAau0OV8xLtvXOrkAAA +CgIvFfZ4bkC5gFBq56BTBAAA +2 + +tY2DMCUVHUOWQDQ8D8yQIgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +d57JhDFplUmUdi3dXCpinAAA +TFloeNbN+E2gYHfAk9ZItQAA +roKGFttIDkS/Y7rkKoS31AAA +4IuQSyf9pUG6+/Krgy/F4AAA + + +akComposite +tY2DMCUVHUOWQDQ8D8yQIgAA +ZbGTCRLiKkm1ULWMurxPHQAA +4 +pHvCxGMwPku8L9gjWD1SSgAA +qNfeuC53cUSimFjWBncUHgAA +jFjWdylWUE65sWUrBY6pfgAA +Zz8I8J9IZU2rkCpgvKhg3QAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +skbxGhtEq0qqOdpSojyiTAAA +IqN5merIyUyzMNXxyUSTxwAA +VCd5XrrqOkW9HGHKdiTmQAAA +Fh1h/Dt1lEuvKKd8P1ozNgAA +2 + +False +/Tf5ww9HIk26fn0XuP8sfgAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +VnuGW79Hh0mGnLGCU+/xuQAA +5hxFsJPxAUGIvjklN6D1awAA +InHmfn16ZkeDqd6h5me7BAAA +eI30KyRAyU+5iMwLZU8twgAA + + +/Tf5ww9HIk26fn0XuP8sfgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +I8kjgZZ5D0iqoX/g8eRJyQAA +kgbIQPln502UbsCqr+rcbQAA +sahQPR7tEUeUPh+3sevqFQAA +J/of49t/4UuMqYbJlL1lpQAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +ODYZmWboWUOcUj7XPHz6HQAA +qRYpMnlX2Uu7tHn/HQZmpwAA +PLydsm11lEmC3X6Mm8TGGgAA +Gkqzli9fnE2hY9yJAdZLPQAA +2 + +False +1iuwg1OgkkKmD5szUfIx9wAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +QxE9zIymekqfAcQYCcWW9QAA +n3MJIySJBEGaN3sepTPtwAAA +lTQunBGT6EClbyYz6zOxtgAA +B8KaOmMc0UuyLvy9I+Mg/gAA + + +1iuwg1OgkkKmD5szUfIx9wAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +MUamdQJ3dUCx6iaBNWM0vgAA +exg1jFJb2k2TmHHiu81J1wAA +XDtFq5O8T0yUkOTTmoO/BAAA +OLEbIsiGbEyk5G8LzyGNzwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +XoLcZddSUEitQEk5GoIDiAAA +nD3/pEkwkk+xBVfcScNMQAAA +RpmvIPr5TEOlK4gWx2s2GwAA +ykSUAeGgx0KXmALZog//4QAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +lKDXBy6K20m5qoHJqD7wNQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +sqBcmD5cIUuw9zysmhDF2wAA +jdMvKaHxmEeiFufDE2xiawAA +5zfnwtcPAU2Ido+x12zH6AAA +bfISscEtpECF/dwEeH6wUgAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +yAadqRWlgkesJ8rLajOQkQAA +6zGx7dvjLEyzocy2kx6kIQAA +PpfDRWJ6xkiMDSbfog6pBAAA +/P/BevfwEUy+kGivjMh2jQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +doPYhTezD02w7U5jPuxCQgAA +suYxnRNJfEuqxans+gb7+QAA +6kMoTMhweUGB4UEBAxLGLwAA +7diJMjxz3ki5B8VbJ5ROWQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA +4 +P3WLWzk/NUWvhq7xl5OlBgAA +tGE/twJxYEi84uCEs5ECZwAA +ZqZ3hJMJmk2LJXDTdNfYbgAA +Y2gNVwd6o0KdoTXLdAsPYwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +lKDXBy6K20m5qoHJqD7wNQAA +4 +RpZ17jQU7EC4iprPWEOyUwAA +zIeBOJ4CmUuKYp/6QkJqOAAA +Z8cD/TUOW0efzIm99JAQJAAA +4NQM4L6WDk+LfoeiH/HoBwAA + + +Documents +rdpYIcoK9Em30t5d9g3BhgAA +1 +BQvYyShr5EOSbw3vbUAwUwAA +10 + +Texte +Impda0SpPESB4/qCzi4/LwAA +4 +lLhY7Ox3k0mQQC0dLUTASwAA +0Y6EtkqpNUuiwu0Kbcdd0QAA +vYO/JJUL00Kzjt9Z+fm/vAAA +FfCvkyOpEU2zPcblPYbUGAAA +5 +dUJBsw8f8USUy/2zIoFvdwAA +WnTr4KJx70C4VaSvin7HXQAA +iatn9+C99UCssosZqWKzswAA +7nGjTHJtwUCKpHGHTmBehgAA +dJmGmjPQe0SCGupNm425rAAA +1 +IzsrjrzKn02WHI6doKm26AAA + + +Figure +Impda0SpPESB4/qCzi4/LwAA +4 +TaTuOxbRu0KSM/avnE4YhwAA +c2R5VvgjOEyODr0f/JeSOgAA +af2s8ltnlkGVPoABlpvqYQAA +doCEn86POUiuasP/LHOu3wAA +2 +IQigfW7cFkuy6OO9Zmh5nQAA +Nqze4q3bu06gBwJorRWqcwAA +2 +E7ANNG+L90eGTfeiRqTS3wAA +T5KG/Eqx6kqP/URCm/jPqwAA + + +Section +Impda0SpPESB4/qCzi4/LwAA +4 +4tEdqQwMtE2uuSutrJ+auAAA +aIsWyC4ywEG2eMGWPqBVaAAA +XSUYfie7LEOuh+InSyxfPwAA +ukBek/GSYUaORKWTtkl+1AAA +3 +BcP93RjKUEePCa17jW7zxAAA +b7xRRVT5SEeBIJugkb/NlwAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +xTD57L5WYE6QCUfz2s5U5QAA +1 +vUAG/l9ewkidQeX5aRnYxwAA + + +Element +True +Impda0SpPESB4/qCzi4/LwAA +4 +IZrUep6ckUuRPEQSsWDumQAA +CzhQfB86ikSMBJl/41G9kwAA +N/48nhs2f0aZb4f39vcbfAAA +ORPs1w8k1kqYgR9RXsnDCgAA +4 +IzsrjrzKn02WHI6doKm26AAA +E7ANNG+L90eGTfeiRqTS3wAA +xTD57L5WYE6QCUfz2s5U5QAA +T5KG/Eqx6kqP/URCm/jPqwAA +4 + +Operation +gQoe9RSSW0OjJ//CTwBU7wAA + + +Add +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +Parameter1 +BxL7tTfEKkOFeV2++eun/AAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +Remove +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +Parameter1 +yheU3a1AEkyjnHGKLnbpcAAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +GetChild +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +int +xmAIdT/56UiF1o+a13LzGgAA + + +2 +gsTPgE9/DkWb9YyhUGlrBwAA +IWC8CdRolUCEpW/Z3Snd2QAA +5 +KCIdSwBnJ0uohZj1QTpYnQAA +t7WwaXai50u0/2VKbNQzhgAA +ldMLTi1mDU+rR1Vxvm5h5gAA +JkDLBRvCP0K10wkkvGdk9gAA +q6DU2+AOnkezrN+UTDwlIAAA + + +GestionnaireDoc +Impda0SpPESB4/qCzi4/LwAA +4 +eMyyKMTI3k2JYDkeItLW8AAA +Fs9PkQoNvEqb9HJsWuhkpwAA +MNwr0iTvREe9tTGaTF4luwAA +JfcP8C5qE0CvqdtEfFE/+gAA +1 + +Instance +ZbGTCRLiKkm1ULWMurxPHQAA +1 + +Parameter1 +pdkReturn +0FdPtEx2wEuTRcF63bIwTQAA +ZbGTCRLiKkm1ULWMurxPHQAA + + +1 +dHq2Z8oKYEew+Wq2mXZ57wAA +5 +4HDCvY0ZgEeMR2MT02TfKwAA +JZM2DpGZAE6m4QvsBB1V0gAA +L1cYpQuZNU6K8h4Z0RaDxQAA +scmtMifdL0WwrtzFUZAu+AAA +62HREk8rX0Sc9cgZ2vd5OAAA + + +Fabrique +True +Impda0SpPESB4/qCzi4/LwAA +4 +GgzpQjr4u0iuK5eMrLvVnAAA +IxMoiWf3lUSt7VYgzemuwgAA +2sRsaBoBo066Rc5SEdkoIwAA +uCQzXiXYv0y7TVXQJ/Xd5QAA +4 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA +clNqWUTgp0+2091x1gbjyQAA +FkAvYphJvk+GhCrWQg0hMwAA +1 + +CreateProduct +DpTZIs2Xu0i1gBSzuYZrrQAA + +1 +xYkzq+2k9EOGDHDUAvMMgAAA + + +FabriqueTexte +Impda0SpPESB4/qCzi4/LwAA +4 +myt0n6WtjUWxfTwmDb5q8gAA +LDosoBAUVUGWwUizSDJNSQAA +axHW8rmhEEeDwgAplOI+HQAA +S4MW5ter20O9ap5C+fRkSgAA +7 +BcP93RjKUEePCa17jW7zxAAA +dUJBsw8f8USUy/2zIoFvdwAA +IQigfW7cFkuy6OO9Zmh5nQAA +WnTr4KJx70C4VaSvin7HXQAA +b7xRRVT5SEeBIJugkb/NlwAA +iatn9+C99UCssosZqWKzswAA +dJmGmjPQe0SCGupNm425rAAA +2 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA + + +Acteur +Impda0SpPESB4/qCzi4/LwAA +4 +RD1fjP+6TU+OFn6MZHxYxAAA +yUnPnFE/CUyLDW4MlvzJ1AAA +90WBoVJPUkWvN/mo4hdN+QAA +mcJXOPaZrUWp6nOAhOVHcgAA +2 +v/3JzN1mHkiM/jF82ZDGSgAA +SlDb+R4REUGthoXfmcjSygAA + + +FabriqueSection +Impda0SpPESB4/qCzi4/LwAA +4 +jfsCQrzPr0W6vrlELMYPIQAA +kBn4mytbaUaYuW3YzVT59wAA +UXn7uPlQQ0yFqYnPMxEqhAAA +060rGD10d0myPWnogdZyzQAA +2 +7nGjTHJtwUCKpHGHTmBehgAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +clNqWUTgp0+2091x1gbjyQAA + + +FabriqueFigure +Impda0SpPESB4/qCzi4/LwAA +4 +7mOzScVF+0ePZlw8hu2WXQAA +5fufJMTjIUSheF0eG3hJiAAA +hqxrvkkR5UmzE6kMnXQhtgAA +/faRb5iZi0Wln9O2bIMGSwAA +1 +Nqze4q3bu06gBwJorRWqcwAA +1 +FkAvYphJvk+GhCrWQg0hMwAA + + + +Fabrique +rdpYIcoK9Em30t5d9g3BhgAA +1 + +Instance +TSJ3YnyKd0mtBqAupjSM8QAA +1 + +Parameter1 +pdkReturn +G+Em7fY1ZkO6BlV5wrgFpQAA +TSJ3YnyKd0mtBqAupjSM8QAA + + +1 +MN6snRtsLE2wnrepIm5vBAAA +2 +cEF+SGwULEye20/ACIFh0wAA +NPad1PiYo0m3HfcWn7ci6wAA + + +rdpYIcoK9Em30t5d9g3BhgAA +2 + +EFeO5JnyVUOL1h6t75nDSgAA +TSJ3YnyKd0mtBqAupjSM8QAA + + +EFeO5JnyVUOL1h6t75nDSgAA +TSJ3YnyKd0mtBqAupjSM8QAA + + + + +Implementation Model +UMLStandard +implementationModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +XcLfywYsRUuj7Opj8099IQAA + +iIZL+yTBD0i9dHKnbBEQrgAA + + + + +Deployment Model +UMLStandard +deploymentModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +LAjGs5I1w0ahdbiud/6TZwAA + +yo9IMES6W0Sx2his8HULEgAA + + + + +Diagramme de séquences +jxinXKKgfUuPP8JEQ3DXjAAA +3 + +CollaborationInstanceSet1 +4aAjfHeRfUaipc9NUn6dagAA +1 + +InteractionInstanceSet1 +VImG6e3iTk+W9Yks2SDSxgAA +1 + +Afficher un document +3lnudPgr+EGRarwL0FGBSQAA + +jvsIIDRHKUCLkgsjf4K7MAAA +12 + +clMaroon +$00B9FFFF +44 +32 +70 +350 +nkHzVlqmGESSoBKhLKcNBAAA + + +4 +Utilisateur + + +False + + +False + + + +nkHzVlqmGESSoBKhLKcNBAAA + + + +clMaroon +$00B9FFFF +192 +32 +70 +350 +AzV6BpxHoUaU1/Axc9b9yQAA + + +4 +IHM_Acteur + + +False + + +False + + + +AzV6BpxHoUaU1/Axc9b9yQAA + + + +clMaroon +$00B9FFFF +392 +32 +70 +350 +lyyeGndEF0i/0DBnr6ELwwAA + + +4 +Fabrique + + +False + + +False + + + +lyyeGndEF0i/0DBnr6ELwwAA + + + +clMaroon +$00B9FFFF +576 +32 +70 +350 +5kBQLvIi00qkc6wfU66J8wAA + + +4 +Element + + +False + + +False + + + +5kBQLvIi00qkc6wfU66J8wAA + + + +clMaroon +$00B9FFFF +720 +32 +70 +350 +ApUxKXkrFU+c8Z5C5+lS+AAA + + +4 +Section + + +False + + +False + + + +ApUxKXkrFU+c8Z5C5+lS+AAA + + + +clMaroon +$00B9FFFF +lsRectilinear +79,96;220,96 +Kg9ogqyOsEGmTfm7D8j3TQAA +NutcMbmKqES3ZNj6L7lX9wAA +M+GW0B3iokCkYgTuZYYa5QAA + +1,5707963267949 +10 +1 : ihm.identifier() +Kg9ogqyOsEGmTfm7D8j3TQAA +5ZE9FvXZbUmobX5dQha7QwAA + + +False +1,5707963267949 +25 +Kg9ogqyOsEGmTfm7D8j3TQAA +5ZE9FvXZbUmobX5dQha7QwAA + + +False +-1,5707963267949 +10 +Kg9ogqyOsEGmTfm7D8j3TQAA +5ZE9FvXZbUmobX5dQha7QwAA + + +220 +96 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +220,123;85,123 +JrnpO9bKFkOyMJmsKqZCkgAA +M+GW0B3iokCkYgTuZYYa5QAA +NutcMbmKqES3ZNj6L7lX9wAA + +-1,1525729250511 +9,8488578017961 +2 : menuLec() +JrnpO9bKFkOyMJmsKqZCkgAA +yyg2WCSNSUeLHb13FEVF0gAA + + +False +1,5707963267949 +25 +JrnpO9bKFkOyMJmsKqZCkgAA +yyg2WCSNSUeLHb13FEVF0gAA + + +False +-1,5707963267949 +10 +JrnpO9bKFkOyMJmsKqZCkgAA +yyg2WCSNSUeLHb13FEVF0gAA + + +72 +123 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +85,150;220,150 +29mZzdL47kSfzODGEtAGdwAA +NutcMbmKqES3ZNj6L7lX9wAA +M+GW0B3iokCkYgTuZYYa5QAA + +-1,89254522760141 +9,48683298050514 +3 : ihm.AfficherDoc() +29mZzdL47kSfzODGEtAGdwAA +fr7B3z5l9EiewSMXZnTb7wAA + + +False +1,5707963267949 +25 +29mZzdL47kSfzODGEtAGdwAA +fr7B3z5l9EiewSMXZnTb7wAA + + +False +-1,5707963267949 +10 +29mZzdL47kSfzODGEtAGdwAA +fr7B3z5l9EiewSMXZnTb7wAA + + +220 +150 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +233,177;420,177 +2RvBbFw5N0+EcIZUtc/bOQAA +seUB7AU2mE6KfTJSGp/lxAAA +NutcMbmKqES3ZNj6L7lX9wAA + +1,5707963267949 +10 +4 : gestionnaire.getElement() +2RvBbFw5N0+EcIZUtc/bOQAA +R8yH0ZzygkGYVVzWCevPngAA + + +False +1,5707963267949 +25 +2RvBbFw5N0+EcIZUtc/bOQAA +R8yH0ZzygkGYVVzWCevPngAA + + +False +-1,5707963267949 +10 +2RvBbFw5N0+EcIZUtc/bOQAA +R8yH0ZzygkGYVVzWCevPngAA + + +420 +177 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +433,204;604,204 +QWKEiqJM70aawHJ5LimSuQAA +ZOpjvi4h4ECH98J3er/hYwAA +seUB7AU2mE6KfTJSGp/lxAAA + +1,5707963267949 +10 +5 : new ArrayList<Element>() +QWKEiqJM70aawHJ5LimSuQAA +cjSML6QYoUSTrvPVcT8QZQAA + + +False +1,5707963267949 +25 +QWKEiqJM70aawHJ5LimSuQAA +cjSML6QYoUSTrvPVcT8QZQAA + + +False +-1,5707963267949 +10 +QWKEiqJM70aawHJ5LimSuQAA +cjSML6QYoUSTrvPVcT8QZQAA + + +604 +204 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +617,231;748,231 +/IFf9azg20+yxAOw/pwN2QAA +/lDC/aZsUUioZBDXcqCn8wAA +ZOpjvi4h4ECH98J3er/hYwAA + +-1,70334655047989 +15,1327459504216 +6 : doc.AfficherFils() +/IFf9azg20+yxAOw/pwN2QAA +pnnnzwchF02wi8+uPN/ZwAAA + + +False +1,5707963267949 +25 +/IFf9azg20+yxAOw/pwN2QAA +pnnnzwchF02wi8+uPN/ZwAAA + + +False +-1,5707963267949 +10 +/IFf9azg20+yxAOw/pwN2QAA +pnnnzwchF02wi8+uPN/ZwAAA + + +748 +231 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +748,258;85,258 +tbXtn26RY0WsSe+5aVN+gAAA +M+GW0B3iokCkYgTuZYYa5QAA +/lDC/aZsUUioZBDXcqCn8wAA + +0,25651665287566 +63,0634601017102 +7 : String rep() +tbXtn26RY0WsSe+5aVN+gAAA +10ybuTFWiE2v3HeZLf0AuQAA + + +False +1,5707963267949 +25 +tbXtn26RY0WsSe+5aVN+gAAA +10ybuTFWiE2v3HeZLf0AuQAA + + +False +-1,5707963267949 +10 +tbXtn26RY0WsSe+5aVN+gAAA +10ybuTFWiE2v3HeZLf0AuQAA + + +72 +258 +14 +29 + + + + +7 + +ihm.identifier +nkHzVlqmGESSoBKhLKcNBAAA +AzV6BpxHoUaU1/Axc9b9yQAA + +Kg9ogqyOsEGmTfm7D8j3TQAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +5ZE9FvXZbUmobX5dQha7QwAA +7wtQ5LqELkGCxbXrVuYlwgAA +eEjcWF/xhUKN4be+iMn0KAAA +8T4wG2eF4ESOI2/Kr4JIFwAA + + +menuLec +AzV6BpxHoUaU1/Axc9b9yQAA +nkHzVlqmGESSoBKhLKcNBAAA + +JrnpO9bKFkOyMJmsKqZCkgAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +yyg2WCSNSUeLHb13FEVF0gAA +/qBkY2O/Ykq9atNWAcTH3QAA +WTgOVRrG40O/6YiiBLZffQAA +1h0TQlurwUmwhjrpJ0hB7gAA + + +ihm.AfficherDoc +nkHzVlqmGESSoBKhLKcNBAAA +AzV6BpxHoUaU1/Axc9b9yQAA + +29mZzdL47kSfzODGEtAGdwAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +fr7B3z5l9EiewSMXZnTb7wAA +y4bOmdvdrUyZHMFmbvWH0AAA +z3dL3nqB/Ei0M1HClXeYfAAA +sSFjm2yh20aAkc67Yi8vLgAA + + +gestionnaire.getElement +ref :int +AzV6BpxHoUaU1/Axc9b9yQAA +lyyeGndEF0i/0DBnr6ELwwAA + +2RvBbFw5N0+EcIZUtc/bOQAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +R8yH0ZzygkGYVVzWCevPngAA +e1juNYnWMU2/i79jwlFiRAAA ++lp00aHuYEGYuBYG5+34NQAA +9NoRzH+CfUmyrx5MWtk0/QAA + + +new ArrayList<Element> +lyyeGndEF0i/0DBnr6ELwwAA +5kBQLvIi00qkc6wfU66J8wAA + +QWKEiqJM70aawHJ5LimSuQAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +cjSML6QYoUSTrvPVcT8QZQAA +w8EZTQ8/hk+B9tz4/6atvwAA +DreJSfafe0KasP3rM4da5wAA +AwWMBjtnqk+V2UeoYn6hDAAA + + +doc.AfficherFils +5kBQLvIi00qkc6wfU66J8wAA +ApUxKXkrFU+c8Z5C5+lS+AAA + +/IFf9azg20+yxAOw/pwN2QAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +pnnnzwchF02wi8+uPN/ZwAAA +W02qCh6QkkGnuRb3IaXyKgAA +uLqubWh1PEaKwxedtUStnwAA +Hq9DDdf7P0etjE7w3rUk9gAA + + +String rep +ApUxKXkrFU+c8Z5C5+lS+AAA +nkHzVlqmGESSoBKhLKcNBAAA + +tbXtn26RY0WsSe+5aVN+gAAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +10ybuTFWiE2v3HeZLf0AuQAA +9Sgu3UvF90KL9uN4ifcAfAAA +D379ny2P8ky3w4kRivODwgAA +tpTyR1+SnEKA6XF2zMzHWQAA + + +6 + +Utilisateur +VImG6e3iTk+W9Yks2SDSxgAA +2 +jNzfNvLHgU6pPnrgQsniVwAA +M+GW0B3iokCkYgTuZYYa5QAA +2 +Kg9ogqyOsEGmTfm7D8j3TQAA +29mZzdL47kSfzODGEtAGdwAA +2 +JrnpO9bKFkOyMJmsKqZCkgAA +tbXtn26RY0WsSe+5aVN+gAAA + + +IHM_Acteur +VImG6e3iTk+W9Yks2SDSxgAA +2 +3yCxLoyD2UuTLoQwsN4j1AAA +NutcMbmKqES3ZNj6L7lX9wAA +2 +JrnpO9bKFkOyMJmsKqZCkgAA +2RvBbFw5N0+EcIZUtc/bOQAA +2 +Kg9ogqyOsEGmTfm7D8j3TQAA +29mZzdL47kSfzODGEtAGdwAA + + +IHM_Lecteur +VImG6e3iTk+W9Yks2SDSxgAA + + +Fabrique +VImG6e3iTk+W9Yks2SDSxgAA +2 ++aW90QfJnE6cSigBsHLB4QAA +seUB7AU2mE6KfTJSGp/lxAAA +1 +QWKEiqJM70aawHJ5LimSuQAA +1 +2RvBbFw5N0+EcIZUtc/bOQAA + + +Element +VImG6e3iTk+W9Yks2SDSxgAA +2 +H007h/uNzUWpDd/Zvze6ZAAA +ZOpjvi4h4ECH98J3er/hYwAA +1 +/IFf9azg20+yxAOw/pwN2QAA +1 +QWKEiqJM70aawHJ5LimSuQAA + + +Section +VImG6e3iTk+W9Yks2SDSxgAA +2 +Z6maDeL9tUO1G9hoNUhxyQAA +/lDC/aZsUUioZBDXcqCn8wAA +1 +tbXtn26RY0WsSe+5aVN+gAAA +1 +/IFf9azg20+yxAOw/pwN2QAA + + + +CollaborationInstanceSet2 +4aAjfHeRfUaipc9NUn6dagAA +1 + +InteractionInstanceSet1 +J/YETttW5k22kNxwawEp9gAA +1 + +Créer un document +qyJ6aSDiKEmsQNkPxMvjSAAA + +54oY/LqS1EOmOBaxROd27wAA +12 + +clMaroon +$00B9FFFF +16 +16 +70 +350 +t986HHjznkGID99AaZKMHQAA + + +4 +Utilisateur + + +False + + +False + + + +t986HHjznkGID99AaZKMHQAA + + + +clMaroon +$00B9FFFF +208 +16 +70 +350 +B0iXzg0/rEq8E9CFLjTl+wAA + + +4 +IHM_Acteur + + +False + + +False + + + +B0iXzg0/rEq8E9CFLjTl+wAA + + + +clMaroon +$00B9FFFF +364 +16 +104 +350 +pXuF7pJr8Ea3XLcUJ1fBEgAA + + +4 +Fabrique + + +False + + +False + + + +pXuF7pJr8Ea3XLcUJ1fBEgAA + + + +clMaroon +$00B9FFFF +532 +16 +70 +350 +iAhCZVDfpEOhNs4UYajWKwAA + + +4 +Section + + +False + + +False + + + +iAhCZVDfpEOhNs4UYajWKwAA + + + +clMaroon +$00B9FFFF +656 +16 +70 +350 +r/hjVVUga0uqqTUDhB885wAA + + +4 +Element + + +False + + +False + + + +r/hjVVUga0uqqTUDhB885wAA + + + +clMaroon +$00B9FFFF +lsRectilinear +51,72;236,72 +3GQ0NmrX10u8dcPVJnXC7wAA +7S3XDemRmkOfFx3Yz4ZN+AAA +wtbQw/8r3k6RwhionTBP+QAA + +-4,65689037539535 +18,0277563773199 +1 : ihm.identifier() +3GQ0NmrX10u8dcPVJnXC7wAA +TAHsytQJeUirOgJPa/AQoAAA + + +False +1,5707963267949 +25 +3GQ0NmrX10u8dcPVJnXC7wAA +TAHsytQJeUirOgJPa/AQoAAA + + +False +-1,5707963267949 +10 +3GQ0NmrX10u8dcPVJnXC7wAA +TAHsytQJeUirOgJPa/AQoAAA + + +236 +72 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +236,99;57,99 +it/zz6+wYUmFJSyjNTjxsAAA +wtbQw/8r3k6RwhionTBP+QAA +7S3XDemRmkOfFx3Yz4ZN+AAA + +1,5707963267949 +10 +2 : menuRed() +it/zz6+wYUmFJSyjNTjxsAAA +IpbpST+Kk0iXDCzh893TYQAA + + +False +1,5707963267949 +25 +it/zz6+wYUmFJSyjNTjxsAAA +IpbpST+Kk0iXDCzh893TYQAA + + +False +-1,5707963267949 +10 +it/zz6+wYUmFJSyjNTjxsAAA +IpbpST+Kk0iXDCzh893TYQAA + + +44 +99 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +57,124;236,124 +IF/FvPxBekGKKYcqpWq6AAAA +7S3XDemRmkOfFx3Yz4ZN+AAA +wtbQw/8r3k6RwhionTBP+QAA + +-1,57079561250918 +14 +3 : ihm.creerDocument() +IF/FvPxBekGKKYcqpWq6AAAA +gSOek0jtY0mbiu9QCg6UbQAA + + +False +1,5707963267949 +25 +IF/FvPxBekGKKYcqpWq6AAAA +gSOek0jtY0mbiu9QCg6UbQAA + + +False +-1,5707963267949 +10 +IF/FvPxBekGKKYcqpWq6AAAA +gSOek0jtY0mbiu9QCg6UbQAA + + +236 +124 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +249,150;409,150 +uAvl1rmaS06Gonct2IhBFAAA +y+IZeAF3B0GZ/INVo/k6lgAA +7S3XDemRmkOfFx3Yz4ZN+AAA + +1,5707963267949 +10 +4 : gestionnaire.CreateElem() +uAvl1rmaS06Gonct2IhBFAAA +M0ZvXCqx7k2V9YD408sOewAA + + +False +1,5707963267949 +25 +uAvl1rmaS06Gonct2IhBFAAA +M0ZvXCqx7k2V9YD408sOewAA + + +False +-1,5707963267949 +10 +uAvl1rmaS06Gonct2IhBFAAA +M0ZvXCqx7k2V9YD408sOewAA + + +409 +150 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +422,175;560,175 +PGHuNB6crUeE7EgRh8k3oQAA +bQXvNLKz4EWOVBv+q78zRgAA +y+IZeAF3B0GZ/INVo/k6lgAA + +1,5707963267949 +10 +5 : new Section() +PGHuNB6crUeE7EgRh8k3oQAA +SXhza3pGWEKDm/7B6nz/qQAA + + +False +1,5707963267949 +25 +PGHuNB6crUeE7EgRh8k3oQAA +SXhza3pGWEKDm/7B6nz/qQAA + + +False +-1,5707963267949 +10 +PGHuNB6crUeE7EgRh8k3oQAA +SXhza3pGWEKDm/7B6nz/qQAA + + +560 +175 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +560,202;422,202 +byqvo5c1UUOMLjVcBr+rmwAA +y+IZeAF3B0GZ/INVo/k6lgAA +bQXvNLKz4EWOVBv+q78zRgAA + +1,5707963267949 +10 +6 : Section sec() +byqvo5c1UUOMLjVcBr+rmwAA +gXOHCQ0S9E2H46+uTF/b7gAA + + +False +1,5707963267949 +25 +byqvo5c1UUOMLjVcBr+rmwAA +gXOHCQ0S9E2H46+uTF/b7gAA + + +False +-1,5707963267949 +10 +byqvo5c1UUOMLjVcBr+rmwAA +gXOHCQ0S9E2H46+uTF/b7gAA + + +409 +202 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +422,228;684,228 +8bPIrIdGZ0qbyVSvXeuG7wAA +bo+qQx499EmqFPeXEpdWgwAA +y+IZeAF3B0GZ/INVo/k6lgAA + +-0,235012183825727 +73,0068489937759 +7 : documents.add() +8bPIrIdGZ0qbyVSvXeuG7wAA +2Qi3Mx6AQkqtQi744fPQrgAA + + +False +1,5707963267949 +25 +8bPIrIdGZ0qbyVSvXeuG7wAA +2Qi3Mx6AQkqtQi744fPQrgAA + + +False +-1,5707963267949 +10 +8bPIrIdGZ0qbyVSvXeuG7wAA +2Qi3Mx6AQkqtQi744fPQrgAA + + +684 +228 +14 +29 + + + + +7 + +ihm.identifier +t986HHjznkGID99AaZKMHQAA +B0iXzg0/rEq8E9CFLjTl+wAA + +3GQ0NmrX10u8dcPVJnXC7wAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +TAHsytQJeUirOgJPa/AQoAAA +0iHB4aF8mkStADzgGOHs+AAA +BtYylC7zpEy/NCiATryXCwAA +YH4LGhkLoEuDMerYordIhQAA + + +menuRed +B0iXzg0/rEq8E9CFLjTl+wAA +t986HHjznkGID99AaZKMHQAA + +it/zz6+wYUmFJSyjNTjxsAAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +IpbpST+Kk0iXDCzh893TYQAA +ZKU9pUT5vkKdXHVf/QpjjAAA +33eG45b+dUy1goQazpEdRAAA +T2+JDOxnCk2zIgJ034OW6QAA + + +ihm.creerDocument +t986HHjznkGID99AaZKMHQAA +B0iXzg0/rEq8E9CFLjTl+wAA + +IF/FvPxBekGKKYcqpWq6AAAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +gSOek0jtY0mbiu9QCg6UbQAA +zB48XdhpT0CX+jXoAPnszAAA +miOVP0vfU0Wx8ctYWPyMKwAA +QpRXHdGVgUSWqPZvEMyH6wAA + + +gestionnaire.CreateElem +titre:String +B0iXzg0/rEq8E9CFLjTl+wAA +pXuF7pJr8Ea3XLcUJ1fBEgAA + +uAvl1rmaS06Gonct2IhBFAAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +M0ZvXCqx7k2V9YD408sOewAA +UwRTOK57zUGPCJbdz2WQbAAA +b76J9RqiskeUttgrPmIOcQAA +Px7rRyDFikWkAlcPflreTgAA + + +new Section +id, titre +pXuF7pJr8Ea3XLcUJ1fBEgAA +iAhCZVDfpEOhNs4UYajWKwAA + +PGHuNB6crUeE7EgRh8k3oQAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +SXhza3pGWEKDm/7B6nz/qQAA +ct40zJJBz0mRfrnOUa482AAA ++GDmJWT+Ek+KnKxNpqY10AAA +Tprzp2myJEu5ADlDI833+wAA + + +Section sec +iAhCZVDfpEOhNs4UYajWKwAA +pXuF7pJr8Ea3XLcUJ1fBEgAA + +byqvo5c1UUOMLjVcBr+rmwAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +gXOHCQ0S9E2H46+uTF/b7gAA +11JtnddMZ0OMRjJFbIHUkAAA +DzuxuQ5DlEOI/hRJFT8e1wAA +PSPZnocgv0+nP+n85xy55gAA + + +documents.add +sec +pXuF7pJr8Ea3XLcUJ1fBEgAA +r/hjVVUga0uqqTUDhB885wAA + +8bPIrIdGZ0qbyVSvXeuG7wAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +2Qi3Mx6AQkqtQi744fPQrgAA +aB7i9wE9MU6HXLG1Bs3fXQAA +DvESEtWvgkmOD9UII4jccwAA +9kbK5AeswUi+DWUQqGUyCwAA + + +5 + +Utilisateur +J/YETttW5k22kNxwawEp9gAA +2 +p3AIvnfkNEWdceT1KDdTYAAA +wtbQw/8r3k6RwhionTBP+QAA +2 +3GQ0NmrX10u8dcPVJnXC7wAA +IF/FvPxBekGKKYcqpWq6AAAA +1 +it/zz6+wYUmFJSyjNTjxsAAA + + +IHM_Acteur +J/YETttW5k22kNxwawEp9gAA +2 +njD3OqNvXEm4Lg+ibsPBTQAA +7S3XDemRmkOfFx3Yz4ZN+AAA +2 +it/zz6+wYUmFJSyjNTjxsAAA +uAvl1rmaS06Gonct2IhBFAAA +2 +3GQ0NmrX10u8dcPVJnXC7wAA +IF/FvPxBekGKKYcqpWq6AAAA + + +Fabrique +J/YETttW5k22kNxwawEp9gAA +2 +Jm5OOefYFk2+/6r/Vh0HGAAA +y+IZeAF3B0GZ/INVo/k6lgAA +2 +PGHuNB6crUeE7EgRh8k3oQAA +8bPIrIdGZ0qbyVSvXeuG7wAA +2 +uAvl1rmaS06Gonct2IhBFAAA +byqvo5c1UUOMLjVcBr+rmwAA + + +Section +J/YETttW5k22kNxwawEp9gAA +2 +pQiw+DeJpE+ugMXPWqj7VwAA +bQXvNLKz4EWOVBv+q78zRgAA +1 +byqvo5c1UUOMLjVcBr+rmwAA +1 +PGHuNB6crUeE7EgRh8k3oQAA + + +Element +J/YETttW5k22kNxwawEp9gAA +2 +sVg542jnx0+e1wIL1qqjHgAA +bo+qQx499EmqFPeXEpdWgwAA +1 +8bPIrIdGZ0qbyVSvXeuG7wAA + + + +CollaborationInstanceSet3 +4aAjfHeRfUaipc9NUn6dagAA +1 + +InteractionInstanceSet1 +mqUyLp5n4EWp51FoDQB5mgAA +1 + +Lister les documents +vA+1GY9+kk+1wJ6VHP5wJQAA + +oEH4gWMt+k6/n7blJvJ3PgAA +13 + +clMaroon +$00B9FFFF +16 +16 +70 +350 +X3mmakON60+pxQZ7GbPg5gAA + + +4 +Utilisateur + + +False + + +False + + + +X3mmakON60+pxQZ7GbPg5gAA + + + +clMaroon +$00B9FFFF +160 +16 +70 +350 +GYKcFCBFYk2mpUIuwP0xZQAA + + +4 +IHM_Acteur + + +False + + +False + + + +GYKcFCBFYk2mpUIuwP0xZQAA + + + +clMaroon +$00B9FFFF +312 +16 +70 +350 +zn2Fyn9WeECLSmeazTWtcQAA + + +4 +Fabrique + + +False + + +False + + + +zn2Fyn9WeECLSmeazTWtcQAA + + + +clMaroon +$00B9FFFF +464 +16 +70 +350 +7HXmYmGDSU22bvVqzmQ/eQAA + + +4 +Element + + +False + + +False + + + +7HXmYmGDSU22bvVqzmQ/eQAA + + + +clMaroon +$00B9FFFF +620 +16 +70 +350 +eqUG0bumnEWkvldwIOzedAAA + + +4 +Section + + +False + + +False + + + +eqUG0bumnEWkvldwIOzedAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +51,72;188,72 +Nb+s5wrMtkaFNTzolBZitAAA +wUAilzYfrEOY1uow3KdevwAA +SiP7FaTt9UqXR5dwjuyJDgAA + +1,5707963267949 +10 +1 : ihm.identifier() +Nb+s5wrMtkaFNTzolBZitAAA +zGw3lcWUX0CADajjchOo4QAA + + +False +1,5707963267949 +25 +Nb+s5wrMtkaFNTzolBZitAAA +zGw3lcWUX0CADajjchOo4QAA + + +False +-1,5707963267949 +10 +Nb+s5wrMtkaFNTzolBZitAAA +zGw3lcWUX0CADajjchOo4QAA + + +188 +72 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +188,96;57,96 +YbXc3umaA02NuWU1XtDXCAAA +SiP7FaTt9UqXR5dwjuyJDgAA +wUAilzYfrEOY1uow3KdevwAA + +1,5707963267949 +10 +2 : menuLec() +YbXc3umaA02NuWU1XtDXCAAA +AZrqXaRovEWGIVJjvJrZ5wAA + + +False +1,5707963267949 +25 +YbXc3umaA02NuWU1XtDXCAAA +AZrqXaRovEWGIVJjvJrZ5wAA + + +False +-1,5707963267949 +10 +YbXc3umaA02NuWU1XtDXCAAA +AZrqXaRovEWGIVJjvJrZ5wAA + + +44 +96 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +57,120;188,120 +1C/N1kvgM0yMWAmAPmOBfQAA +wUAilzYfrEOY1uow3KdevwAA +SiP7FaTt9UqXR5dwjuyJDgAA + +-1,64210242733046 +14,0356688476182 +3 : ihm.ListeDocuments() +1C/N1kvgM0yMWAmAPmOBfQAA +hheHhidu1kKyWYvnz4I68AAA + + +False +1,5707963267949 +25 +1C/N1kvgM0yMWAmAPmOBfQAA +hheHhidu1kKyWYvnz4I68AAA + + +False +-1,5707963267949 +10 +1C/N1kvgM0yMWAmAPmOBfQAA +hheHhidu1kKyWYvnz4I68AAA + + +188 +120 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +201,144;340,144 +uKys+N8b3ESoj9rXwsulQAAA +3qjq3o9wh0uGNR9JEAcTGQAA +wUAilzYfrEOY1uow3KdevwAA + +1,29249600741255 +14,560219778561 +4 : gestionnaire.getElement() +uKys+N8b3ESoj9rXwsulQAAA +x2w0IhaOAEOqKAi7mvZ6uAAA + + +False +1,5707963267949 +25 +uKys+N8b3ESoj9rXwsulQAAA +x2w0IhaOAEOqKAi7mvZ6uAAA + + +False +-1,5707963267949 +10 +uKys+N8b3ESoj9rXwsulQAAA +x2w0IhaOAEOqKAi7mvZ6uAAA + + +340 +144 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +353,171;492,171 +8A5jFqzKpkyoxxSasTpV3wAA +Axrf+SF4lk+0ToMeF8CcUQAA +3qjq3o9wh0uGNR9JEAcTGQAA + +1,10714814636568 +15,6524758424985 +5 : e.afficher() +8A5jFqzKpkyoxxSasTpV3wAA +xm6B8QyB7U6b1UsNnc3KqQAA + + +False +1,5707963267949 +25 +8A5jFqzKpkyoxxSasTpV3wAA +xm6B8QyB7U6b1UsNnc3KqQAA + + +False +-1,5707963267949 +10 +8A5jFqzKpkyoxxSasTpV3wAA +xm6B8QyB7U6b1UsNnc3KqQAA + + +492 +171 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +505,196;648,196 +zuP4rQsPP0i9L7ugMlLdPQAA +miGPE/E3hUGlmQg4Nr5qLwAA +Axrf+SF4lk+0ToMeF8CcUQAA + +1,5707963267949 +10 +6 : getNiveau() +zuP4rQsPP0i9L7ugMlLdPQAA +Kbdpz3pNFkyP2V7GVEG52wAA + + +False +1,5707963267949 +25 +zuP4rQsPP0i9L7ugMlLdPQAA +Kbdpz3pNFkyP2V7GVEG52wAA + + +False +-1,5707963267949 +10 +zuP4rQsPP0i9L7ugMlLdPQAA +Kbdpz3pNFkyP2V7GVEG52wAA + + +648 +196 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +661,208;691,208;691,228;661,228 +F+zi8F12VU+1gFyigGjtRgAA +miGPE/E3hUGlmQg4Nr5qLwAA +miGPE/E3hUGlmQg4Nr5qLwAA + +1,5707953267949 +53 +7 : getNiveau() +F+zi8F12VU+1gFyigGjtRgAA +zcAVKw01LU+b2ABqWpRkqQAA + + +False +1,5707963267949 +25 +F+zi8F12VU+1gFyigGjtRgAA +zcAVKw01LU+b2ABqWpRkqQAA + + +False +-1,5707963267949 +10 +F+zi8F12VU+1gFyigGjtRgAA +zcAVKw01LU+b2ABqWpRkqQAA + + +648 +228 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +648,252;57,252 +07bPGyHBNEKVmdMuVAoSswAA +SiP7FaTt9UqXR5dwjuyJDgAA +miGPE/E3hUGlmQg4Nr5qLwAA + +0,258252266400065 +54,817880294663 +8 : String rep() +07bPGyHBNEKVmdMuVAoSswAA +peznvUaz20Ck6F0ejMRO/AAA + + +False +1,5707963267949 +25 +07bPGyHBNEKVmdMuVAoSswAA +peznvUaz20Ck6F0ejMRO/AAA + + +False +-1,5707963267949 +10 +07bPGyHBNEKVmdMuVAoSswAA +peznvUaz20Ck6F0ejMRO/AAA + + +44 +252 +14 +29 + + + + +8 + +ihm.identifier +X3mmakON60+pxQZ7GbPg5gAA +GYKcFCBFYk2mpUIuwP0xZQAA + +Nb+s5wrMtkaFNTzolBZitAAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +zGw3lcWUX0CADajjchOo4QAA +ST5camfZRkW0VnrGvmPoXwAA +PxbZTF0pe0ujHLaApQa5xAAA +N7r3zUacOUKXGWKJjoozUgAA + + +menuLec +GYKcFCBFYk2mpUIuwP0xZQAA +X3mmakON60+pxQZ7GbPg5gAA + +YbXc3umaA02NuWU1XtDXCAAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +AZrqXaRovEWGIVJjvJrZ5wAA +6TC3VRiAokSmnpGFPUOk4QAA +9u/YyYofskW62ERSOa12MAAA +eJkGfjDrKUOHKn4DicpdIAAA + + +ihm.ListeDocuments +X3mmakON60+pxQZ7GbPg5gAA +GYKcFCBFYk2mpUIuwP0xZQAA + +1C/N1kvgM0yMWAmAPmOBfQAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +hheHhidu1kKyWYvnz4I68AAA +hWJl12P8lUaZZ8rcOAWcDgAA +sHoQNpYv1kagMpvZOD6E5QAA +zMIO6U6+6EWOZb6RMh1/OQAA + + +gestionnaire.getElement +GYKcFCBFYk2mpUIuwP0xZQAA +zn2Fyn9WeECLSmeazTWtcQAA + +uKys+N8b3ESoj9rXwsulQAAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +x2w0IhaOAEOqKAi7mvZ6uAAA +evNSeJ3OE0WsO7k3xik0jwAA +LeVYUAnu3kucb4tfBWO06wAA +BTZPv8CnekGuSZBk7cR89wAA + + +e.afficher +zn2Fyn9WeECLSmeazTWtcQAA +7HXmYmGDSU22bvVqzmQ/eQAA + +8A5jFqzKpkyoxxSasTpV3wAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +xm6B8QyB7U6b1UsNnc3KqQAA +pZQbHKiskUOWORGI2oQVbAAA +FnIGxhtUOEWigS+W293LrwAA +mO7sQIxXFEmBAgu/m56exQAA + + +getNiveau +7HXmYmGDSU22bvVqzmQ/eQAA +eqUG0bumnEWkvldwIOzedAAA + +zuP4rQsPP0i9L7ugMlLdPQAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +Kbdpz3pNFkyP2V7GVEG52wAA +tN3xylqhlkWk5ovxm0zKBgAA +2hX5AXA/G0KbV+D5NrhzfgAA +r/BsAejKMEqilO0MlOd1dgAA + + +getNiveau +eqUG0bumnEWkvldwIOzedAAA +eqUG0bumnEWkvldwIOzedAAA + +F+zi8F12VU+1gFyigGjtRgAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +zcAVKw01LU+b2ABqWpRkqQAA +3rJta6LdLkCzuDiAA5l5FgAA +XahJ8GDYy0ekWGcztF/JQQAA +jxcEGdehjECJYTR3+pHcJwAA + + +String rep +eqUG0bumnEWkvldwIOzedAAA +X3mmakON60+pxQZ7GbPg5gAA + +07bPGyHBNEKVmdMuVAoSswAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +peznvUaz20Ck6F0ejMRO/AAA +idS1prRN10et255ccxJ9vgAA +EkxiauJKmUmdMYkSgaBU1QAA +9HlxPnSER0WLR6kASiUQPgAA + + +7 + +Utilisateur +mqUyLp5n4EWp51FoDQB5mgAA +2 +SYInNt/zKUawcw6N/Ut6rAAA +SiP7FaTt9UqXR5dwjuyJDgAA +2 +Nb+s5wrMtkaFNTzolBZitAAA +1C/N1kvgM0yMWAmAPmOBfQAA +2 +YbXc3umaA02NuWU1XtDXCAAA +07bPGyHBNEKVmdMuVAoSswAA + + +IHM_Acteur +mqUyLp5n4EWp51FoDQB5mgAA +2 +ntM77+vM0kmbCo6wngjmnwAA +wUAilzYfrEOY1uow3KdevwAA +2 +YbXc3umaA02NuWU1XtDXCAAA +uKys+N8b3ESoj9rXwsulQAAA +2 +Nb+s5wrMtkaFNTzolBZitAAA +1C/N1kvgM0yMWAmAPmOBfQAA + + +Fabrique +mqUyLp5n4EWp51FoDQB5mgAA +2 +S5QIteSKlECTnPJ+IHLXCwAA +3qjq3o9wh0uGNR9JEAcTGQAA +1 +8A5jFqzKpkyoxxSasTpV3wAA +1 +uKys+N8b3ESoj9rXwsulQAAA + + +Element +mqUyLp5n4EWp51FoDQB5mgAA +2 +DiK4CKvfUkyTgiUEcCeUAAAA +Axrf+SF4lk+0ToMeF8CcUQAA +1 +zuP4rQsPP0i9L7ugMlLdPQAA +1 +8A5jFqzKpkyoxxSasTpV3wAA + + +Section +mqUyLp5n4EWp51FoDQB5mgAA + + +Niveau +mqUyLp5n4EWp51FoDQB5mgAA + + +Section +mqUyLp5n4EWp51FoDQB5mgAA +2 +P8d7x0XazEK+FcVui/eQkwAA +miGPE/E3hUGlmQg4Nr5qLwAA +2 +F+zi8F12VU+1gFyigGjtRgAA +07bPGyHBNEKVmdMuVAoSswAA +2 +zuP4rQsPP0i9L7ugMlLdPQAA +F+zi8F12VU+1gFyigGjtRgAA + + + + + + diff --git a/G54/FabriqueDocumentsUC.~ml b/G54/FabriqueDocumentsUC.~ml new file mode 100644 index 0000000..1a3936a --- /dev/null +++ b/G54/FabriqueDocumentsUC.~ml @@ -0,0 +1,4496 @@ + + + + + + +UMLStandard + + + + +Untitled +6 + +Use Case Model +UMLStandard +useCaseModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Cas d'utilisation +JHbYS/ung0u9sLR9NaB6+AAA + +/h9+d8myqU6rQ9F8ePlsUQAA +17 + +clMaroon +$00B9FFFF +116 +76 +481 +353 +System + + +clMaroon +$00B9FFFF +624 +132 +72 +78 +oR4SEUJ3ok++PwPj9tP/gAAA + + +1 +Rédacteur + + +False + + +False + + + +False +oR4SEUJ3ok++PwPj9tP/gAAA + + +False +oR4SEUJ3ok++PwPj9tP/gAAA + + + +clMaroon +$00B9FFFF +616 +276 +101 +78 +1easdQNAokyuA8V6wKYKcAAA + + +1 +Relecteur + + +False + + +False + + + +False +1easdQNAokyuA8V6wKYKcAAA + + +False +1easdQNAokyuA8V6wKYKcAAA + + + +clMaroon +$00B9FFFF +376 +104 +168 +45 +1MCIPHZtz06bf8ViWw0FtwAA + + +1 +Créer un élément + + +False + + +False + + + +False +1MCIPHZtz06bf8ViWw0FtwAA + + +False +1MCIPHZtz06bf8ViWw0FtwAA + + +False +1MCIPHZtz06bf8ViWw0FtwAA + + + +clMaroon +$00B9FFFF +372 +180 +173 +45 +fw7K2Ry7kUqF7Br3+IVxOgAA + + +1 +Modifier un élément + + +False + + +False + + + +False +fw7K2Ry7kUqF7Br3+IVxOgAA + + +False +fw7K2Ry7kUqF7Br3+IVxOgAA + + +False +fw7K2Ry7kUqF7Br3+IVxOgAA + + + +clMaroon +$00B9FFFF +400 +316 +152 +45 +2E5a6M7qzkGq167X+RXudgAA + + +1 +Noter un élément + + +False + + +False + + + +False +2E5a6M7qzkGq167X+RXudgAA + + +False +2E5a6M7qzkGq167X+RXudgAA + + +False +2E5a6M7qzkGq167X+RXudgAA + + + +clMaroon +$00B9FFFF +380 +248 +171 +45 +HiF20+zsr0O+sD0Sk9Fd1wAA + + +1 +Afficher un élément + + +False + + +False + + + +False +HiF20+zsr0O+sD0Sk9Fd1wAA + + +False +HiF20+zsr0O+sD0Sk9Fd1wAA + + +False +HiF20+zsr0O+sD0Sk9Fd1wAA + + + +clMaroon +$00B9FFFF +616,320;551,328 +oOQT2+/RU0KlrA7V78/pcAAA +K+K7F+tnzkSAd7VDNa+nWAAA +kGUhGWQcbU+LwVdv8PSpFAAA + +False +1,5707963267949 +15 +oOQT2+/RU0KlrA7V78/pcAAA + + +False +1,5707963267949 +30 +oOQT2+/RU0KlrA7V78/pcAAA + + +False +-1,5707963267949 +15 +oOQT2+/RU0KlrA7V78/pcAAA + + +False +-0,523598775598299 +30 +epHead +3bXXVPQClka6VeLxW3/AXAAA + + +False +0,523598775598299 +30 +epTail +26UEdf3yUEyQz36fUuPx3wAA + + +False +0,523598775598299 +25 +epHead +3bXXVPQClka6VeLxW3/AXAAA + + +False +-0,523598775598299 +25 +epTail +26UEdf3yUEyQz36fUuPx3wAA + + +False +-0,785398163397448 +40 +epHead +3bXXVPQClka6VeLxW3/AXAAA + + +False +0,785398163397448 +40 +epTail +26UEdf3yUEyQz36fUuPx3wAA + + +False +-1000 +-1000 +50 +8 +3bXXVPQClka6VeLxW3/AXAAA + + +False +-1000 +-1000 +50 +8 +26UEdf3yUEyQz36fUuPx3wAA + + + +clMaroon +$00B9FFFF +616,303;550,289 +ldci0+BPf0uHUNYMkYKI3wAA +Z4l/Up/OhU2y8/Wo7rfwIwAA +kGUhGWQcbU+LwVdv8PSpFAAA + +False +1,5707963267949 +15 +ldci0+BPf0uHUNYMkYKI3wAA + + +False +1,5707963267949 +30 +ldci0+BPf0uHUNYMkYKI3wAA + + +False +-1,5707963267949 +15 +ldci0+BPf0uHUNYMkYKI3wAA + + +False +-0,523598775598299 +30 +epHead +BCbIWV9tNEO4IV+uVoO62QAA + + +False +0,523598775598299 +30 +epTail +rVbihr2uG02CeWhaw+PBAQAA + + +False +0,523598775598299 +25 +epHead +BCbIWV9tNEO4IV+uVoO62QAA + + +False +-0,523598775598299 +25 +epTail +rVbihr2uG02CeWhaw+PBAQAA + + +False +-0,785398163397448 +40 +epHead +BCbIWV9tNEO4IV+uVoO62QAA + + +False +0,785398163397448 +40 +epTail +rVbihr2uG02CeWhaw+PBAQAA + + +False +-1000 +-1000 +50 +8 +BCbIWV9tNEO4IV+uVoO62QAA + + +False +-1000 +-1000 +50 +8 +rVbihr2uG02CeWhaw+PBAQAA + + + +clMaroon +$00B9FFFF +624,188;508,248 +yzCJKNgVZEeKUCS1d1iOLQAA +Z4l/Up/OhU2y8/Wo7rfwIwAA +SZRzQ4b64UKReKvrlb5tGgAA + +False +1,5707963267949 +15 +yzCJKNgVZEeKUCS1d1iOLQAA + + +False +1,5707963267949 +30 +yzCJKNgVZEeKUCS1d1iOLQAA + + +False +-1,5707963267949 +15 +yzCJKNgVZEeKUCS1d1iOLQAA + + +False +-0,523598775598299 +30 +epHead +iPF4A175OUWpATRSBEpliQAA + + +False +0,523598775598299 +30 +epTail +IlLhN/q79kuQoHrBU/7EXQAA + + +False +0,523598775598299 +25 +epHead +iPF4A175OUWpATRSBEpliQAA + + +False +-0,523598775598299 +25 +epTail +IlLhN/q79kuQoHrBU/7EXQAA + + +False +-0,785398163397448 +40 +epHead +iPF4A175OUWpATRSBEpliQAA + + +False +0,785398163397448 +40 +epTail +IlLhN/q79kuQoHrBU/7EXQAA + + +False +-1000 +-1000 +50 +8 +iPF4A175OUWpATRSBEpliQAA + + +False +-1000 +-1000 +50 +8 +IlLhN/q79kuQoHrBU/7EXQAA + + + +clMaroon +$00B9FFFF +624,176;544,189 +BfLH6u/dRki4qouRqI1hZwAA +Pbcpi0pUpk28lff8OP8qSwAA +SZRzQ4b64UKReKvrlb5tGgAA + +False +1,5707963267949 +15 +BfLH6u/dRki4qouRqI1hZwAA + + +False +1,5707963267949 +30 +BfLH6u/dRki4qouRqI1hZwAA + + +False +-1,5707963267949 +15 +BfLH6u/dRki4qouRqI1hZwAA + + +False +-0,523598775598299 +30 +epHead +f5IjU8G2WEio979xKCYaAwAA + + +False +0,523598775598299 +30 +epTail ++LeESxXIhUeNnGPyM5B/JgAA + + +False +0,523598775598299 +25 +epHead +f5IjU8G2WEio979xKCYaAwAA + + +False +-0,523598775598299 +25 +epTail ++LeESxXIhUeNnGPyM5B/JgAA + + +False +-0,785398163397448 +40 +epHead +f5IjU8G2WEio979xKCYaAwAA + + +False +0,785398163397448 +40 +epTail ++LeESxXIhUeNnGPyM5B/JgAA + + +False +-1000 +-1000 +50 +8 +f5IjU8G2WEio979xKCYaAwAA + + +False +-1000 +-1000 +50 +8 ++LeESxXIhUeNnGPyM5B/JgAA + + + +clMaroon +$00B9FFFF +624,162;543,144 +mwQWNw58DEWx44mCp2k4DAAA +6tOJ90DAxEqC4zlUiSDlfwAA +SZRzQ4b64UKReKvrlb5tGgAA + +False +1,5707963267949 +15 +mwQWNw58DEWx44mCp2k4DAAA + + +False +1,5707963267949 +30 +mwQWNw58DEWx44mCp2k4DAAA + + +False +-1,5707963267949 +15 +mwQWNw58DEWx44mCp2k4DAAA + + +False +-0,523598775598299 +30 +epHead +oNhOq+yYL0es17fUclxnYwAA + + +False +0,523598775598299 +30 +epTail +BtPDTyf2YUmY2q1HWT8LFgAA + + +False +0,523598775598299 +25 +epHead +oNhOq+yYL0es17fUclxnYwAA + + +False +-0,523598775598299 +25 +epTail +BtPDTyf2YUmY2q1HWT8LFgAA + + +False +-0,785398163397448 +40 +epHead +oNhOq+yYL0es17fUclxnYwAA + + +False +0,785398163397448 +40 +epTail +BtPDTyf2YUmY2q1HWT8LFgAA + + +False +-1000 +-1000 +50 +8 +oNhOq+yYL0es17fUclxnYwAA + + +False +-1000 +-1000 +50 +8 +BtPDTyf2YUmY2q1HWT8LFgAA + + + +clMaroon +$00B9FFFF +140 +124 +142 +45 +Yjqsad54NEudLqslqPO+5QAA + + +1 +Authentification + + +False + + +False + + + +False +Yjqsad54NEudLqslqPO+5QAA + + +False +Yjqsad54NEudLqslqPO+5QAA + + +False +Yjqsad54NEudLqslqPO+5QAA + + + +clMaroon +$00B9FFFF +376,133;281,140 +FKgVDWy7TkiHDTqf1KIcQwAA +HwkYb8FmD0WUv93gwnKPZgAA +6tOJ90DAxEqC4zlUiSDlfwAA + +False +1,5707963267949 +15 +FKgVDWy7TkiHDTqf1KIcQwAA + + +1,5707963267949 +30 +<<include>> +FKgVDWy7TkiHDTqf1KIcQwAA + + +False +-1,5707963267949 +15 +FKgVDWy7TkiHDTqf1KIcQwAA + + + +clMaroon +$00B9FFFF +372,183;281,162 +4I1m6fbfk0mwHpimkfJLFgAA +HwkYb8FmD0WUv93gwnKPZgAA +Pbcpi0pUpk28lff8OP8qSwAA + +False +1,5707963267949 +15 +4I1m6fbfk0mwHpimkfJLFgAA + + +1,5707963267949 +30 +<<include>> +4I1m6fbfk0mwHpimkfJLFgAA + + +False +-1,5707963267949 +15 +4I1m6fbfk0mwHpimkfJLFgAA + + + +clMaroon +$00B9FFFF +152 +212 +114 +45 +obCqMYT8AkWNturwx7rMCQAA + + +1 +Vérifier code + + +False + + +False + + + +False +obCqMYT8AkWNturwx7rMCQAA + + +False +obCqMYT8AkWNturwx7rMCQAA + + +False +obCqMYT8AkWNturwx7rMCQAA + + + +clMaroon +$00B9FFFF +208,212;209,168 +4aByRBwK1kqKCJp+fy26OwAA +HwkYb8FmD0WUv93gwnKPZgAA +KQewVFIFaUKTZHiTd+mTkAAA + +False +1,5707963267949 +15 +4aByRBwK1kqKCJp+fy26OwAA + + +False +1,5707963267949 +30 +4aByRBwK1kqKCJp+fy26OwAA + + +False +-1,5707963267949 +15 +4aByRBwK1kqKCJp+fy26OwAA + + +False +-0,523598775598299 +30 +epHead +pelFgXOPxkqhqLhCwIBhFQAA + + +False +0,523598775598299 +30 +epTail +n0QPXAj+cUeih3ZYlPUDxQAA + + +False +0,523598775598299 +25 +epHead +pelFgXOPxkqhqLhCwIBhFQAA + + +False +-0,523598775598299 +25 +epTail +n0QPXAj+cUeih3ZYlPUDxQAA + + +False +-0,785398163397448 +40 +epHead +pelFgXOPxkqhqLhCwIBhFQAA + + +False +0,785398163397448 +40 +epTail +n0QPXAj+cUeih3ZYlPUDxQAA + + +False +-1000 +-1000 +50 +8 +pelFgXOPxkqhqLhCwIBhFQAA + + +False +-1000 +-1000 +50 +8 +n0QPXAj+cUeih3ZYlPUDxQAA + + + + +17 + +Rédacteur +JHbYS/ung0u9sLR9NaB6+AAA +3 +SZRzQ4b64UKReKvrlb5tGgAA +bxILq3wcsUyS8YelSwTFjgAA +AmifWmcVkEy9abjVYGHGfwAA +4 +AilzAdh7Xk6q2QWqo3yzDQAA +IlLhN/q79kuQoHrBU/7EXQAA ++LeESxXIhUeNnGPyM5B/JgAA +BtPDTyf2YUmY2q1HWT8LFgAA + + +Relecteur +JHbYS/ung0u9sLR9NaB6+AAA +3 +kGUhGWQcbU+LwVdv8PSpFAAA +LAKRR4nENUyrHzcjSUmfrgAA +UCnO6gbCVkad5+WJEcgzhQAA +3 +v/BiX00Bh0SNT5u+MpUZ7gAA +26UEdf3yUEyQz36fUuPx3wAA +rVbihr2uG02CeWhaw+PBAQAA + + +JHbYS/ung0u9sLR9NaB6+AAA +2 + +False +/CzAY1/rMECNUB7cASoKywAA +oR4SEUJ3ok++PwPj9tP/gAAA + + +/CzAY1/rMECNUB7cASoKywAA +1easdQNAokyuA8V6wKYKcAAA + + + +Créer un élément +JHbYS/ung0u9sLR9NaB6+AAA +4 +6tOJ90DAxEqC4zlUiSDlfwAA +wSiuoFtkpUOGOWRE0YaO+AAA +05V3KbCm+kSQBbWESB2M3QAA +HK5Q2N02L0K9rBBQjxnebAAA +1 +oNhOq+yYL0es17fUclxnYwAA +1 +FKgVDWy7TkiHDTqf1KIcQwAA + + +Modifier un élément +JHbYS/ung0u9sLR9NaB6+AAA +4 +Pbcpi0pUpk28lff8OP8qSwAA +L0KNExPQZE6E4b7ipvVkbgAA +A2X43nQ0UEuDw7n1v9ZveAAA +6QEkfwdU8UGizQ/UvaJauwAA +1 +f5IjU8G2WEio979xKCYaAwAA +1 +4I1m6fbfk0mwHpimkfJLFgAA + + +Noter un élément +JHbYS/ung0u9sLR9NaB6+AAA +4 +K+K7F+tnzkSAd7VDNa+nWAAA +nuU08g57TEqKbJwkhIm6+QAA +kxKl0Y1BDUKHsDQV+Ad+tgAA +W1to9BqlZEagiq68IHjptAAA +1 +3bXXVPQClka6VeLxW3/AXAAA + + +Afficher un élément +JHbYS/ung0u9sLR9NaB6+AAA +4 +Z4l/Up/OhU2y8/Wo7rfwIwAA +NdFHeOTmNEKmH3vLgmMg/QAA +/Xqj9g7kx0G7U7xfafkAVAAA +qC8obfT0YEKGPrujuOje2wAA +2 +BCbIWV9tNEO4IV+uVoO62QAA +iPF4A175OUWpATRSBEpliQAA + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +Zs5KXBmDHEO2SMMOINZxAAAA +a44EfdDMykizn6CRa4Fi/QAA +0RsVAoY/p0eB3UucEVIOowAA +9vPUzQZp2kqnv0xUyjUxsAAA +2 + +False +oOQT2+/RU0KlrA7V78/pcAAA +1easdQNAokyuA8V6wKYKcAAA +4 +29NyjaNqvEydn1wZyvgLbwAA +Hqv4FWnMrUacTV3aCfFv2QAA +vXC5fDPqmEGUcmjxeOAK9AAA +t4zYL+ntBE+vfMFB8z9GKAAA + + +oOQT2+/RU0KlrA7V78/pcAAA +2E5a6M7qzkGq167X+RXudgAA +4 +xBffm/jsY027HqRlFV2apQAA +X5UoCxvXiUukekYlZ55eqwAA +sHt62XBEJ0WlRKL/HMq50AAA ++EfsHiByFEuEPCh0VpgC6wAA + + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +LLLyF6/HGEKSvXZQA6nXnQAA +C3BEY7Xv30y1FKp83PH0vAAA +ABKJlXwRuk+sNuE7RO+ZXQAA +cJbDfmsERkONsAjVXFcHbgAA +2 + +False +ldci0+BPf0uHUNYMkYKI3wAA +1easdQNAokyuA8V6wKYKcAAA +4 +mSycQQuEmE+szi0NBr1TCwAA +/lNhNt7IgEuUogdh/xzd1AAA +vjbDrFRBJUa0uKyos8Vc5wAA +7HJ1cDW6pUOT7IAfxAej1gAA + + +ldci0+BPf0uHUNYMkYKI3wAA +HiF20+zsr0O+sD0Sk9Fd1wAA +4 +4oZ3DX8J3ky/+20C6q2LmwAA +e3TwHg0ZqE6EMEzBP5U7RwAA +DxMUezaOCk6pYtvVgg55twAA +sRfwKrVkC0a8c6oT9uiBDgAA + + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +9+OMxMwWz0ezxc6mOX3lywAA +DoM2Bii6uU+jFgfVI6wtmAAA +YAdTYz5iw0+4RF7HO2zA2gAA +d9HXmjeyPUm7xlrW5FW01AAA +2 + +False +yzCJKNgVZEeKUCS1d1iOLQAA +oR4SEUJ3ok++PwPj9tP/gAAA +4 +dulXqpUFNkKB63hHoRXikwAA +HbSo4VgNVEqMjaLtjYD28wAA +2bu8jfAetUiLl/kAAIaTQgAA +/3xqUixPR0CrZ1A5NK9uBwAA + + +yzCJKNgVZEeKUCS1d1iOLQAA +HiF20+zsr0O+sD0Sk9Fd1wAA +4 +lIOayezj80ypwP1u6WcEPAAA +W5e0JS6/AUODBL1xP4titAAA ++dsaEf7hF0WlgGbleTUn+gAA +DDqvxOJ1uEqEH8ySGX25JgAA + + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +gq9l551YoUijxmIv5WY8WQAA +yXF0xmGwGEulXcq74YMbAgAA +mF3xCrleOkS0PPMUVocR/AAA +D1N+EZnvW0uNFs7CR6OrQwAA +2 + +False +BfLH6u/dRki4qouRqI1hZwAA +oR4SEUJ3ok++PwPj9tP/gAAA +4 +b4eRRcNd60G3BRttPyXtIQAA +FTw6tvdtU0+UzjYjUQYP1AAA +y+QUrsvrX0eabbl2orWlpgAA ++URlaVSTP0aKAcZIP7J+KgAA + + +BfLH6u/dRki4qouRqI1hZwAA +fw7K2Ry7kUqF7Br3+IVxOgAA +4 +0oT3jx1sAkCVPOJSIp1PBwAA +C1k1YFYHeEmfmsEGM7B9+QAA +jmcwIW/Lw0ebGe8XzCHEeAAA +nYg9fYarkUy8wB7Ht+Pv/gAA + + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +uuhEIO/IsUmbvTHmgY26XAAA +HBaoC8yURUmyLmXZD/WOyAAA +bQQSGBhkikqWYDud2m0YKAAA +NJWSYanUjkaBSt+JhTCqQQAA +2 + +False +mwQWNw58DEWx44mCp2k4DAAA +oR4SEUJ3ok++PwPj9tP/gAAA +4 +c9OtnLlo1UGLpi4EZfB4FAAA +7likppmyukiLhtPMVYRWOAAA +DhmecTjXF02KcVrm6Rd+CwAA +adM55q27mkuJ1PAp1k2XTgAA + + +mwQWNw58DEWx44mCp2k4DAAA +1MCIPHZtz06bf8ViWw0FtwAA +4 +k9JxmNntxEaTqg1fEJeaAgAA +yy3635qOTku3aBaSklWRkwAA +elEt3XHErECa6OPuEcB/ugAA +1aZJelAzAkav+Qd4tphObwAA + + + +Authentification +JHbYS/ung0u9sLR9NaB6+AAA +4 +HwkYb8FmD0WUv93gwnKPZgAA +2dR/5gdgGE+xGH4xBNieaAAA +fWDiBcUm50GkaDtgVsQLEAAA +k1khbyJJXkSA7IBhYS9LnQAA +1 +pelFgXOPxkqhqLhCwIBhFQAA +2 +FKgVDWy7TkiHDTqf1KIcQwAA +4I1m6fbfk0mwHpimkfJLFgAA + + +JHbYS/ung0u9sLR9NaB6+AAA +Yjqsad54NEudLqslqPO+5QAA +1MCIPHZtz06bf8ViWw0FtwAA +4 ++rgn6gprFUGb8n7f/4uL/AAA +ihDjpiGpd0Gnlo7+GEwzcAAA +f8QpfdaMn0WtaTKxdeofegAA +mPVVtAGME0SnPoALTOS5hQAA + + +JHbYS/ung0u9sLR9NaB6+AAA +Yjqsad54NEudLqslqPO+5QAA +fw7K2Ry7kUqF7Br3+IVxOgAA +4 +U1gS8VwExUuV6OOU+SIMzAAA +Beh0z9+sTEe9UK5vC7tt9gAA +287qMzWER0mXg5LLZdrrZwAA +uuWSrtA0TkipRkF7OznbqgAA + + +Vérifier code +JHbYS/ung0u9sLR9NaB6+AAA +4 +KQewVFIFaUKTZHiTd+mTkAAA +rtD9Vs+56UKgt7kdJ0qIAQAA +q+ottlXn20u1ozNY9Goz6AAA +nz+LFLsrQkiupF/hpXIMbAAA +1 +n0QPXAj+cUeih3ZYlPUDxQAA + + +JHbYS/ung0u9sLR9NaB6+AAA +4 +2LehA46yEU2+iyShmDf++AAA +s8V3vI9iBU2Kx0DDX+bEzgAA +dMrf/Qg7iEW08uXLoz7DSgAA +7DDKcSPM10OPhz3+4XkFvwAA +2 + +False +4aByRBwK1kqKCJp+fy26OwAA +obCqMYT8AkWNturwx7rMCQAA +4 +wMS+eeSzX0O+4mlOZ6jHRgAA +tyUuWuYbQ0qImf8pbKs9IQAA +EYyacFD7Zk++7PixcFLZogAA +rL33A7TW80qAH7nmvEXF4QAA + + +4aByRBwK1kqKCJp+fy26OwAA +Yjqsad54NEudLqslqPO+5QAA +4 +lBmpj8aZV0+Xm6lbTFJ2qgAA +hA98b6oy5k+ydI8lHZ5JNQAA +z8NWfdN8m02bvQeW4nSaWgAA +Y+Yf/YJHaUyd2cVIiPkhDgAA + + + + +Analysis Model +UMLStandard +analysisModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +True +RobustnessDiagram +RAmAA59hh06H2Lgzh2ws6wAA + +8y2XTjpsVEW84pSq+fO9CgAA + + + + +Design Model +UMLStandard +designModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Diagramme de classe de conception +True +rdpYIcoK9Em30t5d9g3BhgAA + +vKUNnDfUF0a5ZdpPtMjO/gAA +25 + +clMaroon +$00B9FFFF +16 +52 +785 +489 +Impda0SpPESB4/qCzi4/LwAA + + +Documents + + +False + + +False + + + + +clMaroon +$00B9FFFF +236 +292 +80 +43 +7PB0Q/ABFU2nmEBmf5C3sQAA + + +1 +Texte + + +False + + +False + + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +7PB0Q/ABFU2nmEBmf5C3sQAA + + +False +7PB0Q/ABFU2nmEBmf5C3sQAA + + + +clMaroon +$00B9FFFF +376 +300 +80 +43 +lKDXBy6K20m5qoHJqD7wNQAA + + +1 +Figure + + +False + + +False + + + +lKDXBy6K20m5qoHJqD7wNQAA + + +lKDXBy6K20m5qoHJqD7wNQAA + + +False +lKDXBy6K20m5qoHJqD7wNQAA + + + +clMaroon +$00B9FFFF +520 +304 +101 +43 +wLGeEZTkNk6DSYrx4LXTJwAA + + +1 +Section + + +False + + +False + + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +wLGeEZTkNk6DSYrx4LXTJwAA + + +False +wLGeEZTkNk6DSYrx4LXTJwAA + + + +clMaroon +$00B9FFFF +384 +104 +166 +95 +gQoe9RSSW0OjJ//CTwBU7wAA + + +3 +Element + + +False + + +False + + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +gQoe9RSSW0OjJ//CTwBU7wAA + + +False +gQoe9RSSW0OjJ//CTwBU7wAA + + + +clMaroon +$00B9FFFF +72 +124 +153 +56 +ZbGTCRLiKkm1ULWMurxPHQAA + + +1 +GestionnaireDoc + + +False + + +False + + + +ZbGTCRLiKkm1ULWMurxPHQAA + + +ZbGTCRLiKkm1ULWMurxPHQAA + + +False +ZbGTCRLiKkm1ULWMurxPHQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +570,304;570,148;549,148 +2QdImmKJPEKQbcoOJlxxPgAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +1,5707963267949 +30 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +-1,5707963267949 +15 +2QdImmKJPEKQbcoOJlxxPgAA + + +False +-0,523598775598299 +30 +epHead +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +0,523598775598299 +30 +epTail +vUAG/l9ewkidQeX5aRnYxwAA + + +0,523598775598299 +25 +epHead +* +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +-0,523598775598299 +25 +epTail +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-0,785398163397448 +40 +epHead +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +0,785398163397448 +40 +epTail +vUAG/l9ewkidQeX5aRnYxwAA + + +False +-1000 +-1000 +50 +8 +KCIdSwBnJ0uohZj1QTpYnQAA + + +False +-1000 +-1000 +50 +8 +vUAG/l9ewkidQeX5aRnYxwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +520,325;466,325;466,198 +True +xTD57L5WYE6QCUfz2s5U5QAA +IZrUep6ckUuRPEQSsWDumQAA +4tEdqQwMtE2uuSutrJ+auAAA + +False +1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +1,5707963267949 +30 +xTD57L5WYE6QCUfz2s5U5QAA + + +False +-1,5707963267949 +15 +xTD57L5WYE6QCUfz2s5U5QAA + + + +clMaroon +$00B9FFFF +lsRectilinear +303,292;303,252;466,252;466,198 +IzsrjrzKn02WHI6doKm26AAA +IZrUep6ckUuRPEQSsWDumQAA +lLhY7Ox3k0mQQC0dLUTASwAA + +False +1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + +False +1,5707963267949 +30 +IzsrjrzKn02WHI6doKm26AAA + + +False +-1,5707963267949 +15 +IzsrjrzKn02WHI6doKm26AAA + + + +clMaroon +$00B9FFFF +lsRectilinear +416,300;416,198 +True +T5KG/Eqx6kqP/URCm/jPqwAA +IZrUep6ckUuRPEQSsWDumQAA +TaTuOxbRu0KSM/avnE4YhwAA + +False +1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +1,5707963267949 +30 +T5KG/Eqx6kqP/URCm/jPqwAA + + +False +-1,5707963267949 +15 +T5KG/Eqx6kqP/URCm/jPqwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +148,124;148,104;40,104;40,151;72,151 +8S66RFsDdEa5XqTHl5TBbgAA +eMyyKMTI3k2JYDkeItLW8AAA +eMyyKMTI3k2JYDkeItLW8AAA + +False +1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +1,5707963267949 +30 +8S66RFsDdEa5XqTHl5TBbgAA + + +False +-1,5707963267949 +15 +8S66RFsDdEa5XqTHl5TBbgAA + + +4 +-0,523598775598299 +30 +epHead +-instance +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,523598775598299 +30 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +0,523598775598299 +25 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-0,523598775598299 +25 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-0,785398163397448 +40 +epHead +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +0,785398163397448 +40 +epTail +JZM2DpGZAE6m4QvsBB1V0gAA + + +False +-1000 +-984 +50 +8 +L1cYpQuZNU6K8h4Z0RaDxQAA + + +False +-1000 +-984 +50 +8 +JZM2DpGZAE6m4QvsBB1V0gAA + + + +clMaroon +$00B9FFFF +384,151;224,151 +tY2DMCUVHUOWQDQ8D8yQIgAA +eMyyKMTI3k2JYDkeItLW8AAA +IZrUep6ckUuRPEQSsWDumQAA + +False +1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +1,5707963267949 +30 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-1,5707963267949 +15 +tY2DMCUVHUOWQDQ8D8yQIgAA + + +False +-0,523598775598299 +30 +epHead +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +0,523598775598299 +30 +epTail +JkDLBRvCP0K10wkkvGdk9gAA + + +False +0,523598775598299 +25 +epHead +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +-0,523598775598299 +25 +epTail +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-0,785398163397448 +40 +epHead +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +0,785398163397448 +40 +epTail +JkDLBRvCP0K10wkkvGdk9gAA + + +False +-1000 +-1000 +50 +8 +62HREk8rX0Sc9cgZ2vd5OAAA + + +False +-1000 +-1000 +50 +8 +JkDLBRvCP0K10wkkvGdk9gAA + + + +clMaroon +$00B9FFFF +680 +256 +80 +43 +Ly5Gzi7l80CSAnPpQyskqgAA + + +1 +Acteur + + +False + + +False + + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +Ly5Gzi7l80CSAnPpQyskqgAA + + +False +Ly5Gzi7l80CSAnPpQyskqgAA + + + +clMaroon +$00B9FFFF +672 +468 +96 +56 +DpTZIs2Xu0i1gBSzuYZrrQAA + + +3 +Fabrique + + +False + + +False + + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +DpTZIs2Xu0i1gBSzuYZrrQAA + + +False +DpTZIs2Xu0i1gBSzuYZrrQAA + + + +clMaroon +$00B9FFFF +212 +404 +105 +43 +FwMOtxt65UqiV6b+R4wngQAA + + +1 +FabriqueTexte + + +False + + +False + + + +FwMOtxt65UqiV6b+R4wngQAA + + +FwMOtxt65UqiV6b+R4wngQAA + + +False +FwMOtxt65UqiV6b+R4wngQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +719,298;719,468 +/Tf5ww9HIk26fn0XuP8sfgAA +GgzpQjr4u0iuK5eMrLvVnAAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +1,5707963267949 +30 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-1,5707963267949 +15 +/Tf5ww9HIk26fn0XuP8sfgAA + + +False +-0,523598775598299 +30 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,523598775598299 +30 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +0,523598775598299 +25 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-0,523598775598299 +25 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-0,785398163397448 +40 +epHead +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +0,785398163397448 +40 +epTail +v/3JzN1mHkiM/jF82ZDGSgAA + + +False +-1000 +-1000 +50 +8 +xYkzq+2k9EOGDHDUAvMMgAAA + + +False +-1000 +-1000 +50 +8 +v/3JzN1mHkiM/jF82ZDGSgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +691,256;691,192;549,192 +1iuwg1OgkkKmD5szUfIx9wAA +IZrUep6ckUuRPEQSsWDumQAA +RD1fjP+6TU+OFn6MZHxYxAAA + +False +1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +1,5707963267949 +30 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-1,5707963267949 +15 +1iuwg1OgkkKmD5szUfIx9wAA + + +False +-0,523598775598299 +30 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,523598775598299 +30 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +0,523598775598299 +25 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-0,523598775598299 +25 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-0,785398163397448 +40 +epHead +q6DU2+AOnkezrN+UTDwlIAAA + + +False +0,785398163397448 +40 +epTail +SlDb+R4REUGthoXfmcjSygAA + + +False +-1000 +-1000 +50 +8 +q6DU2+AOnkezrN+UTDwlIAAA + + +False +-1000 +-1000 +50 +8 +SlDb+R4REUGthoXfmcjSygAA + + + +clMaroon +$00B9FFFF +lsRectilinear +264,446;264,508;672,508 +2PpC0Fqr6UqE0aMfqQ46GwAA +GgzpQjr4u0iuK5eMrLvVnAAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +1,5707963267949 +30 +2PpC0Fqr6UqE0aMfqQ46GwAA + + +False +-1,5707963267949 +15 +2PpC0Fqr6UqE0aMfqQ46GwAA + + + +clMaroon +$00B9FFFF +528 +400 +101 +43 +4WYHqFXU/Ei9XC5FeDIRcAAA + + +1 +FabriqueSection + + +False + + +False + + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +4WYHqFXU/Ei9XC5FeDIRcAAA + + +False +4WYHqFXU/Ei9XC5FeDIRcAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +547,400;547,346 +Ul/fzQqTAUukGYtpbwyHTQAA +4tEdqQwMtE2uuSutrJ+auAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +1,5707963267949 +30 +Ul/fzQqTAUukGYtpbwyHTQAA + + +False +-1,5707963267949 +15 +Ul/fzQqTAUukGYtpbwyHTQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +578,442;578,476;672,476 +clNqWUTgp0+2091x1gbjyQAA +GgzpQjr4u0iuK5eMrLvVnAAA +jfsCQrzPr0W6vrlELMYPIQAA + +False +1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + +False +1,5707963267949 +30 +clNqWUTgp0+2091x1gbjyQAA + + +False +-1,5707963267949 +15 +clNqWUTgp0+2091x1gbjyQAA + + + +clMaroon +$00B9FFFF +364 +404 +94 +43 +DRf42+A5fk+PlBjqQM3BtgAA + + +1 +FabriqueFigure + + +False + + +False + + + +DRf42+A5fk+PlBjqQM3BtgAA + + +DRf42+A5fk+PlBjqQM3BtgAA + + +False +DRf42+A5fk+PlBjqQM3BtgAA + + + +clMaroon +$00B9FFFF +lsRectilinear +453,446;453,492;672,492 +FkAvYphJvk+GhCrWQg0hMwAA +GgzpQjr4u0iuK5eMrLvVnAAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +1,5707963267949 +30 +FkAvYphJvk+GhCrWQg0hMwAA + + +False +-1,5707963267949 +15 +FkAvYphJvk+GhCrWQg0hMwAA + + + +clMaroon +$00B9FFFF +lsRectilinear +273,404;273,334 +dJmGmjPQe0SCGupNm425rAAA +lLhY7Ox3k0mQQC0dLUTASwAA +myt0n6WtjUWxfTwmDb5q8gAA + +False +1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + +False +1,5707963267949 +30 +dJmGmjPQe0SCGupNm425rAAA + + +False +-1,5707963267949 +15 +dJmGmjPQe0SCGupNm425rAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +414,404;414,342 +Nqze4q3bu06gBwJorRWqcwAA +TaTuOxbRu0KSM/avnE4YhwAA +7mOzScVF+0ePZlw8hu2WXQAA + +False +1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + +False +1,5707963267949 +30 +Nqze4q3bu06gBwJorRWqcwAA + + +False +-1,5707963267949 +15 +Nqze4q3bu06gBwJorRWqcwAA + + + + +28 + +rdpYIcoK9Em30t5d9g3BhgAA +7PB0Q/ABFU2nmEBmf5C3sQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +F+KzEqgZukKebZ9wrEk1YwAA +/B3KwthTp0aKqDFivdLmBQAA +lqL/Q1v++067Zr+IohbimQAA +TJc4oZj+xUa55ki/ba43gAAA + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA + + +rdpYIcoK9Em30t5d9g3BhgAA +wLGeEZTkNk6DSYrx4LXTJwAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +gw6dorecbk6fD17w0h/iLAAA +DGqTTY/L3U+h6dsyjTgALQAA +aTou8p43o0+LXZYHDLCTlAAA +OY/5uFcVQki3pJ887NcqeQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +Q6yD3QsMzE25YDMaVU6+TAAA +uMq6qFvcbUyZxaY+eaUtmQAA +BXfFtAXkoEOtbs7g9yN0bwAA +iNST/Zu3zkCNa4JrcftV3AAA +2 + +False +akAggregate +2QdImmKJPEKQbcoOJlxxPgAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +09EKbaxDJkuR6XwlrjhSeAAA +u6mmwaSMHEqaZr0JoddhNQAA +9Rx+XA88LEiuVRe+QyJmZAAA +uyS/EAbxZk+cwSaQlKy/VgAA + + +* +2QdImmKJPEKQbcoOJlxxPgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +6BjnnKTz2E6rrcPfDEH7CwAA +3x3v68wUz0iyJzfHFPglXAAA +e4xWxFBchk6ea3K4xE3JeQAA +MKgq+2XM4UeXvlK+1z8iqwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +2 + +False +vBs2HXVeCUmtwCRaw4v18AAA +ZbGTCRLiKkm1ULWMurxPHQAA + + +vBs2HXVeCUmtwCRaw4v18AAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +lKDXBy6K20m5qoHJqD7wNQAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 ++nBYw7fZdEGdRvZrY3KnPwAA +Pu821KTtjEiwSgcLvLTM+AAA +H2Ywz05jcUW0ijk6j+DJRQAA +5h/LJBrOK0y3aIvPW6DT0AAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +FcRZSwUMu0u/p+CFECzXeAAA +GvNXbQuiqEuhdnDzJSqn1wAA +fdVZ3TRlSEG2CCvlkcp1EAAA +pb7/YvwTWkOydEduVK6fOAAA +2 + +False +8S66RFsDdEa5XqTHl5TBbgAA +ZbGTCRLiKkm1ULWMurxPHQAA +4 +kkjTujizw0C+6uBXCnK24gAA +PB9M47k47keNP9Pe79WmKgAA +mVPKyBTqkkWCbMUuemYp9wAA +blMWv7Oqn02naij/1fdXZAAA + + +instance +vkPrivate +skClassifier +8S66RFsDdEa5XqTHl5TBbgAA +ZbGTCRLiKkm1ULWMurxPHQAA +4 +1HR+bQo66EC9KzlWuTaPcgAA +q+GdAN/bgU+xKz43fwKvfQAA ++IzzQfo89kqo6OXT8ddxtgAA +o/G0RX0uWUK7HdmbbGLm+gAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +2 + +QcbzX/N/GUS74U7HxqvNjAAA +ZbGTCRLiKkm1ULWMurxPHQAA + + +akAggregate +QcbzX/N/GUS74U7HxqvNjAAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +u9KUFvRGpkSx5YNgHn1oqAAA +WFYbk3ivI06nlEVWRVbygwAA +IhVcCvAau0OV8xLtvXOrkAAA +CgIvFfZ4bkC5gFBq56BTBAAA +2 + +tY2DMCUVHUOWQDQ8D8yQIgAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +d57JhDFplUmUdi3dXCpinAAA +TFloeNbN+E2gYHfAk9ZItQAA +roKGFttIDkS/Y7rkKoS31AAA +4IuQSyf9pUG6+/Krgy/F4AAA + + +akComposite +tY2DMCUVHUOWQDQ8D8yQIgAA +ZbGTCRLiKkm1ULWMurxPHQAA +4 +pHvCxGMwPku8L9gjWD1SSgAA +qNfeuC53cUSimFjWBncUHgAA +jFjWdylWUE65sWUrBY6pfgAA +Zz8I8J9IZU2rkCpgvKhg3QAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +skbxGhtEq0qqOdpSojyiTAAA +IqN5merIyUyzMNXxyUSTxwAA +VCd5XrrqOkW9HGHKdiTmQAAA +Fh1h/Dt1lEuvKKd8P1ozNgAA +2 + +False +/Tf5ww9HIk26fn0XuP8sfgAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +VnuGW79Hh0mGnLGCU+/xuQAA +5hxFsJPxAUGIvjklN6D1awAA +InHmfn16ZkeDqd6h5me7BAAA +eI30KyRAyU+5iMwLZU8twgAA + + +/Tf5ww9HIk26fn0XuP8sfgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +I8kjgZZ5D0iqoX/g8eRJyQAA +kgbIQPln502UbsCqr+rcbQAA +sahQPR7tEUeUPh+3sevqFQAA +J/of49t/4UuMqYbJlL1lpQAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +4 +ODYZmWboWUOcUj7XPHz6HQAA +qRYpMnlX2Uu7tHn/HQZmpwAA +PLydsm11lEmC3X6Mm8TGGgAA +Gkqzli9fnE2hY9yJAdZLPQAA +2 + +False +1iuwg1OgkkKmD5szUfIx9wAA +Ly5Gzi7l80CSAnPpQyskqgAA +4 +QxE9zIymekqfAcQYCcWW9QAA +n3MJIySJBEGaN3sepTPtwAAA +lTQunBGT6EClbyYz6zOxtgAA +B8KaOmMc0UuyLvy9I+Mg/gAA + + +1iuwg1OgkkKmD5szUfIx9wAA +gQoe9RSSW0OjJ//CTwBU7wAA +4 +MUamdQJ3dUCx6iaBNWM0vgAA +exg1jFJb2k2TmHHiu81J1wAA +XDtFq5O8T0yUkOTTmoO/BAAA +OLEbIsiGbEyk5G8LzyGNzwAA + + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +XoLcZddSUEitQEk5GoIDiAAA +nD3/pEkwkk+xBVfcScNMQAAA +RpmvIPr5TEOlK4gWx2s2GwAA +ykSUAeGgx0KXmALZog//4QAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +lKDXBy6K20m5qoHJqD7wNQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +wLGeEZTkNk6DSYrx4LXTJwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +DpTZIs2Xu0i1gBSzuYZrrQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +7PB0Q/ABFU2nmEBmf5C3sQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +wLGeEZTkNk6DSYrx4LXTJwAA +4 +sqBcmD5cIUuw9zysmhDF2wAA +jdMvKaHxmEeiFufDE2xiawAA +5zfnwtcPAU2Ido+x12zH6AAA +bfISscEtpECF/dwEeH6wUgAA + + +rdpYIcoK9Em30t5d9g3BhgAA +4WYHqFXU/Ei9XC5FeDIRcAAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +yAadqRWlgkesJ8rLajOQkQAA +6zGx7dvjLEyzocy2kx6kIQAA +PpfDRWJ6xkiMDSbfog6pBAAA +/P/BevfwEUy+kGivjMh2jQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +DpTZIs2Xu0i1gBSzuYZrrQAA +4 +doPYhTezD02w7U5jPuxCQgAA +suYxnRNJfEuqxans+gb7+QAA +6kMoTMhweUGB4UEBAxLGLwAA +7diJMjxz3ki5B8VbJ5ROWQAA + + +rdpYIcoK9Em30t5d9g3BhgAA +FwMOtxt65UqiV6b+R4wngQAA +7PB0Q/ABFU2nmEBmf5C3sQAA +4 +P3WLWzk/NUWvhq7xl5OlBgAA +tGE/twJxYEi84uCEs5ECZwAA +ZqZ3hJMJmk2LJXDTdNfYbgAA +Y2gNVwd6o0KdoTXLdAsPYwAA + + +rdpYIcoK9Em30t5d9g3BhgAA +DRf42+A5fk+PlBjqQM3BtgAA +lKDXBy6K20m5qoHJqD7wNQAA +4 +RpZ17jQU7EC4iprPWEOyUwAA +zIeBOJ4CmUuKYp/6QkJqOAAA +Z8cD/TUOW0efzIm99JAQJAAA +4NQM4L6WDk+LfoeiH/HoBwAA + + +Documents +rdpYIcoK9Em30t5d9g3BhgAA +1 +BQvYyShr5EOSbw3vbUAwUwAA +10 + +Texte +Impda0SpPESB4/qCzi4/LwAA +4 +lLhY7Ox3k0mQQC0dLUTASwAA +0Y6EtkqpNUuiwu0Kbcdd0QAA +vYO/JJUL00Kzjt9Z+fm/vAAA +FfCvkyOpEU2zPcblPYbUGAAA +5 +dUJBsw8f8USUy/2zIoFvdwAA +WnTr4KJx70C4VaSvin7HXQAA +iatn9+C99UCssosZqWKzswAA +7nGjTHJtwUCKpHGHTmBehgAA +dJmGmjPQe0SCGupNm425rAAA +1 +IzsrjrzKn02WHI6doKm26AAA + + +Figure +Impda0SpPESB4/qCzi4/LwAA +4 +TaTuOxbRu0KSM/avnE4YhwAA +c2R5VvgjOEyODr0f/JeSOgAA +af2s8ltnlkGVPoABlpvqYQAA +doCEn86POUiuasP/LHOu3wAA +2 +IQigfW7cFkuy6OO9Zmh5nQAA +Nqze4q3bu06gBwJorRWqcwAA +2 +E7ANNG+L90eGTfeiRqTS3wAA +T5KG/Eqx6kqP/URCm/jPqwAA + + +Section +Impda0SpPESB4/qCzi4/LwAA +4 +4tEdqQwMtE2uuSutrJ+auAAA +aIsWyC4ywEG2eMGWPqBVaAAA +XSUYfie7LEOuh+InSyxfPwAA +ukBek/GSYUaORKWTtkl+1AAA +3 +BcP93RjKUEePCa17jW7zxAAA +b7xRRVT5SEeBIJugkb/NlwAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +xTD57L5WYE6QCUfz2s5U5QAA +1 +vUAG/l9ewkidQeX5aRnYxwAA + + +Element +True +Impda0SpPESB4/qCzi4/LwAA +4 +IZrUep6ckUuRPEQSsWDumQAA +CzhQfB86ikSMBJl/41G9kwAA +N/48nhs2f0aZb4f39vcbfAAA +ORPs1w8k1kqYgR9RXsnDCgAA +4 +IzsrjrzKn02WHI6doKm26AAA +E7ANNG+L90eGTfeiRqTS3wAA +xTD57L5WYE6QCUfz2s5U5QAA +T5KG/Eqx6kqP/URCm/jPqwAA +4 + +Operation +gQoe9RSSW0OjJ//CTwBU7wAA + + +Add +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +Parameter1 +BxL7tTfEKkOFeV2++eun/AAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +Remove +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +Parameter1 +yheU3a1AEkyjnHGKLnbpcAAA +gQoe9RSSW0OjJ//CTwBU7wAA + + + +GetChild +gQoe9RSSW0OjJ//CTwBU7wAA +1 + +int +xmAIdT/56UiF1o+a13LzGgAA + + +2 +gsTPgE9/DkWb9YyhUGlrBwAA +IWC8CdRolUCEpW/Z3Snd2QAA +5 +KCIdSwBnJ0uohZj1QTpYnQAA +t7WwaXai50u0/2VKbNQzhgAA +ldMLTi1mDU+rR1Vxvm5h5gAA +JkDLBRvCP0K10wkkvGdk9gAA +q6DU2+AOnkezrN+UTDwlIAAA + + +GestionnaireDoc +Impda0SpPESB4/qCzi4/LwAA +4 +eMyyKMTI3k2JYDkeItLW8AAA +Fs9PkQoNvEqb9HJsWuhkpwAA +MNwr0iTvREe9tTGaTF4luwAA +JfcP8C5qE0CvqdtEfFE/+gAA +1 + +Instance +ZbGTCRLiKkm1ULWMurxPHQAA +1 + +Parameter1 +pdkReturn +0FdPtEx2wEuTRcF63bIwTQAA +ZbGTCRLiKkm1ULWMurxPHQAA + + +1 +dHq2Z8oKYEew+Wq2mXZ57wAA +5 +4HDCvY0ZgEeMR2MT02TfKwAA +JZM2DpGZAE6m4QvsBB1V0gAA +L1cYpQuZNU6K8h4Z0RaDxQAA +scmtMifdL0WwrtzFUZAu+AAA +62HREk8rX0Sc9cgZ2vd5OAAA + + +Fabrique +True +Impda0SpPESB4/qCzi4/LwAA +4 +GgzpQjr4u0iuK5eMrLvVnAAA +IxMoiWf3lUSt7VYgzemuwgAA +2sRsaBoBo066Rc5SEdkoIwAA +uCQzXiXYv0y7TVXQJ/Xd5QAA +4 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA +clNqWUTgp0+2091x1gbjyQAA +FkAvYphJvk+GhCrWQg0hMwAA +1 + +CreateProduct +DpTZIs2Xu0i1gBSzuYZrrQAA + +1 +xYkzq+2k9EOGDHDUAvMMgAAA + + +FabriqueTexte +Impda0SpPESB4/qCzi4/LwAA +4 +myt0n6WtjUWxfTwmDb5q8gAA +LDosoBAUVUGWwUizSDJNSQAA +axHW8rmhEEeDwgAplOI+HQAA +S4MW5ter20O9ap5C+fRkSgAA +7 +BcP93RjKUEePCa17jW7zxAAA +dUJBsw8f8USUy/2zIoFvdwAA +IQigfW7cFkuy6OO9Zmh5nQAA +WnTr4KJx70C4VaSvin7HXQAA +b7xRRVT5SEeBIJugkb/NlwAA +iatn9+C99UCssosZqWKzswAA +dJmGmjPQe0SCGupNm425rAAA +2 +2PpC0Fqr6UqE0aMfqQ46GwAA +BxGij1oRakmgZ7gMDkQodQAA + + +Acteur +Impda0SpPESB4/qCzi4/LwAA +4 +RD1fjP+6TU+OFn6MZHxYxAAA +yUnPnFE/CUyLDW4MlvzJ1AAA +90WBoVJPUkWvN/mo4hdN+QAA +mcJXOPaZrUWp6nOAhOVHcgAA +2 +v/3JzN1mHkiM/jF82ZDGSgAA +SlDb+R4REUGthoXfmcjSygAA + + +FabriqueSection +Impda0SpPESB4/qCzi4/LwAA +4 +jfsCQrzPr0W6vrlELMYPIQAA +kBn4mytbaUaYuW3YzVT59wAA +UXn7uPlQQ0yFqYnPMxEqhAAA +060rGD10d0myPWnogdZyzQAA +2 +7nGjTHJtwUCKpHGHTmBehgAA +Ul/fzQqTAUukGYtpbwyHTQAA +1 +clNqWUTgp0+2091x1gbjyQAA + + +FabriqueFigure +Impda0SpPESB4/qCzi4/LwAA +4 +7mOzScVF+0ePZlw8hu2WXQAA +5fufJMTjIUSheF0eG3hJiAAA +hqxrvkkR5UmzE6kMnXQhtgAA +/faRb5iZi0Wln9O2bIMGSwAA +1 +Nqze4q3bu06gBwJorRWqcwAA +1 +FkAvYphJvk+GhCrWQg0hMwAA + + + +Fabrique +rdpYIcoK9Em30t5d9g3BhgAA +1 + +Instance +TSJ3YnyKd0mtBqAupjSM8QAA +1 + +Parameter1 +pdkReturn +G+Em7fY1ZkO6BlV5wrgFpQAA +TSJ3YnyKd0mtBqAupjSM8QAA + + +1 +MN6snRtsLE2wnrepIm5vBAAA +2 +cEF+SGwULEye20/ACIFh0wAA +NPad1PiYo0m3HfcWn7ci6wAA + + +rdpYIcoK9Em30t5d9g3BhgAA +2 + +EFeO5JnyVUOL1h6t75nDSgAA +TSJ3YnyKd0mtBqAupjSM8QAA + + +EFeO5JnyVUOL1h6t75nDSgAA +TSJ3YnyKd0mtBqAupjSM8QAA + + + + +Implementation Model +UMLStandard +implementationModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +XcLfywYsRUuj7Opj8099IQAA + +iIZL+yTBD0i9dHKnbBEQrgAA + + + + +Deployment Model +UMLStandard +deploymentModel +jxinXKKgfUuPP8JEQ3DXjAAA +1 + +Main +LAjGs5I1w0ahdbiud/6TZwAA + +yo9IMES6W0Sx2his8HULEgAA + + + + +Diagramme de séquences +jxinXKKgfUuPP8JEQ3DXjAAA +3 + +CollaborationInstanceSet1 +4aAjfHeRfUaipc9NUn6dagAA +1 + +InteractionInstanceSet1 +VImG6e3iTk+W9Yks2SDSxgAA +1 + +Afficher un document +3lnudPgr+EGRarwL0FGBSQAA + +jvsIIDRHKUCLkgsjf4K7MAAA +12 + +clMaroon +$00B9FFFF +44 +32 +70 +350 +nkHzVlqmGESSoBKhLKcNBAAA + + +4 +Utilisateur + + +False + + +False + + + +nkHzVlqmGESSoBKhLKcNBAAA + + + +clMaroon +$00B9FFFF +192 +32 +70 +350 +AzV6BpxHoUaU1/Axc9b9yQAA + + +4 +IHM_Acteur + + +False + + +False + + + +AzV6BpxHoUaU1/Axc9b9yQAA + + + +clMaroon +$00B9FFFF +392 +32 +70 +350 +lyyeGndEF0i/0DBnr6ELwwAA + + +4 +Fabrique + + +False + + +False + + + +lyyeGndEF0i/0DBnr6ELwwAA + + + +clMaroon +$00B9FFFF +576 +32 +70 +350 +5kBQLvIi00qkc6wfU66J8wAA + + +4 +Element + + +False + + +False + + + +5kBQLvIi00qkc6wfU66J8wAA + + + +clMaroon +$00B9FFFF +720 +32 +70 +350 +ApUxKXkrFU+c8Z5C5+lS+AAA + + +4 +Section + + +False + + +False + + + +ApUxKXkrFU+c8Z5C5+lS+AAA + + + +clMaroon +$00B9FFFF +lsRectilinear +79,96;220,96 +Kg9ogqyOsEGmTfm7D8j3TQAA +NutcMbmKqES3ZNj6L7lX9wAA +M+GW0B3iokCkYgTuZYYa5QAA + +1,5707963267949 +10 +1 : ihm.identifier() +Kg9ogqyOsEGmTfm7D8j3TQAA +5ZE9FvXZbUmobX5dQha7QwAA + + +False +1,5707963267949 +25 +Kg9ogqyOsEGmTfm7D8j3TQAA +5ZE9FvXZbUmobX5dQha7QwAA + + +False +-1,5707963267949 +10 +Kg9ogqyOsEGmTfm7D8j3TQAA +5ZE9FvXZbUmobX5dQha7QwAA + + +220 +96 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +220,123;85,123 +JrnpO9bKFkOyMJmsKqZCkgAA +M+GW0B3iokCkYgTuZYYa5QAA +NutcMbmKqES3ZNj6L7lX9wAA + +-1,1525729250511 +9,8488578017961 +2 : menuLec() +JrnpO9bKFkOyMJmsKqZCkgAA +yyg2WCSNSUeLHb13FEVF0gAA + + +False +1,5707963267949 +25 +JrnpO9bKFkOyMJmsKqZCkgAA +yyg2WCSNSUeLHb13FEVF0gAA + + +False +-1,5707963267949 +10 +JrnpO9bKFkOyMJmsKqZCkgAA +yyg2WCSNSUeLHb13FEVF0gAA + + +72 +123 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +85,150;220,150 +29mZzdL47kSfzODGEtAGdwAA +NutcMbmKqES3ZNj6L7lX9wAA +M+GW0B3iokCkYgTuZYYa5QAA + +-1,89254522760141 +9,48683298050514 +3 : ihm.AfficherDoc() +29mZzdL47kSfzODGEtAGdwAA +fr7B3z5l9EiewSMXZnTb7wAA + + +False +1,5707963267949 +25 +29mZzdL47kSfzODGEtAGdwAA +fr7B3z5l9EiewSMXZnTb7wAA + + +False +-1,5707963267949 +10 +29mZzdL47kSfzODGEtAGdwAA +fr7B3z5l9EiewSMXZnTb7wAA + + +220 +150 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +233,177;420,177 +2RvBbFw5N0+EcIZUtc/bOQAA +seUB7AU2mE6KfTJSGp/lxAAA +NutcMbmKqES3ZNj6L7lX9wAA + +1,5707963267949 +10 +4 : gestionnaire.getElement() +2RvBbFw5N0+EcIZUtc/bOQAA +R8yH0ZzygkGYVVzWCevPngAA + + +False +1,5707963267949 +25 +2RvBbFw5N0+EcIZUtc/bOQAA +R8yH0ZzygkGYVVzWCevPngAA + + +False +-1,5707963267949 +10 +2RvBbFw5N0+EcIZUtc/bOQAA +R8yH0ZzygkGYVVzWCevPngAA + + +420 +177 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +433,204;604,204 +QWKEiqJM70aawHJ5LimSuQAA +ZOpjvi4h4ECH98J3er/hYwAA +seUB7AU2mE6KfTJSGp/lxAAA + +1,5707963267949 +10 +5 : new ArrayList<Element>() +QWKEiqJM70aawHJ5LimSuQAA +cjSML6QYoUSTrvPVcT8QZQAA + + +False +1,5707963267949 +25 +QWKEiqJM70aawHJ5LimSuQAA +cjSML6QYoUSTrvPVcT8QZQAA + + +False +-1,5707963267949 +10 +QWKEiqJM70aawHJ5LimSuQAA +cjSML6QYoUSTrvPVcT8QZQAA + + +604 +204 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +617,231;748,231 +/IFf9azg20+yxAOw/pwN2QAA +/lDC/aZsUUioZBDXcqCn8wAA +ZOpjvi4h4ECH98J3er/hYwAA + +-1,70334655047989 +15,1327459504216 +6 : doc.AfficherFils() +/IFf9azg20+yxAOw/pwN2QAA +pnnnzwchF02wi8+uPN/ZwAAA + + +False +1,5707963267949 +25 +/IFf9azg20+yxAOw/pwN2QAA +pnnnzwchF02wi8+uPN/ZwAAA + + +False +-1,5707963267949 +10 +/IFf9azg20+yxAOw/pwN2QAA +pnnnzwchF02wi8+uPN/ZwAAA + + +748 +231 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +748,258;85,258 +tbXtn26RY0WsSe+5aVN+gAAA +M+GW0B3iokCkYgTuZYYa5QAA +/lDC/aZsUUioZBDXcqCn8wAA + +0,25651665287566 +63,0634601017102 +7 : String rep() +tbXtn26RY0WsSe+5aVN+gAAA +10ybuTFWiE2v3HeZLf0AuQAA + + +False +1,5707963267949 +25 +tbXtn26RY0WsSe+5aVN+gAAA +10ybuTFWiE2v3HeZLf0AuQAA + + +False +-1,5707963267949 +10 +tbXtn26RY0WsSe+5aVN+gAAA +10ybuTFWiE2v3HeZLf0AuQAA + + +72 +258 +14 +29 + + + + +7 + +ihm.identifier +nkHzVlqmGESSoBKhLKcNBAAA +AzV6BpxHoUaU1/Axc9b9yQAA + +Kg9ogqyOsEGmTfm7D8j3TQAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +5ZE9FvXZbUmobX5dQha7QwAA +7wtQ5LqELkGCxbXrVuYlwgAA +eEjcWF/xhUKN4be+iMn0KAAA +8T4wG2eF4ESOI2/Kr4JIFwAA + + +menuLec +AzV6BpxHoUaU1/Axc9b9yQAA +nkHzVlqmGESSoBKhLKcNBAAA + +JrnpO9bKFkOyMJmsKqZCkgAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +yyg2WCSNSUeLHb13FEVF0gAA +/qBkY2O/Ykq9atNWAcTH3QAA +WTgOVRrG40O/6YiiBLZffQAA +1h0TQlurwUmwhjrpJ0hB7gAA + + +ihm.AfficherDoc +nkHzVlqmGESSoBKhLKcNBAAA +AzV6BpxHoUaU1/Axc9b9yQAA + +29mZzdL47kSfzODGEtAGdwAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +fr7B3z5l9EiewSMXZnTb7wAA +y4bOmdvdrUyZHMFmbvWH0AAA +z3dL3nqB/Ei0M1HClXeYfAAA +sSFjm2yh20aAkc67Yi8vLgAA + + +gestionnaire.getElement +ref :int +AzV6BpxHoUaU1/Axc9b9yQAA +lyyeGndEF0i/0DBnr6ELwwAA + +2RvBbFw5N0+EcIZUtc/bOQAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +R8yH0ZzygkGYVVzWCevPngAA +e1juNYnWMU2/i79jwlFiRAAA ++lp00aHuYEGYuBYG5+34NQAA +9NoRzH+CfUmyrx5MWtk0/QAA + + +new ArrayList<Element> +lyyeGndEF0i/0DBnr6ELwwAA +5kBQLvIi00qkc6wfU66J8wAA + +QWKEiqJM70aawHJ5LimSuQAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +cjSML6QYoUSTrvPVcT8QZQAA +w8EZTQ8/hk+B9tz4/6atvwAA +DreJSfafe0KasP3rM4da5wAA +AwWMBjtnqk+V2UeoYn6hDAAA + + +doc.AfficherFils +5kBQLvIi00qkc6wfU66J8wAA +ApUxKXkrFU+c8Z5C5+lS+AAA + +/IFf9azg20+yxAOw/pwN2QAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +pnnnzwchF02wi8+uPN/ZwAAA +W02qCh6QkkGnuRb3IaXyKgAA +uLqubWh1PEaKwxedtUStnwAA +Hq9DDdf7P0etjE7w3rUk9gAA + + +String rep +ApUxKXkrFU+c8Z5C5+lS+AAA +nkHzVlqmGESSoBKhLKcNBAAA + +tbXtn26RY0WsSe+5aVN+gAAA + +3lnudPgr+EGRarwL0FGBSQAA +4 +10ybuTFWiE2v3HeZLf0AuQAA +9Sgu3UvF90KL9uN4ifcAfAAA +D379ny2P8ky3w4kRivODwgAA +tpTyR1+SnEKA6XF2zMzHWQAA + + +6 + +Utilisateur +VImG6e3iTk+W9Yks2SDSxgAA +2 +jNzfNvLHgU6pPnrgQsniVwAA +M+GW0B3iokCkYgTuZYYa5QAA +2 +Kg9ogqyOsEGmTfm7D8j3TQAA +29mZzdL47kSfzODGEtAGdwAA +2 +JrnpO9bKFkOyMJmsKqZCkgAA +tbXtn26RY0WsSe+5aVN+gAAA + + +IHM_Acteur +VImG6e3iTk+W9Yks2SDSxgAA +2 +3yCxLoyD2UuTLoQwsN4j1AAA +NutcMbmKqES3ZNj6L7lX9wAA +2 +JrnpO9bKFkOyMJmsKqZCkgAA +2RvBbFw5N0+EcIZUtc/bOQAA +2 +Kg9ogqyOsEGmTfm7D8j3TQAA +29mZzdL47kSfzODGEtAGdwAA + + +IHM_Lecteur +VImG6e3iTk+W9Yks2SDSxgAA + + +Fabrique +VImG6e3iTk+W9Yks2SDSxgAA +2 ++aW90QfJnE6cSigBsHLB4QAA +seUB7AU2mE6KfTJSGp/lxAAA +1 +QWKEiqJM70aawHJ5LimSuQAA +1 +2RvBbFw5N0+EcIZUtc/bOQAA + + +Element +VImG6e3iTk+W9Yks2SDSxgAA +2 +H007h/uNzUWpDd/Zvze6ZAAA +ZOpjvi4h4ECH98J3er/hYwAA +1 +/IFf9azg20+yxAOw/pwN2QAA +1 +QWKEiqJM70aawHJ5LimSuQAA + + +Section +VImG6e3iTk+W9Yks2SDSxgAA +2 +Z6maDeL9tUO1G9hoNUhxyQAA +/lDC/aZsUUioZBDXcqCn8wAA +1 +tbXtn26RY0WsSe+5aVN+gAAA +1 +/IFf9azg20+yxAOw/pwN2QAA + + + +CollaborationInstanceSet2 +4aAjfHeRfUaipc9NUn6dagAA +1 + +InteractionInstanceSet1 +J/YETttW5k22kNxwawEp9gAA +1 + +Créer un document +qyJ6aSDiKEmsQNkPxMvjSAAA + +54oY/LqS1EOmOBaxROd27wAA +12 + +clMaroon +$00B9FFFF +16 +16 +70 +350 +t986HHjznkGID99AaZKMHQAA + + +4 +Utilisateur + + +False + + +False + + + +t986HHjznkGID99AaZKMHQAA + + + +clMaroon +$00B9FFFF +208 +16 +70 +350 +B0iXzg0/rEq8E9CFLjTl+wAA + + +4 +IHM_Acteur + + +False + + +False + + + +B0iXzg0/rEq8E9CFLjTl+wAA + + + +clMaroon +$00B9FFFF +364 +16 +104 +350 +pXuF7pJr8Ea3XLcUJ1fBEgAA + + +4 +Fabrique + + +False + + +False + + + +pXuF7pJr8Ea3XLcUJ1fBEgAA + + + +clMaroon +$00B9FFFF +532 +16 +70 +350 +iAhCZVDfpEOhNs4UYajWKwAA + + +4 +Section + + +False + + +False + + + +iAhCZVDfpEOhNs4UYajWKwAA + + + +clMaroon +$00B9FFFF +656 +16 +70 +350 +r/hjVVUga0uqqTUDhB885wAA + + +4 +Element + + +False + + +False + + + +r/hjVVUga0uqqTUDhB885wAA + + + +clMaroon +$00B9FFFF +lsRectilinear +51,72;236,72 +3GQ0NmrX10u8dcPVJnXC7wAA +7S3XDemRmkOfFx3Yz4ZN+AAA +wtbQw/8r3k6RwhionTBP+QAA + +-4,65689037539535 +18,0277563773199 +1 : ihm.identifier() +3GQ0NmrX10u8dcPVJnXC7wAA +TAHsytQJeUirOgJPa/AQoAAA + + +False +1,5707963267949 +25 +3GQ0NmrX10u8dcPVJnXC7wAA +TAHsytQJeUirOgJPa/AQoAAA + + +False +-1,5707963267949 +10 +3GQ0NmrX10u8dcPVJnXC7wAA +TAHsytQJeUirOgJPa/AQoAAA + + +236 +72 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +236,99;57,99 +it/zz6+wYUmFJSyjNTjxsAAA +wtbQw/8r3k6RwhionTBP+QAA +7S3XDemRmkOfFx3Yz4ZN+AAA + +1,5707963267949 +10 +2 : menuRed() +it/zz6+wYUmFJSyjNTjxsAAA +IpbpST+Kk0iXDCzh893TYQAA + + +False +1,5707963267949 +25 +it/zz6+wYUmFJSyjNTjxsAAA +IpbpST+Kk0iXDCzh893TYQAA + + +False +-1,5707963267949 +10 +it/zz6+wYUmFJSyjNTjxsAAA +IpbpST+Kk0iXDCzh893TYQAA + + +44 +99 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +57,124;236,124 +IF/FvPxBekGKKYcqpWq6AAAA +7S3XDemRmkOfFx3Yz4ZN+AAA +wtbQw/8r3k6RwhionTBP+QAA + +-1,57079561250918 +14 +3 : ihm.creerDocument() +IF/FvPxBekGKKYcqpWq6AAAA +gSOek0jtY0mbiu9QCg6UbQAA + + +False +1,5707963267949 +25 +IF/FvPxBekGKKYcqpWq6AAAA +gSOek0jtY0mbiu9QCg6UbQAA + + +False +-1,5707963267949 +10 +IF/FvPxBekGKKYcqpWq6AAAA +gSOek0jtY0mbiu9QCg6UbQAA + + +236 +124 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +249,150;409,150 +uAvl1rmaS06Gonct2IhBFAAA +y+IZeAF3B0GZ/INVo/k6lgAA +7S3XDemRmkOfFx3Yz4ZN+AAA + +1,5707963267949 +10 +4 : gestionnaire.CreateElem() +uAvl1rmaS06Gonct2IhBFAAA +M0ZvXCqx7k2V9YD408sOewAA + + +False +1,5707963267949 +25 +uAvl1rmaS06Gonct2IhBFAAA +M0ZvXCqx7k2V9YD408sOewAA + + +False +-1,5707963267949 +10 +uAvl1rmaS06Gonct2IhBFAAA +M0ZvXCqx7k2V9YD408sOewAA + + +409 +150 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +422,175;560,175 +PGHuNB6crUeE7EgRh8k3oQAA +bQXvNLKz4EWOVBv+q78zRgAA +y+IZeAF3B0GZ/INVo/k6lgAA + +1,5707963267949 +10 +5 : new Section() +PGHuNB6crUeE7EgRh8k3oQAA +SXhza3pGWEKDm/7B6nz/qQAA + + +False +1,5707963267949 +25 +PGHuNB6crUeE7EgRh8k3oQAA +SXhza3pGWEKDm/7B6nz/qQAA + + +False +-1,5707963267949 +10 +PGHuNB6crUeE7EgRh8k3oQAA +SXhza3pGWEKDm/7B6nz/qQAA + + +560 +175 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +560,202;422,202 +byqvo5c1UUOMLjVcBr+rmwAA +y+IZeAF3B0GZ/INVo/k6lgAA +bQXvNLKz4EWOVBv+q78zRgAA + +1,5707963267949 +10 +6 : Section sec() +byqvo5c1UUOMLjVcBr+rmwAA +gXOHCQ0S9E2H46+uTF/b7gAA + + +False +1,5707963267949 +25 +byqvo5c1UUOMLjVcBr+rmwAA +gXOHCQ0S9E2H46+uTF/b7gAA + + +False +-1,5707963267949 +10 +byqvo5c1UUOMLjVcBr+rmwAA +gXOHCQ0S9E2H46+uTF/b7gAA + + +409 +202 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +422,228;684,228 +8bPIrIdGZ0qbyVSvXeuG7wAA +bo+qQx499EmqFPeXEpdWgwAA +y+IZeAF3B0GZ/INVo/k6lgAA + +-0,26245936242757 +69,3757882838098 +7 : documents.add() +8bPIrIdGZ0qbyVSvXeuG7wAA +2Qi3Mx6AQkqtQi744fPQrgAA + + +False +1,5707963267949 +25 +8bPIrIdGZ0qbyVSvXeuG7wAA +2Qi3Mx6AQkqtQi744fPQrgAA + + +False +-1,5707963267949 +10 +8bPIrIdGZ0qbyVSvXeuG7wAA +2Qi3Mx6AQkqtQi744fPQrgAA + + +684 +228 +14 +29 + + + + +7 + +ihm.identifier +t986HHjznkGID99AaZKMHQAA +B0iXzg0/rEq8E9CFLjTl+wAA + +3GQ0NmrX10u8dcPVJnXC7wAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +TAHsytQJeUirOgJPa/AQoAAA +0iHB4aF8mkStADzgGOHs+AAA +BtYylC7zpEy/NCiATryXCwAA +YH4LGhkLoEuDMerYordIhQAA + + +menuRed +B0iXzg0/rEq8E9CFLjTl+wAA +t986HHjznkGID99AaZKMHQAA + +it/zz6+wYUmFJSyjNTjxsAAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +IpbpST+Kk0iXDCzh893TYQAA +ZKU9pUT5vkKdXHVf/QpjjAAA +33eG45b+dUy1goQazpEdRAAA +T2+JDOxnCk2zIgJ034OW6QAA + + +ihm.creerDocument +t986HHjznkGID99AaZKMHQAA +B0iXzg0/rEq8E9CFLjTl+wAA + +IF/FvPxBekGKKYcqpWq6AAAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +gSOek0jtY0mbiu9QCg6UbQAA +zB48XdhpT0CX+jXoAPnszAAA +miOVP0vfU0Wx8ctYWPyMKwAA +QpRXHdGVgUSWqPZvEMyH6wAA + + +gestionnaire.CreateElem +titre:String +B0iXzg0/rEq8E9CFLjTl+wAA +pXuF7pJr8Ea3XLcUJ1fBEgAA + +uAvl1rmaS06Gonct2IhBFAAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +M0ZvXCqx7k2V9YD408sOewAA +UwRTOK57zUGPCJbdz2WQbAAA +b76J9RqiskeUttgrPmIOcQAA +Px7rRyDFikWkAlcPflreTgAA + + +new Section +id, titre +pXuF7pJr8Ea3XLcUJ1fBEgAA +iAhCZVDfpEOhNs4UYajWKwAA + +PGHuNB6crUeE7EgRh8k3oQAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +SXhza3pGWEKDm/7B6nz/qQAA +ct40zJJBz0mRfrnOUa482AAA ++GDmJWT+Ek+KnKxNpqY10AAA +Tprzp2myJEu5ADlDI833+wAA + + +Section sec +iAhCZVDfpEOhNs4UYajWKwAA +pXuF7pJr8Ea3XLcUJ1fBEgAA + +byqvo5c1UUOMLjVcBr+rmwAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +gXOHCQ0S9E2H46+uTF/b7gAA +11JtnddMZ0OMRjJFbIHUkAAA +DzuxuQ5DlEOI/hRJFT8e1wAA +PSPZnocgv0+nP+n85xy55gAA + + +documents.add +sec +pXuF7pJr8Ea3XLcUJ1fBEgAA +r/hjVVUga0uqqTUDhB885wAA + +8bPIrIdGZ0qbyVSvXeuG7wAA + +qyJ6aSDiKEmsQNkPxMvjSAAA +4 +2Qi3Mx6AQkqtQi744fPQrgAA +aB7i9wE9MU6HXLG1Bs3fXQAA +DvESEtWvgkmOD9UII4jccwAA +9kbK5AeswUi+DWUQqGUyCwAA + + +5 + +Utilisateur +J/YETttW5k22kNxwawEp9gAA +2 +p3AIvnfkNEWdceT1KDdTYAAA +wtbQw/8r3k6RwhionTBP+QAA +2 +3GQ0NmrX10u8dcPVJnXC7wAA +IF/FvPxBekGKKYcqpWq6AAAA +1 +it/zz6+wYUmFJSyjNTjxsAAA + + +IHM_Acteur +J/YETttW5k22kNxwawEp9gAA +2 +njD3OqNvXEm4Lg+ibsPBTQAA +7S3XDemRmkOfFx3Yz4ZN+AAA +2 +it/zz6+wYUmFJSyjNTjxsAAA +uAvl1rmaS06Gonct2IhBFAAA +2 +3GQ0NmrX10u8dcPVJnXC7wAA +IF/FvPxBekGKKYcqpWq6AAAA + + +Fabrique +J/YETttW5k22kNxwawEp9gAA +2 +Jm5OOefYFk2+/6r/Vh0HGAAA +y+IZeAF3B0GZ/INVo/k6lgAA +2 +PGHuNB6crUeE7EgRh8k3oQAA +8bPIrIdGZ0qbyVSvXeuG7wAA +2 +uAvl1rmaS06Gonct2IhBFAAA +byqvo5c1UUOMLjVcBr+rmwAA + + +Section +J/YETttW5k22kNxwawEp9gAA +2 +pQiw+DeJpE+ugMXPWqj7VwAA +bQXvNLKz4EWOVBv+q78zRgAA +1 +byqvo5c1UUOMLjVcBr+rmwAA +1 +PGHuNB6crUeE7EgRh8k3oQAA + + +Element +J/YETttW5k22kNxwawEp9gAA +2 +sVg542jnx0+e1wIL1qqjHgAA +bo+qQx499EmqFPeXEpdWgwAA +1 +8bPIrIdGZ0qbyVSvXeuG7wAA + + + +CollaborationInstanceSet3 +4aAjfHeRfUaipc9NUn6dagAA +1 + +InteractionInstanceSet1 +mqUyLp5n4EWp51FoDQB5mgAA +1 + +Lister les documents +vA+1GY9+kk+1wJ6VHP5wJQAA + +oEH4gWMt+k6/n7blJvJ3PgAA +13 + +clMaroon +$00B9FFFF +16 +16 +70 +350 +X3mmakON60+pxQZ7GbPg5gAA + + +4 +Utilisateur + + +False + + +False + + + +X3mmakON60+pxQZ7GbPg5gAA + + + +clMaroon +$00B9FFFF +160 +16 +70 +350 +GYKcFCBFYk2mpUIuwP0xZQAA + + +4 +IHM_Acteur + + +False + + +False + + + +GYKcFCBFYk2mpUIuwP0xZQAA + + + +clMaroon +$00B9FFFF +312 +16 +70 +350 +zn2Fyn9WeECLSmeazTWtcQAA + + +4 +Fabrique + + +False + + +False + + + +zn2Fyn9WeECLSmeazTWtcQAA + + + +clMaroon +$00B9FFFF +464 +16 +70 +350 +7HXmYmGDSU22bvVqzmQ/eQAA + + +4 +Element + + +False + + +False + + + +7HXmYmGDSU22bvVqzmQ/eQAA + + + +clMaroon +$00B9FFFF +620 +16 +70 +350 +eqUG0bumnEWkvldwIOzedAAA + + +4 +Section + + +False + + +False + + + +eqUG0bumnEWkvldwIOzedAAA + + + +clMaroon +$00B9FFFF +lsRectilinear +51,72;188,72 +Nb+s5wrMtkaFNTzolBZitAAA +wUAilzYfrEOY1uow3KdevwAA +SiP7FaTt9UqXR5dwjuyJDgAA + +1,5707963267949 +10 +1 : ihm.identifier() +Nb+s5wrMtkaFNTzolBZitAAA +zGw3lcWUX0CADajjchOo4QAA + + +False +1,5707963267949 +25 +Nb+s5wrMtkaFNTzolBZitAAA +zGw3lcWUX0CADajjchOo4QAA + + +False +-1,5707963267949 +10 +Nb+s5wrMtkaFNTzolBZitAAA +zGw3lcWUX0CADajjchOo4QAA + + +188 +72 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +188,96;57,96 +YbXc3umaA02NuWU1XtDXCAAA +SiP7FaTt9UqXR5dwjuyJDgAA +wUAilzYfrEOY1uow3KdevwAA + +1,5707963267949 +10 +2 : menuLec() +YbXc3umaA02NuWU1XtDXCAAA +AZrqXaRovEWGIVJjvJrZ5wAA + + +False +1,5707963267949 +25 +YbXc3umaA02NuWU1XtDXCAAA +AZrqXaRovEWGIVJjvJrZ5wAA + + +False +-1,5707963267949 +10 +YbXc3umaA02NuWU1XtDXCAAA +AZrqXaRovEWGIVJjvJrZ5wAA + + +44 +96 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +57,120;188,120 +1C/N1kvgM0yMWAmAPmOBfQAA +wUAilzYfrEOY1uow3KdevwAA +SiP7FaTt9UqXR5dwjuyJDgAA + +-1,64210242733046 +14,0356688476182 +3 : ihm.ListeDocuments() +1C/N1kvgM0yMWAmAPmOBfQAA +hheHhidu1kKyWYvnz4I68AAA + + +False +1,5707963267949 +25 +1C/N1kvgM0yMWAmAPmOBfQAA +hheHhidu1kKyWYvnz4I68AAA + + +False +-1,5707963267949 +10 +1C/N1kvgM0yMWAmAPmOBfQAA +hheHhidu1kKyWYvnz4I68AAA + + +188 +120 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +201,144;340,144 +uKys+N8b3ESoj9rXwsulQAAA +3qjq3o9wh0uGNR9JEAcTGQAA +wUAilzYfrEOY1uow3KdevwAA + +1,29249600741255 +14,560219778561 +4 : gestionnaire.getElement() +uKys+N8b3ESoj9rXwsulQAAA +x2w0IhaOAEOqKAi7mvZ6uAAA + + +False +1,5707963267949 +25 +uKys+N8b3ESoj9rXwsulQAAA +x2w0IhaOAEOqKAi7mvZ6uAAA + + +False +-1,5707963267949 +10 +uKys+N8b3ESoj9rXwsulQAAA +x2w0IhaOAEOqKAi7mvZ6uAAA + + +340 +144 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +353,171;492,171 +8A5jFqzKpkyoxxSasTpV3wAA +Axrf+SF4lk+0ToMeF8CcUQAA +3qjq3o9wh0uGNR9JEAcTGQAA + +1,10714814636568 +15,6524758424985 +5 : e.afficher() +8A5jFqzKpkyoxxSasTpV3wAA +xm6B8QyB7U6b1UsNnc3KqQAA + + +False +1,5707963267949 +25 +8A5jFqzKpkyoxxSasTpV3wAA +xm6B8QyB7U6b1UsNnc3KqQAA + + +False +-1,5707963267949 +10 +8A5jFqzKpkyoxxSasTpV3wAA +xm6B8QyB7U6b1UsNnc3KqQAA + + +492 +171 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +505,196;648,196 +zuP4rQsPP0i9L7ugMlLdPQAA +miGPE/E3hUGlmQg4Nr5qLwAA +Axrf+SF4lk+0ToMeF8CcUQAA + +1,5707963267949 +10 +6 : getNiveau() +zuP4rQsPP0i9L7ugMlLdPQAA +Kbdpz3pNFkyP2V7GVEG52wAA + + +False +1,5707963267949 +25 +zuP4rQsPP0i9L7ugMlLdPQAA +Kbdpz3pNFkyP2V7GVEG52wAA + + +False +-1,5707963267949 +10 +zuP4rQsPP0i9L7ugMlLdPQAA +Kbdpz3pNFkyP2V7GVEG52wAA + + +648 +196 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +661,208;691,208;691,228;661,228 +F+zi8F12VU+1gFyigGjtRgAA +miGPE/E3hUGlmQg4Nr5qLwAA +miGPE/E3hUGlmQg4Nr5qLwAA + +1,5707953267949 +53 +7 : getNiveau() +F+zi8F12VU+1gFyigGjtRgAA +zcAVKw01LU+b2ABqWpRkqQAA + + +False +1,5707963267949 +25 +F+zi8F12VU+1gFyigGjtRgAA +zcAVKw01LU+b2ABqWpRkqQAA + + +False +-1,5707963267949 +10 +F+zi8F12VU+1gFyigGjtRgAA +zcAVKw01LU+b2ABqWpRkqQAA + + +648 +228 +14 +29 + + + +clMaroon +$00B9FFFF +lsRectilinear +648,252;57,252 +07bPGyHBNEKVmdMuVAoSswAA +SiP7FaTt9UqXR5dwjuyJDgAA +miGPE/E3hUGlmQg4Nr5qLwAA + +0,258252266400065 +54,817880294663 +8 : String rep() +07bPGyHBNEKVmdMuVAoSswAA +peznvUaz20Ck6F0ejMRO/AAA + + +False +1,5707963267949 +25 +07bPGyHBNEKVmdMuVAoSswAA +peznvUaz20Ck6F0ejMRO/AAA + + +False +-1,5707963267949 +10 +07bPGyHBNEKVmdMuVAoSswAA +peznvUaz20Ck6F0ejMRO/AAA + + +44 +252 +14 +29 + + + + +8 + +ihm.identifier +X3mmakON60+pxQZ7GbPg5gAA +GYKcFCBFYk2mpUIuwP0xZQAA + +Nb+s5wrMtkaFNTzolBZitAAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +zGw3lcWUX0CADajjchOo4QAA +ST5camfZRkW0VnrGvmPoXwAA +PxbZTF0pe0ujHLaApQa5xAAA +N7r3zUacOUKXGWKJjoozUgAA + + +menuLec +GYKcFCBFYk2mpUIuwP0xZQAA +X3mmakON60+pxQZ7GbPg5gAA + +YbXc3umaA02NuWU1XtDXCAAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +AZrqXaRovEWGIVJjvJrZ5wAA +6TC3VRiAokSmnpGFPUOk4QAA +9u/YyYofskW62ERSOa12MAAA +eJkGfjDrKUOHKn4DicpdIAAA + + +ihm.ListeDocuments +X3mmakON60+pxQZ7GbPg5gAA +GYKcFCBFYk2mpUIuwP0xZQAA + +1C/N1kvgM0yMWAmAPmOBfQAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +hheHhidu1kKyWYvnz4I68AAA +hWJl12P8lUaZZ8rcOAWcDgAA +sHoQNpYv1kagMpvZOD6E5QAA +zMIO6U6+6EWOZb6RMh1/OQAA + + +gestionnaire.getElement +GYKcFCBFYk2mpUIuwP0xZQAA +zn2Fyn9WeECLSmeazTWtcQAA + +uKys+N8b3ESoj9rXwsulQAAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +x2w0IhaOAEOqKAi7mvZ6uAAA +evNSeJ3OE0WsO7k3xik0jwAA +LeVYUAnu3kucb4tfBWO06wAA +BTZPv8CnekGuSZBk7cR89wAA + + +e.afficher +zn2Fyn9WeECLSmeazTWtcQAA +7HXmYmGDSU22bvVqzmQ/eQAA + +8A5jFqzKpkyoxxSasTpV3wAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +xm6B8QyB7U6b1UsNnc3KqQAA +pZQbHKiskUOWORGI2oQVbAAA +FnIGxhtUOEWigS+W293LrwAA +mO7sQIxXFEmBAgu/m56exQAA + + +getNiveau +7HXmYmGDSU22bvVqzmQ/eQAA +eqUG0bumnEWkvldwIOzedAAA + +zuP4rQsPP0i9L7ugMlLdPQAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +Kbdpz3pNFkyP2V7GVEG52wAA +tN3xylqhlkWk5ovxm0zKBgAA +2hX5AXA/G0KbV+D5NrhzfgAA +r/BsAejKMEqilO0MlOd1dgAA + + +getNiveau +eqUG0bumnEWkvldwIOzedAAA +eqUG0bumnEWkvldwIOzedAAA + +F+zi8F12VU+1gFyigGjtRgAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +zcAVKw01LU+b2ABqWpRkqQAA +3rJta6LdLkCzuDiAA5l5FgAA +XahJ8GDYy0ekWGcztF/JQQAA +jxcEGdehjECJYTR3+pHcJwAA + + +String rep +eqUG0bumnEWkvldwIOzedAAA +X3mmakON60+pxQZ7GbPg5gAA + +07bPGyHBNEKVmdMuVAoSswAA + +vA+1GY9+kk+1wJ6VHP5wJQAA +4 +peznvUaz20Ck6F0ejMRO/AAA +idS1prRN10et255ccxJ9vgAA +EkxiauJKmUmdMYkSgaBU1QAA +9HlxPnSER0WLR6kASiUQPgAA + + +7 + +Utilisateur +mqUyLp5n4EWp51FoDQB5mgAA +2 +SYInNt/zKUawcw6N/Ut6rAAA +SiP7FaTt9UqXR5dwjuyJDgAA +2 +Nb+s5wrMtkaFNTzolBZitAAA +1C/N1kvgM0yMWAmAPmOBfQAA +2 +YbXc3umaA02NuWU1XtDXCAAA +07bPGyHBNEKVmdMuVAoSswAA + + +IHM_Acteur +mqUyLp5n4EWp51FoDQB5mgAA +2 +ntM77+vM0kmbCo6wngjmnwAA +wUAilzYfrEOY1uow3KdevwAA +2 +YbXc3umaA02NuWU1XtDXCAAA +uKys+N8b3ESoj9rXwsulQAAA +2 +Nb+s5wrMtkaFNTzolBZitAAA +1C/N1kvgM0yMWAmAPmOBfQAA + + +Fabrique +mqUyLp5n4EWp51FoDQB5mgAA +2 +S5QIteSKlECTnPJ+IHLXCwAA +3qjq3o9wh0uGNR9JEAcTGQAA +1 +8A5jFqzKpkyoxxSasTpV3wAA +1 +uKys+N8b3ESoj9rXwsulQAAA + + +Element +mqUyLp5n4EWp51FoDQB5mgAA +2 +DiK4CKvfUkyTgiUEcCeUAAAA +Axrf+SF4lk+0ToMeF8CcUQAA +1 +zuP4rQsPP0i9L7ugMlLdPQAA +1 +8A5jFqzKpkyoxxSasTpV3wAA + + +Section +mqUyLp5n4EWp51FoDQB5mgAA + + +Niveau +mqUyLp5n4EWp51FoDQB5mgAA + + +Section +mqUyLp5n4EWp51FoDQB5mgAA +2 +P8d7x0XazEK+FcVui/eQkwAA +miGPE/E3hUGlmQg4Nr5qLwAA +2 +F+zi8F12VU+1gFyigGjtRgAA +07bPGyHBNEKVmdMuVAoSswAA +2 +zuP4rQsPP0i9L7ugMlLdPQAA +F+zi8F12VU+1gFyigGjtRgAA + + + + + + diff --git a/G54/FeuTricolore/Code Java/Essai.java b/G54/FeuTricolore/Code Java/Essai.java new file mode 100644 index 0000000..385b183 --- /dev/null +++ b/G54/FeuTricolore/Code Java/Essai.java @@ -0,0 +1,24 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : Essai.java +// @ Date : 14/12/2007 +// @ Author : +// +// + + + + +/** */ +public class Essai { + /** */ + private Essai instance; + + /** */ + public Essai Instance() { + + } +} diff --git a/G54/FeuTricolore/Code Java/IHM/IHM Graphique.java b/G54/FeuTricolore/Code Java/IHM/IHM Graphique.java new file mode 100644 index 0000000..021e395 --- /dev/null +++ b/G54/FeuTricolore/Code Java/IHM/IHM Graphique.java @@ -0,0 +1,37 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : IHM Graphique.java +// @ Date : 14/12/2007 +// @ Author : +// +// + + + +package IHM; + + +/** */ +public class IHM Graphique extends Observation.IHMable, Interface { + /** */ + private Color couleur; + + /** */ + private Vektor listeEtat; + + /** */ + public Observation.IHMable sujets; + + /** */ + public void Maj() { + + } + + /** */ + public void Maj() { + + } +} diff --git a/G54/FeuTricolore/Code Java/IHM/IHM-Texte.java b/G54/FeuTricolore/Code Java/IHM/IHM-Texte.java new file mode 100644 index 0000000..0935ede --- /dev/null +++ b/G54/FeuTricolore/Code Java/IHM/IHM-Texte.java @@ -0,0 +1,34 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : IHM-Texte.java +// @ Date : 14/12/2007 +// @ Author : +// +// + + + +package IHM; + + +/** */ +public class IHM-Texte extends Observation.IHMable, Interface { + /** */ + private String texte; + + /** */ + private String[] listeEtat = "Passez", "Attention", "Stop"; + + /** */ + public void Maj() { + + } + + /** */ + public void Maj() { + + } +} diff --git a/G54/FeuTricolore/Code Java/IHM/Interface.java b/G54/FeuTricolore/Code Java/IHM/Interface.java new file mode 100644 index 0000000..a20cefa --- /dev/null +++ b/G54/FeuTricolore/Code Java/IHM/Interface.java @@ -0,0 +1,36 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : Interface.java +// @ Date : 14/12/2007 +// @ Author : +// +// + + + +package IHM; + + +/** */ +public class Interface extends Observation.IHMable { + /** */ + public Mtier.Feu tricolore monFeu; + + /** */ + public void click() { + + } + + /** */ + public void setFeu(Feu monFeu) { + + } + + /** */ + public void Maj() { + + } +} diff --git a/G54/FeuTricolore/Code Java/Metier/Feu tricolore.java b/G54/FeuTricolore/Code Java/Metier/Feu tricolore.java new file mode 100644 index 0000000..f5d65df --- /dev/null +++ b/G54/FeuTricolore/Code Java/Metier/Feu tricolore.java @@ -0,0 +1,29 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : Feu tricolore.java +// @ Date : 14/12/2007 +// @ Author : +// +// + + + +package Mtier; + + +/** */ +public class Feu tricolore extends Observation.Sujet { + /** */ + public int etat; + + /** */ + public int[] listeEtat = 1,2,3; + + /** */ + public void changer() { + + } +} diff --git a/G54/FeuTricolore/Code Java/Observation/IHMable.java b/G54/FeuTricolore/Code Java/Observation/IHMable.java new file mode 100644 index 0000000..43b4464 --- /dev/null +++ b/G54/FeuTricolore/Code Java/Observation/IHMable.java @@ -0,0 +1,21 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : IHMable.java +// @ Date : 14/12/2007 +// @ Author : +// +// + + + +package Observation; + + +/** */ +public abstract class IHMable { + /** */ + public abstract void Maj(); +} diff --git a/G54/FeuTricolore/Code Java/Observation/Sujet.java b/G54/FeuTricolore/Code Java/Observation/Sujet.java new file mode 100644 index 0000000..cb9c5cb --- /dev/null +++ b/G54/FeuTricolore/Code Java/Observation/Sujet.java @@ -0,0 +1,36 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : Sujet.java +// @ Date : 14/12/2007 +// @ Author : +// +// + + + +package Observation; + + +/** */ +public class Sujet { + /** */ + public IHMable observers; + + /** */ + public void Attach(IHMable o) { + + } + + /** */ + public void Detach(IHMable o) { + + } + + /** */ + public void Notify() { + + } +} diff --git a/G54/FeuTricolore/Code Java/Sujet.java b/G54/FeuTricolore/Code Java/Sujet.java new file mode 100644 index 0000000..c89f1b0 --- /dev/null +++ b/G54/FeuTricolore/Code Java/Sujet.java @@ -0,0 +1,24 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : Sujet.java +// @ Date : 14/12/2007 +// @ Author : +// +// + + + + +/** */ +public class Sujet { + /** */ + private Sujet instance; + + /** */ + public Sujet Instance() { + + } +} diff --git a/G54/FeuTricolore/FeuTricolores.uml b/G54/FeuTricolore/FeuTricolores.uml new file mode 100644 index 0000000..cb01b6c --- /dev/null +++ b/G54/FeuTricolore/FeuTricolores.uml @@ -0,0 +1,1091 @@ + + + + + + +UMLStandard + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +Ny6uK+/oZE2B/z3NNbD4tgAA +1 + +Main +Y3pHA6HQKUWCDN97VppvfgAA + +Cziv4rsRj0OF83LRAfKrbgAA + + + + +Analysis Model +UMLStandard +analysisModel +Ny6uK+/oZE2B/z3NNbD4tgAA +1 + +Main +True +RobustnessDiagram +eXQd1u8PPUa2BopFY3sTigAA + +xpiRXjRIRE+Yt2QxjY0VEwAA + + + + +Design Model +UMLStandard +designModel +Ny6uK+/oZE2B/z3NNbD4tgAA +1 + +Main +True +HCpTOLlos0y7DJkErL99NgAA + +BBudmuCBb0mMcQiXNIBlPwAA +15 + +clMaroon +$00B9FFFF +304 +168 +465 +269 +nBHmdWn+lEWt+w4dI+rnwgAA + + +IHM + + +False + + +False + + + + +clMaroon +$00B9FFFF +40 +168 +249 +169 +IuT92az/1EyFmuq2zWSGvwAA + + +Métier + + +False + + +False + + + + +clMaroon +$00B9FFFF +40 +4 +568 +137 +EHIaA6ScoEaocKmWHDMr1AAA + + +Observation + + +False + + +False + + + + +clMaroon +$00B9FFFF +56 +232 +140 +82 +y28Rhiv8N0ehDZNcjWWg2gAA + + +1 +Feu tricolore + + +False + + +False + + + +y28Rhiv8N0ehDZNcjWWg2gAA + + +y28Rhiv8N0ehDZNcjWWg2gAA + + +False +y28Rhiv8N0ehDZNcjWWg2gAA + + + +clMaroon +$00B9FFFF +324 +316 +95 +82 +eJKYy3jYkE2j6qdKJY32qgAA + + +1 +IHM Graphique + + +False + + +False + + + +eJKYy3jYkE2j6qdKJY32qgAA + + +eJKYy3jYkE2j6qdKJY32qgAA + + +False +eJKYy3jYkE2j6qdKJY32qgAA + + + +clMaroon +$00B9FFFF +500 +300 +248 +98 +Er4anO/7iEiDlWHzJnlLQQAA + + +1 +IHM-Texte + + +False + + +False + + + +Er4anO/7iEiDlWHzJnlLQQAA + + +Er4anO/7iEiDlWHzJnlLQQAA + + +False +Er4anO/7iEiDlWHzJnlLQQAA + + + +clMaroon +$00B9FFFF +108 +36 +112 +82 +x7Z5NiiYRk6FAbSI7iQamAAA + + +1 +Sujet + + +False + + +False + + + +x7Z5NiiYRk6FAbSI7iQamAAA + + +x7Z5NiiYRk6FAbSI7iQamAAA + + +False +x7Z5NiiYRk6FAbSI7iQamAAA + + + +clMaroon +$00B9FFFF +504 +36 +80 +56 +7Xi56sTU902uWdUkKQo5kQAA + + +3 +IHMable + + +False + + +False + + + +7Xi56sTU902uWdUkKQo5kQAA + + +7Xi56sTU902uWdUkKQo5kQAA + + +False +7Xi56sTU902uWdUkKQo5kQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +219,72;504,72 +WEBB6rMDM0eTp5voQ9JgaAAA +2WJp+KwTgkCMyYTNtCyghgAA +wmFdJvUzW0205XVGed6vcQAA + +False +1,5707963267949 +15 +WEBB6rMDM0eTp5voQ9JgaAAA + + +False +1,5707963267949 +30 +WEBB6rMDM0eTp5voQ9JgaAAA + + +False +-1,5707963267949 +15 +WEBB6rMDM0eTp5voQ9JgaAAA + + +-0,478352582730053 +30,4138126514911 +epHead ++sujets +Z+hSvQqWyUKGlgfMBPTh3wAA + + +False +0,523598775598299 +30 +epTail +/yovVpXcykeBHRuk6Nq0qwAA + + +False +0,523598775598299 +25 +epHead +Z+hSvQqWyUKGlgfMBPTh3wAA + + +False +-0,523598775598299 +25 +epTail +/yovVpXcykeBHRuk6Nq0qwAA + + +False +-0,785398163397448 +40 +epHead +Z+hSvQqWyUKGlgfMBPTh3wAA + + +False +0,785398163397448 +40 +epTail +/yovVpXcykeBHRuk6Nq0qwAA + + +False +-1000 +-1000 +50 +8 +Z+hSvQqWyUKGlgfMBPTh3wAA + + +False +-1000 +-1000 +50 +8 +/yovVpXcykeBHRuk6Nq0qwAA + + + +clMaroon +$00B9FFFF +133,232;155,117 +XtCIVIZDiEyFiSBRYliFWQAA +wmFdJvUzW0205XVGed6vcQAA +4Hky5WDiDE6wQpOLAFxG4gAA + +False +1,5707963267949 +15 +XtCIVIZDiEyFiSBRYliFWQAA + + +False +1,5707963267949 +30 +XtCIVIZDiEyFiSBRYliFWQAA + + +False +-1,5707963267949 +15 +XtCIVIZDiEyFiSBRYliFWQAA + + + +clMaroon +$00B9FFFF +424 +212 +91 +61 +15NpmS6C+0ihQFqOXf0fuwAA + + +3 +Interface + + +False + + +False + + + +15NpmS6C+0ihQFqOXf0fuwAA + + +15NpmS6C+0ihQFqOXf0fuwAA + + +False +15NpmS6C+0ihQFqOXf0fuwAA + + + +clMaroon +$00B9FFFF +405,316;443,272 +941go5071ky7XoT4ghciqAAA +mrjQCPMU0kGnrE8GjKyRzwAA +9hOCDaIXrkG+dMMbY2H0bQAA + +False +1,5707963267949 +15 +941go5071ky7XoT4ghciqAAA + + +False +1,5707963267949 +30 +941go5071ky7XoT4ghciqAAA + + +False +-1,5707963267949 +15 +941go5071ky7XoT4ghciqAAA + + + +clMaroon +$00B9FFFF +553,300;512,272 +viQ3tw+K2kS8+UEqcqmPtQAA +mrjQCPMU0kGnrE8GjKyRzwAA +ZZzbSkYIwUSTK22HGeCCLwAA + +False +1,5707963267949 +15 +viQ3tw+K2kS8+UEqcqmPtQAA + + +False +1,5707963267949 +30 +viQ3tw+K2kS8+UEqcqmPtQAA + + +False +-1,5707963267949 +15 +viQ3tw+K2kS8+UEqcqmPtQAA + + + +clMaroon +$00B9FFFF +424,246;195,266 +VA65dWZBa0yIYJwooe+IdAAA +4Hky5WDiDE6wQpOLAFxG4gAA +mrjQCPMU0kGnrE8GjKyRzwAA + +False +1,5707963267949 +15 +VA65dWZBa0yIYJwooe+IdAAA + + +False +1,5707963267949 +30 +VA65dWZBa0yIYJwooe+IdAAA + + +False +-1,5707963267949 +15 +VA65dWZBa0yIYJwooe+IdAAA + + +False +-0,523598775598299 +30 +epHead +YE7l0U63S0KnnTfNfGFC5QAA + + +False +0,523598775598299 +30 +epTail ++OVbk8g6jEWKhfmcBqKUGwAA + + +0,523598775598299 +25 +epHead +1 +YE7l0U63S0KnnTfNfGFC5QAA + + +False +-0,523598775598299 +25 +epTail ++OVbk8g6jEWKhfmcBqKUGwAA + + +False +-0,785398163397448 +40 +epHead +YE7l0U63S0KnnTfNfGFC5QAA + + +False +0,785398163397448 +40 +epTail ++OVbk8g6jEWKhfmcBqKUGwAA + + +False +-1000 +-1000 +50 +8 +YE7l0U63S0KnnTfNfGFC5QAA + + +False +-1000 +-1000 +50 +8 ++OVbk8g6jEWKhfmcBqKUGwAA + + + +clMaroon +$00B9FFFF +481,212;531,91 +S7lKGc+J0U2sxou64H3ykwAA +2WJp+KwTgkCMyYTNtCyghgAA +mrjQCPMU0kGnrE8GjKyRzwAA + +False +1,5707963267949 +15 +S7lKGc+J0U2sxou64H3ykwAA + + +False +1,5707963267949 +30 +S7lKGc+J0U2sxou64H3ykwAA + + +False +-1,5707963267949 +15 +S7lKGc+J0U2sxou64H3ykwAA + + + + +20 + +HCpTOLlos0y7DJkErL99NgAA +2 + +1 +g90CSQ5JcUu2AjDQEScsygAA +y28Rhiv8N0ehDZNcjWWg2gAA + + +0..* +g90CSQ5JcUu2AjDQEScsygAA +eJKYy3jYkE2j6qdKJY32qgAA + + + +HCpTOLlos0y7DJkErL99NgAA +2 + +1 +yGhLFYzvkEirkny9TeleagAA +y28Rhiv8N0ehDZNcjWWg2gAA + + +0..* +yGhLFYzvkEirkny9TeleagAA +Er4anO/7iEiDlWHzJnlLQQAA + + + +HCpTOLlos0y7DJkErL99NgAA +y28Rhiv8N0ehDZNcjWWg2gAA +x7Z5NiiYRk6FAbSI7iQamAAA +4 +LoHl2Ps5N0e92lbMkTye3AAA +aa1eLD1+aEeaOkAp0FerjAAA +C6ISKHD7/EGcs7qWcKjC5AAA +9lwaLayZREKnbJBecoDdjQAA + + +HCpTOLlos0y7DJkErL99NgAA +eJKYy3jYkE2j6qdKJY32qgAA +7Xi56sTU902uWdUkKQo5kQAA + + +HCpTOLlos0y7DJkErL99NgAA +2 + +False +rtxvwjkL9E+V84CuGIwiigAA +x7Z5NiiYRk6FAbSI7iQamAAA + + +observers +* +rtxvwjkL9E+V84CuGIwiigAA +7Xi56sTU902uWdUkKQo5kQAA + + + +HCpTOLlos0y7DJkErL99NgAA +4 +8NnhHJUM5E2m4HODyZsHHQAA +Up+SllTv002MyH+xX6xsmwAA +GEjUQLEXEk60ThthrS/pwAAA +Xb7I+1jPxk+PMLMtKpOe6QAA +2 + +False +WEBB6rMDM0eTp5voQ9JgaAAA +eJKYy3jYkE2j6qdKJY32qgAA +4 +pVjI/UmJD0uycT/MAYfsIgAA +JGS1CybSBk+s0wyWBv6pJQAA +OVLLtfQ5n0u5vcjDXLSDpgAA +nIxcggKQg0mEB6wZfuroKQAA + + +sujets +WEBB6rMDM0eTp5voQ9JgaAAA +7Xi56sTU902uWdUkKQo5kQAA +4 +ZEy2t2qfnEOb6yvs1Q8ogQAA +syQzsLBw+ESUxMfbWIHamwAA +gHir7/EH6UKK6F0DdCzw0wAA +qOy3ECjfnki5ShKkpUG3CQAA + + + +HCpTOLlos0y7DJkErL99NgAA +Er4anO/7iEiDlWHzJnlLQQAA +7Xi56sTU902uWdUkKQo5kQAA + + +Observation +HCpTOLlos0y7DJkErL99NgAA +1 +GKlLBrLbE0SPhCguR8yGSAAA +2 + +Sujet +EHIaA6ScoEaocKmWHDMr1AAA +4 +wmFdJvUzW0205XVGed6vcQAA +HWdc3fdCXEOCbt1mNxRJPwAA +Tf8rSfodykmfw/ufv75gjQAA +J8V9dFy+SEi7fFC+WG9SFAAA +1 +XtCIVIZDiEyFiSBRYliFWQAA +3 + +Attach +x7Z5NiiYRk6FAbSI7iQamAAA +1 + +o +w9AV9OpvvU2UFEZokkzwMwAA +7Xi56sTU902uWdUkKQo5kQAA + + + +Detach +x7Z5NiiYRk6FAbSI7iQamAAA +1 + +o +T9nCYMaFb0e3trbppY2zpAAA +7Xi56sTU902uWdUkKQo5kQAA + + + +Notify +x7Z5NiiYRk6FAbSI7iQamAAA + +1 +cw0Dej3/G02luTMg9xNj2wAA + + +IHMable +True +EHIaA6ScoEaocKmWHDMr1AAA +4 +2WJp+KwTgkCMyYTNtCyghgAA +q8mvkckSs0OgX6RbMthr3gAA +qmSdwG94SUyXhbXyAEOXUwAA +U76Yja9n3U+w+PtPKJy5lAAA +3 +Zi0us2QvV0a9kJuLNE/q0wAA +ng/UJAfiGkGOEJM/c+bPpgAA +S7lKGc+J0U2sxou64H3ykwAA +1 + +Click +True +7Xi56sTU902uWdUkKQo5kQAA + +2 +GoU5XAWWt0W8EWqVvj74HwAA +lm0uJAwfJEuDIqBMK8RY0AAA +2 +OAgneT9slkKSuEV/PnXg6AAA +Z+hSvQqWyUKGlgfMBPTh3wAA + + + +HCpTOLlos0y7DJkErL99NgAA +2 + +False +M5ACjox4ZkidXFSBekONQgAA +eJKYy3jYkE2j6qdKJY32qgAA + + +1 +M5ACjox4ZkidXFSBekONQgAA +y28Rhiv8N0ehDZNcjWWg2gAA + + + +HCpTOLlos0y7DJkErL99NgAA +2 + +False +9OjT4Y91v0S8WUmv7i1wGwAA +Er4anO/7iEiDlWHzJnlLQQAA + + +1 +9OjT4Y91v0S8WUmv7i1wGwAA +y28Rhiv8N0ehDZNcjWWg2gAA + + + +Métier +HCpTOLlos0y7DJkErL99NgAA +1 +vAguHQBa30KPCZJ3c3jNrAAA +1 + +Feu tricolore +IuT92az/1EyFmuq2zWSGvwAA +4 +4Hky5WDiDE6wQpOLAFxG4gAA +KSbaL851nESPcvPup8fWnwAA ++MxG8BH3vUOwgLUcK/wDaQAA +SryFzbk7L0+upMa72UPGQwAA +1 +XtCIVIZDiEyFiSBRYliFWQAA +1 + +changer +y28Rhiv8N0ehDZNcjWWg2gAA +1 + +pdkReturn +void +he/iQCJq/kCc5H8BZKM8qgAA + + +5 +O7qMHuwgvUuRWPx6BiIa5gAA +c0zbr2MfdEKpq15ZyQdbqAAA +/P/uNfj3lUupSZh8XtOTPAAA +7IIrspCrP02n6dwQ9ZnolQAA +YE7l0U63S0KnnTfNfGFC5QAA +2 + +etat +int +y28Rhiv8N0ehDZNcjWWg2gAA + + +listeEtat +int[] +1,2,3 +y28Rhiv8N0ehDZNcjWWg2gAA + + + + +IHM +HCpTOLlos0y7DJkErL99NgAA +1 +Q06HfqUVlU2uBvc52YnmjwAA +3 + +Interface +True +nBHmdWn+lEWt+w4dI+rnwgAA +4 +mrjQCPMU0kGnrE8GjKyRzwAA +/siPCQcHDEit96DBLwbYhQAA +bMwwBOwHdke6hVBPB4Gu4wAA +gyAZDifpTUCCELj0/akRgAAA +1 +S7lKGc+J0U2sxou64H3ykwAA +2 +941go5071ky7XoT4ghciqAAA +viQ3tw+K2kS8+UEqcqmPtQAA +1 + +click +True +15NpmS6C+0ihQFqOXf0fuwAA + +1 ++OVbk8g6jEWKhfmcBqKUGwAA + + +IHM Graphique +nBHmdWn+lEWt+w4dI+rnwgAA +4 +9hOCDaIXrkG+dMMbY2H0bQAA +WOhr+TCHbkOgCmhFbyN/IQAA +eAqclnpSpEC5VGCOdsWYgQAA +fu30FozZukOjmAXZVK3aWgAA +2 +Zi0us2QvV0a9kJuLNE/q0wAA +941go5071ky7XoT4ghciqAAA +1 + +click +eJKYy3jYkE2j6qdKJY32qgAA +1 + +pdkReturn +void +U3k2N1+LekqNeerPdg3xJAAA + + +3 +EIZlZojjEUKgoy8GZQq46QAA +/yovVpXcykeBHRuk6Nq0qwAA +AuDg6wBxs0ONH5e9N6X+5gAA +2 + +couleur +vkPrivate +Color +eJKYy3jYkE2j6qdKJY32qgAA + + +listeEtat +vkPrivate +Vektor +eJKYy3jYkE2j6qdKJY32qgAA + + + +IHM-Texte +nBHmdWn+lEWt+w4dI+rnwgAA +4 +ZZzbSkYIwUSTK22HGeCCLwAA +W9yitc+ppkiOChuYwC/C3gAA +uE5OuDQ5oEegOajlFTbVPAAA +s4QOn1qgzEW97oJ/kAcEJQAA +2 +ng/UJAfiGkGOEJM/c+bPpgAA +viQ3tw+K2kS8+UEqcqmPtQAA +1 + +click +Er4anO/7iEiDlWHzJnlLQQAA +1 + +pdkReturn +void +noR0x/yrgk6P/9NGYfntvgAA + + +2 +5jJglAj0Dkuxf9Rm+uLa9gAA +r7HQW6AIpESv+j5K4yfIKgAA +2 + +texte +vkPrivate +String +Er4anO/7iEiDlWHzJnlLQQAA + + +listeEtat +vkPrivate +String[] +"Passez", "Attention", "Stop" +Er4anO/7iEiDlWHzJnlLQQAA + + + + +Sujet +HCpTOLlos0y7DJkErL99NgAA +1 + +Instance +75wciIDttk6MP/EBWvv7HQAA +1 + +Parameter1 +pdkReturn +d7Yet//RFUeaj0tvUSPzmQAA +75wciIDttk6MP/EBWvv7HQAA + + +1 +Ko3CEPZgH0iYIjplzuiA9gAA +2 +fKmaHn9oL0CSQ+H6/iikEgAA ++W6Xim5hBkmuAZdUYnk3EQAA + + +HCpTOLlos0y7DJkErL99NgAA +2 + +False +akxkNCy9Nk65hcpCen97xAAA +75wciIDttk6MP/EBWvv7HQAA + + +instance +vkPrivate +skClassifier +akxkNCy9Nk65hcpCen97xAAA +75wciIDttk6MP/EBWvv7HQAA + + + +Essai +HCpTOLlos0y7DJkErL99NgAA +1 + +Instance +dD5Hl1slI02GXwXaRUUqIwAA +1 + +Parameter1 +pdkReturn +CEJRPZk+oUiME6INAK/GFQAA +dD5Hl1slI02GXwXaRUUqIwAA + + +1 +Mu9DvOBAzE+PR2wF86+deAAA +2 +spsSqF7nakiXrrGC39awOAAA +efH9c05mkkyFJG0P112RzgAA + + +HCpTOLlos0y7DJkErL99NgAA +2 + +False +rUaQ43R4xkCd/yeKCwzVygAA +dD5Hl1slI02GXwXaRUUqIwAA + + +instance +vkPrivate +skClassifier +rUaQ43R4xkCd/yeKCwzVygAA +dD5Hl1slI02GXwXaRUUqIwAA + + + +HCpTOLlos0y7DJkErL99NgAA +eJKYy3jYkE2j6qdKJY32qgAA +15NpmS6C+0ihQFqOXf0fuwAA +4 +K35QXoJJGkO0KzMDNybNFQAA +l2rxOt09t0GY/DxWv9sunAAA +7jGhq7IZsUGxelNA6ni0zQAA +SHr6QuHwGkKrcKcYzWlOIAAA + + +HCpTOLlos0y7DJkErL99NgAA +Er4anO/7iEiDlWHzJnlLQQAA +15NpmS6C+0ihQFqOXf0fuwAA +4 +w0HKAPpE/UOzsblfQtEK6AAA +kKGpbK8nl0e5oARfsaTZLgAA +fSejv3xiH0eG5WNV2EDT5gAA +KAW1M30XD0qW6Dj5CApJgwAA + + +HCpTOLlos0y7DJkErL99NgAA +4 +vCY05YYdD0WprTaLrDpEgQAA +/OoTdPw7006vWU0oX+uEqQAA +lwu/+LHp4Ei11FGPHlViTgAA +Pqf58F+FHEyyHBUjW2FtaAAA +2 + +False +VA65dWZBa0yIYJwooe+IdAAA +15NpmS6C+0ihQFqOXf0fuwAA +4 +foOmtPpapEGhYxZow+iU0QAA +Orc9m6u13EiHaFKZq7Yv5AAA +1XT0LADbnUehdmCu9wemtQAA +5zC/rRrSdEOTvR6Ekzhj8wAA + + +1 +VA65dWZBa0yIYJwooe+IdAAA +y28Rhiv8N0ehDZNcjWWg2gAA +4 +uqBnIK+QUUqkVEqxasBD0AAA +DPXvb0DSX0++EJPzE8aNiQAA +4mDs9NPvEEGIFN3rGi3lmAAA +WpDn17ac3kiPnT/2tzLGdQAA + + + +HCpTOLlos0y7DJkErL99NgAA +15NpmS6C+0ihQFqOXf0fuwAA +7Xi56sTU902uWdUkKQo5kQAA +4 +WnPYcHlRU0mbqFuUThI7UQAA +03WOckRkt02WVpsv16JrNgAA +vnCiLgFFOU+OnZXANHp6ZAAA +saiEG8rr2km9u/kb8rsJagAA + + + +Implementation Model +UMLStandard +implementationModel +Ny6uK+/oZE2B/z3NNbD4tgAA +1 + +Main +qyT0ESeHP0SPb2hugXFeUwAA + +5Ik7eV6Q7UeP1GY4vopTEAAA + + + + +Deployment Model +UMLStandard +deploymentModel +Ny6uK+/oZE2B/z3NNbD4tgAA +1 + +Main +aCoF4lBkl0yYH2b9sdpFIwAA + +JUEsqlMzk0aResuS49rhMAAA + + + + + + diff --git a/G54/FeuTricolores.uml b/G54/FeuTricolores.uml new file mode 100644 index 0000000..ab406f4 --- /dev/null +++ b/G54/FeuTricolores.uml @@ -0,0 +1,1079 @@ + + + + + + +UMLStandard +Java + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +Ny6uK+/oZE2B/z3NNbD4tgAA +1 + +Main +Y3pHA6HQKUWCDN97VppvfgAA + +Cziv4rsRj0OF83LRAfKrbgAA + + + + +Analysis Model +UMLStandard +analysisModel +Ny6uK+/oZE2B/z3NNbD4tgAA +1 + +Main +True +RobustnessDiagram +eXQd1u8PPUa2BopFY3sTigAA + +xpiRXjRIRE+Yt2QxjY0VEwAA + + + + +Design Model +UMLStandard +designModel +Ny6uK+/oZE2B/z3NNbD4tgAA +1 + +Main +True +HCpTOLlos0y7DJkErL99NgAA + +BBudmuCBb0mMcQiXNIBlPwAA +15 + +clMaroon +$00B9FFFF +304 +168 +465 +269 +nBHmdWn+lEWt+w4dI+rnwgAA + + +IHM + + +False + + +False + + + + +clMaroon +$00B9FFFF +40 +168 +249 +169 +IuT92az/1EyFmuq2zWSGvwAA + + +Métier + + +False + + +False + + + + +clMaroon +$00B9FFFF +40 +4 +568 +137 +EHIaA6ScoEaocKmWHDMr1AAA + + +Observation + + +False + + +False + + + + +clMaroon +$00B9FFFF +56 +232 +140 +82 +y28Rhiv8N0ehDZNcjWWg2gAA + + +1 +Feu tricolore + + +False + + +False + + + +y28Rhiv8N0ehDZNcjWWg2gAA + + +y28Rhiv8N0ehDZNcjWWg2gAA + + +False +y28Rhiv8N0ehDZNcjWWg2gAA + + + +clMaroon +$00B9FFFF +324 +316 +95 +82 +eJKYy3jYkE2j6qdKJY32qgAA + + +1 +IHM Graphique + + +False + + +False + + + +eJKYy3jYkE2j6qdKJY32qgAA + + +eJKYy3jYkE2j6qdKJY32qgAA + + +False +eJKYy3jYkE2j6qdKJY32qgAA + + + +clMaroon +$00B9FFFF +504 +316 +248 +98 +Er4anO/7iEiDlWHzJnlLQQAA + + +1 +IHM-Texte + + +False + + +False + + + +Er4anO/7iEiDlWHzJnlLQQAA + + +Er4anO/7iEiDlWHzJnlLQQAA + + +False +Er4anO/7iEiDlWHzJnlLQQAA + + + +clMaroon +$00B9FFFF +108 +36 +112 +82 +x7Z5NiiYRk6FAbSI7iQamAAA + + +1 +Sujet + + +False + + +False + + + +x7Z5NiiYRk6FAbSI7iQamAAA + + +x7Z5NiiYRk6FAbSI7iQamAAA + + +False +x7Z5NiiYRk6FAbSI7iQamAAA + + + +clMaroon +$00B9FFFF +504 +36 +80 +56 +7Xi56sTU902uWdUkKQo5kQAA + + +3 +IHMable + + +False + + +False + + + +7Xi56sTU902uWdUkKQo5kQAA + + +7Xi56sTU902uWdUkKQo5kQAA + + +False +7Xi56sTU902uWdUkKQo5kQAA + + + +clMaroon +$00B9FFFF +lsRectilinear +219,72;504,72 +WEBB6rMDM0eTp5voQ9JgaAAA +2WJp+KwTgkCMyYTNtCyghgAA +wmFdJvUzW0205XVGed6vcQAA + +False +1,5707963267949 +15 +WEBB6rMDM0eTp5voQ9JgaAAA + + +False +1,5707963267949 +30 +WEBB6rMDM0eTp5voQ9JgaAAA + + +False +-1,5707963267949 +15 +WEBB6rMDM0eTp5voQ9JgaAAA + + +-0,478352582730053 +30,4138126514911 +epHead ++sujets +Z+hSvQqWyUKGlgfMBPTh3wAA + + +False +0,523598775598299 +30 +epTail +/yovVpXcykeBHRuk6Nq0qwAA + + +False +0,523598775598299 +25 +epHead +Z+hSvQqWyUKGlgfMBPTh3wAA + + +False +-0,523598775598299 +25 +epTail +/yovVpXcykeBHRuk6Nq0qwAA + + +False +-0,785398163397448 +40 +epHead +Z+hSvQqWyUKGlgfMBPTh3wAA + + +False +0,785398163397448 +40 +epTail +/yovVpXcykeBHRuk6Nq0qwAA + + +False +-1000 +-1000 +50 +8 +Z+hSvQqWyUKGlgfMBPTh3wAA + + +False +-1000 +-1000 +50 +8 +/yovVpXcykeBHRuk6Nq0qwAA + + + +clMaroon +$00B9FFFF +133,232;155,117 +XtCIVIZDiEyFiSBRYliFWQAA +wmFdJvUzW0205XVGed6vcQAA +4Hky5WDiDE6wQpOLAFxG4gAA + +False +1,5707963267949 +15 +XtCIVIZDiEyFiSBRYliFWQAA + + +False +1,5707963267949 +30 +XtCIVIZDiEyFiSBRYliFWQAA + + +False +-1,5707963267949 +15 +XtCIVIZDiEyFiSBRYliFWQAA + + + +clMaroon +$00B9FFFF +424 +212 +122 +69 +15NpmS6C+0ihQFqOXf0fuwAA + + +1 +Interface + + +False + + +False + + + +15NpmS6C+0ihQFqOXf0fuwAA + + +15NpmS6C+0ihQFqOXf0fuwAA + + +False +15NpmS6C+0ihQFqOXf0fuwAA + + + +clMaroon +$00B9FFFF +412,316;449,280 +941go5071ky7XoT4ghciqAAA +mrjQCPMU0kGnrE8GjKyRzwAA +9hOCDaIXrkG+dMMbY2H0bQAA + +False +1,5707963267949 +15 +941go5071ky7XoT4ghciqAAA + + +False +1,5707963267949 +30 +941go5071ky7XoT4ghciqAAA + + +False +-1,5707963267949 +15 +941go5071ky7XoT4ghciqAAA + + + +clMaroon +$00B9FFFF +569,316;525,280 +viQ3tw+K2kS8+UEqcqmPtQAA +mrjQCPMU0kGnrE8GjKyRzwAA +ZZzbSkYIwUSTK22HGeCCLwAA + +False +1,5707963267949 +15 +viQ3tw+K2kS8+UEqcqmPtQAA + + +False +1,5707963267949 +30 +viQ3tw+K2kS8+UEqcqmPtQAA + + +False +-1,5707963267949 +15 +viQ3tw+K2kS8+UEqcqmPtQAA + + + +clMaroon +$00B9FFFF +424,250;195,267 +VA65dWZBa0yIYJwooe+IdAAA +4Hky5WDiDE6wQpOLAFxG4gAA +mrjQCPMU0kGnrE8GjKyRzwAA + +False +1,5707963267949 +15 +VA65dWZBa0yIYJwooe+IdAAA + + +False +1,5707963267949 +30 +VA65dWZBa0yIYJwooe+IdAAA + + +False +-1,5707963267949 +15 +VA65dWZBa0yIYJwooe+IdAAA + + +-0,523598775598299 +30 +epHead ++monFeu +YE7l0U63S0KnnTfNfGFC5QAA + + +False +0,523598775598299 +30 +epTail ++OVbk8g6jEWKhfmcBqKUGwAA + + +0,523598775598299 +25 +epHead +1 +YE7l0U63S0KnnTfNfGFC5QAA + + +False +-0,523598775598299 +25 +epTail ++OVbk8g6jEWKhfmcBqKUGwAA + + +False +-0,785398163397448 +40 +epHead +YE7l0U63S0KnnTfNfGFC5QAA + + +False +0,785398163397448 +40 +epTail ++OVbk8g6jEWKhfmcBqKUGwAA + + +False +-1000 +-1000 +50 +8 +YE7l0U63S0KnnTfNfGFC5QAA + + +False +-1000 +-1000 +50 +8 ++OVbk8g6jEWKhfmcBqKUGwAA + + + +clMaroon +$00B9FFFF +495,212;534,91 +S7lKGc+J0U2sxou64H3ykwAA +2WJp+KwTgkCMyYTNtCyghgAA +mrjQCPMU0kGnrE8GjKyRzwAA + +False +1,5707963267949 +15 +S7lKGc+J0U2sxou64H3ykwAA + + +False +1,5707963267949 +30 +S7lKGc+J0U2sxou64H3ykwAA + + +False +-1,5707963267949 +15 +S7lKGc+J0U2sxou64H3ykwAA + + + + +20 + +HCpTOLlos0y7DJkErL99NgAA +2 + +1 +g90CSQ5JcUu2AjDQEScsygAA +y28Rhiv8N0ehDZNcjWWg2gAA + + +0..* +g90CSQ5JcUu2AjDQEScsygAA +eJKYy3jYkE2j6qdKJY32qgAA + + + +HCpTOLlos0y7DJkErL99NgAA +2 + +1 +yGhLFYzvkEirkny9TeleagAA +y28Rhiv8N0ehDZNcjWWg2gAA + + +0..* +yGhLFYzvkEirkny9TeleagAA +Er4anO/7iEiDlWHzJnlLQQAA + + + +HCpTOLlos0y7DJkErL99NgAA +y28Rhiv8N0ehDZNcjWWg2gAA +x7Z5NiiYRk6FAbSI7iQamAAA +4 +LoHl2Ps5N0e92lbMkTye3AAA +aa1eLD1+aEeaOkAp0FerjAAA +C6ISKHD7/EGcs7qWcKjC5AAA +9lwaLayZREKnbJBecoDdjQAA + + +HCpTOLlos0y7DJkErL99NgAA +eJKYy3jYkE2j6qdKJY32qgAA +7Xi56sTU902uWdUkKQo5kQAA + + +HCpTOLlos0y7DJkErL99NgAA +2 + +False +rtxvwjkL9E+V84CuGIwiigAA +x7Z5NiiYRk6FAbSI7iQamAAA + + +observers +* +rtxvwjkL9E+V84CuGIwiigAA +7Xi56sTU902uWdUkKQo5kQAA + + + +HCpTOLlos0y7DJkErL99NgAA +4 +8NnhHJUM5E2m4HODyZsHHQAA +Up+SllTv002MyH+xX6xsmwAA +GEjUQLEXEk60ThthrS/pwAAA +Xb7I+1jPxk+PMLMtKpOe6QAA +2 + +False +WEBB6rMDM0eTp5voQ9JgaAAA +eJKYy3jYkE2j6qdKJY32qgAA +4 +pVjI/UmJD0uycT/MAYfsIgAA +JGS1CybSBk+s0wyWBv6pJQAA +OVLLtfQ5n0u5vcjDXLSDpgAA +nIxcggKQg0mEB6wZfuroKQAA + + +sujets +WEBB6rMDM0eTp5voQ9JgaAAA +7Xi56sTU902uWdUkKQo5kQAA +4 +ZEy2t2qfnEOb6yvs1Q8ogQAA +syQzsLBw+ESUxMfbWIHamwAA +gHir7/EH6UKK6F0DdCzw0wAA +qOy3ECjfnki5ShKkpUG3CQAA + + + +HCpTOLlos0y7DJkErL99NgAA +Er4anO/7iEiDlWHzJnlLQQAA +7Xi56sTU902uWdUkKQo5kQAA + + +Observation +HCpTOLlos0y7DJkErL99NgAA +1 +GKlLBrLbE0SPhCguR8yGSAAA +2 + +Sujet +EHIaA6ScoEaocKmWHDMr1AAA +4 +wmFdJvUzW0205XVGed6vcQAA +HWdc3fdCXEOCbt1mNxRJPwAA +Tf8rSfodykmfw/ufv75gjQAA +J8V9dFy+SEi7fFC+WG9SFAAA +1 +XtCIVIZDiEyFiSBRYliFWQAA +3 + +Attach +x7Z5NiiYRk6FAbSI7iQamAAA +1 + +o +w9AV9OpvvU2UFEZokkzwMwAA +7Xi56sTU902uWdUkKQo5kQAA + + + +Detach +x7Z5NiiYRk6FAbSI7iQamAAA +1 + +o +T9nCYMaFb0e3trbppY2zpAAA +7Xi56sTU902uWdUkKQo5kQAA + + + +Notify +x7Z5NiiYRk6FAbSI7iQamAAA + +1 +cw0Dej3/G02luTMg9xNj2wAA + + +IHMable +True +EHIaA6ScoEaocKmWHDMr1AAA +4 +2WJp+KwTgkCMyYTNtCyghgAA +q8mvkckSs0OgX6RbMthr3gAA +qmSdwG94SUyXhbXyAEOXUwAA +U76Yja9n3U+w+PtPKJy5lAAA +3 +Zi0us2QvV0a9kJuLNE/q0wAA +ng/UJAfiGkGOEJM/c+bPpgAA +S7lKGc+J0U2sxou64H3ykwAA +1 + +Maj +True +7Xi56sTU902uWdUkKQo5kQAA + +2 +GoU5XAWWt0W8EWqVvj74HwAA +lm0uJAwfJEuDIqBMK8RY0AAA +2 +OAgneT9slkKSuEV/PnXg6AAA +Z+hSvQqWyUKGlgfMBPTh3wAA + + + +HCpTOLlos0y7DJkErL99NgAA +2 + +False +M5ACjox4ZkidXFSBekONQgAA +eJKYy3jYkE2j6qdKJY32qgAA + + +1 +M5ACjox4ZkidXFSBekONQgAA +y28Rhiv8N0ehDZNcjWWg2gAA + + + +HCpTOLlos0y7DJkErL99NgAA +2 + +False +9OjT4Y91v0S8WUmv7i1wGwAA +Er4anO/7iEiDlWHzJnlLQQAA + + +1 +9OjT4Y91v0S8WUmv7i1wGwAA +y28Rhiv8N0ehDZNcjWWg2gAA + + + +Métier +HCpTOLlos0y7DJkErL99NgAA +1 +vAguHQBa30KPCZJ3c3jNrAAA +1 + +Feu tricolore +IuT92az/1EyFmuq2zWSGvwAA +4 +4Hky5WDiDE6wQpOLAFxG4gAA +KSbaL851nESPcvPup8fWnwAA ++MxG8BH3vUOwgLUcK/wDaQAA +SryFzbk7L0+upMa72UPGQwAA +1 +XtCIVIZDiEyFiSBRYliFWQAA +1 + +changer +y28Rhiv8N0ehDZNcjWWg2gAA +1 + +pdkReturn +void +he/iQCJq/kCc5H8BZKM8qgAA + + +5 +O7qMHuwgvUuRWPx6BiIa5gAA +c0zbr2MfdEKpq15ZyQdbqAAA +/P/uNfj3lUupSZh8XtOTPAAA +7IIrspCrP02n6dwQ9ZnolQAA +YE7l0U63S0KnnTfNfGFC5QAA +2 + +etat +int +y28Rhiv8N0ehDZNcjWWg2gAA + + +listeEtat +int[] +1,2,3 +y28Rhiv8N0ehDZNcjWWg2gAA + + + + +IHM +HCpTOLlos0y7DJkErL99NgAA +1 +Q06HfqUVlU2uBvc52YnmjwAA +3 + +Interface +nBHmdWn+lEWt+w4dI+rnwgAA +4 +mrjQCPMU0kGnrE8GjKyRzwAA +/siPCQcHDEit96DBLwbYhQAA +bMwwBOwHdke6hVBPB4Gu4wAA +gyAZDifpTUCCELj0/akRgAAA +1 +S7lKGc+J0U2sxou64H3ykwAA +2 +941go5071ky7XoT4ghciqAAA +viQ3tw+K2kS8+UEqcqmPtQAA +2 + +click +15NpmS6C+0ihQFqOXf0fuwAA + + +setFeu +15NpmS6C+0ihQFqOXf0fuwAA +1 + +monFeu +Feu +nDaqpPmfqk2Z0ycXUnDUHwAA + + +1 ++OVbk8g6jEWKhfmcBqKUGwAA + + +IHM Graphique +nBHmdWn+lEWt+w4dI+rnwgAA +4 +9hOCDaIXrkG+dMMbY2H0bQAA +WOhr+TCHbkOgCmhFbyN/IQAA +eAqclnpSpEC5VGCOdsWYgQAA +fu30FozZukOjmAXZVK3aWgAA +2 +Zi0us2QvV0a9kJuLNE/q0wAA +941go5071ky7XoT4ghciqAAA +3 +EIZlZojjEUKgoy8GZQq46QAA +/yovVpXcykeBHRuk6Nq0qwAA +AuDg6wBxs0ONH5e9N6X+5gAA +2 + +couleur +vkPrivate +Color +eJKYy3jYkE2j6qdKJY32qgAA + + +listeEtat +vkPrivate +Vektor +eJKYy3jYkE2j6qdKJY32qgAA + + + +IHM-Texte +nBHmdWn+lEWt+w4dI+rnwgAA +4 +ZZzbSkYIwUSTK22HGeCCLwAA +W9yitc+ppkiOChuYwC/C3gAA +uE5OuDQ5oEegOajlFTbVPAAA +s4QOn1qgzEW97oJ/kAcEJQAA +2 +ng/UJAfiGkGOEJM/c+bPpgAA +viQ3tw+K2kS8+UEqcqmPtQAA +2 +5jJglAj0Dkuxf9Rm+uLa9gAA +r7HQW6AIpESv+j5K4yfIKgAA +2 + +texte +vkPrivate +String +Er4anO/7iEiDlWHzJnlLQQAA + + +listeEtat +vkPrivate +String[] +"Passez", "Attention", "Stop" +Er4anO/7iEiDlWHzJnlLQQAA + + + + +Sujet +HCpTOLlos0y7DJkErL99NgAA +1 + +Instance +75wciIDttk6MP/EBWvv7HQAA +1 + +Parameter1 +pdkReturn +d7Yet//RFUeaj0tvUSPzmQAA +75wciIDttk6MP/EBWvv7HQAA + + +1 +Ko3CEPZgH0iYIjplzuiA9gAA +2 +fKmaHn9oL0CSQ+H6/iikEgAA ++W6Xim5hBkmuAZdUYnk3EQAA + + +HCpTOLlos0y7DJkErL99NgAA +2 + +False +akxkNCy9Nk65hcpCen97xAAA +75wciIDttk6MP/EBWvv7HQAA + + +instance +vkPrivate +skClassifier +akxkNCy9Nk65hcpCen97xAAA +75wciIDttk6MP/EBWvv7HQAA + + + +Essai +HCpTOLlos0y7DJkErL99NgAA +1 + +Instance +dD5Hl1slI02GXwXaRUUqIwAA +1 + +Parameter1 +pdkReturn +CEJRPZk+oUiME6INAK/GFQAA +dD5Hl1slI02GXwXaRUUqIwAA + + +1 +Mu9DvOBAzE+PR2wF86+deAAA +2 +spsSqF7nakiXrrGC39awOAAA +efH9c05mkkyFJG0P112RzgAA + + +HCpTOLlos0y7DJkErL99NgAA +2 + +False +rUaQ43R4xkCd/yeKCwzVygAA +dD5Hl1slI02GXwXaRUUqIwAA + + +instance +vkPrivate +skClassifier +rUaQ43R4xkCd/yeKCwzVygAA +dD5Hl1slI02GXwXaRUUqIwAA + + + +HCpTOLlos0y7DJkErL99NgAA +eJKYy3jYkE2j6qdKJY32qgAA +15NpmS6C+0ihQFqOXf0fuwAA +4 +K35QXoJJGkO0KzMDNybNFQAA +l2rxOt09t0GY/DxWv9sunAAA +7jGhq7IZsUGxelNA6ni0zQAA +SHr6QuHwGkKrcKcYzWlOIAAA + + +HCpTOLlos0y7DJkErL99NgAA +Er4anO/7iEiDlWHzJnlLQQAA +15NpmS6C+0ihQFqOXf0fuwAA +4 +w0HKAPpE/UOzsblfQtEK6AAA +kKGpbK8nl0e5oARfsaTZLgAA +fSejv3xiH0eG5WNV2EDT5gAA +KAW1M30XD0qW6Dj5CApJgwAA + + +HCpTOLlos0y7DJkErL99NgAA +4 +vCY05YYdD0WprTaLrDpEgQAA +/OoTdPw7006vWU0oX+uEqQAA +lwu/+LHp4Ei11FGPHlViTgAA +Pqf58F+FHEyyHBUjW2FtaAAA +2 + +False +VA65dWZBa0yIYJwooe+IdAAA +15NpmS6C+0ihQFqOXf0fuwAA +4 +foOmtPpapEGhYxZow+iU0QAA +Orc9m6u13EiHaFKZq7Yv5AAA +1XT0LADbnUehdmCu9wemtQAA +5zC/rRrSdEOTvR6Ekzhj8wAA + + +monFeu +1 +VA65dWZBa0yIYJwooe+IdAAA +y28Rhiv8N0ehDZNcjWWg2gAA +4 +uqBnIK+QUUqkVEqxasBD0AAA +DPXvb0DSX0++EJPzE8aNiQAA +4mDs9NPvEEGIFN3rGi3lmAAA +WpDn17ac3kiPnT/2tzLGdQAA + + + +HCpTOLlos0y7DJkErL99NgAA +15NpmS6C+0ihQFqOXf0fuwAA +7Xi56sTU902uWdUkKQo5kQAA +4 +WnPYcHlRU0mbqFuUThI7UQAA +03WOckRkt02WVpsv16JrNgAA +vnCiLgFFOU+OnZXANHp6ZAAA +saiEG8rr2km9u/kb8rsJagAA + + + +Implementation Model +UMLStandard +implementationModel +Ny6uK+/oZE2B/z3NNbD4tgAA +1 + +Main +qyT0ESeHP0SPb2hugXFeUwAA + +5Ik7eV6Q7UeP1GY4vopTEAAA + + + + +Deployment Model +UMLStandard +deploymentModel +Ny6uK+/oZE2B/z3NNbD4tgAA +1 + +Main +aCoF4lBkl0yYH2b9sdpFIwAA + +JUEsqlMzk0aResuS49rhMAAA + + + + + + diff --git a/G54/comptesBQ-DCA.uml b/G54/comptesBQ-DCA.uml new file mode 100644 index 0000000..cc19481 --- /dev/null +++ b/G54/comptesBQ-DCA.uml @@ -0,0 +1,1595 @@ + + + + + + +UMLStandard +Java + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +tbB+QZldeEOREeb/ealOnAAA +1 + +Main +3CQh/zN+mkO4Rj8TCJAkzgAA + +NOYyqi8XvUCf7YnFDaHlrwAA + + + + +Analysis Model +UMLStandard +analysisModel +tbB+QZldeEOREeb/ealOnAAA +1 + +Main +True +RobustnessDiagram +8DrOp+uWYEaSKSs3sQMAvAAA + +KgOrKcWyIki3v/i/X/XCiwAA + + + + +Design Model +UMLStandard +designModel +tbB+QZldeEOREeb/ealOnAAA +2 + +Main +True +ffu+sQonUkmnnnLWee8zjQAA + +sfEjz5BS90e7JdWFvCmBlAAA +17 + +clMaroon +$00B3FBDE +448 +24 +441 +637 +49s023C5hUaz5gk08FuPSAAA + + +packBQ + + +False + + +False + + + + +clMaroon +$00C7FAFE +688 +72 +189 +82 +EtbkhLLnaU2ptS8r5qJWEwAA + + +1 +Banque + + +<<Singleton>> + + +False + + + +EtbkhLLnaU2ptS8r5qJWEwAA + + +EtbkhLLnaU2ptS8r5qJWEwAA + + +False +EtbkhLLnaU2ptS8r5qJWEwAA + + + +clMaroon +$00B3FBDE +32 +20 +377 +649 +uuX+/zYHakKXicfKpGQlXwAA + + +packPers + + +False + + +False + + + + +clMaroon +$00C7FAFE +608 +220 +161 +238 +8/0vI5L0h0OdQRkhv4MzIgAA + + +3 +Compte + + +False + + +False + + + +8/0vI5L0h0OdQRkhv4MzIgAA + + +8/0vI5L0h0OdQRkhv4MzIgAA + + +False +8/0vI5L0h0OdQRkhv4MzIgAA + + + +clMaroon +$00C7FAFE +472 +516 +147 +121 +dTdkrIfwWEGGLDNgolaUZQAA + + +1 +CompteDepot + + +False + + +False + + + +dTdkrIfwWEGGLDNgolaUZQAA + + +dTdkrIfwWEGGLDNgolaUZQAA + + +False +dTdkrIfwWEGGLDNgolaUZQAA + + + +clMaroon +$00C7FAFE +668 +512 +204 +134 +VcA5uCWECU+sKooGPTnMWgAA + + +1 +CompteEpargne + + +False + + +False + + + +VcA5uCWECU+sKooGPTnMWgAA + + +VcA5uCWECU+sKooGPTnMWgAA + + +False +VcA5uCWECU+sKooGPTnMWgAA + + + +clMaroon +581,516;616,457 +198p6BdSeEaxKD3wQV9XuAAA +/rQOisJOhUuYMeQQ3BK80AAA +SuISNdsNu0qYl/iycOIlTQAA + +False +1,5707963267949 +15 +198p6BdSeEaxKD3wQV9XuAAA + + +False +1,5707963267949 +30 +198p6BdSeEaxKD3wQV9XuAAA + + +False +-1,5707963267949 +15 +198p6BdSeEaxKD3wQV9XuAAA + + + +clMaroon +747,512;728,457 +uiXuck7EPk2oWveZU/a4TAAA +/rQOisJOhUuYMeQQ3BK80AAA +fpwUdRW5hkWwKEy/+3sKSwAA + +False +1,5707963267949 +15 +uiXuck7EPk2oWveZU/a4TAAA + + +False +1,5707963267949 +30 +uiXuck7EPk2oWveZU/a4TAAA + + +False +-1,5707963267949 +15 +uiXuck7EPk2oWveZU/a4TAAA + + + +clMaroon +$00C7FAFE +108 +212 +194 +147 +0prIIKLkMEGPgRqp2BU5fgAA + + +3 +Personne + + +False + + +False + + + +0prIIKLkMEGPgRqp2BU5fgAA + + +0prIIKLkMEGPgRqp2BU5fgAA + + +False +0prIIKLkMEGPgRqp2BU5fgAA + + + +clMaroon +$00C7FAFE +40 +428 +161 +101 +G9/17fu5gk+JMUe7SdSe3gAA + + +1 +PersMorale + + +False + + +False + + + +G9/17fu5gk+JMUe7SdSe3gAA + + +G9/17fu5gk+JMUe7SdSe3gAA + + +False +G9/17fu5gk+JMUe7SdSe3gAA + + + +clMaroon +$00C7FAFE +220 +432 +161 +129 +yznALVr6DUS2a33p8W79HgAA + + +1 +PersPhysique + + +False + + +False + + + +yznALVr6DUS2a33p8W79HgAA + + +yznALVr6DUS2a33p8W79HgAA + + +False +yznALVr6DUS2a33p8W79HgAA + + + +clMaroon +142,428;172,358 +OUCrNl0fkUiZL3UUM0Cf+wAA +o5yQkbxi/k2aQjkHrZUJuAAA +M6WM748hZU+pLL07/7K+WgAA + +False +1,5707963267949 +15 +OUCrNl0fkUiZL3UUM0Cf+wAA + + +False +1,5707963267949 +30 +OUCrNl0fkUiZL3UUM0Cf+wAA + + +False +-1,5707963267949 +15 +OUCrNl0fkUiZL3UUM0Cf+wAA + + + +clMaroon +271,432;237,358 +LYeGArbWMUOm7hmc33Ox8AAA +o5yQkbxi/k2aQjkHrZUJuAAA +VvRRLH5Vl0yAMmxaiyJywQAA + +False +1,5707963267949 +15 +LYeGArbWMUOm7hmc33Ox8AAA + + +False +1,5707963267949 +30 +LYeGArbWMUOm7hmc33Ox8AAA + + +False +-1,5707963267949 +15 +LYeGArbWMUOm7hmc33Ox8AAA + + + +clMaroon +608,329;301,296 +GbByd6Z0y0Kb2yhbsrYtagAA +o5yQkbxi/k2aQjkHrZUJuAAA +/rQOisJOhUuYMeQQ3BK80AAA + +-0,401228907954293 +35,8468966578698 +possede +GbByd6Z0y0Kb2yhbsrYtagAA + + +False +1,5707963267949 +30 +GbByd6Z0y0Kb2yhbsrYtagAA + + +False +-1,5707963267949 +15 +GbByd6Z0y0Kb2yhbsrYtagAA + + +0,564243250112548 +22,8473193175917 +epHead ++titulaire +rZU76gV/okCjXC4qp4B2qQAA + + +0,251002748333364 +40,2616442783948 +epTail ++mesComptes +hcU19h11EUS+2tum7L1wQQAA + + +-0,673629132695913 +14,8660687473185 +epHead +1 +rZU76gV/okCjXC4qp4B2qQAA + + +-0,523598775598299 +25 +epTail +0..* +hcU19h11EUS+2tum7L1wQQAA + + +False +-0,785398163397448 +40 +epHead +rZU76gV/okCjXC4qp4B2qQAA + + +False +0,785398163397448 +40 +epTail +hcU19h11EUS+2tum7L1wQQAA + + +False +-1000 +-1000 +50 +8 +rZU76gV/okCjXC4qp4B2qQAA + + +False +-1000 +-1000 +50 +8 +hcU19h11EUS+2tum7L1wQQAA + + + +clMaroon +737,220;765,153 +wDC8lluls0GXh5gUJW5f+wAA +d6p7Qf8bIU6hdzrf8rh8cwAA +/rQOisJOhUuYMeQQ3BK80AAA + +False +1,5707963267949 +15 +wDC8lluls0GXh5gUJW5f+wAA + + +False +1,5707963267949 +30 +wDC8lluls0GXh5gUJW5f+wAA + + +False +-1,5707963267949 +15 +wDC8lluls0GXh5gUJW5f+wAA + + +False +-0,523598775598299 +30 +epHead +fQSaH/Far0ecMNHEmcTT2QAA + + +4 +-0,912897793484841 +50 +epTail ++tousLesCptes +1QMakf9KC0KGERE4iObljgAA + + +False +0,523598775598299 +25 +epHead +fQSaH/Far0ecMNHEmcTT2QAA + + +-5,38993459770326 +16,1245154965971 +epTail +0..* +1QMakf9KC0KGERE4iObljgAA + + +False +-0,785398163397448 +40 +epHead +fQSaH/Far0ecMNHEmcTT2QAA + + +False +0,785398163397448 +40 +epTail +1QMakf9KC0KGERE4iObljgAA + + +False +-1000 +-1000 +50 +8 +fQSaH/Far0ecMNHEmcTT2QAA + + +False +-1000 +-1000 +50 +8 +1QMakf9KC0KGERE4iObljgAA + + + +clMaroon +120,528;120,596;300,600;300,560 +O2WI+org7Emiw5044vdmxgAA +VvRRLH5Vl0yAMmxaiyJywQAA +M6WM748hZU+pLL07/7K+WgAA + +1,5707963267949 +15 +signe pour +O2WI+org7Emiw5044vdmxgAA + + +False +1,5707963267949 +30 +O2WI+org7Emiw5044vdmxgAA + + +False +-1,5707963267949 +15 +O2WI+org7Emiw5044vdmxgAA + + +1,09524454206213 +31,3049516849971 +epHead ++signataire +U42YY6zP20KPgsUFStrmvgAA + + +1,14483392551219 +43,4626276242015 +epTail ++entreprises +45TDQKIbgUCD6BF/rwHf7QAA + + +-1,05097566746584 +19,723082923316 +epHead +1 +U42YY6zP20KPgsUFStrmvgAA + + +-0,523598775598299 +25 +epTail +0..* +45TDQKIbgUCD6BF/rwHf7QAA + + +False +-0,785398163397448 +40 +epHead +U42YY6zP20KPgsUFStrmvgAA + + +False +0,785398163397448 +40 +epTail +45TDQKIbgUCD6BF/rwHf7QAA + + +False +-1000 +-1000 +50 +8 +U42YY6zP20KPgsUFStrmvgAA + + +False +-1000 +-1000 +50 +8 +45TDQKIbgUCD6BF/rwHf7QAA + + + +clMaroon +$00B9FFFF +301,256;688,140 +yh9SmpEocEWezRsmhkfaSwAA +d6p7Qf8bIU6hdzrf8rh8cwAA +o5yQkbxi/k2aQjkHrZUJuAAA + +False +1,5707963267949 +15 +yh9SmpEocEWezRsmhkfaSwAA + + +False +1,5707963267949 +30 +yh9SmpEocEWezRsmhkfaSwAA + + +False +-1,5707963267949 +15 +yh9SmpEocEWezRsmhkfaSwAA + + +False +-0,523598775598299 +30 +epHead +o6zYwCuEHkeFqVTrtO9aIQAA + + +False +0,523598775598299 +30 +epTail +lOowfyt6lkKrM627mEOb7QAA + + +0,523598775598299 +25 +epHead +1 +o6zYwCuEHkeFqVTrtO9aIQAA + + +-0,523598775598299 +25 +epTail +1..* +lOowfyt6lkKrM627mEOb7QAA + + +False +-0,785398163397448 +40 +epHead +o6zYwCuEHkeFqVTrtO9aIQAA + + +False +0,785398163397448 +40 +epTail +lOowfyt6lkKrM627mEOb7QAA + + +False +-1000 +-1000 +50 +8 +o6zYwCuEHkeFqVTrtO9aIQAA + + +False +-1000 +-1000 +50 +8 +lOowfyt6lkKrM627mEOb7QAA + + + + + +ComponentDiagram1 +ffu+sQonUkmnnnLWee8zjQAA + +3qtg4IKoEUmEcquK7IUJrAAA +3 + +clMaroon +$00B3FBDE +364 +148 +120 +70 +49s023C5hUaz5gk08FuPSAAA + + +packBQ + + +False + + +False + + + + +clMaroon +$00B3FBDE +116 +148 +120 +70 +uuX+/zYHakKXicfKpGQlXwAA + + +packPers + + +False + + +False + + + + +clMaroon +364,182;235,182 +SgoeLF7soEq9e8CLvGXlbAAA +VsLBMs67OECs3p+CMTTAxQAA +meOxz1uTxEOetMLY9yWKnQAA + +False +1,5707963267949 +15 +SgoeLF7soEq9e8CLvGXlbAAA + + +False +1,5707963267949 +30 +SgoeLF7soEq9e8CLvGXlbAAA + + +False +-1,5707963267949 +15 +SgoeLF7soEq9e8CLvGXlbAAA + + + + +13 + +ffu+sQonUkmnnnLWee8zjQAA +dTdkrIfwWEGGLDNgolaUZQAA +8/0vI5L0h0OdQRkhv4MzIgAA +4 +MEJE6Y6bS06+u3LtoyzMtQAA +oOrKU9tZDE2XfjyegHnU4QAA +r9d5+x1I8Eq9b6gCp5dY7gAA +4R5Z7oXq8E2ykVae0DFUTwAA + + +ffu+sQonUkmnnnLWee8zjQAA +VcA5uCWECU+sKooGPTnMWgAA +8/0vI5L0h0OdQRkhv4MzIgAA +4 +eyyqmc4pZU648zXoQRFYGgAA +BAqRGKJ8JEmafaFZ+w8Z/AAA +XiDsjtQ7Fku7cOrUsDEm4gAA +VWVWCVNmz0y+31eKUGFtagAA + + +ffu+sQonUkmnnnLWee8zjQAA +G9/17fu5gk+JMUe7SdSe3gAA +0prIIKLkMEGPgRqp2BU5fgAA +4 +MlvRXtEB+0iVwlL3a98VUwAA +UZhOhqjQEU2GsdphyU/rbwAA +MmJKbzKTW0uKzaQjLpF3agAA +it4QylLmjUKEewDnPROgkAAA + + +ffu+sQonUkmnnnLWee8zjQAA +yznALVr6DUS2a33p8W79HgAA +0prIIKLkMEGPgRqp2BU5fgAA +4 +DSkd/ffN9kqKxFdlgoHMAwAA +MVzaF+D3VUa38QEmaC73egAA +H5PGMfyf1kSvH8dx3IPpvAAA +7OsWkzoFrk22mRE5P6ZEhQAA + + +possede +ffu+sQonUkmnnnLWee8zjQAA +4 +LYo6Q2U0PU+Zsvppy1AzAAAA +ndR3L2YeIkipUEAjXjpVnwAA +3QaK5tT83kWDdRw0Zm8ztQAA +W17sGu0jSUeAu9teft5iFQAA +2 + +mesComptes +False +0..* +GbByd6Z0y0Kb2yhbsrYtagAA +8/0vI5L0h0OdQRkhv4MzIgAA +4 +yJ48Jx8z20ijkudfOr+nRwAA +3f6N7wGkdU+VKWcXLnNP1AAA +8oKGJLfYd0qlO8LyIid2IgAA +Ms7AJbFi/0uaIIixQx7jqAAA + + +titulaire +1 +GbByd6Z0y0Kb2yhbsrYtagAA +0prIIKLkMEGPgRqp2BU5fgAA +4 +h0h7wVvhiE2gk3+l2hXhhQAA +eEn865CNg0m2/g4yRmkPoAAA +NGaPss6bMEChkXrSMk2w/QAA +rs5UwGeAKUikX1kUVbNogwAA + + + +ffu+sQonUkmnnnLWee8zjQAA +4 +yvdKesWGOEW3AbuNRkotoQAA +Nq4xbXW8IUW+J+ZQq0LqlwAA +aQtKxV4R+EW0jHx6+LbQoQAA +Yxj/28+MXUSkU29H8K7JhAAA +2 + +tousLesCptes +skClassifier +0..* +wDC8lluls0GXh5gUJW5f+wAA +8/0vI5L0h0OdQRkhv4MzIgAA +4 +wH5Ua8jfQUG3tiA0c9GC3wAA +C7lmOqRXB0OvacEIGxGISgAA +yWc3TUd6Yk28WJ2ueeTLNQAA +M1F7Sm11qEWtpnw4MuWrKwAA + + +akComposite +wDC8lluls0GXh5gUJW5f+wAA +EtbkhLLnaU2ptS8r5qJWEwAA +4 +GSFpayZm2U6kFUaHSKFmcAAA +sDFVW/pW90qxKj9WGaEongAA +dqDl7LFAVkSqWVdm2EZfegAA +eTC31hPNDE+yCruZNa6pLgAA + + + +signe pour +ffu+sQonUkmnnnLWee8zjQAA +4 +ZIFgqiNNLkeNJytywGfABQAA +14zdrAtePUiU2OAOiRwHqgAA +HHuXR1fiT0GTuoeIOjPuCQAA +WwCYFXA4fkytITsBv77PCAAA +2 + +entreprises +0..* +O2WI+org7Emiw5044vdmxgAA +G9/17fu5gk+JMUe7SdSe3gAA +4 +C1tNJTZ+1EmNJe8KODeiWAAA +UHTCVDVHF02l+i8VA1V5CAAA +EKqjJ6uVXka6KqmgJz+lSwAA +z7nbP3ntt0mlQCoHETWGUQAA + + +signataire +False +1 +O2WI+org7Emiw5044vdmxgAA +yznALVr6DUS2a33p8W79HgAA +4 +GNLwXYsscUCUGviMa1UdcAAA +Ob6eBHNnjEawbso55G7jHQAA ++dVJGuzbAECIADxc1BF3NgAA +PJNllHUlZUW6bqTYykI/RQAA + + + +ffu+sQonUkmnnnLWee8zjQAA +8/0vI5L0h0OdQRkhv4MzIgAA +yznALVr6DUS2a33p8W79HgAA + + +ffu+sQonUkmnnnLWee8zjQAA +0prIIKLkMEGPgRqp2BU5fgAA +yznALVr6DUS2a33p8W79HgAA + + +ffu+sQonUkmnnnLWee8zjQAA +49s023C5hUaz5gk08FuPSAAA +uuX+/zYHakKXicfKpGQlXwAA +4 +l0yz5pYVoEiAiyy6XZ77lwAA +hhmVLtP3R0+cK19bR0AnQAAA +2AJEXQE86EOq3yBNnT1y/wAA +sJc9Ue5oHUa6gR0w4jU6uQAA + + +packBQ +ffu+sQonUkmnnnLWee8zjQAA +2 +9G99o5P69ESUMuwf57kHsQAA +meOxz1uTxEOetMLY9yWKnQAA +1 +SgoeLF7soEq9e8CLvGXlbAAA +4 + +CompteDepot +49s023C5hUaz5gk08FuPSAAA +4 +SuISNdsNu0qYl/iycOIlTQAA +3Drdar8zE02tbXEfPp/nMwAA +L53s48iaWESS7O3tkO1PQgAA +ObaA77feT0iZkZvH6X+S5AAA +1 +198p6BdSeEaxKD3wQV9XuAAA +2 + +retirer +dTdkrIfwWEGGLDNgolaUZQAA +1 + +s +double +A2KfmgryAkSij4fzHhxmJwAA + + + +getType +dTdkrIfwWEGGLDNgolaUZQAA +1 + +pdkReturn +String +lZzp+0ItSU+FIqPI4Uj7qAAA + + +3 + +c-agios +vkProtected +skClassifier +int +0.12 +dTdkrIfwWEGGLDNgolaUZQAA + + +c-Type +vkProtected +skClassifier +"Depot" +dTdkrIfwWEGGLDNgolaUZQAA + + +montantDecouvert +vkProtected +double +dTdkrIfwWEGGLDNgolaUZQAA + + + +CompteEpargne +49s023C5hUaz5gk08FuPSAAA +4 +fpwUdRW5hkWwKEy/+3sKSwAA +9yBKNE7dGUCD9nroxDX3eQAA +Uu5G6tOyj0KlimVRVDsg4gAA +FQTnEO0I3Uyz4b/5SJMMRAAA +1 +uiXuck7EPk2oWveZU/a4TAAA +3 + +retirer +VcA5uCWECU+sKooGPTnMWgAA +1 + +s +double +3MRfAqffoE+KR4j+zOZuUwAA + + + +projection +VcA5uCWECU+sKooGPTnMWgAA +2 + +nbAnnees +int +sgswUf1HV0KX2fn3wRb69AAA + + +Parameter1 +pdkReturn +double +sgswUf1HV0KX2fn3wRb69AAA + + + +getType +VcA5uCWECU+sKooGPTnMWgAA +1 + +pdkReturn +String +6zSfZ++7WkKvMmhWR4wAvgAA + + +4 + +c-tauxInteret +vkProtected +skClassifier +double +0.035 +VcA5uCWECU+sKooGPTnMWgAA + + +c-Type +vkProtected +skClassifier +"Epargne" +VcA5uCWECU+sKooGPTnMWgAA + + +anneeOuverture +vkProtected +int +VcA5uCWECU+sKooGPTnMWgAA + + +c-delaiMinimum +vkProtected +skClassifier +int +4 +VcA5uCWECU+sKooGPTnMWgAA + + + +Compte +True +49s023C5hUaz5gk08FuPSAAA +4 +/rQOisJOhUuYMeQQ3BK80AAA +PSX7t2Lh3kSYrlwqb5x2agAA +F0lEZQ+R7EueW5by2eD3dAAA +JJ5AXq+WP0Gm89yC4o/NngAA +1 +DkkzurS/Fk6z5bjsAk38nAAA +2 +198p6BdSeEaxKD3wQV9XuAAA +uiXuck7EPk2oWveZU/a4TAAA +8 + +deposer +8/0vI5L0h0OdQRkhv4MzIgAA +1 + +s +double +9mzzSt+2d0y1++yNAbD42gAA + + + +retirer +True +8/0vI5L0h0OdQRkhv4MzIgAA +1 + +s +double +83H4Yftt0EShd4acKC+j6wAA + + + +getTitulaire +8/0vI5L0h0OdQRkhv4MzIgAA +1 + +Parameter1 +pdkReturn +Personne +0jiY6peEbUuN7ty9ajWThwAA +0prIIKLkMEGPgRqp2BU5fgAA + + + +getSignataire +8/0vI5L0h0OdQRkhv4MzIgAA +1 + +Parameter1 +pdkReturn +PersPhysique +in8HyJ+e3EiSSXB8uksHiQAA +yznALVr6DUS2a33p8W79HgAA + + + +ouvrir +8/0vI5L0h0OdQRkhv4MzIgAA + + +fermer +8/0vI5L0h0OdQRkhv4MzIgAA + + +interdireRetrait +8/0vI5L0h0OdQRkhv4MzIgAA + + +getType +True +8/0vI5L0h0OdQRkhv4MzIgAA +1 + +Parameter1 +pdkReturn +String +VyTyFD83TEqhvefVS9s4UwAA + + +2 +hcU19h11EUS+2tum7L1wQQAA +1QMakf9KC0KGERE4iObljgAA +6 + +noCpte +vkProtected +int +8/0vI5L0h0OdQRkhv4MzIgAA + + +solde +vkProtected +double +0 +8/0vI5L0h0OdQRkhv4MzIgAA + + +etat +vkProtected +int +8/0vI5L0h0OdQRkhv4MzIgAA + + +FERME +vkProtected +skClassifier +ckFrozen +skClassifier +int +0 +8/0vI5L0h0OdQRkhv4MzIgAA + + +OUVERT +vkProtected +skClassifier +ckFrozen +int +1 +8/0vI5L0h0OdQRkhv4MzIgAA + + +DEPOT +vkProtected +skClassifier +ckFrozen +int +2 +8/0vI5L0h0OdQRkhv4MzIgAA + +1 +p/ZNlSd2LE2+OoaB8FLokQAA + + +Banque +Singleton +49s023C5hUaz5gk08FuPSAAA +4 +d6p7Qf8bIU6hdzrf8rh8cwAA +JMPblkVh2EmH06ul5BoytgAA +eE62CxdJPEKot3Xob8EAFQAA +BUqDLzUrXkC6C6TWbY0j7gAA +2 + +listerLesCptes +skClassifier +EtbkhLLnaU2ptS8r5qJWEwAA +1 + +pdkReturn +Vector<Compte> +ORRwOetIBEusGryb5ZKA2gAA + + + +getCompte +skClassifier +EtbkhLLnaU2ptS8r5qJWEwAA +2 + +pdkReturn +Compte +qKPOsoMuFkGDpRgd7AhHKQAA + + +no +int +qKPOsoMuFkGDpRgd7AhHKQAA + + +2 +fQSaH/Far0ecMNHEmcTT2QAA +o6zYwCuEHkeFqVTrtO9aIQAA + + + +packPers +ffu+sQonUkmnnnLWee8zjQAA +2 +U4OZdIEXS0iP2K7jW3ljWQAA +VsLBMs67OECs3p+CMTTAxQAA +1 +SgoeLF7soEq9e8CLvGXlbAAA +3 + +Personne +True +uuX+/zYHakKXicfKpGQlXwAA +4 +o5yQkbxi/k2aQjkHrZUJuAAA +QFHO0w31TkOWcMn+s317EgAA +hXX9Re4OiUCZjndypoTmKQAA +MbQ3E3CD2USmdvE/EN6YOgAA +1 +xbrkgDRL4k+f4AMQBqzkPAAA +2 +OUCrNl0fkUiZL3UUM0Cf+wAA +LYeGArbWMUOm7hmc33Ox8AAA +4 + +interdire +0prIIKLkMEGPgRqp2BU5fgAA + + +autoriser +0prIIKLkMEGPgRqp2BU5fgAA + + +getSignataire +True +0prIIKLkMEGPgRqp2BU5fgAA +1 + +Parameter1 +pdkReturn +PersPhysique +6Nsg8mchrEa1lZTLsXWc8AAA +yznALVr6DUS2a33p8W79HgAA + + + +getMesComptes +0prIIKLkMEGPgRqp2BU5fgAA +1 + +pdkReturn +Vector<Compte> +0HrUxXIOHUSU+IWZHG3mzQAA + + +1 +V5VRAZrxZ0+cbu5nbSAOUAAA +2 +rZU76gV/okCjXC4qp4B2qQAA +lOowfyt6lkKrM627mEOb7QAA +4 + +nom +vkProtected +String +0prIIKLkMEGPgRqp2BU5fgAA + + +id +vkProtected +int +0prIIKLkMEGPgRqp2BU5fgAA + + +adresse +vkProtected +String +0prIIKLkMEGPgRqp2BU5fgAA + + +interditBQ +vkProtected +boolean +false +0prIIKLkMEGPgRqp2BU5fgAA + + + +PersMorale +uuX+/zYHakKXicfKpGQlXwAA +4 +M6WM748hZU+pLL07/7K+WgAA +D2xl7MCfSEWEV3+3pzAdQAAA +pN7G+K1s6ESk7EE1cyO0cAAA +Pp0cGufzOEuaLmqNuvZ5HQAA +1 +OUCrNl0fkUiZL3UUM0Cf+wAA +1 + +getSignataire +G9/17fu5gk+JMUe7SdSe3gAA +1 + +pdkReturn +PersPhysique +XT05siiNakCfWBywLOnV6QAA +yznALVr6DUS2a33p8W79HgAA + + +1 +45TDQKIbgUCD6BF/rwHf7QAA +2 + +nature +vkProtected +String +G9/17fu5gk+JMUe7SdSe3gAA + + +domaine +vkProtected +String +G9/17fu5gk+JMUe7SdSe3gAA + + + +PersPhysique +uuX+/zYHakKXicfKpGQlXwAA +4 +VvRRLH5Vl0yAMmxaiyJywQAA +mThM6eBn4kqHuzHrFIi2hQAA +jcyYgQju40CadrJ2/0shfwAA +y8kzBu00kEq5BJZQdJOVGAAA +2 +DkkzurS/Fk6z5bjsAk38nAAA +xbrkgDRL4k+f4AMQBqzkPAAA +1 +LYeGArbWMUOm7hmc33Ox8AAA +1 + +getSignataire +yznALVr6DUS2a33p8W79HgAA +1 + +Parameter1 +pdkReturn +PersPhysique +XAIjOjaV60K99qHyF6fn+wAA +yznALVr6DUS2a33p8W79HgAA + + +4 +1wVZZpfp1U+O7f0z7WIjVAAA +MxVQo4fZdUCn8F+YA3keRAAA +Owmn2op/vkeoK3i8ZWdDFQAA +AGmnKTFqv0m6AY3uH7C/ngAA +1 +U42YY6zP20KPgsUFStrmvgAA +3 + +titre +vkProtected +String +yznALVr6DUS2a33p8W79HgAA + + +prenom +vkProtected +String +yznALVr6DUS2a33p8W79HgAA + + +signature +vkProtected +String +yznALVr6DUS2a33p8W79HgAA + + + + +ffu+sQonUkmnnnLWee8zjQAA +4 +sOti0MwkOkSLt1yGzs9NuAAA +OPK4LSJe20y5xS5iHC4WWAAA +iBt3rtxUakeiu6Em1sZdDgAA +fw+4K92E5UGhOXJGAW8KjgAA +2 + +1..* +yh9SmpEocEWezRsmhkfaSwAA +0prIIKLkMEGPgRqp2BU5fgAA +4 +a7qbodJ7O0COeC+8PFTAEgAA +mHQHJuEx70il5I8QA8Zu2AAA +cLl/B5OBCUOCZVNsl2h23wAA +UhhmcR7S1U6mqRuytloyDwAA + + +False +akComposite +1 +yh9SmpEocEWezRsmhkfaSwAA +EtbkhLLnaU2ptS8r5qJWEwAA +4 +sWKM7XXyukiEUSNHaYdoJAAA +Vecq+IsJdkOlIEzj7qDazAAA +Oh+sJM66/0KoptCDGAUFAgAA +I+jviStowUqcjMnRspyIFAAA + + +1 + +CollaborationInstanceSet1 +ffu+sQonUkmnnnLWee8zjQAA +1 + +InteractionInstanceSet1 +4vBHr0vZVEaQD25xyckCBgAA +1 + +Diagramme de séquence +b/1pMYskkEiWkGGbNeZIJwAA + +SAmegghrTkOB9elrB1DBZQAA +1 + +clMaroon +$00B9FFFF +608 +32 +70 +350 +p/ZNlSd2LE2+OoaB8FLokQAA + + +4 + : Compte + + +False + + +False + + + +p/ZNlSd2LE2+OoaB8FLokQAA + + + + + +1 + +8/0vI5L0h0OdQRkhv4MzIgAA +4vBHr0vZVEaQD25xyckCBgAA +2 +OjZHDWgypk2bFZjnMkLmKgAA +aL6IXFvEbEqVIU44AYcZ0gAA + + + + +Implementation Model +UMLStandard +implementationModel +tbB+QZldeEOREeb/ealOnAAA +1 + +Main +B1UBKTaOXUajLLP2IHjkJwAA + +iJ+bD/7cg0OjHpH5HgTTZQAA + + + + +Deployment Model +UMLStandard +deploymentModel +tbB+QZldeEOREeb/ealOnAAA +1 + +Main +kvTxBLlwp0agfC5PGl2LnwAA + +5Z+yL/30bE2uyCWg0KMl8QAA + + + + + + diff --git a/G54/comptesBQ-DCA.~ml b/G54/comptesBQ-DCA.~ml new file mode 100644 index 0000000..84abfe2 --- /dev/null +++ b/G54/comptesBQ-DCA.~ml @@ -0,0 +1,1595 @@ + + + + + + +UMLStandard +Java + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +tbB+QZldeEOREeb/ealOnAAA +1 + +Main +3CQh/zN+mkO4Rj8TCJAkzgAA + +NOYyqi8XvUCf7YnFDaHlrwAA + + + + +Analysis Model +UMLStandard +analysisModel +tbB+QZldeEOREeb/ealOnAAA +1 + +Main +True +RobustnessDiagram +8DrOp+uWYEaSKSs3sQMAvAAA + +KgOrKcWyIki3v/i/X/XCiwAA + + + + +Design Model +UMLStandard +designModel +tbB+QZldeEOREeb/ealOnAAA +2 + +Main +True +ffu+sQonUkmnnnLWee8zjQAA + +sfEjz5BS90e7JdWFvCmBlAAA +17 + +clMaroon +$00B3FBDE +448 +24 +441 +637 +49s023C5hUaz5gk08FuPSAAA + + +packBQ + + +False + + +False + + + + +clMaroon +$00C7FAFE +688 +72 +189 +82 +EtbkhLLnaU2ptS8r5qJWEwAA + + +1 +Banque + + +<<Singleton>> + + +False + + + +EtbkhLLnaU2ptS8r5qJWEwAA + + +EtbkhLLnaU2ptS8r5qJWEwAA + + +False +EtbkhLLnaU2ptS8r5qJWEwAA + + + +clMaroon +$00B3FBDE +32 +20 +377 +649 +uuX+/zYHakKXicfKpGQlXwAA + + +packPers + + +False + + +False + + + + +clMaroon +$00C7FAFE +608 +220 +161 +238 +8/0vI5L0h0OdQRkhv4MzIgAA + + +3 +Compte + + +False + + +False + + + +8/0vI5L0h0OdQRkhv4MzIgAA + + +8/0vI5L0h0OdQRkhv4MzIgAA + + +False +8/0vI5L0h0OdQRkhv4MzIgAA + + + +clMaroon +$00C7FAFE +472 +516 +147 +121 +dTdkrIfwWEGGLDNgolaUZQAA + + +1 +CompteDepot + + +False + + +False + + + +dTdkrIfwWEGGLDNgolaUZQAA + + +dTdkrIfwWEGGLDNgolaUZQAA + + +False +dTdkrIfwWEGGLDNgolaUZQAA + + + +clMaroon +$00C7FAFE +668 +512 +204 +134 +VcA5uCWECU+sKooGPTnMWgAA + + +1 +CompteEpargne + + +False + + +False + + + +VcA5uCWECU+sKooGPTnMWgAA + + +VcA5uCWECU+sKooGPTnMWgAA + + +False +VcA5uCWECU+sKooGPTnMWgAA + + + +clMaroon +581,516;616,457 +198p6BdSeEaxKD3wQV9XuAAA +/rQOisJOhUuYMeQQ3BK80AAA +SuISNdsNu0qYl/iycOIlTQAA + +False +1,5707963267949 +15 +198p6BdSeEaxKD3wQV9XuAAA + + +False +1,5707963267949 +30 +198p6BdSeEaxKD3wQV9XuAAA + + +False +-1,5707963267949 +15 +198p6BdSeEaxKD3wQV9XuAAA + + + +clMaroon +747,512;728,457 +uiXuck7EPk2oWveZU/a4TAAA +/rQOisJOhUuYMeQQ3BK80AAA +fpwUdRW5hkWwKEy/+3sKSwAA + +False +1,5707963267949 +15 +uiXuck7EPk2oWveZU/a4TAAA + + +False +1,5707963267949 +30 +uiXuck7EPk2oWveZU/a4TAAA + + +False +-1,5707963267949 +15 +uiXuck7EPk2oWveZU/a4TAAA + + + +clMaroon +$00C7FAFE +108 +212 +194 +147 +0prIIKLkMEGPgRqp2BU5fgAA + + +3 +Personne + + +False + + +False + + + +0prIIKLkMEGPgRqp2BU5fgAA + + +0prIIKLkMEGPgRqp2BU5fgAA + + +False +0prIIKLkMEGPgRqp2BU5fgAA + + + +clMaroon +$00C7FAFE +40 +428 +161 +101 +G9/17fu5gk+JMUe7SdSe3gAA + + +1 +PersMorale + + +False + + +False + + + +G9/17fu5gk+JMUe7SdSe3gAA + + +G9/17fu5gk+JMUe7SdSe3gAA + + +False +G9/17fu5gk+JMUe7SdSe3gAA + + + +clMaroon +$00C7FAFE +220 +432 +161 +129 +yznALVr6DUS2a33p8W79HgAA + + +1 +PersPhysique + + +False + + +False + + + +yznALVr6DUS2a33p8W79HgAA + + +yznALVr6DUS2a33p8W79HgAA + + +False +yznALVr6DUS2a33p8W79HgAA + + + +clMaroon +142,428;172,358 +OUCrNl0fkUiZL3UUM0Cf+wAA +o5yQkbxi/k2aQjkHrZUJuAAA +M6WM748hZU+pLL07/7K+WgAA + +False +1,5707963267949 +15 +OUCrNl0fkUiZL3UUM0Cf+wAA + + +False +1,5707963267949 +30 +OUCrNl0fkUiZL3UUM0Cf+wAA + + +False +-1,5707963267949 +15 +OUCrNl0fkUiZL3UUM0Cf+wAA + + + +clMaroon +271,432;237,358 +LYeGArbWMUOm7hmc33Ox8AAA +o5yQkbxi/k2aQjkHrZUJuAAA +VvRRLH5Vl0yAMmxaiyJywQAA + +False +1,5707963267949 +15 +LYeGArbWMUOm7hmc33Ox8AAA + + +False +1,5707963267949 +30 +LYeGArbWMUOm7hmc33Ox8AAA + + +False +-1,5707963267949 +15 +LYeGArbWMUOm7hmc33Ox8AAA + + + +clMaroon +608,329;301,296 +GbByd6Z0y0Kb2yhbsrYtagAA +o5yQkbxi/k2aQjkHrZUJuAAA +/rQOisJOhUuYMeQQ3BK80AAA + +-0,401228907954293 +35,8468966578698 +possede +GbByd6Z0y0Kb2yhbsrYtagAA + + +False +1,5707963267949 +30 +GbByd6Z0y0Kb2yhbsrYtagAA + + +False +-1,5707963267949 +15 +GbByd6Z0y0Kb2yhbsrYtagAA + + +0,564243250112548 +22,8473193175917 +epHead ++titulaire +rZU76gV/okCjXC4qp4B2qQAA + + +0,251002748333364 +40,2616442783948 +epTail ++mesComptes +hcU19h11EUS+2tum7L1wQQAA + + +-0,673629132695913 +14,8660687473185 +epHead +1 +rZU76gV/okCjXC4qp4B2qQAA + + +-0,523598775598299 +25 +epTail +0..* +hcU19h11EUS+2tum7L1wQQAA + + +False +-0,785398163397448 +40 +epHead +rZU76gV/okCjXC4qp4B2qQAA + + +False +0,785398163397448 +40 +epTail +hcU19h11EUS+2tum7L1wQQAA + + +False +-1000 +-1000 +50 +8 +rZU76gV/okCjXC4qp4B2qQAA + + +False +-1000 +-1000 +50 +8 +hcU19h11EUS+2tum7L1wQQAA + + + +clMaroon +737,220;765,153 +wDC8lluls0GXh5gUJW5f+wAA +d6p7Qf8bIU6hdzrf8rh8cwAA +/rQOisJOhUuYMeQQ3BK80AAA + +False +1,5707963267949 +15 +wDC8lluls0GXh5gUJW5f+wAA + + +False +1,5707963267949 +30 +wDC8lluls0GXh5gUJW5f+wAA + + +False +-1,5707963267949 +15 +wDC8lluls0GXh5gUJW5f+wAA + + +False +-0,523598775598299 +30 +epHead +fQSaH/Far0ecMNHEmcTT2QAA + + +4 +-0,912897793484841 +50 +epTail ++tousLesCptes +1QMakf9KC0KGERE4iObljgAA + + +False +0,523598775598299 +25 +epHead +fQSaH/Far0ecMNHEmcTT2QAA + + +-5,38993459770326 +16,1245154965971 +epTail +0..* +1QMakf9KC0KGERE4iObljgAA + + +False +-0,785398163397448 +40 +epHead +fQSaH/Far0ecMNHEmcTT2QAA + + +False +0,785398163397448 +40 +epTail +1QMakf9KC0KGERE4iObljgAA + + +False +-1000 +-1000 +50 +8 +fQSaH/Far0ecMNHEmcTT2QAA + + +False +-1000 +-1000 +50 +8 +1QMakf9KC0KGERE4iObljgAA + + + +clMaroon +120,528;120,596;300,600;300,560 +O2WI+org7Emiw5044vdmxgAA +VvRRLH5Vl0yAMmxaiyJywQAA +M6WM748hZU+pLL07/7K+WgAA + +1,5707963267949 +15 +signe pour +O2WI+org7Emiw5044vdmxgAA + + +False +1,5707963267949 +30 +O2WI+org7Emiw5044vdmxgAA + + +False +-1,5707963267949 +15 +O2WI+org7Emiw5044vdmxgAA + + +1,09524454206213 +31,3049516849971 +epHead ++signataire +U42YY6zP20KPgsUFStrmvgAA + + +1,14483392551219 +43,4626276242015 +epTail ++entreprises +45TDQKIbgUCD6BF/rwHf7QAA + + +-1,05097566746584 +19,723082923316 +epHead +1 +U42YY6zP20KPgsUFStrmvgAA + + +-0,523598775598299 +25 +epTail +0..* +45TDQKIbgUCD6BF/rwHf7QAA + + +False +-0,785398163397448 +40 +epHead +U42YY6zP20KPgsUFStrmvgAA + + +False +0,785398163397448 +40 +epTail +45TDQKIbgUCD6BF/rwHf7QAA + + +False +-1000 +-1000 +50 +8 +U42YY6zP20KPgsUFStrmvgAA + + +False +-1000 +-1000 +50 +8 +45TDQKIbgUCD6BF/rwHf7QAA + + + +clMaroon +$00B9FFFF +301,256;688,140 +yh9SmpEocEWezRsmhkfaSwAA +d6p7Qf8bIU6hdzrf8rh8cwAA +o5yQkbxi/k2aQjkHrZUJuAAA + +False +1,5707963267949 +15 +yh9SmpEocEWezRsmhkfaSwAA + + +False +1,5707963267949 +30 +yh9SmpEocEWezRsmhkfaSwAA + + +False +-1,5707963267949 +15 +yh9SmpEocEWezRsmhkfaSwAA + + +False +-0,523598775598299 +30 +epHead +o6zYwCuEHkeFqVTrtO9aIQAA + + +False +0,523598775598299 +30 +epTail +lOowfyt6lkKrM627mEOb7QAA + + +0,523598775598299 +25 +epHead +1 +o6zYwCuEHkeFqVTrtO9aIQAA + + +-0,523598775598299 +25 +epTail +1..* +lOowfyt6lkKrM627mEOb7QAA + + +False +-0,785398163397448 +40 +epHead +o6zYwCuEHkeFqVTrtO9aIQAA + + +False +0,785398163397448 +40 +epTail +lOowfyt6lkKrM627mEOb7QAA + + +False +-1000 +-1000 +50 +8 +o6zYwCuEHkeFqVTrtO9aIQAA + + +False +-1000 +-1000 +50 +8 +lOowfyt6lkKrM627mEOb7QAA + + + + + +ComponentDiagram1 +ffu+sQonUkmnnnLWee8zjQAA + +3qtg4IKoEUmEcquK7IUJrAAA +3 + +clMaroon +$00B3FBDE +364 +148 +120 +70 +49s023C5hUaz5gk08FuPSAAA + + +packBQ + + +False + + +False + + + + +clMaroon +$00B3FBDE +116 +148 +120 +70 +uuX+/zYHakKXicfKpGQlXwAA + + +packPers + + +False + + +False + + + + +clMaroon +364,182;235,182 +SgoeLF7soEq9e8CLvGXlbAAA +VsLBMs67OECs3p+CMTTAxQAA +meOxz1uTxEOetMLY9yWKnQAA + +False +1,5707963267949 +15 +SgoeLF7soEq9e8CLvGXlbAAA + + +False +1,5707963267949 +30 +SgoeLF7soEq9e8CLvGXlbAAA + + +False +-1,5707963267949 +15 +SgoeLF7soEq9e8CLvGXlbAAA + + + + +13 + +ffu+sQonUkmnnnLWee8zjQAA +dTdkrIfwWEGGLDNgolaUZQAA +8/0vI5L0h0OdQRkhv4MzIgAA +4 +MEJE6Y6bS06+u3LtoyzMtQAA +oOrKU9tZDE2XfjyegHnU4QAA +r9d5+x1I8Eq9b6gCp5dY7gAA +4R5Z7oXq8E2ykVae0DFUTwAA + + +ffu+sQonUkmnnnLWee8zjQAA +VcA5uCWECU+sKooGPTnMWgAA +8/0vI5L0h0OdQRkhv4MzIgAA +4 +eyyqmc4pZU648zXoQRFYGgAA +BAqRGKJ8JEmafaFZ+w8Z/AAA +XiDsjtQ7Fku7cOrUsDEm4gAA +VWVWCVNmz0y+31eKUGFtagAA + + +ffu+sQonUkmnnnLWee8zjQAA +G9/17fu5gk+JMUe7SdSe3gAA +0prIIKLkMEGPgRqp2BU5fgAA +4 +MlvRXtEB+0iVwlL3a98VUwAA +UZhOhqjQEU2GsdphyU/rbwAA +MmJKbzKTW0uKzaQjLpF3agAA +it4QylLmjUKEewDnPROgkAAA + + +ffu+sQonUkmnnnLWee8zjQAA +yznALVr6DUS2a33p8W79HgAA +0prIIKLkMEGPgRqp2BU5fgAA +4 +DSkd/ffN9kqKxFdlgoHMAwAA +MVzaF+D3VUa38QEmaC73egAA +H5PGMfyf1kSvH8dx3IPpvAAA +7OsWkzoFrk22mRE5P6ZEhQAA + + +possede +ffu+sQonUkmnnnLWee8zjQAA +4 +LYo6Q2U0PU+Zsvppy1AzAAAA +ndR3L2YeIkipUEAjXjpVnwAA +3QaK5tT83kWDdRw0Zm8ztQAA +W17sGu0jSUeAu9teft5iFQAA +2 + +mesComptes +0..* +GbByd6Z0y0Kb2yhbsrYtagAA +8/0vI5L0h0OdQRkhv4MzIgAA +4 +yJ48Jx8z20ijkudfOr+nRwAA +3f6N7wGkdU+VKWcXLnNP1AAA +8oKGJLfYd0qlO8LyIid2IgAA +Ms7AJbFi/0uaIIixQx7jqAAA + + +titulaire +False +1 +GbByd6Z0y0Kb2yhbsrYtagAA +0prIIKLkMEGPgRqp2BU5fgAA +4 +h0h7wVvhiE2gk3+l2hXhhQAA +eEn865CNg0m2/g4yRmkPoAAA +NGaPss6bMEChkXrSMk2w/QAA +rs5UwGeAKUikX1kUVbNogwAA + + + +ffu+sQonUkmnnnLWee8zjQAA +4 +yvdKesWGOEW3AbuNRkotoQAA +Nq4xbXW8IUW+J+ZQq0LqlwAA +aQtKxV4R+EW0jHx6+LbQoQAA +Yxj/28+MXUSkU29H8K7JhAAA +2 + +tousLesCptes +skClassifier +0..* +wDC8lluls0GXh5gUJW5f+wAA +8/0vI5L0h0OdQRkhv4MzIgAA +4 +wH5Ua8jfQUG3tiA0c9GC3wAA +C7lmOqRXB0OvacEIGxGISgAA +yWc3TUd6Yk28WJ2ueeTLNQAA +M1F7Sm11qEWtpnw4MuWrKwAA + + +akComposite +wDC8lluls0GXh5gUJW5f+wAA +EtbkhLLnaU2ptS8r5qJWEwAA +4 +GSFpayZm2U6kFUaHSKFmcAAA +sDFVW/pW90qxKj9WGaEongAA +dqDl7LFAVkSqWVdm2EZfegAA +eTC31hPNDE+yCruZNa6pLgAA + + + +signe pour +ffu+sQonUkmnnnLWee8zjQAA +4 +ZIFgqiNNLkeNJytywGfABQAA +14zdrAtePUiU2OAOiRwHqgAA +HHuXR1fiT0GTuoeIOjPuCQAA +WwCYFXA4fkytITsBv77PCAAA +2 + +entreprises +0..* +O2WI+org7Emiw5044vdmxgAA +G9/17fu5gk+JMUe7SdSe3gAA +4 +C1tNJTZ+1EmNJe8KODeiWAAA +UHTCVDVHF02l+i8VA1V5CAAA +EKqjJ6uVXka6KqmgJz+lSwAA +z7nbP3ntt0mlQCoHETWGUQAA + + +signataire +False +1 +O2WI+org7Emiw5044vdmxgAA +yznALVr6DUS2a33p8W79HgAA +4 +GNLwXYsscUCUGviMa1UdcAAA +Ob6eBHNnjEawbso55G7jHQAA ++dVJGuzbAECIADxc1BF3NgAA +PJNllHUlZUW6bqTYykI/RQAA + + + +ffu+sQonUkmnnnLWee8zjQAA +8/0vI5L0h0OdQRkhv4MzIgAA +yznALVr6DUS2a33p8W79HgAA + + +ffu+sQonUkmnnnLWee8zjQAA +0prIIKLkMEGPgRqp2BU5fgAA +yznALVr6DUS2a33p8W79HgAA + + +ffu+sQonUkmnnnLWee8zjQAA +49s023C5hUaz5gk08FuPSAAA +uuX+/zYHakKXicfKpGQlXwAA +4 +l0yz5pYVoEiAiyy6XZ77lwAA +hhmVLtP3R0+cK19bR0AnQAAA +2AJEXQE86EOq3yBNnT1y/wAA +sJc9Ue5oHUa6gR0w4jU6uQAA + + +packBQ +ffu+sQonUkmnnnLWee8zjQAA +2 +9G99o5P69ESUMuwf57kHsQAA +meOxz1uTxEOetMLY9yWKnQAA +1 +SgoeLF7soEq9e8CLvGXlbAAA +4 + +CompteDepot +49s023C5hUaz5gk08FuPSAAA +4 +SuISNdsNu0qYl/iycOIlTQAA +3Drdar8zE02tbXEfPp/nMwAA +L53s48iaWESS7O3tkO1PQgAA +ObaA77feT0iZkZvH6X+S5AAA +1 +198p6BdSeEaxKD3wQV9XuAAA +2 + +retirer +dTdkrIfwWEGGLDNgolaUZQAA +1 + +s +double +A2KfmgryAkSij4fzHhxmJwAA + + + +getType +dTdkrIfwWEGGLDNgolaUZQAA +1 + +pdkReturn +String +lZzp+0ItSU+FIqPI4Uj7qAAA + + +3 + +c-agios +vkProtected +skClassifier +int +0.12 +dTdkrIfwWEGGLDNgolaUZQAA + + +c-Type +vkProtected +skClassifier +"Depot" +dTdkrIfwWEGGLDNgolaUZQAA + + +montantDecouvert +vkProtected +double +dTdkrIfwWEGGLDNgolaUZQAA + + + +CompteEpargne +49s023C5hUaz5gk08FuPSAAA +4 +fpwUdRW5hkWwKEy/+3sKSwAA +9yBKNE7dGUCD9nroxDX3eQAA +Uu5G6tOyj0KlimVRVDsg4gAA +FQTnEO0I3Uyz4b/5SJMMRAAA +1 +uiXuck7EPk2oWveZU/a4TAAA +3 + +retirer +VcA5uCWECU+sKooGPTnMWgAA +1 + +s +double +3MRfAqffoE+KR4j+zOZuUwAA + + + +projection +VcA5uCWECU+sKooGPTnMWgAA +2 + +nbAnnees +int +sgswUf1HV0KX2fn3wRb69AAA + + +Parameter1 +pdkReturn +double +sgswUf1HV0KX2fn3wRb69AAA + + + +getType +VcA5uCWECU+sKooGPTnMWgAA +1 + +pdkReturn +String +6zSfZ++7WkKvMmhWR4wAvgAA + + +4 + +c-tauxInteret +vkProtected +skClassifier +double +0.035 +VcA5uCWECU+sKooGPTnMWgAA + + +c-Type +vkProtected +skClassifier +"Epargne" +VcA5uCWECU+sKooGPTnMWgAA + + +anneeOuverture +vkProtected +int +VcA5uCWECU+sKooGPTnMWgAA + + +c-delaiMinimum +vkProtected +skClassifier +int +4 +VcA5uCWECU+sKooGPTnMWgAA + + + +Compte +True +49s023C5hUaz5gk08FuPSAAA +4 +/rQOisJOhUuYMeQQ3BK80AAA +PSX7t2Lh3kSYrlwqb5x2agAA +F0lEZQ+R7EueW5by2eD3dAAA +JJ5AXq+WP0Gm89yC4o/NngAA +1 +DkkzurS/Fk6z5bjsAk38nAAA +2 +198p6BdSeEaxKD3wQV9XuAAA +uiXuck7EPk2oWveZU/a4TAAA +8 + +deposer +8/0vI5L0h0OdQRkhv4MzIgAA +1 + +s +double +9mzzSt+2d0y1++yNAbD42gAA + + + +retirer +True +8/0vI5L0h0OdQRkhv4MzIgAA +1 + +s +double +83H4Yftt0EShd4acKC+j6wAA + + + +getTitulaire +8/0vI5L0h0OdQRkhv4MzIgAA +1 + +Parameter1 +pdkReturn +Personne +0jiY6peEbUuN7ty9ajWThwAA +0prIIKLkMEGPgRqp2BU5fgAA + + + +getSignataire +8/0vI5L0h0OdQRkhv4MzIgAA +1 + +Parameter1 +pdkReturn +PersPhysique +in8HyJ+e3EiSSXB8uksHiQAA +yznALVr6DUS2a33p8W79HgAA + + + +ouvrir +8/0vI5L0h0OdQRkhv4MzIgAA + + +fermer +8/0vI5L0h0OdQRkhv4MzIgAA + + +interdireRetrait +8/0vI5L0h0OdQRkhv4MzIgAA + + +getType +True +8/0vI5L0h0OdQRkhv4MzIgAA +1 + +Parameter1 +pdkReturn +String +VyTyFD83TEqhvefVS9s4UwAA + + +2 +hcU19h11EUS+2tum7L1wQQAA +1QMakf9KC0KGERE4iObljgAA +6 + +noCpte +vkProtected +int +8/0vI5L0h0OdQRkhv4MzIgAA + + +solde +vkProtected +double +0 +8/0vI5L0h0OdQRkhv4MzIgAA + + +etat +vkProtected +int +8/0vI5L0h0OdQRkhv4MzIgAA + + +FERME +vkProtected +skClassifier +ckFrozen +skClassifier +int +0 +8/0vI5L0h0OdQRkhv4MzIgAA + + +OUVERT +vkProtected +skClassifier +ckFrozen +int +1 +8/0vI5L0h0OdQRkhv4MzIgAA + + +DEPOT +vkProtected +skClassifier +ckFrozen +int +2 +8/0vI5L0h0OdQRkhv4MzIgAA + +1 +p/ZNlSd2LE2+OoaB8FLokQAA + + +Banque +Singleton +49s023C5hUaz5gk08FuPSAAA +4 +d6p7Qf8bIU6hdzrf8rh8cwAA +JMPblkVh2EmH06ul5BoytgAA +eE62CxdJPEKot3Xob8EAFQAA +BUqDLzUrXkC6C6TWbY0j7gAA +2 + +listerLesCptes +skClassifier +EtbkhLLnaU2ptS8r5qJWEwAA +1 + +pdkReturn +Vector<Compte> +ORRwOetIBEusGryb5ZKA2gAA + + + +getCompte +skClassifier +EtbkhLLnaU2ptS8r5qJWEwAA +2 + +pdkReturn +Compte +qKPOsoMuFkGDpRgd7AhHKQAA + + +no +int +qKPOsoMuFkGDpRgd7AhHKQAA + + +2 +fQSaH/Far0ecMNHEmcTT2QAA +o6zYwCuEHkeFqVTrtO9aIQAA + + + +packPers +ffu+sQonUkmnnnLWee8zjQAA +2 +U4OZdIEXS0iP2K7jW3ljWQAA +VsLBMs67OECs3p+CMTTAxQAA +1 +SgoeLF7soEq9e8CLvGXlbAAA +3 + +Personne +True +uuX+/zYHakKXicfKpGQlXwAA +4 +o5yQkbxi/k2aQjkHrZUJuAAA +QFHO0w31TkOWcMn+s317EgAA +hXX9Re4OiUCZjndypoTmKQAA +MbQ3E3CD2USmdvE/EN6YOgAA +1 +xbrkgDRL4k+f4AMQBqzkPAAA +2 +OUCrNl0fkUiZL3UUM0Cf+wAA +LYeGArbWMUOm7hmc33Ox8AAA +4 + +interdire +0prIIKLkMEGPgRqp2BU5fgAA + + +autoriser +0prIIKLkMEGPgRqp2BU5fgAA + + +getSignataire +True +0prIIKLkMEGPgRqp2BU5fgAA +1 + +Parameter1 +pdkReturn +PersPhysique +6Nsg8mchrEa1lZTLsXWc8AAA +yznALVr6DUS2a33p8W79HgAA + + + +getMesComptes +0prIIKLkMEGPgRqp2BU5fgAA +1 + +pdkReturn +Vector<Compte> +0HrUxXIOHUSU+IWZHG3mzQAA + + +1 +V5VRAZrxZ0+cbu5nbSAOUAAA +2 +rZU76gV/okCjXC4qp4B2qQAA +lOowfyt6lkKrM627mEOb7QAA +4 + +nom +vkProtected +String +0prIIKLkMEGPgRqp2BU5fgAA + + +id +vkProtected +int +0prIIKLkMEGPgRqp2BU5fgAA + + +adresse +vkProtected +String +0prIIKLkMEGPgRqp2BU5fgAA + + +interditBQ +vkProtected +boolean +false +0prIIKLkMEGPgRqp2BU5fgAA + + + +PersMorale +uuX+/zYHakKXicfKpGQlXwAA +4 +M6WM748hZU+pLL07/7K+WgAA +D2xl7MCfSEWEV3+3pzAdQAAA +pN7G+K1s6ESk7EE1cyO0cAAA +Pp0cGufzOEuaLmqNuvZ5HQAA +1 +OUCrNl0fkUiZL3UUM0Cf+wAA +1 + +getSignataire +G9/17fu5gk+JMUe7SdSe3gAA +1 + +pdkReturn +PersPhysique +XT05siiNakCfWBywLOnV6QAA +yznALVr6DUS2a33p8W79HgAA + + +1 +45TDQKIbgUCD6BF/rwHf7QAA +2 + +nature +vkProtected +String +G9/17fu5gk+JMUe7SdSe3gAA + + +domaine +vkProtected +String +G9/17fu5gk+JMUe7SdSe3gAA + + + +PersPhysique +uuX+/zYHakKXicfKpGQlXwAA +4 +VvRRLH5Vl0yAMmxaiyJywQAA +mThM6eBn4kqHuzHrFIi2hQAA +jcyYgQju40CadrJ2/0shfwAA +y8kzBu00kEq5BJZQdJOVGAAA +2 +DkkzurS/Fk6z5bjsAk38nAAA +xbrkgDRL4k+f4AMQBqzkPAAA +1 +LYeGArbWMUOm7hmc33Ox8AAA +1 + +getSignataire +yznALVr6DUS2a33p8W79HgAA +1 + +Parameter1 +pdkReturn +PersPhysique +XAIjOjaV60K99qHyF6fn+wAA +yznALVr6DUS2a33p8W79HgAA + + +4 +1wVZZpfp1U+O7f0z7WIjVAAA +MxVQo4fZdUCn8F+YA3keRAAA +Owmn2op/vkeoK3i8ZWdDFQAA +AGmnKTFqv0m6AY3uH7C/ngAA +1 +U42YY6zP20KPgsUFStrmvgAA +3 + +titre +vkProtected +String +yznALVr6DUS2a33p8W79HgAA + + +prenom +vkProtected +String +yznALVr6DUS2a33p8W79HgAA + + +signature +vkProtected +String +yznALVr6DUS2a33p8W79HgAA + + + + +ffu+sQonUkmnnnLWee8zjQAA +4 +sOti0MwkOkSLt1yGzs9NuAAA +OPK4LSJe20y5xS5iHC4WWAAA +iBt3rtxUakeiu6Em1sZdDgAA +fw+4K92E5UGhOXJGAW8KjgAA +2 + +1..* +yh9SmpEocEWezRsmhkfaSwAA +0prIIKLkMEGPgRqp2BU5fgAA +4 +a7qbodJ7O0COeC+8PFTAEgAA +mHQHJuEx70il5I8QA8Zu2AAA +cLl/B5OBCUOCZVNsl2h23wAA +UhhmcR7S1U6mqRuytloyDwAA + + +False +akComposite +1 +yh9SmpEocEWezRsmhkfaSwAA +EtbkhLLnaU2ptS8r5qJWEwAA +4 +sWKM7XXyukiEUSNHaYdoJAAA +Vecq+IsJdkOlIEzj7qDazAAA +Oh+sJM66/0KoptCDGAUFAgAA +I+jviStowUqcjMnRspyIFAAA + + +1 + +CollaborationInstanceSet1 +ffu+sQonUkmnnnLWee8zjQAA +1 + +InteractionInstanceSet1 +4vBHr0vZVEaQD25xyckCBgAA +1 + +Diagramme de séquence +b/1pMYskkEiWkGGbNeZIJwAA + +SAmegghrTkOB9elrB1DBZQAA +1 + +clMaroon +$00B9FFFF +608 +32 +70 +350 +p/ZNlSd2LE2+OoaB8FLokQAA + + +4 + : Compte + + +False + + +False + + + +p/ZNlSd2LE2+OoaB8FLokQAA + + + + + +1 + +8/0vI5L0h0OdQRkhv4MzIgAA +4vBHr0vZVEaQD25xyckCBgAA +2 +OjZHDWgypk2bFZjnMkLmKgAA +aL6IXFvEbEqVIU44AYcZ0gAA + + + + +Implementation Model +UMLStandard +implementationModel +tbB+QZldeEOREeb/ealOnAAA +1 + +Main +B1UBKTaOXUajLLP2IHjkJwAA + +iJ+bD/7cg0OjHpH5HgTTZQAA + + + + +Deployment Model +UMLStandard +deploymentModel +tbB+QZldeEOREeb/ealOnAAA +1 + +Main +kvTxBLlwp0agfC5PGl2LnwAA + +5Z+yL/30bE2uyCWg0KMl8QAA + + + + + + diff --git a/G54/comtpesBanque.xmi b/G54/comtpesBanque.xmi new file mode 100644 index 0000000..4665f47 --- /dev/null +++ b/G54/comtpesBanque.xmi @@ -0,0 +1,642 @@ + + + + + umbrello uml modeller http://uml.sf.net + 1.5.5 + UnicodeUTF8 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/G5a/MainFrame.java b/G5a/MainFrame.java new file mode 100644 index 0000000..9e2dbba --- /dev/null +++ b/G5a/MainFrame.java @@ -0,0 +1,127 @@ +package ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JToolBar; + +public class MainFrame extends JFrame { + + /** le label de la barre de status */ + private JLabel jLabelStatus = new JLabel(""); + + /** le panel de dessin central */ + private JPanel jPanelDessin = new JPanel(); + + + /** + *

Constructeur par défaut.

+ * + */ + public MainFrame() { + // ********************************************************************** // + + // création du menu Fichier + JMenu jMenuFichier = new JMenu("Fichier"); + JMenuItem jMenuFichier_Ouvrir = new JMenuItem("Ouvrir"); + JMenuItem jMenuFichier_Sauvegarder = new JMenuItem("Sauvegarder"); + JMenuItem jMenuFichier_Quitter = new JMenuItem("Quitter"); + jMenuFichier.add(jMenuFichier_Ouvrir); + jMenuFichier.add(jMenuFichier_Sauvegarder); + jMenuFichier.addSeparator(); + jMenuFichier.add(jMenuFichier_Quitter); + + // création du menu Edition + JMenu jMenuEdition = new JMenu("Edition"); + JMenuItem jMenuEdition_Preferences = new JMenuItem("Préférences"); + jMenuEdition.add(jMenuEdition_Preferences); + + // création de la barre de menus + JMenuBar jMenuBar = new JMenuBar(); + jMenuBar.add(jMenuFichier); + jMenuBar.add(jMenuEdition); + + // création de la barre de status + JPanel jPanelStatus = new JPanel(); + jPanelStatus.add(jLabelStatus); + + // création de la barre d'outils + JButton jButton_Pinceau = new JButton("P"); + JButton jButton_Rectangle = new JButton("R"); + JButton jButton_Cercle = new JButton("C"); + + JToolBar jToolBar = new JToolBar(JToolBar.VERTICAL); + jToolBar.add(jButton_Pinceau); + jToolBar.add(jButton_Rectangle); + jToolBar.add(jButton_Cercle); + + // panel de dessin + jPanelDessin.setBackground(Color.WHITE); + + // construction de la maquette + this.setLayout(new BorderLayout()); + this.add(jToolBar, BorderLayout.WEST); + this.add(jPanelDessin, BorderLayout.CENTER); + this.add(jPanelStatus, BorderLayout.SOUTH); + this.setJMenuBar(jMenuBar); + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + this.setSize(600, 400); + this.setLocation(200,200); + this.setTitle("Mon Paint"); + + + // ********************************************************************** // + + + // menu Fichier - bouton Quitter + jMenuFichier_Quitter.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent ev) { + menuFichier_Quitter(); + } + }); + + // menu Fichier - bouton Ouvrir + jMenuFichier_Ouvrir.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent ev) { + menuFichier_Ouvrir(); + } + }); + } + + /** + *

Action du bouton Quitter du menu Fichier.<.p> + * + */ + public void menuFichier_Quitter() { + System.exit(0); + } + + /** + *

Action du bouton Ouvrir du menu Fichier.<.p> + * + */ + public void menuFichier_Ouvrir() { + this.setStatus("Ouverture en cours..."); + } + + /** + * + */ + public void setStatus(String status) { + this.jLabelStatus.setText(status); + } + + + static public void main(String[] args) { + new MainFrame().setVisible(true); + } +} \ No newline at end of file diff --git a/G5a/PiecesComposites/IHM.java b/G5a/PiecesComposites/IHM.java new file mode 100644 index 0000000..af3df00 --- /dev/null +++ b/G5a/PiecesComposites/IHM.java @@ -0,0 +1,16 @@ +// @ Projet : Untitled +// @ Nom de fichier : IHM.java +// @ Date : 01/10/2007 +// @ Auteur : +// +// + + + + +/** + * Interface avec l'utilisateur + * Utilise les classes mtiers +**/ +public class IHM implements Stocks { +} diff --git a/G5a/PiecesComposites/Pieces composites.java b/G5a/PiecesComposites/Pieces composites.java new file mode 100644 index 0000000..61d2050 --- /dev/null +++ b/G5a/PiecesComposites/Pieces composites.java @@ -0,0 +1,67 @@ +// @ Projet : Untitled +// @ Nom de fichier : Pices composites.java +// @ Date : 01/10/2007 +// @ Auteur : +// +// + + + + +/** + * Pices types dites Composites +**/ +public class Pices composites extends Stocks, Pices { + /** + * Nombre total de pices de base qui entrent dans la fabrication de la pice composite + **/ + private double complexitPice; + + /** + * Prix d'achat de la pice = prix de revient de toutes les pices de base qui la composent + cot d'assemblage + **/ + private double prixHAPice; + + /** + * Cot d'assemblage de la pice composite + **/ + private double coutAssemblagePice; + + /** + * Marge de la pice = 25 % ! + **/ + private double margePice = 0.25; + + public Pices composites compos de; + + /** + * Calcule le prix de revient de la pice composite + **/ + public void calculPrixRevient() { + + } + + /** + * Donne la complexit d'une pice composite + **/ + public void donneComplexit() { + + } + + /** + * Ajouter un composant en donnant son identifiant et le cot d'assemblage supplmentaire + * + * @param identifiantPice + * @param coutAssemblage + **/ + public void ajouterComposant(Object identifiantPice, Object coutAssemblage) { + + } + + /** + * Calcul du prix de revient de la pice (abstrait) + **/ + public void calculPrixRevient() { + + } +} diff --git a/G5a/PiecesComposites/Pieces de base.java b/G5a/PiecesComposites/Pieces de base.java new file mode 100644 index 0000000..048b451 --- /dev/null +++ b/G5a/PiecesComposites/Pieces de base.java @@ -0,0 +1,38 @@ +// @ Projet : Untitled +// @ Nom de fichier : Pices de base.java +// @ Date : 01/10/2007 +// @ Auteur : +// +// + + + + +/** + * Pices types dites de Base +**/ +public class Pices de base extends Stocks, Pices { + /** + * Prix d'achat d'une pice (= prix de revient) + **/ + private double prixHAPice; + + /** + * Marge de la pice = 10 % ! + **/ + private double margePice = 0.1; + + /** + * Permet de calculer le prix de revient d'une pice + **/ + public void calculPrixRevient() { + + } + + /** + * Calcul du prix de revient de la pice (abstrait) + **/ + public void calculPrixRevient() { + + } +} diff --git a/G5a/PiecesComposites/Pieces.java b/G5a/PiecesComposites/Pieces.java new file mode 100644 index 0000000..2484108 --- /dev/null +++ b/G5a/PiecesComposites/Pieces.java @@ -0,0 +1,82 @@ +// @ Projet : Untitled +// @ Nom de fichier : Pices.java +// @ Date : 01/10/2007 +// @ Auteur : +// +// + + + + +/** + * Classe abstraite Pice +**/ +public abstract class Pices { + /** + * Identifie la pice (unique) + **/ + private int identifiant Pice; + + /** + * Numro de la prochaine pice + **/ + private static int s-prochainePice; + + /** + * Prix d'achat de la pice + **/ + private double prixHAPice; + + /** + * Prix de vente HT de la pice + **/ + private double prixVenteHTPice; + + /** + * Dnommination de la pice + **/ + private String nomPice; + + /** + * Marge de la pice + **/ + private double margePice; + + /** + * Prix de vente TTC de la pice + **/ + private double prixVenteTTC; + + /** + * Calcul du prix de revient de la pice (abstrait) + **/ + public abstract void calculPrixRevient(); + + /** + * Donne le nom de la pice + **/ + public void donneNom() { + + } + + /** + * Donne le prix d'achat de la pice + **/ + public void donnePrixHA() { + + } + + /** + * Donne le prix de vente hors taxes de la pice + **/ + public void donnePrixVenteHTPice() { + + } + + /** + * Donne le prix de vente TTC de la pice + **/ + public void donnePrixVenteTTC() { + + } +} diff --git a/G5a/PiecesComposites/Stocks.java b/G5a/PiecesComposites/Stocks.java new file mode 100644 index 0000000..1ec1ea9 --- /dev/null +++ b/G5a/PiecesComposites/Stocks.java @@ -0,0 +1,54 @@ +// @ Projet : Untitled +// @ Nom de fichier : Stocks.java +// @ Date : 01/10/2007 +// @ Auteur : +// +// + + + + +/** + * Gestion des stockes de pices +**/ +public abstract class Stocks { + public Pices colPices; + /** + * Permet l'ajout d'une pice dans les stocks + * + * @param nom + * @param PA + **/ + public static void s-ajouterPice(String nom, double PA) { + + } + + /** + * Supprime une pice dans les stocks + * + * @param nom + * @param CA + * @param composants + **/ + public static final void s-supprimerPice(String nom, double CA, Pices composants) { + + } + + /** + * Affiche la pice la plus complexe : + * Code + * Nom + * Prix de revient + * Complexit + **/ + public static void s-affichePicePlusComplexe() { + + } + + /** + * Liste des pices + **/ + public static Pices s-listePices() { + + } +} diff --git a/G5a/PiecesComposites/piecesComposites.jpg b/G5a/PiecesComposites/piecesComposites.jpg new file mode 100644 index 0000000..b894242 Binary files /dev/null and b/G5a/PiecesComposites/piecesComposites.jpg differ diff --git a/G5a/PiecesComposites/piecesComposites.uml b/G5a/PiecesComposites/piecesComposites.uml new file mode 100644 index 0000000..e2c8f19 --- /dev/null +++ b/G5a/PiecesComposites/piecesComposites.uml @@ -0,0 +1,1142 @@ + + + + + + +UMLStandard +Java + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +NG3Xdw2jfUa/Xs7/0RXqUQAA +1 + +Main +xXrAD4WEmEmbxk/GrCWTwAAA + +s5KWfwuVLk2K6LYe1OlH8QAA + + + + +Analysis Model +UMLStandard +analysisModel +NG3Xdw2jfUa/Xs7/0RXqUQAA +1 + +Main +True +RobustnessDiagram +ZaQw0is+10efZx4ADCJSJQAA + +cI3/QWH5f0GxRJEeiCz7dAAA + + + + +Design Model +UMLStandard +designModel +NG3Xdw2jfUa/Xs7/0RXqUQAA +1 + +Main +True +fx/GlhWdn0aUUmgV9Z5sGQAA + +XYQ+s1iQlkOsXJ+VNVWXjwAA +11 + +clMaroon +$00B9FFFF +204 +4 +350 +108 +V8a3VSnIHE+RVWQsMPm9GAAA + + +3 +Stocks + + +<<Singleton>> + + +False + + + +V8a3VSnIHE+RVWQsMPm9GAAA + + +V8a3VSnIHE+RVWQsMPm9GAAA + + +False +V8a3VSnIHE+RVWQsMPm9GAAA + + + +clMaroon +$00B9FFFF +68 +456 +161 +82 +qEVuYwkk1UmJUsJdZvuY4AAA + + +1 +Pièces de base + + +False + + +False + + + +qEVuYwkk1UmJUsJdZvuY4AAA + + +qEVuYwkk1UmJUsJdZvuY4AAA + + +False +qEVuYwkk1UmJUsJdZvuY4AAA + + + +clMaroon +$00B9FFFF +336 +448 +300 +134 +bx7uG2v34Ei6kaSziKF4UAAA + + +1 +Pièces composites + + +False + + +False + + + +bx7uG2v34Ei6kaSziKF4UAAA + + +bx7uG2v34Ei6kaSziKF4UAAA + + +False +bx7uG2v34Ei6kaSziKF4UAAA + + + +clMaroon +$00B9FFFF +334,192;360,111 +xHKLdvFIX0yXq9YQUmWBLgAA +AnSCTghudkeCg+vmNOf/VwAA +TzWK0b3vLk+VojPVWqW2MAAA + +1,5707963267949 +15 +gère +xHKLdvFIX0yXq9YQUmWBLgAA + + +False +1,5707963267949 +30 +xHKLdvFIX0yXq9YQUmWBLgAA + + +False +-1,5707963267949 +15 +xHKLdvFIX0yXq9YQUmWBLgAA + + +False +-0,523598775598299 +30 +epHead +b3OEqqNKw0S4craAMqFjBQAA + + +-4,90557018007751 +37,3630833845388 +epTail ++colPièces +FSXRNQRO5k+xkXXtxmii8wAA + + +0,523598775598299 +25 +epHead +1 +b3OEqqNKw0S4craAMqFjBQAA + + +-0,523598775598299 +25 +epTail +* +FSXRNQRO5k+xkXXtxmii8wAA + + +False +-0,785398163397448 +40 +epHead +b3OEqqNKw0S4craAMqFjBQAA + + +False +0,785398163397448 +40 +epTail +FSXRNQRO5k+xkXXtxmii8wAA + + +False +-1000 +-1000 +50 +8 +b3OEqqNKw0S4craAMqFjBQAA + + +False +-1000 +-1000 +50 +8 +FSXRNQRO5k+xkXXtxmii8wAA + + + +clMaroon +$00B9FFFF +180 +192 +244 +199 +Bm1KuAASdkyBVgyjMd+yfgAA + + +3 +Pièces + + +False + + +False + + + +Bm1KuAASdkyBVgyjMd+yfgAA + + +Bm1KuAASdkyBVgyjMd+yfgAA + + +False +Bm1KuAASdkyBVgyjMd+yfgAA + + + +clMaroon +$00B9FFFF +178,456;227,390 +fDWaAF3yoUCF7uw7g1ZigQAA +TzWK0b3vLk+VojPVWqW2MAAA +Z7+K5Ws57kWHrSm1PgE9ewAA + +False +1,5707963267949 +15 +fDWaAF3yoUCF7uw7g1ZigQAA + + +False +1,5707963267949 +30 +fDWaAF3yoUCF7uw7g1ZigQAA + + +False +-1,5707963267949 +15 +fDWaAF3yoUCF7uw7g1ZigQAA + + + +clMaroon +$00B9FFFF +431,448;383,390 +ovEu64d0ZkW8LrDdTAEzzgAA +TzWK0b3vLk+VojPVWqW2MAAA +qTju6qqskkqiN2qbhnsrbQAA + +False +1,5707963267949 +15 +ovEu64d0ZkW8LrDdTAEzzgAA + + +False +1,5707963267949 +30 +ovEu64d0ZkW8LrDdTAEzzgAA + + +False +-1,5707963267949 +15 +ovEu64d0ZkW8LrDdTAEzzgAA + + + +clMaroon +$00B9FFFF +228,500;336,506 +IJxxYjDxwU6TwtYdodYCZwAA +qTju6qqskkqiN2qbhnsrbQAA +Z7+K5Ws57kWHrSm1PgE9ewAA + +1,5707963267949 +15 +composé de > +IJxxYjDxwU6TwtYdodYCZwAA + + +False +1,5707963267949 +30 +IJxxYjDxwU6TwtYdodYCZwAA + + +False +-1,5707963267949 +15 +IJxxYjDxwU6TwtYdodYCZwAA + + +False +-0,523598775598299 +30 +epHead +8DbMQ1GsvEatJKe0eDPDlQAA + + +False +0,523598775598299 +30 +epTail +BZsbN/QVZE+SFQOiEUur/wAA + + +0,523598775598299 +25 +epHead +1 +8DbMQ1GsvEatJKe0eDPDlQAA + + +-0,523598775598299 +25 +epTail +* +BZsbN/QVZE+SFQOiEUur/wAA + + +False +-0,785398163397448 +40 +epHead +8DbMQ1GsvEatJKe0eDPDlQAA + + +False +0,785398163397448 +40 +epTail +BZsbN/QVZE+SFQOiEUur/wAA + + +False +-1000 +-1000 +50 +8 +8DbMQ1GsvEatJKe0eDPDlQAA + + +False +-1000 +-1000 +50 +8 +BZsbN/QVZE+SFQOiEUur/wAA + + + +clMaroon +$00B9FFFF +lsRectilinear +485,581;485,632;664,632;664,514;635,514 +jMOJoJ88VUiYFs9KftDvzAAA +qTju6qqskkqiN2qbhnsrbQAA +qTju6qqskkqiN2qbhnsrbQAA + +-0,91116759824185 +62,00806399171 +composé de > +jMOJoJ88VUiYFs9KftDvzAAA + + +False +1,5707963267949 +30 +jMOJoJ88VUiYFs9KftDvzAAA + + +False +-1,5707963267949 +15 +jMOJoJ88VUiYFs9KftDvzAAA + + +False +-0,523598775598299 +30 +epHead +bm51OJSIMkiy0LPbyqJ53gAA + + +False +0,523598775598299 +30 +epTail +4O92N74nOkuKMR7QYoA8rQAA + + +0,523598775598299 +25 +epHead +1 +bm51OJSIMkiy0LPbyqJ53gAA + + +-0,523598775598299 +25 +epTail +* +4O92N74nOkuKMR7QYoA8rQAA + + +False +-0,785398163397448 +40 +epHead +bm51OJSIMkiy0LPbyqJ53gAA + + +False +0,785398163397448 +40 +epTail +4O92N74nOkuKMR7QYoA8rQAA + + +False +-1004 +-1000 +50 +8 +bm51OJSIMkiy0LPbyqJ53gAA + + +False +-1004 +-1000 +50 +8 +4O92N74nOkuKMR7QYoA8rQAA + + + +clMaroon +$00B9FFFF +660 +28 +128 +89 +du2nBE7k20W1Xnf5uDzrzAAA + + +1 +IHM + + +False + + +False + + + +du2nBE7k20W1Xnf5uDzrzAAA + + +du2nBE7k20W1Xnf5uDzrzAAA + + +False +du2nBE7k20W1Xnf5uDzrzAAA + + + +clMaroon +$00B9FFFF +660,69;553,64 +wDZiZUkHtUGm+JutWDEVaQAA +AnSCTghudkeCg+vmNOf/VwAA +WgSONCLkd0iZnk7Fe9vAEQAA + +False +1,5707963267949 +15 +wDZiZUkHtUGm+JutWDEVaQAA + + +False +1,5707963267949 +30 +wDZiZUkHtUGm+JutWDEVaQAA + + +False +-1,5707963267949 +15 +wDZiZUkHtUGm+JutWDEVaQAA + + + + +15 + +Stocks +Gestion des stockes de pièces + +Singleton +True +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +AnSCTghudkeCg+vmNOf/VwAA +CsFOASFoTEKzZwtWOGNJGAAA ++WvuNsgwH0iRrNOgBoZKSQAA +tnW3ton+gEaIfHOI/q/95AAA +1 +wDZiZUkHtUGm+JutWDEVaQAA +2 +P4xyOY/hW0q2VdGuktBsTAAA +MaQTL1dKSky/+TXFSSF3sgAA +4 + +s-ajouterPièce +Permet l'ajout d'une pièce dans les stocks + +skClassifier +V8a3VSnIHE+RVWQsMPm9GAAA +3 + +pdkReturn +void +ASTL25uJTEWfnzqnaE1ycwAA + + +nom +String +ASTL25uJTEWfnzqnaE1ycwAA + + +PA +double +ASTL25uJTEWfnzqnaE1ycwAA + + + +s-supprimerPièce +Supprime une pièce dans les stocks +skClassifier +True +V8a3VSnIHE+RVWQsMPm9GAAA +4 + +pdkReturn +void +8a9T5ebAr0ydQG1M9qvHnwAA + + +nom +String +8a9T5ebAr0ydQG1M9qvHnwAA + + +CA +double +8a9T5ebAr0ydQG1M9qvHnwAA + + +composants +8a9T5ebAr0ydQG1M9qvHnwAA +Bm1KuAASdkyBVgyjMd+yfgAA + + + +s-affichePiècePlusComplexe +Affiche la pièce la plus complexe : + ¤ Code + ¤ Nom + ¤ Prix de revient + ¤ Complexité + +skClassifier +V8a3VSnIHE+RVWQsMPm9GAAA +1 + +pdkReturn +void +LSAkMknFgkmdq8mh0Vn5CQAA + + + +s-listePièces +Liste des pièces + +skClassifier +V8a3VSnIHE+RVWQsMPm9GAAA +1 + +pdkReturn +jc/JtSqvFUSsxod+FxtnYgAA +Bm1KuAASdkyBVgyjMd+yfgAA + + +1 +b3OEqqNKw0S4craAMqFjBQAA + + +Pièces de base +Pièces typées dites de Base + +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +Z7+K5Ws57kWHrSm1PgE9ewAA +q+hXBOSU7UuZpIBSobEBUgAA +npzpXjC4T0WSM+Y39u3gbgAA +55AjbvVjZkq1DOC7sq8jtAAA +2 +P4xyOY/hW0q2VdGuktBsTAAA +fDWaAF3yoUCF7uw7g1ZigQAA +1 + +calculPrixRevient +Permet de calculer le prix de revient d'une pièce + +qEVuYwkk1UmJUsJdZvuY4AAA +1 + +pdkReturn +void +vYeOfXjBmUOwCHAFb6WzfQAA + + +2 +4grdOUdzGkamPiGAP/LgBQAA +BZsbN/QVZE+SFQOiEUur/wAA +2 + +prixHAPièce +Prix d'achat d'une pièce (= prix de revient) + +vkPrivate +double +qEVuYwkk1UmJUsJdZvuY4AAA + + +margePièce +Marge de la pièce = 10 % ! +vkPrivate +double +0.1 +qEVuYwkk1UmJUsJdZvuY4AAA + + + +Pièces composites +Pièces typées dites Composites + +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +qTju6qqskkqiN2qbhnsrbQAA +kyt5YEH0BkKmiZ1JP4enUAAA +cncw5prfsUqTGx8eR1+3IwAA +XuEJmsMmBkOTBtBlQNbT7gAA +2 +MaQTL1dKSky/+TXFSSF3sgAA +ovEu64d0ZkW8LrDdTAEzzgAA +3 + +calculPrixRevient +Calcule le prix de revient de la pièce composite + +bx7uG2v34Ei6kaSziKF4UAAA +1 + +pdkReturn +void +ibjyphZHW0qaXsejDUiIXAAA + + + +donneComplexité +Donne la complexité d'une pièce composite + +bx7uG2v34Ei6kaSziKF4UAAA +1 + +pdkReturn +void +urxYBd8jb0GgZaecd0nazAAA + + + +ajouterComposant +Ajouter un composant en donnant son identifiant et le coût d'assemblage supplémentaire + +bx7uG2v34Ei6kaSziKF4UAAA +3 + +pdkReturn +void +CGr3VvpPT0e9lLwze5UNUQAA + + +identifiantPièce +CGr3VvpPT0e9lLwze5UNUQAA + + +coutAssemblage +CGr3VvpPT0e9lLwze5UNUQAA + + +6 +AsfLzAjn9UGsFZbg2oxYDQAA +ktwTWynC6kimP4umtaxJlAAA +7z/e8wxkgk2EuWz+gyY7kwAA +8DbMQ1GsvEatJKe0eDPDlQAA +4O92N74nOkuKMR7QYoA8rQAA +bm51OJSIMkiy0LPbyqJ53gAA +4 + +complexitéPièce +Nombre total de pièces de base qui entrent dans la fabrication de la pièce composite + +vkPrivate +double +bx7uG2v34Ei6kaSziKF4UAAA + + +prixHAPièce +Prix d'achat de la pièce = prix de revient de toutes les pièces de base qui la composent + coût d'assemblage + +vkPrivate +double +bx7uG2v34Ei6kaSziKF4UAAA + + +coutAssemblagePièce +Coût d'assemblage de la pièce composite + +vkPrivate +double +bx7uG2v34Ei6kaSziKF4UAAA + + +margePièce +Marge de la pièce = 25 % ! +vkPrivate +double +0.25 +bx7uG2v34Ei6kaSziKF4UAAA + + + +fx/GlhWdn0aUUmgV9Z5sGQAA +qEVuYwkk1UmJUsJdZvuY4AAA +V8a3VSnIHE+RVWQsMPm9GAAA + + +fx/GlhWdn0aUUmgV9Z5sGQAA +bx7uG2v34Ei6kaSziKF4UAAA +V8a3VSnIHE+RVWQsMPm9GAAA + + +composé de > +fx/GlhWdn0aUUmgV9Z5sGQAA +2 + +* +kGQFiBaACk6iRvNSlRSYOgAA +qEVuYwkk1UmJUsJdZvuY4AAA + + +1 +kGQFiBaACk6iRvNSlRSYOgAA +bx7uG2v34Ei6kaSziKF4UAAA + + + +fx/GlhWdn0aUUmgV9Z5sGQAA +2 + +/ICjaYfbOUOFwZEOVimHZwAA +bx7uG2v34Ei6kaSziKF4UAAA + + +composé de +/ICjaYfbOUOFwZEOVimHZwAA +bx7uG2v34Ei6kaSziKF4UAAA + + + +gère +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +u3EioBlYJECPRyX2P2WZWQAA +p8I0/ZS7v0iFL0ulGZtQlwAA +sqz6fqf2ak6RUTfP/1ZPEwAA +C+dw8Cxy3U+SdTT9aZ10NgAA +2 + +colPièces +* +xHKLdvFIX0yXq9YQUmWBLgAA +Bm1KuAASdkyBVgyjMd+yfgAA +4 +I1PK6f5/ikWhUEOdHS9IHwAA +tRh/F+SqvkapWSUrMpZI9AAA +IWByg2NANUmSqZZWKs0+sAAA +rQS5nN8z7kauhQXoiN1tkAAA + + +akComposite +1 +xHKLdvFIX0yXq9YQUmWBLgAA +V8a3VSnIHE+RVWQsMPm9GAAA +4 +lQvKDlmfIkSj/OHVrVHF3QAA +HHug9TOtcki6VgLfR1qX0gAA +StmutF4cjkiMD13Xg680AQAA +IuInrHrxukSCK90w1fNkzgAA + + + +Pièces +Classe abstraite Pièce + +True +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +TzWK0b3vLk+VojPVWqW2MAAA +cqtzwSK8KU+yk1UCFeDfZwAA +ga+2moxA4EmX7tyo/H9oLgAA +qWPmAOxTxUikCzLMsrv19AAA +2 +fDWaAF3yoUCF7uw7g1ZigQAA +ovEu64d0ZkW8LrDdTAEzzgAA +5 + +calculPrixRevient +Calcul du prix de revient de la pièce (abstrait) + +True +Bm1KuAASdkyBVgyjMd+yfgAA +1 + +pdkReturn +void +vAAtbOlJaU6m1t+ki/V3FAAA + + + +donneNom +Donne le nom de la pièce + +Bm1KuAASdkyBVgyjMd+yfgAA +1 + +pdkReturn +void +sha6M85ybESp2m4nvTuAvgAA + + + +donnePrixHA +Donne le prix d'achat de la pièce + +Bm1KuAASdkyBVgyjMd+yfgAA +1 + +pdkReturn +void +5HiEw1kACUGhOPvyJXawmwAA + + + +donnePrixVenteHTPièce +Donne le prix de vente hors taxes de la pièce + +Bm1KuAASdkyBVgyjMd+yfgAA +1 + +pdkReturn +void ++tfndFu/xEqopuU4lmVVHgAA + + + +donnePrixVenteTTC +Donne le prix de vente TTC de la pièce + +Bm1KuAASdkyBVgyjMd+yfgAA +1 + +pdkReturn +void +ulbkZaxvlEauUdlqerrK6QAA + + +2 +yWn2RZH9Sk2Anxe6kKsjngAA +i0d35ot5jkO3aCCBC/AImwAA +1 +FSXRNQRO5k+xkXXtxmii8wAA +7 + +identifiantPiece +Identifie la pièce (unique) + +vkPrivate +int +Bm1KuAASdkyBVgyjMd+yfgAA + + +s-prochainePièce +Numéro de la prochaine pièce + +vkPrivate +skClassifier +int +Bm1KuAASdkyBVgyjMd+yfgAA + + +prixHAPièce +Prix d'achat de la pièce + +vkPrivate +double +Bm1KuAASdkyBVgyjMd+yfgAA + + +prixVenteHTPièce +Prix de vente HT de la pièce + +vkPrivate +double +Bm1KuAASdkyBVgyjMd+yfgAA + + +nomPièce +Dénommination de la pièce + +vkPrivate +String +Bm1KuAASdkyBVgyjMd+yfgAA + + +margePièce +Marge de la pièce + +vkPrivate +double +Bm1KuAASdkyBVgyjMd+yfgAA + + +prixVenteTTC +Prix de vente TTC de la pièce + +vkPrivate +double +Bm1KuAASdkyBVgyjMd+yfgAA + + + +fx/GlhWdn0aUUmgV9Z5sGQAA +qEVuYwkk1UmJUsJdZvuY4AAA +Bm1KuAASdkyBVgyjMd+yfgAA +4 +eGtgKZMlSE2C4opAbKGK2gAA +Bw+fzDt5x0WbQ5hAjZGECQAA +mLHA9skrX0WiFvNp/b6+pQAA +X8S+3ACDvkeMtyEPEkYVvAAA + + +fx/GlhWdn0aUUmgV9Z5sGQAA +bx7uG2v34Ei6kaSziKF4UAAA +Bm1KuAASdkyBVgyjMd+yfgAA +4 +g3oemVaGpEWP50H5gZ8WFwAA +dyKjN6EikEWKwRB0dfLH8QAA +eLGVZK5TPkq2+QzcFwLSjgAA +35n20UbVUkuJ+MCMf68FGAAA + + +composé de > +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +blcwC2Um3ECpCh5ZInKZBgAA +4tvdAaYHsU2yVbxdGp2+rQAA +SsafRBGsX0OIqoAUsSotlQAA +61lED4hID0K299CIZyfbIQAA +2 + +False +* +IJxxYjDxwU6TwtYdodYCZwAA +qEVuYwkk1UmJUsJdZvuY4AAA +4 +eOwxO0KFlEu3g14pYZ60XgAA +GY5qf0SAyUiwTymiCmf9+gAA +tmgN7vgZTEGDTPTnaqdL/AAA +AKsFBogEjk2uH10083RbSAAA + + +1 +IJxxYjDxwU6TwtYdodYCZwAA +bx7uG2v34Ei6kaSziKF4UAAA +4 +ts+N0bv5pUiiJnTiXm26GgAA +I30jJJ6INkmXEeRsY+EzPgAA +ebJdbDxUNkiz6pHu3fqdfgAA +3STyq2USUEiQl0MkMTwPygAA + + + +composé de > +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +SNoO96iRnUuMPNp+tsqklgAA +jzNOlRhh1Eq2d8w8GMVM2QAA +OjK5I4eU7kelYrsIb4W2cQAA +IDOyXOmRtUq30Po1ihOHqwAA +2 + +False +* +jMOJoJ88VUiYFs9KftDvzAAA +bx7uG2v34Ei6kaSziKF4UAAA +4 +oLZ4nKAt4kGOODJFbNWRCQAA +Bwa/EqH3QUme4gUtQCKh/QAA +j+rzjXYkdk20zejk6sRy3QAA +rM0eXifrsUW+qKkngrN1MwAA + + +1 +jMOJoJ88VUiYFs9KftDvzAAA +bx7uG2v34Ei6kaSziKF4UAAA +4 +9jpq2XovTU23WqgjzWVC0QAA +agX5BUH5fEekVLpzjirjkwAA +t5L9qMx830i2e0J6/nkvtwAA +88Ji/TJ6k02rE26mb/lrygAA + + + +IHM +Interface avec l'utilisateur +Utilise les classes métiers + +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +WgSONCLkd0iZnk7Fe9vAEQAA +CAP6gkd8P0W+Yb6DiUanewAA +OLJzPeJXckGjP6SLPBSHlAAA +NgmYuF8C6UebF+dSSniO1QAA +1 +wDZiZUkHtUGm+JutWDEVaQAA + + +fx/GlhWdn0aUUmgV9Z5sGQAA +du2nBE7k20W1Xnf5uDzrzAAA +V8a3VSnIHE+RVWQsMPm9GAAA +4 +sXAv0Wlom0yHVD9mhVWZ0gAA +58/p6HS30EuyOiXtS91MFgAA +EDrsh6N0V02/sAA3ZuC70QAA +8SBFeraF80ShGIu42UuZtAAA + + + +Implementation Model +UMLStandard +implementationModel +NG3Xdw2jfUa/Xs7/0RXqUQAA +1 + +Main +CB3oTKDhxEuQbSRLjGN0gwAA + +VnEmietMpU+oZWoxYQrdpAAA + + + + +Deployment Model +UMLStandard +deploymentModel +NG3Xdw2jfUa/Xs7/0RXqUQAA +1 + +Main +lNwsar9RWkCDgYGXbr6MigAA + +4x2PQlCyMECP16Q5PmWacgAA + + + + + + diff --git a/G5a/PiecesComposites/piecesComposites.~ml b/G5a/PiecesComposites/piecesComposites.~ml new file mode 100644 index 0000000..df953f2 --- /dev/null +++ b/G5a/PiecesComposites/piecesComposites.~ml @@ -0,0 +1,1142 @@ + + + + + + +UMLStandard +Java + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +NG3Xdw2jfUa/Xs7/0RXqUQAA +1 + +Main +xXrAD4WEmEmbxk/GrCWTwAAA + +s5KWfwuVLk2K6LYe1OlH8QAA + + + + +Analysis Model +UMLStandard +analysisModel +NG3Xdw2jfUa/Xs7/0RXqUQAA +1 + +Main +True +RobustnessDiagram +ZaQw0is+10efZx4ADCJSJQAA + +cI3/QWH5f0GxRJEeiCz7dAAA + + + + +Design Model +UMLStandard +designModel +NG3Xdw2jfUa/Xs7/0RXqUQAA +1 + +Main +True +fx/GlhWdn0aUUmgV9Z5sGQAA + +XYQ+s1iQlkOsXJ+VNVWXjwAA +11 + +clMaroon +$00B9FFFF +204 +4 +350 +108 +V8a3VSnIHE+RVWQsMPm9GAAA + + +3 +Stocks + + +<<Singleton>> + + +False + + + +V8a3VSnIHE+RVWQsMPm9GAAA + + +V8a3VSnIHE+RVWQsMPm9GAAA + + +False +V8a3VSnIHE+RVWQsMPm9GAAA + + + +clMaroon +$00B9FFFF +68 +456 +161 +82 +qEVuYwkk1UmJUsJdZvuY4AAA + + +1 +Pièces de base + + +False + + +False + + + +qEVuYwkk1UmJUsJdZvuY4AAA + + +qEVuYwkk1UmJUsJdZvuY4AAA + + +False +qEVuYwkk1UmJUsJdZvuY4AAA + + + +clMaroon +$00B9FFFF +336 +448 +300 +134 +bx7uG2v34Ei6kaSziKF4UAAA + + +1 +Pièces composites + + +False + + +False + + + +bx7uG2v34Ei6kaSziKF4UAAA + + +bx7uG2v34Ei6kaSziKF4UAAA + + +False +bx7uG2v34Ei6kaSziKF4UAAA + + + +clMaroon +$00B9FFFF +336,192;361,111 +xHKLdvFIX0yXq9YQUmWBLgAA +AnSCTghudkeCg+vmNOf/VwAA +TzWK0b3vLk+VojPVWqW2MAAA + +1,5707963267949 +15 +gère +xHKLdvFIX0yXq9YQUmWBLgAA + + +False +1,5707963267949 +30 +xHKLdvFIX0yXq9YQUmWBLgAA + + +False +-1,5707963267949 +15 +xHKLdvFIX0yXq9YQUmWBLgAA + + +False +-0,523598775598299 +30 +epHead +b3OEqqNKw0S4craAMqFjBQAA + + +-4,90557018007751 +37,3630833845388 +epTail ++colPièces +FSXRNQRO5k+xkXXtxmii8wAA + + +0,523598775598299 +25 +epHead +1 +b3OEqqNKw0S4craAMqFjBQAA + + +-0,523598775598299 +25 +epTail +* +FSXRNQRO5k+xkXXtxmii8wAA + + +False +-0,785398163397448 +40 +epHead +b3OEqqNKw0S4craAMqFjBQAA + + +False +0,785398163397448 +40 +epTail +FSXRNQRO5k+xkXXtxmii8wAA + + +False +-1000 +-1000 +50 +8 +b3OEqqNKw0S4craAMqFjBQAA + + +False +-1000 +-1000 +50 +8 +FSXRNQRO5k+xkXXtxmii8wAA + + + +clMaroon +$00B9FFFF +184 +192 +244 +199 +Bm1KuAASdkyBVgyjMd+yfgAA + + +3 +Pièces + + +False + + +False + + + +Bm1KuAASdkyBVgyjMd+yfgAA + + +Bm1KuAASdkyBVgyjMd+yfgAA + + +False +Bm1KuAASdkyBVgyjMd+yfgAA + + + +clMaroon +$00B9FFFF +179,456;229,390 +fDWaAF3yoUCF7uw7g1ZigQAA +TzWK0b3vLk+VojPVWqW2MAAA +Z7+K5Ws57kWHrSm1PgE9ewAA + +False +1,5707963267949 +15 +fDWaAF3yoUCF7uw7g1ZigQAA + + +False +1,5707963267949 +30 +fDWaAF3yoUCF7uw7g1ZigQAA + + +False +-1,5707963267949 +15 +fDWaAF3yoUCF7uw7g1ZigQAA + + + +clMaroon +$00B9FFFF +432,448;385,390 +ovEu64d0ZkW8LrDdTAEzzgAA +TzWK0b3vLk+VojPVWqW2MAAA +qTju6qqskkqiN2qbhnsrbQAA + +False +1,5707963267949 +15 +ovEu64d0ZkW8LrDdTAEzzgAA + + +False +1,5707963267949 +30 +ovEu64d0ZkW8LrDdTAEzzgAA + + +False +-1,5707963267949 +15 +ovEu64d0ZkW8LrDdTAEzzgAA + + + +clMaroon +$00B9FFFF +228,500;336,506 +IJxxYjDxwU6TwtYdodYCZwAA +qTju6qqskkqiN2qbhnsrbQAA +Z7+K5Ws57kWHrSm1PgE9ewAA + +1,5707963267949 +15 +composé de > +IJxxYjDxwU6TwtYdodYCZwAA + + +False +1,5707963267949 +30 +IJxxYjDxwU6TwtYdodYCZwAA + + +False +-1,5707963267949 +15 +IJxxYjDxwU6TwtYdodYCZwAA + + +False +-0,523598775598299 +30 +epHead +8DbMQ1GsvEatJKe0eDPDlQAA + + +False +0,523598775598299 +30 +epTail +BZsbN/QVZE+SFQOiEUur/wAA + + +0,523598775598299 +25 +epHead +1 +8DbMQ1GsvEatJKe0eDPDlQAA + + +-0,523598775598299 +25 +epTail +* +BZsbN/QVZE+SFQOiEUur/wAA + + +False +-0,785398163397448 +40 +epHead +8DbMQ1GsvEatJKe0eDPDlQAA + + +False +0,785398163397448 +40 +epTail +BZsbN/QVZE+SFQOiEUur/wAA + + +False +-1000 +-1000 +50 +8 +8DbMQ1GsvEatJKe0eDPDlQAA + + +False +-1000 +-1000 +50 +8 +BZsbN/QVZE+SFQOiEUur/wAA + + + +clMaroon +$00B9FFFF +lsRectilinear +485,581;485,632;664,632;664,514;635,514 +jMOJoJ88VUiYFs9KftDvzAAA +qTju6qqskkqiN2qbhnsrbQAA +qTju6qqskkqiN2qbhnsrbQAA + +-0,91116759824185 +62,00806399171 +composé de > +jMOJoJ88VUiYFs9KftDvzAAA + + +False +1,5707963267949 +30 +jMOJoJ88VUiYFs9KftDvzAAA + + +False +-1,5707963267949 +15 +jMOJoJ88VUiYFs9KftDvzAAA + + +False +-0,523598775598299 +30 +epHead +bm51OJSIMkiy0LPbyqJ53gAA + + +False +0,523598775598299 +30 +epTail +4O92N74nOkuKMR7QYoA8rQAA + + +0,523598775598299 +25 +epHead +1 +bm51OJSIMkiy0LPbyqJ53gAA + + +-0,523598775598299 +25 +epTail +* +4O92N74nOkuKMR7QYoA8rQAA + + +False +-0,785398163397448 +40 +epHead +bm51OJSIMkiy0LPbyqJ53gAA + + +False +0,785398163397448 +40 +epTail +4O92N74nOkuKMR7QYoA8rQAA + + +False +-1004 +-1000 +50 +8 +bm51OJSIMkiy0LPbyqJ53gAA + + +False +-1004 +-1000 +50 +8 +4O92N74nOkuKMR7QYoA8rQAA + + + +clMaroon +$00B9FFFF +660 +28 +128 +89 +du2nBE7k20W1Xnf5uDzrzAAA + + +1 +IHM + + +False + + +False + + + +du2nBE7k20W1Xnf5uDzrzAAA + + +du2nBE7k20W1Xnf5uDzrzAAA + + +False +du2nBE7k20W1Xnf5uDzrzAAA + + + +clMaroon +$00B9FFFF +660,69;553,64 +wDZiZUkHtUGm+JutWDEVaQAA +AnSCTghudkeCg+vmNOf/VwAA +WgSONCLkd0iZnk7Fe9vAEQAA + +False +1,5707963267949 +15 +wDZiZUkHtUGm+JutWDEVaQAA + + +False +1,5707963267949 +30 +wDZiZUkHtUGm+JutWDEVaQAA + + +False +-1,5707963267949 +15 +wDZiZUkHtUGm+JutWDEVaQAA + + + + +15 + +Stocks +Gestion des stockes de pièces + +Singleton +True +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +AnSCTghudkeCg+vmNOf/VwAA +CsFOASFoTEKzZwtWOGNJGAAA ++WvuNsgwH0iRrNOgBoZKSQAA +tnW3ton+gEaIfHOI/q/95AAA +1 +wDZiZUkHtUGm+JutWDEVaQAA +2 +P4xyOY/hW0q2VdGuktBsTAAA +MaQTL1dKSky/+TXFSSF3sgAA +4 + +s-ajouterPièce +Permet l'ajout d'une pièce dans les stocks + +skClassifier +V8a3VSnIHE+RVWQsMPm9GAAA +3 + +pdkReturn +void +ASTL25uJTEWfnzqnaE1ycwAA + + +nom +String +ASTL25uJTEWfnzqnaE1ycwAA + + +PA +double +ASTL25uJTEWfnzqnaE1ycwAA + + + +s-supprimerPièce +Supprime une pièce dans les stocks +skClassifier +True +V8a3VSnIHE+RVWQsMPm9GAAA +4 + +pdkReturn +void +8a9T5ebAr0ydQG1M9qvHnwAA + + +nom +String +8a9T5ebAr0ydQG1M9qvHnwAA + + +CA +double +8a9T5ebAr0ydQG1M9qvHnwAA + + +composants +8a9T5ebAr0ydQG1M9qvHnwAA +Bm1KuAASdkyBVgyjMd+yfgAA + + + +s-affichePiècePlusComplexe +Affiche la pièce la plus complexe : + ¤ Code + ¤ Nom + ¤ Prix de revient + ¤ Complexité + +skClassifier +V8a3VSnIHE+RVWQsMPm9GAAA +1 + +pdkReturn +void +LSAkMknFgkmdq8mh0Vn5CQAA + + + +s-listePièces +Liste des pièces + +skClassifier +V8a3VSnIHE+RVWQsMPm9GAAA +1 + +pdkReturn +jc/JtSqvFUSsxod+FxtnYgAA +Bm1KuAASdkyBVgyjMd+yfgAA + + +1 +b3OEqqNKw0S4craAMqFjBQAA + + +Pièces de base +Pièces typées dites de Base + +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +Z7+K5Ws57kWHrSm1PgE9ewAA +q+hXBOSU7UuZpIBSobEBUgAA +npzpXjC4T0WSM+Y39u3gbgAA +55AjbvVjZkq1DOC7sq8jtAAA +2 +P4xyOY/hW0q2VdGuktBsTAAA +fDWaAF3yoUCF7uw7g1ZigQAA +1 + +calculPrixRevient +Permet de calculer le prix de revient d'une pièce + +qEVuYwkk1UmJUsJdZvuY4AAA +1 + +pdkReturn +void +vYeOfXjBmUOwCHAFb6WzfQAA + + +2 +4grdOUdzGkamPiGAP/LgBQAA +BZsbN/QVZE+SFQOiEUur/wAA +2 + +prixHAPièce +Prix d'achat d'une pièce (= prix de revient) + +vkPrivate +double +qEVuYwkk1UmJUsJdZvuY4AAA + + +margePièce +Marge de la pièce = 10 % ! +vkPrivate +double +0.1 +qEVuYwkk1UmJUsJdZvuY4AAA + + + +Pièces composites +Pièces typées dites Composites + +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +qTju6qqskkqiN2qbhnsrbQAA +kyt5YEH0BkKmiZ1JP4enUAAA +cncw5prfsUqTGx8eR1+3IwAA +XuEJmsMmBkOTBtBlQNbT7gAA +2 +MaQTL1dKSky/+TXFSSF3sgAA +ovEu64d0ZkW8LrDdTAEzzgAA +3 + +calculPrixRevient +Calcule le prix de revient de la pièce composite + +bx7uG2v34Ei6kaSziKF4UAAA +1 + +pdkReturn +void +ibjyphZHW0qaXsejDUiIXAAA + + + +donneComplexité +Donne la complexité d'une pièce composite + +bx7uG2v34Ei6kaSziKF4UAAA +1 + +pdkReturn +void +urxYBd8jb0GgZaecd0nazAAA + + + +ajouterComposant +Ajouter un composant en donnant son identifiant et le coût d'assemblage supplémentaire + +bx7uG2v34Ei6kaSziKF4UAAA +3 + +pdkReturn +void +CGr3VvpPT0e9lLwze5UNUQAA + + +identifiantPièce +CGr3VvpPT0e9lLwze5UNUQAA + + +coutAssemblage +CGr3VvpPT0e9lLwze5UNUQAA + + +6 +AsfLzAjn9UGsFZbg2oxYDQAA +ktwTWynC6kimP4umtaxJlAAA +7z/e8wxkgk2EuWz+gyY7kwAA +8DbMQ1GsvEatJKe0eDPDlQAA +4O92N74nOkuKMR7QYoA8rQAA +bm51OJSIMkiy0LPbyqJ53gAA +4 + +complexitéPièce +Nombre total de pièces de base qui entrent dans la fabrication de la pièce composite + +vkPrivate +double +bx7uG2v34Ei6kaSziKF4UAAA + + +prixHAPièce +Prix d'achat de la pièce = prix de revient de toutes les pièces de base qui la composent + coût d'assemblage + +vkPrivate +double +bx7uG2v34Ei6kaSziKF4UAAA + + +coutAssemblagePièce +Coût d'assemblage de la pièce composite + +vkPrivate +double +bx7uG2v34Ei6kaSziKF4UAAA + + +margePièce +Marge de la pièce = 25 % ! +vkPrivate +double +0.25 +bx7uG2v34Ei6kaSziKF4UAAA + + + +fx/GlhWdn0aUUmgV9Z5sGQAA +qEVuYwkk1UmJUsJdZvuY4AAA +V8a3VSnIHE+RVWQsMPm9GAAA + + +fx/GlhWdn0aUUmgV9Z5sGQAA +bx7uG2v34Ei6kaSziKF4UAAA +V8a3VSnIHE+RVWQsMPm9GAAA + + +composé de > +fx/GlhWdn0aUUmgV9Z5sGQAA +2 + +* +kGQFiBaACk6iRvNSlRSYOgAA +qEVuYwkk1UmJUsJdZvuY4AAA + + +1 +kGQFiBaACk6iRvNSlRSYOgAA +bx7uG2v34Ei6kaSziKF4UAAA + + + +fx/GlhWdn0aUUmgV9Z5sGQAA +2 + +/ICjaYfbOUOFwZEOVimHZwAA +bx7uG2v34Ei6kaSziKF4UAAA + + +composé de +/ICjaYfbOUOFwZEOVimHZwAA +bx7uG2v34Ei6kaSziKF4UAAA + + + +gère +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +u3EioBlYJECPRyX2P2WZWQAA +p8I0/ZS7v0iFL0ulGZtQlwAA +sqz6fqf2ak6RUTfP/1ZPEwAA +C+dw8Cxy3U+SdTT9aZ10NgAA +2 + +colPièces +* +xHKLdvFIX0yXq9YQUmWBLgAA +Bm1KuAASdkyBVgyjMd+yfgAA +4 +I1PK6f5/ikWhUEOdHS9IHwAA +tRh/F+SqvkapWSUrMpZI9AAA +IWByg2NANUmSqZZWKs0+sAAA +rQS5nN8z7kauhQXoiN1tkAAA + + +akComposite +1 +xHKLdvFIX0yXq9YQUmWBLgAA +V8a3VSnIHE+RVWQsMPm9GAAA +4 +lQvKDlmfIkSj/OHVrVHF3QAA +HHug9TOtcki6VgLfR1qX0gAA +StmutF4cjkiMD13Xg680AQAA +IuInrHrxukSCK90w1fNkzgAA + + + +Pièces +Classe abstraite Pièce + +True +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +TzWK0b3vLk+VojPVWqW2MAAA +cqtzwSK8KU+yk1UCFeDfZwAA +ga+2moxA4EmX7tyo/H9oLgAA +qWPmAOxTxUikCzLMsrv19AAA +2 +fDWaAF3yoUCF7uw7g1ZigQAA +ovEu64d0ZkW8LrDdTAEzzgAA +5 + +calculPrixRevient +Calcul du prix de revient de la pièce (abstrait) + +True +Bm1KuAASdkyBVgyjMd+yfgAA +1 + +pdkReturn +void +vAAtbOlJaU6m1t+ki/V3FAAA + + + +donneNom +Donne le nom de la pièce + +Bm1KuAASdkyBVgyjMd+yfgAA +1 + +pdkReturn +void +sha6M85ybESp2m4nvTuAvgAA + + + +donnePrixHA +Donne le prix d'achat de la pièce + +Bm1KuAASdkyBVgyjMd+yfgAA +1 + +pdkReturn +void +5HiEw1kACUGhOPvyJXawmwAA + + + +donnePrixVenteHTPièce +Donne le prix de vente hors taxes de la pièce + +Bm1KuAASdkyBVgyjMd+yfgAA +1 + +pdkReturn +void ++tfndFu/xEqopuU4lmVVHgAA + + + +donnePrixVenteTTC +Donne le prix de vente TTC de la pièce + +Bm1KuAASdkyBVgyjMd+yfgAA +1 + +pdkReturn +void +ulbkZaxvlEauUdlqerrK6QAA + + +2 +yWn2RZH9Sk2Anxe6kKsjngAA +i0d35ot5jkO3aCCBC/AImwAA +1 +FSXRNQRO5k+xkXXtxmii8wAA +7 + +identifiantPiece +Identifie la pièce (unique) + +vkPrivate +int +Bm1KuAASdkyBVgyjMd+yfgAA + + +s-prochainePièce +Numéro de la prochaine pièce + +vkPrivate +skClassifier +int +Bm1KuAASdkyBVgyjMd+yfgAA + + +prixHAPièce +Prix d'achat de la pièce + +vkPrivate +double +Bm1KuAASdkyBVgyjMd+yfgAA + + +prixVenteHTPièce +Prix de vente HT de la pièce + +vkPrivate +double +Bm1KuAASdkyBVgyjMd+yfgAA + + +nomPièce +Dénommination de la pièce + +vkPrivate +String +Bm1KuAASdkyBVgyjMd+yfgAA + + +margePièce +Marge de la pièce + +vkPrivate +double +Bm1KuAASdkyBVgyjMd+yfgAA + + +prixVenteTTC +Prix de vente TTC de la pièce + +vkPrivate +double +Bm1KuAASdkyBVgyjMd+yfgAA + + + +fx/GlhWdn0aUUmgV9Z5sGQAA +qEVuYwkk1UmJUsJdZvuY4AAA +Bm1KuAASdkyBVgyjMd+yfgAA +4 +eGtgKZMlSE2C4opAbKGK2gAA +Bw+fzDt5x0WbQ5hAjZGECQAA +mLHA9skrX0WiFvNp/b6+pQAA +X8S+3ACDvkeMtyEPEkYVvAAA + + +fx/GlhWdn0aUUmgV9Z5sGQAA +bx7uG2v34Ei6kaSziKF4UAAA +Bm1KuAASdkyBVgyjMd+yfgAA +4 +g3oemVaGpEWP50H5gZ8WFwAA +dyKjN6EikEWKwRB0dfLH8QAA +eLGVZK5TPkq2+QzcFwLSjgAA +35n20UbVUkuJ+MCMf68FGAAA + + +composé de > +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +blcwC2Um3ECpCh5ZInKZBgAA +4tvdAaYHsU2yVbxdGp2+rQAA +SsafRBGsX0OIqoAUsSotlQAA +61lED4hID0K299CIZyfbIQAA +2 + +False +* +IJxxYjDxwU6TwtYdodYCZwAA +qEVuYwkk1UmJUsJdZvuY4AAA +4 +eOwxO0KFlEu3g14pYZ60XgAA +GY5qf0SAyUiwTymiCmf9+gAA +tmgN7vgZTEGDTPTnaqdL/AAA +AKsFBogEjk2uH10083RbSAAA + + +1 +IJxxYjDxwU6TwtYdodYCZwAA +bx7uG2v34Ei6kaSziKF4UAAA +4 +ts+N0bv5pUiiJnTiXm26GgAA +I30jJJ6INkmXEeRsY+EzPgAA +ebJdbDxUNkiz6pHu3fqdfgAA +3STyq2USUEiQl0MkMTwPygAA + + + +composé de > +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +SNoO96iRnUuMPNp+tsqklgAA +jzNOlRhh1Eq2d8w8GMVM2QAA +OjK5I4eU7kelYrsIb4W2cQAA +IDOyXOmRtUq30Po1ihOHqwAA +2 + +False +* +jMOJoJ88VUiYFs9KftDvzAAA +bx7uG2v34Ei6kaSziKF4UAAA +4 +oLZ4nKAt4kGOODJFbNWRCQAA +Bwa/EqH3QUme4gUtQCKh/QAA +j+rzjXYkdk20zejk6sRy3QAA +rM0eXifrsUW+qKkngrN1MwAA + + +1 +jMOJoJ88VUiYFs9KftDvzAAA +bx7uG2v34Ei6kaSziKF4UAAA +4 +9jpq2XovTU23WqgjzWVC0QAA +agX5BUH5fEekVLpzjirjkwAA +t5L9qMx830i2e0J6/nkvtwAA +88Ji/TJ6k02rE26mb/lrygAA + + + +IHM +Interface avec l'utilisateur +Utilise les classes métiers + +fx/GlhWdn0aUUmgV9Z5sGQAA +4 +WgSONCLkd0iZnk7Fe9vAEQAA +CAP6gkd8P0W+Yb6DiUanewAA +OLJzPeJXckGjP6SLPBSHlAAA +NgmYuF8C6UebF+dSSniO1QAA +1 +wDZiZUkHtUGm+JutWDEVaQAA + + +fx/GlhWdn0aUUmgV9Z5sGQAA +du2nBE7k20W1Xnf5uDzrzAAA +V8a3VSnIHE+RVWQsMPm9GAAA +4 +sXAv0Wlom0yHVD9mhVWZ0gAA +58/p6HS30EuyOiXtS91MFgAA +EDrsh6N0V02/sAA3ZuC70QAA +8SBFeraF80ShGIu42UuZtAAA + + + +Implementation Model +UMLStandard +implementationModel +NG3Xdw2jfUa/Xs7/0RXqUQAA +1 + +Main +CB3oTKDhxEuQbSRLjGN0gwAA + +VnEmietMpU+oZWoxYQrdpAAA + + + + +Deployment Model +UMLStandard +deploymentModel +NG3Xdw2jfUa/Xs7/0RXqUQAA +1 + +Main +lNwsar9RWkCDgYGXbr6MigAA + +4x2PQlCyMECP16Q5PmWacgAA + + + + + + diff --git a/G5a/employe_commerciaux.uml b/G5a/employe_commerciaux.uml new file mode 100644 index 0000000..4c0d732 --- /dev/null +++ b/G5a/employe_commerciaux.uml @@ -0,0 +1,590 @@ + + + + + + +UMLStandard + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +QRG0R1fCQU2IKNXNK67kJQAA +1 + +Main +DTFG+qBQrUqymM7hR2y8nQAA + +v7N4jrrAtECkMaDotRx1qgAA + + + + +Analysis Model +UMLStandard +analysisModel +QRG0R1fCQU2IKNXNK67kJQAA +1 + +Main +True +RobustnessDiagram +exVm5dZ2jkiV9NRvdJjSjAAA + +Cm/46mpn1UG9zOMMZDMWeQAA + + + + +Design Model +UMLStandard +designModel +QRG0R1fCQU2IKNXNK67kJQAA +1 + +Main +True +ga2tNdkwJUKv8f4Ua5e4/AAA + +Fb/6PDHdQEaPWwnzm9igKwAA +5 + +clMaroon +$00B9FFFF +64 +8 +442 +264 +TlONUO4fiE+4L/DX3hqMnwAA + + +3 +Salarie + + +False + + +False + + + +TlONUO4fiE+4L/DX3hqMnwAA + + +TlONUO4fiE+4L/DX3hqMnwAA + + +False +TlONUO4fiE+4L/DX3hqMnwAA + + + +clMaroon +$00B9FFFF +16 +400 +439 +133 +4iu27vcM602OnPNc6SH2lAAA + + +1 +Commercial + + +False + + +False + + + +4iu27vcM602OnPNc6SH2lAAA + + +4iu27vcM602OnPNc6SH2lAAA + + +False +4iu27vcM602OnPNc6SH2lAAA + + + +clMaroon +$00B9FFFF +245,400;264,271 +NYQPdoJsvUaaI1H1mdJKmwAA +dUOixKPqPEmhd6Te2vOEtAAA +3++EzmKFJEW4gaY4iGDxAAAA + +False +1,5707963267949 +15 +NYQPdoJsvUaaI1H1mdJKmwAA + + +False +1,5707963267949 +30 +NYQPdoJsvUaaI1H1mdJKmwAA + + +False +-1,5707963267949 +15 +NYQPdoJsvUaaI1H1mdJKmwAA + + + +clMaroon +$00B9FFFF +480 +400 +292 +184 +aX4nIVzQ7UOTI3QQvX6juAAA + + +1 +Employé + + +False + + +False + + + +aX4nIVzQ7UOTI3QQvX6juAAA + + +aX4nIVzQ7UOTI3QQvX6juAAA + + +False +aX4nIVzQ7UOTI3QQvX6juAAA + + + +clMaroon +$00B9FFFF +537,400;412,271 +dlv3kapYakCr496Lm5OuDQAA +dUOixKPqPEmhd6Te2vOEtAAA +nYLUAPSoKkWnLNGGKKwAFgAA + +False +1,5707963267949 +15 +dlv3kapYakCr496Lm5OuDQAA + + +False +1,5707963267949 +30 +dlv3kapYakCr496Lm5OuDQAA + + +False +-1,5707963267949 +15 +dlv3kapYakCr496Lm5OuDQAA + + + + +6 + +Salarie +Gestion des salariés + +True +ga2tNdkwJUKv8f4Ua5e4/AAA +4 +dUOixKPqPEmhd6Te2vOEtAAA +4yLWB+jzIEiooLUTA3nA9gAA +xsKrqTI8LkiAQAc/rYPpHAAA +oDcZMVW1q0ObX/C5R5hqVQAA +1 +qkahte7etk+93u/8EQWH6QAA +2 +NYQPdoJsvUaaI1H1mdJKmwAA +dlv3kapYakCr496Lm5OuDQAA +9 + +getAdresse +Retourne l'adresse de l'employé courant +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +String +S7Mk9qkxpEeak+3fzAnOiQAA + + + +getEmp +Retourne l'employé dont le matricule est passé en paramètre + +TlONUO4fiE+4L/DX3hqMnwAA +2 + +pdkReturn +String +YOU4NGiktEmHFaaK+t7IIQAA + + +matricule +int +YOU4NGiktEmHFaaK+t7IIQAA + + + +anciennete +Retourne l'ancienneté de l'employé (nombre d'années) + +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +int +gfj8M0MxrEKFoBxNfmjaLwAA + + + +getService +Retourne le service auquel est affecté l'employé + +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +String +Ga3P4+Nfx0CMnRYbuy1pmwAA + + + +changerService +Change le service de l'employé, donné en paramètre + +TlONUO4fiE+4L/DX3hqMnwAA +2 + +pdkReturn +void +iTxh//6jxk2GjInMcDIQIgAA + + +nouveauService +String +iTxh//6jxk2GjInMcDIQIgAA + + + +getPrimes +Retourne la prime totale acquise par l'employé + +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +int +kDVzoeGU00iJkB8keUDbNAAA + + + +c-getPlusAncien +Retourne l'employé qui a le plus d'ancienneté + +vkProtected +skClassifier +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +String +9UDJTj/UkUyQEAv8X9PqbgAA + + + +getType +Retourne le type d'employé (employé ou commercial) +A redéfinir +True +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +String +/N2RedN5mE+2fjObZzOEwAAA + + + +NouvelEmploye +Constructeur de la classe avec pour paramètres le nom, l'adresse, l'année d'embauche et le service d'affectation de l'employé. + +TlONUO4fiE+4L/DX3hqMnwAA +4 + +nom +String +A5S0mQNbMk+WHC6m7Q4tRwAA + + +adresse +String +A5S0mQNbMk+WHC6m7Q4tRwAA + + +anneeEmbauche +int +A5S0mQNbMk+WHC6m7Q4tRwAA + + +service +String +A5S0mQNbMk+WHC6m7Q4tRwAA + + +8 + +matricule +Numéro de matricule de l'employé en cours +vkPrivate +int +TlONUO4fiE+4L/DX3hqMnwAA + + +nom +Nom de l'employé +vkPrivate +String +TlONUO4fiE+4L/DX3hqMnwAA + + +adresse +Adresse de l'employé +vkPrivate +String +TlONUO4fiE+4L/DX3hqMnwAA + + +anciennete +Années d'ancienneté de l'employé + +vkPrivate +int +TlONUO4fiE+4L/DX3hqMnwAA + + +montantPrime +Montant de la prime totale d'un employé +vkPrivate +int +TlONUO4fiE+4L/DX3hqMnwAA + + +s-coeffPrime +Coefficient de Prime de la classe Employé (attribut Collectif) + +vkProtected +skClassifier +120 +TlONUO4fiE+4L/DX3hqMnwAA + + +serviceAffectation +Nom du service d'affectaction de l'employé courant +vkPrivate +String +TlONUO4fiE+4L/DX3hqMnwAA + + +s-nombreEmploye +Nombre d'employé instancié (permet l'autoincrémentation du matricule) + +vkProtected +skClassifier +int +TlONUO4fiE+4L/DX3hqMnwAA + + + +Commercial +Gestion des commerciaux + +ga2tNdkwJUKv8f4Ua5e4/AAA +4 +3++EzmKFJEW4gaY4iGDxAAAA +FDZKSyru90mA8jrU6C3DzgAA +jHaINqljIEm2qJDtDTFOuQAA +6wygmhD460qimcgt1wd1/AAA +1 +qkahte7etk+93u/8EQWH6QAA +1 +NYQPdoJsvUaaI1H1mdJKmwAA +3 + +NouveauCommercial +Constructeur de la classe Commercial + +4iu27vcM602OnPNc6SH2lAAA +4 + +nom +String +jf6AXhtLXEmyUfSv1YF+ewAA + + +adresse +String +jf6AXhtLXEmyUfSv1YF+ewAA + + +anneeEmbauche +int +jf6AXhtLXEmyUfSv1YF+ewAA + + +service +String +jf6AXhtLXEmyUfSv1YF+ewAA + + + +modifierCaCommercial +Modifie le chiffre d'affaire d'un commercial donné en paramètre + + +4iu27vcM602OnPNc6SH2lAAA +2 + +pdkReturn +void +Sc77Omr3fkuwk335LtTHEAAA + + +nouvelle_valeur +int +Sc77Omr3fkuwk335LtTHEAAA + + + +getType +Retourne le type de salarié que nous avons, ici Commercial + +4iu27vcM602OnPNc6SH2lAAA +1 + +pdkReturn +String = "Commercial" +Gh7WaHV61E+zr4g3vFFvKQAA + + +2 + +s-pourcentInteressement +Attribut collectif qui donne le pourcentage dont les commerciaux bénéficient sur le CA + +vkProtected +skClassifier +int +15 +4iu27vcM602OnPNc6SH2lAAA + + +caCommercial +vkPrivate +float +4iu27vcM602OnPNc6SH2lAAA + + + +ga2tNdkwJUKv8f4Ua5e4/AAA +4iu27vcM602OnPNc6SH2lAAA +TlONUO4fiE+4L/DX3hqMnwAA + + +ga2tNdkwJUKv8f4Ua5e4/AAA +4iu27vcM602OnPNc6SH2lAAA +TlONUO4fiE+4L/DX3hqMnwAA +4 +O+b3YrealEuVvWivg26emAAA +SgYzpaygUU++pVxhVLidkAAA +IkkfGv1MS0+cg1UdSZtI6gAA +obbWZFezTkew/GEQpepKYQAA + + +Employé +Retourne le type de salarié que nous avons, ici Employé + +ga2tNdkwJUKv8f4Ua5e4/AAA +4 +nYLUAPSoKkWnLNGGKKwAFgAA +SLSYgq4Vdk2iK/bFEJHEGAAA +jAcvOdediUyv2lhzGw7ycwAA +gTvXEFThwUahJukf1NoFwgAA +1 +dlv3kapYakCr496Lm5OuDQAA +1 + +getType +aX4nIVzQ7UOTI3QQvX6juAAA +1 + +pdkReturn +String = "Employé" +CPCJ+u6IxUiX5onOYx7kWAAA + + + + +ga2tNdkwJUKv8f4Ua5e4/AAA +aX4nIVzQ7UOTI3QQvX6juAAA +TlONUO4fiE+4L/DX3hqMnwAA +4 +xlAp0HQ5k06EHRtDXYgaHwAA +Luaqats2PEy5YZ5IOU8pNAAA +CBrwJLQXR0KU339DYPAzTgAA +ms3xQCoEXk2+r0S38fcTygAA + + + +Implementation Model +UMLStandard +implementationModel +QRG0R1fCQU2IKNXNK67kJQAA +1 + +Main +rstH60p1hUGdje8ImwF9ZwAA + +Ew/Cb+k76EatZgUykI+k5wAA + + + + +Deployment Model +UMLStandard +deploymentModel +QRG0R1fCQU2IKNXNK67kJQAA +1 + +Main +06+dRea9SUWgOBrNCJwrswAA + +SmNLw2Na60+JY+sZUkivfAAA + + + + + + diff --git a/G5a/employe_commerciaux.~ml b/G5a/employe_commerciaux.~ml new file mode 100644 index 0000000..3f9650e --- /dev/null +++ b/G5a/employe_commerciaux.~ml @@ -0,0 +1,590 @@ + + + + + + +UMLStandard + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +QRG0R1fCQU2IKNXNK67kJQAA +1 + +Main +DTFG+qBQrUqymM7hR2y8nQAA + +v7N4jrrAtECkMaDotRx1qgAA + + + + +Analysis Model +UMLStandard +analysisModel +QRG0R1fCQU2IKNXNK67kJQAA +1 + +Main +True +RobustnessDiagram +exVm5dZ2jkiV9NRvdJjSjAAA + +Cm/46mpn1UG9zOMMZDMWeQAA + + + + +Design Model +UMLStandard +designModel +QRG0R1fCQU2IKNXNK67kJQAA +1 + +Main +True +ga2tNdkwJUKv8f4Ua5e4/AAA + +Fb/6PDHdQEaPWwnzm9igKwAA +5 + +clMaroon +$00B9FFFF +64 +8 +442 +264 +TlONUO4fiE+4L/DX3hqMnwAA + + +3 +Salarie + + +False + + +False + + + +TlONUO4fiE+4L/DX3hqMnwAA + + +TlONUO4fiE+4L/DX3hqMnwAA + + +False +TlONUO4fiE+4L/DX3hqMnwAA + + + +clMaroon +$00B9FFFF +16 +408 +439 +133 +4iu27vcM602OnPNc6SH2lAAA + + +1 +Commercial + + +False + + +False + + + +4iu27vcM602OnPNc6SH2lAAA + + +4iu27vcM602OnPNc6SH2lAAA + + +False +4iu27vcM602OnPNc6SH2lAAA + + + +clMaroon +$00B9FFFF +245,408;265,271 +NYQPdoJsvUaaI1H1mdJKmwAA +dUOixKPqPEmhd6Te2vOEtAAA +3++EzmKFJEW4gaY4iGDxAAAA + +False +1,5707963267949 +15 +NYQPdoJsvUaaI1H1mdJKmwAA + + +False +1,5707963267949 +30 +NYQPdoJsvUaaI1H1mdJKmwAA + + +False +-1,5707963267949 +15 +NYQPdoJsvUaaI1H1mdJKmwAA + + + +clMaroon +$00B9FFFF +480 +400 +292 +184 +aX4nIVzQ7UOTI3QQvX6juAAA + + +1 +Employé + + +False + + +False + + + +aX4nIVzQ7UOTI3QQvX6juAAA + + +aX4nIVzQ7UOTI3QQvX6juAAA + + +False +aX4nIVzQ7UOTI3QQvX6juAAA + + + +clMaroon +$00B9FFFF +537,400;412,271 +dlv3kapYakCr496Lm5OuDQAA +dUOixKPqPEmhd6Te2vOEtAAA +nYLUAPSoKkWnLNGGKKwAFgAA + +False +1,5707963267949 +15 +dlv3kapYakCr496Lm5OuDQAA + + +False +1,5707963267949 +30 +dlv3kapYakCr496Lm5OuDQAA + + +False +-1,5707963267949 +15 +dlv3kapYakCr496Lm5OuDQAA + + + + +6 + +Salarie +Gestion des salariés + +True +ga2tNdkwJUKv8f4Ua5e4/AAA +4 +dUOixKPqPEmhd6Te2vOEtAAA +4yLWB+jzIEiooLUTA3nA9gAA +xsKrqTI8LkiAQAc/rYPpHAAA +oDcZMVW1q0ObX/C5R5hqVQAA +1 +qkahte7etk+93u/8EQWH6QAA +2 +NYQPdoJsvUaaI1H1mdJKmwAA +dlv3kapYakCr496Lm5OuDQAA +9 + +getAdresse +Retourne l'adresse de l'employé courant +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +String +S7Mk9qkxpEeak+3fzAnOiQAA + + + +getEmp +Retourne l'employé dont le matricule est passé en paramètre + +TlONUO4fiE+4L/DX3hqMnwAA +2 + +pdkReturn +String +YOU4NGiktEmHFaaK+t7IIQAA + + +matricule +int +YOU4NGiktEmHFaaK+t7IIQAA + + + +anciennete +Retourne l'ancienneté de l'employé (nombre d'années) + +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +int +gfj8M0MxrEKFoBxNfmjaLwAA + + + +getService +Retourne le service auquel est affecté l'employé + +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +String +Ga3P4+Nfx0CMnRYbuy1pmwAA + + + +changerService +Change le service de l'employé, donné en paramètre + +TlONUO4fiE+4L/DX3hqMnwAA +2 + +pdkReturn +void +iTxh//6jxk2GjInMcDIQIgAA + + +nouveauService +String +iTxh//6jxk2GjInMcDIQIgAA + + + +getPrimes +Retourne la prime totale acquise par l'employé + +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +int +kDVzoeGU00iJkB8keUDbNAAA + + + +c-getPlusAncien +Retourne l'employé qui a le plus d'ancienneté + +vkProtected +skClassifier +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +String +9UDJTj/UkUyQEAv8X9PqbgAA + + + +getType +Retourne le type d'employé (employé ou commercial) +A redéfinir +True +TlONUO4fiE+4L/DX3hqMnwAA +1 + +pdkReturn +String +/N2RedN5mE+2fjObZzOEwAAA + + + +NouvelEmploye +Constructeur de la classe avec pour paramètres le nom, l'adresse, l'année d'embauche et le service d'affectation de l'employé. + +TlONUO4fiE+4L/DX3hqMnwAA +4 + +nom +String +A5S0mQNbMk+WHC6m7Q4tRwAA + + +adresse +String +A5S0mQNbMk+WHC6m7Q4tRwAA + + +anneeEmbauche +int +A5S0mQNbMk+WHC6m7Q4tRwAA + + +service +String +A5S0mQNbMk+WHC6m7Q4tRwAA + + +8 + +matricule +Numéro de matricule de l'employé en cours +vkPrivate +int +TlONUO4fiE+4L/DX3hqMnwAA + + +nom +Nom de l'employé +vkPrivate +String +TlONUO4fiE+4L/DX3hqMnwAA + + +adresse +Adresse de l'employé +vkPrivate +String +TlONUO4fiE+4L/DX3hqMnwAA + + +anciennete +Années d'ancienneté de l'employé + +vkPrivate +int +TlONUO4fiE+4L/DX3hqMnwAA + + +montantPrime +Montant de la prime totale d'un employé +vkPrivate +int +TlONUO4fiE+4L/DX3hqMnwAA + + +s-coeffPrime +Coefficient de Prime de la classe Employé (attribut Collectif) + +vkProtected +skClassifier +120 +TlONUO4fiE+4L/DX3hqMnwAA + + +serviceAffectation +Nom du service d'affectaction de l'employé courant +vkPrivate +String +TlONUO4fiE+4L/DX3hqMnwAA + + +s-nombreEmploye +Nombre d'employé instancié (permet l'autoincrémentation du matricule) + +vkProtected +skClassifier +int +TlONUO4fiE+4L/DX3hqMnwAA + + + +Commercial +Gestion des commerciaux + +ga2tNdkwJUKv8f4Ua5e4/AAA +4 +3++EzmKFJEW4gaY4iGDxAAAA +FDZKSyru90mA8jrU6C3DzgAA +jHaINqljIEm2qJDtDTFOuQAA +6wygmhD460qimcgt1wd1/AAA +1 +qkahte7etk+93u/8EQWH6QAA +1 +NYQPdoJsvUaaI1H1mdJKmwAA +3 + +NouveauCommercial +Constructeur de la classe Commercial + +4iu27vcM602OnPNc6SH2lAAA +4 + +nom +String +jf6AXhtLXEmyUfSv1YF+ewAA + + +adresse +String +jf6AXhtLXEmyUfSv1YF+ewAA + + +anneeEmbauche +int +jf6AXhtLXEmyUfSv1YF+ewAA + + +service +String +jf6AXhtLXEmyUfSv1YF+ewAA + + + +modifierCaCommercial +Modifie le chiffre d'affaire d'un commercial donné en paramètre + + +4iu27vcM602OnPNc6SH2lAAA +2 + +pdkReturn +void +Sc77Omr3fkuwk335LtTHEAAA + + +nouvelle_valeur +int +Sc77Omr3fkuwk335LtTHEAAA + + + +getType +Retourne le type de salarié que nous avons, ici Commercial + +4iu27vcM602OnPNc6SH2lAAA +1 + +pdkReturn +String = "Commercial" +Gh7WaHV61E+zr4g3vFFvKQAA + + +2 + +s-pourcentInteressement +Attribut collectif qui donne le pourcentage dont les commerciaux bénéficient sur le CA + +vkProtected +skClassifier +int +15 +4iu27vcM602OnPNc6SH2lAAA + + +caCommercial +vkPrivate +float +4iu27vcM602OnPNc6SH2lAAA + + + +ga2tNdkwJUKv8f4Ua5e4/AAA +4iu27vcM602OnPNc6SH2lAAA +TlONUO4fiE+4L/DX3hqMnwAA + + +ga2tNdkwJUKv8f4Ua5e4/AAA +4iu27vcM602OnPNc6SH2lAAA +TlONUO4fiE+4L/DX3hqMnwAA +4 +O+b3YrealEuVvWivg26emAAA +SgYzpaygUU++pVxhVLidkAAA +IkkfGv1MS0+cg1UdSZtI6gAA +obbWZFezTkew/GEQpepKYQAA + + +Employé +Retourne le type de salarié que nous avons, ici Employé + +ga2tNdkwJUKv8f4Ua5e4/AAA +4 +nYLUAPSoKkWnLNGGKKwAFgAA +SLSYgq4Vdk2iK/bFEJHEGAAA +jAcvOdediUyv2lhzGw7ycwAA +gTvXEFThwUahJukf1NoFwgAA +1 +dlv3kapYakCr496Lm5OuDQAA +1 + +getType +aX4nIVzQ7UOTI3QQvX6juAAA +1 + +pdkReturn +String = "Employé" +CPCJ+u6IxUiX5onOYx7kWAAA + + + + +ga2tNdkwJUKv8f4Ua5e4/AAA +aX4nIVzQ7UOTI3QQvX6juAAA +TlONUO4fiE+4L/DX3hqMnwAA +4 +xlAp0HQ5k06EHRtDXYgaHwAA +Luaqats2PEy5YZ5IOU8pNAAA +CBrwJLQXR0KU339DYPAzTgAA +ms3xQCoEXk2+r0S38fcTygAA + + + +Implementation Model +UMLStandard +implementationModel +QRG0R1fCQU2IKNXNK67kJQAA +1 + +Main +rstH60p1hUGdje8ImwF9ZwAA + +Ew/Cb+k76EatZgUykI+k5wAA + + + + +Deployment Model +UMLStandard +deploymentModel +QRG0R1fCQU2IKNXNK67kJQAA +1 + +Main +06+dRea9SUWgOBrNCJwrswAA + +SmNLw2Na60+JY+sZUkivfAAA + + + + + + diff --git a/G5a/java/iutsud.zip b/G5a/java/iutsud.zip new file mode 100644 index 0000000..b4fd308 Binary files /dev/null and b/G5a/java/iutsud.zip differ diff --git a/G5a/java/iutsud/Assertion$InvariantException.class b/G5a/java/iutsud/Assertion$InvariantException.class new file mode 100644 index 0000000..0b414ee Binary files /dev/null and b/G5a/java/iutsud/Assertion$InvariantException.class differ diff --git a/G5a/java/iutsud/Assertion$PostConditionException.class b/G5a/java/iutsud/Assertion$PostConditionException.class new file mode 100644 index 0000000..9143f62 Binary files /dev/null and b/G5a/java/iutsud/Assertion$PostConditionException.class differ diff --git a/G5a/java/iutsud/Assertion$PreConditionException.class b/G5a/java/iutsud/Assertion$PreConditionException.class new file mode 100644 index 0000000..a9ba041 Binary files /dev/null and b/G5a/java/iutsud/Assertion$PreConditionException.class differ diff --git a/G5a/java/iutsud/Assertion.class b/G5a/java/iutsud/Assertion.class new file mode 100644 index 0000000..8187302 Binary files /dev/null and b/G5a/java/iutsud/Assertion.class differ diff --git a/G5a/java/iutsud/Console$ConvertionException.class b/G5a/java/iutsud/Console$ConvertionException.class new file mode 100644 index 0000000..33bb096 Binary files /dev/null and b/G5a/java/iutsud/Console$ConvertionException.class differ diff --git a/G5a/java/iutsud/Console$ReadException.class b/G5a/java/iutsud/Console$ReadException.class new file mode 100644 index 0000000..a61c005 Binary files /dev/null and b/G5a/java/iutsud/Console$ReadException.class differ diff --git a/G5a/java/iutsud/Console.class b/G5a/java/iutsud/Console.class new file mode 100644 index 0000000..b10cac7 Binary files /dev/null and b/G5a/java/iutsud/Console.class differ diff --git a/G5a/robot_2.uml b/G5a/robot_2.uml new file mode 100644 index 0000000..658c17f --- /dev/null +++ b/G5a/robot_2.uml @@ -0,0 +1,1425 @@ + + + + + + +UMLStandard + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +gDWRvp1AP0GyQOAAzKV3xwAA +1 + +Main +QgHCMXgbwUKvmAziw6RrlgAA + +tqHPPlCIkEaC4EvVc8TSSAAA + + + + +Analysis Model +UMLStandard +analysisModel +gDWRvp1AP0GyQOAAzKV3xwAA +1 + +Main +True +RobustnessDiagram +X3Bv9K8KaESoCDWbapQAtAAA + +9DrzOiGV7Eigl13P9/5IfwAA + + + + +Design Model +UMLStandard +designModel +gDWRvp1AP0GyQOAAzKV3xwAA +1 + +Main +True +7yx25hwlNUegcKzq8LQecwAA + +rdM9xjKZk0e88dFAd6RIMQAA +18 + +clMaroon +$00B9FFFF +8 +4 +232 +147 +ycMSRJqiYkGasrh0KVvo6QAA + + +3 +Robots + + +False + + +False + + + +ycMSRJqiYkGasrh0KVvo6QAA + + +ycMSRJqiYkGasrh0KVvo6QAA + + +False +ycMSRJqiYkGasrh0KVvo6QAA + + + +clMaroon +$00B9FFFF +8 +336 +168 +108 +3w44AnkBHkiPfZECtHzpLwAA + + +1 +Porteurs + + +False + + +False + + + +3w44AnkBHkiPfZECtHzpLwAA + + +3w44AnkBHkiPfZECtHzpLwAA + + +False +3w44AnkBHkiPfZECtHzpLwAA + + + +clMaroon +$00B9FFFF +200 +336 +173 +108 +G3rH7Pon10OkvX72CzhPDAAA + + +1 +Foreurs + + +False + + +False + + + +G3rH7Pon10OkvX72CzhPDAAA + + +G3rH7Pon10OkvX72CzhPDAAA + + +False +G3rH7Pon10OkvX72CzhPDAAA + + + +clMaroon +$00B9FFFF +96,336;115,150 +88teQj2X2kGkPIiQqVNVngAA +MOYRg2Akmk+VzIl3KeffmwAA +MEVepfww6kyXETjfRfM2mgAA + +False +1,5707963267949 +15 +88teQj2X2kGkPIiQqVNVngAA + + +False +1,5707963267949 +30 +88teQj2X2kGkPIiQqVNVngAA + + +False +-1,5707963267949 +15 +88teQj2X2kGkPIiQqVNVngAA + + + +clMaroon +$00B9FFFF +258,336;161,150 +873sZEKQfEeRfwDA3lHijAAA +MOYRg2Akmk+VzIl3KeffmwAA +V7QmWJCLU0ORNwEhxLL5hwAA + +False +1,5707963267949 +15 +873sZEKQfEeRfwDA3lHijAAA + + +False +1,5707963267949 +30 +873sZEKQfEeRfwDA3lHijAAA + + +False +-1,5707963267949 +15 +873sZEKQfEeRfwDA3lHijAAA + + + +clMaroon +$00B9FFFF +144 +496 +95 +45 +sdkIcon +/IDUnZ97Rk6Kb/NzNEWQ8AAA + + +1 +Deplaçable + + +False + + +False + + + +False +/IDUnZ97Rk6Kb/NzNEWQ8AAA + + +False +/IDUnZ97Rk6Kb/NzNEWQ8AAA + + + +clMaroon +$00B9FFFF +708 +244 +124 +137 +wUzxfSjnYkOqvRY9ifM2dAAA + + +1 +Obstacles + + +False + + +False + + + +wUzxfSjnYkOqvRY9ifM2dAAA + + +wUzxfSjnYkOqvRY9ifM2dAAA + + +False +wUzxfSjnYkOqvRY9ifM2dAAA + + + +clMaroon +$00B9FFFF +520 +240 +136 +140 +m/Zx3ppjFUCKp6AxxG9a0QAA + + +1 +Bases + + +False + + +False + + + +m/Zx3ppjFUCKp6AxxG9a0QAA + + +m/Zx3ppjFUCKp6AxxG9a0QAA + + +False +m/Zx3ppjFUCKp6AxxG9a0QAA + + + +clMaroon +$00B9FFFF +460 +8 +116 +112 +4Xq5OAfRAkCNAXcQVOvi6AAA + + +3 +Objet + + +False + + +False + + + +4Xq5OAfRAkCNAXcQVOvi6AAA + + +4Xq5OAfRAkCNAXcQVOvi6AAA + + +False +4Xq5OAfRAkCNAXcQVOvi6AAA + + + +clMaroon +$00B9FFFF +324 +180 +88 +69 +IG00QP0GyEua6YpHvrMsAAAA + + +1 +Equipe + + +False + + +False + + + +IG00QP0GyEua6YpHvrMsAAAA + + +IG00QP0GyEua6YpHvrMsAAAA + + +False +IG00QP0GyEua6YpHvrMsAAAA + + + +clMaroon +$00B9FFFF +567,240;533,119 +daX/N4wa0EG26ZQ/DeNTHAAA +ewHg267Z8k+2ECvPea2FpgAA +k9FXBagATUKUy3rOF27aNgAA + +False +1,5707963267949 +15 +daX/N4wa0EG26ZQ/DeNTHAAA + + +False +1,5707963267949 +30 +daX/N4wa0EG26ZQ/DeNTHAAA + + +False +-1,5707963267949 +15 +daX/N4wa0EG26ZQ/DeNTHAAA + + + +clMaroon +$00B9FFFF +708,252;574,119 +A6AtvQxV9EyWsQDczJQdxAAA +ewHg267Z8k+2ECvPea2FpgAA +yO6ghRHRDUyGAjxkP1uCqgAA + +False +1,5707963267949 +15 +A6AtvQxV9EyWsQDczJQdxAAA + + +False +1,5707963267949 +30 +A6AtvQxV9EyWsQDczJQdxAAA + + +False +-1,5707963267949 +15 +A6AtvQxV9EyWsQDczJQdxAAA + + + +clMaroon +$00B9FFFF +239,73;460,65 +1+LxACR/Lkqz0e5H/ciVRQAA +ewHg267Z8k+2ECvPea2FpgAA +MOYRg2Akmk+VzIl3KeffmwAA + +False +1,5707963267949 +15 +1+LxACR/Lkqz0e5H/ciVRQAA + + +False +1,5707963267949 +30 +1+LxACR/Lkqz0e5H/ciVRQAA + + +False +-1,5707963267949 +15 +1+LxACR/Lkqz0e5H/ciVRQAA + + + +clMaroon +$00B9FFFF +174,496;133,443 +4Heu9AXDb0qvV/GBytghywAA +MEVepfww6kyXETjfRfM2mgAA +htoDNHkRa0KKB/ykeOaAcAAA + +False +1,5707963267949 +15 +4Heu9AXDb0qvV/GBytghywAA + + +False +1,5707963267949 +30 +4Heu9AXDb0qvV/GBytghywAA + + +False +-1,5707963267949 +15 +4Heu9AXDb0qvV/GBytghywAA + + +False +-0,523598775598299 +30 +epHead +W98nv2xWAESNyLp3VQZoxwAA + + +False +0,523598775598299 +30 +epTail +cmBOttPpXECwZd6GW8oytAAA + + +False +0,523598775598299 +25 +epHead +W98nv2xWAESNyLp3VQZoxwAA + + +False +-0,523598775598299 +25 +epTail +cmBOttPpXECwZd6GW8oytAAA + + +False +-0,785398163397448 +40 +epHead +W98nv2xWAESNyLp3VQZoxwAA + + +False +0,785398163397448 +40 +epTail +cmBOttPpXECwZd6GW8oytAAA + + +False +-1000 +-1000 +50 +8 +W98nv2xWAESNyLp3VQZoxwAA + + +False +-1000 +-1000 +50 +8 +cmBOttPpXECwZd6GW8oytAAA + + + +clMaroon +$00B9FFFF +712 +8 +111 +95 +mEeJyPDzU0ePwfKtgJ2LvAAA + + +1 +Simulation + + +False + + +False + + + +mEeJyPDzU0ePwfKtgJ2LvAAA + + +mEeJyPDzU0ePwfKtgJ2LvAAA + + +False +mEeJyPDzU0ePwfKtgJ2LvAAA + + + +clMaroon +$00B9FFFF +575,61;712,57 +DM4spu0D2k6eFS4Uf8wcPQAA +AW7idd1+f0mKJf3m1sb8yAAA +ewHg267Z8k+2ECvPea2FpgAA + +False +1,5707963267949 +15 +DM4spu0D2k6eFS4Uf8wcPQAA + + +False +1,5707963267949 +30 +DM4spu0D2k6eFS4Uf8wcPQAA + + +False +-1,5707963267949 +15 +DM4spu0D2k6eFS4Uf8wcPQAA + + +False +-0,523598775598299 +30 +epHead +mgTIefQGH06f7cezJg4D1wAA + + +False +0,523598775598299 +30 +epTail +zskS5ErkFEu+PfiV6OJniwAA + + +False +0,523598775598299 +25 +epHead +mgTIefQGH06f7cezJg4D1wAA + + +False +-0,523598775598299 +25 +epTail +zskS5ErkFEu+PfiV6OJniwAA + + +False +-0,785398163397448 +40 +epHead +mgTIefQGH06f7cezJg4D1wAA + + +False +0,785398163397448 +40 +epTail +zskS5ErkFEu+PfiV6OJniwAA + + +False +-1000 +-1000 +50 +8 +mgTIefQGH06f7cezJg4D1wAA + + +False +-1000 +-1000 +50 +8 +zskS5ErkFEu+PfiV6OJniwAA + + + +clMaroon +$00B9FFFF +239,142;324,190 +JpckmbEP+kOl0Q6BinUzSwAA +U1NLEpqZmk2eB3/stsHrhAAA +MOYRg2Akmk+VzIl3KeffmwAA + +False +1,5707963267949 +15 +JpckmbEP+kOl0Q6BinUzSwAA + + +False +1,5707963267949 +30 +JpckmbEP+kOl0Q6BinUzSwAA + + +False +-1,5707963267949 +15 +JpckmbEP+kOl0Q6BinUzSwAA + + +False +-0,523598775598299 +30 +epHead +RQXsR5HOvUq0UM2WGjnZ0wAA + + +False +0,523598775598299 +30 +epTail +Jq8/v501YE2SNrTelGn8hgAA + + +False +0,523598775598299 +25 +epHead +RQXsR5HOvUq0UM2WGjnZ0wAA + + +-0,523598775598299 +25 +epTail +1..* +Jq8/v501YE2SNrTelGn8hgAA + + +False +-0,785398163397448 +40 +epHead +RQXsR5HOvUq0UM2WGjnZ0wAA + + +False +0,785398163397448 +40 +epTail +Jq8/v501YE2SNrTelGn8hgAA + + +False +-1000 +-1000 +50 +8 +RQXsR5HOvUq0UM2WGjnZ0wAA + + +False +-1000 +-1000 +50 +8 +Jq8/v501YE2SNrTelGn8hgAA + + + +clMaroon +$00B9FFFF +411,233;520,280 +dpzjX+SwyECnQAwBmT3qDAAA +k9FXBagATUKUy3rOF27aNgAA +U1NLEpqZmk2eB3/stsHrhAAA + +False +1,5707963267949 +15 +dpzjX+SwyECnQAwBmT3qDAAA + + +False +1,5707963267949 +30 +dpzjX+SwyECnQAwBmT3qDAAA + + +False +-1,5707963267949 +15 +dpzjX+SwyECnQAwBmT3qDAAA + + +False +-0,523598775598299 +30 +epHead +sKLvkoNlQ0mtAVgEJ1iu9gAA + + +False +0,523598775598299 +30 +epTail +UOa7RuTG00W+frl2LGJdmAAA + + +0,523598775598299 +25 +epHead +1 +sKLvkoNlQ0mtAVgEJ1iu9gAA + + +-0,523598775598299 +25 +epTail +1 +UOa7RuTG00W+frl2LGJdmAAA + + +False +-0,785398163397448 +40 +epHead +sKLvkoNlQ0mtAVgEJ1iu9gAA + + +False +0,785398163397448 +40 +epTail +UOa7RuTG00W+frl2LGJdmAAA + + +False +-1000 +-1000 +50 +8 +sKLvkoNlQ0mtAVgEJ1iu9gAA + + +False +-1000 +-1000 +50 +8 +UOa7RuTG00W+frl2LGJdmAAA + + + + +24 + +Robots +True +7yx25hwlNUegcKzq8LQecwAA +4 +MOYRg2Akmk+VzIl3KeffmwAA +4xT3uMLrVECNYp8CdHzpCgAA +CqxbYQMJlkqxHOlKqTj5OQAA +rJlWPNOxIkWsflFIIDdBKgAA +1 +1+LxACR/Lkqz0e5H/ciVRQAA +3 +22IphWBS9Uq/04KQrr8TKAAA +88teQj2X2kGkPIiQqVNVngAA +873sZEKQfEeRfwDA3lHijAAA +4 + +percevoir +ycMSRJqiYkGasrh0KVvo6QAA + + +rechargerBatteries +ycMSRJqiYkGasrh0KVvo6QAA +1 + +e +int +/UZnxVqR/EKGDKY5tSRq9gAA + + + +vivre +ycMSRJqiYkGasrh0KVvo6QAA + + +getCouleur +ycMSRJqiYkGasrh0KVvo6QAA + +5 +jjZ++cPOAE6HuFYpA/OntgAA +ZCPyp8dQpkyEffVN0/vXDAAA +AiXVvDoKMEmc4KRMgOGyUwAA +Jq8/v501YE2SNrTelGn8hgAA +jzTNCyKc50+T0RnHiKs3wwAA +4 + +energie +vkPrivate +int +ycMSRJqiYkGasrh0KVvo6QAA + + +distancePercep +vkProtected +int +ycMSRJqiYkGasrh0KVvo6QAA + + +numéro +vkPrivate +int +ycMSRJqiYkGasrh0KVvo6QAA + + +solidite +vkPrivate +int +ycMSRJqiYkGasrh0KVvo6QAA + + + +Porteurs +7yx25hwlNUegcKzq8LQecwAA +4 +MEVepfww6kyXETjfRfM2mgAA +zRgJE2Hy90iHqTlYzHFjoAAA +Xr+vdPaH60WV/wX8DTxevgAA +6IlIoLxSkUOvbpHTUitijAAA +2 +22IphWBS9Uq/04KQrr8TKAAA +88teQj2X2kGkPIiQqVNVngAA +2 + +chargerMinerai +3w44AnkBHkiPfZECtHzpLwAA +1 + +Q +int +pLEbJaamnk2038JYbwP91AAA + + + +déchargerMinerai +3w44AnkBHkiPfZECtHzpLwAA +1 + +Q +int +AJi79ZS0wk6K0Uoibpu7KQAA + + +2 +1tQFnQL1BUKPL3fwATp1SwAA +W98nv2xWAESNyLp3VQZoxwAA +2 + +c-chargeMax +vkProtected +skClassifier +int +3w44AnkBHkiPfZECtHzpLwAA + + +distancePercep +vkPrivate +int +10 +3w44AnkBHkiPfZECtHzpLwAA + + + +Foreurs +7yx25hwlNUegcKzq8LQecwAA +4 +V7QmWJCLU0ORNwEhxLL5hwAA +tmc845FXsECqtD9C+fyXZQAA +0wq6SGhDC06q7mBdjSEmrQAA +xxrEeaVPtUmKUDRyq9GyrQAA +1 +873sZEKQfEeRfwDA3lHijAAA +2 + +forer +G3rH7Pon10OkvX72CzhPDAAA +1 + +Q int +uW1Lr3VnNEaeAkNwbCvo6AAA + + + +tirer +G3rH7Pon10OkvX72CzhPDAAA +3 + +x +int +BBMYfxYLoUGxRTZfHSI1OQAA + + +y +int +BBMYfxYLoUGxRTZfHSI1OQAA + + +p +int +BBMYfxYLoUGxRTZfHSI1OQAA + + +1 +piBAuj3dZEC4r2xN+euYOAAA +3 + +distancePercep +vkPrivate +int +20 +G3rH7Pon10OkvX72CzhPDAAA + + +portée +vkPrivate +int +G3rH7Pon10OkvX72CzhPDAAA + + +puissanceTir +vkPrivate +int +G3rH7Pon10OkvX72CzhPDAAA + + + +7yx25hwlNUegcKzq8LQecwAA +2 + +False +fNWbyKFvpk+crc38baAk1gAA +3w44AnkBHkiPfZECtHzpLwAA + + +fNWbyKFvpk+crc38baAk1gAA +ycMSRJqiYkGasrh0KVvo6QAA + + + +7yx25hwlNUegcKzq8LQecwAA +2 + +False +HYcoweSehEWakRjrDpsJNwAA +G3rH7Pon10OkvX72CzhPDAAA + + +HYcoweSehEWakRjrDpsJNwAA +ycMSRJqiYkGasrh0KVvo6QAA + + + +7yx25hwlNUegcKzq8LQecwAA +3w44AnkBHkiPfZECtHzpLwAA +ycMSRJqiYkGasrh0KVvo6QAA + + +7yx25hwlNUegcKzq8LQecwAA +3w44AnkBHkiPfZECtHzpLwAA +ycMSRJqiYkGasrh0KVvo6QAA +4 +Gepci7RSe0Karv+kudwRbgAA +5711ReDr5ESqq5pAZgh9DAAA +5ZqUQ7mACUeH8XVxQyOibAAA +0hxk/P6XhEyh+9BXjboFwwAA + + +7yx25hwlNUegcKzq8LQecwAA +G3rH7Pon10OkvX72CzhPDAAA +ycMSRJqiYkGasrh0KVvo6QAA +4 +ep1GXx8TG0KnCk4PY6NYOwAA +91KDpN/3QEalDaiagwmPRQAA +8mD7nZa+Rk+ZwF/9QPpCQgAA ++tn1R7qS2kul5XCCxQhPnwAA + + +Deplaçable +7yx25hwlNUegcKzq8LQecwAA +3 +htoDNHkRa0KKB/ykeOaAcAAA +1nBfVFybNUa8Pm+YUI8rWAAA +WkUiSbO8ik6HaNtNpplAjgAA +1 + +seDéplacer(deltaX: int, deltaY: int) +/IDUnZ97Rk6Kb/NzNEWQ8AAA + +1 +cmBOttPpXECwZd6GW8oytAAA + + +Obstacles +7yx25hwlNUegcKzq8LQecwAA +4 +yO6ghRHRDUyGAjxkP1uCqgAA +LOJDIROQ6kCFefwDggWeCAAA +/pAcZThlWUqH6JIIF1+Y9QAA +eVMGGt+tB0+U6bVbAV+e+AAA +1 +A6AtvQxV9EyWsQDczJQdxAAA +1 + +getCouleur +wUzxfSjnYkOqvRY9ifM2dAAA + +2 + +couleur +vkPrivate +String +"noir" +wUzxfSjnYkOqvRY9ifM2dAAA + + +solidité +vkPrivate +int +100 +wUzxfSjnYkOqvRY9ifM2dAAA + + + +Bases +7yx25hwlNUegcKzq8LQecwAA +4 +k9FXBagATUKUy3rOF27aNgAA +Sn9T1FgjAUqQzejAA/akuwAA +aNeGDR8eXkGcbbUNj4A+QwAA +Z18yi9kZjkCol0DlivSUTQAA +1 +daX/N4wa0EG26ZQ/DeNTHAAA +1 + +getCouleur +m/Zx3ppjFUCKp6AxxG9a0QAA + +3 +NArwY1xRqEOzSMv93RTJXgAA +sKLvkoNlQ0mtAVgEJ1iu9gAA +dhrMSMCMeESVLezievlQKQAA +1 + +MineraiBase +vkPrivate +int +m/Zx3ppjFUCKp6AxxG9a0QAA + + + +Objet +True +7yx25hwlNUegcKzq8LQecwAA +4 +ewHg267Z8k+2ECvPea2FpgAA +V5Dxfb00ykiv2RV+q4fOjAAA +tsUYH6TtCU2+BWc5EShEwAAA +UqWkVw8q6k+SQyomD00wTQAA +3 +daX/N4wa0EG26ZQ/DeNTHAAA +A6AtvQxV9EyWsQDczJQdxAAA +1+LxACR/Lkqz0e5H/ciVRQAA +1 + +getCouleur +True +4Xq5OAfRAkCNAXcQVOvi6AAA + +1 +zskS5ErkFEu+PfiV6OJniwAA +4 + +x +vkPrivate +int +4Xq5OAfRAkCNAXcQVOvi6AAA + + +y +vkPrivate +int +4Xq5OAfRAkCNAXcQVOvi6AAA + + +icône +vkPrivate +String +4Xq5OAfRAkCNAXcQVOvi6AAA + + +solidité +vkProtected +int +4Xq5OAfRAkCNAXcQVOvi6AAA + + + +< appartient à +7yx25hwlNUegcKzq8LQecwAA +Gu7uSAipaE2k9G5Am14FrQAA +2 + +Habitants +1..* +bcW7clYZ/0OKNkARCe5puwAA +ycMSRJqiYkGasrh0KVvo6QAA + + +Maison +1 +bcW7clYZ/0OKNkARCe5puwAA +m/Zx3ppjFUCKp6AxxG9a0QAA + + + +Equipe +7yx25hwlNUegcKzq8LQecwAA +Gu7uSAipaE2k9G5Am14FrQAA +4 +U1NLEpqZmk2eB3/stsHrhAAA +raTW83FHuESXTpkTxkdQ5QAA +ctCDzV6bskG9m1iAhhuRKgAA +OvaKfgJ1H0if35pdUf9qCQAA +2 +RQXsR5HOvUq0UM2WGjnZ0wAA +UOa7RuTG00W+frl2LGJdmAAA +2 + +equipe +vkPrivate +String +IG00QP0GyEua6YpHvrMsAAAA + + +couleur +vkPrivate +String +IG00QP0GyEua6YpHvrMsAAAA + + + +7yx25hwlNUegcKzq8LQecwAA +IG00QP0GyEua6YpHvrMsAAAA +bcW7clYZ/0OKNkARCe5puwAA + + +7yx25hwlNUegcKzq8LQecwAA +m/Zx3ppjFUCKp6AxxG9a0QAA +4Xq5OAfRAkCNAXcQVOvi6AAA +4 +D8H+QL+K7E+Bk6xa0zViOQAA +O2F4PJtNIku8djb0KQy4IQAA +rECkbpO1c0q7cSRGhv6BrQAA +VwYsiiJ/6E6qyz9btgu7sgAA + + +7yx25hwlNUegcKzq8LQecwAA +wUzxfSjnYkOqvRY9ifM2dAAA +4Xq5OAfRAkCNAXcQVOvi6AAA +4 +9Zh7XcjGwke02VkfF9EpqAAA +j5QR0wcFqEWg9++/0gUHdQAA +Wof/R1PezUegztR4eHo4hwAA +qz+TbFQTHkSUsY80cO06agAA + + +7yx25hwlNUegcKzq8LQecwAA +ycMSRJqiYkGasrh0KVvo6QAA +4Xq5OAfRAkCNAXcQVOvi6AAA +4 +CtDtfTNt1k+w7f6kDWuZWAAA +xiWE9ftoekW3OO25oOvLSgAA +pYxpPZFKTke9u12VODgzwgAA +y/IfM8/AB024Nq0gtnkrgAAA + + +7yx25hwlNUegcKzq8LQecwAA +4 +Qs5C+gyHXEyiYR+oOsRNbgAA +dy04oz7k80CyrlNYUOPJ9QAA +X1yaFFKet0CAlRaOoq/QBwAA +yAaD4MPZj0aUJLfQzeEokAAA +2 + +4Heu9AXDb0qvV/GBytghywAA +/IDUnZ97Rk6Kb/NzNEWQ8AAA +4 +Z5pYf/ClDE+HizrK7QnShgAA +cPUpMPg7EUePSyOWgeQTpAAA +KcOZXoUZOEuNqxXyrCXpoAAA +/JZP28v3ZUeBCfAWi/yBNgAA + + +4Heu9AXDb0qvV/GBytghywAA +3w44AnkBHkiPfZECtHzpLwAA +4 +Q3IcgKjOKUy5jxsMM6UrogAA +rSGdRELNSk2DYRsjXiulhwAA +irnUO3+j9kmylt75Wkyf9AAA +hcUfNQvvS0eaC4/xZTKxqwAA + + + +Simulation +7yx25hwlNUegcKzq8LQecwAA +4 +AW7idd1+f0mKJf3m1sb8yAAA +LThPvcarPESYWK66O1vUMwAA +IZ1S/NZYa0qM+jrSy7qKngAA +k/p38ZyDVk2aSa0yjExmpAAA +4 + +lancerSimulation +mEeJyPDzU0ePwfKtgJ2LvAAA + + +stopperSimulation +mEeJyPDzU0ePwfKtgJ2LvAAA + + +vainqueur +mEeJyPDzU0ePwfKtgJ2LvAAA + + +ajouterRobot +mEeJyPDzU0ePwfKtgJ2LvAAA + +1 +mgTIefQGH06f7cezJg4D1wAA + + +7yx25hwlNUegcKzq8LQecwAA +4 +368hJTdIRESrxapQKHdmWAAA +KnIaDgcRCk+BK2tAi5zWfQAA +BPtcN3RsDUmnIzBvDavvAwAA +aExZ4CjIFECqlgJ214+RcwAA +2 + +DM4spu0D2k6eFS4Uf8wcPQAA +4Xq5OAfRAkCNAXcQVOvi6AAA +4 +J4NbVFxAFE6IGDLkHzY26AAA +TmqRIPasykGTHrI4iCpT3gAA +rC62mU8Z0UOKqaKGOBUSRwAA ++M7IWE9vAUKd0NbRAGn5pwAA + + +DM4spu0D2k6eFS4Uf8wcPQAA +mEeJyPDzU0ePwfKtgJ2LvAAA +4 +6rIZB70J2UCkMAU+1PfecgAA +UQn7gGPUkUCbsStXJIBxtgAA +0wbkSoTF9EGIqdhsIUli5wAA +mi4oboT7tkuw6RDKFyrNyQAA + + + +7yx25hwlNUegcKzq8LQecwAA +4 +JLvk6iat0UuvgSndmRgRtwAA +DNuP4Mf+NkGmNh37pJoFigAA +zR20PGaS/0CyIQ8b6HjgIQAA +v3dv3OZjYkKWcCrqw/YkXwAA +2 + +1..* +JpckmbEP+kOl0Q6BinUzSwAA +ycMSRJqiYkGasrh0KVvo6QAA +4 +e2XUVY0AX0yC50erwD1r+QAA +tlErCeIYvke4llmDDEzaKgAA +rJGq+GiKxU6rbewoasl+RQAA +iUu5SIUHJkmjjmKp2sX/eAAA + + +akComposite +JpckmbEP+kOl0Q6BinUzSwAA +IG00QP0GyEua6YpHvrMsAAAA +4 +qxtGoweGrECkV/xzbtRaTAAA +/TsdUjnMykaj4mLzUyKLbwAA +Kbah33yudEW3ZXvQQIjYjQAA +zukh6NO3vUicZ6PwI0ZEnwAA + + + +7yx25hwlNUegcKzq8LQecwAA +4 +CTKMuiTL9kqodHyBZaAwiwAA +u0dePnmh/U26K+DmKgHS6gAA +av6EQwUOgEysKOc/Q6uCTwAA +Ay/KYudIXUeravklzbsViAAA +2 + +1 +dpzjX+SwyECnQAwBmT3qDAAA +IG00QP0GyEua6YpHvrMsAAAA +4 +267Rn7KmSkCXjzgd9s+DRQAA +zw4aeIDPRkO/PXgYrg45awAA +tZ7XDQolmUqj9aSbWZlSzQAA +Uz3pOhWSLUiVm42TVoiEJwAA + + +1 +dpzjX+SwyECnQAwBmT3qDAAA +m/Zx3ppjFUCKp6AxxG9a0QAA +4 +9BjIxMzsHkKoUtsFXM/7dAAA +s8jNyZDZpk+hmrguexBwogAA +4nbljWVTLEGF13nhlmc75AAA +hNKPmGcD/EO53hy3Pg0P0wAA + + + +7yx25hwlNUegcKzq8LQecwAA +2 + +Posesseurs +1..* +WVC8+oA5QEWt7B01CMPIGgAA +ycMSRJqiYkGasrh0KVvo6QAA + + +Maison +akComposite +WVC8+oA5QEWt7B01CMPIGgAA +m/Zx3ppjFUCKp6AxxG9a0QAA + + + + +Implementation Model +UMLStandard +implementationModel +gDWRvp1AP0GyQOAAzKV3xwAA +1 + +Main +NdXmgZoBP0i+7cYUXawh6AAA + +7axXkqr5c0qY5pg6sV9hBgAA + + + + +Deployment Model +UMLStandard +deploymentModel +gDWRvp1AP0GyQOAAzKV3xwAA +1 + +Main +OaszIsxK3EeegBrOKUUTSgAA + +RPSc+xFd3UW8OJk4yzPlzwAA + + + + + + diff --git a/G5a/robot_2.~ml b/G5a/robot_2.~ml new file mode 100644 index 0000000..7ca8c9f --- /dev/null +++ b/G5a/robot_2.~ml @@ -0,0 +1,1503 @@ + + + + + + +UMLStandard + + + + +Untitled +5 + +Use Case Model +UMLStandard +useCaseModel +gDWRvp1AP0GyQOAAzKV3xwAA +1 + +Main +QgHCMXgbwUKvmAziw6RrlgAA + +tqHPPlCIkEaC4EvVc8TSSAAA + + + + +Analysis Model +UMLStandard +analysisModel +gDWRvp1AP0GyQOAAzKV3xwAA +1 + +Main +True +RobustnessDiagram +X3Bv9K8KaESoCDWbapQAtAAA + +9DrzOiGV7Eigl13P9/5IfwAA + + + + +Design Model +UMLStandard +designModel +gDWRvp1AP0GyQOAAzKV3xwAA +1 + +Main +True +7yx25hwlNUegcKzq8LQecwAA + +rdM9xjKZk0e88dFAd6RIMQAA +19 + +clMaroon +$00B9FFFF +8 +4 +232 +134 +ycMSRJqiYkGasrh0KVvo6QAA + + +1 +Robots + + +False + + +False + + + +ycMSRJqiYkGasrh0KVvo6QAA + + +ycMSRJqiYkGasrh0KVvo6QAA + + +False +ycMSRJqiYkGasrh0KVvo6QAA + + + +clMaroon +$00B9FFFF +8 +336 +168 +108 +3w44AnkBHkiPfZECtHzpLwAA + + +1 +Porteurs + + +False + + +False + + + +3w44AnkBHkiPfZECtHzpLwAA + + +3w44AnkBHkiPfZECtHzpLwAA + + +False +3w44AnkBHkiPfZECtHzpLwAA + + + +clMaroon +$00B9FFFF +200 +336 +173 +108 +G3rH7Pon10OkvX72CzhPDAAA + + +1 +Foreurs + + +False + + +False + + + +G3rH7Pon10OkvX72CzhPDAAA + + +G3rH7Pon10OkvX72CzhPDAAA + + +False +G3rH7Pon10OkvX72CzhPDAAA + + + +clMaroon +$00B9FFFF +96,336;116,137 +88teQj2X2kGkPIiQqVNVngAA +MOYRg2Akmk+VzIl3KeffmwAA +MEVepfww6kyXETjfRfM2mgAA + +False +1,5707963267949 +15 +88teQj2X2kGkPIiQqVNVngAA + + +False +1,5707963267949 +30 +88teQj2X2kGkPIiQqVNVngAA + + +False +-1,5707963267949 +15 +88teQj2X2kGkPIiQqVNVngAA + + + +clMaroon +$00B9FFFF +259,336;157,137 +873sZEKQfEeRfwDA3lHijAAA +MOYRg2Akmk+VzIl3KeffmwAA +V7QmWJCLU0ORNwEhxLL5hwAA + +False +1,5707963267949 +15 +873sZEKQfEeRfwDA3lHijAAA + + +False +1,5707963267949 +30 +873sZEKQfEeRfwDA3lHijAAA + + +False +-1,5707963267949 +15 +873sZEKQfEeRfwDA3lHijAAA + + + +clMaroon +$00B9FFFF +144 +496 +95 +45 +sdkIcon +/IDUnZ97Rk6Kb/NzNEWQ8AAA + + +1 +Deplaçable + + +False + + +False + + + +False +/IDUnZ97Rk6Kb/NzNEWQ8AAA + + +False +/IDUnZ97Rk6Kb/NzNEWQ8AAA + + + +clMaroon +$00B9FFFF +708 +244 +124 +137 +wUzxfSjnYkOqvRY9ifM2dAAA + + +1 +Obstacles + + +False + + +False + + + +wUzxfSjnYkOqvRY9ifM2dAAA + + +wUzxfSjnYkOqvRY9ifM2dAAA + + +False +wUzxfSjnYkOqvRY9ifM2dAAA + + + +clMaroon +$00B9FFFF +520 +240 +136 +140 +m/Zx3ppjFUCKp6AxxG9a0QAA + + +1 +Bases + + +False + + +False + + + +m/Zx3ppjFUCKp6AxxG9a0QAA + + +m/Zx3ppjFUCKp6AxxG9a0QAA + + +False +m/Zx3ppjFUCKp6AxxG9a0QAA + + + +clMaroon +$00B9FFFF +460 +8 +116 +112 +4Xq5OAfRAkCNAXcQVOvi6AAA + + +3 +Objet + + +False + + +False + + + +4Xq5OAfRAkCNAXcQVOvi6AAA + + +4Xq5OAfRAkCNAXcQVOvi6AAA + + +False +4Xq5OAfRAkCNAXcQVOvi6AAA + + + +clMaroon +$00B9FFFF +292 +240 +88 +69 +IG00QP0GyEua6YpHvrMsAAAA + + +1 +Equipe + + +False + + +False + + + +IG00QP0GyEua6YpHvrMsAAAA + + +IG00QP0GyEua6YpHvrMsAAAA + + +False +IG00QP0GyEua6YpHvrMsAAAA + + + +clMaroon +$00B9FFFF +567,240;533,119 +daX/N4wa0EG26ZQ/DeNTHAAA +ewHg267Z8k+2ECvPea2FpgAA +k9FXBagATUKUy3rOF27aNgAA + +False +1,5707963267949 +15 +daX/N4wa0EG26ZQ/DeNTHAAA + + +False +1,5707963267949 +30 +daX/N4wa0EG26ZQ/DeNTHAAA + + +False +-1,5707963267949 +15 +daX/N4wa0EG26ZQ/DeNTHAAA + + + +clMaroon +$00B9FFFF +708,252;574,119 +A6AtvQxV9EyWsQDczJQdxAAA +ewHg267Z8k+2ECvPea2FpgAA +yO6ghRHRDUyGAjxkP1uCqgAA + +False +1,5707963267949 +15 +A6AtvQxV9EyWsQDczJQdxAAA + + +False +1,5707963267949 +30 +A6AtvQxV9EyWsQDczJQdxAAA + + +False +-1,5707963267949 +15 +A6AtvQxV9EyWsQDczJQdxAAA + + + +clMaroon +$00B9FFFF +239,68;460,64 +1+LxACR/Lkqz0e5H/ciVRQAA +ewHg267Z8k+2ECvPea2FpgAA +MOYRg2Akmk+VzIl3KeffmwAA + +False +1,5707963267949 +15 +1+LxACR/Lkqz0e5H/ciVRQAA + + +False +1,5707963267949 +30 +1+LxACR/Lkqz0e5H/ciVRQAA + + +False +-1,5707963267949 +15 +1+LxACR/Lkqz0e5H/ciVRQAA + + + +clMaroon +$00B9FFFF +174,496;133,443 +4Heu9AXDb0qvV/GBytghywAA +MEVepfww6kyXETjfRfM2mgAA +htoDNHkRa0KKB/ykeOaAcAAA + +False +1,5707963267949 +15 +4Heu9AXDb0qvV/GBytghywAA + + +False +1,5707963267949 +30 +4Heu9AXDb0qvV/GBytghywAA + + +False +-1,5707963267949 +15 +4Heu9AXDb0qvV/GBytghywAA + + +False +-0,523598775598299 +30 +epHead +W98nv2xWAESNyLp3VQZoxwAA + + +False +0,523598775598299 +30 +epTail +cmBOttPpXECwZd6GW8oytAAA + + +False +0,523598775598299 +25 +epHead +W98nv2xWAESNyLp3VQZoxwAA + + +False +-0,523598775598299 +25 +epTail +cmBOttPpXECwZd6GW8oytAAA + + +False +-0,785398163397448 +40 +epHead +W98nv2xWAESNyLp3VQZoxwAA + + +False +0,785398163397448 +40 +epTail +cmBOttPpXECwZd6GW8oytAAA + + +False +-1000 +-1000 +50 +8 +W98nv2xWAESNyLp3VQZoxwAA + + +False +-1000 +-1000 +50 +8 +cmBOttPpXECwZd6GW8oytAAA + + + +clMaroon +$00B9FFFF +712 +8 +111 +95 +mEeJyPDzU0ePwfKtgJ2LvAAA + + +1 +Simulation + + +False + + +False + + + +mEeJyPDzU0ePwfKtgJ2LvAAA + + +mEeJyPDzU0ePwfKtgJ2LvAAA + + +False +mEeJyPDzU0ePwfKtgJ2LvAAA + + + +clMaroon +$00B9FFFF +575,61;712,57 +DM4spu0D2k6eFS4Uf8wcPQAA +AW7idd1+f0mKJf3m1sb8yAAA +ewHg267Z8k+2ECvPea2FpgAA + +False +1,5707963267949 +15 +DM4spu0D2k6eFS4Uf8wcPQAA + + +False +1,5707963267949 +30 +DM4spu0D2k6eFS4Uf8wcPQAA + + +False +-1,5707963267949 +15 +DM4spu0D2k6eFS4Uf8wcPQAA + + +False +-0,523598775598299 +30 +epHead +mgTIefQGH06f7cezJg4D1wAA + + +False +0,523598775598299 +30 +epTail +zskS5ErkFEu+PfiV6OJniwAA + + +False +0,523598775598299 +25 +epHead +mgTIefQGH06f7cezJg4D1wAA + + +False +-0,523598775598299 +25 +epTail +zskS5ErkFEu+PfiV6OJniwAA + + +False +-0,785398163397448 +40 +epHead +mgTIefQGH06f7cezJg4D1wAA + + +False +0,785398163397448 +40 +epTail +zskS5ErkFEu+PfiV6OJniwAA + + +False +-1000 +-1000 +50 +8 +mgTIefQGH06f7cezJg4D1wAA + + +False +-1000 +-1000 +50 +8 +zskS5ErkFEu+PfiV6OJniwAA + + + +clMaroon +$00B9FFFF +193,137;300,240 +JpckmbEP+kOl0Q6BinUzSwAA +U1NLEpqZmk2eB3/stsHrhAAA +MOYRg2Akmk+VzIl3KeffmwAA + +False +1,5707963267949 +15 +JpckmbEP+kOl0Q6BinUzSwAA + + +False +1,5707963267949 +30 +JpckmbEP+kOl0Q6BinUzSwAA + + +False +-1,5707963267949 +15 +JpckmbEP+kOl0Q6BinUzSwAA + + +False +-0,523598775598299 +30 +epHead +RQXsR5HOvUq0UM2WGjnZ0wAA + + +False +0,523598775598299 +30 +epTail +Jq8/v501YE2SNrTelGn8hgAA + + +False +0,523598775598299 +25 +epHead +RQXsR5HOvUq0UM2WGjnZ0wAA + + +-0,523598775598299 +25 +epTail +1..* +Jq8/v501YE2SNrTelGn8hgAA + + +False +-0,785398163397448 +40 +epHead +RQXsR5HOvUq0UM2WGjnZ0wAA + + +False +0,785398163397448 +40 +epTail +Jq8/v501YE2SNrTelGn8hgAA + + +False +-1000 +-1000 +50 +8 +RQXsR5HOvUq0UM2WGjnZ0wAA + + +False +-1000 +-1000 +50 +8 +Jq8/v501YE2SNrTelGn8hgAA + + + +clMaroon +$00B9FFFF +379,280;520,300 +dpzjX+SwyECnQAwBmT3qDAAA +k9FXBagATUKUy3rOF27aNgAA +U1NLEpqZmk2eB3/stsHrhAAA + +False +1,5707963267949 +15 +dpzjX+SwyECnQAwBmT3qDAAA + + +False +1,5707963267949 +30 +dpzjX+SwyECnQAwBmT3qDAAA + + +False +-1,5707963267949 +15 +dpzjX+SwyECnQAwBmT3qDAAA + + +False +-0,523598775598299 +30 +epHead +sKLvkoNlQ0mtAVgEJ1iu9gAA + + +False +0,523598775598299 +30 +epTail +UOa7RuTG00W+frl2LGJdmAAA + + +0,523598775598299 +25 +epHead +1 +sKLvkoNlQ0mtAVgEJ1iu9gAA + + +-0,523598775598299 +25 +epTail +1 +UOa7RuTG00W+frl2LGJdmAAA + + +False +-0,785398163397448 +40 +epHead +sKLvkoNlQ0mtAVgEJ1iu9gAA + + +False +0,785398163397448 +40 +epTail +UOa7RuTG00W+frl2LGJdmAAA + + +False +-1000 +-1000 +50 +8 +sKLvkoNlQ0mtAVgEJ1iu9gAA + + +False +-1000 +-1000 +50 +8 +UOa7RuTG00W+frl2LGJdmAAA + + + +clMaroon +$00B9FFFF +239,130;520,275 +WVC8+oA5QEWt7B01CMPIGgAA +k9FXBagATUKUy3rOF27aNgAA +MOYRg2Akmk+VzIl3KeffmwAA + +False +1,5707963267949 +15 +WVC8+oA5QEWt7B01CMPIGgAA + + +False +1,5707963267949 +30 +WVC8+oA5QEWt7B01CMPIGgAA + + +False +-1,5707963267949 +15 +WVC8+oA5QEWt7B01CMPIGgAA + + +-0,49524438977377 +49,6487663492256 +epHead ++Maison +dhrMSMCMeESVLezievlQKQAA + + +0,660320166077431 +43,7378554572581 +epTail ++Posesseurs +jzTNCyKc50+T0RnHiKs3wwAA + + +False +0,523598775598299 +25 +epHead +dhrMSMCMeESVLezievlQKQAA + + +-0,523598775598299 +25 +epTail +1..* +jzTNCyKc50+T0RnHiKs3wwAA + + +False +-0,785398163397448 +40 +epHead +dhrMSMCMeESVLezievlQKQAA + + +False +0,785398163397448 +40 +epTail +jzTNCyKc50+T0RnHiKs3wwAA + + +False +-1000 +-1000 +50 +8 +dhrMSMCMeESVLezievlQKQAA + + +False +-1000 +-1000 +50 +8 +jzTNCyKc50+T0RnHiKs3wwAA + + + + +24 + +Robots +7yx25hwlNUegcKzq8LQecwAA +4 +MOYRg2Akmk+VzIl3KeffmwAA +4xT3uMLrVECNYp8CdHzpCgAA +CqxbYQMJlkqxHOlKqTj5OQAA +rJlWPNOxIkWsflFIIDdBKgAA +1 +1+LxACR/Lkqz0e5H/ciVRQAA +3 +22IphWBS9Uq/04KQrr8TKAAA +88teQj2X2kGkPIiQqVNVngAA +873sZEKQfEeRfwDA3lHijAAA +3 + +percevoir +ycMSRJqiYkGasrh0KVvo6QAA + + +rechargerBatteries +ycMSRJqiYkGasrh0KVvo6QAA +1 + +e +int +/UZnxVqR/EKGDKY5tSRq9gAA + + + +vivre +ycMSRJqiYkGasrh0KVvo6QAA + +5 +jjZ++cPOAE6HuFYpA/OntgAA +ZCPyp8dQpkyEffVN0/vXDAAA +AiXVvDoKMEmc4KRMgOGyUwAA +Jq8/v501YE2SNrTelGn8hgAA +jzTNCyKc50+T0RnHiKs3wwAA +4 + +energie +vkPrivate +int +ycMSRJqiYkGasrh0KVvo6QAA + + +distancePercep +vkProtected +int +ycMSRJqiYkGasrh0KVvo6QAA + + +numéro +vkPrivate +int +ycMSRJqiYkGasrh0KVvo6QAA + + +solidite +vkPrivate +int +ycMSRJqiYkGasrh0KVvo6QAA + + + +Porteurs +7yx25hwlNUegcKzq8LQecwAA +4 +MEVepfww6kyXETjfRfM2mgAA +zRgJE2Hy90iHqTlYzHFjoAAA +Xr+vdPaH60WV/wX8DTxevgAA +6IlIoLxSkUOvbpHTUitijAAA +2 +22IphWBS9Uq/04KQrr8TKAAA +88teQj2X2kGkPIiQqVNVngAA +2 + +chargerMinerai +3w44AnkBHkiPfZECtHzpLwAA +1 + +Q +int +pLEbJaamnk2038JYbwP91AAA + + + +déchargerMinerai +3w44AnkBHkiPfZECtHzpLwAA +1 + +Q +int +AJi79ZS0wk6K0Uoibpu7KQAA + + +2 +1tQFnQL1BUKPL3fwATp1SwAA +W98nv2xWAESNyLp3VQZoxwAA +2 + +c-chargeMax +vkProtected +skClassifier +int +3w44AnkBHkiPfZECtHzpLwAA + + +distancePercep +vkPrivate +int +10 +3w44AnkBHkiPfZECtHzpLwAA + + + +Foreurs +7yx25hwlNUegcKzq8LQecwAA +4 +V7QmWJCLU0ORNwEhxLL5hwAA +tmc845FXsECqtD9C+fyXZQAA +0wq6SGhDC06q7mBdjSEmrQAA +xxrEeaVPtUmKUDRyq9GyrQAA +1 +873sZEKQfEeRfwDA3lHijAAA +2 + +forer +G3rH7Pon10OkvX72CzhPDAAA +1 + +Q int +uW1Lr3VnNEaeAkNwbCvo6AAA + + + +tirer +G3rH7Pon10OkvX72CzhPDAAA +3 + +x +int +BBMYfxYLoUGxRTZfHSI1OQAA + + +y +int +BBMYfxYLoUGxRTZfHSI1OQAA + + +p +int +BBMYfxYLoUGxRTZfHSI1OQAA + + +1 +piBAuj3dZEC4r2xN+euYOAAA +3 + +distancePercep +vkPrivate +int +20 +G3rH7Pon10OkvX72CzhPDAAA + + +portée +vkPrivate +int +G3rH7Pon10OkvX72CzhPDAAA + + +puissanceTir +vkPrivate +int +G3rH7Pon10OkvX72CzhPDAAA + + + +7yx25hwlNUegcKzq8LQecwAA +2 + +False +fNWbyKFvpk+crc38baAk1gAA +3w44AnkBHkiPfZECtHzpLwAA + + +fNWbyKFvpk+crc38baAk1gAA +ycMSRJqiYkGasrh0KVvo6QAA + + + +7yx25hwlNUegcKzq8LQecwAA +2 + +False +HYcoweSehEWakRjrDpsJNwAA +G3rH7Pon10OkvX72CzhPDAAA + + +HYcoweSehEWakRjrDpsJNwAA +ycMSRJqiYkGasrh0KVvo6QAA + + + +7yx25hwlNUegcKzq8LQecwAA +3w44AnkBHkiPfZECtHzpLwAA +ycMSRJqiYkGasrh0KVvo6QAA + + +7yx25hwlNUegcKzq8LQecwAA +3w44AnkBHkiPfZECtHzpLwAA +ycMSRJqiYkGasrh0KVvo6QAA +4 +Gepci7RSe0Karv+kudwRbgAA +5711ReDr5ESqq5pAZgh9DAAA +5ZqUQ7mACUeH8XVxQyOibAAA +0hxk/P6XhEyh+9BXjboFwwAA + + +7yx25hwlNUegcKzq8LQecwAA +G3rH7Pon10OkvX72CzhPDAAA +ycMSRJqiYkGasrh0KVvo6QAA +4 +ep1GXx8TG0KnCk4PY6NYOwAA +91KDpN/3QEalDaiagwmPRQAA +8mD7nZa+Rk+ZwF/9QPpCQgAA ++tn1R7qS2kul5XCCxQhPnwAA + + +Deplaçable +7yx25hwlNUegcKzq8LQecwAA +3 +htoDNHkRa0KKB/ykeOaAcAAA +1nBfVFybNUa8Pm+YUI8rWAAA +WkUiSbO8ik6HaNtNpplAjgAA +1 + +seDéplacer(deltaX: int, deltaY: int) +/IDUnZ97Rk6Kb/NzNEWQ8AAA + +1 +cmBOttPpXECwZd6GW8oytAAA + + +Obstacles +7yx25hwlNUegcKzq8LQecwAA +4 +yO6ghRHRDUyGAjxkP1uCqgAA +LOJDIROQ6kCFefwDggWeCAAA +/pAcZThlWUqH6JIIF1+Y9QAA +eVMGGt+tB0+U6bVbAV+e+AAA +1 +A6AtvQxV9EyWsQDczJQdxAAA +2 + +couleur +vkPrivate +String +"noir" +wUzxfSjnYkOqvRY9ifM2dAAA + + +solidité +vkPrivate +int +100 +wUzxfSjnYkOqvRY9ifM2dAAA + + + +Bases +7yx25hwlNUegcKzq8LQecwAA +4 +k9FXBagATUKUy3rOF27aNgAA +Sn9T1FgjAUqQzejAA/akuwAA +aNeGDR8eXkGcbbUNj4A+QwAA +Z18yi9kZjkCol0DlivSUTQAA +1 +daX/N4wa0EG26ZQ/DeNTHAAA +3 +NArwY1xRqEOzSMv93RTJXgAA +sKLvkoNlQ0mtAVgEJ1iu9gAA +dhrMSMCMeESVLezievlQKQAA +1 + +MineraiBase +vkPrivate +int +m/Zx3ppjFUCKp6AxxG9a0QAA + + + +Objet +True +7yx25hwlNUegcKzq8LQecwAA +4 +ewHg267Z8k+2ECvPea2FpgAA +V5Dxfb00ykiv2RV+q4fOjAAA +tsUYH6TtCU2+BWc5EShEwAAA +UqWkVw8q6k+SQyomD00wTQAA +3 +daX/N4wa0EG26ZQ/DeNTHAAA +A6AtvQxV9EyWsQDczJQdxAAA +1+LxACR/Lkqz0e5H/ciVRQAA +1 +zskS5ErkFEu+PfiV6OJniwAA +5 + +x +vkPrivate +int +4Xq5OAfRAkCNAXcQVOvi6AAA + + +y +vkPrivate +int +4Xq5OAfRAkCNAXcQVOvi6AAA + + +couleur +vkProtected +String +4Xq5OAfRAkCNAXcQVOvi6AAA + + +icône +vkPrivate +String +4Xq5OAfRAkCNAXcQVOvi6AAA + + +solidité +vkProtected +int +4Xq5OAfRAkCNAXcQVOvi6AAA + + + +< appartient à +7yx25hwlNUegcKzq8LQecwAA +Gu7uSAipaE2k9G5Am14FrQAA +2 + +Habitants +1..* +bcW7clYZ/0OKNkARCe5puwAA +ycMSRJqiYkGasrh0KVvo6QAA + + +Maison +1 +bcW7clYZ/0OKNkARCe5puwAA +m/Zx3ppjFUCKp6AxxG9a0QAA + + + +Equipe +7yx25hwlNUegcKzq8LQecwAA +Gu7uSAipaE2k9G5Am14FrQAA +4 +U1NLEpqZmk2eB3/stsHrhAAA +raTW83FHuESXTpkTxkdQ5QAA +ctCDzV6bskG9m1iAhhuRKgAA +OvaKfgJ1H0if35pdUf9qCQAA +2 +RQXsR5HOvUq0UM2WGjnZ0wAA +UOa7RuTG00W+frl2LGJdmAAA +1 + +equipe +vkPrivate +String +IG00QP0GyEua6YpHvrMsAAAA + + + +7yx25hwlNUegcKzq8LQecwAA +IG00QP0GyEua6YpHvrMsAAAA +bcW7clYZ/0OKNkARCe5puwAA + + +7yx25hwlNUegcKzq8LQecwAA +m/Zx3ppjFUCKp6AxxG9a0QAA +4Xq5OAfRAkCNAXcQVOvi6AAA +4 +D8H+QL+K7E+Bk6xa0zViOQAA +O2F4PJtNIku8djb0KQy4IQAA +rECkbpO1c0q7cSRGhv6BrQAA +VwYsiiJ/6E6qyz9btgu7sgAA + + +7yx25hwlNUegcKzq8LQecwAA +wUzxfSjnYkOqvRY9ifM2dAAA +4Xq5OAfRAkCNAXcQVOvi6AAA +4 +9Zh7XcjGwke02VkfF9EpqAAA +j5QR0wcFqEWg9++/0gUHdQAA +Wof/R1PezUegztR4eHo4hwAA +qz+TbFQTHkSUsY80cO06agAA + + +7yx25hwlNUegcKzq8LQecwAA +ycMSRJqiYkGasrh0KVvo6QAA +4Xq5OAfRAkCNAXcQVOvi6AAA +4 +CtDtfTNt1k+w7f6kDWuZWAAA +xiWE9ftoekW3OO25oOvLSgAA +pYxpPZFKTke9u12VODgzwgAA +y/IfM8/AB024Nq0gtnkrgAAA + + +7yx25hwlNUegcKzq8LQecwAA +4 +Qs5C+gyHXEyiYR+oOsRNbgAA +dy04oz7k80CyrlNYUOPJ9QAA +X1yaFFKet0CAlRaOoq/QBwAA +yAaD4MPZj0aUJLfQzeEokAAA +2 + +4Heu9AXDb0qvV/GBytghywAA +/IDUnZ97Rk6Kb/NzNEWQ8AAA +4 +Z5pYf/ClDE+HizrK7QnShgAA +cPUpMPg7EUePSyOWgeQTpAAA +KcOZXoUZOEuNqxXyrCXpoAAA +/JZP28v3ZUeBCfAWi/yBNgAA + + +4Heu9AXDb0qvV/GBytghywAA +3w44AnkBHkiPfZECtHzpLwAA +4 +Q3IcgKjOKUy5jxsMM6UrogAA +rSGdRELNSk2DYRsjXiulhwAA +irnUO3+j9kmylt75Wkyf9AAA +hcUfNQvvS0eaC4/xZTKxqwAA + + + +Simulation +7yx25hwlNUegcKzq8LQecwAA +4 +AW7idd1+f0mKJf3m1sb8yAAA +LThPvcarPESYWK66O1vUMwAA +IZ1S/NZYa0qM+jrSy7qKngAA +k/p38ZyDVk2aSa0yjExmpAAA +4 + +lancerSimulation +mEeJyPDzU0ePwfKtgJ2LvAAA + + +stopperSimulation +mEeJyPDzU0ePwfKtgJ2LvAAA + + +vainqueur +mEeJyPDzU0ePwfKtgJ2LvAAA + + +ajouterRobot +mEeJyPDzU0ePwfKtgJ2LvAAA + +1 +mgTIefQGH06f7cezJg4D1wAA + + +7yx25hwlNUegcKzq8LQecwAA +4 +368hJTdIRESrxapQKHdmWAAA +KnIaDgcRCk+BK2tAi5zWfQAA +BPtcN3RsDUmnIzBvDavvAwAA +aExZ4CjIFECqlgJ214+RcwAA +2 + +DM4spu0D2k6eFS4Uf8wcPQAA +4Xq5OAfRAkCNAXcQVOvi6AAA +4 +J4NbVFxAFE6IGDLkHzY26AAA +TmqRIPasykGTHrI4iCpT3gAA +rC62mU8Z0UOKqaKGOBUSRwAA ++M7IWE9vAUKd0NbRAGn5pwAA + + +DM4spu0D2k6eFS4Uf8wcPQAA +mEeJyPDzU0ePwfKtgJ2LvAAA +4 +6rIZB70J2UCkMAU+1PfecgAA +UQn7gGPUkUCbsStXJIBxtgAA +0wbkSoTF9EGIqdhsIUli5wAA +mi4oboT7tkuw6RDKFyrNyQAA + + + +7yx25hwlNUegcKzq8LQecwAA +4 +JLvk6iat0UuvgSndmRgRtwAA +DNuP4Mf+NkGmNh37pJoFigAA +zR20PGaS/0CyIQ8b6HjgIQAA +v3dv3OZjYkKWcCrqw/YkXwAA +2 + +1..* +JpckmbEP+kOl0Q6BinUzSwAA +ycMSRJqiYkGasrh0KVvo6QAA +4 +e2XUVY0AX0yC50erwD1r+QAA +tlErCeIYvke4llmDDEzaKgAA +rJGq+GiKxU6rbewoasl+RQAA +iUu5SIUHJkmjjmKp2sX/eAAA + + +akComposite +JpckmbEP+kOl0Q6BinUzSwAA +IG00QP0GyEua6YpHvrMsAAAA +4 +qxtGoweGrECkV/xzbtRaTAAA +/TsdUjnMykaj4mLzUyKLbwAA +Kbah33yudEW3ZXvQQIjYjQAA +zukh6NO3vUicZ6PwI0ZEnwAA + + + +7yx25hwlNUegcKzq8LQecwAA +4 +CTKMuiTL9kqodHyBZaAwiwAA +u0dePnmh/U26K+DmKgHS6gAA +av6EQwUOgEysKOc/Q6uCTwAA +Ay/KYudIXUeravklzbsViAAA +2 + +1 +dpzjX+SwyECnQAwBmT3qDAAA +IG00QP0GyEua6YpHvrMsAAAA +4 +267Rn7KmSkCXjzgd9s+DRQAA +zw4aeIDPRkO/PXgYrg45awAA +tZ7XDQolmUqj9aSbWZlSzQAA +Uz3pOhWSLUiVm42TVoiEJwAA + + +1 +dpzjX+SwyECnQAwBmT3qDAAA +m/Zx3ppjFUCKp6AxxG9a0QAA +4 +9BjIxMzsHkKoUtsFXM/7dAAA +s8jNyZDZpk+hmrguexBwogAA +4nbljWVTLEGF13nhlmc75AAA +hNKPmGcD/EO53hy3Pg0P0wAA + + + +7yx25hwlNUegcKzq8LQecwAA +4 +pdAqXqbToUuYxiMmJ7FLKQAA +Z32wCwoxmUeRu5NGCMeYmwAA +miM2hvDe5E2IyRa4l2Hp4wAA +Oqy7BJUzJE++F094x5L5twAA +2 + +Posesseurs +1..* +WVC8+oA5QEWt7B01CMPIGgAA +ycMSRJqiYkGasrh0KVvo6QAA +4 +x4rm4lqfEU2n6jiVYJ+s8QAA +izP1awwaUE2ctcFSEBS8HQAA +VGLVYjtzNECHOH3jPRrdJAAA +yGnoa28yGEm3HdOoqaNDggAA + + +Maison +akComposite +WVC8+oA5QEWt7B01CMPIGgAA +m/Zx3ppjFUCKp6AxxG9a0QAA +4 +yURd/g+ZBUefmYU6bmwX5wAA +mKGyxbdZsE+VtMA+iQdbQAAA +gJq2zgGIy0uXcuUxOv2E6gAA +U9iMgjZzQE+nbmYpDaRvBgAA + + + + +Implementation Model +UMLStandard +implementationModel +gDWRvp1AP0GyQOAAzKV3xwAA +1 + +Main +NdXmgZoBP0i+7cYUXawh6AAA + +7axXkqr5c0qY5pg6sV9hBgAA + + + + +Deployment Model +UMLStandard +deploymentModel +gDWRvp1AP0GyQOAAzKV3xwAA +1 + +Main +OaszIsxK3EeegBrOKUUTSgAA + +RPSc+xFd3UW8OJk4yzPlzwAA + + + + + + diff --git a/P51/RandoOnLine.zip b/P51/RandoOnLine.zip new file mode 100644 index 0000000..1c19481 Binary files /dev/null and b/P51/RandoOnLine.zip differ diff --git a/P51/SQLNavigator_DOSSMANN_2007.jar b/P51/SQLNavigator_DOSSMANN_2007.jar new file mode 100644 index 0000000..0fced75 Binary files /dev/null and b/P51/SQLNavigator_DOSSMANN_2007.jar differ diff --git a/P51/apache-tomcat-6.0.14/LICENSE b/P51/apache-tomcat-6.0.14/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/P51/apache-tomcat-6.0.14/NOTICE b/P51/apache-tomcat-6.0.14/NOTICE new file mode 100644 index 0000000..db81026 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/NOTICE @@ -0,0 +1,16 @@ +Apache Tomcat +Copyright 1999-2007 The Apache Software Foundation + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + +The Windows Installer is built with the Nullsoft +Scriptable Install Sysem (NSIS), which is +open source software. The original software and +related information is available at +http://nsis.sourceforge.net. + +Java compilation software for JSP pages is provided by Eclipse, +which is open source software. The orginal software and +related infomation is available at +http://www.eclipse.org. diff --git a/P51/apache-tomcat-6.0.14/RELEASE-NOTES b/P51/apache-tomcat-6.0.14/RELEASE-NOTES new file mode 100644 index 0000000..1576f5f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/RELEASE-NOTES @@ -0,0 +1,178 @@ + + + Apache Tomcat Version 6.0.14 + Release Notes + + +$Id: RELEASE-NOTES 521511 2007-03-22 22:38:04Z fhanik $ + + +============================= +KNOWN ISSUES IN THIS RELEASE: +============================= + +* Dependency Changes +* JNI Based Applications +* Bundled APIs +* Web application reloading and static fields in shared libraries +* Tomcat on Linux +* Enabling SSI and CGI Support +* Security manager URLs +* Symlinking static resources +* Enabling invoker servlet +* Viewing the Tomcat Change Log +* When all else fails + + +=================== +Dependency Changes: +=================== +Tomcat 6.0 is designed to run on JSE 5.0 and later, and requires +configuration to run on JSE 5.0. + +In addition, Tomcat 6.0 uses the Eclipse JDT Java compiler for compiling +JSP pages. This means you no longer need to have the complete +Java Development Kit (JDK) to run Tomcat, but a Java Runtime Environment +(JRE) is sufficient. The Eclipse JDT Java compiler is bundled with the +binary Tomcat distributions. Tomcat can also be configured to use the +compiler from the JDK to compile JSPs, or any other Java compiler supported +by Apache Ant. + + +======================= +JNI Based Applications: +======================= +Applications that require native libraries must ensure that the libraries have +been loaded prior to use. Typically, this is done with a call like: + + static { + System.loadLibrary("path-to-library-file"); + } + +in some class. However, the application must also ensure that the library is +not loaded more than once. If the above code were placed in a class inside +the web application (i.e. under /WEB-INF/classes or /WEB-INF/lib), and the +application were reloaded, the loadLibrary() call would be attempted a second +time. + +To avoid this problem, place classes that load native libraries outside of the +web application, and ensure that the loadLibrary() call is executed only once +during the lifetime of a particular JVM. + + +============= +Bundled APIs: +============= +A standard installation of Tomcat 6.0 makes all of the following APIs available +for use by web applications (by placing them in "lib"): +* annotations-api.jar (Annotations package) +* catalina.jar (Tomcat Catalina implementation) +* catalina-ant.jar (Tomcat Catalina Ant tasks) +* catalina-ha.jar (High availability package) +* catalina-tribes.jar (Group communication) +* commons-logging-api.jar (Commons Logging API 1.0.x) +* el-api.jar (EL 2.1 API) +* jasper.jar (Jasper 2 Compiler and Runtime) +* jasper-el.jar (Jasper 2 EL implementation) +* jasper-jdt.jar (Eclipse JDT 3.2 Java compiler) +* jsp-api.jar (JSP 2.1 API) +* servlet-api.jar (Servlet 2.5 API) +* tomcat-coyote.jar (Tomcat connectors and utility classes) +* tomcat-dbcp.jar (package renamed database connection pool based on Commons DBCP) + +You can make additional APIs available to all of your web applications by +putting unpacked classes into a "classes" directory (not created by default), +or by placing them in JAR files in the "lib" directory. + +To override the XML parser implementation or interfaces, use the endorsed +mechanism of the JVM. The default configuration defines JARs located in +"endorsed" as endorsed. + + +================================================================ +Web application reloading and static fields in shared libraries: +================================================================ +Some shared libraries (many are part of the JDK) keep references to objects +instantiated by the web application. To avoid class loading related problems +(ClassCastExceptions, messages indicating that the classloader +is stopped, etc.), the shared libraries state should be reinitialized. + +Something which might help is to avoid putting classes which would be +referenced by a shared static field in the web application classloader, +and putting them in the shared classloader instead (JARs should be put in the +"lib" folder, and classes should be put in the "classes" folder). + + +================ +Tomcat on Linux: +================ +GLIBC 2.2 / Linux 2.4 users should define an environment variable: +export LD_ASSUME_KERNEL=2.2.5 + +Redhat Linux 9.0 users should use the following setting to avoid +stability problems: +export LD_ASSUME_KERNEL=2.4.1 + +There are some Linux bugs reported against the NIO sendfile behavior, make sure you +have a JDK that is up to date, or disable sendfile behavior in the Connector.
+6427312: (fc) FileChannel.transferTo() throws IOException "system call interrupted"
+5103988: (fc) FileChannel.transferTo should return -1 for EAGAIN instead throws IOException
+6253145: (fc) FileChannel.transferTo on Linux fails when going beyond 2GB boundary
+6470086: (fc) FileChannel.transferTo(2147483647, 1, channel) cause "Value too large" exception
+ + +============================= +Enabling SSI and CGI Support: +============================= +Because of the security risks associated with CGI and SSI available +to web applications, these features are disabled by default. + +To enable and configure CGI support, please see the cgi-howto.html page. + +To enable and configue SSI support, please see the ssi-howto.html page. + + +====================== +Security manager URLs: +====================== +In order to grant security permissions to JARs located inside the +web application repository, use URLs of of the following format +in your policy file: + +file:${catalina.home}/webapps/examples/WEB-INF/lib/driver.jar + + +============================ +Symlinking static resources: +============================ +By default, Unix symlinks will not work when used in a web application to link +resources located outside the web application root directory. + +This behavior is optional, and the "allowLinking" flag may be used to disable +the check. + + +========================= +Enabling invoker servlet: +========================= +Starting with Tomcat 4.1.12, the invoker servlet is no longer available by +default in all webapps. Enabling it for all webapps is possible by editing +$CATALINA_HOME/conf/web.xml to uncomment the "/servlet/*" servlet-mapping +definition. + +Using the invoker servlet in a production environment is not recommended and +is unsupported. More details are available on the Tomcat FAQ at +http://tomcat.apache.org/faq/misc.html#invoker. + + +============================== +Viewing the Tomcat Change Log: +============================== +See changelog.html in this directory. + + +==================== +When all else fails: +==================== +See the FAQ +http://tomcat.apache.org/faq/ diff --git a/P51/apache-tomcat-6.0.14/RUNNING.txt b/P51/apache-tomcat-6.0.14/RUNNING.txt new file mode 100644 index 0000000..1064b96 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/RUNNING.txt @@ -0,0 +1,147 @@ +$Id: RUNNING.txt 354430 2005-12-06 13:44:26Z yoavs $ + + =================================================== + Running The Apache Tomcat 6.0 Servlet/JSP Container + =================================================== + +Apache Tomcat 6.0 requires the Java 2 Standard Edition Runtime +Environment (JRE) version 5.0 or later. + +============================= +Running With JRE 5.0 Or Later +============================= + +(1) Download and Install the J2SE Runtime Environment (JRE) + +(1.1) Download the Java 2 Standard Edition Runtime Environment (JRE), + release version 5.0 or later, from http://java.sun.com/j2se. + +(1.2) Install the JRE according to the instructions included with the + release. +(1.3) Set an environment variable named JRE_HOME to the pathname of + the directory into which you installed the JRE, e.g. c:\jre5.0 + or /usr/local/java/jre5.0. + +NOTE: You may also use the full JDK rather than just the JRE. In this + case set your JAVA_HOME environment variable to the pathname of + the directory into which you installed the JDK, e.g. c:\j2sdk5.0 + or /usr/local/java/j2sdk5.0. + + +(2) Download and Install the Tomcat Binary Distribution + +NOTE: As an alternative to downloading a binary distribution, you can create +your own from the Tomcat source repository, as described in "BUILDING.txt". +If you do this, the value to use for "${catalina.home}" will be the "dist" +subdirectory of your source distribution. + +(2.1) Download a binary distribution of Tomcat from: + + http://tomcat.apache.org + +(2.2) Unpack the binary distribution into a convenient location so that the + distribution resides in its own directory (conventionally named + "apache-tomcat-[version]"). For the purposes of the remainder of this document, + the symbolic name "$CATALINA_HOME" is used to refer to the full + pathname of the release directory. + + +(3) Start Up Tomcat + +(3.1) Tomcat can be started by executing the following commands: + + $CATALINA_HOME\bin\startup.bat (Windows) + + $CATALINA_HOME/bin/startup.sh (Unix) + +(3.2) After startup, the default web applications included with Tomcat will be + available by visiting: + + http://localhost:8080/ + +(3.3) Further information about configuring and running Tomcat can be found in + the documentation included here, as well as on the Tomcat web site: + + http://tomcat.apache.org + + +(4) Shut Down Tomcat + +(4.1) Tomcat can be shut down by executing the following command: + + $CATALINA_HOME\bin\shutdown (Windows) + + $CATALINA_HOME/bin/shutdown.sh (Unix) + + +================================================== +Advanced Configuration - Multiple Tomcat Instances +================================================== + +In many circumstances, it is desirable to have a single copy of a Tomcat +binary distribution shared among multiple users on the same server. To make +this possible, you can pass a "-Dcatalina.base=$CATALINA_BASE" argument when +executing the startup command (see (2)). In this +"-Dcatalina.base=$CATALINA_BASE" argument, replace $CATALINA_BASE with the +directory that contains the files for your 'personal' Tomcat instance. + +When you use this "-Dcatalina.base=$CATALINA_BASE" argument, Tomcat will +calculate all relative references for files in the following directories based +on the value of $CATALINA_BASE instead of $CATALINA_HOME: + +* conf - Server configuration files (including server.xml) + +* logs - Log and output files + +* lib - For classes and resources that must be shared across all web + applications + +* webapps - Automatically loaded web applications + +* work - Temporary working directories for web applications + +* temp - Directory used by the JVM for temporary files (java.io.tmpdir) + +If you do not pass the "-Dcatalina.base=$CATALINA_BASE" argument to the +startup command, $CATALINA_BASE will default to the same value as $CATALINA_HOME, + which means that the same directory is used for all relative path resolutions. + + +================ +Troubleshooting +================ + +There are only really 3 things likely to go wrong during the stand-alone +Tomcat install: + +(1) The most common hiccup is when another web server (or any process for that + matter) has laid claim to port 8080. This is the default HTTP port that + Tomcat attempts to bind to at startup. To change this, open the file: + + $CATALINA_HOME/conf/server.xml + + and search for '8080'. Change it to a port that isn't in use, and is + greater than 1024, as ports less than or equal to 1024 require superuser + access to bind under UNIX. + + Restart Tomcat and you're in business. Be sure that you replace the "8080" + in the URL you're using to access Tomcat. For example, if you change the + port to 1977, you would request the URL http://localhost:1977/ in your browser. + +(2) An "out of environment space" error when running the batch files in + Windows 95, 98, or ME operating systems. + + Right-click on the STARTUP.BAT and SHUTDOWN.BAT files. Click on + "Properties", then on the "Memory" tab. For the "Initial environment" field, + enter in something like 4096. + + After you click apply, Windows will create shortcuts which you can use + to start and stop the container. + +(3) The 'localhost' machine isn't found. This could happen if you're behind a + proxy. If that's the case, make sure the proxy configuration for your + browser knows that you shouldn't be going through the proxy to access the + "localhost". + + In Netscape, this is under Edit/Preferences -> Advanced/Proxies, and in + Internet Explorer, Tools -> Internet Options -> Connections -> LAN Settings. diff --git a/P51/apache-tomcat-6.0.14/bin/bootstrap.jar b/P51/apache-tomcat-6.0.14/bin/bootstrap.jar new file mode 100644 index 0000000..e987e4e Binary files /dev/null and b/P51/apache-tomcat-6.0.14/bin/bootstrap.jar differ diff --git a/P51/apache-tomcat-6.0.14/bin/catalina-tasks.xml b/P51/apache-tomcat-6.0.14/bin/catalina-tasks.xml new file mode 100644 index 0000000..a03f51e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/catalina-tasks.xml @@ -0,0 +1,41 @@ + + + + Catalina Ant Manager, JMX and JSPC Tasks + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/bin/catalina.bat b/P51/apache-tomcat-6.0.14/bin/catalina.bat new file mode 100644 index 0000000..09cbbd7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/catalina.bat @@ -0,0 +1,224 @@ +@echo off +if "%OS%" == "Windows_NT" setlocal +rem --------------------------------------------------------------------------- +rem Start/Stop Script for the CATALINA Server +rem +rem Environment Variable Prequisites +rem +rem CATALINA_HOME May point at your Catalina "build" directory. +rem +rem CATALINA_BASE (Optional) Base directory for resolving dynamic portions +rem of a Catalina installation. If not present, resolves to +rem the same directory that CATALINA_HOME points to. +rem +rem CATALINA_OPTS (Optional) Java runtime options used when the "start", +rem "stop", or "run" command is executed. +rem +rem CATALINA_TMPDIR (Optional) Directory path location of temporary directory +rem the JVM should use (java.io.tmpdir). Defaults to +rem %CATALINA_BASE%\temp. +rem +rem JAVA_HOME Must point at your Java Development Kit installation. +rem Required to run the with the "debug" argument. +rem +rem JRE_HOME Must point at your Java Runtime installation. +rem Defaults to JAVA_HOME if empty. +rem +rem JAVA_OPTS (Optional) Java runtime options used when the "start", +rem "stop", or "run" command is executed. +rem +rem JSSE_HOME (Optional) May point at your Java Secure Sockets Extension +rem (JSSE) installation, whose JAR files will be added to the +rem system class path used to start Tomcat. +rem +rem JPDA_TRANSPORT (Optional) JPDA transport used when the "jpda start" +rem command is executed. The default is "dt_shmem". +rem +rem JPDA_ADDRESS (Optional) Java runtime options used when the "jpda start" +rem command is executed. The default is "jdbconn". +rem +rem JPDA_SUSPEND (Optional) Java runtime options used when the "jpda start" +rem command is executed. Specifies whether JVM should suspend +rem execution immediately after startup. Default is "n". +rem +rem JPDA_OPTS (Optional) Java runtime options used when the "jpda start" +rem command is executed. If used, JPDA_TRANSPORT, JPDA_ADDRESS, +rem and JPDA_SUSPEND are ignored. Thus, all required jpda +rem options MUST be specified. The default is: +rem +rem -Xdebug -Xrunjdwp:transport=%JPDA_TRANSPORT%, +rem address=%JPDA_ADDRESS%,server=y,suspend=%JPDA_SUSPEND% +rem +rem $Id: catalina.bat 537518 2007-05-12 21:11:40Z markt $ +rem --------------------------------------------------------------------------- + +rem Guess CATALINA_HOME if not defined +set CURRENT_DIR=%cd% +if not "%CATALINA_HOME%" == "" goto gotHome +set CATALINA_HOME=%CURRENT_DIR% +if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome +cd .. +set CATALINA_HOME=%cd% +cd %CURRENT_DIR% +:gotHome +if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome +echo The CATALINA_HOME environment variable is not defined correctly +echo This environment variable is needed to run this program +goto end +:okHome + +rem Get standard environment variables +if exist "%CATALINA_HOME%\bin\setenv.bat" call "%CATALINA_HOME%\bin\setenv.bat" + +rem Get standard Java environment variables +if exist "%CATALINA_HOME%\bin\setclasspath.bat" goto okSetclasspath +echo Cannot find %CATALINA_HOME%\bin\setclasspath.bat +echo This file is needed to run this program +goto end +:okSetclasspath +set BASEDIR=%CATALINA_HOME% +call "%CATALINA_HOME%\bin\setclasspath.bat" %1 +if errorlevel 1 goto end + +rem Add on extra jar files to CLASSPATH +if "%JSSE_HOME%" == "" goto noJsse +set CLASSPATH=%CLASSPATH%;%JSSE_HOME%\lib\jcert.jar;%JSSE_HOME%\lib\jnet.jar;%JSSE_HOME%\lib\jsse.jar +:noJsse +set CLASSPATH=%CLASSPATH%;%CATALINA_HOME%\bin\bootstrap.jar + +if not "%CATALINA_BASE%" == "" goto gotBase +set CATALINA_BASE=%CATALINA_HOME% +:gotBase + +if not "%CATALINA_TMPDIR%" == "" goto gotTmpdir +set CATALINA_TMPDIR=%CATALINA_BASE%\temp +:gotTmpdir + +if not exist "%CATALINA_BASE%\conf\logging.properties" goto noJuli +set JAVA_OPTS=%JAVA_OPTS% -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties" +:noJuli + +rem ----- Execute The Requested Command --------------------------------------- + +echo Using CATALINA_BASE: %CATALINA_BASE% +echo Using CATALINA_HOME: %CATALINA_HOME% +echo Using CATALINA_TMPDIR: %CATALINA_TMPDIR% +if ""%1"" == ""debug"" goto use_jdk +echo Using JRE_HOME: %JRE_HOME% +goto java_dir_displayed +:use_jdk +echo Using JAVA_HOME: %JAVA_HOME% +:java_dir_displayed + +set _EXECJAVA=%_RUNJAVA% +set MAINCLASS=org.apache.catalina.startup.Bootstrap +set ACTION=start +set SECURITY_POLICY_FILE= +set DEBUG_OPTS= +set JPDA= + +if not ""%1"" == ""jpda"" goto noJpda +set JPDA=jpda +if not "%JPDA_TRANSPORT%" == "" goto gotJpdaTransport +set JPDA_TRANSPORT=dt_shmem +:gotJpdaTransport +if not "%JPDA_ADDRESS%" == "" goto gotJpdaAddress +set JPDA_ADDRESS=jdbconn +:gotJpdaAddress +if not "%JPDA_SUSPEND%" == "" goto gotJpdaSuspend +set JPDA_SUSPEND=n +:gotJpdaSuspend +if not "%JPDA_OPTS%" == "" goto gotJpdaOpts +set JPDA_OPTS=-Xdebug -Xrunjdwp:transport=%JPDA_TRANSPORT%,address=%JPDA_ADDRESS%,server=y,suspend=%JPDA_SUSPEND% +:gotJpdaOpts +shift +:noJpda + +if ""%1"" == ""debug"" goto doDebug +if ""%1"" == ""run"" goto doRun +if ""%1"" == ""start"" goto doStart +if ""%1"" == ""stop"" goto doStop +if ""%1"" == ""version"" goto doVersion + +echo Usage: catalina ( commands ... ) +echo commands: +echo debug Start Catalina in a debugger +echo debug -security Debug Catalina with a security manager +echo jpda start Start Catalina under JPDA debugger +echo run Start Catalina in the current window +echo run -security Start in the current window with security manager +echo start Start Catalina in a separate window +echo start -security Start in a separate window with security manager +echo stop Stop Catalina +echo version What version of tomcat are you running? +goto end + +:doDebug +shift +set _EXECJAVA=%_RUNJDB% +set DEBUG_OPTS=-sourcepath "%CATALINA_HOME%\..\..\java" +if not ""%1"" == ""-security"" goto execCmd +shift +echo Using Security Manager +set SECURITY_POLICY_FILE=%CATALINA_BASE%\conf\catalina.policy +goto execCmd + +:doRun +shift +if not ""%1"" == ""-security"" goto execCmd +shift +echo Using Security Manager +set SECURITY_POLICY_FILE=%CATALINA_BASE%\conf\catalina.policy +goto execCmd + +:doStart +shift +if not "%OS%" == "Windows_NT" goto noTitle +set _EXECJAVA=start "Tomcat" %_RUNJAVA% +goto gotTitle +:noTitle +set _EXECJAVA=start %_RUNJAVA% +:gotTitle +if not ""%1"" == ""-security"" goto execCmd +shift +echo Using Security Manager +set SECURITY_POLICY_FILE=%CATALINA_BASE%\conf\catalina.policy +goto execCmd + +:doStop +shift +set ACTION=stop +goto execCmd + +:doVersion +%_EXECJAVA% -classpath "%CATALINA_HOME%\lib\catalina.jar" org.apache.catalina.util.ServerInfo +goto end + + +:execCmd +rem Get remaining unshifted command line arguments and save them in the +set CMD_LINE_ARGS= +:setArgs +if ""%1""=="""" goto doneSetArgs +set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 +shift +goto setArgs +:doneSetArgs + +rem Execute Java with the applicable properties +if not "%JPDA%" == "" goto doJpda +if not "%SECURITY_POLICY_FILE%" == "" goto doSecurity +%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% +goto end +:doSecurity +%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% +goto end +:doJpda +if not "%SECURITY_POLICY_FILE%" == "" goto doSecurityJpda +%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %JPDA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% +goto end +:doSecurityJpda +%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %JPDA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% +goto end + +:end diff --git a/P51/apache-tomcat-6.0.14/bin/catalina.sh b/P51/apache-tomcat-6.0.14/bin/catalina.sh new file mode 100644 index 0000000..30a05e6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/catalina.sh @@ -0,0 +1,338 @@ +#!/bin/sh +# ----------------------------------------------------------------------------- +# Start/Stop Script for the CATALINA Server +# +# Environment Variable Prequisites +# +# CATALINA_HOME May point at your Catalina "build" directory. +# +# CATALINA_BASE (Optional) Base directory for resolving dynamic portions +# of a Catalina installation. If not present, resolves to +# the same directory that CATALINA_HOME points to. +# +# CATALINA_OPTS (Optional) Java runtime options used when the "start", +# "stop", or "run" command is executed. +# +# CATALINA_TMPDIR (Optional) Directory path location of temporary directory +# the JVM should use (java.io.tmpdir). Defaults to +# $CATALINA_BASE/temp. +# +# JAVA_HOME Must point at your Java Development Kit installation. +# Required to run the with the "debug" or "javac" argument. +# +# JRE_HOME Must point at your Java Development Kit installation. +# Defaults to JAVA_HOME if empty. +# +# JAVA_OPTS (Optional) Java runtime options used when the "start", +# "stop", or "run" command is executed. +# +# JPDA_TRANSPORT (Optional) JPDA transport used when the "jpda start" +# command is executed. The default is "dt_socket". +# +# JPDA_ADDRESS (Optional) Java runtime options used when the "jpda start" +# command is executed. The default is 8000. +# +# JPDA_SUSPEND (Optional) Java runtime options used when the "jpda start" +# command is executed. Specifies whether JVM should suspend +# execution immediately after startup. Default is "n". +# +# JPDA_OPTS (Optional) Java runtime options used when the "jpda start" +# command is executed. If used, JPDA_TRANSPORT, JPDA_ADDRESS, +# and JPDA_SUSPEND are ignored. Thus, all required jpda +# options MUST be specified. The default is: +# +# -Xdebug -Xrunjdwp:transport=$JPDA_TRANSPORT, +# address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND +# +# JSSE_HOME (Optional) May point at your Java Secure Sockets Extension +# (JSSE) installation, whose JAR files will be added to the +# system class path used to start Tomcat. +# +# CATALINA_PID (Optional) Path of the file which should contains the pid +# of catalina startup java process, when start (fork) is used +# +# $Id: catalina.sh 522797 2007-03-27 07:10:29Z fhanik $ +# ----------------------------------------------------------------------------- + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false +os400=false +darwin=false +case "`uname`" in +CYGWIN*) cygwin=true;; +OS400*) os400=true;; +Darwin*) darwin=true;; +esac + +# resolve links - $0 may be a softlink +PRG="$0" + +while [ -h "$PRG" ]; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`/"$link" + fi +done + +# Get standard environment variables +PRGDIR=`dirname "$PRG"` + +# Only set CATALINA_HOME if not already set +[ -z "$CATALINA_HOME" ] && CATALINA_HOME=`cd "$PRGDIR/.." ; pwd` + +if [ -r "$CATALINA_HOME"/bin/setenv.sh ]; then + . "$CATALINA_HOME"/bin/setenv.sh +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` + [ -n "$JRE_HOME" ] && JRE_HOME=`cygpath --unix "$JRE_HOME"` + [ -n "$CATALINA_HOME" ] && CATALINA_HOME=`cygpath --unix "$CATALINA_HOME"` + [ -n "$CATALINA_BASE" ] && CATALINA_BASE=`cygpath --unix "$CATALINA_BASE"` + [ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"` + [ -n "$JSSE_HOME" ] && JSSE_HOME=`cygpath --absolute --unix "$JSSE_HOME"` +fi + +# For OS400 +if $os400; then + # Set job priority to standard for interactive (interactive - 6) by using + # the interactive priority - 6, the helper threads that respond to requests + # will be running at the same priority as interactive jobs. + COMMAND='chgjob job('$JOBNAME') runpty(6)' + system $COMMAND + + # Enable multi threading + export QIBM_MULTI_THREADED=Y +fi + +# Get standard Java environment variables +if $os400; then + # -r will Only work on the os400 if the files are: + # 1. owned by the user + # 2. owned by the PRIMARY group of the user + # this will not work if the user belongs in secondary groups + BASEDIR="$CATALINA_HOME" + . "$CATALINA_HOME"/bin/setclasspath.sh +else + if [ -r "$CATALINA_HOME"/bin/setclasspath.sh ]; then + BASEDIR="$CATALINA_HOME" + . "$CATALINA_HOME"/bin/setclasspath.sh + else + echo "Cannot find $CATALINA_HOME/bin/setclasspath.sh" + echo "This file is needed to run this program" + exit 1 + fi +fi + +# Add on extra jar files to CLASSPATH +if [ -n "$JSSE_HOME" ]; then + CLASSPATH="$CLASSPATH":"$JSSE_HOME"/lib/jcert.jar:"$JSSE_HOME"/lib/jnet.jar:"$JSSE_HOME"/lib/jsse.jar +fi +CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/bootstrap.jar:"$CATALINA_HOME"/bin/commons-logging-api.jar + +if [ -z "$CATALINA_BASE" ] ; then + CATALINA_BASE="$CATALINA_HOME" +fi + +if [ -z "$CATALINA_TMPDIR" ] ; then + # Define the java.io.tmpdir to use for Catalina + CATALINA_TMPDIR="$CATALINA_BASE"/temp +fi + +# Bugzilla 37848: When no TTY is available, don't output to console +have_tty=0 +if [ "`tty`" != "not a tty" ]; then + have_tty=1 +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + JAVA_HOME=`cygpath --absolute --windows "$JAVA_HOME"` + JRE_HOME=`cygpath --absolute --windows "$JRE_HOME"` + CATALINA_HOME=`cygpath --absolute --windows "$CATALINA_HOME"` + CATALINA_BASE=`cygpath --absolute --windows "$CATALINA_BASE"` + CATALINA_TMPDIR=`cygpath --absolute --windows "$CATALINA_TMPDIR"` + CLASSPATH=`cygpath --path --windows "$CLASSPATH"` + [ -n "$JSSE_HOME" ] && JSSE_HOME=`cygpath --absolute --windows "$JSSE_HOME"` + JAVA_ENDORSED_DIRS=`cygpath --path --windows "$JAVA_ENDORSED_DIRS"` +fi + +# Set juli LogManager if it is present +if [ -r "$CATALINA_BASE"/conf/logging.properties ]; then + JAVA_OPTS="$JAVA_OPTS "-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" "-Djava.util.logging.config.file="$CATALINA_BASE/conf/logging.properties" +fi + +# ----- Execute The Requested Command ----------------------------------------- + +# Bugzilla 37848: only output this if we have a TTY +if [ $have_tty -eq 1 ]; then + echo "Using CATALINA_BASE: $CATALINA_BASE" + echo "Using CATALINA_HOME: $CATALINA_HOME" + echo "Using CATALINA_TMPDIR: $CATALINA_TMPDIR" + if [ "$1" = "debug" -o "$1" = "javac" ] ; then + echo "Using JAVA_HOME: $JAVA_HOME" + else + echo "Using JRE_HOME: $JRE_HOME" + fi +fi + +if [ "$1" = "jpda" ] ; then + if [ -z "$JPDA_TRANSPORT" ]; then + JPDA_TRANSPORT="dt_socket" + fi + if [ -z "$JPDA_ADDRESS" ]; then + JPDA_ADDRESS="8000" + fi + if [ -z "$JPDA_SUSPEND" ]; then + JPDA_SUSPEND="n" + fi + if [ -z "$JPDA_OPTS" ]; then + JPDA_OPTS="-Xdebug -Xrunjdwp:transport=$JPDA_TRANSPORT,address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND" + fi + CATALINA_OPTS="$CATALINA_OPTS $JPDA_OPTS" + shift +fi + +if [ "$1" = "debug" ] ; then + if $os400; then + echo "Debug command not available on OS400" + exit 1 + else + shift + if [ "$1" = "-security" ] ; then + echo "Using Security Manager" + shift + exec "$_RUNJDB" $JAVA_OPTS $CATALINA_OPTS \ + -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ + -sourcepath "$CATALINA_HOME"/../../java \ + -Djava.security.manager \ + -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \ + -Dcatalina.base="$CATALINA_BASE" \ + -Dcatalina.home="$CATALINA_HOME" \ + -Djava.io.tmpdir="$CATALINA_TMPDIR" \ + org.apache.catalina.startup.Bootstrap "$@" start + else + exec "$_RUNJDB" $JAVA_OPTS $CATALINA_OPTS \ + -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ + -sourcepath "$CATALINA_HOME"/../../java \ + -Dcatalina.base="$CATALINA_BASE" \ + -Dcatalina.home="$CATALINA_HOME" \ + -Djava.io.tmpdir="$CATALINA_TMPDIR" \ + org.apache.catalina.startup.Bootstrap "$@" start + fi + fi + +elif [ "$1" = "run" ]; then + + shift + if [ "$1" = "-security" ] ; then + echo "Using Security Manager" + shift + exec "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \ + -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ + -Djava.security.manager \ + -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \ + -Dcatalina.base="$CATALINA_BASE" \ + -Dcatalina.home="$CATALINA_HOME" \ + -Djava.io.tmpdir="$CATALINA_TMPDIR" \ + org.apache.catalina.startup.Bootstrap "$@" start + else + exec "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \ + -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ + -Dcatalina.base="$CATALINA_BASE" \ + -Dcatalina.home="$CATALINA_HOME" \ + -Djava.io.tmpdir="$CATALINA_TMPDIR" \ + org.apache.catalina.startup.Bootstrap "$@" start + fi + +elif [ "$1" = "start" ] ; then + + shift + touch "$CATALINA_BASE"/logs/catalina.out + if [ "$1" = "-security" ] ; then + echo "Using Security Manager" + shift + "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \ + -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ + -Djava.security.manager \ + -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \ + -Dcatalina.base="$CATALINA_BASE" \ + -Dcatalina.home="$CATALINA_HOME" \ + -Djava.io.tmpdir="$CATALINA_TMPDIR" \ + org.apache.catalina.startup.Bootstrap "$@" start \ + >> "$CATALINA_BASE"/logs/catalina.out 2>&1 & + + if [ ! -z "$CATALINA_PID" ]; then + echo $! > $CATALINA_PID + fi + else + "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \ + -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ + -Dcatalina.base="$CATALINA_BASE" \ + -Dcatalina.home="$CATALINA_HOME" \ + -Djava.io.tmpdir="$CATALINA_TMPDIR" \ + org.apache.catalina.startup.Bootstrap "$@" start \ + >> "$CATALINA_BASE"/logs/catalina.out 2>&1 & + + if [ ! -z "$CATALINA_PID" ]; then + echo $! > $CATALINA_PID + fi + fi + +elif [ "$1" = "stop" ] ; then + + shift + FORCE=0 + if [ "$1" = "-force" ]; then + shift + FORCE=1 + fi + + "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \ + -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ + -Dcatalina.base="$CATALINA_BASE" \ + -Dcatalina.home="$CATALINA_HOME" \ + -Djava.io.tmpdir="$CATALINA_TMPDIR" \ + org.apache.catalina.startup.Bootstrap "$@" stop + + if [ $FORCE -eq 1 ]; then + if [ ! -z "$CATALINA_PID" ]; then + echo "Killing: `cat $CATALINA_PID`" + kill -9 `cat $CATALINA_PID` + else + echo "Kill failed: \$CATALINA_PID not set" + fi + fi + +elif [ "$1" = "version" ] ; then + + "$_RUNJAVA" \ + -classpath "$CATALINA_HOME/lib/catalina.jar" \ + org.apache.catalina.util.ServerInfo + +else + + echo "Usage: catalina.sh ( commands ... )" + echo "commands:" + if $os400; then + echo " debug Start Catalina in a debugger (not available on OS400)" + echo " debug -security Debug Catalina with a security manager (not available on OS400)" + else + echo " debug Start Catalina in a debugger" + echo " debug -security Debug Catalina with a security manager" + fi + echo " jpda start Start Catalina under JPDA debugger" + echo " run Start Catalina in the current window" + echo " run -security Start in the current window with security manager" + echo " start Start Catalina in a separate window" + echo " start -security Start in a separate window with security manager" + echo " stop Stop Catalina" + echo " stop -force Stop Catalina (followed by kill -KILL)" + echo " version What version of tomcat are you running?" + exit 1 + +fi diff --git a/P51/apache-tomcat-6.0.14/bin/commons-daemon.jar b/P51/apache-tomcat-6.0.14/bin/commons-daemon.jar new file mode 100644 index 0000000..e8d1480 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/bin/commons-daemon.jar differ diff --git a/P51/apache-tomcat-6.0.14/bin/cpappend.bat b/P51/apache-tomcat-6.0.14/bin/cpappend.bat new file mode 100644 index 0000000..720fbb2 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/cpappend.bat @@ -0,0 +1,19 @@ +rem --------------------------------------------------------------------------- +rem Append to CLASSPATH +rem +rem $Id: cpappend.bat 467182 2006-10-23 23:47:06Z markt $ +rem --------------------------------------------------------------------------- + +rem Process the first argument +if ""%1"" == """" goto end +set CLASSPATH=%CLASSPATH%;%1 +shift + +rem Process the remaining arguments +:setArgs +if ""%1"" == """" goto doneSetArgs +set CLASSPATH=%CLASSPATH% %1 +shift +goto setArgs +:doneSetArgs +:end diff --git a/P51/apache-tomcat-6.0.14/bin/digest.bat b/P51/apache-tomcat-6.0.14/bin/digest.bat new file mode 100644 index 0000000..b6faf67 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/digest.bat @@ -0,0 +1,41 @@ +@echo off +if "%OS%" == "Windows_NT" setlocal +rem --------------------------------------------------------------------------- +rem Script to digest password using the algorithm specified +rem +rem $Id: digest.bat 467182 2006-10-23 23:47:06Z markt $ +rem --------------------------------------------------------------------------- + +rem Guess CATALINA_HOME if not defined +if not "%CATALINA_HOME%" == "" goto gotHome +set CATALINA_HOME=. +if exist "%CATALINA_HOME%\bin\tool-wrapper.bat" goto okHome +set CATALINA_HOME=.. +:gotHome +if exist "%CATALINA_HOME%\bin\tool-wrapper.bat" goto okHome +echo The CATALINA_HOME environment variable is not defined correctly +echo This environment variable is needed to run this program +goto end +:okHome + +set EXECUTABLE=%CATALINA_HOME%\bin\tool-wrapper.bat + +rem Check that target executable exists +if exist "%EXECUTABLE%" goto okExec +echo Cannot find %EXECUTABLE% +echo This file is needed to run this program +goto end +:okExec + +rem Get remaining unshifted command line arguments and save them in the +set CMD_LINE_ARGS= +:setArgs +if ""%1""=="""" goto doneSetArgs +set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 +shift +goto setArgs +:doneSetArgs + +call "%EXECUTABLE%" -server org.apache.catalina.realm.RealmBase %CMD_LINE_ARGS% + +:end diff --git a/P51/apache-tomcat-6.0.14/bin/digest.sh b/P51/apache-tomcat-6.0.14/bin/digest.sh new file mode 100644 index 0000000..c6dcf79 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/digest.sh @@ -0,0 +1,31 @@ +#!/bin/sh +# ----------------------------------------------------------------------------- +# Script to digest password using the algorithm specified +# +# $Id: digest.sh 467182 2006-10-23 23:47:06Z markt $ +# ----------------------------------------------------------------------------- + +# resolve links - $0 may be a softlink +PRG="$0" + +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`/"$link" + fi +done + +PRGDIR=`dirname "$PRG"` +EXECUTABLE=tool-wrapper.sh + +# Check that target executable exists +if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then + echo "Cannot find $PRGDIR/$EXECUTABLE" + echo "This file is needed to run this program" + exit 1 +fi + +exec "$PRGDIR"/"$EXECUTABLE" -server org.apache.catalina.realm.RealmBase "$@" diff --git a/P51/apache-tomcat-6.0.14/bin/jsvc.tar.gz b/P51/apache-tomcat-6.0.14/bin/jsvc.tar.gz new file mode 100644 index 0000000..34b4dfd Binary files /dev/null and b/P51/apache-tomcat-6.0.14/bin/jsvc.tar.gz differ diff --git a/P51/apache-tomcat-6.0.14/bin/service.bat b/P51/apache-tomcat-6.0.14/bin/service.bat new file mode 100644 index 0000000..de160c6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/service.bat @@ -0,0 +1,112 @@ +@echo off +if "%OS%" == "Windows_NT" setlocal +rem --------------------------------------------------------------------------- +rem NT Service Install/Uninstall script +rem +rem Options +rem install Install the service using Tomcat5 as service name. +rem Service is installed using default settings. +rem remove Remove the service from the System. +rem +rem name (optional) If the second argument is present it is considered +rem to be new service name +rem +rem $Id: service.bat 544700 2007-06-06 01:08:53Z markt $ +rem --------------------------------------------------------------------------- + +rem Guess CATALINA_HOME if not defined +set CURRENT_DIR=%cd% +if not "%CATALINA_HOME%" == "" goto gotHome +set CATALINA_HOME=%cd% +if exist "%CATALINA_HOME%\bin\tomcat6.exe" goto okHome +rem CD to the upper dir +cd .. +set CATALINA_HOME=%cd% +:gotHome +if exist "%CATALINA_HOME%\bin\tomcat6.exe" goto okHome +echo The tomcat.exe was not found... +echo The CATALINA_HOME environment variable is not defined correctly. +echo This environment variable is needed to run this program +goto end +rem Make sure prerequisite environment variables are set +if not "%JAVA_HOME%" == "" goto okHome +echo The JAVA_HOME environment variable is not defined +echo This environment variable is needed to run this program +goto end +:okHome +if not "%CATALINA_BASE%" == "" goto gotBase +set CATALINA_BASE=%CATALINA_HOME% +:gotBase + +set EXECUTABLE=%CATALINA_HOME%\bin\tomcat6.exe + +rem Set default Service name +set SERVICE_NAME=Tomcat6 +set PR_DISPLAYNAME=Apache Tomcat + +if "%1" == "" goto displayUsage +if "%2" == "" goto setServiceName +set SERVICE_NAME=%2 +set PR_DISPLAYNAME=Apache Tomcat %2 +:setServiceName +if %1 == install goto doInstall +if %1 == remove goto doRemove +if %1 == uninstall goto doRemove +echo Unknown parameter "%1" +:displayUsage +echo. +echo Usage: service.bat install/remove [service_name] +goto end + +:doRemove +rem Remove the service +"%EXECUTABLE%" //DS//%SERVICE_NAME% +echo The service '%SERVICE_NAME%' has been removed +goto end + +:doInstall +rem Install the service +echo Installing the service '%SERVICE_NAME%' ... +echo Using CATALINA_HOME: %CATALINA_HOME% +echo Using CATALINA_BASE: %CATALINA_BASE% +echo Using JAVA_HOME: %JAVA_HOME% + +rem Use the environment variables as an example +rem Each command line option is prefixed with PR_ + +set PR_DESCRIPTION=Apache Tomcat Server - http://tomcat.apache.org/ +set PR_INSTALL=%EXECUTABLE% +set PR_LOGPATH=%CATALINA_BASE%\logs +set PR_CLASSPATH=%CATALINA_HOME%\bin\bootstrap.jar +rem Set the server jvm from JAVA_HOME +set PR_JVM=%JAVA_HOME%\jre\bin\server\jvm.dll +if exist "%PR_JVM%" goto foundJvm +rem Set the client jvm from JAVA_HOME +set PR_JVM=%JAVA_HOME%\jre\bin\client\jvm.dll +if exist "%PR_JVM%" goto foundJvm +set PR_JVM=auto +:foundJvm +echo Using JVM: %PR_JVM% +"%EXECUTABLE%" //IS//%SERVICE_NAME% --StartClass org.apache.catalina.startup.Bootstrap --StopClass org.apache.catalina.startup.Bootstrap --StartParams start --StopParams stop +if not errorlevel 1 goto installed +echo Failed installing '%SERVICE_NAME%' service +goto end +:installed +rem Clear the environment variables. They are not needed any more. +set PR_DISPLAYNAME= +set PR_DESCRIPTION= +set PR_INSTALL= +set PR_LOGPATH= +set PR_CLASSPATH= +set PR_JVM= +rem Set extra parameters +"%EXECUTABLE%" //US//%SERVICE_NAME% --JvmOptions "-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.home=%CATALINA_HOME%;-Djava.endorsed.dirs=%CATALINA_HOME%\endorsed" --StartMode jvm --StopMode jvm +rem More extra parameters +set PR_LOGPATH=%CATALINA_BASE%\logs +set PR_STDOUTPUT=auto +set PR_STDERROR=auto +"%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions "-Djava.io.tmpdir=%CATALINA_BASE%\temp" --JvmMs 128 --JvmMx 256 +echo The service '%SERVICE_NAME%' has been installed. + +:end +cd %CURRENT_DIR% diff --git a/P51/apache-tomcat-6.0.14/bin/setclasspath.bat b/P51/apache-tomcat-6.0.14/bin/setclasspath.bat new file mode 100644 index 0000000..55803d9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/setclasspath.bat @@ -0,0 +1,71 @@ +rem --------------------------------------------------------------------------- +rem Set CLASSPATH and Java options +rem +rem $Id: setclasspath.bat 545668 2007-06-09 00:18:22Z markt $ +rem --------------------------------------------------------------------------- + +rem Make sure prerequisite environment variables are set +if not "%JAVA_HOME%" == "" goto gotJdkHome +if not "%JRE_HOME%" == "" goto gotJreHome +echo Neither the JAVA_HOME nor the JRE_HOME environment variable is defined +echo At least one of these environment variable is needed to run this program +goto exit + +:gotJreHome +if not exist "%JRE_HOME%\bin\java.exe" goto noJavaHome +if not exist "%JRE_HOME%\bin\javaw.exe" goto noJavaHome +if not ""%1"" == ""debug"" goto okJavaHome +echo JAVA_HOME should point to a JDK in order to run in debug mode. +goto exit + +:gotJdkHome +if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome +if not exist "%JAVA_HOME%\bin\javaw.exe" goto noJavaHome +if not exist "%JAVA_HOME%\bin\jdb.exe" goto noJavaHome +if not exist "%JAVA_HOME%\bin\javac.exe" goto noJavaHome +if not "%JRE_HOME%" == "" goto okJavaHome +set JRE_HOME=%JAVA_HOME% +goto okJavaHome + +:noJavaHome +echo The JAVA_HOME environment variable is not defined correctly +echo This environment variable is needed to run this program +echo NB: JAVA_HOME should point to a JDK not a JRE +goto exit +:okJavaHome + +if not "%BASEDIR%" == "" goto gotBasedir +echo The BASEDIR environment variable is not defined +echo This environment variable is needed to run this program +goto exit +:gotBasedir +if exist "%BASEDIR%\bin\setclasspath.bat" goto okBasedir +echo The BASEDIR environment variable is not defined correctly +echo This environment variable is needed to run this program +goto exit +:okBasedir + +rem Set the default -Djava.endorsed.dirs argument +set JAVA_ENDORSED_DIRS=%BASEDIR%\endorsed + +rem Set standard CLASSPATH +rem Note that there are no quotes as we do not want to introduce random +rem quotes into the CLASSPATH +if not exist "%JAVA_HOME%\lib\tools.jar" goto noJavac +set CLASSPATH=%JAVA_HOME%\lib\tools.jar +:noJavac + +rem Set standard command for invoking Java. +rem Note that NT requires a window name argument when using start. +rem Also note the quoting as JAVA_HOME may contain spaces. +set _RUNJAVA="%JRE_HOME%\bin\java" +set _RUNJAVAW="%JRE_HOME%\bin\javaw" +set _RUNJDB="%JAVA_HOME%\bin\jdb" +set _RUNJAVAC="%JAVA_HOME%\bin\javac" + +goto end + +:exit +exit /b 1 + +:end diff --git a/P51/apache-tomcat-6.0.14/bin/setclasspath.sh b/P51/apache-tomcat-6.0.14/bin/setclasspath.sh new file mode 100644 index 0000000..a71711a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/setclasspath.sh @@ -0,0 +1,100 @@ +#!/bin/sh +# ----------------------------------------------------------------------------- +# Set CLASSPATH and Java options +# +# $Id: setclasspath.sh 505244 2007-02-09 10:33:43Z jfclere $ +# ----------------------------------------------------------------------------- + +# First clear out the user classpath +CLASSPATH= + +# Make sure prerequisite environment variables are set +if [ -z "$JAVA_HOME" -a -z "$JRE_HOME" ]; then + # Bugzilla 37284 + if $darwin && [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home" ]; then + export JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home" + else + echo "Neither the JAVA_HOME nor the JRE_HOME environment variable is defined" + echo "At least one of these environment variable is needed to run this program" + exit 1 + fi +fi +if [ -z "$JAVA_HOME" -a "$1" = "debug" ]; then + echo "JAVA_HOME should point to a JDK in order to run in debug mode." + exit 1 +fi +if [ -z "$JRE_HOME" ]; then + JRE_HOME="$JAVA_HOME" +fi + +# If we're running under jdb, we need a full jdk. +if [ "$1" = "debug" -o "$1" = "javac" ] ; then + if [ "$os400" = "true" ]; then + if [ ! -x "$JAVA_HOME"/bin/java -o ! -x "$JAVA_HOME"/bin/javac ]; then + echo "The JAVA_HOME environment variable is not defined correctly" + echo "This environment variable is needed to run this program" + echo "NB: JAVA_HOME should point to a JDK not a JRE" + exit 1 + fi + else + if [ ! -x "$JAVA_HOME"/bin/java -o ! -x "$JAVA_HOME"/bin/jdb -o ! -x "$JAVA_HOME"/bin/javac ]; then + echo "The JAVA_HOME environment variable is not defined correctly" + echo "This environment variable is needed to run this program" + echo "NB: JAVA_HOME should point to a JDK not a JRE" + exit 1 + fi + fi +fi +if [ -z "$BASEDIR" ]; then + echo "The BASEDIR environment variable is not defined" + echo "This environment variable is needed to run this program" + exit 1 +fi +if [ ! -x "$BASEDIR"/bin/setclasspath.sh ]; then + if $os400; then + # -x will Only work on the os400 if the files are: + # 1. owned by the user + # 2. owned by the PRIMARY group of the user + # this will not work if the user belongs in secondary groups + eval + else + echo "The BASEDIR environment variable is not defined correctly" + echo "This environment variable is needed to run this program" + exit 1 + fi +fi + +# Set the default -Djava.endorsed.dirs argument +JAVA_ENDORSED_DIRS="$BASEDIR"/endorsed + +# Set standard CLASSPATH +if [ "$1" = "javac" ] ; then + if [ ! -f "$JAVA_HOME"/lib/tools.jar ]; then + echo "Can't find tools.jar in JAVA_HOME" + echo "Need a JDK to run javac" + exit 1 + fi +fi +if [ "$1" = "debug" -o "$1" = "javac" ] ; then + if [ -f "$JAVA_HOME"/lib/tools.jar ]; then + CLASSPATH="$JAVA_HOME"/lib/tools.jar + fi +fi + +# OSX hack to CLASSPATH +JIKESPATH= +if [ `uname -s` = "Darwin" ]; then + OSXHACK="/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Classes" + if [ -d "$OSXHACK" ]; then + for i in "$OSXHACK"/*.jar; do + JIKESPATH="$JIKESPATH":"$i" + done + fi +fi + +# Set standard commands for invoking Java. + _RUNJAVA="$JRE_HOME"/bin/java +if [ "$os400" != "true" ]; then + _RUNJDB="$JAVA_HOME"/bin/jdb +fi +_RUNJAVAC="$JAVA_HOME"/bin/javac diff --git a/P51/apache-tomcat-6.0.14/bin/shutdown.bat b/P51/apache-tomcat-6.0.14/bin/shutdown.bat new file mode 100644 index 0000000..621217f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/shutdown.bat @@ -0,0 +1,44 @@ +@echo off +if "%OS%" == "Windows_NT" setlocal +rem --------------------------------------------------------------------------- +rem Stop script for the CATALINA Server +rem +rem $Id: shutdown.bat 467182 2006-10-23 23:47:06Z markt $ +rem --------------------------------------------------------------------------- + +rem Guess CATALINA_HOME if not defined +set CURRENT_DIR=%cd% +if not "%CATALINA_HOME%" == "" goto gotHome +set CATALINA_HOME=%CURRENT_DIR% +if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome +cd .. +set CATALINA_HOME=%cd% +cd %CURRENT_DIR% +:gotHome +if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome +echo The CATALINA_HOME environment variable is not defined correctly +echo This environment variable is needed to run this program +goto end +:okHome + +set EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat + +rem Check that target executable exists +if exist "%EXECUTABLE%" goto okExec +echo Cannot find %EXECUTABLE% +echo This file is needed to run this program +goto end +:okExec + +rem Get remaining unshifted command line arguments and save them in the +set CMD_LINE_ARGS= +:setArgs +if ""%1""=="""" goto doneSetArgs +set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 +shift +goto setArgs +:doneSetArgs + +call "%EXECUTABLE%" stop %CMD_LINE_ARGS% + +:end diff --git a/P51/apache-tomcat-6.0.14/bin/shutdown.sh b/P51/apache-tomcat-6.0.14/bin/shutdown.sh new file mode 100644 index 0000000..6cf0a92 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/shutdown.sh @@ -0,0 +1,31 @@ +#!/bin/sh +# ----------------------------------------------------------------------------- +# Stop script for the CATALINA Server +# +# $Id: shutdown.sh 467182 2006-10-23 23:47:06Z markt $ +# ----------------------------------------------------------------------------- + +# resolve links - $0 may be a softlink +PRG="$0" + +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`/"$link" + fi +done + +PRGDIR=`dirname "$PRG"` +EXECUTABLE=catalina.sh + +# Check that target executable exists +if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then + echo "Cannot find $PRGDIR/$EXECUTABLE" + echo "This file is needed to run this program" + exit 1 +fi + +exec "$PRGDIR"/"$EXECUTABLE" stop "$@" diff --git a/P51/apache-tomcat-6.0.14/bin/startup.bat b/P51/apache-tomcat-6.0.14/bin/startup.bat new file mode 100644 index 0000000..4885678 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/startup.bat @@ -0,0 +1,44 @@ +@echo off +if "%OS%" == "Windows_NT" setlocal +rem --------------------------------------------------------------------------- +rem Start script for the CATALINA Server +rem +rem $Id: startup.bat 467182 2006-10-23 23:47:06Z markt $ +rem --------------------------------------------------------------------------- + +rem Guess CATALINA_HOME if not defined +set CURRENT_DIR=%cd% +if not "%CATALINA_HOME%" == "" goto gotHome +set CATALINA_HOME=%CURRENT_DIR% +if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome +cd .. +set CATALINA_HOME=%cd% +cd %CURRENT_DIR% +:gotHome +if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome +echo The CATALINA_HOME environment variable is not defined correctly +echo This environment variable is needed to run this program +goto end +:okHome + +set EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat + +rem Check that target executable exists +if exist "%EXECUTABLE%" goto okExec +echo Cannot find %EXECUTABLE% +echo This file is needed to run this program +goto end +:okExec + +rem Get remaining unshifted command line arguments and save them in the +set CMD_LINE_ARGS= +:setArgs +if ""%1""=="""" goto doneSetArgs +set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 +shift +goto setArgs +:doneSetArgs + +call "%EXECUTABLE%" start %CMD_LINE_ARGS% + +:end diff --git a/P51/apache-tomcat-6.0.14/bin/startup.sh b/P51/apache-tomcat-6.0.14/bin/startup.sh new file mode 100644 index 0000000..d692665 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/startup.sh @@ -0,0 +1,48 @@ +#!/bin/sh +# ----------------------------------------------------------------------------- +# Start Script for the CATALINA Server +# +# $Id: startup.sh 467182 2006-10-23 23:47:06Z markt $ +# ----------------------------------------------------------------------------- + +# Better OS/400 detection: see Bugzilla 31132 +os400=false +darwin=false +case "`uname`" in +CYGWIN*) cygwin=true;; +OS400*) os400=true;; +Darwin*) darwin=true;; +esac + +# resolve links - $0 may be a softlink +PRG="$0" + +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`/"$link" + fi +done + +PRGDIR=`dirname "$PRG"` +EXECUTABLE=catalina.sh + +# Check that target executable exists +if $os400; then + # -x will Only work on the os400 if the files are: + # 1. owned by the user + # 2. owned by the PRIMARY group of the user + # this will not work if the user belongs in secondary groups + eval +else + if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then + echo "Cannot find $PRGDIR/$EXECUTABLE" + echo "This file is needed to run this program" + exit 1 + fi +fi + +exec "$PRGDIR"/"$EXECUTABLE" start "$@" diff --git a/P51/apache-tomcat-6.0.14/bin/tomcat-juli.jar b/P51/apache-tomcat-6.0.14/bin/tomcat-juli.jar new file mode 100644 index 0000000..ecd4f91 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/bin/tomcat-juli.jar differ diff --git a/P51/apache-tomcat-6.0.14/bin/tomcat-native.tar.gz b/P51/apache-tomcat-6.0.14/bin/tomcat-native.tar.gz new file mode 100644 index 0000000..6fbf452 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/bin/tomcat-native.tar.gz differ diff --git a/P51/apache-tomcat-6.0.14/bin/tomcat6.exe b/P51/apache-tomcat-6.0.14/bin/tomcat6.exe new file mode 100644 index 0000000..c0544c1 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/bin/tomcat6.exe differ diff --git a/P51/apache-tomcat-6.0.14/bin/tomcat6w.exe b/P51/apache-tomcat-6.0.14/bin/tomcat6w.exe new file mode 100644 index 0000000..5b0864a Binary files /dev/null and b/P51/apache-tomcat-6.0.14/bin/tomcat6w.exe differ diff --git a/P51/apache-tomcat-6.0.14/bin/tool-wrapper.bat b/P51/apache-tomcat-6.0.14/bin/tool-wrapper.bat new file mode 100644 index 0000000..a4dfc68 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/tool-wrapper.bat @@ -0,0 +1,64 @@ +@echo off +if "%OS%" == "Windows_NT" setlocal +rem --------------------------------------------------------------------------- +rem Wrapper script for command line tools +rem +rem Environment Variable Prequisites +rem +rem CATALINA_HOME May point at your Catalina "build" directory. +rem +rem TOOL_OPTS (Optional) Java runtime options used when the "start", +rem "stop", or "run" command is executed. +rem +rem JAVA_HOME Must point at your Java Development Kit installation. +rem +rem JAVA_OPTS (Optional) Java runtime options used when the "start", +rem "stop", or "run" command is executed. +rem +rem $Id: tool-wrapper.bat 505241 2007-02-09 10:22:58Z jfclere $ +rem --------------------------------------------------------------------------- + +rem Guess CATALINA_HOME if not defined +if not "%CATALINA_HOME%" == "" goto gotHome +set CATALINA_HOME=. +if exist "%CATALINA_HOME%\bin\tool-wrapper.bat" goto okHome +set CATALINA_HOME=.. +:gotHome +if exist "%CATALINA_HOME%\bin\tool-wrapper.bat" goto okHome +echo The CATALINA_HOME environment variable is not defined correctly +echo This environment variable is needed to run this program +goto end +:okHome + +rem Get standard environment variables +if exist "%CATALINA_HOME%\bin\setenv.bat" call "%CATALINA_HOME%\bin\setenv.bat" + +rem Get standard Java environment variables +if exist "%CATALINA_HOME%\bin\setclasspath.bat" goto okSetclasspath +echo Cannot find %CATALINA_HOME%\bin\setclasspath.bat +echo This file is needed to run this program +goto end +:okSetclasspath +set BASEDIR=%CATALINA_HOME% +call "%CATALINA_HOME%\bin\setclasspath.bat" + +rem Add on extra jar files to CLASSPATH +if "%CLASSPATH%" == "" goto noclasspath +set CLASSPATH=%CLASSPATH%;%CATALINA_HOME%\bin\bootstrap.jar;"%BASEDIR%"\lib\servlet-api.jar +goto :okclasspath +:noclasspath +set CLASSPATH=%CATALINA_HOME%\bin\bootstrap.jar;"%BASEDIR%"\lib\servlet-api.jar +:okclasspath + +rem Get remaining unshifted command line arguments and save them in the +set CMD_LINE_ARGS= +:setArgs +if ""%1""=="""" goto doneSetArgs +set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 +shift +goto setArgs +:doneSetArgs + +%_RUNJAVA% %JAVA_OPTS% %TOOL_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.home="%CATALINA_HOME%" org.apache.catalina.startup.Tool %CMD_LINE_ARGS% + +:end diff --git a/P51/apache-tomcat-6.0.14/bin/tool-wrapper.sh b/P51/apache-tomcat-6.0.14/bin/tool-wrapper.sh new file mode 100644 index 0000000..f18994c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/tool-wrapper.sh @@ -0,0 +1,78 @@ +#!/bin/sh +# ----------------------------------------------------------------------------- +# Wrapper script for command line tools +# +# Environment Variable Prequisites +# +# CATALINA_HOME May point at your Catalina "build" directory. +# +# TOOL_OPTS (Optional) Java runtime options used when the "start", +# "stop", or "run" command is executed. +# +# JAVA_HOME Must point at your Java Development Kit installation. +# +# JAVA_OPTS (Optional) Java runtime options used when the "start", +# "stop", or "run" command is executed. +# +# $Id: tool-wrapper.sh 467182 2006-10-23 23:47:06Z markt $ +# ----------------------------------------------------------------------------- + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false +case "`uname`" in +CYGWIN*) cygwin=true;; +esac + +# resolve links - $0 may be a softlink +PRG="$0" + +while [ -h "$PRG" ]; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`/"$link" + fi +done + +# Get standard environment variables +PRGDIR=`dirname "$PRG"` +CATALINA_HOME=`cd "$PRGDIR/.." ; pwd` +if [ -r "$CATALINA_HOME"/bin/setenv.sh ]; then + . "$CATALINA_HOME"/bin/setenv.sh +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` + [ -n "$CATALINA_HOME" ] && CATALINA_HOME=`cygpath --unix "$CATALINA_HOME"` + [ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +fi + +# Get standard Java environment variables +if [ -r "$CATALINA_HOME"/bin/setclasspath.sh ]; then + BASEDIR="$CATALINA_HOME" + . "$CATALINA_HOME"/bin/setclasspath.sh +else + echo "Cannot find $CATALINA_HOME/bin/setclasspath.sh" + echo "This file is needed to run this program" + exit 1 +fi + +# Add on extra jar files to CLASSPATH +CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/bootstrap.jar:"$BASEDIR"/lib/servlet-api.jar + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` + CATALINA_HOME=`cygpath --path --windows "$CATALINA_HOME"` + CLASSPATH=`cygpath --path --windows "$CLASSPATH"` +fi + +# ----- Execute The Requested Command ----------------------------------------- + +exec "$_RUNJAVA" $JAVA_OPTS $TOOL_OPTS \ + -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ + -Dcatalina.home="$CATALINA_HOME" \ + org.apache.catalina.startup.Tool "$@" diff --git a/P51/apache-tomcat-6.0.14/bin/version.bat b/P51/apache-tomcat-6.0.14/bin/version.bat new file mode 100644 index 0000000..d243232 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/version.bat @@ -0,0 +1,44 @@ +@echo off +if "%OS%" == "Windows_NT" setlocal +rem --------------------------------------------------------------------------- +rem Version script for the CATALINA Server +rem +rem $Id: version.bat 467182 2006-10-23 23:47:06Z markt $ +rem --------------------------------------------------------------------------- + +rem Guess CATALINA_HOME if not defined +set CURRENT_DIR=%cd% +if not "%CATALINA_HOME%" == "" goto gotHome +set CATALINA_HOME=%CURRENT_DIR% +if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome +cd .. +set CATALINA_HOME=%cd% +cd %CURRENT_DIR% +:gotHome +if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome +echo The CATALINA_HOME environment variable is not defined correctly +echo This environment variable is needed to run this program +goto end +:okHome + +set EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat + +rem Check that target executable exists +if exist "%EXECUTABLE%" goto okExec +echo Cannot find %EXECUTABLE% +echo This file is needed to run this program +goto end +:okExec + +rem Get remaining unshifted command line arguments and save them in the +set CMD_LINE_ARGS= +:setArgs +if ""%1""=="""" goto doneSetArgs +set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 +shift +goto setArgs +:doneSetArgs + +call "%EXECUTABLE%" version %CMD_LINE_ARGS% + +:end diff --git a/P51/apache-tomcat-6.0.14/bin/version.sh b/P51/apache-tomcat-6.0.14/bin/version.sh new file mode 100644 index 0000000..a7ad499 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/bin/version.sh @@ -0,0 +1,31 @@ +#!/bin/sh +# ----------------------------------------------------------------------------- +# Version Script for the CATALINA Server +# +# $Id: version.sh 467182 2006-10-23 23:47:06Z markt $ +# ----------------------------------------------------------------------------- + +# resolve links - $0 may be a softlink +PRG="$0" + +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`/"$link" + fi +done + +PRGDIR=`dirname "$PRG"` +EXECUTABLE=catalina.sh + +# Check that target executable exists +if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then + echo "Cannot find $PRGDIR/$EXECUTABLE" + echo "This file is needed to run this program" + exit 1 +fi + +exec "$PRGDIR"/"$EXECUTABLE" version "$@" diff --git a/P51/apache-tomcat-6.0.14/conf/catalina.policy b/P51/apache-tomcat-6.0.14/conf/catalina.policy new file mode 100644 index 0000000..b100dc8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/conf/catalina.policy @@ -0,0 +1,150 @@ +// ============================================================================ +// catalina.corepolicy - Security Policy Permissions for Tomcat 5 +// +// This file contains a default set of security policies to be enforced (by the +// JVM) when Catalina is executed with the "-security" option. In addition +// to the permissions granted here, the following additional permissions are +// granted to the codebase specific to each web application: +// +// * Read access to the document root directory +// +// $Id: catalina.policy 543026 2007-05-31 02:44:55Z markt $ +// ============================================================================ + + +// ========== SYSTEM CODE PERMISSIONS ========================================= + + +// These permissions apply to javac +grant codeBase "file:${java.home}/lib/-" { + permission java.security.AllPermission; +}; + +// These permissions apply to all shared system extensions +grant codeBase "file:${java.home}/jre/lib/ext/-" { + permission java.security.AllPermission; +}; + +// These permissions apply to javac when ${java.home] points at $JAVA_HOME/jre +grant codeBase "file:${java.home}/../lib/-" { + permission java.security.AllPermission; +}; + +// These permissions apply to all shared system extensions when +// ${java.home} points at $JAVA_HOME/jre +grant codeBase "file:${java.home}/lib/ext/-" { + permission java.security.AllPermission; +}; + + +// ========== CATALINA CODE PERMISSIONS ======================================= + + +// These permissions apply to the daemon code +grant codeBase "file:${catalina.home}/bin/commons-daemon.jar" { + permission java.security.AllPermission; +}; + +// These permissions apply to the logging API +grant codeBase "file:${catalina.home}/bin/tomcat-juli.jar" { + permission java.security.AllPermission; +}; + +// These permissions apply to the server startup code +grant codeBase "file:${catalina.home}/bin/bootstrap.jar" { + permission java.security.AllPermission; +}; + +// These permissions apply to the servlet API classes +// and those that are shared across all class loaders +// located in the "lib" directory +grant codeBase "file:${catalina.home}/lib/-" { + permission java.security.AllPermission; +}; + + +// ========== WEB APPLICATION PERMISSIONS ===================================== + + +// These permissions are granted by default to all web applications +// In addition, a web application will be given a read FilePermission +// and JndiPermission for all files and directories in its document root. +grant { + // Required for JNDI lookup of named JDBC DataSource's and + // javamail named MimePart DataSource used to send mail + permission java.util.PropertyPermission "java.home", "read"; + permission java.util.PropertyPermission "java.naming.*", "read"; + permission java.util.PropertyPermission "javax.sql.*", "read"; + + // OS Specific properties to allow read access + permission java.util.PropertyPermission "os.name", "read"; + permission java.util.PropertyPermission "os.version", "read"; + permission java.util.PropertyPermission "os.arch", "read"; + permission java.util.PropertyPermission "file.separator", "read"; + permission java.util.PropertyPermission "path.separator", "read"; + permission java.util.PropertyPermission "line.separator", "read"; + + // JVM properties to allow read access + permission java.util.PropertyPermission "java.version", "read"; + permission java.util.PropertyPermission "java.vendor", "read"; + permission java.util.PropertyPermission "java.vendor.url", "read"; + permission java.util.PropertyPermission "java.class.version", "read"; + permission java.util.PropertyPermission "java.specification.version", "read"; + permission java.util.PropertyPermission "java.specification.vendor", "read"; + permission java.util.PropertyPermission "java.specification.name", "read"; + + permission java.util.PropertyPermission "java.vm.specification.version", "read"; + permission java.util.PropertyPermission "java.vm.specification.vendor", "read"; + permission java.util.PropertyPermission "java.vm.specification.name", "read"; + permission java.util.PropertyPermission "java.vm.version", "read"; + permission java.util.PropertyPermission "java.vm.vendor", "read"; + permission java.util.PropertyPermission "java.vm.name", "read"; + + // Required for OpenJMX + permission java.lang.RuntimePermission "getAttribute"; + + // Allow read of JAXP compliant XML parser debug + permission java.util.PropertyPermission "jaxp.debug", "read"; + + // Precompiled JSPs need access to this package. + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime"; + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime.*"; + + // Precompiled JSPs need access to this system property. + permission java.util.PropertyPermission "org.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER", "read"; + +}; + + +// You can assign additional permissions to particular web applications by +// adding additional "grant" entries here, based on the code base for that +// application, /WEB-INF/classes/, or /WEB-INF/lib/ jar files. +// +// Different permissions can be granted to JSP pages, classes loaded from +// the /WEB-INF/classes/ directory, all jar files in the /WEB-INF/lib/ +// directory, or even to individual jar files in the /WEB-INF/lib/ directory. +// +// For instance, assume that the standard "examples" application +// included a JDBC driver that needed to establish a network connection to the +// corresponding database and used the scrape taglib to get the weather from +// the NOAA web server. You might create a "grant" entries like this: +// +// The permissions granted to the context root directory apply to JSP pages. +// grant codeBase "file:${catalina.home}/webapps/examples/-" { +// permission java.net.SocketPermission "dbhost.mycompany.com:5432", "connect"; +// permission java.net.SocketPermission "*.noaa.gov:80", "connect"; +// }; +// +// The permissions granted to the context WEB-INF/classes directory +// grant codeBase "file:${catalina.home}/webapps/examples/WEB-INF/classes/-" { +// }; +// +// The permission granted to your JDBC driver +// grant codeBase "jar:file:${catalina.home}/webapps/examples/WEB-INF/lib/driver.jar!/-" { +// permission java.net.SocketPermission "dbhost.mycompany.com:5432", "connect"; +// }; +// The permission granted to the scrape taglib +// grant codeBase "jar:file:${catalina.home}/webapps/examples/WEB-INF/lib/scrape.jar!/-" { +// permission java.net.SocketPermission "*.noaa.gov:80", "connect"; +// }; + diff --git a/P51/apache-tomcat-6.0.14/conf/catalina.properties b/P51/apache-tomcat-6.0.14/conf/catalina.properties new file mode 100644 index 0000000..a560e30 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/conf/catalina.properties @@ -0,0 +1,66 @@ +# +# List of comma-separated packages that start with or equal this string +# will cause a security exception to be thrown when +# passed to checkPackageAccess unless the +# corresponding RuntimePermission ("accessClassInPackage."+package) has +# been granted. +package.access=sun.,org.apache.catalina.,org.apache.coyote.,org.apache.tomcat.,org.apache.jasper.,sun.beans. +# +# List of comma-separated packages that start with or equal this string +# will cause a security exception to be thrown when +# passed to checkPackageDefinition unless the +# corresponding RuntimePermission ("defineClassInPackage."+package) has +# been granted. +# +# by default, no packages are restricted for definition, and none of +# the class loaders supplied with the JDK call checkPackageDefinition. +# +package.definition=sun.,java.,org.apache.catalina.,org.apache.coyote.,org.apache.tomcat.,org.apache.jasper. + +# +# +# List of comma-separated paths defining the contents of the "common" +# classloader. Prefixes should be used to define what is the repository type. +# Path may be relative to the CATALINA_HOME or CATALINA_BASE path or absolute. +# If left as blank,the JVM system loader will be used as Catalina's "common" +# loader. +# Examples: +# "foo": Add this folder as a class repository +# "foo/*.jar": Add all the JARs of the specified folder as class +# repositories +# "foo/bar.jar": Add bar.jar as a class repository +common.loader=${catalina.home}/lib,${catalina.home}/lib/*.jar + +# +# List of comma-separated paths defining the contents of the "server" +# classloader. Prefixes should be used to define what is the repository type. +# Path may be relative to the CATALINA_HOME or CATALINA_BASE path or absolute. +# If left as blank, the "common" loader will be used as Catalina's "server" +# loader. +# Examples: +# "foo": Add this folder as a class repository +# "foo/*.jar": Add all the JARs of the specified folder as class +# repositories +# "foo/bar.jar": Add bar.jar as a class repository +server.loader= + +# +# List of comma-separated paths defining the contents of the "shared" +# classloader. Prefixes should be used to define what is the repository type. +# Path may be relative to the CATALINA_BASE path or absolute. If left as blank, +# the "common" loader will be used as Catalina's "shared" loader. +# Examples: +# "foo": Add this folder as a class repository +# "foo/*.jar": Add all the JARs of the specified folder as class +# repositories +# "foo/bar.jar": Add bar.jar as a class repository +# Please note that for single jars, e.g. bar.jar, you need the URL form +# starting with file:. +shared.loader= + +# +# String cache configuration. +tomcat.util.buf.StringCache.byte.enabled=true +#tomcat.util.buf.StringCache.char.enabled=true +#tomcat.util.buf.StringCache.trainThreshold=500000 +#tomcat.util.buf.StringCache.cacheSize=5000 diff --git a/P51/apache-tomcat-6.0.14/conf/context.xml b/P51/apache-tomcat-6.0.14/conf/context.xml new file mode 100644 index 0000000..5aa019b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/conf/context.xml @@ -0,0 +1,18 @@ + + + + + WEB-INF/web.xml + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/conf/logging.properties b/P51/apache-tomcat-6.0.14/conf/logging.properties new file mode 100644 index 0000000..c00e5d3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/conf/logging.properties @@ -0,0 +1,56 @@ +handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4admin.org.apache.juli.FileHandler, 5host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler + +.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler + +############################################################ +# Handler specific properties. +# Describes specific configuration info for Handlers. +############################################################ + +1catalina.org.apache.juli.FileHandler.level = FINE +1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs +1catalina.org.apache.juli.FileHandler.prefix = catalina. + +2localhost.org.apache.juli.FileHandler.level = FINE +2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs +2localhost.org.apache.juli.FileHandler.prefix = localhost. + +3manager.org.apache.juli.FileHandler.level = FINE +3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs +3manager.org.apache.juli.FileHandler.prefix = manager. + +4admin.org.apache.juli.FileHandler.level = FINE +4admin.org.apache.juli.FileHandler.directory = ${catalina.base}/logs +4admin.org.apache.juli.FileHandler.prefix = admin. + +5host-manager.org.apache.juli.FileHandler.level = FINE +5host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs +5host-manager.org.apache.juli.FileHandler.prefix = host-manager. + +java.util.logging.ConsoleHandler.level = FINE +java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter + + +############################################################ +# Facility specific properties. +# Provides extra control for each logger. +############################################################ + +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler + +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler + +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/admin].level = INFO +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/admin].handlers = 4admin.org.apache.juli.FileHandler + +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 5host-manager.org.apache.juli.FileHandler + +# For example, set the com.xyz.foo logger to only log SEVERE +# messages: +#org.apache.catalina.startup.ContextConfig.level = FINE +#org.apache.catalina.startup.HostConfig.level = FINE +#org.apache.catalina.session.ManagerBase.level = FINE +#org.apache.catalina.core.AprLifecycleListener.level=FINE diff --git a/P51/apache-tomcat-6.0.14/conf/server.xml b/P51/apache-tomcat-6.0.14/conf/server.xml new file mode 100644 index 0000000..76f9d54 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/conf/server.xml @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/conf/server.xml~ b/P51/apache-tomcat-6.0.14/conf/server.xml~ new file mode 100644 index 0000000..8c7e3d4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/conf/server.xml~ @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/conf/tomcat-users.xml b/P51/apache-tomcat-6.0.14/conf/tomcat-users.xml new file mode 100644 index 0000000..6c9f217 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/conf/tomcat-users.xml @@ -0,0 +1,3 @@ + + + diff --git a/P51/apache-tomcat-6.0.14/conf/web.xml b/P51/apache-tomcat-6.0.14/conf/web.xml new file mode 100644 index 0000000..96ad6bb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/conf/web.xml @@ -0,0 +1,1172 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + default + org.apache.catalina.servlets.DefaultServlet + + debug + 0 + + + listings + false + + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + jsp + org.apache.jasper.servlet.JspServlet + + fork + false + + + xpoweredBy + false + + 3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + default + / + + + + + + + + jsp + *.jsp + + + + jsp + *.jspx + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 30 + + + + + + + + + + + + abs + audio/x-mpeg + + + ai + application/postscript + + + aif + audio/x-aiff + + + aifc + audio/x-aiff + + + aiff + audio/x-aiff + + + aim + application/x-aim + + + art + image/x-jg + + + asf + video/x-ms-asf + + + asx + video/x-ms-asf + + + au + audio/basic + + + avi + video/x-msvideo + + + avx + video/x-rad-screenplay + + + bcpio + application/x-bcpio + + + bin + application/octet-stream + + + bmp + image/bmp + + + body + text/html + + + cdf + application/x-cdf + + + cer + application/x-x509-ca-cert + + + class + application/java + + + cpio + application/x-cpio + + + csh + application/x-csh + + + css + text/css + + + dib + image/bmp + + + doc + application/msword + + + dtd + application/xml-dtd + + + dv + video/x-dv + + + dvi + application/x-dvi + + + eps + application/postscript + + + etx + text/x-setext + + + exe + application/octet-stream + + + gif + image/gif + + + gtar + application/x-gtar + + + gz + application/x-gzip + + + hdf + application/x-hdf + + + hqx + application/mac-binhex40 + + + htc + text/x-component + + + htm + text/html + + + html + text/html + + + hqx + application/mac-binhex40 + + + ief + image/ief + + + jad + text/vnd.sun.j2me.app-descriptor + + + jar + application/java-archive + + + java + text/plain + + + jnlp + application/x-java-jnlp-file + + + jpe + image/jpeg + + + jpeg + image/jpeg + + + jpg + image/jpeg + + + js + text/javascript + + + jsf + text/plain + + + jspf + text/plain + + + kar + audio/x-midi + + + latex + application/x-latex + + + m3u + audio/x-mpegurl + + + mac + image/x-macpaint + + + man + application/x-troff-man + + + mathml + application/mathml+xml + + + me + application/x-troff-me + + + mid + audio/x-midi + + + midi + audio/x-midi + + + mif + application/x-mif + + + mov + video/quicktime + + + movie + video/x-sgi-movie + + + mp1 + audio/x-mpeg + + + mp2 + audio/x-mpeg + + + mp3 + audio/x-mpeg + + + mp4 + video/mp4 + + + mpa + audio/x-mpeg + + + mpe + video/mpeg + + + mpeg + video/mpeg + + + mpega + audio/x-mpeg + + + mpg + video/mpeg + + + mpv2 + video/mpeg2 + + + ms + application/x-wais-source + + + nc + application/x-netcdf + + + oda + application/oda + + + + odb + application/vnd.oasis.opendocument.database + + + + odc + application/vnd.oasis.opendocument.chart + + + + odf + application/vnd.oasis.opendocument.formula + + + + odg + application/vnd.oasis.opendocument.graphics + + + + odi + application/vnd.oasis.opendocument.image + + + + odm + application/vnd.oasis.opendocument.text-master + + + + odp + application/vnd.oasis.opendocument.presentation + + + + ods + application/vnd.oasis.opendocument.spreadsheet + + + + odt + application/vnd.oasis.opendocument.text + + + ogg + application/ogg + + + + otg + application/vnd.oasis.opendocument.graphics-template + + + + oth + application/vnd.oasis.opendocument.text-web + + + + otp + application/vnd.oasis.opendocument.presentation-template + + + + ots + application/vnd.oasis.opendocument.spreadsheet-template + + + + ott + application/vnd.oasis.opendocument.text-template + + + pbm + image/x-portable-bitmap + + + pct + image/pict + + + pdf + application/pdf + + + pgm + image/x-portable-graymap + + + pic + image/pict + + + pict + image/pict + + + pls + audio/x-scpls + + + png + image/png + + + pnm + image/x-portable-anymap + + + pnt + image/x-macpaint + + + ppm + image/x-portable-pixmap + + + ppt + application/powerpoint + + + ps + application/postscript + + + psd + image/x-photoshop + + + qt + video/quicktime + + + qti + image/x-quicktime + + + qtif + image/x-quicktime + + + ras + image/x-cmu-raster + + + rdf + application/rdf+xml + + + rgb + image/x-rgb + + + rm + application/vnd.rn-realmedia + + + roff + application/x-troff + + + rtf + application/rtf + + + rtx + text/richtext + + + sh + application/x-sh + + + shar + application/x-shar + + + + smf + audio/x-midi + + + sit + application/x-stuffit + + + snd + audio/basic + + + src + application/x-wais-source + + + sv4cpio + application/x-sv4cpio + + + sv4crc + application/x-sv4crc + + + swf + application/x-shockwave-flash + + + t + application/x-troff + + + tar + application/x-tar + + + tcl + application/x-tcl + + + tex + application/x-tex + + + texi + application/x-texinfo + + + texinfo + application/x-texinfo + + + tif + image/tiff + + + tiff + image/tiff + + + tr + application/x-troff + + + tsv + text/tab-separated-values + + + txt + text/plain + + + ulw + audio/basic + + + ustar + application/x-ustar + + + vxml + application/voicexml+xml + + + xbm + image/x-xbitmap + + + xht + application/xhtml+xml + + + xhtml + application/xhtml+xml + + + xml + application/xml + + + xpm + image/x-xpixmap + + + xsl + application/xml + + + xslt + application/xslt+xml + + + xul + application/vnd.mozilla.xul+xml + + + xwd + image/x-xwindowdump + + + wav + audio/x-wav + + + svg + image/svg+xml + + + svgz + image/svg+xml + + + vsd + application/x-visio + + + + wbmp + image/vnd.wap.wbmp + + + + wml + text/vnd.wap.wml + + + + wmlc + application/vnd.wap.wmlc + + + + wmls + text/vnd.wap.wmlscript + + + + wmlscriptc + application/vnd.wap.wmlscriptc + + + wmv + video/x-ms-wmv + + + wrl + x-world/x-vrml + + + Z + application/x-compress + + + z + application/x-compress + + + zip + application/zip + + + xls + application/vnd.ms-excel + + + doc + application/vnd.ms-word + + + ppt + application/vnd.ms-powerpoint + + + + + + + + + + + + + + + + index.html + index.htm + index.jsp + + + diff --git a/P51/apache-tomcat-6.0.14/lib/annotations-api.jar b/P51/apache-tomcat-6.0.14/lib/annotations-api.jar new file mode 100644 index 0000000..fa40ba8 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/annotations-api.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/catalina-ant.jar b/P51/apache-tomcat-6.0.14/lib/catalina-ant.jar new file mode 100644 index 0000000..f4e61e6 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/catalina-ant.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/catalina-ha.jar b/P51/apache-tomcat-6.0.14/lib/catalina-ha.jar new file mode 100644 index 0000000..ea25261 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/catalina-ha.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/catalina-tribes.jar b/P51/apache-tomcat-6.0.14/lib/catalina-tribes.jar new file mode 100644 index 0000000..10065f1 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/catalina-tribes.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/catalina.jar b/P51/apache-tomcat-6.0.14/lib/catalina.jar new file mode 100644 index 0000000..bcdf038 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/catalina.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/el-api.jar b/P51/apache-tomcat-6.0.14/lib/el-api.jar new file mode 100644 index 0000000..c2c164e Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/el-api.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/jasper-el.jar b/P51/apache-tomcat-6.0.14/lib/jasper-el.jar new file mode 100644 index 0000000..63edf1e Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/jasper-el.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/jasper-jdt.jar b/P51/apache-tomcat-6.0.14/lib/jasper-jdt.jar new file mode 100644 index 0000000..41f0c66 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/jasper-jdt.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/jasper.jar b/P51/apache-tomcat-6.0.14/lib/jasper.jar new file mode 100644 index 0000000..92b476b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/jasper.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/jsp-api.jar b/P51/apache-tomcat-6.0.14/lib/jsp-api.jar new file mode 100644 index 0000000..d6beb34 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/jsp-api.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/servlet-api.jar b/P51/apache-tomcat-6.0.14/lib/servlet-api.jar new file mode 100644 index 0000000..8b23ffc Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/servlet-api.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/tomcat-coyote.jar b/P51/apache-tomcat-6.0.14/lib/tomcat-coyote.jar new file mode 100644 index 0000000..9d99ea8 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/tomcat-coyote.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/tomcat-dbcp.jar b/P51/apache-tomcat-6.0.14/lib/tomcat-dbcp.jar new file mode 100644 index 0000000..2f9d182 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/tomcat-dbcp.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/tomcat-i18n-es.jar b/P51/apache-tomcat-6.0.14/lib/tomcat-i18n-es.jar new file mode 100644 index 0000000..a3dff08 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/tomcat-i18n-es.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/tomcat-i18n-fr.jar b/P51/apache-tomcat-6.0.14/lib/tomcat-i18n-fr.jar new file mode 100644 index 0000000..3dab8ee Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/tomcat-i18n-fr.jar differ diff --git a/P51/apache-tomcat-6.0.14/lib/tomcat-i18n-ja.jar b/P51/apache-tomcat-6.0.14/lib/tomcat-i18n-ja.jar new file mode 100644 index 0000000..ef43b6c Binary files /dev/null and b/P51/apache-tomcat-6.0.14/lib/tomcat-i18n-ja.jar differ diff --git a/P51/apache-tomcat-6.0.14/logs/admin.2008-01-10.log b/P51/apache-tomcat-6.0.14/logs/admin.2008-01-10.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/admin.2008-01-11.log b/P51/apache-tomcat-6.0.14/logs/admin.2008-01-11.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/admin.2008-01-17.log b/P51/apache-tomcat-6.0.14/logs/admin.2008-01-17.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/admin.2008-01-18.log b/P51/apache-tomcat-6.0.14/logs/admin.2008-01-18.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/admin.2008-01-24.log b/P51/apache-tomcat-6.0.14/logs/admin.2008-01-24.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/admin.2008-01-25.log b/P51/apache-tomcat-6.0.14/logs/admin.2008-01-25.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/admin.2008-01-31.log b/P51/apache-tomcat-6.0.14/logs/admin.2008-01-31.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-10.log b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-10.log new file mode 100644 index 0000000..7efb238 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-10.log @@ -0,0 +1,145 @@ +10 janv. 2008 14:43:47 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +10 janv. 2008 14:43:47 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +10 janv. 2008 14:43:47 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1411 ms +10 janv. 2008 14:43:48 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +10 janv. 2008 14:43:48 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +10 janv. 2008 14:43:49 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +10 janv. 2008 14:43:49 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +10 janv. 2008 14:43:49 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/49 config=null +10 janv. 2008 14:43:49 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1801 ms +10 janv. 2008 15:02:25 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +10 janv. 2008 15:02:29 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +10 janv. 2008 15:02:29 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +10 janv. 2008 15:02:29 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +10 janv. 2008 15:02:29 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1066 ms +10 janv. 2008 15:02:29 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +10 janv. 2008 15:02:29 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +10 janv. 2008 15:02:32 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +10 janv. 2008 15:02:32 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +10 janv. 2008 15:02:32 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2460 ms +10 janv. 2008 15:21:40 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +10 janv. 2008 15:21:40 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +10 janv. 2008 15:21:41 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +10 janv. 2008 15:21:41 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +10 janv. 2008 15:21:41 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +10 janv. 2008 15:21:41 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr diff --git a/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-11.log b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-11.log new file mode 100644 index 0000000..6268939 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-11.log @@ -0,0 +1,184 @@ +11 janv. 2008 13:54:43 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +11 janv. 2008 13:54:43 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 13:54:43 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1342 ms +11 janv. 2008 13:54:43 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +11 janv. 2008 13:54:43 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +11 janv. 2008 13:54:46 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 13:54:46 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +11 janv. 2008 13:54:46 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/77 config=null +11 janv. 2008 13:54:46 org.apache.catalina.startup.Catalina start +INFO: Server startup in 3152 ms +11 janv. 2008 13:57:10 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +11 janv. 2008 13:57:10 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +11 janv. 2008 13:57:10 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +11 janv. 2008 13:57:10 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1507 ms +11 janv. 2008 13:57:11 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +11 janv. 2008 13:57:11 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +11 janv. 2008 13:57:13 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +11 janv. 2008 13:57:13 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +11 janv. 2008 13:57:13 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2100 ms +11 janv. 2008 13:57:13 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +11 janv. 2008 13:57:13 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 13:57:13 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +11 janv. 2008 13:57:14 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +11 janv. 2008 13:57:14 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +11 janv. 2008 13:57:14 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 13:57:14 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +11 janv. 2008 14:06:37 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:06:38 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +11 janv. 2008 14:06:38 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:15:22 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +11 janv. 2008 14:15:22 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:15:22 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 962 ms +11 janv. 2008 14:15:22 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +11 janv. 2008 14:15:22 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +11 janv. 2008 14:15:24 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:15:24 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +11 janv. 2008 14:15:24 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/37 config=null +11 janv. 2008 14:15:24 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2039 ms +11 janv. 2008 14:15:27 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:15:28 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +11 janv. 2008 14:15:28 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:18:04 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +11 janv. 2008 14:18:04 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:18:04 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1383 ms +11 janv. 2008 14:18:04 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +11 janv. 2008 14:18:04 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +11 janv. 2008 14:18:05 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:18:06 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +11 janv. 2008 14:18:06 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/49 config=null +11 janv. 2008 14:18:06 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1817 ms +11 janv. 2008 15:24:15 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 15:24:16 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +11 janv. 2008 15:24:17 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 diff --git a/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-17.log b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-17.log new file mode 100644 index 0000000..74a54f3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-17.log @@ -0,0 +1,32 @@ +17 janv. 2008 13:27:46 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +17 janv. 2008 13:27:46 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +17 janv. 2008 13:27:46 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 2089 ms +17 janv. 2008 13:27:46 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +17 janv. 2008 13:27:46 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +17 janv. 2008 13:27:49 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +17 janv. 2008 13:27:49 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +17 janv. 2008 13:27:49 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/53 config=null +17 janv. 2008 13:27:49 org.apache.catalina.startup.Catalina start +INFO: Server startup in 3362 ms +17 janv. 2008 14:03:15 org.apache.jasper.compiler.TldLocationsCache processWebDotXml +ATTENTION: Erreur interne: Fichier /WEB-INF/web.xml introuvable +17 janv. 2008 15:19:52 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/blankoworld] +17 janv. 2008 15:19:52 org.apache.catalina.core.StandardContext start +GRAVE: Error listenerStart +17 janv. 2008 15:19:52 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +17 janv. 2008 15:22:47 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +17 janv. 2008 15:22:48 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +17 janv. 2008 15:22:48 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 diff --git a/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-18.log b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-18.log new file mode 100644 index 0000000..c040d01 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-18.log @@ -0,0 +1,1825 @@ +18 janv. 2008 14:05:13 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:05:13 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:05:13 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1332 ms +18 janv. 2008 14:05:13 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:05:13 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:05:15 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:05:15 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:05:15 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:05:15 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:05:15 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:05:15 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:05:15 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:05:15 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:05:15 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/50 config=null +18 janv. 2008 14:05:15 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1988 ms +18 janv. 2008 14:09:14 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:09:15 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:09:15 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:14:54 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:14:55 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:14:55 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 596 ms +18 janv. 2008 14:14:55 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:14:55 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:14:55 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:14:55 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:14:55 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:14:55 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:14:55 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:14:55 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:14:55 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:14:56 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:14:56 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/25 config=null +18 janv. 2008 14:14:56 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1050 ms +18 janv. 2008 14:14:59 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:15:00 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:15:00 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:15:31 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:15:31 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:15:31 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 675 ms +18 janv. 2008 14:15:31 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:15:31 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:15:32 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:15:32 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:15:32 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:15:32 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:15:32 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:15:32 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:15:32 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:15:32 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:15:32 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/24 config=null +18 janv. 2008 14:15:32 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1142 ms +18 janv. 2008 14:19:43 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/blankoworld] +18 janv. 2008 14:19:43 org.apache.catalina.core.StandardContext stop +INFO: Le conteneur org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/blankoworld] n'a pas t dmarr +18 janv. 2008 14:19:46 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:19:47 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:19:47 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:20:50 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +18 janv. 2008 14:22:15 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:22:15 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:22:15 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 610 ms +18 janv. 2008 14:22:15 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:22:15 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:22:16 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:22:16 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:22:16 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/24 config=null +18 janv. 2008 14:22:16 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1192 ms +18 janv. 2008 14:33:07 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/blankoworld] +18 janv. 2008 14:33:07 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +18 janv. 2008 14:33:07 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +18 janv. 2008 14:33:07 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:33:07 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:33:07 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:33:07 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/manager] +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [] +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/docs] +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/examples] +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/host-manager] +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/blankoworld] +18 janv. 2008 14:35:37 org.apache.catalina.core.StandardContext stop +INFO: Le conteneur org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/blankoworld] n'a pas t dmarr +18 janv. 2008 14:35:37 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +18 janv. 2008 14:35:37 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +18 janv. 2008 14:35:37 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:35:37 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:35:37 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:35:37 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:37:04 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:37:05 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:37:05 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:37:09 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:37:09 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:37:09 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 620 ms +18 janv. 2008 14:37:09 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:37:09 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:37:10 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:37:10 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:37:10 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:37:10 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:37:10 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:37:10 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:37:10 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:37:10 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:37:10 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/29 config=null +18 janv. 2008 14:37:10 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1188 ms +18 janv. 2008 14:38:07 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:08 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:38:08 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:10 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +18 janv. 2008 14:38:14 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:38:14 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:14 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 669 ms +18 janv. 2008 14:38:14 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:38:14 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:38:15 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:38:15 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:38:15 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:38:15 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:38:15 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:38:15 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:38:15 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:15 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:38:15 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/25 config=null +18 janv. 2008 14:38:15 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1118 ms +18 janv. 2008 14:38:44 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:45 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:38:45 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:46 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +18 janv. 2008 14:40:07 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:40:07 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:40:07 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 608 ms +18 janv. 2008 14:40:07 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:40:07 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:40:08 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:40:08 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:40:08 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:40:08 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:40:08 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:40:08 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:40:08 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:40:08 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:40:08 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/24 config=null +18 janv. 2008 14:40:08 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1163 ms +18 janv. 2008 14:42:03 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:42:03 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:42:03 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:42:03 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 680 ms +18 janv. 2008 14:42:03 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:42:03 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:42:04 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:42:04 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:42:04 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:42:04 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:42:04 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:42:04 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:42:04 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:42:04 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:42:04 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1047 ms +18 janv. 2008 14:42:04 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:42:04 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +18 janv. 2008 14:42:05 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:42:05 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +18 janv. 2008 14:42:05 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:42:05 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +18 janv. 2008 14:52:28 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:52:29 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:52:29 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:52:29 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +18 janv. 2008 14:52:34 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:52:34 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:52:34 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:52:34 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 671 ms +18 janv. 2008 14:52:34 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:52:34 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:52:36 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:52:36 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:52:36 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:52:36 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:52:36 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:52:36 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:52:36 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:52:36 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:52:36 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1267 ms +18 janv. 2008 14:53:17 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:53:18 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:53:18 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:53:18 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 655 ms +18 janv. 2008 14:53:18 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:53:18 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:53:19 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:53:19 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:53:19 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:53:19 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:53:19 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:53:19 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:53:19 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:53:19 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:53:19 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1127 ms +18 janv. 2008 14:53:19 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:53:19 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +18 janv. 2008 14:53:20 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:53:20 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +18 janv. 2008 14:53:20 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 14:53:20 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +18 janv. 2008 15:07:25 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 15:07:25 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:26 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 15:07:26 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:26 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 15:07:26 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +18 janv. 2008 15:07:34 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +18 janv. 2008 15:07:38 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 15:07:38 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 15:07:38 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 15:07:38 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 598 ms +18 janv. 2008 15:07:38 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 15:07:38 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 15:07:39 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:39 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:39 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 15:07:39 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 15:07:39 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 15:07:39 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 15:07:39 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:39 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:39 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1233 ms +18 janv. 2008 15:09:05 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 15:09:05 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:09:06 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 15:09:06 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:09:06 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 15:09:06 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +18 janv. 2008 15:09:06 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +18 janv. 2008 15:11:57 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 15:11:57 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +18 janv. 2008 15:11:57 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 588 ms +18 janv. 2008 15:11:57 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 15:11:57 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 15:11:58 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 15:11:58 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 15:11:58 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:11:58 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/canette/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:11:58 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 15:11:58 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 15:11:58 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 15:11:58 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 15:11:58 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +18 janv. 2008 15:11:58 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 15:11:58 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/29 config=null +18 janv. 2008 15:11:58 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1169 ms +18 janv. 2008 15:12:58 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/blankoworld] +18 janv. 2008 15:12:58 org.apache.catalina.core.StandardContext stop +INFO: Le conteneur org.apache.catalina.core.ContainerBase.[Catalina].[canette].[/blankoworld] n'a pas t dmarr +18 janv. 2008 15:16:58 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: attributeAdded('org.apache.jasper.runtime.JspApplicationContextImpl', 'org.apache.jasper.runtime.JspApplicationContextImpl@9fa8f') +18 janv. 2008 15:16:58 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: sessionCreated('3255A15ACF5AD22E36D1F5090AD7F320') +18 janv. 2008 15:17:13 org.apache.jasper.compiler.TldLocationsCache processWebDotXml +ATTENTION: Erreur interne: Fichier /WEB-INF/web.xml introuvable +18 janv. 2008 15:48:00 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: sessionDestroyed('3255A15ACF5AD22E36D1F5090AD7F320') diff --git a/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-24.log b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-24.log new file mode 100644 index 0000000..fe2b8ea --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-24.log @@ -0,0 +1,173 @@ +24 janv. 2008 13:49:31 org.apache.catalina.startup.HostConfig checkResources +INFO: Repli (undeploy) de l'application web ayant pour chemin de contexte /ecommerce +24 janv. 2008 13:51:11 org.apache.catalina.startup.HostConfig checkResources +INFO: Repli (undeploy) de l'application web ayant pour chemin de contexte +24 janv. 2008 13:53:59 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +24 janv. 2008 13:54:00 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +24 janv. 2008 13:54:00 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +24 janv. 2008 13:54:00 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 2832 ms +24 janv. 2008 13:54:00 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +24 janv. 2008 13:54:00 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +24 janv. 2008 13:54:03 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +24 janv. 2008 13:54:03 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +24 janv. 2008 13:54:04 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +24 janv. 2008 13:54:04 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +24 janv. 2008 13:54:04 org.apache.catalina.startup.Catalina start +INFO: Server startup in 3505 ms +24 janv. 2008 13:54:04 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +24 janv. 2008 13:54:04 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +24 janv. 2008 13:54:05 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +24 janv. 2008 13:54:05 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +24 janv. 2008 13:54:05 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +24 janv. 2008 13:54:05 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +24 janv. 2008 13:54:05 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 13:54:05 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +24 janv. 2008 18:24:40 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 18:24:41 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +24 janv. 2008 18:24:42 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +24 janv. 2008 18:24:42 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +24 janv. 2008 18:24:42 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 18:24:42 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +24 janv. 2008 18:24:51 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +24 janv. 2008 18:24:51 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 18:24:51 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 988 ms +24 janv. 2008 18:24:51 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +24 janv. 2008 18:24:51 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +24 janv. 2008 18:24:52 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +24 janv. 2008 18:24:52 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +24 janv. 2008 18:24:53 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 18:24:53 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +24 janv. 2008 18:24:53 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/68 config=null +24 janv. 2008 18:24:53 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2563 ms diff --git a/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-25.log b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-25.log new file mode 100644 index 0000000..d0e8e94 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-25.log @@ -0,0 +1,5557 @@ +25 janv. 2008 10:13:17 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 10:13:17 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 10:13:17 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 10:13:17 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 840 ms +25 janv. 2008 10:13:17 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 10:13:17 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 10:13:19 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 10:13:19 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 10:13:19 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 10:13:19 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 10:13:19 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1727 ms +25 janv. 2008 10:13:19 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 10:13:19 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:13:19 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 10:13:20 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 10:13:20 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 10:13:20 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 10:13:20 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 10:13:20 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:13:20 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +25 janv. 2008 10:13:34 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +java.lang.NoClassDefFoundError: haricot/Utilisateur + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 10:15:04 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +java.lang.NoClassDefFoundError: haricot/Utilisateur + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 10:15:27 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:15:28 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 10:15:28 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 10:15:28 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 10:15:28 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:15:32 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 10:15:32 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:15:32 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 782 ms +25 janv. 2008 10:15:32 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 10:15:32 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 10:15:33 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 10:15:33 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 10:15:33 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:15:33 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 10:15:33 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/207 config=null +25 janv. 2008 10:15:33 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1711 ms +25 janv. 2008 10:58:00 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 10:58:00 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 10:58:22 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) jsp.error.usebean.missingType + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:102) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:614) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 10:58:22 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) jsp.error.usebean.missingType + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:102) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:614) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:01:16 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:01:16 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:09 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:09 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:21 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:21 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:35 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:35 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:49 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:49 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:04:27 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:04:27 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:06:37 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:06:37 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:06:44 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:06:44 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:11:07 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [] +25 janv. 2008 11:11:07 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/canette/WEB-INF/web.xml +com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence. + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:674) + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:398) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipChar(XMLEntityScanner.java:1416) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2777) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:11:07 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +25 janv. 2008 11:11:07 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +25 janv. 2008 11:11:07 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [] suite aux erreurs prcdentes +25 janv. 2008 11:13:25 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:26 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 11:13:26 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 11:13:26 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 11:13:26 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:26 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +25 janv. 2008 11:13:33 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 11:13:33 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:33 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 745 ms +25 janv. 2008 11:13:33 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 11:13:33 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 11:13:33 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/canette/WEB-INF/web.xml +com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence. + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:674) + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:398) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipChar(XMLEntityScanner.java:1416) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2777) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:13:33 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +25 janv. 2008 11:13:33 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +25 janv. 2008 11:13:33 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [] suite aux erreurs prcdentes +25 janv. 2008 11:13:34 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 11:13:34 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 11:13:34 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:34 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 11:13:34 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/35 config=null +25 janv. 2008 11:13:35 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1789 ms +25 janv. 2008 11:13:44 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 11:13:44 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 11:13:44 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 11:13:44 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 754 ms +25 janv. 2008 11:13:44 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 11:13:44 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 11:13:45 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/canette/WEB-INF/web.xml +com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence. + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:674) + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:398) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipChar(XMLEntityScanner.java:1416) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2777) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:13:45 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +25 janv. 2008 11:13:45 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +25 janv. 2008 11:13:45 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [] suite aux erreurs prcdentes +25 janv. 2008 11:13:46 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 11:13:46 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 11:13:46 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:13:46 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:13:46 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1471 ms +25 janv. 2008 11:13:46 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:13:46 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 11:13:47 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 11:13:47 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 11:13:47 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 11:13:47 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 11:13:47 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:47 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +25 janv. 2008 11:14:08 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:14:09 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 11:14:09 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 11:14:09 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 11:14:09 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:14:09 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +25 janv. 2008 11:14:16 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 11:14:16 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:14:16 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 825 ms +25 janv. 2008 11:14:16 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 11:14:16 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 11:14:17 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/canette/WEB-INF/web.xml +com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence. + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:674) + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:398) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipChar(XMLEntityScanner.java:1416) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2777) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:14:17 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +25 janv. 2008 11:14:17 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +25 janv. 2008 11:14:17 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [] suite aux erreurs prcdentes +25 janv. 2008 11:14:18 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 11:14:18 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 11:14:18 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:14:18 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 11:14:18 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/40 config=null +25 janv. 2008 11:14:18 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1503 ms +25 janv. 2008 11:15:38 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [] +25 janv. 2008 11:15:38 org.apache.catalina.core.StandardContext stop +INFO: Le conteneur org.apache.catalina.core.ContainerBase.[Catalina].[canette].[/] n'a pas t dmarr +25 janv. 2008 11:16:05 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 11:16:05 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 11:16:05 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 11:16:05 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 777 ms +25 janv. 2008 11:16:06 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 11:16:06 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 11:16:07 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 11:16:07 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 11:16:07 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:16:07 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:16:07 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1448 ms +25 janv. 2008 11:16:07 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:16:07 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:16:07 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 11:16:08 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 11:16:08 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 11:16:08 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 11:16:08 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 11:16:08 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:16:08 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +25 janv. 2008 11:16:28 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:115) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:16:28 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:115) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:21:52 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:21:52 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:22:05 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:22:05 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:22:23 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:22:23 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:23:43 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:23:43 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:24:43 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:24:43 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:24:59 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:24:59 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:25:32 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:25:32 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:25:46 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:25:46 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:26:12 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:26:12 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:27:32 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:27:32 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:28:16 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:28:16 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:30:27 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:30:27 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:30:39 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:30:39 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:32:09 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:32:09 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:32:16 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:32:16 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:34:00 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:34:00 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:34:08 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:34:08 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:35:15 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:35:15 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:40:30 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:40:30 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:40:36 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:40:36 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:41:59 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,1) GetProperty: Attribut incorrect: value + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:198) + at org.apache.jasper.compiler.JspUtil.checkAttributes(JspUtil.java:311) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:578) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:634) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:41:59 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,1) GetProperty: Attribut incorrect: value + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:198) + at org.apache.jasper.compiler.JspUtil.checkAttributes(JspUtil.java:311) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:578) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:634) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:42:13 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:42:13 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:45:04 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:45:04 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:49:17 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:49:17 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:49:40 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:49:41 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 11:49:41 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 11:49:41 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 11:49:41 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:49:41 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +25 janv. 2008 11:49:46 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 11:49:46 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:49:46 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 856 ms +25 janv. 2008 11:49:46 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 11:49:46 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 11:49:47 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 11:49:47 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 11:49:47 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:49:47 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 11:49:47 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/51 config=null +25 janv. 2008 11:49:47 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1564 ms +25 janv. 2008 11:49:58 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:49:58 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:51:28 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:51:28 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:52:35 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:52:35 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:52:56 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:52:56 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:53:24 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:53:24 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 12:22:37 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 12:22:38 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 12:22:38 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 12:22:38 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 12:22:38 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:16:18 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 13:16:18 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:16:18 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 962 ms +25 janv. 2008 13:16:18 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 13:16:18 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 13:16:19 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 13:16:19 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 13:16:20 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:16:20 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 13:16:20 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/41 config=null +25 janv. 2008 13:16:20 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1977 ms +25 janv. 2008 13:18:17 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:124) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:18:17 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:124) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:19:33 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:19:33 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:23:09 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:23:09 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:19 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:19 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:23 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +java.lang.ClassNotFoundException: org.apache.jsp.vues.salut_jsp + at java.net.URLClassLoader$1.run(URLClassLoader.java:200) + at java.security.AccessController.doPrivileged(Native Method) + at java.net.URLClassLoader.findClass(URLClassLoader.java:188) + at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134) + at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66) + at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598) + at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:23 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +java.lang.ClassNotFoundException: org.apache.jsp.vues.salut_jsp + at java.net.URLClassLoader$1.run(URLClassLoader.java:200) + at java.security.AccessController.doPrivileged(Native Method) + at java.net.URLClassLoader.findClass(URLClassLoader.java:188) + at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134) + at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66) + at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598) + at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:32 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:32 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:41:32 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:41:33 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 13:41:33 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 13:41:33 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 13:41:34 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:41:34 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +25 janv. 2008 13:45:22 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 13:45:22 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:45:22 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 755 ms +25 janv. 2008 13:45:22 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 13:45:22 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 13:45:23 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 13:45:23 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 13:45:23 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:45:23 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 13:45:23 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/51 config=null +25 janv. 2008 13:45:23 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1495 ms +25 janv. 2008 13:45:36 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP: + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert "AssignmentOperator Expression" to complete Assignment +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete Statement +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +$ cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Cannot make a static reference to the non-static method getId() from the type MonUtilisateur +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete BlockStatements +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Stacktrace: + at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) + at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) + at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:45:36 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP: + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert "AssignmentOperator Expression" to complete Assignment +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete Statement +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +$ cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Cannot make a static reference to the non-static method getId() from the type MonUtilisateur +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete BlockStatements +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Stacktrace: + at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) + at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) + at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:45:53 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP: + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert "AssignmentOperator Expression" to complete Assignment +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete Statement +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +$ cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +monUtilisateur cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete BlockStatements +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Stacktrace: + at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) + at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) + at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:45:53 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP: + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert "AssignmentOperator Expression" to complete Assignment +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete Statement +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +$ cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +monUtilisateur cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete BlockStatements +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Stacktrace: + at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) + at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) + at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:49:22 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,0) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1139) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:819) + at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:49:22 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,0) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1139) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:819) + at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:55:42 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,0) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1139) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:819) + at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:55:42 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,0) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1139) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:819) + at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 14:00:07 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +javax.el.PropertyNotFoundException: Property 'Id' not found on type MesHaricots.MonUtilisateur + at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:193) + at javax.el.BeanELResolver$BeanProperties.access$400(BeanELResolver.java:170) + at javax.el.BeanELResolver.property(BeanELResolver.java:279) + at javax.el.BeanELResolver.getValue(BeanELResolver.java:60) + at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53) + at org.apache.el.parser.AstValue.getValue(AstValue.java:97) + at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186) + at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:923) + at org.apache.jsp.vues.salut_jsp._jspx_meth_c_005fout_005f0(salut_jsp.java:233) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:119) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 14:00:07 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +javax.el.PropertyNotFoundException: Property 'Id' not found on type MesHaricots.MonUtilisateur + at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:193) + at javax.el.BeanELResolver$BeanProperties.access$400(BeanELResolver.java:170) + at javax.el.BeanELResolver.property(BeanELResolver.java:279) + at javax.el.BeanELResolver.getValue(BeanELResolver.java:60) + at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53) + at org.apache.el.parser.AstValue.getValue(AstValue.java:97) + at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186) + at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:923) + at org.apache.jsp.vues.salut_jsp._jspx_meth_c_005fout_005f0(salut_jsp.java:233) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:119) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 14:10:46 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [] +25 janv. 2008 14:15:16 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/ecommerce] +25 janv. 2008 14:15:55 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:15:56 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 14:15:57 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 14:15:57 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 14:15:57 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:16:01 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 14:16:01 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:16:01 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 708 ms +25 janv. 2008 14:16:01 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 14:16:01 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 14:16:02 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 14:16:02 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 14:16:03 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:16:03 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 14:16:03 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/25 config=null +25 janv. 2008 14:16:03 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1911 ms +25 janv. 2008 14:25:48 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:25:49 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 14:25:49 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 14:25:49 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 14:25:49 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:25:49 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +25 janv. 2008 14:25:54 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 14:25:54 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:25:54 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 718 ms +25 janv. 2008 14:25:54 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 14:25:54 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 14:25:56 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 14:25:56 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 14:25:56 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:25:56 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 14:25:56 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/26 config=null +25 janv. 2008 14:25:56 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2015 ms +25 janv. 2008 15:06:58 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:06:59 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 15:06:59 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 15:06:59 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 15:06:59 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:07:00 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +25 janv. 2008 15:07:04 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 15:07:04 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:07:04 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 755 ms +25 janv. 2008 15:07:04 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 15:07:04 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 15:07:05 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 15:07:05 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 15:07:06 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:07:06 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 15:07:06 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/28 config=null +25 janv. 2008 15:07:06 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1988 ms +25 janv. 2008 15:10:01 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:10:02 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 15:10:02 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 15:10:02 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 15:10:02 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:10:03 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +25 janv. 2008 15:14:47 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 15:14:47 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:14:47 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 806 ms +25 janv. 2008 15:14:47 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 15:14:47 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 15:14:48 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 15:14:48 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 15:14:49 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:14:49 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 15:14:49 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/49 config=null +25 janv. 2008 15:14:49 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2270 ms +25 janv. 2008 15:27:48 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:27:49 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 15:27:49 org.apache.catalina.startup.Catalina stopServer +GRAVE: Catalina.stop: +java.net.ConnectException: Connection refused + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) + at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) + at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) + at java.net.Socket.connect(Socket.java:519) + at java.net.Socket.connect(Socket.java:469) + at java.net.Socket.(Socket.java:366) + at java.net.Socket.(Socket.java:179) + at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:409) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) +25 janv. 2008 15:27:49 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 15:27:49 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 15:27:49 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 diff --git a/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-31.log b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-31.log new file mode 100644 index 0000000..16a15d6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/catalina.2008-01-31.log @@ -0,0 +1,24 @@ +31 janv. 2008 07:54:05 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +31 janv. 2008 07:54:05 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +31 janv. 2008 07:54:05 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1175 ms +31 janv. 2008 07:54:05 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +31 janv. 2008 07:54:05 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +31 janv. 2008 07:54:07 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +31 janv. 2008 07:54:07 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +31 janv. 2008 07:54:08 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +31 janv. 2008 07:54:09 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +31 janv. 2008 07:54:09 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/53 config=null +31 janv. 2008 07:54:09 org.apache.catalina.startup.Catalina start +INFO: Server startup in 3670 ms +31 janv. 2008 08:27:10 org.apache.catalina.startup.HostConfig checkResources +INFO: Repli (undeploy) de l'application web ayant pour chemin de contexte diff --git a/P51/apache-tomcat-6.0.14/logs/catalina.out b/P51/apache-tomcat-6.0.14/logs/catalina.out new file mode 100644 index 0000000..b0c104b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/catalina.out @@ -0,0 +1,7704 @@ +10 janv. 2008 14:43:47 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +10 janv. 2008 14:43:47 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +10 janv. 2008 14:43:47 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1411 ms +10 janv. 2008 14:43:48 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +10 janv. 2008 14:43:48 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +10 janv. 2008 14:43:49 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +10 janv. 2008 14:43:49 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +10 janv. 2008 14:43:49 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/49 config=null +10 janv. 2008 14:43:49 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1801 ms +10 janv. 2008 15:02:29 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +10 janv. 2008 15:02:29 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +10 janv. 2008 15:02:29 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +10 janv. 2008 15:02:29 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1066 ms +10 janv. 2008 15:02:29 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +10 janv. 2008 15:02:29 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +10 janv. 2008 15:02:32 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +10 janv. 2008 15:02:32 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +10 janv. 2008 15:02:32 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2460 ms +10 janv. 2008 15:21:40 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +10 janv. 2008 15:21:40 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +10 janv. 2008 15:21:41 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +10 janv. 2008 15:21:41 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +10 janv. 2008 15:21:41 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +10 janv. 2008 15:21:41 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +11 janv. 2008 13:54:43 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +11 janv. 2008 13:54:43 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 13:54:43 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1342 ms +11 janv. 2008 13:54:43 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +11 janv. 2008 13:54:43 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +11 janv. 2008 13:54:46 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 13:54:46 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +11 janv. 2008 13:54:46 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/77 config=null +11 janv. 2008 13:54:46 org.apache.catalina.startup.Catalina start +INFO: Server startup in 3152 ms +11 janv. 2008 13:57:10 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +11 janv. 2008 13:57:10 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +11 janv. 2008 13:57:10 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +11 janv. 2008 13:57:10 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1507 ms +11 janv. 2008 13:57:11 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +11 janv. 2008 13:57:11 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +11 janv. 2008 13:57:13 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +11 janv. 2008 13:57:13 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +11 janv. 2008 13:57:13 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2100 ms +11 janv. 2008 13:57:13 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +11 janv. 2008 13:57:13 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 13:57:13 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +11 janv. 2008 13:57:14 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +11 janv. 2008 13:57:14 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +11 janv. 2008 13:57:14 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 13:57:14 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +11 janv. 2008 14:06:37 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:06:38 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +11 janv. 2008 14:06:38 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ] [ -nonaming ] { start | stop } +11 janv. 2008 14:15:22 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +11 janv. 2008 14:15:22 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:15:22 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 962 ms +11 janv. 2008 14:15:22 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +11 janv. 2008 14:15:22 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +11 janv. 2008 14:15:24 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:15:24 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +11 janv. 2008 14:15:24 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/37 config=null +11 janv. 2008 14:15:24 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2039 ms +11 janv. 2008 14:15:27 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:15:28 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +11 janv. 2008 14:15:28 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:18:04 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +11 janv. 2008 14:18:04 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:18:04 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1383 ms +11 janv. 2008 14:18:04 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +11 janv. 2008 14:18:04 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +11 janv. 2008 14:18:05 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 14:18:06 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +11 janv. 2008 14:18:06 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/49 config=null +11 janv. 2008 14:18:06 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1817 ms +11 janv. 2008 15:24:15 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +11 janv. 2008 15:24:16 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +11 janv. 2008 15:24:17 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +17 janv. 2008 13:27:46 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +17 janv. 2008 13:27:46 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +17 janv. 2008 13:27:46 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 2089 ms +17 janv. 2008 13:27:46 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +17 janv. 2008 13:27:46 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +17 janv. 2008 13:27:49 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +17 janv. 2008 13:27:49 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +17 janv. 2008 13:27:49 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/53 config=null +17 janv. 2008 13:27:49 org.apache.catalina.startup.Catalina start +INFO: Server startup in 3362 ms +17 janv. 2008 14:03:15 org.apache.jasper.compiler.TldLocationsCache processWebDotXml +ATTENTION: Erreur interne: Fichier /WEB-INF/web.xml introuvable +17 janv. 2008 15:19:52 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/blankoworld] +17 janv. 2008 15:19:52 org.apache.catalina.core.StandardContext start +GRAVE: Error listenerStart +17 janv. 2008 15:19:52 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +17 janv. 2008 15:22:47 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +17 janv. 2008 15:22:48 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +17 janv. 2008 15:22:48 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:05:13 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:05:13 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:05:13 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1332 ms +18 janv. 2008 14:05:13 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:05:13 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:05:15 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:05:15 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:05:15 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:05:15 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:05:15 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:05:15 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:05:15 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:05:15 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:05:15 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/50 config=null +18 janv. 2008 14:05:15 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1988 ms +18 janv. 2008 14:09:14 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:09:15 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:09:15 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:14:54 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:14:55 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:14:55 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 596 ms +18 janv. 2008 14:14:55 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:14:55 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:14:55 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:14:55 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:14:55 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:14:55 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:14:55 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:14:55 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:14:55 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:14:56 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:14:56 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/25 config=null +18 janv. 2008 14:14:56 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1050 ms +18 janv. 2008 14:14:59 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:15:00 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:15:00 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:15:31 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:15:31 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:15:31 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 675 ms +18 janv. 2008 14:15:31 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:15:31 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:15:32 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:15:32 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:15:32 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:15:32 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:15:32 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:15:32 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:15:32 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:15:32 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:15:32 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/24 config=null +18 janv. 2008 14:15:32 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1142 ms +18 janv. 2008 14:19:43 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/blankoworld] +18 janv. 2008 14:19:43 org.apache.catalina.core.StandardContext stop +INFO: Le conteneur org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/blankoworld] n'a pas t dmarr +18 janv. 2008 14:19:46 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:19:47 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:19:47 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:22:15 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:22:15 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:22:15 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 610 ms +18 janv. 2008 14:22:15 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:22:15 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:22:16 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:22:16 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:22:16 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/24 config=null +18 janv. 2008 14:22:16 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1192 ms +18 janv. 2008 14:33:07 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/blankoworld] +18 janv. 2008 14:33:07 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +18 janv. 2008 14:33:07 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +18 janv. 2008 14:33:07 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:33:07 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:33:07 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:33:07 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/manager] +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [] +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/docs] +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/examples] +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/host-manager] +18 janv. 2008 14:35:37 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/blankoworld] +18 janv. 2008 14:35:37 org.apache.catalina.core.StandardContext stop +INFO: Le conteneur org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/blankoworld] n'a pas t dmarr +18 janv. 2008 14:35:37 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +18 janv. 2008 14:35:37 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +18 janv. 2008 14:35:37 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:35:37 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:35:37 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:35:37 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:37:04 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:37:05 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:37:05 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:37:09 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:37:09 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:37:09 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 620 ms +18 janv. 2008 14:37:09 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:37:09 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:37:10 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:37:10 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:37:10 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:37:10 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:37:10 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:37:10 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:37:10 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:37:10 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:37:10 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/29 config=null +18 janv. 2008 14:37:10 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1188 ms +18 janv. 2008 14:38:07 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:08 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:38:08 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:14 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:38:14 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:14 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 669 ms +18 janv. 2008 14:38:14 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:38:14 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:38:15 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:38:15 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:38:15 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:38:15 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:38:15 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:38:15 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:38:15 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:15 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:38:15 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/25 config=null +18 janv. 2008 14:38:15 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1118 ms +18 janv. 2008 14:38:44 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:38:45 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:38:45 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:40:07 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:40:07 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:40:07 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 608 ms +18 janv. 2008 14:40:07 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:40:07 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:40:08 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:40:08 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:40:08 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:40:08 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:40:08 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:40:08 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:40:08 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:40:08 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 14:40:08 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/24 config=null +18 janv. 2008 14:40:08 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1163 ms +18 janv. 2008 14:42:03 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:42:03 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:42:03 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:42:03 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 680 ms +18 janv. 2008 14:42:03 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:42:03 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:42:04 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:42:04 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:42:04 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:42:04 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:42:04 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:42:04 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:42:04 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:8080 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:42:04 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:8080 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:42:04 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1047 ms +18 janv. 2008 14:42:04 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +java.util.logging.ErrorManager: 1 +java.lang.NullPointerException + at org.apache.juli.FileHandler.publish(FileHandler.java:137) + at java.util.logging.Logger.log(Logger.java:472) + at java.util.logging.Logger.doLog(Logger.java:494) + at java.util.logging.Logger.logp(Logger.java:610) + at org.apache.juli.logging.DirectJDKLog.log(DirectJDKLog.java:165) + at org.apache.juli.logging.DirectJDKLog.info(DirectJDKLog.java:115) + at org.apache.coyote.http11.Http11Protocol.pause(Http11Protocol.java:221) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +18 janv. 2008 14:42:04 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:42:04 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +18 janv. 2008 14:42:05 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:42:05 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +18 janv. 2008 14:42:05 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:42:05 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +18 janv. 2008 14:52:28 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:52:29 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:52:29 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-8080 +18 janv. 2008 14:52:34 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:52:34 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:52:34 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:52:34 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 671 ms +18 janv. 2008 14:52:34 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:52:34 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:52:36 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:52:36 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:52:36 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:52:36 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:52:36 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:52:36 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:52:36 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:52:36 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:52:36 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1267 ms +18 janv. 2008 14:53:17 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 14:53:18 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:53:18 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 14:53:18 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 655 ms +18 janv. 2008 14:53:18 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 14:53:18 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 14:53:19 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:53:19 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:53:19 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 14:53:19 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 14:53:19 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 14:53:19 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 14:53:19 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:53:19 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 14:53:19 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1127 ms +18 janv. 2008 14:53:19 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +java.util.logging.ErrorManager: 1 +java.lang.NullPointerException + at org.apache.juli.FileHandler.publish(FileHandler.java:137) + at java.util.logging.Logger.log(Logger.java:472) + at java.util.logging.Logger.doLog(Logger.java:494) + at java.util.logging.Logger.logp(Logger.java:610) + at org.apache.juli.logging.DirectJDKLog.log(DirectJDKLog.java:165) + at org.apache.juli.logging.DirectJDKLog.info(DirectJDKLog.java:115) + at org.apache.coyote.http11.Http11Protocol.pause(Http11Protocol.java:221) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +18 janv. 2008 14:53:19 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 14:53:19 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +18 janv. 2008 14:53:20 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 14:53:20 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +18 janv. 2008 14:53:20 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 14:53:20 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +18 janv. 2008 15:07:25 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 15:07:25 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:26 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 15:07:26 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:26 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 15:07:26 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +18 janv. 2008 15:07:38 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 15:07:38 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 15:07:38 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +18 janv. 2008 15:07:38 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 598 ms +18 janv. 2008 15:07:38 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 15:07:38 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 15:07:39 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:39 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/localhost/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:39 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 15:07:39 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 15:07:39 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 15:07:39 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 15:07:39 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Permission denied:81 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:39 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Permission denied:81 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:07:39 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1233 ms +18 janv. 2008 15:09:05 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 15:09:05 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:09:06 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +18 janv. 2008 15:09:06 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina.start(Catalina.java:591) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:09:06 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-81 +18 janv. 2008 15:09:06 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +18 janv. 2008 15:11:57 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +18 janv. 2008 15:11:57 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +18 janv. 2008 15:11:57 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 588 ms +18 janv. 2008 15:11:57 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +18 janv. 2008 15:11:57 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +18 janv. 2008 15:11:58 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 15:11:58 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 15:11:58 org.apache.tomcat.util.digester.Digester fatalError +GRAVE: Parse Fatal Error at line 123 column 7: The element type "web-app" must be terminated by the matching end-tag "". +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) + at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) + at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) + at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1739) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2923) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:11:58 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/canette/blankoworld/WEB-INF/web.xml +org.xml.sax.SAXParseException: The element type "web-app" must be terminated by the matching end-tag "". + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +18 janv. 2008 15:11:58 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: S'est produite la ligne 123 colonne 7 +18 janv. 2008 15:11:58 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +18 janv. 2008 15:11:58 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +18 janv. 2008 15:11:58 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [/blankoworld] suite aux erreurs prcdentes +18 janv. 2008 15:11:58 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +18 janv. 2008 15:11:58 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +18 janv. 2008 15:11:58 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/29 config=null +18 janv. 2008 15:11:58 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1169 ms +18 janv. 2008 15:12:58 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/blankoworld] +18 janv. 2008 15:12:58 org.apache.catalina.core.StandardContext stop +INFO: Le conteneur org.apache.catalina.core.ContainerBase.[Catalina].[canette].[/blankoworld] n'a pas t dmarr +18 janv. 2008 15:16:58 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: attributeAdded('org.apache.jasper.runtime.JspApplicationContextImpl', 'org.apache.jasper.runtime.JspApplicationContextImpl@9fa8f') +18 janv. 2008 15:16:58 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: sessionCreated('3255A15ACF5AD22E36D1F5090AD7F320') +18 janv. 2008 15:17:13 org.apache.jasper.compiler.TldLocationsCache processWebDotXml +ATTENTION: Erreur interne: Fichier /WEB-INF/web.xml introuvable +18 janv. 2008 15:48:00 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: sessionDestroyed('3255A15ACF5AD22E36D1F5090AD7F320') +24 janv. 2008 13:49:31 org.apache.catalina.startup.HostConfig checkResources +INFO: Repli (undeploy) de l'application web ayant pour chemin de contexte /ecommerce +24 janv. 2008 13:51:11 org.apache.catalina.startup.HostConfig checkResources +INFO: Repli (undeploy) de l'application web ayant pour chemin de contexte +24 janv. 2008 13:53:59 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +24 janv. 2008 13:54:00 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +24 janv. 2008 13:54:00 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +24 janv. 2008 13:54:00 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 2832 ms +24 janv. 2008 13:54:00 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +24 janv. 2008 13:54:00 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +24 janv. 2008 13:54:03 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +24 janv. 2008 13:54:03 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +24 janv. 2008 13:54:04 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +24 janv. 2008 13:54:04 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +24 janv. 2008 13:54:04 org.apache.catalina.startup.Catalina start +INFO: Server startup in 3505 ms +24 janv. 2008 13:54:04 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +java.util.logging.ErrorManager: 1 +java.lang.NullPointerException + at org.apache.juli.FileHandler.publish(FileHandler.java:137) + at java.util.logging.Logger.log(Logger.java:472) + at java.util.logging.Logger.doLog(Logger.java:494) + at java.util.logging.Logger.logp(Logger.java:610) + at org.apache.juli.logging.DirectJDKLog.log(DirectJDKLog.java:165) + at org.apache.juli.logging.DirectJDKLog.info(DirectJDKLog.java:115) + at org.apache.coyote.http11.Http11Protocol.pause(Http11Protocol.java:221) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +24 janv. 2008 13:54:04 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 13:54:04 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +24 janv. 2008 13:54:05 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +24 janv. 2008 13:54:05 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +24 janv. 2008 13:54:05 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +24 janv. 2008 13:54:05 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +24 janv. 2008 13:54:05 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 13:54:05 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +/home/3dossmanno/P51/apache-tomcat-6.0.14/bin/catalina.sh: /usr/lib/jvm/java-6-sun-1.6.0.00//bin/java: Aucun fichier ou rpertoire de ce type +/home/3dossmanno/P51/apache-tomcat-6.0.14/bin/catalina.sh: /usr/lib/jvm/java-6-sun-1.6.0.00//bin/java: Aucun fichier ou rpertoire de ce type +24 janv. 2008 18:24:40 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 18:24:41 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +24 janv. 2008 18:24:42 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +24 janv. 2008 18:24:42 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +24 janv. 2008 18:24:42 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 18:24:51 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +24 janv. 2008 18:24:51 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 18:24:51 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 988 ms +24 janv. 2008 18:24:51 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +24 janv. 2008 18:24:51 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +24 janv. 2008 18:24:52 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +24 janv. 2008 18:24:52 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +24 janv. 2008 18:24:53 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +24 janv. 2008 18:24:53 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +24 janv. 2008 18:24:53 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/68 config=null +24 janv. 2008 18:24:53 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2563 ms +/home/3dossmanno/P51/apache-tomcat-6.0.14/bin/catalina.sh: /usr/lib/jvm/java-6-sun-1.6.0.00//bin/java: Aucun fichier ou rpertoire de ce type +25 janv. 2008 10:13:17 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 10:13:17 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 10:13:17 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 10:13:17 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 840 ms +25 janv. 2008 10:13:17 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 10:13:17 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 10:13:19 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 10:13:19 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 10:13:19 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 10:13:19 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 10:13:19 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1727 ms +25 janv. 2008 10:13:19 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 10:13:19 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:13:19 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 10:13:20 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 10:13:20 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 10:13:20 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 10:13:20 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 10:13:20 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:13:20 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +25 janv. 2008 10:13:34 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +java.lang.NoClassDefFoundError: haricot/Utilisateur + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 10:15:04 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +java.lang.NoClassDefFoundError: haricot/Utilisateur + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 10:15:27 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:15:28 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 10:15:28 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 10:15:28 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 10:15:28 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:15:32 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 10:15:32 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:15:32 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 782 ms +25 janv. 2008 10:15:32 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 10:15:32 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 10:15:33 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 10:15:33 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 10:15:33 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 10:15:33 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 10:15:33 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/207 config=null +25 janv. 2008 10:15:33 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1711 ms +25 janv. 2008 10:58:00 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 10:58:00 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 10:58:22 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) jsp.error.usebean.missingType + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:102) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:614) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 10:58:22 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) jsp.error.usebean.missingType + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:102) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:614) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:01:16 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:01:16 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:09 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:09 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:21 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:21 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:35 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:35 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:49 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:02:49 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:04:27 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:04:27 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:06:37 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:06:37 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:06:44 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:06:44 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:11:07 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [] +25 janv. 2008 11:11:07 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/canette/WEB-INF/web.xml +com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence. + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:674) + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:398) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipChar(XMLEntityScanner.java:1416) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2777) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:11:07 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +25 janv. 2008 11:11:07 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +25 janv. 2008 11:11:07 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [] suite aux erreurs prcdentes +25 janv. 2008 11:13:25 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:26 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 11:13:26 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 11:13:26 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 11:13:26 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:33 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 11:13:33 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:33 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 745 ms +25 janv. 2008 11:13:33 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 11:13:33 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 11:13:33 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/canette/WEB-INF/web.xml +com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence. + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:674) + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:398) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipChar(XMLEntityScanner.java:1416) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2777) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:13:33 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +25 janv. 2008 11:13:33 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +25 janv. 2008 11:13:33 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [] suite aux erreurs prcdentes +25 janv. 2008 11:13:34 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 11:13:34 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 11:13:34 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:34 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 11:13:34 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/35 config=null +25 janv. 2008 11:13:35 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1789 ms +25 janv. 2008 11:13:44 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 11:13:44 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 11:13:44 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 11:13:44 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 754 ms +25 janv. 2008 11:13:44 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 11:13:44 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 11:13:45 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/canette/WEB-INF/web.xml +com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence. + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:674) + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:398) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipChar(XMLEntityScanner.java:1416) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2777) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:13:45 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +25 janv. 2008 11:13:45 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +25 janv. 2008 11:13:45 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [] suite aux erreurs prcdentes +25 janv. 2008 11:13:46 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 11:13:46 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 11:13:46 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:13:46 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:13:46 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1471 ms +25 janv. 2008 11:13:46 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +java.util.logging.ErrorManager: 1 +java.lang.NullPointerException + at org.apache.juli.FileHandler.publish(FileHandler.java:137) + at java.util.logging.Logger.log(Logger.java:472) + at java.util.logging.Logger.doLog(Logger.java:494) + at java.util.logging.Logger.logp(Logger.java:610) + at org.apache.juli.logging.DirectJDKLog.log(DirectJDKLog.java:165) + at org.apache.juli.logging.DirectJDKLog.info(DirectJDKLog.java:115) + at org.apache.coyote.http11.Http11Protocol.pause(Http11Protocol.java:221) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 11:13:46 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:46 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 11:13:47 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 11:13:47 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 11:13:47 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 11:13:47 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 11:13:47 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:13:47 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +25 janv. 2008 11:14:08 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:14:09 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 11:14:09 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 11:14:09 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 11:14:09 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:14:16 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 11:14:16 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:14:16 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 825 ms +25 janv. 2008 11:14:16 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 11:14:16 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 11:14:17 org.apache.catalina.startup.ContextConfig applicationWebConfig +GRAVE: Erreur d'valuation (parse) dans le fichier web.xml de l'application jndi:/canette/WEB-INF/web.xml +com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence. + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:674) + at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:398) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742) + at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipChar(XMLEntityScanner.java:1416) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2777) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1562) + at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:369) + at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1062) + at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4239) + at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) + at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) + at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) + at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) + at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883) + at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) + at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) + at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) + at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) + at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) + at org.apache.catalina.core.StandardService.start(StandardService.java:516) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:14:17 org.apache.catalina.startup.ContextConfig start +GRAVE: Cette application est marque comme non disponible suite aux erreurs prcdentes +25 janv. 2008 11:14:17 org.apache.catalina.core.StandardContext start +GRAVE: Error getConfigured +25 janv. 2008 11:14:17 org.apache.catalina.core.StandardContext start +GRAVE: Erreur de dmarrage du contexte [] suite aux erreurs prcdentes +25 janv. 2008 11:14:18 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 11:14:18 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 11:14:18 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:14:18 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 11:14:18 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/40 config=null +25 janv. 2008 11:14:18 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1503 ms +25 janv. 2008 11:15:38 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [] +25 janv. 2008 11:15:38 org.apache.catalina.core.StandardContext stop +INFO: Le conteneur org.apache.catalina.core.ContainerBase.[Catalina].[canette].[/] n'a pas t dmarr +25 janv. 2008 11:16:05 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 11:16:05 org.apache.coyote.http11.Http11Protocol init +GRAVE: Erreur l'initialisation du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) + at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 11:16:05 org.apache.catalina.startup.Catalina load +GRAVE: Catalina.start +LifecycleException: L'initialisation du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.initialize(Connector.java:1061) + at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) + at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) + at org.apache.catalina.startup.Catalina.load(Catalina.java:518) + at org.apache.catalina.startup.Catalina.load(Catalina.java:538) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) +25 janv. 2008 11:16:05 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 777 ms +25 janv. 2008 11:16:06 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 11:16:06 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 11:16:07 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 11:16:07 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 11:16:07 org.apache.coyote.http11.Http11Protocol start +GRAVE: Erreur au dmarrage du point de contact +java.net.BindException: Address already in use:3001 + at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:501) + at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:515) + at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:204) + at org.apache.catalina.connector.Connector.start(Connector.java:1132) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:16:07 org.apache.catalina.startup.Catalina start +GRAVE: Catalina.start: +LifecycleException: service.getName(): "Catalina"; Le dmarrage du gestionnaire de protocole a chou: java.net.BindException: Address already in use:3001 + at org.apache.catalina.connector.Connector.start(Connector.java:1139) + at org.apache.catalina.core.StandardService.start(StandardService.java:531) + at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) + at org.apache.catalina.startup.Catalina.start(Catalina.java:566) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:16:07 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1448 ms +25 janv. 2008 11:16:07 org.apache.catalina.core.StandardServer await +GRAVE: StandardServer.await: create[3000]: +java.net.BindException: Address already in use + at java.net.PlainSocketImpl.socketBind(Native Method) + at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) + at java.net.ServerSocket.bind(ServerSocket.java:319) + at java.net.ServerSocket.(ServerSocket.java:185) + at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) + at org.apache.catalina.startup.Catalina.await(Catalina.java:630) + at org.apache.catalina.startup.Catalina.start(Catalina.java:590) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) + at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) +25 janv. 2008 11:16:07 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:16:07 org.apache.catalina.connector.Connector pause +GRAVE: La suspension du gestionnaire de protocole a choue +java.lang.NullPointerException + at org.apache.jk.server.JkMain.pause(JkMain.java:679) + at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) + at org.apache.catalina.connector.Connector.pause(Connector.java:1074) + at org.apache.catalina.core.StandardService.stop(StandardService.java:563) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 11:16:08 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 11:16:08 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 11:16:08 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 11:16:08 org.apache.catalina.connector.MapperListener destroy +ATTENTION: Error unregistering MBeanServerDelegate +java.lang.NullPointerException + at org.apache.catalina.connector.MapperListener.destroy(MapperListener.java:162) + at org.apache.catalina.connector.Connector.stop(Connector.java:1180) + at org.apache.catalina.core.StandardService.stop(StandardService.java:593) + at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) + at org.apache.catalina.startup.Catalina.stop(Catalina.java:616) + at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:659) +25 janv. 2008 11:16:08 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:16:08 org.apache.catalina.connector.Connector stop +GRAVE: Le connecteur Coyote n'a pas t dmarr +25 janv. 2008 11:16:28 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:115) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:16:28 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:115) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:21:52 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:21:52 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:22:05 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:22:05 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,0) + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:22:23 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:22:23 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:23:43 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:23:43 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:24:43 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:24:43 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:24:59 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:24:59 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:25:32 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:25:32 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:25:46 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:25:46 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:26:12 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:26:12 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'identifiant' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:27:32 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:27:32 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:28:16 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:28:16 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:30:27 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:30:27 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:30:39 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:30:39 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:32:09 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:32:09 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:32:16 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:32:16 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:34:00 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:34:00 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:34:08 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:34:08 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:35:15 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:35:15 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:40:30 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:40:30 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:40:36 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:40:36 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:41:59 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,1) GetProperty: Attribut incorrect: value + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:198) + at org.apache.jasper.compiler.JspUtil.checkAttributes(JspUtil.java:311) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:578) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:634) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:41:59 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,1) GetProperty: Attribut incorrect: value + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:198) + at org.apache.jasper.compiler.JspUtil.checkAttributes(JspUtil.java:311) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:578) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:634) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:42:13 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:42:13 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:45:04 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:45:04 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:49:17 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:49:17 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:49:40 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:49:41 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 11:49:41 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 11:49:41 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 11:49:41 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:49:46 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 11:49:46 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:49:46 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 856 ms +25 janv. 2008 11:49:46 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 11:49:46 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 11:49:47 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 11:49:47 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 11:49:47 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 11:49:47 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 11:49:47 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/51 config=null +25 janv. 2008 11:49:47 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1564 ms +25 janv. 2008 11:49:58 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:49:58 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:51:28 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:51:28 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Tentative d''opration bean sur un objet nul. + at org.apache.jasper.runtime.JspRuntimeLibrary.handleGetProperty(JspRuntimeLibrary.java:603) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:116) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:52:35 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:52:35 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1045) + at org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1101) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1337) + at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1155) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Generator.generate(Generator.java:3374) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:52:56 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:52:56 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:53:24 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 11:53:24 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:123) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 12:22:37 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 12:22:38 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 12:22:38 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 12:22:38 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 12:22:38 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:16:18 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 13:16:18 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:16:18 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 962 ms +25 janv. 2008 13:16:18 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 13:16:18 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 13:16:19 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 13:16:19 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 13:16:20 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:16:20 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 13:16:20 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/41 config=null +25 janv. 2008 13:16:20 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1977 ms +25 janv. 2008 13:18:17 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:124) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:18:17 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: =Impossible de trouver de l'information sur la proprit 'Id' dans le bean de type 'MesHaricots.MonUtilisateur' + at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:365) + at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:124) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:19:33 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:19:33 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:23:09 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:23:09 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:19 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:19 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:23 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +java.lang.ClassNotFoundException: org.apache.jsp.vues.salut_jsp + at java.net.URLClassLoader$1.run(URLClassLoader.java:200) + at java.security.AccessController.doPrivileged(Native Method) + at java.net.URLClassLoader.findClass(URLClassLoader.java:188) + at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134) + at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66) + at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598) + at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:23 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +java.lang.ClassNotFoundException: org.apache.jsp.vues.salut_jsp + at java.net.URLClassLoader$1.run(URLClassLoader.java:200) + at java.security.AccessController.doPrivileged(Native Method) + at java.net.URLClassLoader.findClass(URLClassLoader.java:188) + at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134) + at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66) + at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598) + at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:32 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:25:32 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(7,2) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.prepareExpression(Validator.java:1508) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:724) + at org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:41:32 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:41:33 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 13:41:33 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 13:41:33 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 13:41:34 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:45:22 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 13:45:22 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:45:22 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 755 ms +25 janv. 2008 13:45:22 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 13:45:22 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 13:45:23 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 13:45:23 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 13:45:23 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 13:45:23 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 13:45:23 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/51 config=null +25 janv. 2008 13:45:23 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1495 ms +25 janv. 2008 13:45:36 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP: + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert "AssignmentOperator Expression" to complete Assignment +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete Statement +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +$ cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Cannot make a static reference to the non-static method getId() from the type MonUtilisateur +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete BlockStatements +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Stacktrace: + at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) + at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) + at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:45:36 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP: + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert "AssignmentOperator Expression" to complete Assignment +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete Statement +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +$ cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Cannot make a static reference to the non-static method getId() from the type MonUtilisateur +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete BlockStatements +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${MesHaricots.MonUtilisateur.getId()} %> + + +Stacktrace: + at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) + at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) + at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:45:53 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP: + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert "AssignmentOperator Expression" to complete Assignment +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete Statement +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +$ cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +monUtilisateur cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete BlockStatements +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Stacktrace: + at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) + at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) + at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:45:53 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP: + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert "AssignmentOperator Expression" to complete Assignment +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete Statement +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +$ cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +monUtilisateur cannot be resolved +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Une erreur s'est produite la ligne: 7 dans le fichier jsp: /vues/salut.jsp +Syntax error, insert ";" to complete BlockStatements +4: /*String identifiant = request.getParameter("id"); +5: out.println("Votre identifiant est: " + identifiant);*/ +6: %> +7: <% ${monUtilisateur.getId()} %> + + +Stacktrace: + at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) + at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) + at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:49:22 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,0) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1139) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:819) + at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:49:22 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,0) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1139) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:819) + at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:55:42 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,0) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1139) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:819) + at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 13:55:42 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +org.apache.jasper.JasperException: /vues/salut.jsp(8,0) The function getId must be used with a prefix when a default namespace is not specified + at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) + at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) + at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) + at org.apache.jasper.compiler.Validator$ValidateVisitor$1FVVisitor.visit(Validator.java:1478) + at org.apache.jasper.compiler.ELNode$Function.accept(ELNode.java:129) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.ELNode$Visitor.visit(ELNode.java:242) + at org.apache.jasper.compiler.ELNode$Root.accept(ELNode.java:56) + at org.apache.jasper.compiler.ELNode$Nodes.visit(ELNode.java:200) + at org.apache.jasper.compiler.Validator$ValidateVisitor.validateFunctions(Validator.java:1503) + at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1139) + at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:819) + at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388) + at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394) + at org.apache.jasper.compiler.Node$Root.accept(Node.java:489) + at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338) + at org.apache.jasper.compiler.Validator.validate(Validator.java:1737) + at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) + at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) + at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 14:00:07 org.apache.catalina.core.ApplicationDispatcher invoke +GRAVE: "Servlet.service()" pour la servlet jsp a lanc une exception +javax.el.PropertyNotFoundException: Property 'Id' not found on type MesHaricots.MonUtilisateur + at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:193) + at javax.el.BeanELResolver$BeanProperties.access$400(BeanELResolver.java:170) + at javax.el.BeanELResolver.property(BeanELResolver.java:279) + at javax.el.BeanELResolver.getValue(BeanELResolver.java:60) + at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53) + at org.apache.el.parser.AstValue.getValue(AstValue.java:97) + at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186) + at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:923) + at org.apache.jsp.vues.salut_jsp._jspx_meth_c_005fout_005f0(salut_jsp.java:233) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:119) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 14:00:07 org.apache.catalina.core.StandardWrapperValve invoke +GRAVE: "Servlet.service()" pour la servlet boutique a gnr une exception +javax.el.PropertyNotFoundException: Property 'Id' not found on type MesHaricots.MonUtilisateur + at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:193) + at javax.el.BeanELResolver$BeanProperties.access$400(BeanELResolver.java:170) + at javax.el.BeanELResolver.property(BeanELResolver.java:279) + at javax.el.BeanELResolver.getValue(BeanELResolver.java:60) + at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53) + at org.apache.el.parser.AstValue.getValue(AstValue.java:97) + at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186) + at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:923) + at org.apache.jsp.vues.salut_jsp._jspx_meth_c_005fout_005f0(salut_jsp.java:233) + at org.apache.jsp.vues.salut_jsp._jspService(salut_jsp.java:119) + at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) + at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) + at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) + at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) + at ServletController.doPost(ServletController.java:50) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) + at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) + at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) + at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) + at java.lang.Thread.run(Thread.java:619) +25 janv. 2008 14:10:46 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [] +25 janv. 2008 14:15:16 org.apache.catalina.startup.HostConfig checkResources +INFO: Reloading context [/ecommerce] +25 janv. 2008 14:15:55 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:15:56 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 14:15:57 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 14:15:57 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 14:15:57 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:16:01 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 14:16:01 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:16:01 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 708 ms +25 janv. 2008 14:16:01 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 14:16:01 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 14:16:02 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 14:16:02 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 14:16:03 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:16:03 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 14:16:03 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/25 config=null +25 janv. 2008 14:16:03 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1911 ms +25 janv. 2008 14:25:48 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:25:49 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 14:25:49 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 14:25:49 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 14:25:49 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:25:54 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 14:25:54 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:25:54 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 718 ms +25 janv. 2008 14:25:54 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 14:25:54 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 14:25:56 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 14:25:56 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 14:25:56 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 14:25:56 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 14:25:56 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/26 config=null +25 janv. 2008 14:25:56 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2015 ms +25 janv. 2008 15:06:58 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:06:59 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 15:06:59 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 15:06:59 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 15:06:59 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:07:04 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 15:07:04 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:07:04 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 755 ms +25 janv. 2008 15:07:04 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 15:07:04 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 15:07:05 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 15:07:05 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 15:07:06 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:07:06 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 15:07:06 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/28 config=null +25 janv. 2008 15:07:06 org.apache.catalina.startup.Catalina start +INFO: Server startup in 1988 ms +25 janv. 2008 15:10:01 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:10:02 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 15:10:02 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 15:10:02 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 15:10:02 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:14:47 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +25 janv. 2008 15:14:47 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:14:47 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 806 ms +25 janv. 2008 15:14:47 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +25 janv. 2008 15:14:47 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +25 janv. 2008 15:14:48 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +25 janv. 2008 15:14:48 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +25 janv. 2008 15:14:49 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:14:49 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +25 janv. 2008 15:14:49 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/49 config=null +25 janv. 2008 15:14:49 org.apache.catalina.startup.Catalina start +INFO: Server startup in 2270 ms +25 janv. 2008 15:27:48 org.apache.coyote.http11.Http11Protocol pause +INFO: Suspension de Coyote HTTP/1.1 sur http-3001 +25 janv. 2008 15:27:49 org.apache.catalina.core.StandardService stop +INFO: Arrt du service Catalina +25 janv. 2008 15:27:49 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +25 janv. 2008 15:27:49 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +25 janv. 2008 15:27:49 org.apache.coyote.http11.Http11Protocol destroy +INFO: Arrt de Coyote HTTP/1.1 sur http-3001 +31 janv. 2008 07:54:05 org.apache.catalina.core.AprLifecycleListener init +INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/server:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386:/usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib +31 janv. 2008 07:54:05 org.apache.coyote.http11.Http11Protocol init +INFO: Initialisation de Coyote HTTP/1.1 sur http-3001 +31 janv. 2008 07:54:05 org.apache.catalina.startup.Catalina load +INFO: Initialization processed in 1175 ms +31 janv. 2008 07:54:05 org.apache.catalina.core.StandardService start +INFO: Dmarrage du service Catalina +31 janv. 2008 07:54:05 org.apache.catalina.core.StandardEngine start +INFO: Starting Servlet Engine: Apache Tomcat/6.0.14 +31 janv. 2008 07:54:07 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +31 janv. 2008 07:54:07 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +31 janv. 2008 07:54:08 org.apache.coyote.http11.Http11Protocol start +INFO: Dmarrage de Coyote HTTP/1.1 sur http-3001 +31 janv. 2008 07:54:09 org.apache.jk.common.ChannelSocket init +INFO: JK: ajp13 listening on /0.0.0.0:8009 +31 janv. 2008 07:54:09 org.apache.jk.server.JkMain start +INFO: Jk running ID=0 time=0/53 config=null +31 janv. 2008 07:54:09 org.apache.catalina.startup.Catalina start +INFO: Server startup in 3670 ms +31 janv. 2008 08:27:10 org.apache.catalina.startup.HostConfig checkResources +INFO: Repli (undeploy) de l'application web ayant pour chemin de contexte diff --git a/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-10.log b/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-10.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-11.log b/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-11.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-17.log b/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-17.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-18.log b/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-18.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-24.log b/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-24.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-25.log b/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-25.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-31.log b/P51/apache-tomcat-6.0.14/logs/host-manager.2008-01-31.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-10.log b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-10.log new file mode 100644 index 0000000..5deb96e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-10.log @@ -0,0 +1,22 @@ +10 janv. 2008 14:43:49 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +10 janv. 2008 14:43:49 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +10 janv. 2008 15:02:31 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +10 janv. 2008 15:02:31 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +10 janv. 2008 15:11:10 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: sessionCreated('66FBE3491474F3E77E1308C311C17A94') +10 janv. 2008 15:12:50 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: attributeAdded('org.apache.jasper.runtime.JspApplicationContextImpl', 'org.apache.jasper.runtime.JspApplicationContextImpl@19f9d2') +10 janv. 2008 15:15:22 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: attributeAdded('66FBE3491474F3E77E1308C311C17A94', 'javax.servlet.jsp.jstl.fmt.request.charset', 'UTF-8') +10 janv. 2008 15:15:41 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: attributeAdded('66FBE3491474F3E77E1308C311C17A94', 'numguess', 'num.NumberGuessBean@bbfa5c') +10 janv. 2008 15:16:54 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: attributeAdded('66FBE3491474F3E77E1308C311C17A94', 'theTruth', 'true') +10 janv. 2008 15:21:41 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +10 janv. 2008 15:21:41 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() diff --git a/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-11.log b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-11.log new file mode 100644 index 0000000..3848967 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-11.log @@ -0,0 +1,38 @@ +11 janv. 2008 13:54:46 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +11 janv. 2008 13:54:46 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +11 janv. 2008 13:57:12 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +11 janv. 2008 13:57:12 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +11 janv. 2008 13:57:14 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +11 janv. 2008 13:57:14 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +11 janv. 2008 14:06:38 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +11 janv. 2008 14:06:38 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +11 janv. 2008 14:15:23 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +11 janv. 2008 14:15:23 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +11 janv. 2008 14:15:28 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +11 janv. 2008 14:15:28 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +11 janv. 2008 14:18:05 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +11 janv. 2008 14:18:05 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +11 janv. 2008 14:23:33 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: attributeAdded('org.apache.jasper.runtime.JspApplicationContextImpl', 'org.apache.jasper.runtime.JspApplicationContextImpl@109de5b') +11 janv. 2008 14:23:33 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: sessionCreated('27B567D385368D0ADB40E8A5DFC95770') +11 janv. 2008 15:17:12 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: sessionDestroyed('27B567D385368D0ADB40E8A5DFC95770') +11 janv. 2008 15:24:17 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +11 janv. 2008 15:24:17 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() diff --git a/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-17.log b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-17.log new file mode 100644 index 0000000..0e49fad --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-17.log @@ -0,0 +1,42 @@ +17 janv. 2008 13:27:49 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +17 janv. 2008 13:27:49 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +17 janv. 2008 15:19:52 org.apache.catalina.core.StandardContext listenerStart +GRAVE: Erreur lors de la configuration de la classe d'coute de l'application (application listener) listeners.ContextListener +java.lang.ClassNotFoundException: listeners.ContextListener + at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358) + at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204) + at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3773) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4337) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +17 janv. 2008 15:19:52 org.apache.catalina.core.StandardContext listenerStart +GRAVE: Erreur lors de la configuration de la classe d'coute de l'application (application listener) listeners.SessionListener +java.lang.ClassNotFoundException: listeners.SessionListener + at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358) + at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204) + at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3773) + at org.apache.catalina.core.StandardContext.start(StandardContext.java:4337) + at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105) + at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203) + at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) + at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) + at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) + at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) + at java.lang.Thread.run(Thread.java:619) +17 janv. 2008 15:19:52 org.apache.catalina.core.StandardContext listenerStart +GRAVE: L'installation des couteurs (listeners) de l'application a t saute suite aux erreurs prcdentes +17 janv. 2008 15:22:48 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +17 janv. 2008 15:22:48 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() diff --git a/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-18.log b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-18.log new file mode 100644 index 0000000..c53b660 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-18.log @@ -0,0 +1,96 @@ +18 janv. 2008 14:05:14 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:05:14 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:09:15 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 14:09:15 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 14:14:55 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:14:55 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:15:00 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 14:15:00 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 14:15:32 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:15:32 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:19:47 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 14:19:47 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 14:22:16 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:22:16 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:35:37 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 14:35:37 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 14:35:37 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:35:37 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:37:05 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 14:37:05 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 14:37:10 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:37:10 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:38:08 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 14:38:08 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 14:38:14 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:38:14 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:38:45 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 14:38:45 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 14:40:08 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:40:08 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:42:04 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:42:04 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:42:05 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 14:42:05 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 14:52:29 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 14:52:29 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 14:52:35 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:52:35 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:53:18 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 14:53:18 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 14:53:20 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 14:53:20 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 15:07:26 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 15:07:26 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() +18 janv. 2008 15:07:39 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextInitialized() +18 janv. 2008 15:07:39 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextInitialized() +18 janv. 2008 15:09:06 org.apache.catalina.core.ApplicationContext log +INFO: SessionListener: contextDestroyed() +18 janv. 2008 15:09:06 org.apache.catalina.core.ApplicationContext log +INFO: ContextListener: contextDestroyed() diff --git a/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-24.log b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-24.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-25.log b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-25.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-31.log b/P51/apache-tomcat-6.0.14/logs/localhost.2008-01-31.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/manager.2008-01-10.log b/P51/apache-tomcat-6.0.14/logs/manager.2008-01-10.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/manager.2008-01-11.log b/P51/apache-tomcat-6.0.14/logs/manager.2008-01-11.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/manager.2008-01-17.log b/P51/apache-tomcat-6.0.14/logs/manager.2008-01-17.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/manager.2008-01-18.log b/P51/apache-tomcat-6.0.14/logs/manager.2008-01-18.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/manager.2008-01-24.log b/P51/apache-tomcat-6.0.14/logs/manager.2008-01-24.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/manager.2008-01-25.log b/P51/apache-tomcat-6.0.14/logs/manager.2008-01-25.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/logs/manager.2008-01-31.log b/P51/apache-tomcat-6.0.14/logs/manager.2008-01-31.log new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/temp/safeToDelete.tmp b/P51/apache-tomcat-6.0.14/temp/safeToDelete.tmp new file mode 100644 index 0000000..e69de29 diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/RELEASE-NOTES.txt b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/RELEASE-NOTES.txt new file mode 100644 index 0000000..1576f5f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/RELEASE-NOTES.txt @@ -0,0 +1,178 @@ + + + Apache Tomcat Version 6.0.14 + Release Notes + + +$Id: RELEASE-NOTES 521511 2007-03-22 22:38:04Z fhanik $ + + +============================= +KNOWN ISSUES IN THIS RELEASE: +============================= + +* Dependency Changes +* JNI Based Applications +* Bundled APIs +* Web application reloading and static fields in shared libraries +* Tomcat on Linux +* Enabling SSI and CGI Support +* Security manager URLs +* Symlinking static resources +* Enabling invoker servlet +* Viewing the Tomcat Change Log +* When all else fails + + +=================== +Dependency Changes: +=================== +Tomcat 6.0 is designed to run on JSE 5.0 and later, and requires +configuration to run on JSE 5.0. + +In addition, Tomcat 6.0 uses the Eclipse JDT Java compiler for compiling +JSP pages. This means you no longer need to have the complete +Java Development Kit (JDK) to run Tomcat, but a Java Runtime Environment +(JRE) is sufficient. The Eclipse JDT Java compiler is bundled with the +binary Tomcat distributions. Tomcat can also be configured to use the +compiler from the JDK to compile JSPs, or any other Java compiler supported +by Apache Ant. + + +======================= +JNI Based Applications: +======================= +Applications that require native libraries must ensure that the libraries have +been loaded prior to use. Typically, this is done with a call like: + + static { + System.loadLibrary("path-to-library-file"); + } + +in some class. However, the application must also ensure that the library is +not loaded more than once. If the above code were placed in a class inside +the web application (i.e. under /WEB-INF/classes or /WEB-INF/lib), and the +application were reloaded, the loadLibrary() call would be attempted a second +time. + +To avoid this problem, place classes that load native libraries outside of the +web application, and ensure that the loadLibrary() call is executed only once +during the lifetime of a particular JVM. + + +============= +Bundled APIs: +============= +A standard installation of Tomcat 6.0 makes all of the following APIs available +for use by web applications (by placing them in "lib"): +* annotations-api.jar (Annotations package) +* catalina.jar (Tomcat Catalina implementation) +* catalina-ant.jar (Tomcat Catalina Ant tasks) +* catalina-ha.jar (High availability package) +* catalina-tribes.jar (Group communication) +* commons-logging-api.jar (Commons Logging API 1.0.x) +* el-api.jar (EL 2.1 API) +* jasper.jar (Jasper 2 Compiler and Runtime) +* jasper-el.jar (Jasper 2 EL implementation) +* jasper-jdt.jar (Eclipse JDT 3.2 Java compiler) +* jsp-api.jar (JSP 2.1 API) +* servlet-api.jar (Servlet 2.5 API) +* tomcat-coyote.jar (Tomcat connectors and utility classes) +* tomcat-dbcp.jar (package renamed database connection pool based on Commons DBCP) + +You can make additional APIs available to all of your web applications by +putting unpacked classes into a "classes" directory (not created by default), +or by placing them in JAR files in the "lib" directory. + +To override the XML parser implementation or interfaces, use the endorsed +mechanism of the JVM. The default configuration defines JARs located in +"endorsed" as endorsed. + + +================================================================ +Web application reloading and static fields in shared libraries: +================================================================ +Some shared libraries (many are part of the JDK) keep references to objects +instantiated by the web application. To avoid class loading related problems +(ClassCastExceptions, messages indicating that the classloader +is stopped, etc.), the shared libraries state should be reinitialized. + +Something which might help is to avoid putting classes which would be +referenced by a shared static field in the web application classloader, +and putting them in the shared classloader instead (JARs should be put in the +"lib" folder, and classes should be put in the "classes" folder). + + +================ +Tomcat on Linux: +================ +GLIBC 2.2 / Linux 2.4 users should define an environment variable: +export LD_ASSUME_KERNEL=2.2.5 + +Redhat Linux 9.0 users should use the following setting to avoid +stability problems: +export LD_ASSUME_KERNEL=2.4.1 + +There are some Linux bugs reported against the NIO sendfile behavior, make sure you +have a JDK that is up to date, or disable sendfile behavior in the Connector.
+6427312: (fc) FileChannel.transferTo() throws IOException "system call interrupted"
+5103988: (fc) FileChannel.transferTo should return -1 for EAGAIN instead throws IOException
+6253145: (fc) FileChannel.transferTo on Linux fails when going beyond 2GB boundary
+6470086: (fc) FileChannel.transferTo(2147483647, 1, channel) cause "Value too large" exception
+ + +============================= +Enabling SSI and CGI Support: +============================= +Because of the security risks associated with CGI and SSI available +to web applications, these features are disabled by default. + +To enable and configure CGI support, please see the cgi-howto.html page. + +To enable and configue SSI support, please see the ssi-howto.html page. + + +====================== +Security manager URLs: +====================== +In order to grant security permissions to JARs located inside the +web application repository, use URLs of of the following format +in your policy file: + +file:${catalina.home}/webapps/examples/WEB-INF/lib/driver.jar + + +============================ +Symlinking static resources: +============================ +By default, Unix symlinks will not work when used in a web application to link +resources located outside the web application root directory. + +This behavior is optional, and the "allowLinking" flag may be used to disable +the check. + + +========================= +Enabling invoker servlet: +========================= +Starting with Tomcat 4.1.12, the invoker servlet is no longer available by +default in all webapps. Enabling it for all webapps is possible by editing +$CATALINA_HOME/conf/web.xml to uncomment the "/servlet/*" servlet-mapping +definition. + +Using the invoker servlet in a production environment is not recommended and +is unsupported. More details are available on the Tomcat FAQ at +http://tomcat.apache.org/faq/misc.html#invoker. + + +============================== +Viewing the Tomcat Change Log: +============================== +See changelog.html in this directory. + + +==================== +When all else fails: +==================== +See the FAQ +http://tomcat.apache.org/faq/ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/WEB-INF/web.xml b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/WEB-INF/web.xml new file mode 100644 index 0000000..2cb7c2c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/WEB-INF/web.xml @@ -0,0 +1,29 @@ + + + + + + Welcome to Tomcat + + Welcome to Tomcat + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/admin/index.html b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/admin/index.html new file mode 100644 index 0000000..6dcab2d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/admin/index.html @@ -0,0 +1,14 @@ + + + + + Administration + + + + +Tomcat's administration web application is no longer installed by default. Download and install +the "admin" package to use it. + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/asf-logo-wide.gif b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/asf-logo-wide.gif new file mode 100644 index 0000000..b240328 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/asf-logo-wide.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/build.xml b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/build.xml new file mode 100644 index 0000000..ae64324 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/build.xml @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/favicon.ico b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/favicon.ico new file mode 100644 index 0000000..6c5bd2c Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/favicon.ico differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/index.html b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/index.html new file mode 100644 index 0000000..c3d17bd --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/index.html @@ -0,0 +1,212 @@ + + + + + Apache Tomcat by Blanko + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +
Administration
+ +
+ + + + + + + +
Documentation
+ +
+ + + + + + + +
Tomcat Online
+ +
+ + + + + + + +
Miscellaneous
+ +
+ + + + + + + +
Blankoworld
+
  +

If you're seeing this page via a web browser, it means you've setup Tomcat successfully. Congratulations!

+ +

As you may have guessed by now, this is the default Tomcat home page. It can be found on the local filesystem at:

+

$CATALINA_HOME/webapps/ROOT/index.html

+ +

where "$CATALINA_HOME" is the root of the Tomcat installation directory. If you're seeing this page, and you don't think you should be, then either you're either a user who has arrived at new installation of Tomcat, or you're an administrator who hasn't got his/her setup quite right. Providing the latter is the case, please refer to the Tomcat Documentation for more detailed setup and administration information than is found in the INSTALL file.

+ +

NOTE: For security reasons, using the administration webapp + is restricted to users with role "admin". The manager webapp + is restricted to users with role "manager". + Users are defined in $CATALINA_HOME/conf/tomcat-users.xml.

+ +

Included with this release are a host of sample Servlets and JSPs (with associated source code), extensive documentation, and an introductory guide to developing web applications.

+ +

Tomcat mailing lists are available at the Tomcat project web site:

+ + + +

Thanks for using Tomcat!

+ + +
+ + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/index.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/index.jsp new file mode 100644 index 0000000..39a3b26 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/index.jsp @@ -0,0 +1,213 @@ + + +<%@ page session="false" %> + + + <%= application.getServerInfo() %> + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +
Administration
+ +
+ + + + + + + +
Documentation
+ +
+ + + + + + + +
Tomcat Online
+ +
+ + + + + + + +
Examples
+ +
+ + + + + + + +
Miscellaneous
+
  +

If you're seeing this page via a web browser, it means you've setup Tomcat successfully. Congratulations!

+ +

As you may have guessed by now, this is the default Tomcat home page. It can be found on the local filesystem at:

+

$CATALINA_HOME/webapps/ROOT/index.jsp

+ +

where "$CATALINA_HOME" is the root of the Tomcat installation directory. If you're seeing this page, and you don't think you should be, then either you're either a user who has arrived at new installation of Tomcat, or you're an administrator who hasn't got his/her setup quite right. Providing the latter is the case, please refer to the Tomcat Documentation for more detailed setup and administration information than is found in the INSTALL file.

+ +

NOTE: For security reasons, using the administration webapp + is restricted to users with role "admin". The manager webapp + is restricted to users with role "manager". + Users are defined in $CATALINA_HOME/conf/tomcat-users.xml.

+ +

Included with this release are a host of sample Servlets and JSPs (with associated source code), extensive documentation, and an introductory guide to developing web applications.

+ +

Tomcat mailing lists are available at the Tomcat project web site:

+ + + +

Thanks for using Tomcat!

+ + +
+ + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/tomcat-power.gif b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/tomcat-power.gif new file mode 100644 index 0000000..c1a7404 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/tomcat-power.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/tomcat.gif b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/tomcat.gif new file mode 100644 index 0000000..6175673 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/tomcat.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/tomcat.svg b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/tomcat.svg new file mode 100644 index 0000000..12bee08 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT.bak/tomcat.svg @@ -0,0 +1,573 @@ + + + + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + 2006-05-09T08:17:21Z + 2006-05-09T08:37:38Z + Illustrator + + + + JPEG + 256 + 184 + /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgAuAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYq7FXYq7 FXYq7FXYq7FXYq7FXYq7FXhH/OYHnWfQ/wAurfRLSUxXXmK49GQqaN9VtwJJqH3cxqfYnFXhP5Y/ 85O+f/JU0enaw769okbBJLS8ZvrUKg0IhnarDj/I9R2HHFX2F+Xn5neT/P8ApP6R8u3glKAfW7KS iXNuzdFljqaezCqnsTirK8VdirsVdirsVdirsVdirC/zM/Nvyd+XemC71255Xcqk2WmQUa5nI2+F CRxUd3ag+nbFXx1+Zf8Azkn+YvneaW1tLh9C0NgwXTrB2V3Sm/rzji8m3UDitP2cVfV//OOfmabz D+T3l+6uHMl1aRPYTsxqSbVzEhJ7kxKhxV6VirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVd irsVfHn/ADlxdSa7+bvlvyvGx4RW0EVARtNfXJVqf7BY+uRlKgT3JAt5r/zkD5ZGgfmfqSRR+nZ6 gsd9agdOMq0f/ksj5h9nZvEwgnmNi2Z4cMiw/wAqebPMHlTXLfW9BvHstQtjVZEPwstQWjkXo6NT 4lOxzOan3v8Akl+cel/mX5a+tAJa69ZcU1fTlJojGvGWLluYpKbV6GqmtKlV6NirsVdirsVdirsV eWfnr+eGl/lroywwBLzzPfox02wJqqL0+sT03EanoOrnYdyFXwh5i8x655j1i41jW7yS+1K6blNc SmpPgABQKo6BVFB2xVnf5Q+SjrWh+d9Yli5w6XolylsadbqSNnTj8kiYf7IZg6zUeHKERzlIfL8U 3YoWCe4Pff8AnCfVTN5D1zTCamz1P11HcLcQIAPlWE5nNL6KxV2KuxV2KuxV2KuxV2KuxV2KuxV2 KuxV2KuxV2KuxV2KvjD8wm/Sv/OX8UTGsdrqGnCMNUU+rW0Mp6f5ammY2sNYZ/1T9zZi+oe9m/8A zkx+Xc/mPytFrunRepqehc3ljUVeS0cAyAU6mMqHA8OXfNB2PqhCfAeUvv8A2uZqcdix0fIedQ69 m35OefrryN+YOla2kpjsjKttqqDo9nMwEoI78ftr/lKMVfaeqf8AOSH5KaaSs3meCZx0W1inuanf YNDG69vHFWM3v/OYn5QW5YQ/pK8ArQwWqitPD1pIuvviqVT/APObH5cKR6GjaxIP2i8dqhB9qTvi qmP+c2fIFd9C1Wnfa2/6q4qmFv8A85n/AJUSvxksdZtx/NJb25H/ACTuHOKp3bf85XfkpPBI7avN BIisywS2lwGcqCeIZUdKmm1WGKvijzz5x1bzl5q1HzFqjlrm+lLrHWqxRDaOFP8AJjSij7+uKpNb W1xdXMVtbRtNcTuscMKAszu54qqgbkkmgwE1uVfbHkL8uk8o/lTPoMiK+o3drPNqZHRrieIhlr4I tEB9q5yWo1fi6gS/hBFfN2UMfDAjqwT/AJwdvyt/5usC20sVlOq77em0yMR2/wB2Cudc619ZYq7F XYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXxZKTJ/zmFc+oedNTmA5b/ZtG49fCgpmH2h/ cS9zbh+sPqDrsc4t2r57/Nf/AJxkGo3c+teSTFb3ExMlxo0hEcTMdybd/spU/sN8PgQNs3+i7Xoc OX5/rcLLpusWIaF/zif56vFWTVr6y0pG6xgtczL81QLH90mZWTtnFH6bk1x0sjz2Z1pf/OIvlOIL +lNbvrthSv1dYrZSe+zC4ND88wp9uTP0xA9+/wCptGkHUsms/wDnGf8AKS3AEunT3dOpmupxXam/ pNFmPPtjOeRA+H67bBpoPDv+ch/yt03yXrdjeaFbG30HUouCQ8pJBFcQ0DqXkZ2+NSrCrfzeGbns vWHNAiX1BxdRi4TtySH8jfJdn5u/MOy07UIfrGl28ct3fw1IDRxrxUEqQaGV0By7X6g4sRkOfRhh hxSp9N3X/OO/5P3FSdBETGnxRXN0nT/JEvH8M50dq6gfxfYHOOnh3JDqP/OKn5a3NTazajYt+yIp 0dfpEsbn/hsvj21lHMRP497A6SPmwzW/+cQr9A76H5himO/CG9haL5AyxGT/AIhmXj7cifqiR7t/ 1NUtIehZh+S3/OP8Xk+5GveYXivNfTkLSKIloLYGqlwzBecjL3p8P45i9odqeIOCH09fNtw6fh3P N7DfIz2VwijkzRuFA6klTmpxmpD3uRLk+bf+cJrrj+Yet2tT+90hpeP7J9O5hWp9/wB5tneunfZm KuxV2KuxV2KuxV2KuxVZLNFDG0srrHGu7O5CqB7k4qks3nzyNC5jm8xaZHIOqPeW6nf2L4qmFhrW j6iK6ff294KVrbypLt1r8BPjirAvzb/Pnyf+WrW9rqKS6hq90vqRaba8eaxVp6krMQEUkEL1JPbq cVYFof8Azmp5BupVj1fR9Q0wNsZo/SuY1/1qGN6fJDir2Xyf+Yfkrzjam48taxb6iqgGSKNisyA9 PUhcLKn+yXFWRYq7FXYq7FXxRrBNj/zl/NVwC+rL8XtcWw+Hf/jJTMXXC8M/6pbMP1h9SZxLtnYq 7FWG+afzg/LnyvdNZ6vrUSXqGj2sKvcSofB1hV+B/wBamZmHs/NkFxjt8mqWaMeZRPk78zvI/nF5 ItA1RLm5hHKS1dXhmC1pyEcoRmXputRkdRosuLeQ2TDLGXJCfm/5JXzj5D1HSo05X8a/WtNPcXMI JUD/AFxVP9lk+z9R4WUE8jsWOaHFGnl3/OI/lpodN1zzFMlGuJUsLcsKELCPUlpXsWkQfNc2Xbmb eMPj+r9LRpI8y+hc0DmuxV2KuxV2Kvl//nClHP5oas4B4Lok6luwLXdqQPpoc9AdK+08VdirsVdi rsVdiqXeYPMOi+XtIudY1q7jsdNtF5z3EpooHQAd2ZjsqjcnYYq+VfPf/OV3nXzNqp0D8stPlto5 mMcF0IfrGoT+8UIDrGD8mbvVcVSqz/5xn/Pjzs66h5t1RbUueX+5W7kurgA/yxx+sq/6pZaeGKsj h/5wanMYM3nNUk7qmml1/wCCN0n6sVQt7/zhDr8B56Z5stppEIMZntZLfcb1qkk9KHFXzr5mtdUs tfv9O1S5a7vtOuJbKaZndwWt3MZ4mSjcartUDFUsxVFabqeo6XfQ3+m3UtlfW7c4Lq3dopUbxV1I IxV9Sfkr/wA5aNcT2+gfmG6K8hWO18wqAi1OwF2q0Vf+Mi0H8w6tir6lVlZQykMrCqsNwQe4xVvF XYq+Kfzzro3/ADlLa6oxKJLdaReFiaApGsMLeG1ISMqzw4sco94LKBogvqPOEdw7FXkf55/mBrlj Jp3kbykX/wAVeYSFE0Zo8FuzFOSt+wzlW+P9lQx2NDm27N0sZXlyfRFxs+Qj0jmUd5B/IHyP5bsI 31Oyh1zWnAa6vb1BMnqHciKKSqKAehI5e+Q1XamTIfSeGPlzTj08YjfcsJ/PDy5pXkHX/LH5geW7 WPTGhvlt9Rt7RBFHKpBk+wgCjnGkiPQbg5m9m5jnhLFM3s1Z4iBEg+hOu4zn3NQOkaLpuj20ltp8 IghlnnunRe8tzK0sh/4JzQdhtlmXLKZuXdXyYxiByR2VsnYqxjV/zO/L3SJWh1DzDYQzoaPD66PI p/ykQsw+kZlY9Dmnyifu+9qOWI6pvoOvaRr+kwato9yt3p1zz9C4UMob03MbbMFOzoR0ynLiljkY yFEM4yBFhV1WVYdLvJWJCxwSOxHWioTjhFzA8wsuRfPn/OEVoX83eZLzekOnxQnpSsswb/mVneOn fYOKuxV2KuxV2KqF9e2lhZT315KsFpaxtNcTuaKkcYLMzHwAFcVfFHnPzR50/wCchPzJi8veXlaH y7aO5sYnqsUUCkK97dU/bYdB2qFXcklV9U/lj+UnlH8u9IWz0a2WS+dQL7VpVBuLhh1q37KV+yg2 Huakqs1xV2KuxV8v/nf/AM4patrnmG+80eSp4Xn1GR7m/wBIuW9ImdyWd4JSOH7xjUq9KGvxb0Cr 5/1j8mPzX0iRkvfKepgL9qSC3e5jG9P7yASJ1PjiqRjyb5vMvpDQ9QMtePpi1m5culKca1xVPtG/ JT82dYdUsvKepUf7MlxA1rGe395cekn44q+zf+cffKv5m+VvJ50bzvPbzRwFf0RFHK01xbxU+KCV 6cCqmnDizU3FaUAVeo4q7FXx5/zmxpD2vnTy7rcdUN5YPbh12POzmL1qO4FyuKsl/Lz/AJyc8ra2 sNj5mUaHqZAU3TGtnI3Qnn1ir1o/wj+bOY1XY8474/UO7r+1z8epB2Oz2iKWKaJJYnWSKQBkkQhl ZTuCCNiDmnIINFygVGXTNOmvYb6W1hkvbbkLe6eNWljDgq3ByOS1UkGhwjJIDhs0ei0LtE5FLxD/ AJyycP5F0ezQcp59WjaNdt+NvMp/GQZuuxI/vJH+j+lxNWfSPe9rgiEMEcQNRGoQE9+IpmmlKyS5 QCpgSsllihieWVxHFGpeR2NFVVFSST0AGEAk0EEvn2fVfOv5269e6foN9Jof5e6fIYbm9QMst2af ZIBUtyG4QkKqkFqmgzfiGLRQBkOLKfx+C4ZMspobRZzof/OOv5U6VCiyaUdSnUUa4vZZJGb5opSL 7kzBydrZ5HY8PuDbHTQDP9G0XStE02HTNJtks9Pt+Xo20Qoi83LtQe7MTmBkyynLikbJboxAFBJv zO1Aaf8Al35lu60ZNNuljP8AlvEyJ/wzDL9FDizQH9IfYxymol59/wA4P6S0eg+adXI+G6ura0Vv e2jeRgP+kkZ2zqX01irsVdirsVdir50/5zJ/MGbSfK1j5PspOFxrrGa/KmhFpAwon/PWWn0KR3xV mf8Azjd+WEPkj8vrae5iA17XES91KQijorrWG333HpI24/mLYq9YxV2KuxV2KuxV2KuxV2KuxV2K obUdT03TbR7zUbuGytI/7y4uJFijX5u5VRir5U/5yz/MX8tfNfl7S7DQtZh1LW9NvS5W2V3iFvJG yyUnC+kfjVPsscVSv8i/yi/LTzn5Ij1XVLSafU4J5rW9C3EkaFlIdCFQrT926980XaOuy4cnDGqI vk5eDDGQsvdvKXkby35StXtdBgmtrZ6Vge6uZ4wf5ljmkkRCe5UCuaPPqp5Tc9/gHLhjEeSN8x3+ o6foGoX2m2hv9QtoJJbWyFazSKpKxjjv8R22yOCEZTAkaBZTJAsPHv8AlcP53/8Altpv+BuP+ac3 H8n6X/VPti4vjZP5rzz8wfPP5i+bfNvluw1Dyq1rqWjzG+g0ROZmuRVZDVGHPjxgbcDpXNhpdNiw wkYy9Mutj8dWnJOUiAQ9D/5XD+d//ltpv+BuP+ac1/8AJ+l/1T7Yt3jZP5rv+Vw/nf8A+W2m/wCB uP8AmnH+T9L/AKp9sV8bJ/NYp+ZX5v8A5qXnli40LVfKbaCutAWkdyxlWRwWXnHGrheRdfhI8DmV pNBgE+KMuLh9zXkzTIoirR/kbzf+bvlHy1Y+XtO/LedobYENM6zK0kjtyeRzxoOTH6BtkNTp9Plm ZyyfaEwnOIoRej+RPO35o6xr62fmPyf+hdNMTub71C1HWnFaV/azX6rS4IQuE+KXds348kyaIZ7q jaqthKdKSCS/pSBbp3jhr4uY1kbbwA38Rmux8PF6r4fJuldbPlv8+YvzstdPS483apafoO7nEEVh pcjJbl6NIA0bKkjgenWsnKhpnTdnHTH+7HqHfz+f6nAz8f8AFyfQ3/OLHl06N+TWkyOnCfVpJ9Rm Hj6r+nEfphiQ5t3GeuYq7FXYq7FXYq+MfzQhXzz/AM5YWmgz1lsLe7sbB4zvW3gRbi5TvSrNLir7 OxV2KuxV2KuxV2KuxV2KuxV5j59/5yM/K7yb6kFxqQ1TU0qP0dpvG4cMO0kgIij36hn5e2KvAvMv /OWP5p+arl9P8laWukxtXiYIzfXvHpUuy+mg+UdR/NkJ5IwFyIA80xiSaDF/+VT/AJo+b7sah5w1 h1kavx3sz3k617KgYoo9uYp4ZptR7QYIbRuZ8uXzP7XMx6GcuezJYf8AnH3yrBptwjXFxd6g8LrB NIwSNJSpCOEQA7NvRmOak+0eQzGwjCxfU11/FOT/ACfEDnZYH+S+sfmZZeajoHlC8htrq6ZnubC/ K/VnMAPLkrAtyUdfT+Kg8BnSa7HhMOLINg6/CZA1F9k6KdbOmw/pxbZdTp/pH1IyNAW8U9UK9Pnn I5eDi9F8PnzdlG63R2VsmndUUu5CooJZiaAAdSTiBaHhP5N8/On5r+bPzEkBbT7dv0do7EGhWgUM tRswgjUsP+LM3vaH7nBDCOZ5/j3/AHOJh9UzJ7vmicx2KvEf+clQLS78i63cEjT9O1cC6O3H4mjl FR/qwPm77G3GSPUj9f63E1XQvbQQQCDUHoc0jlN4pSXzN5z8q+V7ZLjX9Tg0+OSvpLK37x+PXhGv J3pXfiMuw6bJlNQFsJ5BHmXzJ+dn5haf+Z/mby75e8qtLPbLN6EbyI0YluruRI0oh+KigChIHU50 /ZmilhieL6i4GoyiZ2fbWh6Ra6Noun6PaClpp1tFaW4/4rgQRr+C5s3HR2KuxV2KuxV2KvjfymCP +c0p/rdK/pTU+POlKfUp/S/4144q+yMVdirsVdirsVdirsVeQfmX/wA5Ofl55MaaxtZv0/rcdVNl ZMDEj+E1x8SL4ELyYdxir5W/Mf8A5yD/ADJ88GSC6vjpmjyVC6VYFoYmQ1FJXr6kte/I8fADFXme Kvpj8jdTtb3yJBFFGkdxYyyW9zwVU5MDzRzTqSjipPU1zhvaDHKOosk8Mht5d/6/i7rQSBh5h6Fm ic12Kvnvz6l35B/Nqz8z2CEQyzLqMSqeIY143UVf8upr7Pnedl5RqdLwS5gcJ/R9n2uj1MPDyWPe +wdL1Ky1TTbXUrGQTWd5Ek9vKOjJIoZT9xznMkDCRieYc2JsWisgyYZ+b1p5vvfIGqWPlSFZ9Tu0 9F1LiN/q77TelXYuV+EAkddt6A5vZ8sccoMzsPv6NOYSMdnzl+Wn5m/mVoKR+RtEtNLsrmGWSsOp q1vM87t8Su8ssS+p0UKaGgAGdDqtHhyfvJ2fd3fBwseWUfSHq36V/wCcqf8AqzaN/wAGn/ZRms4N B/OP2/qci83c79K/85U/9WbRv+DT/sox4NB/OP2/qW83c8o/Mj8z/wAy/MAm8i6zaaZfXU0sY9HT Ea4lSdGqqxvFLKvqbFSBXqQc2el0eHH+8jY2693xcfJllL0l9KflXb+bbXyJpVp5riWLV7aIQsqu JGMSbRGUio9ThQNQnx70znNccZyk4+R+9zsIkIi2W5iNqB1xdH/RF2+sxQy6XFE8t4tyiyRelGpZ i6uCpAAyzFxcQ4D6ixlVb8nzj/zjB5UtfNn5xal5tisltNE0Rpbu1tEUCOOa6ZktYgBt+7j5tt3U Z3UIkRAJt1BO77PySHYq7FXYq7FXYq+M/wAyX/wb/wA5b2WsP+7s7q90+7Zz8NILlEt7htqV3EmK vszFXYq7FXYq7FWGfmR+bnkn8vrD6xr16PrkilrXS4KPdTdacY6jitRTmxC++Kvjz80/+clPPvnk TWVq50Py45KfULRj6kqntcTjiz1H7K8V8QeuKsQ/KyLyvP5wtbTzFbC4trn91bc2IjW4JBj9QAjk G+zQ7VIrmB2mcowE4jUh93Vv0wiZgS5Po7zD5J8ta/pa6bf2UfoQrxtWiAjeDbb0io+Hp06eIzht N2jmwz4oyu+d7373dZNPCYoh8/effyj17yuZLu3B1DRgSRdRr8cS9f3yD7P+sPh+XTOz7P7Wxajb 6Z936u90+fSyx78wnP8Azj5r4s/M11o8jUi1OHlED/v63qwA+cbP92YvtDp+PCJjnA/Ydv1NugyV Ou99C5xDuWDeefKvnzV9WiufL+v/AKKskt1jkt+Ui8pQ7sX+AEbqyj6M3XZ2t02LGRlhxyvnQO23 e4eow5JSuJoe8sD81/lL+ZF9pj3Go65Hq7WKPLBbMZGc7VZY+S9WC9O+bnSdsaQTEYQ4OLyAHxou Jl0mWrJuvel/5Q/8rK80ySeXdA85S6P9Qh9W2spZ51RouXx+kEDD4CwqPfbvmz1pw4xxzhxX5Bxc XFLYGnv35Y+RfzR0DXri881+af03p0lq8MVp6s0nGZpI2WSkiqNkRh9OaLW6rBkgBjjwm+4D7nMx Y5g7m3p2axyGGfmF+U3k/wA82pGq23paii8bfVIAFuEpWgLU+NN/st9FDvmZpddkwnbePc1ZMMZ+ 95R/iv8AMz8lbm20/wAzMPMvk2Z/Ssr5XpcIBvxXmSwKr/ut6r2Vxm28HDrAZQ9OTr+P0uNxzxbH cNSeb/zJ/Om9uNM8pk+XPJ0Lelf6g7D13DD7L8DyJZf91oafzNTEYMOjAlP1ZOn7P1qZyymhsHrH 5d/lN5R8i2gXS7f1tRdaXGqTgNcPXqAeiJ/kr9NTvmq1euyZjvtHucjHhEPezPMJuePedvy3/OXV fNF/qGg+c/0ZpM7KbWx9a4X0wI1VhxRSoqwJ2zc6fWaaMAJQuXuDizxZCbB2eNfm7F+Z3lQQaDr3 nKXV21SJmm0+GedgIQwCmVXC7OwIUd6HNtopYcvrhDhrrQcbKJR2JeieSv8AnHD8+9H0SJtG83Q+ XlvlS5udPinuonSR0Hwy+nHxLqPhO5zYtD2r8mvJH5m+V/0x/jjzN/iL659W/R/76eb0PS9X1f75 Vpz5p08MVel4q7FXYq7FXYq+Xv8AnNjya81joXnG3Sv1Vm0y/YCp4SEy25PgquJB82GKva/yY87J 5z/LXRNbaTneNALfUfEXVv8Au5SR25leY9mGKs2xV2KrZJI4o2kkYJGgLO7EBVUCpJJ6AYq+aPzm /wCctrTTWn0L8vmjvL1ax3GvOA9vEehFsh2lYH9tvg8A1cVeMfl95AvPzCvLrzP5l1SW6iNwUueT tJdTyqqsQ7tXgvFgPGmwp1zS9rdrflqjEXMj4OZpdL4m5Oz3O18seXrXSP0PDp0C6ZSjWhjVkb3c NXk3ud842etzSyeIZHi73bDDAR4a2eaeb/yBsLlmvPK9x9QuQeX1OYs0JPX4JN3j/EfLN9ovaIj0 5hfmP0j9XycLNoBzh8noHku+1y50OKLXrV7XWLT9xeB6FZGUCkyOvwsHG549DUds03aOLHHJxYiD jluPLy8v1OXp5SMakPUE9IBBBFQdiDmCDTe841/8pLaHW7bzL5U42OqWkyzvYfZt5+JqyrT+6LrV f5fl1zoNL21xQOLPvGQri6j39/3+9wMujo8UOY6PSB06U9s54uewnzt5H8z69qsV5pXme60W3jgW F7WAyhWcO7GQ+nLGKkMB07Zt9BrsGGBjkxiZvnt5d7iZ8M5m4ypj/wDyqbz9/wBT/f8A/BXP/ZRm d/K+k/1CPyj+pp/K5f55+15z518keZ/y91G01W01SZ2nLiPVrYyW8qTMDzQurFgXQnfl8Qrm90Pa GLVxIrl/CXCz4JYiHv8A+Qeia/NDH5tufO155k0u+s3gGm3Tzt9XufUjZuQkmlUPHwZdh0NQaHfV 9qTgP3YgIyB57bhv04PO7eyZp3KYZ+afm/zN5Z0KGby5okmtanezC1gVAXSF3UlXkRPjYbdqDxYd 83Q6eGWR45cIG7TmmYjYMC8p/kVrGu6ovmj81b1tV1Njyi0YODBEOoWQp8FB/vuP4fEtXM7P2nGE eDAKHf8Aj7y1QwEm5orzX+Rd9pepP5n/ACuvm0HWlq0mlhqWc46lFBqqV/kYFP8AVyODtMSHBnHF Hv8Ax9/NM8BBuGxZB+VP5j+ZPMs9/ovmbQJ9J13R1Q3s3ErbPzNEoGPJWehIA5KQKhu2Ua7RwxgT hK4yZYcplsRuHo2a1yHh35u+SvN1nNrXnD/lYl/omiIFli0yB7gBSEVFiiC3EacpHGwAG5zd6HPi lw4/DEpd+3z5OJmhIXLi2eW/lJ+UXnn829Svtdl1ue0XTjGo127MtzM9ytDHHG5dXrGg5E8vh+Hx zo4QERQFBwSSeb2z/oXX86P/AC8Gq/8AI2+/7Kskh6L+UP5dedPJv6W/xN5wu/Nf1/6v9U+tvO/1 f0fV9Th68s3956i1pT7OKvRcVdirsVdirsVY/wCf/J9l5x8nar5bvKLFqMDRpKRX05R8UUlP8iRV b6MVfLf/ADiz50vvJX5han+XXmGtsmoztDHE/SLU4Dw4jt++Qca9yEpir7ExVK/MnmbQvLOjXGs6 5eR2Om2q8pZ5TT5KoG7M3RVUVJ6Yq+M/zS/PHzr+bWrnyv5Vt5rPy67fDZoaS3CqaerduDRU/wAi vEd+RplWbNDFEymaiGUIGRoc0Nc/846uugI1vqXPX1BaRGFLVtv7tTTmtP5z18BnOw9pInLRj+77 +vv/AB9rsD2eeHY+pV/Io6rofmDWPK2rwSWlzJEl3FBIKCsbem5UjZuYddxUHjke34xy4YZYGwDW 3n/YuhJjMxL2rOSdq7FXYq7FXYq7FXYq7FUt8w6Bp2v6Pc6VqCc7a5XiSPtIw3V0J6Mp3GZGl1M8 GQTjzH2+TXlxicaLxryB5w1r8nPPM+i63yl8v3rKbrgCVKE0ju4V8R0ZR13HUDO3ywx67CJw59P1 H8ebpgZYZ0X1xZXlpfWkN5ZyrPa3CLLBNGQyOjiqspHUEZzE4mJo8w54N7q2RS7FXYq73xVTuLi3 treS4uJFht4VMk00hCoiKKszMdgAOpwxiSaHNBNPlfzv5j8wfnh+Yll5O8qBhoVtKTFKwIQqvwzX 047IgNEB33p9p6Z13Z2iGGNn6zz/AFOtz5eM+T7B8j+TdG8m+V7Hy7o8fCzso+Jc/blkO8ksh7s7 bn7htTNi0J9irsVdirsVdirsVdirsVfLP/OXf5WXENxb/mXoKNHNCY4tbMNVdWQhbe7BG9RtGx/1 PfFWefl3/wA5I+VdQ/KqTzN5mu0ttV0YLbavarT1Z7gqfSaCPbl9YCkgdFIb9la4q+cvNPm3z/8A nr5uCUNnolo1YLRSxtrOIkgSSdPUmYd+p7cV6Yms1mPTw4pn3DqW3FhlkNB695O8l6J5U00Wemx/ vHAN1duB6szDux8B2XoM4LXdoZNTK5cug7vx3u7w4I4xQT/MFvUJbGzluYbqSFGubfl6ExA5oHFG AbrQjqMsjmkImIPplzDEwBIPUNahew2Nhc3s54wWsTzSt4JGpZj9wxw4zOYiP4iB81nLhBPc8w/J Tzn5v8y3mqHV7oXFlaIhjHpojLJKxIAZQtQFQ9a50XbujwYYRMI8MifsH4DgaLNOZNmwHq+cy7F2 KuxV2KuxV2KuxVjXnzyLpnm/SDZ3P7m7hq9leAVaJyO/ijftL/EDNj2d2jLTTsbxPMfjq4+o04yD zeb/AJZ/mj5g/KrXZPKnmyKSTQS9QFq5t+Z/v7c/txP1ZR8x8VQet1Gmx6vGMmM+r8bF1UJyxS4Z PqrTNT0/VLCDUNOuI7qyuVDwXETBkZT3BGczkxygeGQohzgQRYRWRZOxVSurq2tLaW6upUgtoVLz TSMEREUVLMxoABhjEyNDcoJp8v8A5n/mrr/5n65D5E8hQTTadcy+kxQcZL1lNeTV+xbpTl8VNvia nTOp7O7OGL1S+v7v2uvz5+LYcn0j+SX5N6V+Wvlv6uCl1r96FfV9RUGjMKlYoq7iKOu38x+I+A2z jPR8VdirsVdirsVdirsVdirsVSDz3rvlfQ/KWp6h5oaMaGsDx3kUgDCZJFK+iqEjm0leIXvir81d SfTpdTupdPhkt9MedzawyMJJI4WYmNGeihmCbV74q+q/y8tfLEHlOyPlsV06VefqGnqvJ0czH/fl RQ+HQbUzzrtWeY5z4v1D5V5eTv8ATCAgOFkma5yHYq7FWIfm3qBsfy81mRftSxLbge08ixN/wrHN r2Jj4tVHys/Z+txdZKsZSD/nH3TRb+S5rwj4767kYH/IjVYwP+CDZm+0mQnNGPQR+/8AAauz4+gn zenZzrnuxV2KuxV2KuxV2KuxVjnnbyLovm3Tfqt+np3MYJtL1APUiY+Feqn9pe/zocz9B2jk00rj vHqPx1aM+njkG/N4/ovmf8xfyX1w2rr9b0W4fkbVyxtLgDq8T0Jikp12r4gimdkPA12PiHP7R7/x 7nUETwyovpX8vvzc8m+eLZf0ZdCDUgKzaVcEJcKR1KitJF/ykr70O2aHVaDJhO4uPf8Ajk5ePNGX vTXzl578seTtMOoa9eLboa+hAPimmYfsxRjdj+A7kZVp9LPMaiP1Mp5BEbvmXzJ54/Mb87vMcflj y1ZyQ6SzhksENFCKf96L2YbcV60+yDQAM1Cep0eghgF85d/6nX5cxn7n1H+S35IaB+Wmkkxlb3zD eIo1LVGHyJhgrukQbfxbqewGe0vSsVdirsVdirsVdirsVdirsVQup6np+l6fc6jqNwlrY2kbTXNx KeKJGgqzMfYYq+HfzQ/MTzL+dvnmHSNFR4PLtm7fo+2eoUIKh7y5pX42BoB+yPhG5JajU6mGGBnM 7BnjxmZoPQ4Pyv8AK8fk1vK5i5W8g5yXVAJjcU2nr/MO3am3TOGl2xmOfxfs6V3ft73dDSQ4OH7X kehaz5g/KfzbLpWqK0+jXLB5VQfDJGaqlxDU7MKfEv0HsR0uowYu0MAlA+ocvI9x/HmHXY5ywTo8 n0Fp2o2OpWMN9YzLcWlwoeGZDUEH/Pcds4jNhljkYyFSDuYTEhY5KzTQoaPIqnwJAOCOOR3AKmQH VyzQueKyKx8AQTiccgLIKiQPV5t/zkDctD5FijHS5voYm37BJJP1x5vPZwf4Qf6h+8OH2h/dj3p3 +UNt9X/LnRkoQXjklNRQ/vJnf9TbZjdtyvVT+H3Bs0Y/dBmOalynYq7FXYq7FXYq7FXYq7FUHq+j 6ZrFhLYanbJdWkwo8Tjb2II3Vh2I3GXYNRPFLigaLCeMSFF4R50/JTXdCnOq+VpJby1ib1FjjJF5 ARuCvGhenYr8Xt3zstB25jzenJ6Z/Yf1fF1OfRShvHcJFJ5F/M7zRY3PmTUI7m8eKMFHvZHa6mRe 0SvV2CjcdK/s1OZsu0NNimMVgHy5D39zQMGSQ4qfTP8AziV518hXnlX/AA3p1lBpPmi0XnqUIr6l 6F2+sq7lnfr8SV+A9AFIzYtD6BxV2KuxV2KuxV2KuxV2KuxV2KvjX/nI7847/wA+eYk/L/ye7XGj QTiO4kgNRfXSnswNDBEeh6Egt0CnIZMkYRMpGgExiSaDJvy88h2PlDRRbJxl1G4o9/dAfbcDZVPX gn7P3988/wC0+0Zamd8oDkP0+93um04xx82vOP5meVvKoMV7OZ7+lVsLejy+3PcKg/1j8q4dF2Tm 1G4HDDvP6O9c2qhj25l47r/mfzt+ak6aXovlxrmO3f1I47SF7meOuxLzAURT32UZ1/Z/ZcNNdEkn n3fJ1OfUnJzDFvNXl7z35Lu/8P8AmCG60uQoLhbNpaxMsg+2nps0TVpQkHqKHcZseEXdbtFsbySH Yqu9ST0/T5H068uFTx5UpWnjir2HyZ+T/wCfGr+U9O1/yreSS6VdKzWkEOo+iQI5HRlMcjxoPjjI pXKMmmxT+qMT7wGcckhyJCOudA/5yq0IfvtM1G4VDuscNvqFadqwidj07HMXJ2Tpp84D4bfc2x1W QdUvl/Oj8y9CmEPmHQ0iPQpc209pKT1/aNP+FzCyezunly4o/H9bbHX5Bzop1pv/ADkboslBqWkX FsfG3dJx8/j9HNfl9mZfwTB94r9bkR7RHUMv0r82/wAvtSoserx28ndLoNb0/wBlIFT7mzWZuxdT D+HiHlv9nP7HIhrMcutMst7i3uIlmt5Umib7MkbBlPyIqM1s8coGpAg+bkxkDuFTIJdirsVdirsV dirH/PXm608q+XZ9Umo8391ZwH/dk7A8V+Qpyb2GZ/Z2iOoyiP8AD19zRqMwxxvq+cfL9n+Yf19/ Omi29ytzYytfnU41CgPyLOyhqCTqeSqDt1FM7+WoxYyIGQBOwDoxjlIE0+1/yK/O7S/zJ0IpP6dp 5nsVA1LT1OzrsPrEAO5jYncdVOx/ZJyGt6jirsVdirsVdirsVdirsVfO/wDzlT+dh8vaa/kfQJ6a 7qUf+5S4jPxWtrINoxTpJMD8wm/7SnFWA/k3+W48v6eNZ1OL/c1ep8EbDe3hbfhQ9Hbq3h08a8V2 52n4svCgfRHn5n9Q/HR3Gi03COI8yl/5qfm5LYTt5d8sP6mqM3pXd3GOZiY7elFStZa9T+z0+10v 7I7G4gMmUbdI/pP6mGr1demPzZX+UH/OJcl6I/MP5lNKZJj6sehB2EjV35XkoPKp68FNfFuq51wF OqfT2j6Jo+i2Een6RZQafYxf3dtbRrFGPfigAqe5xVj35mflh5Y/MLy++k61CBKgLWGoIB69tKf2 o2PY0HJejD6CFXwV+Z35WeaPy715tL1qHlbyFmsNRjB9C4jBoGU/st/Mh3X5UJVYdirsVfb3/OHX mKPUfyrfSS9Z9EvpovTrUiK4/wBIRvYM7yD6MVe7YqsmhhniaKaNZYnFHjcBlI8CDtirDde/JX8q Ne5HUvK1g0j15zQRC1lJPcyW/pOT9OKvMfMn/OF/5eXwZ9D1K+0aY/ZRit3AP9g/CT/krirzTVv+ cTvzh8tSPdeVNVh1EDoLS4exuWp4rIVj/wCSpyGTHGYqQBHmmMiNwxq58/fnT5ImW382aVMYgeIO oWzRch0pHcRhUfp1+LNVn7C02TcDhPl+rk5UNbkj1tlGgf8AOQHlS94x6rBNpUx6uR68P/BIOf8A wmaPUezmWO+MiX2H9X2uZj7QifqFPRNK1vR9Wg9fTL2G9iHVoHV6V7NQ7H2OaTPpsmI1OJi5sMkZ cjaNyhm7FXYqlGq+VNC1fULe91S2F69opW2hn+OFCxqzekfhLGg3avTbMzDrsuKBhA8N8yOfz/U0 zwRlKzumyqqqFUAKBQKNgAO2YhJJttp84edta0nyl+Y0Gu+Qr/0NQtH9W4WAfuI5wfiRSDxdJBUO lOPUd6D0PsqWc4R4w36d5Hm6HUiAn6H2P+TH5xaN+ZXlwXcIW11u0ATVdM5VMbnpJHXcxP8Asnt0 PTNk470PFXYq7FXYq7FXYqwf84fzP078uvJtxrU/GXUJawaTZMf765YbVA34IPic+G3UjFXyR+U/ lPUvNnmK589+ZXa65XDzRPKB/pF2Wq0h7cIz0AFK7D7NM5/tztLwo+HA+uXPyH6z+OjnaLT8R4jy DOPzf89t5Y8v+hZScdX1HlHbEdY0A/eS/MVovufbNJ2J2f4+TikPRD7T3fr/AGubrM/BGhzKf/8A OK/5HQWtjb/mF5ltxLqV3+90K2mBPoxHpdMD1kk6x+C/F1O3dukfTGKuxV2KpL5v8neXfN+hz6J5 gs0vLCffi2zxuPsyROPiR17EfqxV8N/nR/zj/wCZfy5umvYeep+VpXpb6mq/FFyPwx3Kj7Ddg32W 7UO2KvKcVeu/84z/AJoQeRvPwi1KX0tC11Vs7+RjRIpA1YJ29kZipJ6KxPbFX3sCCKjcHocVbxV2 KuxV2Kqc9vBcQvBcRrNDIOMkUihlYHsVNQcVeX+cP+cZ/wAovM3OQ6QNIvH/AOPrSmFsQf8AjDRo D/yLrirw/wA0f84fef8AQZ21DyRrKal6dTHEWNhejwVH5GJvmXT5ZGURIURYSCRyYf8A8rL/ADW8 jXo03zjpUslK8Y7+JreVlXasU6rxdf8AKo3zzT6rsHBk3j6D5cvl+qnLx62cee7P/LX5zeSdbKxS XJ0y7bb0byiKT/kygmP5VIPtnO6rsLPi3iOOPlz+X6rc/HrYS57FnSsrKGUhlIqCNwRmmIINFywW 8CWLebfLnmTzCG0+PVV0jRm2n+rK0lzOpG6s7FFjXtRa17nembXRavBp/VwmeTz2A93P5uLmxTnt dRSjR/yO8g6cVea2l1GVTUPdyEiv+pH6aEfMHL83tBqJ/TUfcP12whocY57sS80+XfMH5YeaLfz3 5JdorSKStxbAExxBz8UUigjlbydP8n58Tm97H7WGccE/7wf7L9vf8/dhavS8BsfT9z6x/Kf81NB/ MbyzHq2nEQXsVI9U0xmDSW03genJHpVHpuPAggb1wmbYq7FXYq7FVK6ure0tprq5lWG2gRpZ5nIV ERByZmJ2AAFTir4W89eZtV/PD81xHas8Xlyw5RWXb0bJGHqTsDt6s7U/4Vei1zE12rjp8Rmfh5lt w4jOVB7Zp2n2enWMFjZxiG1tkWKGMdAqig655xmyyyTM5G5F6CEREUOTxPS9Gb81/wA/YNJlLNo1 tMUuKbUsrEky0I6es9QD25jPQ+zNL4OCMevM+8/inQ6nJxzJfdcUUUUSRRIscUahY41AVVVRQAAb AAZntC/FXYq7FXYqo3dnaXtrLaXkKXFrOpjnglUOjowoVZWqCD74q+T/AM7f+cTri0a48wfl7E09 pvJdeX6lpY+5NqTu6/8AFZ+Ifs16BV8xyRyRSNHIpSRCVdGBDBgaEEHoRiqLv9b1nUEjS/v7m7SF VjhWeV5QiIOKqocmgUbADFU/8k/mp588l38N1oOrzwxREcrCR2ktJFH7MkDHgRTaoow7EYq/Qb8v POFv5y8laR5mt4/RXUoBI8NeXpyqxjlQNtULIjCuKsixV2KuxV2KuxVB6rpGlavZSWGq2cF/ZS7S W1zGssbfNHBGKvD/AD5/zh75B1r1Lny1PL5cvmqREtbizY/8YnYOlT/K9B/LirxDWPy7/Pr8pmea GKW90OI8nuLOt5ZcQakvERzhHixVfnmJqdDhzj1xvz6/Ntx5pw5FNvKv/OQWi3fCDzDbNp0/Q3UI aWAmnUqKyJv2+L55zWr9nJDfEeLyPP58vudhi7QB2kKepWGo6fqNst1YXMd1bP8AZmhcOp+lSc57 LhnjPDMGJ83YRmJCwbROVMlk0MU8LwzIJIZVKSRsKqysKEEHqCMlCZiQRsQggEUXiepWHmf8m/OM PnDyiS+jSH07i3erxhHYFrafuY2oOD9QadwCe77J7UGojwy2yD7fN0mq0xxmx9L7C/Lr8wvL/n3y zBr+iyExSfBc2z/3tvOAC8Ug8RXY9CNxm5cRk+KuxV2Kvm7/AJzA/NOTTNHg8haVKRf6ugn1ZkJ5 JacqJDt3mdTyH8op0bFUg/KjyOvlfy2n1iMDVr8LNfsaVXb4Ia/8Vg7/AOVXOB7Z1/j5aH0R5fpL vNJg4I2eZZRr1/8Ao/Q9Rv8A/lktZp/+RUZf+Ga7SwE8sInkZAfa35ZVEnyYp/zg/o0Ump+atccV mghtbKJu/Gd3ll/GBM9PecfWeKuxV2KuxV2KuxV2KvOfPf5Aflj521UatrGmtHqRFJ7m0kMDTdKG Xjs7CmzUr+GKsb/6FD/Jv/lmvv8ApLb+mKu/6FD/ACb/AOWa+/6S2/pir0/yZ5Q0byf5as/LmirI mmWPqfV1lcyOPWleZ6sevxyHFU7xV2KuxV2KuxV2KuxV2KvMfzC/5x1/LLzr6lzcaf8AovVn3/Se ncYJGbrWSOhikr3LLy9xir5080f846/nH+XVzJqnlK6k1nT1NTLpwYXHFenrWR58/kvMZTmwQyx4 ZgSDKEzE2DSH8r/85ABZRZea7IwSoeD3lup+FgaH1YT8Qp34/wDA5zes9nBzwn4H9B/X83Y4u0Ok w9b0nWdK1e0W80y7iu7ZukkTBgD4Hup9jvnM59PkxS4ZgxLsYZIyFg2q31jaX9pNZ3kKz2s6lJoX FVZT2ORxZZY5CUTUgmURIUeTxy2svzN/KLzbcaj5Eil1DS9RRkNuIZLqMqDVUnij35Rk/A+3z3YZ 3Wg7YxZYXOQhMc7NfK/wHS59JKMthYZVB/zlL+eWlMZNc8owTWiEmRzaXlsaClaS83jp/sTmxx6r FM1GUZe4guPLHIcwQ9C8jf8AOYH5ea7NFaa9bzeW7uUhRLMwns+RNADOgVl+bxhR3OXsHulvcW9z BHcW0qTW8yh4Zo2Do6MKqysKggjoRir849U/MZtX/M6688azZnUTNdNcxWTSekFVPhtk5cZPhhVV FKb0yjU4pZMZjE8JPVnjkIyBItnP/Qyn/fuf9Pv/AF4zm/8AQx/tn+x/487D+Uv6P2/sQWuf85A/ pXRNQ0z9A+j9etprb1vrfLh60ZTlx9Fa05VpXLcHs74eSM+O+Eg/T3f5zGev4okcPPz/AGPU/wDn B7UUbTvNmmkgPFNaXCjuRIsqH7vTH350zrn1DirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsV dirsVdirsVdirBPzB/JP8uvPivJremKmpFaJqtofQul2oKuopJTsJFYYq+afOP8AzjN+afkK7fWP JF7LrNjGeX+iVjvVUb0ktqlZh/qcq/yjK8uKGSPDIAjzZRkYmwl/lf8AP1opf0f5vsmgnjb05LyB CCrA0PqwH4lI78f+BzmtZ7OA74T8D+g/r+bsMPaHSfzet6TrOlavZreaZdR3ds3SSJgwB8D3B9jv nMZ9PkxS4ZgxLsoZIyFg2jMpZsJ87flR5Z8zxSTLCthqxBKX0Kgcm/4uQUEg9/te+bjQds5cBAke KHcf0H8BxM+kjPlsWPfkJ+aPmL8t/PS+QfNEjHQbycWyo7FktbiZh6U8LH/dMpYcxsN+WxBr3OHN HLATibiXSzgYmjzfWP8AyrzyB/1LOlf9INt/zRlrF3/KvPIH/Us6V/0g23/NGKu/5V55A/6lnSv+ kG2/5oxVHaV5Z8uaRJJJpOlWenySgLK9rbxQMyg1AYxqtRiqZYq7FXYq7FXYq7FXYq7FXYq7FXYq 7FXYq7FXYq7FXYq7FXYq7FXYq7FXYqwT8xvyU/L/AM/xFtbsBHqQXjFq1pSG6XsKuARIB2EisB2x V856t/ziZ+bHl/VpT5M1qO4sZhtcpcPYT0B2SVFJBp4hj8hleTFCYqQEh5i2UZGPI0of9C+f85Nf 9XeT/uLS/wDNWUfkNP8A6nD/AEo/Uz8ef84/N3/Qvn/OTX/V3k/7i0v/ADVj+Q0/+pw/0o/Uvjz/ AJx+aX3n/OK/576ldpcalLBdTgKguLi/MzqoNQAzVagqTTMjHijAVECI8tmEpEmybf/Z + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eJzdffle8sqy6H0B3gFUFGQwEyEBB2YHUEFwwJlJRJlkWGuv88d59lvVSUgICWmQ75x1716/7aed +Tnd1dXXN1fF6iuVQsjmot0J8mHG7vN70qFWbDEYxN2l1n3e70/FkhE2+G7+bZcMMdEqeS29qx7vW +aNwZ9GPkEXmYw7d951e565vTrN/t80NbpTPptqB1Mug1apPw+K+2X5sLXs7UJvAwciAfMKKbZWJ8 +1J28hOepwbTf7PTbqcF/YPyo6OYZzi3AU0GKwuOzzk1rbO4TjrK8jB3DnAy/CLwYluBNQYInDL6V +GTSmvVZ/UhwNGq3xOD3oDkbjmDv9T63vvqy14UnNXW11u4O/3alurfHtgtVG3nKdbgsW1qtN3FFc +ZfKcfyOv3o7hHXgdf8fm6Nt5D1rKrckEoIKBESXpy2reOB9Aqv7ne7pptTsEw4CIF78ycqXVG3YB +KWRRPCCFl0XtX7UHwEOehqJsmJdlGfAmhiMy9BMlPiwwjAC/RMgj5Q193a2/Oq2/Y+6rQb+lLC45 +mpQ7/9XCqRg3xzBK68202xrd9jsTWASHTbKy4stBs9VVm8i7uW6NLJT8x+o/lQ6V2qjdmsBODbrT +CaEUSZvhator1P5pjfQJroetfmVwR+ALiUJYFMWIWxQY5Rc2HHFLouyOMoA6ScEgC8tUp2TJtKwy +No6E42gTRHHvi7Az16NOu9OPsYLoDnHYint2Ouo09S2Lcm5J+UHWEZYM/5e1/ysAw9onk1Zf2eZs +v5ke9BDJY6Re2Ng+7Hp30FaezX4nT2C66VCBlfz9BvtRHHX6CIPrijyR3ordKTw6HQ2mw/P+x8Dl +U05lEScd9a/78MunOzWajj/dlcGgC6dtroP6SBkFH44mxt5L54C+9uPrA601drrW7Xbao9rws9Ow +Gt7i+Wweu3eXTgjbNGrpY5A/Z/8ufbPcIKi0gnL+0WxwizeWz/BPrz7odsY9fWBDi/67E0XARnVb +/eZ4Nozypw5YofOX1rh8sEzrA1idYWtJa7b/V6s7GBrQOGup9Zvu+9poaDcsQvfR6TcBK+VpZ9LS +N3rQGyIDd5c/a0NsXuipnBA4PcbzEQotPzgrvyArT5ARTv7ptsaug3x/8Hef/OGOuXxPgJLatDt5 +8bsPrmq9ljvoOih3gEm3tC6M+9rFqDzwG367cWn8MO/SuCLjfvgH/riAX76g6W+34L50P70w7ia0 +Pty4kIE9NF0HxRoA54673AcwLfxLAIQV6eA5rrFY6wI7axEginWXnbhBkMauhdZiY/bGt+XTYmoG +gjbTKvgtwHBGpC6skHRYZyNZRnmkHBsc5v+ozTCQqdFmcBVWTV6CclJzed8OtL9hr/GvTgOxURv9 +o/z9cFm4ArlI/vBtN9W+QC3lCQzedvv+0+v2oUMIf/SBgvxAQt436+d/1bpTtYPsPjiHOeceT/4Z +qk8PkqNRzQqCXmtSawLgvweAXQ+Av2qjTq3eRT1o/G8A4n8dhv9JLMT1Po3PTrc5avXVPiayNXQE +mTXq1KcTBDRIHgUX1xIb15Dn4ZH4H95Y6iXNQ4zvOIPp2+2P3xpg5wx6cZvOBpi5/9lt0NawuB3k +QewvuuUBHY7/rYvDNQRpyHFNKoC1A7leEYQ44areIeYk++9DlXEVi8TQHTS+W03n9fXB6vv3rU2D +/k9SwQq84N98WCiRNL/28cff/2sScNztNP6/EH9kIeXBdNRoEa/Tv3JN8yD/4wjizFN2cNOqdf81 +pP6PpcBzXM3MAfjvWs1/rFbzd6c5+XRcEScyYVbk2H/ZilTgF1f12eq0P53VbVYSwgLL/9uWpUG/ +uK76YALqYaH1MVEciM4rdB+kBoN/z9IWF/AvEbYgm/4fl7WbEzgbAt7ggMAWRsVd8pxl3TM/BnFA +uwu1fntaa7fcxcFwOjSRLnmhOGqNW6O/Wu5K6z8Td7bZmdTqnW5norJoMRLhI7MJZHdtNKkPaqOm +u4HBAjfrHmmKnWPP9qilrdexb31GGRFO4CT7rpwOgGNPAwCOfesLQnyx2zzp4vPJqNYfD2uwr41/ +YLpO0z3u/Fdrtk0a2mX3sDZsjeBhb9olfjdNWjMax8RO19PJcDpx39TGk9ao81+ko1sPtajgRebe +uWyNPx3eYOb2X6Mldwd61SYtWHmL2EhLO3/3QaUfAHBtdAOrx/3pstXsTHuGCV8MJ9+KPNX4CqCC +kOHEbbB/TEdCIxfAvIr4qIb55rATNkFb63bGpqZebfytolnUMDasNXWzJHnuTk4ngxn2tP1nDAeM +cX/MQB6RfqG/Wo0JkEy91q31G4t7PfcKYKzb6bfcEzhrdD3Hk9HgWzv7rE3nRrczBJJE581/4Dy0 +AW0Obwy1Uz/4qzUaooN0xl4ANY3BqNlqLm6D++BqMJl7vCrvcRhOp5YDne8djJqjcVhx4JgV74Vu +tX5/MJmtXdnlhU4aHsbjeQ662HHabzh0AXkHJ6ZJdQSML/9nGNYlpdXo0GEwbE4dOoydRmgM5tmY +qQOSzvIOgz6QyEShw6VzqT112iasyaonMOJ5lsQzNj1H5p7RiHXHueNnufNDZd+X7zp0AjY038/A +lc1dP2vN1qi1fLwuiyezNlnaCXA3Ia6bpX16eGzHRkZu1a/fagPj/2v5YPUOnsF5CWYGvPVXq2s/ +yEd/Eh5P6+MlC8Muze5w9DGY8RcrKlO69UDbUbUDS3S3e9/hXm30PR58fIQVdZe6+0jX+yl6TwZD +6r5d0LhnCLDpDPyh1TRDTdHdADVF7xnUFH3noF7ce+xLNJx6bbSMuLHfyBA9dOg6BGHQ6X8MnGYe +GVZi3YUsRO0T5iK2C262PlCKGsxZa2ZMOn8N6hNMZHLsqIiij0532RHDjmMMdjr0mZMfVr0ao2Z4 +Ahq5ppFZnSDsM240+ssOo9Jn2G38Y9BrFvGmdKt1W+G/KPt9LiE77DUYtbWxlvZRx7Fi8NhlOBh3 +lhMZ9oL9Hn4ORv+lcraoXb/BqIO5YA4DdkfhmYJUx3Sx5X01WTkcTJYcG+ypMztrOgNadFAPsEe9 +M+nVhmYRadebrKI2Vl6i6DpYTuGzfnXVW7qsY7M17rT7TugeDkdhYkItoxbs9AlMbNxaxhtJt7/p +uhndQksGc2Qi0Enfs2iUDwuWjAm6dTCJcE4cROSIU3eDOGClsLVsmnWeSQNWdOqqC4OozNl1NeJI +ZG27GZBkxaewS1NJC1nCFqGTs7Y/nnTVXsNh035G7KbOOOtnPyB0wZPZtfLxL/RF2m+N5lyCS6dX ++muGgiHlyGoGEL/dFjGVdJM4PnPZYAJRUuvsRpuKyryyO504WW3icNZHoA6Oxi0cbWS/YOw5/u4M +gVv2v504HCoEcNzbluu7GNQxvcywOt0TA52yxbL72mS8zvlP1D4FtKIxexGz2IiPa6kHRX3rdFRr +ooAgbyk+FTtDZPaO4jc4uFP8ASk7f4AKumrfV3RrybZP2c4HoHRLo/WfVq3/G6P1T+ORwRGWuGFY +o9eqP9D9Be5On7gcUCpbuWwWqc/3ZEg3d69B/1Z2Cq6hmMm9pYmN1TG6Lq3IU+uueT0NEKHrE8BI +14aKA7TTWmKyaOOcItbg6FQ+p716v9bpLpGD2juYtwz/5pZKV61zDojqvlXHd5yhIQncmcHffSWR +J9/pNw0kTvuamdI5zkols3mZpMcn64O/dFtu+atp3arV4V2+0/NvlaY1fc+5iOOEmFtf1r17yzZ3 +VPtndWzOv7UaMuffXQWX+ObKqDS9tAIm8U16RF4O+oPG52jQa1mh09r5s+xdM1KFpRuCI9gjVaCa +2xK1y4+i8gJIHudDXhl1epfoUXDuCvydsich9tRSA37GDQEl50sNc51vEiUGQajMwnN2Jrh5efct +BzeM9sI1UdtzgHhA39+D0XdhpqKu9l7KyU1k++bNuqBWlrphtNdS6MAoLPcdzfW9cTBR5jqvAIMR +Q8voWQG4019iAWtds716q3meThdHxILUpOjSU16e1hGNg/7kBo1EZ3hmqh+FCFW0m4ohNkelHi0Z +C54rmtKVIdNmKbLNL17W/rNED6UaodO31Ulp3lf01JTJb079OmqdqtKp6JyrD6Hqt2WH0ILD6xVj +LM1R4Us2RoN6baLUjc3MDuihrmqmdppNDtkc3hrW+pp7XJOx5btTJGGFmCcLHjv1cWHQqC3OAA/J +wVGsCJWm9GcAXqOju/4NM2b7jYEerxX0B6TUQufSM00eHpHyHKRdOBANi+daheLik2L7Y7HxoWZO +LcDpu53GDKz4ojmgF77M12Lgjik1Griz2jMX2UljC5oYyXL6/FyKZGDcJlbteAPHYmgnMfY/bGXy +F42PnL/EJRM/qVefcHL9fhy955lmvBXz9smf8fPx4CP3Xpju5TyBJ8bUFji5qx8wXHcSSd5UcpVE +bPgii49i79HlPQy95wZkMJgvPk6Wp7e+ZL/eHqvvHP/0kvn77PZodFzrn3bvvuqp98tSMhnssy/x +E/ZOymw3p9lM+uz5hQwVOD4aeoUxv1MKnHxOeAKIy0sBygqAHNWTweHVRSIvj4+ls8P7cG7wKNy5 +vNnR8yOTecxVK7mj5FHDCp7jof9wCBOchdLcztF7JjxN3Cajz29VsTpki7nd0kNXna+R3M18DP1s +snIxmeptLq/Smn/wT2Cci2kmfP15OBoJmQ7DiVvDxN1eeUfpzjLFWs4/2a1lgy9XBykxyG2p47wP +EqNRfFwBeIPnDBv6iunIiqdu0i2XdyzlJnfc6+B7Vyy19gMRT9p/LRyWYpXA0Y34OXphxodhviBz +geNTz64w5saXAM2dFD4YS6eC9BP/gj/9fqa5W83MT/o8erl8LpFJgcbmp4V3o6+R2Plr2HLS152r +gu2kYid/6rWa1OUdjQ49vtGY9Y6s1jqWiuyzsMXF9q0mHe8FL0M2k0Y+fbW9apZM6vIurFXwPwcO +uXbJctKt3KuwfTvsFqwmZXKpfMJqUpcXphW3d/oj/5E1goXqK5P7uCpbT3rqOdxlL94qlpOennEV +Mime/UUEc4/HlXcyKbufrGfnd/V+9Dw9LuCk8cU99VX5py7rh0lDQX1SmEUhpQKTUtda3NszTRqJ +9N6GdpO+jV4++xWbSRM1MZrbYV1e07QqKZ2839hNerbD++LP1pMeel7G25+tG9OkwGGUaUtp//HP +Tq9gNWkg3o0d20wa+dw/eUxcW08qVKtMTmaugMas1rqVa0d3bnrctdWkTO7lJWczqbjt/e5fpk2T +wizatDXmNPh+Zz3pKZPca/miVUv0TraDJ+qk1ZDPhN6TK+Ho2aWcVTb7/J2bW+vjIVOIhlic9HBh +0rPWQLyphTiYlAmZV1p4eqyZJiWzqGuNfjdzr3aTZpjL/RfZetLzn1jia3R1YzlpOb7Hw6m0Xqu4 +nW+VecZm0qcQU37zb1lPmj9rXT09+n36pC6vYdq7vX7bdtLyZ+m9bjfpKXOXHx5aTw== + + + WuC9Lu9tLnF4ZLnWu+HFlu2kd2+nWxO7Sa+Z+5N8Rp8U1mKY9vI4+/ZaenmxnPTl+vvcdtKvaqSZ +s5n0Gbgl8zLuhqzXevU17F3LEm856dt5qG876chbDnj0SVGKGc/qLZPt9C4sJ5WuQluexEsoC5Py +YfOhmb5F39RJ67zfdGhcXv9jobZPpuX2jn1n82stMO/7sSROemyaFIb9+tGYvnhgnnQ82D1SJ52c +BGBf5tfqea49+ZVJU1X2fJ4VBkfj22MPTppY5EnnIW2lh6xpUsBY/GxLVKY9YfMhEysMDoUrRdLw +O7F0fn7SndGoVu/jpCnzSkfJ1kCj3hTQmFmUR75iqqQ5iZXCJgRvDVrvFUWmtmpv4jxIZ7e7r4OY +1VMikSNn1RLbu7N7+5M5e/dObZ8C683s2jyFHdgNpL0qt2RaX62o6bkosW8a3ONvyfy0/7n1YPs0 +WjyPPetPF3Zf4vZv3m3flj5rr3u2T5Pc7mPD6qmqwxQC/RPO9u1C/fojbvv0eqtRP7N5Kp3tnh3e +jjWMfez9yKa3bwMdTT39YLdi5qf1i3Lf9uldJvA90p8uYOzeWz/w2L59/5yJHdk+ffe+RnesnqoY ++5oUh2e2b3/fcamS7dPed+741e4poKoUj8wwtvj8ghOOH2yfNvr1csHu6a5n9/x53x5ju9nkZb1l ++/YFd7LF2j1Nergdf8wWY5EzJnu0r6065oubznSgUhqfqE/T4UPT08r76X7S+FQI3iBDKSnGXDq0 +nwbdcjJ8fUm3Pyvo1EseHctnO0hZ9z7VWj5pxGzMvvFD4u7jtpysVLz3hEUlK5dNIVsbPXkDqcH4 +Sm8Du7I2etwjfC7GSp4rwsw8+/k46wlmbu49wbvXsif41qx4fE/+Kf5WBBL8TntC+bfIolFYbSdL +fFkCqNMBsE4H3+JOVP5AS3yf82h25YuUe5s81xLxIbuVuQhsR7Sl7faSg8wrkOm2vMXtHRWPM639 +rJecOzRnnjQsWvdzKT3R2pKX9yT9jmPpp6pjPzDD6js333o/l9e257730DNwHFHcpl0L2GLRG/8L +xYg7fT7+RtHPe925rFGsRdxGod6gGHHvvB5ua/22e7n0x4V0cHnRisKf+9vJ6GOXV2xkPwjHj0OF +Tpgx101Wkv0ccxER9hWyQfcHWMsRThe84lZVuMw+Nn4+DjpHdb/4KBbOVLs5ujuaCeB0cvBz60cO +s7glft/JU3c5eGhLv9AAt5WrhY1eBVvwmFz+sGgCz3I3hKvMuxVwhFvq4FXfqMA73RFpgDstbT8a +dH478KSzOWKxxV31ZjlwQGPK1l7l72jAy2ZvczPcZZLl4PcODFCqHnS2Y8G5CQKHZhqLGUBh9yKv +mY9KhkeQBVzaob5SNnjLhvRJR1M+zVBMCjr//LREO15z0kBsMMnipEOCFoabJj7Tn8Kbui+gah4P +M9lGsSJqbsX2NNuoth6UNo2P5zPnzSPQlHLTbjReui6ib5GbPb3B38AI/5bPAergdy59EiuTbTdY +FuPA8XF2D6At7yOMYbLq46GvOVZdNfMORmWlbW83ebt9hFoBs5Usdz2jXFa6OVAHvWr8BI6LuwOY +BYWZOPGxp+qLO82MojYDZKmDz1bGq/wAOriHwYqiam3BfLMtIcvIoJMhN7+MjMGrQJbhNfzAmWPv +P8WYQbTOgfezEnDkVC4Fr86fWYFnAdy+LXC4FhW8MQ14hEIJVaojXkh2y53q42m7b7tg+HGjLFfx +3VgsF4yrwvLlulbZjb2tNUlF5ckLu3Fa7CERt/EgbStcR7wgauyddCyf3hbBctr1kh/c3glzjoCc +z4YqaZyvKELnpwzsCxhId5T7S0F8A3Y/9ZVjWDnyleATj6jB7fpmvosK04Rd9Xq1H8K+eiCJy2Au +AhF7H43rsE3xEC0CXXSn7fT55zcI1LVxFYWoJz/++oDoCORSj/IF+i3nULgSAi042o0VR5udympw +aMYyM3xNr8fRsgjNqY4RVSJb4+Q0v4sz31jufvb5emLaq8jwQC6a9oqwd5fXlsHPjXjnoRhR/VF7 +yCCCzmx3/zXL78Tzhbm92t6z3KtWMbyr7osFxk5ipcvNYCwToNzJXZfKD615w2sWHQX3Jvm6Okgu +LwIVpgXKASSwWatWIFnISic8MU4gDQJHugpBWIFyXi6WgJcOPy3F2K6uihhPL3FeamC6vBbnt7xE +I6lzCyLf+fSSfbE8vzkrxcpi43Xd6omMqAbW5sZzeZURT3zZPBUpGYTMpWzNI2G5CmOenTqiw5jO +nU+yVv3mUG2giNrWJbcci3he5mhCXzq8PTmdLX2ojy1VdvcuTyvPX02GTT23M+Gb26Ae7iczw1C3 +I50nqbLSSiYtV2PnRnwYL5dxLu8cITrrWd/SZHW9zeVdOuJ0M5rgTIp9yx6qEY/q+/o5sKJa7HyK +3v0LM082SXYa82JuXz63N70v8s6m90Wmsm5W2RdppMhSJ5UGjVCCVFXtOrXhtM1TXWt1eZeqXTRM +St3u07uB7eYAT17nGN4tCJmlqHR5nY/hiK3t7J39BpUmHQaQSafBroLK+hilmKOWvbJhfmsSgzN7 +n2BnckxlXNKpsWe6GutAY7pqb6lscKmHT7PSaYUMl8HosN79yQmVNbn0aJowdkLFPuiM5zPdeP4t +xqpbu5vB2PGYjvXMrKlFDV3RYYAcTsv9lSxHW5BWtpGtzQYEqTpcCSQlwmsNFBVfoQDpbUR19uct +bDulun1moVQv8Y/NLOxyfD70dKMNe+hLRl89Ye5lXE+lP6Nnw0w+/5PSgjVk0q9zprlXyxJkuLz0 +RjjJFrIg55dx34EBuLwWODmzwcnX+Yp7pQHnMqd5auBNHNSSleSey8u9TLzUJGBlZpuWu2hk0/iU +bHdjEtijBc5FsxuYg3C7qgfIaN3M8eQTX2ZixSDWJ75PbhZ7XUUu2nD58+UuNKOmREvOq7vQiAZr +YyAiAokT7TcIJAxu5k9WtY97eyP8hL1YMGcoXWiWnt4LkxNtTe8LvxPz7ZC9Aj7m7ESjON0wYtgs +m/XxFnbf8XT3LlZ3odlgbN6JtjbG5B9m8bys46/qXVC40Fy0QPG/caGpUR4FKDsn2sp4iphAAilG +QfNzvpI5igezgcI561qmOqgpJ9eGIOJJrDixCyLmkc6zlB5FZ/89UOD2SttkoOR52hnmTT4um2NB +ZTKTUwkjvkxTeZqDhj+WSxX+5DbmM+0V6JbWrnT/LuECdhjzbwpjFnJ4HcI+ufXyixHedRgAgPSx +9/NgC9JcJNERKPNpowXJZO8jUAvi1tYba61Pz+2fxypiZUtZ1j5vC1MfyWc7btLQdT72ULY9uusE +3k6LPTb7Mj416fxrBHPSALdg1o+s+RitzEXCPqDWLubtdEtZiTAe0YTWHE4voo0/uatc0u2+E9r8 +PmcPPM25I7Sx4M2jXd+8hwRWuPwQ0x5h3ES/brj9msb8C4FxC4pw0UpfMiJtlM48noHGLGIfrz9L +Ylen5T6toHN5KUQd7n7lN+GmmY08B+MqLNPrwDJxPDgvjrFCpxEtnBqob/p1Xcflndd20sARYpTH +giJ95OGWGCmEJ//2bIy/HRjcjJJpIyPAAFZXeHAtNioPwugQIaTkTrd4XjZhqyBIgUX/prpIrLBb +gaVgrk1w9fXNPIomwlj0TK4lX+4GxFzZEI0FFnmN0S9AMiHnA8eOfBPR5hjlmQsbu+hNF8SibeAY +xZL9hilnf6WIRxoenI9W2jU7fzLAvWn75eFuo1kEAKHJ8WCVRUB3crLPz2YHqi3aXN5l5A7bvREj +BuULUMeiH3HN9Vkn8Gj1lSvwvjsr7+HaNLZW7p21WCYV3DiiTbThN7EGZGEBIpZdXqtMZmAuBUqc +0IhlktO7Ce8hws3ScRh6sfz8s5JYdjl4IhBG4ddiWeEw9xsSywBSyEos28Qslh++2tblatlzth4S +WN+mxPLzD3KYTfgRCbJsxbKuw6wqlq3yuezEMkpkLcePTiy/jZaI5ZiPnlvSiGUA7snJWG9Nbg8s +rSS7wOrDg0Vm/9JsRf1sl+O2PPlttHG5/7BZuf82WkHu2/mr5rdb3KgljnlDNLa9YTw7Xx9usrMj +ZEY7NA4/Jb7vfPZpMl2tvH5c6qGaJF4/l3cxMv9Q3azXD/OUdL+fDcGumEqKKoSZ9VhERqhSSY1k +kXr43lq+k2pkhNqtCIDSOpUNbkXAmE1oGGGcmAP/zoqMJYtSzn6VXiLTkG59bFKvl2baL0tRQtwd +OKrXKuXMPL3OZz/18OboZFhMTCdYnJf7qtjSdYpUrPMafEiWgw+D5E2/nk+FpMH1Ap5md2iZb8vi +xm1PqF96c3mxejrrCSX5V0/oQs6qhdMXctUT/Pyq4I8wtuWw1DpN6q3xBonDZPm795Ft3J80cC1Z +rMisZmrl40LOPzpD9+rOXi7zHdrCKmpB1ZSUAuviWaWYDYz5XV3Sikdf9fNsPZRYLLa9OrnR92pJ +v+IBM1f3at+zFCtS9BtN38Mhq34u72LPGEsz81bu1XLExX7NA7q1bOW+KGce8lRrwQuyIlQjnoZk +Qz+7StnROBYYG+4hsS/kFR4+C7P7CewKeQ+3fLaFvBizMGwJG6YAL3AY7904Aidub/+I02c98m5f +Z/xEV6PdcyggV28GY3KDSoUCvN1C67PpXATdMgEH1qtlfftV6YECd0z26umUYmNd3rnCf3vwSmsX +Ru8fHRhojLoeG6ux4ytN6vIa1o/3Da0zqeAvKpOqroXCQyKW89ZUGJRYktgflhOHnckDjn2bDew3 +w8lr9uQe2qZbJhVrSTgmNx052vu6OWCvwVsZTcXdnl0aRkbX6hwyh/cpyygX6hnnbT9DJNEYMLWv +Gl1wp9AAZ2clFXcXsOxcqGILHHKYhYKt3yTwZywMroy5sn4Fk6u4R12XQ1fDu6gTrkYq8xHe4u6A +LkccmB5dyXJghXxLGuKjrUyZVwjtq74tAtoOCCT5lsuqvqkSkp0QiLOoKFyIBv7igJgSy5ZU2C1B +oBVHqwb7dhwtq9wISmGp0nG0atCSMa/ugX/Nru6gUSq57OLtMOJGEsu03c8+Vx3sXCofZTVkmYq3 +DsZWj8lYZ9pjIIXWs+NYCQ1HeANRUQSJMvJOA5RTloS9V8geY/YRiOX2sNXpVXZfO791bmB3fnO/ +Ob0WOSR1jio9nDqMUue3qHMUKUq3csSvZ3Xq1PtgLTyFzj7mWo62It5lsXTHCh7QtxM2FTzNU72C +Z3nNCH3NqWNRhjqUGk2gKpSkUist9TbLvL5Tytt6qEs5qXXL+XNgX1tsWcA4x5NpzIu5fVmUPr/e +F+dLgFbdFzqVdaV9obsJaJVqZXPYCj0kv7mcCauVnSuZXKsdQ0rl1YzK2W3zVoeG7k4gClSqOgwi +0zH6uCoq9Zqm5TWJKxvmk+MfKzGo172aBeH6hvnk2CwG7Whsptpb00H7bCWTY3anyg== + + + wu6fUTK4oKJdvHOv77ZHU8OYhfm8tvE8OTGL+bUxRjK1N4IxOtaj62N2xDDGU7kop5dYjvYgrWwj +2wK1GBCkAsngUZwBRcVXKEDSbbblZ3/ewrYJUGKQaSFlxto/ZrKwna65GX7YX3PzMm6bkxhcXmcj +fEkRNOU2uSjLZH/MVudKwJki71/ny1NNV1U/YTxUc2jvhXOq3+JeJj77GxbsfUpLarRXYS5OudZY +tLyOB8jCulF48vlyBrH6ck1aiOXtQBZycUnJMoU8cy0e8SUIdDjitgi01GDPraozV0TgnO7h8qrV +mezF2M4Iv/i1C22+sp7NL5gf69X1Utw/ttLphhGdXWgu+urMnRhrvuJgreonwJhDSRZ9JTR93oVT +2TF1FcbyGw6xEnoThV0uLwL1+xxUFSQbF9oKt50Y9+9iungVwpJct1m2rVOe1oN9EBFLQilreaj8 +9/k1k5mNGRFaES1Lk51EfRXCyW10b+Gum5XuEzVV5tpehbBaLU9+zTxmK4x5Hd2vlJXQs6sQDBHe +Ncuzac6ai648+5cpzKq9j0DRJIFSpoDmrSNWK2bSWSYuF3u2GjreBV17o6rGpzu4WFMaNitda90S +gHCvFLYy1FjZlomWf51XvFApvJHbgBFtiSnt7juhjTZ25aIqX/5tPZGijZNiY+p7ih0rvReM7LVp +bKWbEVzOhb44In2Zr6U0V2ZZLPT9avlsv4zANHePaOr4dEE3k/u2NxB8tRwvTHYMNyla3wxGjr7e +XB/Rtn4dxjugvrfHdkSr+vWRla4zu90US1QXfFhWx4IqfQTFpCFErHGY9eqMaS9ypo6MYLVrYbqm +wmNTKbwYa1mzuJffzK1NpHh5wb9pnWlPU77sfAWU7fpUzq+XLzuWKlBXeoc3R2M2gWNT2NgQ5XHO +08eqb6c6TMtUApRijiUmoK8cH9sEjkmBqpPPwbVCxOO0Olxz18z+5PRK30Ogqv/Y++E2mUWQts3d +mcsioDo51eGiR3Gte+HSK30UwbF4+W5Aa/E5rW9Td0Mpld4L3sO1acz5ywj0lgwZj13re0mOYnkS +WHYXNGiFmxTLYCjSaxfLqeieQizPqjgpxXJt640yZ84olpdVCm9GLAPaIpu5S40ULy8Ry6abJ53K +l9cUywseElK+vCGxXNu63NDNkwRZTmIZ7f3VKj8BbSuLZWqPYnFZPhcpZF0ill1GK4pKLL+NVq/7 +tF7LfC3watmKVnWfCzwZetZpvlpEL/djPmGjch8g/N6hlfsUt35jzfcKdZ8UlvjbiD6J16buU/X1 +kfp+2spP6rrPvaM71vnsr5DpOuf1q49NXr85ywJLWTfo9eNSD82p453DK6aSYuG3zXUFhsiI/YUF +NmRRH9O6Falvn6tu+va5+pjarUhzXUE6HF3h7NOVLK9834X9Jq96XQHF2Qfq/+11BarcV8SWzhuO +xRKfvBkkaqluNN87DDCZV4tjMftQ9eInqX03O1GsmC5jxXTB5fWEpNCb5Yeq9ytJcc0PVZs+U+3y +/pEPVZs+U004/+Y/VG3q5/L+kQ9Vmz5TvXwta3+o2nYtG/1Qtekz1XgTxR/4ULXVl743/6FqE3Au +7x/5UHVg/jPVsJY/8aFqE3DEB7v5D1WbPlOt1b5t+EPVps9UY5baH/hQtWlS/Dr2H/hQNcJg+Ez1 +zKuw2Q9Vz0sfowd+kx+qXjVz2KGM0uZD1RaRRINm88sPVdsBZ7aSaD9UTVtAPqar4V3vQ9Wm8Rbv +6nQ0uWg+VL1SDS/dh6qdSUVZC/WHqqlLluc/U22fb0lLfJYfqnbOt/zth6otEGj7pe8Vk8eXIxDv +7KK6LJP2gAysvrFjVWFHjcAF14nTLQEOZu+y8uwNR3lsyrMp/HYLX5Te4P15enE27dcZnDJLlxdn +r+KDtSnPXgdjm7ky11Sc/ZuoqFqevYGsG4rybAqQyL78rjybojjbDmNrOq1sirO1L0pv8nKFxeJs +my8ZrVKeTZ2j+KvybAqPmm2Uh748m6I4Wz+Va5dnU3A527XQl2dTf7X8V+XZFptoLs6212FWGNGx +dtFKiq1Ynm2gWrvi7CX7QluevcK+/KI82xKL87GGjeyLo/a74l2dVuXZv/8CO015NoWyoX+Vae3y +bIribGM04beV7vbF2evdaj5Xnk2BSrv85BXKsymKs1eOii6WZ1OUGlvl9a1Ynk1RnO1wLxxNeTZF +cfZ81s1a5dlrY2zFCkrH4myn80JRdkwhpV2UQK1YfWkCaZZtu3559iJIFnnjvy7Ppqys/2V5tnNx +tjHXGtfaMicOUq/U6uad2bezre7oNn49m75Wfdm3s6m+J05dNm7HmEw1VrTgrfjtbKdM+818O1uX +yNZfz157N+a+nU19k96vvp1tpcEuq6OmUmkWlmv7bfRPuotcHAvRSRU1sffX8Out9u1sy7s6qRFI +p8jQ36vwuVAZR319CahDBj9//s9VjNvc1LrhinEKL9wGKsYXa0X/RMW4PcY2WTG+gRsOKSrGaW84 +/F3FuDHn6s9VjNN80eD3FeMuh4SjzVSML2YQ/YmK8VmFnWWx8aYqxvVK4SjlQVunYnzdb9itVjG+ +HGObqhjH/OT1a6doK8bNsdc/UzFuWVm/8Ypx+rsIflMxPl+V9qcqxpfljm6uYnyluwfXrhi3/VrW +RivGN1OX5FQxvkJd0i8qxhdy4P9IxfgGaIyiYtxFL31/UTE+R2N/rGJ8lW/Wr18xbvPN+g1XjJMb +QTna6Oq6FeMu7+I3zzdfMb6hGiuHinEDJdOXpq1cMa74+uxUnk1VjCvaBb8ptNmUpq1e97pOxbi1 +72LTFeObo7HFWPbi3YMrlqatWDHuWsl0Wbdi3Hxn15+pGLe/qXWTFeOz6qc96vvX1qgY/81dN/QV +4y6KD17/XtnQvlpOUdLyi4pxu+/ybLZifDmNLVaMr1rfPXc7kOVHHzZXMY7f4LbKl95sxbjyjdTf +524trxg3c5g/UzHucvZEbKBifMZh2C3ar5KuUTG+5t1QK1aML/GQbLBiHLTxWc34H6kYJ2LZ/gsg +m6wY178AssK3gleuGKeIjGygYtzCSvoDFeNk923LiTdVMW6oeqZ1WK9RMb7eDYerVoyvZImvXTFu +cUfEH6gYJxVDd5v8NtKc10+tGHd5rT9xv9mKcVjLrGb8z1WMW0ZGNl4xrkdGqN2Ka1SMk7w+20/c +b6pifHb20+Hon6sYd8i031DF+Er3j61dMW5z/9jyivFFPC2pGMfacPwG95+qDtdrw+Hs/7HqcL0f +YuxPVYfr/VzeP1cdvnwtm6oO1/u5vH+uOlwvtl380vfmqsP12nC9amDz1eE6cHNfYd5wdThdZf1v +q8NNlfV/qDrcsbJ+I9Xhepk26Px/rDpcrw3X5MufqA5XRUK3PQWM/bHqcF0xVK2kP1IdbpcDv9nq +cJMO84eqw80+pT9THb65L+Utqw5fo15sjerwpV8v3Vh1uF4bvkZOL3V1uL5cy69mbKg63CKj+w9U +h1tmdG+8OlwPYzvUWfyqOtzKStpYdbiGO6s6iz9QHa4jw+VIT+tXhy/U8P6R6nC6/LHfVocbswj+ +XHX4YtXzn6gOX5ajuLnqcKcI72aqw/XacIds219Vh9thbLPV4XptOE3m8LrV4TbZgxuuDtdlvVrN +8Ueqw3VEm+5V2Gh1uJ6M5PL+uepw27VstDpcrw0309gmq8PtdZhNVodbSbHNV4cv2ZcNVofrteGb +3Re7T3f/Yl9W+HT3Eovv19Xh+mZb6Pwbqw7XNxtj4n+qOtypinMz1eFzttgfqw6nuleB+SgIz0tR +afAbqAs3xpENCRIur5Yi0WvZf8A39fC6+gdAz23PfvtsU4W8lLdq6NLeUsOD9X1TfQH4nXtFz1Wn ++MA6kFLq4cd8K/ZKpZwLGFuxlNMOY7T3XThjbPHm3xXu7Jpbmq0JvxJIJJL4RpWO5Py9dFtmZZ/X +Z4unFYtI56xXE1Br3OJmF+giX2Cnrfek0PlxpQu5O7jSOZ3fwlK31/RPfJmRnaZ/brLTf/0V5uxC +GZoN56er9l3L6Wh7EziAt2AU/8bpCON5V/gyi6PT8dzW6bg8D9Z+N/ZWOjQOVtL5eldSLqust0gJ ++90nwGcC0eXdxM0Jnwvp7fMItPkO7xIELknctkWgrQ6DxetOyWHUCMRZsHjdyZ5QcWchIS0yRsft +JbVv/I48pKlsoPPB9i6sdn+NrMCLjX/172KzXzQALrFwsNcrfdbzvX+LMccP/tH5LbF6ekPfSL0g +Gd+/zxsnIFmkelvd1EqBJ0c/03zKnlLLY5eihcXrv/w86sw7Olfsxp9UJhkb79Iwv2aWt7UPlj+5 +DZhvgFlnm2IlLSrqlFNHK95jJftjtsaN0/nVE7xtMXbk3wjGPFq92C8TqfMUSWR0X/xEoH6T222I +8eWtfBtr4skUNVoe5XFS8rF0nSYd0LV6gcZwScIClsZaHNy1b5zGuBB1kY/L61RTTCdzl0vcue8j +n73HzO6W9S+KwNJ17fQaIrxrfWm39kZzwYOLshSbSvDakrj+FWasW9/EbRFK1fr8EV73Vg1StR7c +HI2tKn2tZK9uv5AR69Q0tkLyeLmPPNnGj4iOHqoybmdBp+9+uW97HdLqYWyEcF9nmY66pWFEuzIP +MuLSa3VcXooRLWtT95ORI7simFtLD8n6sVAQkxTizUVzNgDuHA3x2TruF+ssgAHQ3j1DVZu6nywu +3j24VvnY3WB5berc7juWYu+vaT6Z/MmEOjZTm4rl15qz9LfyBavWnWtTaWksvpAgYXYiLctAsPlm +vQXfNDtCKArlZoFxwpO1ezoAj/u2yaJs9jlNYxRa+Rws13K30lVZSyuKKb9dSx01A/N3o3fcIYyr +3fdg/33ku5Xuy1peiK1V1/76kga7FCVLi8/5S+freB+svl+JdetrXZplhSyrexStXKSUH8PEEe3C +H1Y0tsKVEbWt0xM7sXyvi2UHbkkplp9/lovlFeRLbeuBxqtpJZZt7iGB3ac9dzRimdS91jfgc0G0 +2Yrlxd13/Hg3taavHz1Lnny/MbGM5dcgljdwi6ZStb5ULK9EY5eOFzzYiOVl36zfnFhe8Chi2DVo +K5YBxlsa08wklu3X8uAslqkrV3Ur6W3kqFgtfPPcuX6d27TcfxttWO7HfLQXSnjnIolLyuv7v7xq +cd4Sf1jBEaKOaIs7kxuEourZWUxi/brz2aepYLfw+r15lnn96oaPECy3xOm8fh/psIONiH4YmysX +lpU0fzpduDCfgeuiuNOg+mu34sI9ilY5Sb9wK1Yt8y3Xvn2YlK7TS2S6z50fUKvXWi2PjdiyTC1a +48KF+bNfpfHzr2JN6kIL8y0LQthebL2M2w7Xg6nLWPZdiHnr9TZ2YDsfRcTcdr7ZjTqqxxHxWKhk +6weNXrLfCA2Ske700iQDyFSpbktkEoff18+5/d1rjbk0kruZj6GfTebvHwuzfQYrSQ== + + + r7xXT5G5+/uV3l3vrNRqqTgpXKe6kodNX92XWrnD7HMY1nfvy/lLXDLxk3r1YWWKYg7MWk8aORyx +mIhXSlOsjz6TQp7dafY+de+ZP1zFTCNWa2Yb79niaMSNk5799qh0EPLGdvn7y0gyIgbGn+cHg2nN +5d07a0ny/snTzuOW53zi9yRzNwdb1VcxtlO+3854v/vlwl7rcxgSy4Wft+h3s9BOfL9ffeZbZVm+ +ej77uSuzw/xH+bPU6d6eHlxO795O/b63t3TA/1WNfF33ioH4h8s7DDwmJiNv2bc3GvE7nq1Ba3Dg +ZXY+4/7HQuMuIAcufcc/O71CjHu/OUoyh4dbo9FJrOjZfzm99HCp624g3hASTI45OWZylfscc7o9 +uGJOr68+R6POSWg0/TwGbjneC17Vw3xBjiXL2+09UkIO63vOhqKF3S8pepLOp7rRUoAUb8NKKxWA +odUMWFy4YJHnoOyky2t55YK/05U9ga5Qwul5nXRjXG2vlDgMnQlKQfte6ufGGsddVih/3u78jBJ9 +8crl9dxf5QMOKJq+h3f2d70PxR0p3k15i+XTi7338vmRIO9eirCqlCdZOaifYIF8JXB0ELpH4KKJ ++MtrN3Ph852Qr2NXS0z2Lvo2Grcvthmu9LydjL4kWpnz3slDIjZ8OTR58oFHXv5kg9I4LBcvSp3Z +6TXQOciFYlo/FC6vdixeLnXxznDdyWH6U7yuwl6NX5OwF/dz4zx5rcY2433/JTf1BD+/HvC+i7vX +rCd4ef/g8YVqW3jLxQX+iHtCSb7oCR3svuI2HXtC/dKzJ9AIy4iOSPKm8ryXrTPxKBk7es8zTXLz +Bfkt3notfgL3vffBqrYP8Tbgs4+XTGs0CiZ7g8IYVnX/g23NXDrl2Up8bSe76U7tgGWY8ftupn79 +dpWUgsNBIHv3cAadH7ZgvsA7ov+ceztrBhn2ddub6l2/SLl0clpLDMdsXfvi57HYCGYbje39RPzi +G459Pj8hRhPDTSfbidF2c5QKSd0rht3zt5Plxt40WdqX7pKDQbiAiuqOWM3384nYdfor+x5qTxKH +J4I3kyrcNXAtUZc39/52PUxWMo8ckHvwKPPBVPFaD5kla8U/3xOHomeEx8I/a+sd+hOFcqrb3wvh +YLe4k5HU90/Mmyold8SUMAk85XyDdzbzEXq6Jpz/XQCiak5wnGrm4+U+muomujyOSOJBnvTnU2Ma +uwzwT0gHeQI8kFfoIpe9vJNynuBNLvfmf8qLk+FrEfbqJAiAeHynk7dhHVb1ICBPvpgGEvGCB+/V +3d/O5PNnUXh7Ozw3jm9P25zMCBc+zqVboaeUEOn7CQloe/rgTX+Gzptn22FvVN9nPPvv51sAfI8N +ZILeac53dn4eu0pNnzLn54ldvS3e5qrfqbPb/o8yHzethmCRzS29i/gofj0lbz7ao8zHwc5btrH9 +fUKmgrUAAP5c9uc5ltv3BwPiduyhnG0ED0Nzi7ziYNJUn7iOdBhT35c3B0AHzyO8iyBNeFvmI3Uv +5TKRRw4IqVrIZTk/6DAGdHDbb98JPnXwpfzJtqMDgDa9bVhQ/vF0YAD+KPdzRnYNtuSplBhNc3tA +DNU7hvdsSZnw9WeGbCLoYx+9+E6y5Km2YRnRi8zF+3gX5N3RC8MFW92UmLj/IfKVYQfVLrCmh0ny +mg2V1c1pDktkf9UuqXorcfdxew8Mda+QKlVPGYIMQmMfsIM3vXLu+azQSl6nU9VM/txzt/CgzVyQ +033kCwXfxWrhNpF7be1UM+fdwFXmYzA6VhgXHy/vptqPpbv4x7SYRsJ9hrOPh1PRrggLm3U68k25 +99PDoa+We/fHMhhuu1ZhfNr/zgY6jxNxO339tgCS2JzAvpzswMjnfTwvd2Qtzy9HL/nsQaYd8tWT +khgN5zLVShDQFn1iuEk8KRe97Yf4RapxnzsZnxZz73fVJChTFQGPVCpZDu1cpi+P+mmVWzQK41Sp +dH2bavSnr+q+SP32M5+tlx5QF8yHxRPx4TSdvREmKgnkq9108z54n/kojd+QCd/msuxoJxOs/eAK +HkOZg9rhbqzd37sFuCK+TGt8Iqi48wgyUYJAt+S5wiT3FryLoRpbMpoNVr4prnAPxBmXcP+KtDOD +fLGYe+WZc+nPaF710CJHAz6dq6AElMXbI7wVMHm7G38nnfAukXt85yLV9VYq6XZ77AG4LyUET8o2 +Iu/+6F23cKqfl+hd6akCP3q13OHp0ylhZqQtdtWOd2KdV+kDHrCwFvVAAgCZVmfwdOo9ff7K1ivZ +iD4YcLTUrfhQG96R7UbiLGdaD35+9ud76ps78mhC5GwPr35pprrhmwBYQS9+QmPZXaB5IZvztU5e +koPP633VAtMfNL+esrVaRD6Wz7mBgtnLs7vvxOi0B/qD/7WUCd80OPJ0XudPI59+gbW0PytvoFsn +jyx02ZjBLQ5MagtY6+1OIj7oVVPXk9o43op5+4oFdj4efOTeC9M9PUtAb5vd1nj80yNX1YDiGN2L +7Q44ARTjn7vEwWQ/E5AjwiH8dniROBgPT+DB5UVmWitew4Ojk5y8c9NMv1xsnxEFK3oX2rrMvV/u +RlWn4zAJVtL8Mb0GkLlptvF4RITjDUixwxGezw7uwTnoAjxPfBd44ivkyEXjjYeQqV82sC9+iEdf +9fNsPZQ4V7I7duIfZweV5DUzvERCO1dE+bTH12HPfyrkphhyKxdwgYc0UWjhnAs+YKg/DaJsHIbe +cwP99i5JHhx8JMuT4TSZf/RLsBYkP0PrTf/7OVvf3X87O3rm7xV1+PrH30hdT/d8yMzOMh+vW99n +2zenYeDyz/d4MdBPznfx5QO0DBh1qGmJUCAcXCZ44PKysOXHMJjMAQNsbwMf37uA/f3ZBUWm6kve +dIf72cb3jwwaUDKEU3WIiILDEHwE9p/YIlRCrhc68t8HOgQtZLnECsTPI4XVbFv29DWMBS/ZrVw2 +44+aepqdFWyl4wOQmE9QjbY+U6FYZkdhlLMfYBS2PDDAzVaydNX6grMvtKeNeRLA+wKkQeZi/2kH +hmgNDVpfIwVSG9EvC29PN4fBx8xzLhMUAwb5eXJzeJ/z7b50svVyfpoNFMJKpXDKm8mn3vncc3On +TXYf21hgAPEJKMHXHrmbazzHW7f+TqrxszVSucXO1jjnL3ZigePo3Vn6/Tu1n2m9Tx9zb5PPbiKW +89ZmD7ZcXmApL8cKD3kU28+gj+UN2gxYP2I0l+kGFUGIBzslTvKTo9xb98CTiGXjxaQcz4e03Q0O +QPdoT3PJXiyo3X7Uvp73Wq9iNhivwQvtJMb+h61M/uLxPc3e9sY5z345pD/AL0tefLRhzyPRlBhk +H3DEi9Q3W2tkcs+X7Wzg8/URT+A78TilO1/iAehM99PoiD/rpAqPgwc4i7FnEOSfO8Ajr4RE7Opb +Tl0Xhx1QaWK78tfI8+TyqqSksLAPJtXtDUPK0dUV7MdGixmNjg6wyzZoLh95llC8PphisOxGBvr1 +WFWQcjdbOX+1OAEau06HjomCiRufRMM9hBYKo8O9ON8ooHuzjnzdeAfw2fYkfpLbicRhsNkkl34R +X8H2jzi9dHkNyuTifEXDDVx2OFHuvkrvnGRtVwq7r6z1kbuwWqvFzNuOKx3sm1ZK/DBWawXb3pva +ySxdaYl2pWBX8udPPaPF0GyXTLhlcw+n7MztlIpx9YMO2mw1NCC+iDwj/EB7UM+bpB2efXgeb3u8 +X9lG9Z1LdS8OemAWHkfQ45jCjwsUcu+xgZDzyaI/GwoMhrqNddAJxvAsPsqJ+5J3y/Ld1w+s5AJG +ko/GOunMJ+G1KPJ9yDyD8Y/g6DHdvLu/VC3e42wQDTcZTIlTwGKd2cl8fJT4mR3rz4TD58E4c/Lh +gS4Hr7psdnnl67v2de71eaAIodgV030Tpzf8Pdj7500Ypxgh3hC8bxF08OHTa/K6cPaIqn0p984l +IwqNHcZ7Nwx3dj3NnE6irVQkE7rTnwLG4o3rS5BExQFIIrkGnLgxVuAhasD0nTXc9mcECeSnPUhP +I5CzM5BA5zcDlRmXbYEKxLu3V6uDhLtf3O3ZAKXcI3lli6f52wqvwIZ6207ExqEBbvxZNnA1qIBh +cwUWX7LYK7dz6cZNGv0+j3jkuHTnKBWwnPSmx71qzuLMOHMR2N9OCfdcCk1PJlke98tAVAfTufUl +eCLF/FOQKhcPZNq5Sf3PhnNnNAA7JQWpuWSmYYlyBanntQcyKdiVxmljrPVOT45/aHd6YVKuXTJE +RgxoxS8bF3S0Lq7PFqkwaeJ+v0ZAgmMWfCVP0T+mPce7Sp8VoEr78Wcr8rICCXSh70s7kF4JSGhZ +2AGFmDABpT/FOzhfaEGC86IDdVKZXC0Hak2QXN6VgNJBwrinn5YdWZz9ZQxpTXZEfH3V4UrUbzpy +6oGc5J4tJ8XjiDT2ctFWVNq5jajaHMiX2rJzDgfO4pRjnpI6LF7IKh/j7jcsJn3Qd9+O5LoWrOcE +bwS6ACm2ucNne/RA66Mlqo90OLQmm4Hd/xMCBUjqc6qTlI0UW0JUR5z1sMVne0rV1rJkWDs+XXz7 +oT0AQGP00LbGtsMyuZR4bQuryzveyrUZm2EHnvWPK8A6O654e7bNgV31uL63bY8rruX0LLVMLFf7 +NsM23myHBQR9GbgAcpiFYV/smMuLDdWW+9YnrCAc6XFkI0fgT24LBQt0vNpsXXVgqSkFC4G4znDI +rebKBAkuVWXPLSZozaLHX9n6wQfGNkqvROlW3kD/fOr7MjQBdf/5PtvYFncUV/j1q3hMwhHogVfM +WX6XuInU3y4+vtEPc8MGvqN7DJtP9k4fTo7qSeb4oqc5Z6Gtuu9ppD+fUt6Z77+L8ZwfLb7kF4l3 +BTO7NL8QrL8bRhfNceajUsJgzuN++uPos4iGu+KwP6yL8X7q23fzEW/tiUXcqyd84wIMlrO+4myC +P6VZXOgZzDrf9uyrGaL/Z2YbfQEXzDJKqIfkTighsVz1VQkVsPnvSS7BXNwCHsKP6p97mXsllKV4 +/LEtefotkKgRWuJq3OgcgxhcsnJ3GwC6ewkYbRowOQ5Pu8fVbH1wFkoWm/GmIVjF+/vbYMfd7mTO +u7e3JscnCQShlcTEo5pDNzhGk8urhE8OQ/et1Hfha6T4B+eCObXk7e7hMWz33fViQOm+q9u2JCKF +33ycj0lxZ+mhQiL5armv7fTkSwmu5E9+BD3yg9vZSXde3zit7TEOW7LvnwWw9mHNzD5Sss/vM8TF +Lr62f8haovf8Yc04PYnHPo2F1PfeaU4z631eY6ArffyilmvNXmPzVZT775feLkasRMXi67xe9IHG +RiLG6bbk72QW0ObnZzHTBw8cvvxohp2JEj0ddRp+DdZ7KfHA+MPan7tg7+d8ecaLzulLOHK1XYUY +mrvBfG6fO+a0bXyU0Oru5N738i9wAo+2SWQE3ZgZA0sBGkqA/f3QS1Yus3l9c1xezQ== + + + /+uVsVMcWj1fydIVaJkY6tHRMYsgyXgOCkrwCO24+QfFRLx3nDYEfV74bBdsZOKA04JCxEFV1UJG +4ihRTudvQA/xn5MoHjpBJQw4PGldUl9JqfH4kDl4KEWVcNosGAXblPlIxJ+TF4Qnm4GKYrToKNmv +196V84K35xzujVvtrG/rrp3JeT8u5gNKF+J9zz9IDobDekqYpkqmiJTCYT5zJ+Pnu8Dx9uE2vnMG +mA/siNssc39wWf5GHfVkB/Sj/SfVEfJ+fgyc6mRsiFx2vZWSIZQzH4QBi6/16v8A7SqHmTPbEvqg +B7MY0d3Z9s1RHInhEihmb0LcEYpD15wHqmVuzYIs1/qkuJa5aTc+Kbt3gRbfee27uBjb8l9IJVk6 +BS7YqpDAuPoOCcaNIoVUKB6PEe89MArvNF0YTK4RzKF2Srhp+nN6U8HARA45jMLCSGvvK1lJ336Q +ZcyOoV8JtxWfLp6zb8PmF9DiVkQbjASC2Ex2J/R5z3Ah3yRZDHUraswf/yxdle8wMuJvXish++/W +C4xTYGup7vd5WQvjA51PfOHLxfi++kDc/vGUT4c7hyL63bcQqYVovHF7Q4QWSfZAWQm41aJFC6I1 +1u6nSing0lupwmMpqbJWRbqeMBhFD6NQ68/kx2Gq+yzHCAx6nGYWf+metnOJduJZOQJkG9lU/dMU +0VHjNPL4hHwyQOmH9/wnfhKjQ+IdVN+VO57sXn+3BCCxTy6vOTfk+DTvI9GLROzB10lxX2E1Jq70 +C4Z7Sngk3SjHzCGTdGtag+mTLVX3eKgWsvVws4VWUqe9rTiWQDiO1SDN6O5UTZBIpTygMBwntFCP +b5cczePdcqwTOK4OFE1BCfoQl+xD7eeC8Omzo9c7hhAX0cf0AI/gzZxWE/Vk/8QzyJw/idtKyi1/ +6BOSkebpbeLno91XL/h6mISVQodOMBZAPWqQrNzv7GffxWHD0M/iTntxB4DK/aAH/gsTaUZqoHP2 +A0OQmon31MzWvc26iQQQTxktEUqVj2QtO3u5zHfw9Oj+I51guO3vj6z/tdYGPaMyzj62Jruq0Nv7 +8CYOI18dZMcvChcAZCW1lL5sH/NdSMpQEiQJxyditUI/9fl+iXZlJ/n8nq2XqjPZpgV97t+PK6nu +Vj9HojyyeOpvYDgGtbCHDHkQPbwX3zDtpYMh8lI2WPk4MMCFn6AA6v0Za7qlwj7k5Hvi8CwdxsHi +amhY3d9YshxMgLLRqUxIsgtqzJdaduT4v49dAsMKbiHKiu6Dm2m3NboeddqdvjvoirsOkucse9tv +DnKjVqvS+s8kM2hMe63+xB1zHyTL6fNzCfhrY9BsQXfvXDyn8aFnOuppV7QxX8sg/aPYe3R5SehT +zeES42PMMPWBrGuPF6LEx7X+affuq556vywlk8E++xI/Ye+kzHZzms2kz55ftCjq0FyxBKLIGZQV +AAHdPji8ukjk5fGxdHZ4H84NHgVgrNnR8yOTecxVK7mj5FHDCh6NISo6z9dKkfOZwFseORfqB6ks +d5YgQfPEx23lKnkmvl9RRc5Re1dVBEWT7/a30KR4UyLit6+5GvD8pytDogS2SZXn1H3qe1eaaCcE +j+VXp6bwx5kQ1APgbLDdPlaYkS9br3QOM/n84d68CVMAtb8XxByeoprIo6RHvEQTsWtfCznJKVE0 +NTWz9pT6zpwxKg9nMi8khIRhp/RTCxihvK9EX0h8ngTkhffQi/IlF9x4NVyvpRLqOVN6WyzPHhzo +gRwlf6ReOdxGsRp8ieTejpM1+4w5e6PncXAJyziVVaEU8vWUPKrKxVRWRYh8+ePyJkaNMFGkJ9lm +7LhnYbj00UwMn748+2LpVrl4OxtnlohmCAKWrYwjlzd2WSudKOaBvtP3l8NzAvycDXSHcfeTH2Nb +z7eX8zWeZ+zyBZTP4uOBIeqO6QioVPWOMDmvWwWB+CIbktfQqkp1Wyk20bseltQw3selrKf7YZxw +V8lHNybtFB7A0mC+CWtE5OfwEz6RgYRZmSJIxZNbEA3j4JzhkhxlznOPW9qfhwB3/uHDuKDGjxfU +ndeQJky07M3rglgiGYGouIeeMOVd+diaoOkWJGW20Mrkdv2lVOSuNNEyygw+EYwEHqN0vP/J+c4f +bmabc6mmuoYS6J5gdmD3MTdAswwq9Rk6QpqZ4XlDFfBmMauNPDg6U3TDxWS5C80weQ7PJeeh7UOU +Lu1oPj5ye8e+M2OXe/kj0w7kaxa2y2G2cfyyDasPPphAArFaehx2zGL+ZVwvgfWSDYPpIbfErdxb +CbpIrOZveX45er5KH+WSjXYDU+Su0vxR5ZjYuEoCByba6VYMWct9kFhBhgQ7dvBzBiRXJCSSydQu +Lm4T8ZPpZE4rP79Pd46OYwoTBu39OxEvT4qpkPQVSHXD7f1ksfFRQLjK5FNkzcfsY/MCY7Avx5ge +gihq+NKd8SFL6iTmy2FN18KkNPPg+9p2UnSmzE3760nF41vhKskcTscqHzt4BEpW0unZg+3xYeA2 +PlI6oXZE3lET4zBZbhZZVlMAX/NZ4xFXbKDgI1ZonKksDNtaA6EBp3LBelET8UwJduoJROvlOtXL +qZuMVsDgIvui/4kZna3UWWX7Ffc0jSkfQWK0n2DKSLo3S7W7RLfLQ7J/tv8zy+vSH1zMvvU10JBa +64FmXPlBsVVNxCs3Y+Xp3AUcqyfMcIUK+t0+QUQNt+OtyvsNCNtaz1yaUrmYTGdyXy9YUT7seDHF +xN3D0Yib7Hr8h1eCJ3Swd4cp9BnPTkY6nGXUn+CDC0/wZ3iND04wwb7pCV4+nHn2f7ZHsC+XLyYX +J70RtroJhqkzqxphq5tgcF5WNsJWN8HURJCVjLDVTTDtoodVjLDVTTDislnRCFvdBMOSjFWNsNVN +MCUpfzUjbHUTzOVdNMK0mljiifZXR6TqoZ87zDVZs0Kv2AbG4rezTMszDOIZaiTuKue1XFYqtZRy +39zsURv3PEw+5KoU3UrcbS5ZnmyVcZObWPNxrBTKGzKq2qXXWXrdrVVaHGoXmL71Vpm8ZANjfnfG +wpZngiUcM8Eau0ZbbHnWG36is7Q0E+yOIhNMS2jzTHzj5ZlgzPlzMKxFkpalCk7rxR/TSkHuO2e9 +2a50a+v45HTpSm/nPnW5NOuNyR5eZx1W2tqKHNiuVNt9ZRmpg0untMiz3TNjcdjJaSATDouPxGhQ +5JlS/aA+uCfSjhTkaPJOed7bAuMk86Vkus1y2fb53fgTO59e92Wwqy4i4bieJ2d61+VV3gbl9gvs +pdhuLlnqjWcxpQZ7+tpmQOa8jlDNO8/6b8/HimoL6ucNBu5bWAHYIlFivZgJU+7ec8kn1gPyI/WK +7lq9sH2+NsY+2sy1S7TRZhJrNiVOhUNrRZtfLpcHwNHe/2XGCgVIJPBgCMlerRnsXxLqrwZBVm48 +L6+2dXpuymExpM44pUYZP1JtMPvSy/PyDGlAq+TldW9WT3UgsnJZvgdGnH6dFApr2VwWFl6BPbYC +yeWlShb8ZQ6P8ZpCI1Cx4mTt/MVFkDBM+/vEorvBcna0/OwvMKQ12ZHp7L+8U1C/He2/2uaqkQJp +Mu062WpW59wqVw3k/m+z1Shy1VAik1yamC/4RzKyydGb7f5qRFW3T9SiSP/dlECZJ6kW8fasS1R2 +qU/vZkq1Wsvq+dPvS9M1HdOybaFtLMv/ah6YBjWnmD/ZDfvxG8wCT16WXLrmcU2Y8pXNa+ktT5dH +dvxjMWwSTbysDReoPitrsR8W7Zd31SF06x0ky4+eSYp7v/wislmpNrlKH7wSp/l83cmLfrOBegH6 +8rsNfn2zAWDM+W6DX99soAbpl99t8OubDVxeirsNAr+92YAU4TvdbfDrmw3UhLbldxv8+mYDl5fi +boNf32wANOZ8t8GvbzZweSnuNvj1zQbouXK82yDw25sNMC7meLfBr282wFJMx7sNAr+92QB23/lu +g1/fbABrcbrbAAxgh/sFHC81QHt/tQsVVptUuc9gVh6/eKPBBu8zUEvKrW402OB9Bvq1OAs3GgQ2 +d58BXryl3mhgIVoNlZsF081B0jDIjVPfmb3PmTC6RWob5fZ9/g7AkL4HWVHdJnC5lExV9Au9zF8K +EM+cN47u9J7Yj/jopGQ5+L1DHEuGywO2qsJl9rHpbRNXMuxVXxV0IPck5YqfWUq47+ygs1XcnaVN +vM2c5kRg9vQwgybU78d6W1LknzvJSJNrq36B0vM2iWjgqVRiGiUmt783muphDxQE7yAIvv2pXmC3 +qgyWPxmWofMgljn/+jnjMqGngDGW0mxfZAPj7G7685kPJpnjaZQQl8ur31iAQraRhR0ZAPqDUzWO +fFS8IUEYY1TiOBuaRSXUT3ZwwZEHyed7vp93ti/aB8qUKvGr3e/qLBSSnt3Nu6uFQuDgoslBrihY +JIHPJ4Z9ufxMRfziyJgRQfJFMOuWI/EJvK/sKdPKPuwBEvQ06fte7r0w4MFw2/pMdfKJseoO1Or9 +UUDf4+5Xoe00DIpKqJ3zfUivWP5fx5i4d7hvOGiRA7meaX1dHDKRev4ED1Ioze0cvWfC0/EDSJ/K +VHvABJOV7G5HzWzeO+NzvnxSVyH2E7HsAXDQVP1E0S0vSbRBi2Tc1xOVG6mMmaEldX+1AIia4Y4R +R/2GgMF/H7viQEbnLPuW7TeNuWQurxdayq3JdIgdIm+pVrvTL9T+aY1crFv5j4H/WDfnjspuLhLB +fxg3D/8v1F2+xqA7GI397kLf5X07SI4mmU5j0hn0a6N/3DFsergs3J5n3DH3rGvc7QNImDfoDE/8 +mLz2BtC9uRh3Ev7/8LdrfwpzZ+D3axcTZjg+4mbCLCcL8E+EkSWY+tvFqIDBC//AHxfwyxc0/e0W +3JfupxfG3cSxblwCK4R5GcAWInyYkeDtntIWjUKTFGZFRnRjQ1SGhQnRaDgiwUwCy4Yl8prEhwWZ +4dxpl8AIAI0IDyUAxM3LXDjKiCym74UlkHxuXpLDgihIbkFkw5gCBC/xUT4s8xzMIQphjmOjbj4i +hAWOg8lEeCREeTfPywCaQF7jZFguvMaL4QjHRsjgcoQX3TwnhMWIDFBH5TDLsvAaQC1HRAXGKBPF +11gmLIk8QBAVwxLDYCc2zETgF5wtKokiaYmwLC6fA0AkjrzHwioFVmljYd2kJRpRWxgYkrREohHS +wsusSN7jw1wEloC4EWVWgLXwAGaUcwOCw7LMwS+48IgIA0RkpQXekyPhKC/xSi+JgUHZCKBHgl8Y +QIYgSWRT+EhUIDsHC5ZwC8jOMazSxghKJwkXjNsr46YubHja9QETQn+YXMGxBLvWI22wgIjSJsJa +sUXgcBBsEQSlJSLwSgP8z91wKZ0krRMfdSsDCbOBRPfidA0AggGiBsTBS6zyROQEAgduiCiSpoiE +hAQtUVmQlRYetxGIjYmyCiCw3wIBZLEXjiSpI0UlZaS56RCO/Vvrw0pOoXb4wiyMzA== + + + IPBw1sNSVMLjx8Ay4fBxoFlGOaQlwDEflWRcBeCdY4AKeUEGJCBa4HiJER7pmwHqwpPCSHBSgKp5 +IBegdDwgAg/HgQFUzdoKpC0aZZR+oN5ESFtEwSTPiGExipvEc2FJ4pAykT/g8YWJGFw/0iXP424J +XAQQF4XXWJhbJCQjKQTCs3Bco4h3eJ8nYEELJ/HaYQfCBrA4EagPVyHKYZ6JwuBwklgBtrvqQtqO +EMKOIow8TAa/8BKLrUDRPJwVNxx2RAgH/Tl8EoFfkUphRs7NCZEwnGGBkIyMZMVxeKwFmCfKAb9D +YIBvhCWYi8DAsTATxwHIwK2gJRoWETwOliUzEraIsE+AKGA2wEMAoQilIMEpbbhYOHiiRHYJUCVE +ZDcL7AQISybwwiRzLSpXSLv0Njie5GQADAycDQ4OmKmN4QSln8wqsDLALqMRmBMQIUUA8xwTBUaJ +x59H/gHUzOGGMQJH4OJkgKLhQvgJqQMWYbGMRFCj8KIIo5x2DqkCuQ3wpGiEENQicRacaL6QUoQf +iEIi+kKhtYThZNBr1CZUwlDrSiUMiSB0t1eQeVGNBQq6zIuqMk/WZF5ElXkozRSZx2kyT9RlXkST +eTyReYwm83hN5kU1mcfrMo/VZJ64IPMiZpnHW8g8XpN5vCrzJE6Tebwm80RN5gGlqTJPVmUesBmT +zIOWBZkHbSaZhy3zMg9bFmQeYy/zhAWZJ1rIPEGTeZIq81hGk3lRTeYJusyLajJPUGVeVJN5gibz +zBuuyDxWE0K8LvNYTebxmsxjNZnHazKPVWUer8s8VpN5vCbzWE3m8ZrMM083k3mSrAkhXpN50KTK +PF6VedCiSjNek2aMJvP4mcxb7EVGktSRiMwzT4dwIHELMuKMCYtAKeRI8ApDR/TLEYmwYCaCHB4o +CTghS/YxCoyHsHxRIrsv4mmRCOETKQBDANkCBxeEqCInkZNGeZacLAGJFV8DkmR5RCD8AhySMEMg +OlwdSC+ZQTICBHKIUiAaEJ4CvofgImkRlVKAo4AaUwQXIIiEJHG/kGgiynuyQtx4bkVCLNBL5nBX +NNkrgFgBquHIsiMRWSRwskyUSGNAU1RAARVl8OiwbgVxiE0CCse7F1CZduKvU3K2EYG8DP/KcHh6 +5NzKHApWra1gbOPIlhQMby62zN77mDXCsQ3LUZCehglmbQVjG6yPFwTDeJZNszfxPAE9inxkBgqS +kKjqBDPoDE36svQ3rdq0Vw1TzGAxzGGAz9CmL01/16pt9u4HbgfsuETYAHBYVuIJa4jgaRH1poJC +fUwkMtfGAwELeAIt20D3kGUydQQYRASp2dgGS5WRunhU6YncRtUZGR7IA4kTUFSwirAXBGQ/ArIR +hANoH4hRAJYbxbMCSiacF2xRtSzQhsKiGNUb4DXUcfA8651gX4Fjw2t8FMSOzJOWqERAEhXJogii +qBTR2mSi2oFKysC5I2/KyIyUNo5lUO+UUF7gaHjM4QVBANYuskaw1AZlNaAyCoZOEdT0WMJBQNuV +CVok5ABkwShj8DUQpiIyOgHPLbK+CAhTCTkPoJOXREXOwmAGpKM0jhJJqTaR/cLtZ/Dko/rECgo3 +4ySJJfsQAWUayBKMYxaPu9aCImzWBlwQeQiOBaQYlWW9DWQTTITyiVdsDpwO6JHVQUgrVpQEG2Ak +D2xTCVCWOA3QOTolupxiovCgFER5lKPA2qISCKqe0oaESJoiZAxg5qh5ALeXJNRCo7AIGeUbil8B +dWHoIQqMYWbEGlgZojxP5lFgqjzqOmAnSBLuN/RiCC9EWxwsFTJ6RJYUoSICTnAs2GdgOpLephyt +KIeUgnZTBAWKonQocImipFDB3IlMW59INLhA8qmWTZTQHEgunqwZ9CeOaNDA9QRiXcvAEQhUAop5 +BVeirFC0iDJc5MnuE9JWDrLEsaoNilZVgfAK2DhJkb6oguC7qABGFH4eYSKyijGOVfuBbCNNomrb +oZohs4Sjo56IG4jTMqgN4NaDwBNV8ECdB4YqabIJNxctzDuVBiReaSPDkhY8FKQFjaYFOklrigmA +LEWJwQ1oifJEakTQRANyB8qAHZIi2sZzgtrEaaudf1W1Mm5dstvndz/cu5ZJRK0Ph4pVhKiAcGii +HApGMKlQj5VUHQtW0HVxUcQpSm+wfjng5Ni28G4XQLCfkxMRUlRv0XCLAP5gLmAOIOUVNUqG0wHD +ossCSJNsBuEqXYtXHaYCWgazQVaEG2jvOFUE7UtBUa4icNpgWCBB0CZEhf3wUVzB4qvLp0IHGyIB +2WOEiaJURnKKsGhBC7hvcIi7hAswHE6vyZfu4qsOM0mCIkN5kEwysapwBKJO88hIQVTgqBJaNsjE +gXEC5ZAm05sOExGjAfmliLiAXcc1RZQTh2IRrG6ewI/ePpRT0I8YUV2Ldx3mQncZw0pEFBDeDHNx +ILPwBHBwGkEq4LCg0ooiylt4xrEcWejCq05TgeYqEi0BmJhEDhs6TDhUldHW59RhkVsSLhuBbZTJ +qsyvLp9J0WKRXDkZLVFclMAAGxNR7YU5QQ1EaJEfS0TX4HhFu+5avOswF4NMl0eGDxKDEYkvDHkC +4V3o5kEGDOPCwY2KaIKybDjKsjJpM7+7fC5V8KG4n3Nzwepwq2zcXBxrdnNxrIWbS1LdXGC8L7q5 +ZDRaoIlRLCvQQBn0I6C1CFsDz4jbDu0oBjUAaGPRVIA2dF2xqGihBSSJskpVHDrIOFSyZYJpURkL +IOTRT4WePEmUOGKBy+iDRGUClKYosbeiRNxBi4xuCvQIRlVvInE7RfQmlFUo/1nF18QSrzlxcxG5 +xqMfh7jQ0JeG+pQiHBUnEqpmcIyEKJxiOHthiZhbyAtZ0c0BouDoKwoFx0RY8hpOi2tDJicR4cYR +7xu6xMhxBV7LEZNZVjGM/jD8BRBEOBF6z2CkCApgVlaYUxQ9hRFeUxRgEjTUOaI/otNMa2kQlspw +6GDRezEKmnliVgLj5UBTg8MkkwWjcgrT8cAtRBRnuMXoSOOQIEgngB+1EHS+SRySmIiCNYLmKScg +USP5yKjqwUpA1spIh3iMiJwiXEIhSPTTRKNq2EB1jQqKaxTQBBhTXaOi5hrlFlyj7IJrFOYBjosi +JIKyBNaLvh5CKKCHMKiHKO5GpBiM4PACKuEcg5qbdkRBhSDvCSIwaWQGQjQCK4ZHgog8F6hRBnMD +34OHircJoBPRaObQlGAjCmcGUgYwQUkDBRNb0KJnRLKfwLii2AtMBOLcIr1ERlGcJVDHoQU1LZkl +DJUokQ0iNVEnBgg4Hl7n0HkUVZkzUfU5UMBFDq0HHmMVMiHfqKS4YdHyAWQAMmFfRRZ1woga2MGR +0Y0gYDhJIjhBB5PMysQw4XmwylAYK6cPNlpGjxi2sCKgXiAqJfH3gdmGDjTSiZFYluxcFIQPaYmi +3sfxsuo0gxYRthIxGVUIDJvIatHhSxyR8DqPh59DhiKyioEDFEe8wgxhqVGVj+PSgLMD61HCeBLL +oH8ZGST6LOAXYLKc+l6EHAwZNw5sKw4dh1FB8dezHJIOMk+Dnz1NfNBmP3tkwc8uWPjZuQU/u6h5 +1XnNzy7qPvWZn33WFtV96hHNzz7Xtuhn51H9jxBWSyw2JHJRwBYOYzLYMvOzEwPY7GfnzH52IAST +n52Z+dmB04DOAfwAqJwHBgK0gfChps6rMoSLomcN0QAnV0RhAu/JnGKdzNoKxjYeScDUJoaBAGA0 +9DAyRKRhZAnIEpQTVbrA+WAjxE7mkBGAugRtOABuGViRsEkCacHzzEWRVyBeAFCGJxYBgioJguIj +YDmF4cObPEGLwn70yAKrRBbSxrBX1Bz24qSFsBenh71ELezF6WEv0SLsFV0Ie0UWwl68Oeyl2DeE +wnlZIFSIZlhPDdDwircRaE5ws6CskOOD+8FEyYFCZiMpwWMiQ4AwgbEz6GuYtRWgDf2caCkAaxcx +ukDeRCUHcSZE8HDAoMSYAP01wiiEg5FscoCA3eHZQk4gS0TWgcxB1zOHngMGhS0GDnji58eRMPSA +yFdpGTkB8E0SH4oi3zGv1zHaaRX58RZr7VZlVOt0WyNXe1z7q+Wu9fuDSW3SGsITd3vUGk8Go5Z7 +/Dn4G1vgFa2715u9zrn+L1T7Dxc= + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/META-INF/context.xml b/P51/apache-tomcat-6.0.14/webapps/ROOT/META-INF/context.xml new file mode 100644 index 0000000..fea2559 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/META-INF/context.xml @@ -0,0 +1,20 @@ + + + + + userdut + + + passworddut + + + driverClassNameoracle.jdbc.driver.OracleDriver + + + urljdbc:oracle:thin:@grive.u-strasbg.fr:1521:ARTICLES_RANDO + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/Article.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/Article.java new file mode 100644 index 0000000..eef381f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/Article.java @@ -0,0 +1,78 @@ +public class Article +{ + private String ref = ""; + private String categ = ""; + private String marque = ""; + private String modele = ""; + private double prix = 0; + private String photo = ""; + private String description = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + public String getCateg() + { + return this.categ; + } + public String getMarque() + { + return this.marque; + } + public String getModele() + { + return this.modele; + } + public double getPrix() + { + return this.prix; + } + public String getPhoto() + { + return this.photo; + } + public String getDescription() + { + return this.description; + } + + public void setRef(String ref) + { + this.ref = ref; + } + public void setCateg(String categ) + { + this.categ = categ; + } + public void setMarque(String marque) + { + this.marque = marque; + } + public void setModele(String modele) + { + this.modele = modele; + } + public void setPrix(double prix) + { + this.prix = prix; + } + public void setPhoto(String photo) + { + this.photo = photo; + } + public void setDescription(String description) + { + this.description = description; + } + + public int getQuantite() + { + return this.quantite; + } + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/Article.java~ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/Article.java~ new file mode 100644 index 0000000..de19f5b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/Article.java~ @@ -0,0 +1,80 @@ +package java; + +public class Article +{ + private String ref = ""; + private String categ = ""; + private String marque = ""; + private String modele = ""; + private double prix = 0; + private String photo = ""; + private String description = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + public String getCateg() + { + return this.categ; + } + public String getMarque() + { + return this.marque; + } + public String getModele() + { + return this.modele; + } + public double getPrix() + { + return this.prix; + } + public String getPhoto() + { + return this.photo; + } + public String getDescription() + { + return this.description; + } + + public void setRef(String ref) + { + this.ref = ref; + } + public void setCateg(String categ) + { + this.categ = categ; + } + public void setMarque(String marque) + { + this.marque = marque; + } + public void setModele(String modele) + { + this.modele = modele; + } + public void setPrix(double prix) + { + this.prix = prix; + } + public void setPhoto(String photo) + { + this.photo = photo; + } + public void setDescription(String description) + { + this.description = description; + } + + public int getQuantite() + { + return this.quantite; + } + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ArticlePanier.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ArticlePanier.java new file mode 100644 index 0000000..6e68ca0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ArticlePanier.java @@ -0,0 +1,25 @@ +public class ArticlePanier +{ + private String ref = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + + public void setRef(String ref) + { + this.ref = ref; + } + + public int getQuantite() + { + return this.quantite; + } + + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ArticlePanier.java~ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ArticlePanier.java~ new file mode 100644 index 0000000..61b7ad3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ArticlePanier.java~ @@ -0,0 +1,27 @@ +package articles; + +public class ArticlePanier +{ + private String ref = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + + public void setRef(String ref) + { + this.ref = ref; + } + + public int getQuantite() + { + return this.quantite; + } + + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ArticlesTag.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ArticlesTag.java new file mode 100644 index 0000000..5f34425 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ArticlesTag.java @@ -0,0 +1,35 @@ +import javax.servlet.jsp.JspException; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import java.io.IOException; +import java.util.Vector; +import com.articles.Article; + +public class ArticlesTag + extends SimpleTagSupport +{ + private String var; + + public void doTag() + throws JspException, IOException + { + Vector

vArts = (Vector
)getJspContext().getAttribute("articles"); + + if (vArts == null) + { + getJspContext().setAttribute(this.var, new Article() ); + getJspBody().invoke(null); + return; + } + + for (int i=0; i vArts = (Vector
)getJspContext().getAttribute("articles"); + + if (vArts == null) + { + getJspContext().setAttribute(this.var, new Article() ); + getJspBody().invoke(null); + return; + } + + for (int i=0; i vs_erreurs = null; + private Vector vs_anomalies = null; + + + public GestionConnexion() + throws ClassNotFoundException, Exception + { + + this.statement = null; + this.resultSet = null; + this.requeteSQL = ""; + + this.paramsConn = new ParametresConnexion(); + + this.vs_erreurs = new Vector(); + this.vs_anomalies = new Vector(); + + try + { + Class.forName(ParametresConnexion.CLASSE).newInstance(); + } + catch (ClassNotFoundException ex) + { + throw ex; + } + catch (Exception ex) + { + throw ex; + } + } + + + public void ouvrir(ParametresConnexion params) + { + if (params == null) + throw new NullPointerException(); + + this.paramsConn.CopierDepuis(params); + + this.ouvrir(); + } + + public void ouvrir() + { + try + { + this.fermerConnexion(); + + this.connection = DriverManager.getConnection(this.paramsConn.getUrl(), + this.paramsConn.Utilisateur, this.paramsConn.Pwd); + + this.traiterWarning(this.connection.getWarnings()); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerConnexion(); + } + } + + public boolean estOuverte() + { + boolean bOuverte = false; + + try + { + if (this.connection != null) + bOuverte = !this.connection.isClosed(); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return bOuverte; + } + + public void fermerRessourcesRequete() + { + try + { + if (this.resultSet != null) + { + this.resultSet.close(); + this.resultSet = null; + } + + if (this.statement != null) + { + this.statement.close(); + this.statement = null; + } + + this.requeteSQL = ""; + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public void fermerConnexion() + { + try + { + this.fermerRessourcesRequete(); + + if (this.connection != null) + { + this.connection.close(); + this.connection = null; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public boolean lancerRequeteSelection(String query) + { + boolean res = true; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + this.traiterWarning(this.statement.getWarnings()); + + this.resultSet = this.statement.executeQuery(query); + this.traiterWarning(this.resultSet.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = false; + } + + return res; + } + + public int lancerRequeteModifBDD(String query) + { + int res = 0; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + + res = this.statement.executeUpdate(query); + this.traiterWarning(this.statement.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = -1; + } + + return res; + } + + public ParametresConnexion getParametresConnexion() + { + return new ParametresConnexion(this.paramsConn); + } + + public String getRequeteSQL() + { + return this.requeteSQL; + } + + public Vector getInfosConnexion() + { + Vector vs_infosConn = new Vector(); + DatabaseMetaData dmd; + + try + { + if (this.estOuverte()) + { + vs_infosConn.add("Etat de la connexion : ouverte"); + vs_infosConn.add("------------------------------"); + + dmd = this.connection.getMetaData(); + + vs_infosConn.add("Connexion : " + dmd.getURL()); + vs_infosConn.add("Driver : " + dmd.getDriverName()); + vs_infosConn.add("Version : " + dmd.getDriverVersion()); + } + else + { + vs_infosConn.add("Etat de la connexion : ferm�e"); + vs_infosConn.add("------------------------------"); + + vs_infosConn.add("Connexion : " + this.paramsConn.getUrl()); + vs_infosConn.add("Utilisateur : " + this.paramsConn.Utilisateur); + vs_infosConn.add("Mot de passe : " + this.paramsConn.Pwd.length() + " caract�re(s)"); + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_infosConn; + } + + public Vector getNomsColonnes() + { + Vector vs_cols = new Vector(); + ResultSetMetaData rsmd; + + try + { + if (this.resultSet != null) + { + rsmd = this.resultSet.getMetaData(); + int nbrCols = rsmd.getColumnCount(); + + for (int idCol = 1; idCol <= nbrCols; idCol++) + if (rsmd.isSearchable(idCol)) + vs_cols.add(rsmd.getColumnName(idCol)); + } + else if (this.statement == null) + this.vs_anomalies.add("Vous n'avez pas encore lanc� la requ�te!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_cols; + } + + public Vector> getDataVector() + { + Vector> v_datas = new Vector>(); + ResultSetMetaData rsmd; + + try + { + rsmd = this.resultSet.getMetaData(); + if (rsmd.getColumnCount() > 0) + { + while (this.resultSet.next()) + { + Vector vo_ligne = new Vector(); + for (int idCol = 1; idCol <= rsmd.getColumnCount(); idCol++) + vo_ligne.add(this.resultSet.getObject(idCol)); + v_datas.add(vo_ligne); + } + } + + if (v_datas.isEmpty()) + this.vs_anomalies.add("Aucune donn�e trouv�e!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return v_datas; + } + + public void traiterSQLException(SQLException ex) + { + String str_ex; + + str_ex = "********* SQLException *********\n"; + while (ex != null) + { + str_ex = "SQLState : " + ex.getSQLState() + "\n"; + str_ex += "Message : " + ex.getMessage() + "\n"; + str_ex += "------------------------------\n"; + this.vs_erreurs.add(str_ex); + + ex = ex.getNextException(); + } + } + + public void traiterWarning(SQLWarning warn) + { + String str_an; + + str_an = "********* SQLWarning *********\n"; + while (warn != null) + { + str_an = "SQLState : " + warn.getSQLState() + "\n"; + str_an += "Message : " + warn.getMessage() + "\n"; + str_an += "------------------------------\n"; + this.vs_anomalies.add(str_an); + + warn = warn.getNextWarning(); + } + } + + public Vector getErreurs() + { + return new Vector(this.vs_erreurs); + } + + public Vector getAnomalies() + { + return new Vector(this.vs_anomalies); + } + + public void effaceErreurs() + { + this.vs_erreurs.clear(); + } + + public void effaceAnomalies() + { + this.vs_anomalies.clear(); + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/GestionConnexion.java~ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/GestionConnexion.java~ new file mode 100644 index 0000000..088e8a1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/GestionConnexion.java~ @@ -0,0 +1,359 @@ +package com.articles; + +import java.sql.*; +import java.util.Vector; + +enum OperationBDD +{ + OP_BDD_SELECTION, + OP_BDD_CREER_TABLE, + OP_BDD_SUPPR_TABLE +} + +public class GestionConnexion +{ + + private ParametresConnexion paramsConn; + + private Connection connection = null; + private Statement statement = null; + + private String requeteSQL = ""; + private ResultSet resultSet = null; + + private Vector vs_erreurs = null; + private Vector vs_anomalies = null; + + + public GestionConnexion() + throws ClassNotFoundException, Exception + { + + this.statement = null; + this.resultSet = null; + this.requeteSQL = ""; + + this.paramsConn = new ParametresConnexion(); + + this.vs_erreurs = new Vector(); + this.vs_anomalies = new Vector(); + + try + { + Class.forName(ParametresConnexion.CLASSE).newInstance(); + } + catch (ClassNotFoundException ex) + { + throw ex; + } + catch (Exception ex) + { + throw ex; + } + } + + + public void ouvrir(ParametresConnexion params) + { + if (params == null) + throw new NullPointerException(); + + this.paramsConn.CopierDepuis(params); + + this.ouvrir(); + } + + public void ouvrir() + { + try + { + this.fermerConnexion(); + + this.connection = DriverManager.getConnection(this.paramsConn.getUrl(), + this.paramsConn.Utilisateur, this.paramsConn.Pwd); + + this.traiterWarning(this.connection.getWarnings()); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerConnexion(); + } + } + + public boolean estOuverte() + { + boolean bOuverte = false; + + try + { + if (this.connection != null) + bOuverte = !this.connection.isClosed(); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return bOuverte; + } + + public void fermerRessourcesRequete() + { + try + { + if (this.resultSet != null) + { + this.resultSet.close(); + this.resultSet = null; + } + + if (this.statement != null) + { + this.statement.close(); + this.statement = null; + } + + this.requeteSQL = ""; + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public void fermerConnexion() + { + try + { + this.fermerRessourcesRequete(); + + if (this.connection != null) + { + this.connection.close(); + this.connection = null; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public boolean lancerRequeteSelection(String query) + { + boolean res = true; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + this.traiterWarning(this.statement.getWarnings()); + + this.resultSet = this.statement.executeQuery(query); + this.traiterWarning(this.resultSet.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = false; + } + + return res; + } + + public int lancerRequeteModifBDD(String query) + { + int res = 0; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + + res = this.statement.executeUpdate(query); + this.traiterWarning(this.statement.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = -1; + } + + return res; + } + + public ParametresConnexion getParametresConnexion() + { + return new ParametresConnexion(this.paramsConn); + } + + public String getRequeteSQL() + { + return this.requeteSQL; + } + + public Vector getInfosConnexion() + { + Vector vs_infosConn = new Vector(); + DatabaseMetaData dmd; + + try + { + if (this.estOuverte()) + { + vs_infosConn.add("Etat de la connexion : ouverte"); + vs_infosConn.add("------------------------------"); + + dmd = this.connection.getMetaData(); + + vs_infosConn.add("Connexion : " + dmd.getURL()); + vs_infosConn.add("Driver : " + dmd.getDriverName()); + vs_infosConn.add("Version : " + dmd.getDriverVersion()); + } + else + { + vs_infosConn.add("Etat de la connexion : ferm�e"); + vs_infosConn.add("------------------------------"); + + vs_infosConn.add("Connexion : " + this.paramsConn.getUrl()); + vs_infosConn.add("Utilisateur : " + this.paramsConn.Utilisateur); + vs_infosConn.add("Mot de passe : " + this.paramsConn.Pwd.length() + " caract�re(s)"); + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_infosConn; + } + + public Vector getNomsColonnes() + { + Vector vs_cols = new Vector(); + ResultSetMetaData rsmd; + + try + { + if (this.resultSet != null) + { + rsmd = this.resultSet.getMetaData(); + int nbrCols = rsmd.getColumnCount(); + + for (int idCol = 1; idCol <= nbrCols; idCol++) + if (rsmd.isSearchable(idCol)) + vs_cols.add(rsmd.getColumnName(idCol)); + } + else if (this.statement == null) + this.vs_anomalies.add("Vous n'avez pas encore lanc� la requ�te!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_cols; + } + + public Vector> getDataVector() + { + Vector> v_datas = new Vector>(); + ResultSetMetaData rsmd; + + try + { + rsmd = this.resultSet.getMetaData(); + if (rsmd.getColumnCount() > 0) + { + while (this.resultSet.next()) + { + Vector vo_ligne = new Vector(); + for (int idCol = 1; idCol <= rsmd.getColumnCount(); idCol++) + vo_ligne.add(this.resultSet.getObject(idCol)); + v_datas.add(vo_ligne); + } + } + + if (v_datas.isEmpty()) + this.vs_anomalies.add("Aucune donn�e trouv�e!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return v_datas; + } + + public void traiterSQLException(SQLException ex) + { + String str_ex; + + str_ex = "********* SQLException *********\n"; + while (ex != null) + { + str_ex = "SQLState : " + ex.getSQLState() + "\n"; + str_ex += "Message : " + ex.getMessage() + "\n"; + str_ex += "------------------------------\n"; + this.vs_erreurs.add(str_ex); + + ex = ex.getNextException(); + } + } + + public void traiterWarning(SQLWarning warn) + { + String str_an; + + str_an = "********* SQLWarning *********\n"; + while (warn != null) + { + str_an = "SQLState : " + warn.getSQLState() + "\n"; + str_an += "Message : " + warn.getMessage() + "\n"; + str_an += "------------------------------\n"; + this.vs_anomalies.add(str_an); + + warn = warn.getNextWarning(); + } + } + + public Vector getErreurs() + { + return new Vector(this.vs_erreurs); + } + + public Vector getAnomalies() + { + return new Vector(this.vs_anomalies); + } + + public void effaceErreurs() + { + this.vs_erreurs.clear(); + } + + public void effaceAnomalies() + { + this.vs_anomalies.clear(); + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ListeArticles.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ListeArticles.java new file mode 100644 index 0000000..70de912 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ListeArticles.java @@ -0,0 +1,84 @@ +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class ListeArticles + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + String sAction; + String sInfoArtRef; + String sPageAffichage; + Vector
vArts = new Vector
(); + Article tmpArt = null; + + sAction = request.getParameter("action"); + if (sAction.equals("info")) + { + sInfoArtRef = request.getParameter("artRef"); + + tmpArt = new Article(); + tmpArt.setRef(sInfoArtRef); + + request.setAttribute("art", tmpArt); + sPageAffichage = "/infos.jsp"; + } + else + { + for (int i=0; i<5; i++) + { + tmpArt = new Article(); + tmpArt.setRef("refArt"+i); + tmpArt.setCateg("cat"+i); + tmpArt.setDescription("desc"+1); + vArts.add(tmpArt); + } + + if (!vArts.isEmpty()) + { + request.setAttribute("articles", vArts); + + sPageAffichage = "/listeArticles.jsp"; + } + else + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur("Articles non disponibles")); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + } + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + public String getServletInfo() { + return "Gestion du panier"; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ListeArticles.java~ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ListeArticles.java~ new file mode 100644 index 0000000..7716d68 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/ListeArticles.java~ @@ -0,0 +1,86 @@ +package com.servlets; + +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class ListeArticles + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + String sAction; + String sInfoArtRef; + String sPageAffichage; + Vector
vArts = new Vector
(); + Article tmpArt = null; + + sAction = request.getParameter("action"); + if (sAction.equals("info")) + { + sInfoArtRef = request.getParameter("artRef"); + + tmpArt = new Article(); + tmpArt.setRef(sInfoArtRef); + + request.setAttribute("art", tmpArt); + sPageAffichage = "/infos.jsp"; + } + else + { + for (int i=0; i<5; i++) + { + tmpArt = new Article(); + tmpArt.setRef("refArt"+i); + tmpArt.setCateg("cat"+i); + tmpArt.setDescription("desc"+1); + vArts.add(tmpArt); + } + + if (!vArts.isEmpty()) + { + request.setAttribute("articles", vArts); + + sPageAffichage = "/listeArticles.jsp"; + } + else + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur("Articles non disponibles")); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + } + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + public String getServletInfo() { + return "Gestion du panier"; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/Panier.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/Panier.java new file mode 100644 index 0000000..dfcbfa4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/Java/Panier.java @@ -0,0 +1,93 @@ +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.lang.*; +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class Panier + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + HttpSession session = request.getSession(true); + Vector vArtsPan = null; + Vector
vArts = new Vector
(); + Article tmpArt = null; + String sAction; + String sPageAffichage; + + GestionnairePanier panier = (GestionnairePanier)session.getAttribute("caddy"); + if ( panier == null ) + { + panier = new GestionnairePanier(); + + session.setAttribute("caddy", panier) ; + } + + sAction = request.getParameter("action"); + if (sAction == null) + { + ; + } + else if (sAction.equals("add")) + { + panier.ajouterAchat(request.getParameter("artRef"), Integer.parseInt(request.getParameter("artQuant"))); + } + else if (sAction.equals("del")) + { + panier.enleverAchat(request.getParameter("artRef")); + } + + vArtsPan = panier.donneContenu(); + + for (int i=0; i vArtsPan = null; + Vector
vArts = new Vector
(); + Article tmpArt = null; + String sAction; + String sPageAffichage; + + GestionnairePanier panier = (GestionnairePanier)session.getAttribute("caddy"); + if ( panier == null ) + { + panier = new GestionnairePanier(); + + session.setAttribute("caddy", panier) ; + } + + sAction = request.getParameter("action"); + if (sAction == null) + { + ; + } + else if (sAction.equals("add")) + { + panier.ajouterAchat(request.getParameter("artRef"), Integer.parseInt(request.getParameter("artQuant"))); + } + else if (sAction.equals("del")) + { + panier.enleverAchat(request.getParameter("artRef")); + } + + vArtsPan = panier.donneContenu(); + + for (int i=0; i +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + Contenu du Panier + + + +

Contenu du Panier

+

+ +
+ + + + + + + + + + + + + + + + + + +
DescriptionComplmntPanier
+ + + + + + + + + + + + + + + + + + +
Référence : ${artRef.ref}
Marque : ${artRef.marque}
Modèle : ${artRef.modele}
Description : ${artRef.description}
Prix : ${artRef.prix}
+
+ Quantit : ${artRef.quantite} + + ajouter au panier +
+ +
+ + Continuez vos achats + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/listeArticles.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/listeArticles.jsp new file mode 100644 index 0000000..d9e4398 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/listeArticles.jsp @@ -0,0 +1,58 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> + + + + + + + + Contenu du Panier + + + +

Liste des articles

+

+ + + + + + + + + + + + + + + +
DescriptionComplment
+ + + + + + + + + + + + + + + + + + +
Référence : ${artRef.ref}
Marque : ${artRef.marque}
Modèle : ${artRef.modele}
Description : ${artRef.description}
Prix : ${artRef.prix}
+
+ infos +
+ + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/panierVide.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/panierVide.jsp new file mode 100644 index 0000000..b043b41 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/panierVide.jsp @@ -0,0 +1,20 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> + + + + + + + + Panier + + + +

Panier

+

panier vide

+ Continuez vos achats + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/penser au c s s b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/penser au c s s new file mode 100644 index 0000000..8d1c8b6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/Matdelavegas/penser au c s s @@ -0,0 +1 @@ + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/Article.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/Article.java new file mode 100644 index 0000000..eef381f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/Article.java @@ -0,0 +1,78 @@ +public class Article +{ + private String ref = ""; + private String categ = ""; + private String marque = ""; + private String modele = ""; + private double prix = 0; + private String photo = ""; + private String description = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + public String getCateg() + { + return this.categ; + } + public String getMarque() + { + return this.marque; + } + public String getModele() + { + return this.modele; + } + public double getPrix() + { + return this.prix; + } + public String getPhoto() + { + return this.photo; + } + public String getDescription() + { + return this.description; + } + + public void setRef(String ref) + { + this.ref = ref; + } + public void setCateg(String categ) + { + this.categ = categ; + } + public void setMarque(String marque) + { + this.marque = marque; + } + public void setModele(String modele) + { + this.modele = modele; + } + public void setPrix(double prix) + { + this.prix = prix; + } + public void setPhoto(String photo) + { + this.photo = photo; + } + public void setDescription(String description) + { + this.description = description; + } + + public int getQuantite() + { + return this.quantite; + } + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/ArticlePanier.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/ArticlePanier.java new file mode 100644 index 0000000..6e68ca0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/ArticlePanier.java @@ -0,0 +1,25 @@ +public class ArticlePanier +{ + private String ref = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + + public void setRef(String ref) + { + this.ref = ref; + } + + public int getQuantite() + { + return this.quantite; + } + + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/ArticlesTag.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/ArticlesTag.java new file mode 100644 index 0000000..5f34425 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/ArticlesTag.java @@ -0,0 +1,35 @@ +import javax.servlet.jsp.JspException; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import java.io.IOException; +import java.util.Vector; +import com.articles.Article; + +public class ArticlesTag + extends SimpleTagSupport +{ + private String var; + + public void doTag() + throws JspException, IOException + { + Vector
vArts = (Vector
)getJspContext().getAttribute("articles"); + + if (vArts == null) + { + getJspContext().setAttribute(this.var, new Article() ); + getJspBody().invoke(null); + return; + } + + for (int i=0; i vs_erreurs = null; + private Vector vs_anomalies = null; + + + public GestionConnexion() + throws ClassNotFoundException, Exception + { + + this.statement = null; + this.resultSet = null; + this.requeteSQL = ""; + + this.paramsConn = new ParametresConnexion(); + + this.vs_erreurs = new Vector(); + this.vs_anomalies = new Vector(); + + try + { + Class.forName(ParametresConnexion.CLASSE).newInstance(); + } + catch (ClassNotFoundException ex) + { + throw ex; + } + catch (Exception ex) + { + throw ex; + } + } + + + public void ouvrir(ParametresConnexion params) + { + if (params == null) + throw new NullPointerException(); + + this.paramsConn.CopierDepuis(params); + + this.ouvrir(); + } + + public void ouvrir() + { + try + { + this.fermerConnexion(); + + this.connection = DriverManager.getConnection(this.paramsConn.getUrl(), + this.paramsConn.Utilisateur, this.paramsConn.Pwd); + + this.traiterWarning(this.connection.getWarnings()); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerConnexion(); + } + } + + public boolean estOuverte() + { + boolean bOuverte = false; + + try + { + if (this.connection != null) + bOuverte = !this.connection.isClosed(); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return bOuverte; + } + + public void fermerRessourcesRequete() + { + try + { + if (this.resultSet != null) + { + this.resultSet.close(); + this.resultSet = null; + } + + if (this.statement != null) + { + this.statement.close(); + this.statement = null; + } + + this.requeteSQL = ""; + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public void fermerConnexion() + { + try + { + this.fermerRessourcesRequete(); + + if (this.connection != null) + { + this.connection.close(); + this.connection = null; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public boolean lancerRequeteSelection(String query) + { + boolean res = true; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + this.traiterWarning(this.statement.getWarnings()); + + this.resultSet = this.statement.executeQuery(query); + this.traiterWarning(this.resultSet.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = false; + } + + return res; + } + + public int lancerRequeteModifBDD(String query) + { + int res = 0; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + + res = this.statement.executeUpdate(query); + this.traiterWarning(this.statement.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = -1; + } + + return res; + } + + public ParametresConnexion getParametresConnexion() + { + return new ParametresConnexion(this.paramsConn); + } + + public String getRequeteSQL() + { + return this.requeteSQL; + } + + public Vector getInfosConnexion() + { + Vector vs_infosConn = new Vector(); + DatabaseMetaData dmd; + + try + { + if (this.estOuverte()) + { + vs_infosConn.add("Etat de la connexion : ouverte"); + vs_infosConn.add("------------------------------"); + + dmd = this.connection.getMetaData(); + + vs_infosConn.add("Connexion : " + dmd.getURL()); + vs_infosConn.add("Driver : " + dmd.getDriverName()); + vs_infosConn.add("Version : " + dmd.getDriverVersion()); + } + else + { + vs_infosConn.add("Etat de la connexion : ferm�e"); + vs_infosConn.add("------------------------------"); + + vs_infosConn.add("Connexion : " + this.paramsConn.getUrl()); + vs_infosConn.add("Utilisateur : " + this.paramsConn.Utilisateur); + vs_infosConn.add("Mot de passe : " + this.paramsConn.Pwd.length() + " caract�re(s)"); + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_infosConn; + } + + public Vector getNomsColonnes() + { + Vector vs_cols = new Vector(); + ResultSetMetaData rsmd; + + try + { + if (this.resultSet != null) + { + rsmd = this.resultSet.getMetaData(); + int nbrCols = rsmd.getColumnCount(); + + for (int idCol = 1; idCol <= nbrCols; idCol++) + if (rsmd.isSearchable(idCol)) + vs_cols.add(rsmd.getColumnName(idCol)); + } + else if (this.statement == null) + this.vs_anomalies.add("Vous n'avez pas encore lanc� la requ�te!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_cols; + } + + public Vector> getDataVector() + { + Vector> v_datas = new Vector>(); + ResultSetMetaData rsmd; + + try + { + rsmd = this.resultSet.getMetaData(); + if (rsmd.getColumnCount() > 0) + { + while (this.resultSet.next()) + { + Vector vo_ligne = new Vector(); + for (int idCol = 1; idCol <= rsmd.getColumnCount(); idCol++) + vo_ligne.add(this.resultSet.getObject(idCol)); + v_datas.add(vo_ligne); + } + } + + if (v_datas.isEmpty()) + this.vs_anomalies.add("Aucune donn�e trouv�e!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return v_datas; + } + + public void traiterSQLException(SQLException ex) + { + String str_ex; + + str_ex = "********* SQLException *********\n"; + while (ex != null) + { + str_ex = "SQLState : " + ex.getSQLState() + "\n"; + str_ex += "Message : " + ex.getMessage() + "\n"; + str_ex += "------------------------------\n"; + this.vs_erreurs.add(str_ex); + + ex = ex.getNextException(); + } + } + + public void traiterWarning(SQLWarning warn) + { + String str_an; + + str_an = "********* SQLWarning *********\n"; + while (warn != null) + { + str_an = "SQLState : " + warn.getSQLState() + "\n"; + str_an += "Message : " + warn.getMessage() + "\n"; + str_an += "------------------------------\n"; + this.vs_anomalies.add(str_an); + + warn = warn.getNextWarning(); + } + } + + public Vector getErreurs() + { + return new Vector(this.vs_erreurs); + } + + public Vector getAnomalies() + { + return new Vector(this.vs_anomalies); + } + + public void effaceErreurs() + { + this.vs_erreurs.clear(); + } + + public void effaceAnomalies() + { + this.vs_anomalies.clear(); + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/ListeArticles.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/ListeArticles.java new file mode 100644 index 0000000..70de912 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/ListeArticles.java @@ -0,0 +1,84 @@ +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class ListeArticles + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + String sAction; + String sInfoArtRef; + String sPageAffichage; + Vector
vArts = new Vector
(); + Article tmpArt = null; + + sAction = request.getParameter("action"); + if (sAction.equals("info")) + { + sInfoArtRef = request.getParameter("artRef"); + + tmpArt = new Article(); + tmpArt.setRef(sInfoArtRef); + + request.setAttribute("art", tmpArt); + sPageAffichage = "/infos.jsp"; + } + else + { + for (int i=0; i<5; i++) + { + tmpArt = new Article(); + tmpArt.setRef("refArt"+i); + tmpArt.setCateg("cat"+i); + tmpArt.setDescription("desc"+1); + vArts.add(tmpArt); + } + + if (!vArts.isEmpty()) + { + request.setAttribute("articles", vArts); + + sPageAffichage = "/listeArticles.jsp"; + } + else + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur("Articles non disponibles")); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + } + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + public String getServletInfo() { + return "Gestion du panier"; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/MesHaricots/MonUtilisateur.class b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/MesHaricots/MonUtilisateur.class new file mode 100644 index 0000000..9e9050b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/MesHaricots/MonUtilisateur.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/MesHaricots/MonUtilisateur.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/MesHaricots/MonUtilisateur.java new file mode 100644 index 0000000..58e5cca --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/MesHaricots/MonUtilisateur.java @@ -0,0 +1,17 @@ +package MesHaricots; + +public class MonUtilisateur { + + public String identifiant = ""; + + public MonUtilisateur() { + } + + public String getId() { + return identifiant; + } + + public void setId(String identity) { + this.identifiant = identity; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/MonUtilisateur.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/MonUtilisateur.java new file mode 100644 index 0000000..c394512 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/MonUtilisateur.java @@ -0,0 +1,18 @@ +package MesHaricots; + +public class MonUtilisateur { + + private String identifiant; + + public MonUtilisateur() { + } + + + public String getId() { + return identifiant; + } + + public void setId(String id) { + this.identifiant = id; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/Panier.java b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/Panier.java new file mode 100644 index 0000000..dfcbfa4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/classes/Panier.java @@ -0,0 +1,93 @@ +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.lang.*; +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class Panier + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + HttpSession session = request.getSession(true); + Vector vArtsPan = null; + Vector
vArts = new Vector
(); + Article tmpArt = null; + String sAction; + String sPageAffichage; + + GestionnairePanier panier = (GestionnairePanier)session.getAttribute("caddy"); + if ( panier == null ) + { + panier = new GestionnairePanier(); + + session.setAttribute("caddy", panier) ; + } + + sAction = request.getParameter("action"); + if (sAction == null) + { + ; + } + else if (sAction.equals("add")) + { + panier.ajouterAchat(request.getParameter("artRef"), Integer.parseInt(request.getParameter("artQuant"))); + } + else if (sAction.equals("del")) + { + panier.enleverAchat(request.getParameter("artRef")); + } + + vArtsPan = panier.donneContenu(); + + for (int i=0; i + + XML LIBRARY + <%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %> + + FMT LIBRARY + <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> + + SQL LIBRARY + <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %> + + FUNCTIONS LIBRARY + <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> + +--------------------------------------------------------------------------- +COMPATIBILITY + +The 1.1 version of the Standard Taglib has been tested under Tomcat 5.0.3 +and should work in any compliant JSP 2.0 container. + +--------------------------------------------------------------------------- +COMMENTS AND QUESTIONS + +Please join the taglibs-user@jakarta.apache.org mailing list if you have +general usage questions about JSTL. + +Comments about the JSTL specification itself should be sent to +jsr-52-comments@jcp.org. + +Enjoy! + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/GettingStarted.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/GettingStarted.html new file mode 100644 index 0000000..3561998 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/GettingStarted.html @@ -0,0 +1,343 @@ + + +Getting Started + + + + +

Getting Started with the Standard Tag Library

+ +

This document describes how to get up and running quickly with the +Standard Taglib, an implementation of the Java Server Pages™ Standard +Tag Library (JSTL). This document may be useful to page authors and tag +developers who are interested in JSTL's functionality. Using the +"standard-examples" application is also a great way to familiarize +yourself with JSTL's functionality and use.

+ +
+

Introduction

+ + +

What is JSTL? Where does it come from?

+ +

JSTL is the Java Server Pages Standard Tag Library. It is an +effort of the Java Community Process (JCP) and comes out of the +JSR-052 expert group.

+ + +

What does JSTL do?

+ +

JSTL encapsulates, as simple tags, core functionality common to many +JSP applications. For example, instead of suggesting that you iterate +over lists using a scriptlet or different iteration tags from +numerous vendors, JSTL defines a standard <forEach> tag that works +the same everywhere.

+ +

This standardization lets you learn a single tag and use it on multiple +JSP containers. Also, when tags are standard, containers can recognize +them and optimize their implementations.

+ +

JSTL provides support for core iteration +and control-flow features, text inclusion, internationalizaton-capable +formatting tags, and XML-manipulation tags. The expression language that +JSTL defined in the 1.0 version of the specification is now an integral part +of the JSP 2.0 specification. +Developers may also be interested in JSTL's current extensibility +mechanisms; JSTL currently provides a framework for integrating custom +tags with JSTL tags.

+ +

What has changed in this Standard taglib release?

+

Please see the Release Notes document for + information on any release changes.

+ +

How can I learn more about JSTL

+ +

Sun's official JSTL page at http://java.sun.com/products/jstl lists books and other +resources that will help you learn JSTL.

+ +
+

Getting started quickly

+ +

JSTL 1.1 requires a JSP 2.0 container. We recommend you +test the Standard Taglib with Tomcat 5.x. JSTL 1.0 only required +a JSP 1.2 container and is also available for download from +Jakarta Taglibs.

+ +

To install Tomcat, follow the instructions at http://jakarta.apache.org/tomcat. + +

To use the Standard Taglib from its Jakarta Taglibs distribution, +simply copy the JAR files in the distribution's 'lib' directory to your +application's WEB-INF/lib directory. The following JAR files are included +in the Standard Taglib distribution and need to be copied to your +application's WEB-INF/lib directory:

+ + + + + + + + + + + + + + + + + +
NameDescriptionJar File Name
+ + +
JSTL API classes
+
+
jstl.jar
+
+ + +
Standard Taglib JSTL implementation classes
+
+
standard.jar
+
+ +

The standard tag library also has the following dependencies:

+
    +
  • JAXP 1.2
  • +
  • Xalan 2.5
  • +
  • JDBC Standard Extension 2.0
  • +
+ +

+However, since all of these dependencies are included in J2SE 1.4.2 and higher, +it is therefore recommended to use J2SE 1.4.2 or higher to avoid having to +worry about these other dependencies. +

+ +

+If the java platform under which you run your JSP container does not +provide these dependencies, they must be made available either globally +to all web-applications by your container, or individually within the +WEB-INF/lib directory of your web-application.

+ +

+For convenience, these jar files have been included in directory +lib/old-dependencies of this distribution.

+ + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionJar File Name
+ + +
+

JDBC implementation classes.

+

Already present in J2SE 1.4.

+
+
+
jdbc2_0-stdext.jar
+
+ + +
Standard Taglib requires a JAXP 1.2 compliant parser
+
+
+ + + + + +
example of JAXP 1.2 impl classes +
    +
  • jaxp-api.jar
  • +
  • dom.jar
  • +
  • sax.jar
  • +
  • xercesImpl.jar
  • +
+
+
+
+ + +

Apache XML Xalan XSLT
+ Transformation Processor.
+

+
+
xalan.jar
+
+ + + +

Multiple tag libraries

+ +

+The constituent tag libraries of Standard Taglib are as follows: +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Funtional AreaURIPrefixExample
Corehttp://java.sun.com/jsp/jstl/core +
c
+
<c:tagname ...>
XML processinghttp://java.sun.com/jsp/jstl/xml +
x
+
<x:tagname ...>
I18N capable formattinghttp://java.sun.com/jsp/jstl/fmt +
fmt
+
<fmt:tagname ...>
Database access (SQL)http://java.sun.com/jsp/jstl/sql +
sql
+
<sql:tagname ...>
Functionshttp://java.sun.com/jsp/jstl/functions +
fn
+
fn:functionName(...)
+ +

Using the Standard Taglib libraries is simple; you simply need to import +them into your JSP pages using the taglib directive. For +instance, to import the 'core' JSTL library into your page, you would +include the following line at the top of your JSP page, as +follows:

+ +
+    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
+
+ +

Expression language

+ +

The EL makes it easy for page authors to +access and manipulate application data. +For an overview of the EL, see +Chapter 3 of the JSTL Specification.

+ +

Topics covered in JSTL

+ +

As we mentioned above, JSTL includes core tags to support iteration, +conditionals, and expression-language support. It also supports EL functions +for string manipulation. For more information on +precisely how these tags work, you should read the JSTL specification. Here, we +just offer a quick roadmap of each feature in order to help orient +you.

+ +
+
Iteration
+
The core iteration tag is <forEach>, which iterates over most collections + and similar objects you'd think to iterate over. <forTokens> lets you + iterate over tokens in a String object; it lets you specify the String + and the delimiters.
+
Conditionals
+
JSTL supports a simple conditional <if> tag along with a collection + of tags -- <choose>, <when>, and <otherwise> -- that support + mutually exclusive conditionals. These latter three tags let you implement + a typical if/else if/else if/else structure.
+
Expression language
+
JSTL provides a few tags to facilitate use of the expression language. <out> + prints out the value of a particular expression in the current EL, similar + to the way that the scriptlet expression (<%= ... %>) syntax prints + out the value of a expression in the scripting language (typically Java). + <set> lets you set a scoped attribute (e.g., a value in the request, + page, session, or application scopes) with the value of an expression.
+
Text inclusion
+
JSP supports the jsp:include tag, but this standard action is limited + in that it only supports relative URLs. JSTL introduces the c:import + tag, which lets you retrieve absolute URLs. For instance, you can use c:import + to retrieve information from the web using HTTP URLs, or from a file server + using an FTP URL. The tag also has some advanced support for performance optimizations, + avoiding unnecessary buffering of data that's retrieved.
+
I18N-capable text formatting
+
Formatting data is one of the key tasks in many JSP pages. JSTL introduces + tags to support data formatting and parsing. These tags rely on convenient + machinery to support internationalized applications.
+
XML manipulation
+
You can't look anywhere these days without seeing XML, and JSTL gives you + convenient support for manipulating it from your JSP pages. Parse documents, + use XPath to select content, and perform XSLT transformations from within + your JSP pages.
+
Database access
+
Easily access relational databases using the SQL actions. You can perform database queries, easily access results, perform updates, and group several operations into a transaction.
+
Functions
+
String manipulations can be performed using the functions provided in +JSTL.
+
 
+
+ +

For tag developers...

+ +

Developers of custom tags should also read the JSTL specification. JSTL +defines some abstract classes that assist with rapid development of tags +and promote integration of custom tags with JSTL's tag set.

+ +

For instance, extending +javax.servlet.jsp.jstl.core.ConditionalTagSupport lets you write a +conditional tag by merely implementing a single method that returns a +boolean value correspondent with your tag's desired conditional +behavior; also, this base class promotes JSTL's recommended model of +conditional-tag design.

+ +

Similarly, javax.servlet.jsp.jstl.core.IteratorTagSupport lets +you easily implement iteration tags. The handlers for the <forEach> +and <forTokens> tags extend this class and thus implement the +javax.servlet.jsp.jstl.core.IteratorTag interface, which provides +a well-defined mechanism for iteration tags to communicate with custom +subtags you can write. See the "standard-examples" application for one +example of how you might use such custom subtags.

+ + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/ReleaseNotes.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/ReleaseNotes.html new file mode 100644 index 0000000..76f032c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/ReleaseNotes.html @@ -0,0 +1,750 @@ + + +Standard 1.1 Release Notes + + + + +
+

+Standard: An Implementation of the JSP™ Standard Tag Library (JSTL)
+

+Version: 1.1.2
+Release Notes +

+
+ +

The Standard 1.1.2 release is an implementation of the JSTL 1.1 Specification.

+ +

The Standard Taglib, which is hosted at Apache, is used as the source repository for the JSTL reference implementation supplied by Sun Microsystems, Inc.

+
+ +

Release History

+ + +
October 2004 • Standard 1.1.2
+

The latest implementation is available from the Nightly Builds.

+
Bugs fixed since Standard 1.1.1 Taglib release:
+
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + Bug Id
    +
    Summary
    + + +

    Close statement created in update tag. It is good programming pro-active to close statements as soon as they are finished even though they will also be closed when the connection that created them is closed.

    +
    + + +

    According to the W3C document the schemaLocation declaration is made up of a pair of URI references. One defines the namespace name and the other is a hint as to the location of the schema document. The space in the schemaLocation definition separates the two declarations.

    +

    For a complete explanation you can take a look at Section 4.3.2 of W3C Xml Schema Document +

    In the JSTL case the location is not an absolute URI which can be confusing especially to some IDE's. Went ahead and changed it to be an absolute URI pointing to the schema document location.

    +
    + + +

    Fixed implementation so that it compiles under J2SE 5.0. Changed the J2SE 5.0 reserved keyword "enum" to "enum_".

    +

    NOTE: the JAXP 1.2 classes will need to be specified with J2SE 5.0 since the the 5.0 bundled JAXP 1.3 packages have been moved around and re-named.

    +
    + + +

    Followed the BluePrints Guidelines for web application project structure. Most IDEs assume the BluePrints structure so abiding by these guidelines will help them integrate the examples.

    +

    The following changes were made to the examples directory structure:

    +
      +
    • moved the examples deployment descriptor to the web/WEB-INF directory out from conf
    • +
    • moved the jstl-examples.tld to web/WEB-INF/tlds
    • +
    • updated build.xml to reflect new directory structure
    • +
    +
    + + +

    Fixed XPath Expression evaluation so that the expressions are evaluated relative to the document Node as opposed to the document Root.

    +
    +
    +
+
+

Other changes and additions:

+
    +
  • In JstlUriResolver when external entitities are resolved the 'base' varies from different Xalan implementations. Fixed how base is handled.
  • +
+
+ + +
July 2004 • Standard 1.1.1

+
Bugs fixed since Standard 1.1.0 Taglib release:
+
    +
    + + + + + + + + + + + + + + + + + + + + + +
    +
    + Bug Id
    +
    Summary
    + + Substituted static values where Boolean objects were created.
    + + Optimization of the xml escaping used by JSTL Functions and the out tag handlers.
    + + Removed synchronization on getEvaluatorByName() method. Now synchronizing on nameMap and allowing reads to occur without blocking. Should be a performance improvement.
    + + Remove quotes from prefix when throwing an exception
    +
    +
+
+

Other changes and additions:

+
    +
  • Fixed Core TLV to allow EL and RT based actions to be mixed as allowed by the JSTL specification.
  • +
  • Trimmed sql dataSource attribute tokens so any spaces in the comma delimited list are ignored.
  • +
  • Added Junit and Cactus testing framework. Documentation is in README_src.txt available in the source distribution.
  • +
  • Updated licenses to the new Apache License, Version 2.0.
  • +
+
+
January 2004 • Standard 1.1.0 +

+This is a complete implementation of the JSTL 1.1 Maintenance Release. +

+

Bugs fixed since Standard 1.1.0-B1 Taglib release:
+
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    Bug Id
    +
    Summary
    + + Illegal scope attribute without var in "fmt:setLocale" tag
    + + ResultImpl should implement java.io.Serializable
    + + IteratorTagSupport example is missing
    + + tag url generate invalid result for root context
    + + accept-language header missing and fallback locale
    + + permittedTaglibs.tld and scriptfree.tld do not validate in xml parser
    + + Xml filter example doesn't work
    + + <c:out> doesn't work properly when tag handlers are pooling
    +
    +
+ +
+

Other changes and additions:

+
    +
  • Regarding bug #24892, it's important to note that relying on the serializability of Result objects might not be portable across different implementations of the JSTL spec. Also, ResultImpl will be serializable only if the values returned by the ResultSet are serializable too, which depends on the JDBC driver being used. +
+
+ + +
September 2003 • Standard 1.1.0-B1
+

+This is a complete implementation of the JSTL 1.1 Maintenance Release. +

+

Bugs fixed since Standard 1.0.3 Taglib release:
+
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    Bug Id
    +
    Summary
    + + +fmt:formatNumber now removes the scoped variable when the +value is null or empty. +
    + + +c:param now encodes URL with URLEncoder.encode(str, encoding) +
    + + +PreparedStatement used in sql:query closed immediately after use to avoid leaks. +
    + + +Advisory character encoding now properly fetched from "charset" attribute +of "content-type" header (required change to spec)
    + + +Fixed processing of Locale when variant is used. +
    + + +<sql:setDataSource> did not allow the specification of a scope without +a var attribute to set the SQl DataSource configuration setting. Fixed. +
    + + +Page scope not properly set with <c:if>. Fixed. +
    + + +Config.find() fails on invalidated sessions. Fixed. +
    + + +Consistent use JspTagException: (1) always include original exception when +available. (2) use ex.toString() instead of getMessage(). +
    + + +Type conversion rules now properly applied when setting a bean property using +<c:set>. +
    +
    +
+ +
+

Other changes and additions:

+
    +
  • Added Version class to easily tell the version of the jar file.
  • +
  • Added a few sample cases to highlight url rewriting and encoding.
  • +
  • New sample JSP page demoing I18N-Formatting capabilities.
  • +
  • Our dependency on jaxen and saxpath has been removed by switching + our XPath support to Xalan.
  • +
  • Added attribute descriptions in the TLDs.
  • +
  • javax.servlet.jsp.jstl.sql.ResultImpl now implements java.io.Serializable, +and insert a comment in the Release Notes stating that relying on the +serializability of Result objects might not be portable across +different implementations of the JSTL spec +
+
+ + +
February 2003 • Standard 1.0.3
+

Bugs fixed since Standard 1.0.2 Taglib release:
+
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    Bug Id
    +
    Summary
    + + + Tag-handler reuse discovered a bug in 's processing of default + values. This bug was fixed by initializing an instance variable + in doStartTag(). +
    + + We revisited this bug prompted by a +report from a user of the J2EE RI and adjusted the EL implementation to +accommodate the J2EE RI's default security restrictions. +
    + + + Minor display-related bug in ScriptFreeTLV +
    + + +There still was a bug when the fmt:message tag was pooled +and reused, and a bundle was not specified explicitely. +
    + + +Added <uri> definition in WEB-INF/jstl-examples.tld for +/jstl-examples-taglib. +
    + + +If is used to set a property of a bean, and a setter method +does not exist for that bean, a NullPointerException was thrown. +A JspException with an appropriate error message is now thrown instead. +
    + + +The tag handler for <fmt:requestEncoding> was not resetting the encoding value it picks up from the +javax.servlet.jsp.jstl.fmt.request.charset session attribute between invokations. +
    + + +We now expose the exception object thrown by a bean property evaluated by the +EL (not just the exception message). +
    + + +Improved the exception message when there is a failure accessing an absolute URL. +
    + + +Fixed minor typos in standard-examples. +
    +
    +
+
+

Other changes and additions:

+
    +
  • Fixed minor typos in JSTL API Javadoc documentation.
  • +
  • Added TLV examples (scriptFree and PermittedTaglibs)
  • +
  • Fixed minor typo on standard/examples/web/xml/ForEach.jsp
  • +
  • Improved Japanese localization
  • +
+
+ +
13 October 2002 • Standard 1.0.2 Taglib released
+

+

Bugs fixed since Standard 1.0.1 Taglib release:
+
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    Bug Id
    +
    Summary
    + + The fmt tags used to store the BodyContent + from one tag in the same field variable they use for value. This caused problems + in a container that supported tag re-use since the old BodyContent was used.
    + + The xml:transform tag can now be used with a series of imported + stylesheets.
    + + There was a bug in the EL grammar that caused attribute values like "$${X}" to be parsed as a single string instead of a string followed by an expression.
    + + The <c:url> value attribute and the + <c:redirect> url attribute are required as defined in the JSTL specification.
    + + According to the JDBC specification, a null can be passed to the PreparedStatement.setObject() and the parameter will be set to JDBC NULL properly. The broken PreparedStatment.setNull() call has been removed. +
    + + There was a typographical error in our sample TLDs for the PermittedTaglibTLV and ScriptFreeTLV validators. +
    +
    +
+
+

Other changes and additions:

+
    +
  • Wrapped number formatting examples that use browser-based locale inside . Now the parse + exception that occurs with "de_DE" locale due to a bug in java.text.NumberFormat + (Bugtraq bugid: 4709840) can be documented appropriately. +
  • +
  • The "jsp20el.build" target was modified so that the JSTP 2.0 EL packages were renamed to avoid potential + JSTL 1.0 conflict. +
  • +
  • Root cause now exposed when an EL expression evaluation fails. +
  • +
  • New regression tests for the EL parser.
  • +
+
+ +
26 July 2002 • Standard 1.0.1 Taglib released
+

Bugs fixed since Standard 1.0 Taglib +Final release:
+ +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    Bug Id
    +
    Summary
    + + Fixed 'xslt' attribute for <x:transform> + to only accept an
    + object exported by <x:parse> if it's a String, + Reader, or
    + javax.xml.transform.Source.
    + + Added "UNICODE_INPUT = true" + to the ELParser.jj
    + options so that non-ascii values can be parsed.
    + + GettingStarted.html guide updated to include + all jar dependency information.
    + + SQL examples updated to allow for the inputting of dataSource + username and password.
    + + c:url tag no longer prepends path to page + relative URLs.
    + + Added a <welcome-file-list> element + to the example application's deployment descriptor. Modified standard-doc + in a corresponding fashion.
    + + +

    BundleSupport modified to use the current context classloader + instead of the classloader that loaded it. This change was necessary + in order for BundleSupport to properly find resources + in a web application.

    +

    The SQL DataSourceWrapper also modified to properly + use classloader delegation to load resources.

    +
    + + Fixed incorrect x:param error message.
    +
    +
+
+

Other changes and additions:

+
    +
  • Improved x:parse action's EntityResolver to + work with JAXP 1.2. URI's normalized so they can be processed consistently.
  • +
  • The JSTL 1.0 Specification + has all the official functional descriptions; out of date documentation + removed.
  • +
  • Hard-coded and browser-based locales separated into distinct pages in + order to avoid conflicting response encodings.
  • +
  • Formatting web application examples updated to use EL to access request + parameters.
  • +
  • query and update tags modified to catch a more + generic JDBC driver implementation generated exception when it occurs and + provide a meaningful error message.
  • +
  • DateParam tag modified to have an empty body content as defined + by the spec.
  • +
  • PreparedStatement.setNull(parameterIndex, java.sql.Types.NULL) + now used when specifying null parameter values.
  • +
  • XPath performance improved by caching parsed representations of XPath + expressions.
  • +
  • Support for relative system ID's in <x:transform> simplified.
  • +
  • Improved TimeZoneSupport javadocs
  • +
  • Added Japanese resources
  • +
  • Added support for JSP + 2.0 functionality in the JSTL EL. By default, none of the new features + are enabled in order to comply with the JSTL + 1.0 Specification. The functionality will be triggered by a particular + way of calling the interpreter. +
      +
    • Created new new "jsp20" parser directory.
    • +
    • Added new "jsp20el" build target for JSP + 2.0 specific features.
    • +
    • Added copy of *.properties to JSP + 2.0 EL jar.
    • +
    +
  • +
+
+
21 Jun 2002
+
Final Standard Taglib 1.0 release
+ +

17 Jun 2002
+
Standard Taglib RC1 released.
+
 
+ +
19 Apr 2002
+
Standard 1.0 Beta2 released, which is compliant with the JSTL Proposed Final Draft.
+ +

12 Mar 2002
+
Standard 1.0 Beta1 released, which is compliant with the JSTL Public Review Draft.
+ +

12 Dec 2001
+
Standard 1.0 EA3 released. Version includes the following +changes and additions: +
    +
  • Introduction of SQL tags ("sql:*" library).
  • +
  • A performance improvement to the XML "transform" tag.
  • +
  • Minor changes and bug fixes to the i18n and XML libraries.
  • +
  • Distribution JAR files are now 'standard.jar' (RI) and 'jstl.jar' + (API).
  • +
  • showSource.jsp no longer depends on raw file I/O (and so + should work even when standard-examples is deployed as a WAR).
  • +
+
+ +
21 Nov 2001
+
Standard 1.0 EA2 introduced. Version includes the following +major changes and additions: +
    +
  • JSPTL has been renamed to JSTL.
  • +
  • The "jsptl" library at Jakarta Taglibs has been renamed to + "standard."
  • +
  • Tags for text inclusion and URL encoding introduced.
  • +
  • Tags for i18n-capable text formatting introduced.
  • +
  • Tags for XML manipulation introduced.
  • +
  • JSTL now divides functionality among multiple TLDs. Each TLD represents + a cohesive unit of functionality, such as "XML manipulation" and + "formatting." 'jx' and 'jr' are no longer used; they are replaced + with shorter abbreviations for the common cases (e.g., 'c', 'x'). +
  • ECMAScript is now the default expression evaluator. Since the + first release of 1.0 EA1, new languages include JXPath and ECMAScript.
  • +
  • The RI has been thoroughly repackaged; many classes have moved.
  • +
  • The package name for the JSTL API is now javax.servlet.jsp.jstl + and is subdivided into cohesive packages. (The old package for the + API was javax.servlet.jsptl.)
  • +
  • A small number of minor changes were made to the code. By and large, + these changes are not significant; the easiest way to discover + further details is to look at the CVS archive itself.
  • +
+
+ +

09 Oct 2001
+
JSTL 1.0 EA1 RI, version 1.2, introduced. This version includes support +for ECMAScript.
+ +

23 Jul 2001
+
JSTL 1.0 EA1 RI, version 1.1, is released. This version is compatible +with Tomcat 4.0 B6 and Tomcat 4.0 release.
+ +

10 Jul 2001
+
JSTL 1.0 EA1 RI first made available for download.
+ +

08 Jul 2001
+
Initial version of JSTL RI contributed by JSR-052 Expert Group and imported + into Jakarta CVS archive.
+ + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/index.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/index.html new file mode 100644 index 0000000..d2ce977 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/index.html @@ -0,0 +1,83 @@ + + +Standard: An Implementation of the JSP™ Standard Tag Library (JSTL) + + + + +

Standard: An Implementation of the JavaServer Pages™ Standard Tag Library +(JSTL)

+ + +

Included in this distribution:

+ +

Documentation ('doc/web' directory)

+ + + +Sun's JSTL web site + is the official website for JSTL, providing access to the specification +(the specification is a formal description of the functionality and + features of the JSTL tag set), as well as +lists several tutorials and books about JSTL that are available. + + +

Examples ('examples' directory)

+ +

The standard-examples application included with this distribution + demonstrates the current capabilities of JSTL, exploring idioms + and usage patterns when appropriate.

+ +

Implementation of JSTL ('src' and 'conf' directories)

+ +

Every effort has been made to provide a functional, robust, and + speedy implementation of JSTL. + For developers, the code is commented thoroughly + to help provide an understanding of design considerations and + salient implementation details.

+ +

Classes in any of the subpackages of javax.servlet.jsp.jstl represent + JSTL API classes. Classes under org.apache.* represent implementation + classes. The implementation's package structure is organized as + follows:

+ +
+  org.apache.taglibs.standard
+   .tag         tag handlers and routines related to them
+      .common      handlers and support routines common for RT/EL attributes
+          .core    core library (common)
+          .fmt     i18n-capable formatting tags (common)
+          .xml     XML manipulation library (common)
+	  .sql	   SQL library (common)
+      .el          handlers specific to expression language (EL) evaluation
+          .core    core library (EL)
+          .fmt     i18n-capable formatting tags (EL)
+          .xml     XML manipulation library (EL)
+	  .sql	   SQL library (EL)
+      .rt          handlers specific to rtexprvalue (rt) evaluation
+          .core    core library (rt)
+          .fmt     i18n-capable formatting tags (rt)
+          .xml     XML manipulation library (rt)
+	  .sql	   SQL library (rt)
+   .functions   EL Functions library
+   .tei         TagExtraInfo classes (common to both libraries)
+   .tlv         TagLibraryValidator classes (and associated helpers)
+   .lang        expression-language support and implementation
+      .support     ExpressionEvaluator, ExpressionEvaluatorManager
+      .jstl        JSTL 1.0 expression language
+   .resources   Resources for internationalization
+
+ +

The javax.servlet.jsp.jstl.* tree is discussed in the JSTL +specification.

+ +

Enjoy!

+ +
+  -- Shawn Bayern <bayern@essentially.net>
+     (on behalf of JSR-052 (JSTL) Expert Group)
+
diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-frame.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-frame.html new file mode 100644 index 0000000..f51adbc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-frame.html @@ -0,0 +1,52 @@ + + + + + + +All Classes + + + + + + + + + + +All Classes +
+ + + + + +
ConditionalTagSupport +
+Config +
+LocaleSupport +
+LocalizationContext +
+LoopTag +
+LoopTagStatus +
+LoopTagSupport +
+PermittedTaglibsTLV +
+Result +
+ResultSupport +
+SQLExecutionTag +
+ScriptFreeTLV +
+
+ + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-noframe.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-noframe.html new file mode 100644 index 0000000..0c5540b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-noframe.html @@ -0,0 +1,52 @@ + + + + + + +All Classes + + + + + + + + + + +All Classes +
+ + + + + +
ConditionalTagSupport +
+Config +
+LocaleSupport +
+LocalizationContext +
+LoopTag +
+LoopTagStatus +
+LoopTagSupport +
+PermittedTaglibsTLV +
+Result +
+ResultSupport +
+SQLExecutionTag +
+ScriptFreeTLV +
+
+ + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/constant-values.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/constant-values.html new file mode 100644 index 0000000..3b1d1c0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/constant-values.html @@ -0,0 +1,194 @@ + + + + + + +Constant Field Values + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Constant Field Values

+
+
+Contents + + + + + + +
+javax.servlet.*
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
javax.servlet.jsp.jstl.core.Config
+public static final java.lang.StringFMT_FALLBACK_LOCALE"javax.servlet.jsp.jstl.fmt.fallbackLocale"
+public static final java.lang.StringFMT_LOCALE"javax.servlet.jsp.jstl.fmt.locale"
+public static final java.lang.StringFMT_LOCALIZATION_CONTEXT"javax.servlet.jsp.jstl.fmt.localizationContext"
+public static final java.lang.StringFMT_TIME_ZONE"javax.servlet.jsp.jstl.fmt.timeZone"
+public static final java.lang.StringSQL_DATA_SOURCE"javax.servlet.jsp.jstl.sql.dataSource"
+public static final java.lang.StringSQL_MAX_ROWS"javax.servlet.jsp.jstl.sql.maxRows"
+ +

+ +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/deprecated-list.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/deprecated-list.html new file mode 100644 index 0000000..5a2895e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/deprecated-list.html @@ -0,0 +1,132 @@ + + + + + + +Deprecated List + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Deprecated API

+
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/help-doc.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/help-doc.html new file mode 100644 index 0000000..49f14f0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/help-doc.html @@ -0,0 +1,187 @@ + + + + + + +API Help + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+How This API Document Is Organized

+
+This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

+Overview

+
+ +

+The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

+

+Package

+
+ +

+Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:

    +
  • Interfaces (italic)
  • Classes
  • Exceptions
  • Errors
+
+

+Class/Interface

+
+ +

+Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

    +
  • Class inheritance diagram
  • Direct Subclasses
  • All Known Subinterfaces
  • All Known Implementing Classes
  • Class/interface declaration
  • Class/interface description +

    +

  • Nested Class Summary
  • Field Summary
  • Constructor Summary
  • Method Summary +

    +

  • Field Detail
  • Constructor Detail
  • Method Detail
+Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
+

+Tree (Class Hierarchy)

+
+There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object.
    +
  • When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
  • When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.
+
+

+Deprecated API

+
+The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.
+

+Index

+
+The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.
+

+Prev/Next

+These links take you to the next or previous class, interface, package, or related page.

+Frames/No Frames

+These links show and hide the HTML frames. All pages are available with or without frames. +

+

+Serialized Form

+Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description. +

+ + +This help file applies to API documentation generated using the standard doclet. + +
+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index-all.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index-all.html new file mode 100644 index 0000000..626eb3a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index-all.html @@ -0,0 +1,498 @@ + + + + + + +Index + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J L N P R S T V
+

+A

+
+
addSQLParameter(Object) - +Method in interface javax.servlet.jsp.jstl.sql.SQLExecutionTag +
Adds a PreparedStatement parameter value. +
+
+

+B

+
+
begin - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Starting index ('begin' attribute) +
beginSpecified - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Boolean flag indicating whether 'begin' was specified. +
+
+

+C

+
+
ConditionalTagSupport - class javax.servlet.jsp.jstl.core.ConditionalTagSupport.
Abstract class that facilitates implementation of conditional actions + where the boolean result is exposed as a JSP scoped variable.
ConditionalTagSupport() - +Constructor for class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
Base constructor to initialize local state. +
Config - class javax.servlet.jsp.jstl.core.Config.
Class supporting access to configuration settings.
Config() - +Constructor for class javax.servlet.jsp.jstl.core.Config +
  +
condition() - +Method in class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
Subclasses implement this method to compute the boolean result + of the conditional action. +
+
+

+D

+
+
doAfterBody() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Continues the iteration when appropriate -- that is, if we (a) have + more items and (b) don't run over our 'end' (given our 'step'). +
doCatch(Throwable) - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Rethrows the given Throwable. +
doFinally() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Removes any attributes that this LoopTagSupport set. +
doStartTag() - +Method in class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
Includes its body if condition() evaluates to true. +
doStartTag() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Begins iterating by processing the first item. +
+
+

+E

+
+
end - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Ending index of the iteration ('end' attribute). +
endSpecified - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Boolean flag indicating whether 'end' was specified. +
+
+

+F

+
+
FMT_FALLBACK_LOCALE - +Static variable in class javax.servlet.jsp.jstl.core.Config +
Name of configuration setting for fallback locale +
FMT_LOCALE - +Static variable in class javax.servlet.jsp.jstl.core.Config +
Name of configuration setting for application- (as opposed to browser-) + based preferred locale +
FMT_LOCALIZATION_CONTEXT - +Static variable in class javax.servlet.jsp.jstl.core.Config +
Name of configuration setting for i18n localization context +
FMT_TIME_ZONE - +Static variable in class javax.servlet.jsp.jstl.core.Config +
Name of localization setting for time zone +
find(PageContext, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Finds the value associated with a specific configuration setting + identified by its context initialization parameter name. +
+
+

+G

+
+
get(PageContext, String, int) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Looks up a configuration variable in the given scope. +
get(ServletRequest, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Looks up a configuration variable in the "request" scope. +
get(HttpSession, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Looks up a configuration variable in the "session" scope. +
get(ServletContext, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Looks up a configuration variable in the "application" scope. +
getBegin() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
Returns the value of the 'begin' attribute for the associated tag, + or null if no 'begin' attribute was specified. +
getColumnNames() - +Method in interface javax.servlet.jsp.jstl.sql.Result +
Returns the names of the columns in the result. +
getCount() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
Retrieves the "count" of the current round of the iteration. +
getCurrent() - +Method in interface javax.servlet.jsp.jstl.core.LoopTag +
Retrieves the current item in the iteration. +
getCurrent() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
Retrieves the current item in the iteration. +
getCurrent() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
  +
getEnd() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
Returns the value of the 'end' attribute for the associated tag, + or null if no 'end' attribute was specified. +
getIndex() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
Retrieves the index of the current round of the iteration. +
getLocale() - +Method in class javax.servlet.jsp.jstl.fmt.LocalizationContext +
Gets the locale of this I18N localization context. +
getLocalizedMessage(PageContext, String) - +Static method in class javax.servlet.jsp.jstl.fmt.LocaleSupport +
Retrieves the localized message corresponding to the given key. +
getLocalizedMessage(PageContext, String, String) - +Static method in class javax.servlet.jsp.jstl.fmt.LocaleSupport +
Retrieves the localized message corresponding to the given key. +
getLocalizedMessage(PageContext, String, Object[]) - +Static method in class javax.servlet.jsp.jstl.fmt.LocaleSupport +
Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args. +
getLocalizedMessage(PageContext, String, Object[], String) - +Static method in class javax.servlet.jsp.jstl.fmt.LocaleSupport +
Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args. +
getLoopStatus() - +Method in interface javax.servlet.jsp.jstl.core.LoopTag +
Retrieves a 'status' object to provide information about the + current round of the iteration. +
getLoopStatus() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
  +
getResourceBundle() - +Method in class javax.servlet.jsp.jstl.fmt.LocalizationContext +
Gets the resource bundle of this I18N localization context. +
getRowCount() - +Method in interface javax.servlet.jsp.jstl.sql.Result +
Returns the number of rows in the cached ResultSet +
getRows() - +Method in interface javax.servlet.jsp.jstl.sql.Result +
Returns the result of the query as an array of SortedMap objects. +
getRowsByIndex() - +Method in interface javax.servlet.jsp.jstl.sql.Result +
Returns the result of the query as an array of arrays. +
getStep() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
Returns the value of the 'step' attribute for the associated tag, + or null if no 'step' attribute was specified. +
+
+

+H

+
+
hasNext() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Returns information concerning the availability of more items + over which to iterate. +
+
+

+I

+
+
isFirst() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
Returns information about whether the current round of the + iteration is the first one. +
isLast() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
Returns information about whether the current round of the + iteration is the last one. +
isLimitedByMaxRows() - +Method in interface javax.servlet.jsp.jstl.sql.Result +
Returns true if the query was limited by a maximum row setting +
itemId - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Attribute-exposing control +
+
+

+J

+
+
javax.servlet.jsp.jstl.core - package javax.servlet.jsp.jstl.core
 
javax.servlet.jsp.jstl.fmt - package javax.servlet.jsp.jstl.fmt
 
javax.servlet.jsp.jstl.sql - package javax.servlet.jsp.jstl.sql
 
javax.servlet.jsp.jstl.tlv - package javax.servlet.jsp.jstl.tlv
 
+
+

+L

+
+
LocaleSupport - class javax.servlet.jsp.jstl.fmt.LocaleSupport.
Class which exposes the locale-determination logic for resource bundles + through convenience methods.
LocaleSupport() - +Constructor for class javax.servlet.jsp.jstl.fmt.LocaleSupport +
  +
LocalizationContext - class javax.servlet.jsp.jstl.fmt.LocalizationContext.
Class representing an I18N localization context.
LocalizationContext() - +Constructor for class javax.servlet.jsp.jstl.fmt.LocalizationContext +
Constructs an empty I18N localization context. +
LocalizationContext(ResourceBundle, Locale) - +Constructor for class javax.servlet.jsp.jstl.fmt.LocalizationContext +
Constructs an I18N localization context from the given resource bundle + and locale. +
LocalizationContext(ResourceBundle) - +Constructor for class javax.servlet.jsp.jstl.fmt.LocalizationContext +
Constructs an I18N localization context from the given resource bundle. +
LoopTag - interface javax.servlet.jsp.jstl.core.LoopTag.
JSTL allows developers to write custom iteration tags by + implementing the LoopTag interface.
LoopTagStatus - interface javax.servlet.jsp.jstl.core.LoopTagStatus.
Exposes the current status of + an iteration.
LoopTagSupport - class javax.servlet.jsp.jstl.core.LoopTagSupport.
Base support class to facilitate implementation of iteration tags.
LoopTagSupport() - +Constructor for class javax.servlet.jsp.jstl.core.LoopTagSupport +
Constructs a new LoopTagSupport. +
+
+

+N

+
+
next() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Returns the next object over which the tag should iterate. +
+
+

+P

+
+
PermittedTaglibsTLV - class javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV.
A TagLibraryValidator class to allow a TLD to restrict what + taglibs (in addition to itself) may be imported on a page where it's + used.
PermittedTaglibsTLV() - +Constructor for class javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV +
  +
prepare() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Prepares for a single tag invocation. +
+
+

+R

+
+
Result - interface javax.servlet.jsp.jstl.sql.Result.
This interface represents the result of a <sql:query> + action.
ResultSupport - class javax.servlet.jsp.jstl.sql.ResultSupport.
Supports the creation of a javax.servlet.jsp.jstl.sql.Result object + from a source java.sql.ResultSet object.
ResultSupport() - +Constructor for class javax.servlet.jsp.jstl.sql.ResultSupport +
  +
release() - +Method in class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
Releases any resources this ConditionalTagSupport may have (or inherit). +
release() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Releases any resources this LoopTagSupport may have (or inherit). +
release() - +Method in class javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV +
  +
remove(PageContext, String, int) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Removes a configuration variable from the given scope. +
remove(ServletRequest, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Removes a configuration variable from the "request" scope. +
remove(HttpSession, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Removes a configuration variable from the "session" scope. +
remove(ServletContext, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Removes a configuration variable from the "application" scope. +
+
+

+S

+
+
SQLExecutionTag - interface javax.servlet.jsp.jstl.sql.SQLExecutionTag.
This interface allows tag handlers implementing it to receive + values for parameter markers in their SQL statements.
SQL_DATA_SOURCE - +Static variable in class javax.servlet.jsp.jstl.core.Config +
Name of configuration setting for SQL data source +
SQL_MAX_ROWS - +Static variable in class javax.servlet.jsp.jstl.core.Config +
Name of configuration setting for maximum number of rows to be included + in SQL query result +
ScriptFreeTLV - class javax.servlet.jsp.jstl.tlv.ScriptFreeTLV.
A TagLibraryValidator for enforcing restrictions against + the use of JSP scripting elements.
ScriptFreeTLV() - +Constructor for class javax.servlet.jsp.jstl.tlv.ScriptFreeTLV +
Constructs a new validator instance. +
set(PageContext, String, Object, int) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Sets the value of a configuration variable in the given scope. +
set(ServletRequest, String, Object) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Sets the value of a configuration variable in the "request" scope. +
set(HttpSession, String, Object) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Sets the value of a configuration variable in the "session" scope. +
set(ServletContext, String, Object) - +Static method in class javax.servlet.jsp.jstl.core.Config +
Sets the value of a configuration variable in the "application" scope. +
setInitParameters(Map) - +Method in class javax.servlet.jsp.jstl.tlv.ScriptFreeTLV +
Sets the values of the initialization parameters, as supplied in the TLD. +
setScope(String) - +Method in class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
Sets the 'scope' attribute. +
setVar(String) - +Method in class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
Sets the 'var' attribute. +
setVar(String) - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Sets the 'var' attribute. +
setVarStatus(String) - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Sets the 'varStatus' attribute. +
statusId - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Attribute-exposing control +
step - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Iteration step ('step' attribute) +
stepSpecified - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Boolean flag indicating whether 'step' was specified. +
+
+

+T

+
+
toResult(ResultSet) - +Static method in class javax.servlet.jsp.jstl.sql.ResultSupport +
Converts a ResultSet object to a Result object. +
toResult(ResultSet, int) - +Static method in class javax.servlet.jsp.jstl.sql.ResultSupport +
Converts maxRows of a ResultSet object to a + Result object. +
+
+

+V

+
+
validate(String, String, PageData) - +Method in class javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV +
  +
validate(String, String, PageData) - +Method in class javax.servlet.jsp.jstl.tlv.ScriptFreeTLV +
Validates a single JSP page. +
validateBegin() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Ensures the "begin" property is sensible, throwing an exception + expected to propagate up if it isn't +
validateEnd() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Ensures the "end" property is sensible, throwing an exception + expected to propagate up if it isn't +
validateStep() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
Ensures the "step" property is sensible, throwing an exception + expected to propagate up if it isn't +
+
+A B C D E F G H I J L N P R S T V + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index.html new file mode 100644 index 0000000..67ab2cd --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index.html @@ -0,0 +1,26 @@ + + + + + + +Generated Documentation (Untitled) + + + + + + + + + +<H2> +Frame Alert</H2> + +<P> +This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. +<BR> +Link to<A HREF="overview-summary.html">Non-frame version.</A> + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/ConditionalTagSupport.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/ConditionalTagSupport.html new file mode 100644 index 0000000..01ec1b8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/ConditionalTagSupport.html @@ -0,0 +1,421 @@ + + + + + + +ConditionalTagSupport + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.core +
+Class ConditionalTagSupport

+
+java.lang.Object
+  extended byjavax.servlet.jsp.tagext.TagSupport
+      extended byjavax.servlet.jsp.jstl.core.ConditionalTagSupport
+
+
+
All Implemented Interfaces:
javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, java.io.Serializable, javax.servlet.jsp.tagext.Tag
+
+
+
+
public abstract class ConditionalTagSupport
extends javax.servlet.jsp.tagext.TagSupport
+ +

+

Abstract class that facilitates implementation of conditional actions + where the boolean result is exposed as a JSP scoped variable. The + boolean result may then be used as the test condition in a <c:when> + action.

+ +

This base class provides support for:

+ +
    +
  • Conditional processing of the action's body based on the returned value + of the abstract method condition().
  • +
  • Storing the result of condition() as a Boolean object + into a JSP scoped variable identified by attributes var and + scope. +
+

+ +

+

+
Author:
+
Shawn Bayern
+
See Also:
Serialized Form
+
+ +

+ + + + + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class javax.servlet.jsp.tagext.TagSupport
id, pageContext
+ + + + + + + +
Fields inherited from interface javax.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
+ + + + + + + +
Fields inherited from interface javax.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
+  + + + + + + + + + + +
+Constructor Summary
ConditionalTagSupport() + +
+          Base constructor to initialize local state.
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+protected abstract  booleancondition() + +
+          Subclasses implement this method to compute the boolean result + of the conditional action.
+ intdoStartTag() + +
+          Includes its body if condition() evaluates to true.
+ voidrelease() + +
+          Releases any resources this ConditionalTagSupport may have (or inherit).
+ voidsetScope(java.lang.String scope) + +
+          Sets the 'scope' attribute.
+ voidsetVar(java.lang.String var) + +
+          Sets the 'var' attribute.
+ + + + + + + +
Methods inherited from class javax.servlet.jsp.tagext.TagSupport
doAfterBody, doEndTag, findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + + + + +
+Constructor Detail
+ +

+ConditionalTagSupport

+
+public ConditionalTagSupport()
+
+
Base constructor to initialize local state. As with TagSupport, + subclasses should not implement constructors with arguments, and + no-argument constructors implemented by subclasses must call the + superclass constructor. +

+

+ + + + + + + + +
+Method Detail
+ +

+condition

+
+protected abstract boolean condition()
+                              throws javax.servlet.jsp.JspTagException
+
+

Subclasses implement this method to compute the boolean result + of the conditional action. This method is invoked once per tag invocation + by doStartTag(). +

+

+ +
Returns:
a boolean representing the condition that a particular subclass + uses to drive its conditional logic. +
Throws: +
javax.servlet.jsp.JspTagException
+
+
+
+ +

+doStartTag

+
+public int doStartTag()
+               throws javax.servlet.jsp.JspException
+
+
Includes its body if condition() evaluates to true. +

+

+ +
Throws: +
javax.servlet.jsp.JspException
+
+
+
+ +

+release

+
+public void release()
+
+
Releases any resources this ConditionalTagSupport may have (or inherit). +

+

+
+
+
+
+ +

+setVar

+
+public void setVar(java.lang.String var)
+
+
Sets the 'var' attribute. +

+

+
Parameters:
var - Name of the exported scoped variable storing the result of + condition().
+
+
+
+ +

+setScope

+
+public void setScope(java.lang.String scope)
+
+
Sets the 'scope' attribute. +

+

+
Parameters:
scope - Scope of the 'var' attribute
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/Config.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/Config.html new file mode 100644 index 0000000..cadedf7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/Config.html @@ -0,0 +1,771 @@ + + + + + + +Config + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.core +
+Class Config

+
+java.lang.Object
+  extended byjavax.servlet.jsp.jstl.core.Config
+
+
+
+
public class Config
extends java.lang.Object
+ +

+Class supporting access to configuration settings. +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+static java.lang.StringFMT_FALLBACK_LOCALE + +
+          Name of configuration setting for fallback locale
+static java.lang.StringFMT_LOCALE + +
+          Name of configuration setting for application- (as opposed to browser-) + based preferred locale
+static java.lang.StringFMT_LOCALIZATION_CONTEXT + +
+          Name of configuration setting for i18n localization context
+static java.lang.StringFMT_TIME_ZONE + +
+          Name of localization setting for time zone
+static java.lang.StringSQL_DATA_SOURCE + +
+          Name of configuration setting for SQL data source
+static java.lang.StringSQL_MAX_ROWS + +
+          Name of configuration setting for maximum number of rows to be included + in SQL query result
+  + + + + + + + + + + +
+Constructor Summary
Config() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+static java.lang.Objectfind(javax.servlet.jsp.PageContext pc, + java.lang.String name) + +
+          Finds the value associated with a specific configuration setting + identified by its context initialization parameter name.
+static java.lang.Objectget(javax.servlet.http.HttpSession session, + java.lang.String name) + +
+          Looks up a configuration variable in the "session" scope.
+static java.lang.Objectget(javax.servlet.jsp.PageContext pc, + java.lang.String name, + int scope) + +
+          Looks up a configuration variable in the given scope.
+static java.lang.Objectget(javax.servlet.ServletContext context, + java.lang.String name) + +
+          Looks up a configuration variable in the "application" scope.
+static java.lang.Objectget(javax.servlet.ServletRequest request, + java.lang.String name) + +
+          Looks up a configuration variable in the "request" scope.
+static voidremove(javax.servlet.http.HttpSession session, + java.lang.String name) + +
+          Removes a configuration variable from the "session" scope.
+static voidremove(javax.servlet.jsp.PageContext pc, + java.lang.String name, + int scope) + +
+          Removes a configuration variable from the given scope.
+static voidremove(javax.servlet.ServletContext context, + java.lang.String name) + +
+          Removes a configuration variable from the "application" scope.
+static voidremove(javax.servlet.ServletRequest request, + java.lang.String name) + +
+          Removes a configuration variable from the "request" scope.
+static voidset(javax.servlet.http.HttpSession session, + java.lang.String name, + java.lang.Object value) + +
+          Sets the value of a configuration variable in the "session" scope.
+static voidset(javax.servlet.jsp.PageContext pc, + java.lang.String name, + java.lang.Object value, + int scope) + +
+          Sets the value of a configuration variable in the given scope.
+static voidset(javax.servlet.ServletContext context, + java.lang.String name, + java.lang.Object value) + +
+          Sets the value of a configuration variable in the "application" scope.
+static voidset(javax.servlet.ServletRequest request, + java.lang.String name, + java.lang.Object value) + +
+          Sets the value of a configuration variable in the "request" scope.
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+FMT_LOCALE

+
+public static final java.lang.String FMT_LOCALE
+
+
Name of configuration setting for application- (as opposed to browser-) + based preferred locale +

+

+
See Also:
Constant Field Values
+
+
+ +

+FMT_FALLBACK_LOCALE

+
+public static final java.lang.String FMT_FALLBACK_LOCALE
+
+
Name of configuration setting for fallback locale +

+

+
See Also:
Constant Field Values
+
+
+ +

+FMT_LOCALIZATION_CONTEXT

+
+public static final java.lang.String FMT_LOCALIZATION_CONTEXT
+
+
Name of configuration setting for i18n localization context +

+

+
See Also:
Constant Field Values
+
+
+ +

+FMT_TIME_ZONE

+
+public static final java.lang.String FMT_TIME_ZONE
+
+
Name of localization setting for time zone +

+

+
See Also:
Constant Field Values
+
+
+ +

+SQL_DATA_SOURCE

+
+public static final java.lang.String SQL_DATA_SOURCE
+
+
Name of configuration setting for SQL data source +

+

+
See Also:
Constant Field Values
+
+
+ +

+SQL_MAX_ROWS

+
+public static final java.lang.String SQL_MAX_ROWS
+
+
Name of configuration setting for maximum number of rows to be included + in SQL query result +

+

+
See Also:
Constant Field Values
+
+ + + + + + + + +
+Constructor Detail
+ +

+Config

+
+public Config()
+
+
+ + + + + + + + +
+Method Detail
+ +

+get

+
+public static java.lang.Object get(javax.servlet.jsp.PageContext pc,
+                                   java.lang.String name,
+                                   int scope)
+
+
Looks up a configuration variable in the given scope. + +

The lookup of configuration variables is performed as if each scope + had its own name space, that is, the same configuration variable name + in one scope does not replace one stored in a different scope. +

+

+
Parameters:
pc - Page context in which the configuration variable is to be + looked up
name - Configuration variable name
scope - Scope in which the configuration variable is to be looked + up +
Returns:
The java.lang.Object associated with the configuration + variable, or null if it is not defined.
+
+
+
+ +

+get

+
+public static java.lang.Object get(javax.servlet.ServletRequest request,
+                                   java.lang.String name)
+
+
Looks up a configuration variable in the "request" scope. + +

The lookup of configuration variables is performed as if each scope + had its own name space, that is, the same configuration variable name + in one scope does not replace one stored in a different scope. +

+

+
Parameters:
request - Request object in which the configuration variable is to + be looked up
name - Configuration variable name +
Returns:
The java.lang.Object associated with the configuration + variable, or null if it is not defined.
+
+
+
+ +

+get

+
+public static java.lang.Object get(javax.servlet.http.HttpSession session,
+                                   java.lang.String name)
+
+
Looks up a configuration variable in the "session" scope. + +

The lookup of configuration variables is performed as if each scope + had its own name space, that is, the same configuration variable name + in one scope does not replace one stored in a different scope.

+

+

+
Parameters:
session - Session object in which the configuration variable is to + be looked up
name - Configuration variable name +
Returns:
The java.lang.Object associated with the configuration + variable, or null if it is not defined, if session is null, or if the session + is invalidated.
+
+
+
+ +

+get

+
+public static java.lang.Object get(javax.servlet.ServletContext context,
+                                   java.lang.String name)
+
+
Looks up a configuration variable in the "application" scope. + +

The lookup of configuration variables is performed as if each scope + had its own name space, that is, the same configuration variable name + in one scope does not replace one stored in a different scope. +

+

+
Parameters:
context - Servlet context in which the configuration variable is + to be looked up
name - Configuration variable name +
Returns:
The java.lang.Object associated with the configuration + variable, or null if it is not defined.
+
+
+
+ +

+set

+
+public static void set(javax.servlet.jsp.PageContext pc,
+                       java.lang.String name,
+                       java.lang.Object value,
+                       int scope)
+
+
Sets the value of a configuration variable in the given scope. + +

Setting the value of a configuration variable is performed as if + each scope had its own namespace, that is, the same configuration + variable name in one scope does not replace one stored in a different + scope. +

+

+
Parameters:
pc - Page context in which the configuration variable is to be set
name - Configuration variable name
value - Configuration variable value
scope - Scope in which the configuration variable is to be set
+
+
+
+ +

+set

+
+public static void set(javax.servlet.ServletRequest request,
+                       java.lang.String name,
+                       java.lang.Object value)
+
+
Sets the value of a configuration variable in the "request" scope. + +

Setting the value of a configuration variable is performed as if + each scope had its own namespace, that is, the same configuration + variable name in one scope does not replace one stored in a different + scope. +

+

+
Parameters:
request - Request object in which the configuration variable is to + be set
name - Configuration variable name
value - Configuration variable value
+
+
+
+ +

+set

+
+public static void set(javax.servlet.http.HttpSession session,
+                       java.lang.String name,
+                       java.lang.Object value)
+
+
Sets the value of a configuration variable in the "session" scope. + +

Setting the value of a configuration variable is performed as if + each scope had its own namespace, that is, the same configuration + variable name in one scope does not replace one stored in a different + scope. +

+

+
Parameters:
session - Session object in which the configuration variable is to + be set
name - Configuration variable name
value - Configuration variable value
+
+
+
+ +

+set

+
+public static void set(javax.servlet.ServletContext context,
+                       java.lang.String name,
+                       java.lang.Object value)
+
+
Sets the value of a configuration variable in the "application" scope. + +

Setting the value of a configuration variable is performed as if + each scope had its own namespace, that is, the same configuration + variable name in one scope does not replace one stored in a different + scope. +

+

+
Parameters:
context - Servlet context in which the configuration variable is to + be set
name - Configuration variable name
value - Configuration variable value
+
+
+
+ +

+remove

+
+public static void remove(javax.servlet.jsp.PageContext pc,
+                          java.lang.String name,
+                          int scope)
+
+
Removes a configuration variable from the given scope. + +

Removing a configuration variable is performed as if each scope had + its own namespace, that is, the same configuration variable name in one + scope does not impact one stored in a different scope. +

+

+
Parameters:
pc - Page context from which the configuration variable is to be + removed
name - Configuration variable name
scope - Scope from which the configuration variable is to be + removed
+
+
+
+ +

+remove

+
+public static void remove(javax.servlet.ServletRequest request,
+                          java.lang.String name)
+
+
Removes a configuration variable from the "request" scope. + +

Removing a configuration variable is performed as if each scope had + its own namespace, that is, the same configuration variable name in one + scope does not impact one stored in a different scope. +

+

+
Parameters:
request - Request object from which the configuration variable is + to be removed
name - Configuration variable name
+
+
+
+ +

+remove

+
+public static void remove(javax.servlet.http.HttpSession session,
+                          java.lang.String name)
+
+
Removes a configuration variable from the "session" scope. + +

Removing a configuration variable is performed as if each scope had + its own namespace, that is, the same configuration variable name in one + scope does not impact one stored in a different scope. +

+

+
Parameters:
session - Session object from which the configuration variable is + to be removed
name - Configuration variable name
+
+
+
+ +

+remove

+
+public static void remove(javax.servlet.ServletContext context,
+                          java.lang.String name)
+
+
Removes a configuration variable from the "application" scope. + +

Removing a configuration variable is performed as if each scope had + its own namespace, that is, the same configuration variable name in one + scope does not impact one stored in a different scope. +

+

+
Parameters:
context - Servlet context from which the configuration variable is + to be removed
name - Configuration variable name
+
+
+
+ +

+find

+
+public static java.lang.Object find(javax.servlet.jsp.PageContext pc,
+                                    java.lang.String name)
+
+
Finds the value associated with a specific configuration setting + identified by its context initialization parameter name. + +

For each of the JSP scopes (page, request, session, application), + get the value of the configuration variable identified by name + using method get(). Return as soon as a non-null value is + found. If no value is found, get the value of the context initialization + parameter identified by name. +

+

+
Parameters:
pc - Page context in which the configuration setting is to be + searched
name - Context initialization parameter name of the configuration + setting +
Returns:
The java.lang.Object associated with the configuration + setting identified by name, or null if it is not defined.
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTag.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTag.html new file mode 100644 index 0000000..72a499d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTag.html @@ -0,0 +1,293 @@ + + + + + + +LoopTag + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.core +
+Interface LoopTag

+
+
All Superinterfaces:
javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag
+
+
+
All Known Implementing Classes:
LoopTagSupport
+
+
+
+
public interface LoopTag
extends javax.servlet.jsp.tagext.Tag
+ +

+

JSTL allows developers to write custom iteration tags by + implementing the LoopTag interface. This is not to be confused + with javax.servlet.jsp.tagext.IterationTag as defined in JSP 1.2. + LoopTag establishes a mechanism for iteration tags to be recognized + and for type-safe implicit collaboration with custom subtags. + +

In most cases, it will not be necessary to implement this interface + manually, for a base support class (LoopTagSupport) is provided + to facilitate implementation.

+

+ +

+

+
Author:
+
Shawn Bayern
+
+
+ +

+ + + + + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from interface javax.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
+  + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.ObjectgetCurrent() + +
+          Retrieves the current item in the iteration.
+ LoopTagStatusgetLoopStatus() + +
+          Retrieves a 'status' object to provide information about the + current round of the iteration.
+ + + + + + + +
Methods inherited from interface javax.servlet.jsp.tagext.Tag
doEndTag, doStartTag, getParent, release, setPageContext, setParent
+  +

+ + + + + + + + + + + + + + +
+Method Detail
+ +

+getCurrent

+
+public java.lang.Object getCurrent()
+
+
Retrieves the current item in the iteration. Behaves + idempotently; calling getCurrent() repeatedly should return the same + Object until the iteration is advanced. (Specifically, calling + getCurrent() does not advance the iteration.) +

+

+
+
+
+ +
Returns:
the current item as an object
+
+
+
+ +

+getLoopStatus

+
+public LoopTagStatus getLoopStatus()
+
+
Retrieves a 'status' object to provide information about the + current round of the iteration. +

+

+
+
+
+ +
Returns:
The LoopTagStatus for the current LoopTag.
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagStatus.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagStatus.html new file mode 100644 index 0000000..31f2005 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagStatus.html @@ -0,0 +1,419 @@ + + + + + + +LoopTagStatus + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.core +
+Interface LoopTagStatus

+
+
+
public interface LoopTagStatus
+ +

+

Exposes the current status of + an iteration. JSTL provides a mechanism for LoopTags to + return information about the current index of the iteration and + convenience methods to determine whether or not the current round is + either the first or last in the iteration. It also lets authors + use the status object to obtain information about the iteration range, + step, and current object.

+ +

Environments that require more status can extend this interface.

+

+ +

+

+
Author:
+
Shawn Bayern
+
+
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.IntegergetBegin() + +
+          Returns the value of the 'begin' attribute for the associated tag, + or null if no 'begin' attribute was specified.
+ intgetCount() + +
+          Retrieves the "count" of the current round of the iteration.
+ java.lang.ObjectgetCurrent() + +
+          Retrieves the current item in the iteration.
+ java.lang.IntegergetEnd() + +
+          Returns the value of the 'end' attribute for the associated tag, + or null if no 'end' attribute was specified.
+ intgetIndex() + +
+          Retrieves the index of the current round of the iteration.
+ java.lang.IntegergetStep() + +
+          Returns the value of the 'step' attribute for the associated tag, + or null if no 'step' attribute was specified.
+ booleanisFirst() + +
+          Returns information about whether the current round of the + iteration is the first one.
+ booleanisLast() + +
+          Returns information about whether the current round of the + iteration is the last one.
+  +

+ + + + + + + + + + + + + + +
+Method Detail
+ +

+getCurrent

+
+public java.lang.Object getCurrent()
+
+
Retrieves the current item in the iteration. Behaves + idempotently; calling getCurrent() repeatedly should return the same + Object until the iteration is advanced. (Specifically, calling + getCurrent() does not advance the iteration.) +

+

+ +
Returns:
the current item as an object
+
+
+
+ +

+getIndex

+
+public int getIndex()
+
+
Retrieves the index of the current round of the iteration. If + iteration is being performed over a subset of an underlying + array, java.lang.Collection, or other type, the index returned + is absolute with respect to the underlying collection. Indices + are 0-based. +

+

+ +
Returns:
the 0-based index of the current round of the iteration
+
+
+
+ +

+getCount

+
+public int getCount()
+
+

Retrieves the "count" of the current round of the iteration. The + count is a relative, 1-based sequence number identifying the + current "round" of iteration (in context with all rounds the + current iteration will perform).

+ +

As an example, an iteration with begin = 5, end = 15, and step = + 5 produces the counts 1, 2, and 3 in that order.

+

+

+ +
Returns:
the 1-based count of the current round of the iteration
+
+
+
+ +

+isFirst

+
+public boolean isFirst()
+
+
Returns information about whether the current round of the + iteration is the first one. This current round may be the 'first' + even when getIndex() != 0, for 'index' refers to the absolute + index of the current 'item' in the context of its underlying + collection. It is always that case that a true result from + isFirst() implies getCount() == 1. +

+

+ +
Returns:
true if the current round is the first in the + iteration, false otherwise.
+
+
+
+ +

+isLast

+
+public boolean isLast()
+
+
Returns information about whether the current round of the + iteration is the last one. As with isFirst(), subsetting is + taken into account. isLast() doesn't necessarily refer to the + status of the underlying Iterator; it refers to whether or not + the current round will be the final round of iteration for the + tag associated with this LoopTagStatus. +

+

+ +
Returns:
true if the current round is the last in the + iteration, false otherwise.
+
+
+
+ +

+getBegin

+
+public java.lang.Integer getBegin()
+
+
Returns the value of the 'begin' attribute for the associated tag, + or null if no 'begin' attribute was specified. +

+

+ +
Returns:
the 'begin' value for the associated tag, or null + if no 'begin' attribute was specified
+
+
+
+ +

+getEnd

+
+public java.lang.Integer getEnd()
+
+
Returns the value of the 'end' attribute for the associated tag, + or null if no 'end' attribute was specified. +

+

+ +
Returns:
the 'end' value for the associated tag, or null + if no 'end' attribute was specified
+
+
+
+ +

+getStep

+
+public java.lang.Integer getStep()
+
+
Returns the value of the 'step' attribute for the associated tag, + or null if no 'step' attribute was specified. +

+

+ +
Returns:
the 'step' value for the associated tag, or null + if no 'step' attribute was specified
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagSupport.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagSupport.html new file mode 100644 index 0000000..ecca8c4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagSupport.html @@ -0,0 +1,935 @@ + + + + + + +LoopTagSupport + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.core +
+Class LoopTagSupport

+
+java.lang.Object
+  extended byjavax.servlet.jsp.tagext.TagSupport
+      extended byjavax.servlet.jsp.jstl.core.LoopTagSupport
+
+
+
All Implemented Interfaces:
javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, LoopTag, java.io.Serializable, javax.servlet.jsp.tagext.Tag, javax.servlet.jsp.tagext.TryCatchFinally
+
+
+
+
public abstract class LoopTagSupport
extends javax.servlet.jsp.tagext.TagSupport
implements LoopTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.TryCatchFinally
+ +

+

Base support class to facilitate implementation of iteration tags.

+ +

Since most iteration tags will behave identically with respect to + actual iterative behavior, JSTL provides this + base support class to facilitate implementation. Many iteration tags + will extend this and merely implement the hasNext() and + next() methods + to provide contents for the handler to iterate over.

+ +

In particular, this base class provides support for:

+ +
    +
  • Iteration control, based on protected prepare(), next(), + and hasNext() methods +
  • Subsetting (begin, end, step>functionality, + including validation + of subset parameters for sensibility) +
  • item retrieval (getCurrent()) +
  • status retrieval (LoopTagStatus) +
  • exposing attributes (set by var and varStatus attributes) +
+ +

In providing support for these tasks, LoopTagSupport contains + certain control variables that act to modify the iteration. Accessors + are provided for these control variables when the variables represent + information needed or wanted at translation time (e.g., var, + varStatus). For + other variables, accessors cannot be provided here since subclasses + may differ on their implementations of how those accessors are received. + For instance, one subclass might accept a String and convert it into + an object of a specific type by using an expression evaluator; others + might accept objects directly. Still others might not want to expose + such information to outside control.

+

+ +

+

+
Author:
+
Shawn Bayern
+
See Also:
Serialized Form
+
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+protected  intbegin + +
+          Starting index ('begin' attribute)
+protected  booleanbeginSpecified + +
+          Boolean flag indicating whether 'begin' was specified.
+protected  intend + +
+          Ending index of the iteration ('end' attribute).
+protected  booleanendSpecified + +
+          Boolean flag indicating whether 'end' was specified.
+protected  java.lang.StringitemId + +
+          Attribute-exposing control
+protected  java.lang.StringstatusId + +
+          Attribute-exposing control
+protected  intstep + +
+          Iteration step ('step' attribute)
+protected  booleanstepSpecified + +
+          Boolean flag indicating whether 'step' was specified.
+ + + + + + + +
Fields inherited from class javax.servlet.jsp.tagext.TagSupport
id, pageContext
+ + + + + + + +
Fields inherited from interface javax.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
+ + + + + + + +
Fields inherited from interface javax.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
+  + + + + + + + + + + +
+Constructor Summary
LoopTagSupport() + +
+          Constructs a new LoopTagSupport.
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ intdoAfterBody() + +
+          Continues the iteration when appropriate -- that is, if we (a) have + more items and (b) don't run over our 'end' (given our 'step').
+ voiddoCatch(java.lang.Throwable t) + +
+          Rethrows the given Throwable.
+ voiddoFinally() + +
+          Removes any attributes that this LoopTagSupport set.
+ intdoStartTag() + +
+          Begins iterating by processing the first item.
+ java.lang.ObjectgetCurrent() + +
+          Retrieves the current item in the iteration.
+ LoopTagStatusgetLoopStatus() + +
+          Retrieves a 'status' object to provide information about the + current round of the iteration.
+protected abstract  booleanhasNext() + +
+          Returns information concerning the availability of more items + over which to iterate.
+protected abstract  java.lang.Objectnext() + +
+          Returns the next object over which the tag should iterate.
+protected abstract  voidprepare() + +
+          Prepares for a single tag invocation.
+ voidrelease() + +
+          Releases any resources this LoopTagSupport may have (or inherit).
+ voidsetVar(java.lang.String id) + +
+          Sets the 'var' attribute.
+ voidsetVarStatus(java.lang.String statusId) + +
+          Sets the 'varStatus' attribute.
+protected  voidvalidateBegin() + +
+          Ensures the "begin" property is sensible, throwing an exception + expected to propagate up if it isn't
+protected  voidvalidateEnd() + +
+          Ensures the "end" property is sensible, throwing an exception + expected to propagate up if it isn't
+protected  voidvalidateStep() + +
+          Ensures the "step" property is sensible, throwing an exception + expected to propagate up if it isn't
+ + + + + + + +
Methods inherited from class javax.servlet.jsp.tagext.TagSupport
doEndTag, findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+ + + + + + + +
Methods inherited from interface javax.servlet.jsp.tagext.Tag
doEndTag, getParent, setPageContext, setParent
+  +

+ + + + + + + + +
+Field Detail
+ +

+begin

+
+protected int begin
+
+
Starting index ('begin' attribute) +

+

+
+
+
+ +

+end

+
+protected int end
+
+
Ending index of the iteration ('end' attribute). + A value of -1 internally indicates 'no end + specified', although accessors for the core JSTL tags do not + allow this value to be supplied directly by the user. +

+

+
+
+
+ +

+step

+
+protected int step
+
+
Iteration step ('step' attribute) +

+

+
+
+
+ +

+beginSpecified

+
+protected boolean beginSpecified
+
+
Boolean flag indicating whether 'begin' was specified. +

+

+
+
+
+ +

+endSpecified

+
+protected boolean endSpecified
+
+
Boolean flag indicating whether 'end' was specified. +

+

+
+
+
+ +

+stepSpecified

+
+protected boolean stepSpecified
+
+
Boolean flag indicating whether 'step' was specified. +

+

+
+
+
+ +

+itemId

+
+protected java.lang.String itemId
+
+
Attribute-exposing control +

+

+
+
+
+ +

+statusId

+
+protected java.lang.String statusId
+
+
Attribute-exposing control +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+LoopTagSupport

+
+public LoopTagSupport()
+
+
Constructs a new LoopTagSupport. As with TagSupport, subclasses + should not implement constructors with arguments, and no-arguments + constructors implemented by subclasses must call the superclass + constructor. +

+

+ + + + + + + + +
+Method Detail
+ +

+next

+
+protected abstract java.lang.Object next()
+                                  throws javax.servlet.jsp.JspTagException
+
+

Returns the next object over which the tag should iterate. This + method must be provided by concrete subclasses of LoopTagSupport + to inform the base logic about what objects it should iterate over.

+ +

It is expected that this method will generally be backed by an + Iterator, but this will not always be the case. In particular, if + retrieving the next object raises the possibility of an exception + being thrown, this method allows that exception to propagate back + to the JSP container as a JspTagException; a standalone Iterator + would not be able to do this. (This explains why LoopTagSupport + does not simply call for an Iterator from its subtags.)

+

+

+
+
+
+ +
Returns:
the java.lang.Object to use in the next round of iteration +
Throws: +
java.util.NoSuchElementException - if next() is called but no new elements are available +
javax.servlet.jsp.JspTagException - for other, unexpected exceptions
+
+
+
+ +

+hasNext

+
+protected abstract boolean hasNext()
+                            throws javax.servlet.jsp.JspTagException
+
+

Returns information concerning the availability of more items + over which to iterate. This method must be provided by concrete + subclasses of LoopTagSupport to assist the iterative logic + provided by the supporting base class.

+ +

See next for more information about the + purpose and expectations behind this tag.

+

+

+
+
+
+ +
Returns:
true if there is at least one more item to iterate + over, false otherwise +
Throws: +
javax.servlet.jsp.JspTagException
See Also:
next()
+
+
+
+ +

+prepare

+
+protected abstract void prepare()
+                         throws javax.servlet.jsp.JspTagException
+
+

Prepares for a single tag invocation. Specifically, allows + subclasses to prepare for calls to hasNext() and next(). + Subclasses can assume that prepare() will be called once for + each invocation of doStartTag() in the superclass.

+

+

+
+
+
+ +
Throws: +
javax.servlet.jsp.JspTagException
+
+
+
+ +

+release

+
+public void release()
+
+
Releases any resources this LoopTagSupport may have (or inherit). +

+

+
Specified by:
release in interface javax.servlet.jsp.tagext.Tag
+
+
+
+
+
+
+ +

+doStartTag

+
+public int doStartTag()
+               throws javax.servlet.jsp.JspException
+
+
Begins iterating by processing the first item. +

+

+
Specified by:
doStartTag in interface javax.servlet.jsp.tagext.Tag
+
+
+ +
Throws: +
javax.servlet.jsp.JspException
+
+
+
+ +

+doAfterBody

+
+public int doAfterBody()
+                throws javax.servlet.jsp.JspException
+
+
Continues the iteration when appropriate -- that is, if we (a) have + more items and (b) don't run over our 'end' (given our 'step'). +

+

+
Specified by:
doAfterBody in interface javax.servlet.jsp.tagext.IterationTag
+
+
+ +
Throws: +
javax.servlet.jsp.JspException
+
+
+
+ +

+doFinally

+
+public void doFinally()
+
+
Removes any attributes that this LoopTagSupport set. + +

These attributes are intended to support scripting variables with + NESTED scope, so we don't want to pollute attribute space by leaving + them lying around. +

+

+
Specified by:
doFinally in interface javax.servlet.jsp.tagext.TryCatchFinally
+
+
+
+
+
+
+ +

+doCatch

+
+public void doCatch(java.lang.Throwable t)
+             throws java.lang.Throwable
+
+
Rethrows the given Throwable. +

+

+
Specified by:
doCatch in interface javax.servlet.jsp.tagext.TryCatchFinally
+
+
+ +
Throws: +
java.lang.Throwable
+
+
+
+ +

+getCurrent

+
+public java.lang.Object getCurrent()
+
+
Description copied from interface: LoopTag
+
Retrieves the current item in the iteration. Behaves + idempotently; calling getCurrent() repeatedly should return the same + Object until the iteration is advanced. (Specifically, calling + getCurrent() does not advance the iteration.) +

+

+
Specified by:
getCurrent in interface LoopTag
+
+
+ +
Returns:
the current item as an object
+
+
+
+ +

+getLoopStatus

+
+public LoopTagStatus getLoopStatus()
+
+
Description copied from interface: LoopTag
+
Retrieves a 'status' object to provide information about the + current round of the iteration. +

+

+
Specified by:
getLoopStatus in interface LoopTag
+
+
+ +
Returns:
The LoopTagStatus for the current LoopTag.
+
+
+
+ +

+setVar

+
+public void setVar(java.lang.String id)
+
+
Sets the 'var' attribute. +

+

+
+
+
+
Parameters:
id - Name of the exported scoped variable storing the current item + of the iteration.
+
+
+
+ +

+setVarStatus

+
+public void setVarStatus(java.lang.String statusId)
+
+
Sets the 'varStatus' attribute. +

+

+
+
+
+
Parameters:
statusId - Name of the exported scoped variable storing the status + of the iteration.
+
+
+
+ +

+validateBegin

+
+protected void validateBegin()
+                      throws javax.servlet.jsp.JspTagException
+
+
Ensures the "begin" property is sensible, throwing an exception + expected to propagate up if it isn't +

+

+
+
+
+ +
Throws: +
javax.servlet.jsp.JspTagException
+
+
+
+ +

+validateEnd

+
+protected void validateEnd()
+                    throws javax.servlet.jsp.JspTagException
+
+
Ensures the "end" property is sensible, throwing an exception + expected to propagate up if it isn't +

+

+
+
+
+ +
Throws: +
javax.servlet.jsp.JspTagException
+
+
+
+ +

+validateStep

+
+protected void validateStep()
+                     throws javax.servlet.jsp.JspTagException
+
+
Ensures the "step" property is sensible, throwing an exception + expected to propagate up if it isn't +

+

+
+
+
+ +
Throws: +
javax.servlet.jsp.JspTagException
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-frame.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-frame.html new file mode 100644 index 0000000..2558e66 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-frame.html @@ -0,0 +1,49 @@ + + + + + + +javax.servlet.jsp.jstl.core + + + + + + + + + + + +javax.servlet.jsp.jstl.core + + + + +
+Interfaces  + +
+LoopTag +
+LoopTagStatus
+ + + + + + +
+Classes  + +
+ConditionalTagSupport +
+Config +
+LoopTagSupport
+ + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-summary.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-summary.html new file mode 100644 index 0000000..d60c989 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-summary.html @@ -0,0 +1,175 @@ + + + + + + +javax.servlet.jsp.jstl.core + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package javax.servlet.jsp.jstl.core +

+ + + + + + + + + + + + + +
+Interface Summary
LoopTagJSTL allows developers to write custom iteration tags by + implementing the LoopTag interface.
LoopTagStatusExposes the current status of + an iteration.
+  + +

+ + + + + + + + + + + + + + + + + +
+Class Summary
ConditionalTagSupportAbstract class that facilitates implementation of conditional actions + where the boolean result is exposed as a JSP scoped variable.
ConfigClass supporting access to configuration settings.
LoopTagSupportBase support class to facilitate implementation of iteration tags.
+  + +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-tree.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-tree.html new file mode 100644 index 0000000..c9cd358 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-tree.html @@ -0,0 +1,156 @@ + + + + + + +javax.servlet.jsp.jstl.core Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package javax.servlet.jsp.jstl.core +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+
    +
  • class java.lang.Object
      +
    • class javax.servlet.jsp.jstl.core.Config
    • class javax.servlet.jsp.tagext.TagSupport (implements javax.servlet.jsp.tagext.IterationTag, java.io.Serializable) +
        +
      • class javax.servlet.jsp.jstl.core.ConditionalTagSupport
      • class javax.servlet.jsp.jstl.core.LoopTagSupport (implements javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.jstl.core.LoopTag, javax.servlet.jsp.tagext.TryCatchFinally) +
      +
    +
+

+Interface Hierarchy +

+
    +
  • interface javax.servlet.jsp.tagext.JspTag
      +
    • interface javax.servlet.jsp.tagext.Tag
        +
      • interface javax.servlet.jsp.jstl.core.LoopTag
      +
    +
  • interface javax.servlet.jsp.jstl.core.LoopTagStatus
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocaleSupport.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocaleSupport.html new file mode 100644 index 0000000..1dc3b6a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocaleSupport.html @@ -0,0 +1,390 @@ + + + + + + +LocaleSupport + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.fmt +
+Class LocaleSupport

+
+java.lang.Object
+  extended byjavax.servlet.jsp.jstl.fmt.LocaleSupport
+
+
+
+
public class LocaleSupport
extends java.lang.Object
+ +

+Class which exposes the locale-determination logic for resource bundles + through convenience methods. + +

This class may be useful to any tag handler implementation that needs + to produce localized messages. For example, this might be useful for + exception messages that are intended directly for user consumption on an + error page. +

+ +

+

+
Author:
+
Jan Luehe
+
+
+ +

+ + + + + + + + + + + + + + + + +
+Constructor Summary
LocaleSupport() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+static java.lang.StringgetLocalizedMessage(javax.servlet.jsp.PageContext pageContext, + java.lang.String key) + +
+          Retrieves the localized message corresponding to the given key.
+static java.lang.StringgetLocalizedMessage(javax.servlet.jsp.PageContext pageContext, + java.lang.String key, + java.lang.Object[] args) + +
+          Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args.
+static java.lang.StringgetLocalizedMessage(javax.servlet.jsp.PageContext pageContext, + java.lang.String key, + java.lang.Object[] args, + java.lang.String basename) + +
+          Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args.
+static java.lang.StringgetLocalizedMessage(javax.servlet.jsp.PageContext pageContext, + java.lang.String key, + java.lang.String basename) + +
+          Retrieves the localized message corresponding to the given key.
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + + + + +
+Constructor Detail
+ +

+LocaleSupport

+
+public LocaleSupport()
+
+
+ + + + + + + + +
+Method Detail
+ +

+getLocalizedMessage

+
+public static java.lang.String getLocalizedMessage(javax.servlet.jsp.PageContext pageContext,
+                                                   java.lang.String key)
+
+
Retrieves the localized message corresponding to the given key. + +

The given key is looked up in the resource bundle of the default + I18N localization context, which is retrieved from the + javax.servlet.jsp.jstl.fmt.localizationContext configuration + setting. + +

If the configuration setting is empty, or the default I18N + localization context does not contain any resource bundle, or the given + key is undefined in its resource bundle, the string "???<key>???" is + returned, where "<key>" is replaced with the given key. +

+

+
Parameters:
pageContext - the page in which to get the localized message + corresponding to the given key
key - the message key +
Returns:
the localized message corresponding to the given key
+
+
+
+ +

+getLocalizedMessage

+
+public static java.lang.String getLocalizedMessage(javax.servlet.jsp.PageContext pageContext,
+                                                   java.lang.String key,
+                                                   java.lang.String basename)
+
+
Retrieves the localized message corresponding to the given key. + +

The given key is looked up in the resource bundle with the given + base name. + +

If no resource bundle with the given base name exists, or the given + key is undefined in the resource bundle, the string "???<key>???" is + returned, where "<key>" is replaced with the given key. +

+

+
Parameters:
pageContext - the page in which to get the localized message + corresponding to the given key
key - the message key
basename - the resource bundle base name +
Returns:
the localized message corresponding to the given key
+
+
+
+ +

+getLocalizedMessage

+
+public static java.lang.String getLocalizedMessage(javax.servlet.jsp.PageContext pageContext,
+                                                   java.lang.String key,
+                                                   java.lang.Object[] args)
+
+
Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args. + +

See the specification of the <fmt:message> action for a description + of how parametric replacement is implemented. + +

The localized message is retrieved as in + getLocalizedMessage(pageContext, key). +

+

+
Parameters:
pageContext - the page in which to get the localized message + corresponding to the given key
key - the message key
args - the arguments for parametric replacement +
Returns:
the localized message corresponding to the given key
+
+
+
+ +

+getLocalizedMessage

+
+public static java.lang.String getLocalizedMessage(javax.servlet.jsp.PageContext pageContext,
+                                                   java.lang.String key,
+                                                   java.lang.Object[] args,
+                                                   java.lang.String basename)
+
+
Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args. + +

See the specification of the <fmt:message> action for a description + of how parametric replacement is implemented. + +

The localized message is retrieved as in + getLocalizedMessage(pageContext, key, basename). +

+

+
Parameters:
pageContext - the page in which to get the localized message + corresponding to the given key
key - the message key
args - the arguments for parametric replacement
basename - the resource bundle base name +
Returns:
the localized message corresponding to the given key
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocalizationContext.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocalizationContext.html new file mode 100644 index 0000000..6ee1024 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocalizationContext.html @@ -0,0 +1,338 @@ + + + + + + +LocalizationContext + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.fmt +
+Class LocalizationContext

+
+java.lang.Object
+  extended byjavax.servlet.jsp.jstl.fmt.LocalizationContext
+
+
+
+
public class LocalizationContext
extends java.lang.Object
+ +

+Class representing an I18N localization context. + +

An I18N localization context has two components: a resource bundle and + the locale that led to the resource bundle match. + +

The resource bundle component is used by <fmt:message> for mapping + message keys to localized messages, and the locale component is used by the + <fmt:message>, <fmt:formatNumber>, <fmt:parseNumber>, <fmt:formatDate>, + and <fmt:parseDate> actions as their formatting or parsing locale, respectively. +

+ +

+

+
Author:
+
Jan Luehe
+
+
+ +

+ + + + + + + + + + + + + + + + + + + + + + +
+Constructor Summary
LocalizationContext() + +
+          Constructs an empty I18N localization context.
LocalizationContext(java.util.ResourceBundle bundle) + +
+          Constructs an I18N localization context from the given resource bundle.
LocalizationContext(java.util.ResourceBundle bundle, + java.util.Locale locale) + +
+          Constructs an I18N localization context from the given resource bundle + and locale.
+  + + + + + + + + + + + + + + + +
+Method Summary
+ java.util.LocalegetLocale() + +
+          Gets the locale of this I18N localization context.
+ java.util.ResourceBundlegetResourceBundle() + +
+          Gets the resource bundle of this I18N localization context.
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + + + + +
+Constructor Detail
+ +

+LocalizationContext

+
+public LocalizationContext()
+
+
Constructs an empty I18N localization context. +

+

+
+ +

+LocalizationContext

+
+public LocalizationContext(java.util.ResourceBundle bundle,
+                           java.util.Locale locale)
+
+
Constructs an I18N localization context from the given resource bundle + and locale. + +

The specified locale is the application- or browser-based preferred + locale that led to the resource bundle match. +

+

Parameters:
bundle - The localization context's resource bundle
locale - The localization context's locale
+
+ +

+LocalizationContext

+
+public LocalizationContext(java.util.ResourceBundle bundle)
+
+
Constructs an I18N localization context from the given resource bundle. + +

The localization context's locale is taken from the given + resource bundle. +

+

Parameters:
bundle - The resource bundle
+ + + + + + + + +
+Method Detail
+ +

+getResourceBundle

+
+public java.util.ResourceBundle getResourceBundle()
+
+
Gets the resource bundle of this I18N localization context. +

+

+ +
Returns:
The resource bundle of this I18N localization context, or null + if this I18N localization context is empty
+
+
+
+ +

+getLocale

+
+public java.util.Locale getLocale()
+
+
Gets the locale of this I18N localization context. +

+

+ +
Returns:
The locale of this I18N localization context, or null if this + I18N localization context is empty, or its resource bundle is a + (locale-less) root resource bundle.
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-frame.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-frame.html new file mode 100644 index 0000000..6907197 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-frame.html @@ -0,0 +1,34 @@ + + + + + + +javax.servlet.jsp.jstl.fmt + + + + + + + + + + + +javax.servlet.jsp.jstl.fmt + + + + +
+Classes  + +
+LocaleSupport +
+LocalizationContext
+ + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-summary.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-summary.html new file mode 100644 index 0000000..840f9da --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-summary.html @@ -0,0 +1,151 @@ + + + + + + +javax.servlet.jsp.jstl.fmt + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package javax.servlet.jsp.jstl.fmt +

+ + + + + + + + + + + + + +
+Class Summary
LocaleSupportClass which exposes the locale-determination logic for resource bundles + through convenience methods.
LocalizationContextClass representing an I18N localization context.
+  + +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-tree.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-tree.html new file mode 100644 index 0000000..4c80005 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-tree.html @@ -0,0 +1,143 @@ + + + + + + +javax.servlet.jsp.jstl.fmt Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package javax.servlet.jsp.jstl.fmt +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/Result.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/Result.html new file mode 100644 index 0000000..fd3a564 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/Result.html @@ -0,0 +1,342 @@ + + + + + + +Result + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.sql +
+Interface Result

+
+
+
public interface Result
+ +

+

This interface represents the result of a <sql:query> + action. It provides access to the following information in the + query result:

+ +
    +
  • The result rows (getRows() and getRowsByIndex()) +
  • The column names (getColumnNames()) +
  • The number of rows in the result (getRowCount()) +
  • An indication whether the rows returned represent the complete result + or just a subset that is limited by a maximum row setting + (isLimitedByMaxRows()) +
+ +

An implementation of the Result interface provides a + disconnected view into the result of a query. +

+ +

+

+
Author:
+
Justyna Horwat
+
+
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.String[]getColumnNames() + +
+          Returns the names of the columns in the result.
+ intgetRowCount() + +
+          Returns the number of rows in the cached ResultSet
+ java.util.SortedMap[]getRows() + +
+          Returns the result of the query as an array of SortedMap objects.
+ java.lang.Object[][]getRowsByIndex() + +
+          Returns the result of the query as an array of arrays.
+ booleanisLimitedByMaxRows() + +
+          Returns true if the query was limited by a maximum row setting
+  +

+ + + + + + + + + + + + + + +
+Method Detail
+ +

+getRows

+
+public java.util.SortedMap[] getRows()
+
+

Returns the result of the query as an array of SortedMap objects. + Each item of the array represents a specific row in the query result.

+ +

A row is structured as a SortedMap object where the key is the column name, + and where the value is the value associated with the column identified by + the key. The column value is an Object of the Java type corresponding + to the mapping between column types and Java types defined by the JDBC + specification when the ResultSet.getObject() method is used.

+ +

The SortedMap must use the Comparator + java.util.String.CASE_INSENSITIVE_ORDER. + This makes it possible to access the key as a case insensitive representation + of a column name. This method will therefore work regardless of the case of + the column name returned by the database.

+

+

+ +
Returns:
The result rows as an array of SortedMap objects
+
+
+
+ +

+getRowsByIndex

+
+public java.lang.Object[][] getRowsByIndex()
+
+
Returns the result of the query as an array of arrays. + The first array dimension represents a specific row in the query result. + The array elements for each row are Object instances of the Java type + corresponding to the mapping between column types and Java types defined + by the JDBC specification when the ResultSet.getObject() method is used. +

+

+ +
Returns:
the result rows as an array of Object[] objects
+
+
+
+ +

+getColumnNames

+
+public java.lang.String[] getColumnNames()
+
+
Returns the names of the columns in the result. The order of the names in the array + matches the order in which columns are returned in method getRowsByIndex(). +

+

+ +
Returns:
the column names as an array of String objects
+
+
+
+ +

+getRowCount

+
+public int getRowCount()
+
+
Returns the number of rows in the cached ResultSet +

+

+ +
Returns:
the number of rows in the result
+
+
+
+ +

+isLimitedByMaxRows

+
+public boolean isLimitedByMaxRows()
+
+
Returns true if the query was limited by a maximum row setting +

+

+ +
Returns:
true if the query was limited by a maximum + row setting
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/ResultSupport.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/ResultSupport.html new file mode 100644 index 0000000..5c6102c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/ResultSupport.html @@ -0,0 +1,291 @@ + + + + + + +ResultSupport + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.sql +
+Class ResultSupport

+
+java.lang.Object
+  extended byjavax.servlet.jsp.jstl.sql.ResultSupport
+
+
+
+
public class ResultSupport
extends java.lang.Object
+ +

+

Supports the creation of a javax.servlet.jsp.jstl.sql.Result object + from a source java.sql.ResultSet object. A Result object makes it much + easier for page authors to access and manipulate the data resulting + from a SQL query.

+

+ +

+

+
Author:
+
Justyna Horwat
+
+
+ +

+ + + + + + + + + + + + + + + + +
+Constructor Summary
ResultSupport() + +
+           
+  + + + + + + + + + + + + + + + +
+Method Summary
+static ResulttoResult(java.sql.ResultSet rs) + +
+          Converts a ResultSet object to a Result object.
+static ResulttoResult(java.sql.ResultSet rs, + int maxRows) + +
+          Converts maxRows of a ResultSet object to a + Result object.
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + + + + +
+Constructor Detail
+ +

+ResultSupport

+
+public ResultSupport()
+
+
+ + + + + + + + +
+Method Detail
+ +

+toResult

+
+public static Result toResult(java.sql.ResultSet rs)
+
+
Converts a ResultSet object to a Result object. +

+

+
Parameters:
rs - the ResultSet object +
Returns:
The Result object created from the ResultSet
+
+
+
+ +

+toResult

+
+public static Result toResult(java.sql.ResultSet rs,
+                              int maxRows)
+
+
Converts maxRows of a ResultSet object to a + Result object. +

+

+
Parameters:
rs - the ResultSet object
maxRows - the maximum number of rows to be cached into the Result object. +
Returns:
The Result object created from the ResultSet, + limited by maxRows
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/SQLExecutionTag.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/SQLExecutionTag.html new file mode 100644 index 0000000..bf1ada5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/SQLExecutionTag.html @@ -0,0 +1,247 @@ + + + + + + +SQLExecutionTag + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.sql +
+Interface SQLExecutionTag

+
+
+
public interface SQLExecutionTag
+ +

+

This interface allows tag handlers implementing it to receive + values for parameter markers in their SQL statements.

+ +

This interface is implemented by both <sql:query> and + <sql:update>. Its addSQLParameter() method + is called by nested parameter actions (such as <sql:param>) + to substitute PreparedStatement parameter values for + "?" parameter markers in the SQL statement of the enclosing + SQLExecutionTag action.

+ +

The given parameter values are converted to their corresponding + SQL type (following the rules in the JDBC specification) before + they are sent to the database.

+ +

Keeping track of the index of the parameter values being added + is the responsibility of the tag handler implementing this + interface

+ +

The SQLExcecutionTag interface is exposed in order + to support custom parameter actions which may retrieve their + parameters from any source and process them before substituting + them for a parameter marker in the SQL statement of the + enclosing SQLExecutionTag action

+

+ +

+

+
Author:
+
Justyna Horwat
+
+
+ +

+ + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ voidaddSQLParameter(java.lang.Object value) + +
+          Adds a PreparedStatement parameter value.
+  +

+ + + + + + + + + + + + + + +
+Method Detail
+ +

+addSQLParameter

+
+public void addSQLParameter(java.lang.Object value)
+
+
Adds a PreparedStatement parameter value. + Must behave as if it calls PreparedStatement.setObject(int, Object). + For each tag invocation, the integral index passed logically to setObject() + must begin with 1 and must be incremented by 1 for each subsequent invocation + of addSQLParameter(). The Object logically passed to setObject() must be the + unmodified object received in the value argument. +

+

+
Parameters:
value - the PreparedStatement parameter value
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-frame.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-frame.html new file mode 100644 index 0000000..4f578dd --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-frame.html @@ -0,0 +1,45 @@ + + + + + + +javax.servlet.jsp.jstl.sql + + + + + + + + + + + +javax.servlet.jsp.jstl.sql + + + + +
+Interfaces  + +
+Result +
+SQLExecutionTag
+ + + + + + +
+Classes  + +
+ResultSupport
+ + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-summary.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-summary.html new file mode 100644 index 0000000..30f5c59 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-summary.html @@ -0,0 +1,167 @@ + + + + + + +javax.servlet.jsp.jstl.sql + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package javax.servlet.jsp.jstl.sql +

+ + + + + + + + + + + + + +
+Interface Summary
ResultThis interface represents the result of a <sql:query> + action.
SQLExecutionTagThis interface allows tag handlers implementing it to receive + values for parameter markers in their SQL statements.
+  + +

+ + + + + + + + + +
+Class Summary
ResultSupportSupports the creation of a javax.servlet.jsp.jstl.sql.Result object + from a source java.sql.ResultSet object.
+  + +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-tree.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-tree.html new file mode 100644 index 0000000..06b51f5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-tree.html @@ -0,0 +1,148 @@ + + + + + + +javax.servlet.jsp.jstl.sql Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package javax.servlet.jsp.jstl.sql +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+
    +
  • class java.lang.Object +
+

+Interface Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/PermittedTaglibsTLV.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/PermittedTaglibsTLV.html new file mode 100644 index 0000000..884d321 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/PermittedTaglibsTLV.html @@ -0,0 +1,300 @@ + + + + + + +PermittedTaglibsTLV + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.tlv +
+Class PermittedTaglibsTLV

+
+java.lang.Object
+  extended byjavax.servlet.jsp.tagext.TagLibraryValidator
+      extended byjavax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV
+
+
+
+
public class PermittedTaglibsTLV
extends javax.servlet.jsp.tagext.TagLibraryValidator
+ +

+

A TagLibraryValidator class to allow a TLD to restrict what + taglibs (in addition to itself) may be imported on a page where it's + used.

+ +

This TLV supports the following initialization parameter:

+
    +
  • permittedTaglibs: A whitespace-separated list of URIs corresponding + to tag libraries permitted to be imported on the page in addition to the tag + library that references PermittedTaglibsTLV (which is allowed implicitly). +
+

+ +

+

+
Author:
+
Shawn Bayern
+
+
+ +

+ + + + + + + + + + + + + + + + +
+Constructor Summary
PermittedTaglibsTLV() + +
+           
+  + + + + + + + + + + + + + + + +
+Method Summary
+ voidrelease() + +
+           
+ javax.servlet.jsp.tagext.ValidationMessage[]validate(java.lang.String prefix, + java.lang.String uri, + javax.servlet.jsp.tagext.PageData page) + +
+           
+ + + + + + + +
Methods inherited from class javax.servlet.jsp.tagext.TagLibraryValidator
getInitParameters, setInitParameters
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + + + + +
+Constructor Detail
+ +

+PermittedTaglibsTLV

+
+public PermittedTaglibsTLV()
+
+
+ + + + + + + + +
+Method Detail
+ +

+release

+
+public void release()
+
+
+
+
+
+
+ +

+validate

+
+public javax.servlet.jsp.tagext.ValidationMessage[] validate(java.lang.String prefix,
+                                                             java.lang.String uri,
+                                                             javax.servlet.jsp.tagext.PageData page)
+
+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/ScriptFreeTLV.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/ScriptFreeTLV.html new file mode 100644 index 0000000..85a7d5d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/ScriptFreeTLV.html @@ -0,0 +1,321 @@ + + + + + + +ScriptFreeTLV + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +javax.servlet.jsp.jstl.tlv +
+Class ScriptFreeTLV

+
+java.lang.Object
+  extended byjavax.servlet.jsp.tagext.TagLibraryValidator
+      extended byjavax.servlet.jsp.jstl.tlv.ScriptFreeTLV
+
+
+
+
public class ScriptFreeTLV
extends javax.servlet.jsp.tagext.TagLibraryValidator
+ +

+

A TagLibraryValidator for enforcing restrictions against + the use of JSP scripting elements.

+

This TLV supports four initialization parameters, for controlling + which of the four types of scripting elements are allowed or prohibited:

+
    +
  • allowDeclarations: if true, indicates that declaration elements + are not prohibited. +
  • allowScriptlets: if true, indicates that scriptlets are not + prohibited +
  • allowExpressions: if true, indicates that top-level expression + elements (i.e., expressions not associated with request-time attribute + values) are not prohibited. +
  • allowRTExpressions: if true, indicates that expression elements + associated with request-time attribute values are not prohibited. +
+

The default value for all for initialization parameters is false, + indicating all forms of scripting elements are to be prohibited.

+

+ +

+

+
Author:
+
Mark A. Kolb, Shawn Bayern (minor changes)
+
+
+ +

+ + + + + + + + + + + + + + + + +
+Constructor Summary
ScriptFreeTLV() + +
+          Constructs a new validator instance.
+  + + + + + + + + + + + + + + + +
+Method Summary
+ voidsetInitParameters(java.util.Map initParms) + +
+          Sets the values of the initialization parameters, as supplied in the TLD.
+ javax.servlet.jsp.tagext.ValidationMessage[]validate(java.lang.String prefix, + java.lang.String uri, + javax.servlet.jsp.tagext.PageData page) + +
+          Validates a single JSP page.
+ + + + + + + +
Methods inherited from class javax.servlet.jsp.tagext.TagLibraryValidator
getInitParameters, release
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + + + + +
+Constructor Detail
+ +

+ScriptFreeTLV

+
+public ScriptFreeTLV()
+
+
Constructs a new validator instance. + Initializes the parser factory to create non-validating, namespace-aware + SAX parsers. +

+

+ + + + + + + + +
+Method Detail
+ +

+setInitParameters

+
+public void setInitParameters(java.util.Map initParms)
+
+
Sets the values of the initialization parameters, as supplied in the TLD. +

+

+
Parameters:
initParms - a mapping from the names of the initialization parameters + to their values, as specified in the TLD.
+
+
+
+ +

+validate

+
+public javax.servlet.jsp.tagext.ValidationMessage[] validate(java.lang.String prefix,
+                                                             java.lang.String uri,
+                                                             javax.servlet.jsp.tagext.PageData page)
+
+
Validates a single JSP page. +

+

+
Parameters:
prefix - the namespace prefix specified by the page for the + custom tag library being validated.
uri - the URI specified by the page for the TLD of the + custom tag library being validated.
page - a wrapper around the XML representation of the page + being validated. +
Returns:
null, if the page is valid; otherwise, a ValidationMessage[] + containing one or more messages indicating why the page is not valid.
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-frame.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-frame.html new file mode 100644 index 0000000..170b7c0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-frame.html @@ -0,0 +1,34 @@ + + + + + + +javax.servlet.jsp.jstl.tlv + + + + + + + + + + + +javax.servlet.jsp.jstl.tlv + + + + +
+Classes  + +
+PermittedTaglibsTLV +
+ScriptFreeTLV
+ + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-summary.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-summary.html new file mode 100644 index 0000000..81d3b1f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-summary.html @@ -0,0 +1,153 @@ + + + + + + +javax.servlet.jsp.jstl.tlv + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package javax.servlet.jsp.jstl.tlv +

+ + + + + + + + + + + + + +
+Class Summary
PermittedTaglibsTLVA TagLibraryValidator class to allow a TLD to restrict what + taglibs (in addition to itself) may be imported on a page where it's + used.
ScriptFreeTLVA TagLibraryValidator for enforcing restrictions against + the use of JSP scripting elements.
+  + +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-tree.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-tree.html new file mode 100644 index 0000000..d9ca33f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-tree.html @@ -0,0 +1,145 @@ + + + + + + +javax.servlet.jsp.jstl.tlv Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package javax.servlet.jsp.jstl.tlv +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+
    +
  • class java.lang.Object +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-frame.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-frame.html new file mode 100644 index 0000000..1676571 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-frame.html @@ -0,0 +1,48 @@ + + + + + + +Overview + + + + + + + + + + + + + + + +
+
+ + + + + +
All Classes +

+ +Packages +
+javax.servlet.jsp.jstl.core +
+javax.servlet.jsp.jstl.fmt +
+javax.servlet.jsp.jstl.sql +
+javax.servlet.jsp.jstl.tlv +
+

+ +

+  + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-summary.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-summary.html new file mode 100644 index 0000000..6bac130 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-summary.html @@ -0,0 +1,154 @@ + + + + + + +Overview + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +


+ + + + + + + + + + + + + + + + + + + + + +
+Packages
javax.servlet.jsp.jstl.core 
javax.servlet.jsp.jstl.fmt 
javax.servlet.jsp.jstl.sql 
javax.servlet.jsp.jstl.tlv 
+ +


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-tree.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-tree.html new file mode 100644 index 0000000..673cb08 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-tree.html @@ -0,0 +1,157 @@ + + + + + + +Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For All Packages

+
+
+
Package Hierarchies:
javax.servlet.jsp.jstl.core, javax.servlet.jsp.jstl.fmt, javax.servlet.jsp.jstl.sql, javax.servlet.jsp.jstl.tlv
+
+

+Class Hierarchy +

+
    +
  • class java.lang.Object
      +
    • class javax.servlet.jsp.jstl.core.Config
    • class javax.servlet.jsp.jstl.fmt.LocaleSupport
    • class javax.servlet.jsp.jstl.fmt.LocalizationContext
    • class javax.servlet.jsp.jstl.sql.ResultSupport
    • class javax.servlet.jsp.tagext.TagLibraryValidator +
    • class javax.servlet.jsp.tagext.TagSupport (implements javax.servlet.jsp.tagext.IterationTag, java.io.Serializable) +
        +
      • class javax.servlet.jsp.jstl.core.ConditionalTagSupport
      • class javax.servlet.jsp.jstl.core.LoopTagSupport (implements javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.jstl.core.LoopTag, javax.servlet.jsp.tagext.TryCatchFinally) +
      +
    +
+

+Interface Hierarchy +

+
    +
  • interface javax.servlet.jsp.tagext.JspTag
      +
    • interface javax.servlet.jsp.tagext.Tag
        +
      • interface javax.servlet.jsp.jstl.core.LoopTag
      +
    +
  • interface javax.servlet.jsp.jstl.core.LoopTagStatus
  • interface javax.servlet.jsp.jstl.sql.Result
  • interface javax.servlet.jsp.jstl.sql.SQLExecutionTag
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/package-list b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/package-list new file mode 100644 index 0000000..3de700a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/package-list @@ -0,0 +1,4 @@ +javax.servlet.jsp.jstl.core +javax.servlet.jsp.jstl.fmt +javax.servlet.jsp.jstl.sql +javax.servlet.jsp.jstl.tlv diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/packages.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/packages.html new file mode 100644 index 0000000..062d00f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/packages.html @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+The front page has been relocated.Please see: +
+          Frame version +
+          Non-frame version.
+ + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/resources/inherit.gif b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/resources/inherit.gif new file mode 100644 index 0000000..c814867 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/resources/inherit.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/serialized-form.html b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/serialized-form.html new file mode 100644 index 0000000..734a151 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/serialized-form.html @@ -0,0 +1,355 @@ + + + + + + +Serialized Form + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Serialized Form

+
+
+ + + + + +
+Package javax.servlet.jsp.jstl.core
+ +

+ + + + + +
+Class javax.servlet.jsp.jstl.core.ConditionalTagSupport extends javax.servlet.jsp.tagext.TagSupport implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+result

+
+boolean result
+
+
+
+
+
+ +

+var

+
+java.lang.String var
+
+
+
+
+
+ +

+scope

+
+int scope
+
+
+
+
+ +

+ + + + + +
+Class javax.servlet.jsp.jstl.core.LoopTagSupport extends javax.servlet.jsp.tagext.TagSupport implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+begin

+
+int begin
+
+
Starting index ('begin' attribute) +

+

+
+
+
+ +

+end

+
+int end
+
+
Ending index of the iteration ('end' attribute). + A value of -1 internally indicates 'no end + specified', although accessors for the core JSTL tags do not + allow this value to be supplied directly by the user. +

+

+
+
+
+ +

+step

+
+int step
+
+
Iteration step ('step' attribute) +

+

+
+
+
+ +

+beginSpecified

+
+boolean beginSpecified
+
+
Boolean flag indicating whether 'begin' was specified. +

+

+
+
+
+ +

+endSpecified

+
+boolean endSpecified
+
+
Boolean flag indicating whether 'end' was specified. +

+

+
+
+
+ +

+stepSpecified

+
+boolean stepSpecified
+
+
Boolean flag indicating whether 'step' was specified. +

+

+
+
+
+ +

+itemId

+
+java.lang.String itemId
+
+
Attribute-exposing control +

+

+
+
+
+ +

+statusId

+
+java.lang.String statusId
+
+
Attribute-exposing control +

+

+
+
+
+ +

+status

+
+LoopTagStatus status
+
+
+
+
+
+ +

+item

+
+java.lang.Object item
+
+
+
+
+
+ +

+index

+
+int index
+
+
+
+
+
+ +

+count

+
+int count
+
+
+
+
+
+ +

+last

+
+boolean last
+
+
+
+
+ +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/stylesheet.css b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/stylesheet.css new file mode 100644 index 0000000..14c3737 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/stylesheet.css @@ -0,0 +1,29 @@ +/* Javadoc style sheet */ + +/* Define colors, fonts and other style attributes here to override the defaults */ + +/* Page background color */ +body { background-color: #FFFFFF } + +/* Headings */ +h1 { font-size: 145% } + +/* Table colors */ +.TableHeadingColor { background: #CCCCFF } /* Dark mauve */ +.TableSubHeadingColor { background: #EEEEFF } /* Light mauve */ +.TableRowColor { background: #FFFFFF } /* White */ + +/* Font used in left-hand frame lists */ +.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif } +.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif } +.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif } + +/* Navigation bar fonts and colors */ +.NavBarCell1 { background-color:#EEEEFF;} /* Light mauve */ +.NavBarCell1Rev { background-color:#00008B;} /* Dark Blue */ +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;} +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;} + +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/jstl.jar b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/jstl.jar new file mode 100644 index 0000000..a02abec Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/jstl.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/standard.jar b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/standard.jar new file mode 100644 index 0000000..bc528ac Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/standard.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-doc.war b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-doc.war new file mode 100644 index 0000000..927eda7 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-doc.war differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-examples.war b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-examples.war new file mode 100644 index 0000000..484f8dd Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-examples.war differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0-rt.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0-rt.tld new file mode 100644 index 0000000..2203657 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0-rt.tld @@ -0,0 +1,393 @@ + + + + 1.0 + 1.2 + c_rt + http://java.sun.com/jstl/core_rt + JSTL core RT + JSTL 1.0 core library + + + + org.apache.taglibs.standard.tlv.JstlCoreTLV + + + Provides core validation features for JSTL tags. + + + + + catch + org.apache.taglibs.standard.tag.common.core.CatchTag + JSP + + Catches any Throwable that occurs in its body and optionally + exposes it. + + + var + false + false + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + if + org.apache.taglibs.standard.tag.rt.core.IfTag + JSP + + Simple conditional tag, which evalutes its body if the + supplied condition is true and optionally exposes a Boolean + scripting variable representing the evaluation of this condition + + + test + true + true + boolean + + + var + false + false + + + scope + false + false + + + + + import + org.apache.taglibs.standard.tag.rt.core.ImportTag + org.apache.taglibs.standard.tei.ImportTEI + JSP + + Retrieves an absolute or relative URL and exposes its contents + to either the page, a String in 'var', or a Reader in 'varReader'. + + + url + true + true + + + var + false + false + + + scope + false + false + + + varReader + false + false + + + context + false + true + + + charEncoding + false + true + + + + + forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag + org.apache.taglibs.standard.tei.ForEachTEI + JSP + + The basic iteration tag, accepting many different + collection types and supporting subsetting and other + functionality + + + items + false + true + java.lang.Object + + + begin + false + true + int + + + end + false + true + int + + + step + false + true + int + + + var + false + false + + + varStatus + false + false + + + + + forTokens + org.apache.taglibs.standard.tag.rt.core.ForTokensTag + JSP + + Iterates over tokens, separated by the supplied delimeters + + + items + true + true + java.lang.String + + + delims + true + true + java.lang.String + + + begin + false + true + int + + + end + false + true + int + + + step + false + true + int + + + var + false + false + + + varStatus + false + false + + + + + out + org.apache.taglibs.standard.tag.rt.core.OutTag + JSP + + Like <%= ... >, but for expressions. + + + value + true + true + + + default + false + true + + + escapeXml + false + true + + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.rt.core.ParamTag + JSP + + Adds a parameter to a containing 'import' tag's URL. + + + name + true + true + + + value + false + true + + + + + redirect + org.apache.taglibs.standard.tag.rt.core.RedirectTag + JSP + + Redirects to a new URL. + + + var + false + false + + + scope + false + false + + + url + false + true + + + context + false + true + + + + + remove + org.apache.taglibs.standard.tag.common.core.RemoveTag + empty + + Removes a scoped variable (from a particular scope, if specified). + + + var + true + false + + + scope + false + false + + + + + set + org.apache.taglibs.standard.tag.rt.core.SetTag + JSP + + Sets the result of an expression evaluation in a 'scope' + + + var + false + false + + + value + false + true + + + target + false + true + + + property + false + true + + + scope + false + false + + + + + url + org.apache.taglibs.standard.tag.rt.core.UrlTag + JSP + + Creates a URL with optional query parameters. + + + var + false + false + + + scope + false + false + + + value + false + true + + + context + false + true + + + + + when + org.apache.taglibs.standard.tag.rt.core.WhenTag + JSP + + Subtag of <choose> that includes its body if its + condition evalutes to 'true' + + + test + true + true + boolean + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0.tld new file mode 100644 index 0000000..ce80e8d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0.tld @@ -0,0 +1,416 @@ + + + + 1.0 + 1.2 + c + http://java.sun.com/jstl/core + JSTL core + JSTL 1.0 core library + + + + org.apache.taglibs.standard.tlv.JstlCoreTLV + + + expressionAttributes + + out:value + out:default + out:escapeXml + if:test + import:url + import:context + import:charEncoding + forEach:items + forEach:begin + forEach:end + forEach:step + forTokens:items + forTokens:begin + forTokens:end + forTokens:step + param:encode + param:name + param:value + redirect:context + redirect:url + set:property + set:target + set:value + url:context + url:value + when:test + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + catch + org.apache.taglibs.standard.tag.common.core.CatchTag + JSP + + Catches any Throwable that occurs in its body and optionally + exposes it. + + + var + false + false + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + out + org.apache.taglibs.standard.tag.el.core.OutTag + JSP + + Like <%= ... >, but for expressions. + + + value + true + false + + + default + false + false + + + escapeXml + false + false + + + + + if + org.apache.taglibs.standard.tag.el.core.IfTag + JSP + + Simple conditional tag, which evalutes its body if the + supplied condition is true and optionally exposes a Boolean + scripting variable representing the evaluation of this condition + + + test + true + false + + + var + false + false + + + scope + false + false + + + + + import + org.apache.taglibs.standard.tag.el.core.ImportTag + org.apache.taglibs.standard.tei.ImportTEI + JSP + + Retrieves an absolute or relative URL and exposes its contents + to either the page, a String in 'var', or a Reader in 'varReader'. + + + url + true + false + + + var + false + false + + + scope + false + false + + + varReader + false + false + + + context + false + false + + + charEncoding + false + false + + + + + forEach + org.apache.taglibs.standard.tag.el.core.ForEachTag + org.apache.taglibs.standard.tei.ForEachTEI + JSP + + The basic iteration tag, accepting many different + collection types and supporting subsetting and other + functionality + + + items + false + false + + + begin + false + false + + + end + false + false + + + step + false + false + + + var + false + false + + + varStatus + false + false + + + + + forTokens + org.apache.taglibs.standard.tag.el.core.ForTokensTag + JSP + + Iterates over tokens, separated by the supplied delimeters + + + items + true + false + + + delims + true + false + + + begin + false + false + + + end + false + false + + + step + false + false + + + var + false + false + + + varStatus + false + false + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.el.core.ParamTag + JSP + + Adds a parameter to a containing 'import' tag's URL. + + + name + true + false + + + value + false + false + + + + + redirect + org.apache.taglibs.standard.tag.el.core.RedirectTag + JSP + + Redirects to a new URL. + + + var + false + false + + + scope + false + false + + + url + true + false + + + context + false + false + + + + + remove + org.apache.taglibs.standard.tag.common.core.RemoveTag + empty + + Removes a scoped variable (from a particular scope, if specified). + + + var + true + false + + + scope + false + false + + + + + set + org.apache.taglibs.standard.tag.el.core.SetTag + JSP + + Sets the result of an expression evaluation in a 'scope' + + + var + false + false + + + value + false + false + + + target + false + false + + + property + false + false + + + scope + false + false + + + + + url + org.apache.taglibs.standard.tag.el.core.UrlTag + JSP + + Prints or exposes a URL with optional query parameters + (via the c:param tag). + + + var + false + false + + + scope + false + false + + + value + true + false + + + context + false + false + + + + + when + org.apache.taglibs.standard.tag.el.core.WhenTag + JSP + + Subtag of <choose> that includes its body if its + condition evalutes to 'true' + + + test + true + false + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c.tld new file mode 100644 index 0000000..22698c9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c.tld @@ -0,0 +1,563 @@ + + + + + JSTL 1.1 core library + JSTL core + 1.1 + c + http://java.sun.com/jsp/jstl/core + + + + Provides core validation features for JSTL tags. + + + org.apache.taglibs.standard.tlv.JstlCoreTLV + + + + + + Catches any Throwable that occurs in its body and optionally + exposes it. + + catch + org.apache.taglibs.standard.tag.common.core.CatchTag + JSP + + +Name of the exported scoped variable for the +exception thrown from a nested action. The type of the +scoped variable is the type of the exception thrown. + + var + false + false + + + + + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + + + + Simple conditional tag, which evalutes its body if the + supplied condition is true and optionally exposes a Boolean + scripting variable representing the evaluation of this condition + + if + org.apache.taglibs.standard.tag.rt.core.IfTag + JSP + + +The test condition that determines whether or +not the body content should be processed. + + test + true + true + boolean + + + +Name of the exported scoped variable for the +resulting value of the test condition. The type +of the scoped variable is Boolean. + + var + false + false + + + +Scope for var. + + scope + false + false + + + + + + Retrieves an absolute or relative URL and exposes its contents + to either the page, a String in 'var', or a Reader in 'varReader'. + + import + org.apache.taglibs.standard.tag.rt.core.ImportTag + org.apache.taglibs.standard.tei.ImportTEI + JSP + + +The URL of the resource to import. + + url + true + true + + + +Name of the exported scoped variable for the +resource's content. The type of the scoped +variable is String. + + var + false + false + + + +Scope for var. + + scope + false + false + + + +Name of the exported scoped variable for the +resource's content. The type of the scoped +variable is Reader. + + varReader + false + false + + + +Name of the context when accessing a relative +URL resource that belongs to a foreign +context. + + context + false + true + + + +Character encoding of the content at the input +resource. + + charEncoding + false + true + + + + + + The basic iteration tag, accepting many different + collection types and supporting subsetting and other + functionality + + forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag + org.apache.taglibs.standard.tei.ForEachTEI + JSP + + +Collection of items to iterate over. + + items + false + true + java.lang.Object + + + +If items specified: +Iteration begins at the item located at the +specified index. First item of the collection has +index 0. +If items not specified: +Iteration begins with index set at the value +specified. + + begin + false + true + int + + + +If items specified: +Iteration ends at the item located at the +specified index (inclusive). +If items not specified: +Iteration ends when index reaches the value +specified. + + end + false + true + int + + + +Iteration will only process every step items of +the collection, starting with the first one. + + step + false + true + int + + + +Name of the exported scoped variable for the +current item of the iteration. This scoped +variable has nested visibility. Its type depends +on the object of the underlying collection. + + var + false + false + + + +Name of the exported scoped variable for the +status of the iteration. Object exported is of type +javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped variable has nested +visibility. + + varStatus + false + false + + + + + + Iterates over tokens, separated by the supplied delimeters + + forTokens + org.apache.taglibs.standard.tag.rt.core.ForTokensTag + JSP + + +String of tokens to iterate over. + + items + true + true + java.lang.String + + + +The set of delimiters (the characters that +separate the tokens in the string). + + delims + true + true + java.lang.String + + + +Iteration begins at the token located at the +specified index. First token has index 0. + + begin + false + true + int + + + +Iteration ends at the token located at the +specified index (inclusive). + + end + false + true + int + + + +Iteration will only process every step tokens +of the string, starting with the first one. + + step + false + true + int + + + +Name of the exported scoped variable for the +current item of the iteration. This scoped +variable has nested visibility. + + var + false + false + + + +Name of the exported scoped variable for the +status of the iteration. Object exported is of +type +javax.servlet.jsp.jstl.core.LoopTag +Status. This scoped variable has nested +visibility. + + varStatus + false + false + + + + + + Like <%= ... >, but for expressions. + + out + org.apache.taglibs.standard.tag.rt.core.OutTag + JSP + + +Expression to be evaluated. + + value + true + true + + + +Default value if the resulting value is null. + + default + false + true + + + +Determines whether characters <,>,&,'," in the +resulting string should be converted to their +corresponding character entity codes. Default value is +true. + + escapeXml + false + true + + + + + + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + + + + Adds a parameter to a containing 'import' tag's URL. + + param + org.apache.taglibs.standard.tag.rt.core.ParamTag + JSP + + +Name of the query string parameter. + + name + true + true + + + +Value of the parameter. + + value + false + true + + + + + + Redirects to a new URL. + + redirect + org.apache.taglibs.standard.tag.rt.core.RedirectTag + JSP + + +The URL of the resource to redirect to. + + url + false + true + + + +Name of the context when redirecting to a relative URL +resource that belongs to a foreign context. + + context + false + true + + + + + + Removes a scoped variable (from a particular scope, if specified). + + remove + org.apache.taglibs.standard.tag.common.core.RemoveTag + empty + + +Name of the scoped variable to be removed. + + var + true + false + + + +Scope for var. + + scope + false + false + + + + + + Sets the result of an expression evaluation in a 'scope' + + set + org.apache.taglibs.standard.tag.rt.core.SetTag + JSP + + +Name of the exported scoped variable to hold the value +specified in the action. The type of the scoped variable is +whatever type the value expression evaluates to. + + var + false + false + + + +Expression to be evaluated. + + value + false + true + + + +Target object whose property will be set. Must evaluate to +a JavaBeans object with setter property property, or to a +java.util.Map object. + + target + false + true + + + +Name of the property to be set in the target object. + + property + false + true + + + +Scope for var. + + scope + false + false + + + + + + Creates a URL with optional query parameters. + + url + org.apache.taglibs.standard.tag.rt.core.UrlTag + JSP + + +Name of the exported scoped variable for the +processed url. The type of the scoped variable is +String. + + var + false + false + + + +Scope for var. + + scope + false + false + + + +URL to be processed. + + value + false + true + + + +Name of the context when specifying a relative URL +resource that belongs to a foreign context. + + context + false + true + + + + + + Subtag of <choose> that includes its body if its + condition evalutes to 'true' + + when + org.apache.taglibs.standard.tag.rt.core.WhenTag + JSP + + +The test condition that determines whether or not the +body content should be processed. + + test + true + true + boolean + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0-rt.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0-rt.tld new file mode 100644 index 0000000..45d1545 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0-rt.tld @@ -0,0 +1,403 @@ + + + + 1.0 + 1.2 + fmt_rt + http://java.sun.com/jstl/fmt_rt + JSTL fmt RT + JSTL 1.0 i18n-capable formatting library + + + + org.apache.taglibs.standard.tlv.JstlFmtTLV + + + Provides core validation features for JSTL tags. + + + + + requestEncoding + org.apache.taglibs.standard.tag.rt.fmt.RequestEncodingTag + empty + + Sets the request character encoding + + + value + false + true + + + + + setLocale + org.apache.taglibs.standard.tag.rt.fmt.SetLocaleTag + empty + + Stores the given locale in the locale configuration variable + + + value + true + true + + + variant + false + true + + + scope + false + false + + + + + timeZone + org.apache.taglibs.standard.tag.rt.fmt.TimeZoneTag + JSP + + Specifies the time zone for any time formatting or parsing actions + nested in its body + + + value + true + true + + + + + setTimeZone + org.apache.taglibs.standard.tag.rt.fmt.SetTimeZoneTag + empty + + Stores the given time zone in the time zone configuration variable + + + value + true + true + + + var + false + false + + + scope + false + false + + + + + bundle + org.apache.taglibs.standard.tag.rt.fmt.BundleTag + JSP + + Loads a resource bundle to be used by its tag body + + + basename + true + true + + + prefix + false + true + + + + + setBundle + org.apache.taglibs.standard.tag.rt.fmt.SetBundleTag + empty + + Loads a resource bundle and stores it in the named scoped variable or + the bundle configuration variable + + + basename + true + true + + + var + false + false + + + scope + false + false + + + + + message + org.apache.taglibs.standard.tag.rt.fmt.MessageTag + JSP + + Maps key to localized message and performs parametric replacement + + + key + false + true + + + bundle + false + true + + + var + false + false + + + scope + false + false + + + + + param + org.apache.taglibs.standard.tag.rt.fmt.ParamTag + JSP + + Supplies an argument for parametric replacement to a containing + <message> tag + + + value + false + true + + + + + formatNumber + org.apache.taglibs.standard.tag.rt.fmt.FormatNumberTag + JSP + + Formats a numeric value as a number, currency, or percentage + + + value + false + true + + + type + false + true + + + pattern + false + true + + + currencyCode + false + true + + + currencySymbol + false + true + + + groupingUsed + false + true + + + maxIntegerDigits + false + true + + + minIntegerDigits + false + true + + + maxFractionDigits + false + true + + + minFractionDigits + false + true + + + var + false + false + + + scope + false + false + + + + + parseNumber + org.apache.taglibs.standard.tag.rt.fmt.ParseNumberTag + JSP + + Parses the string representation of a number, currency, or percentage + + + value + false + true + + + type + false + true + + + pattern + false + true + + + parseLocale + false + true + + + integerOnly + false + true + + + var + false + false + + + scope + false + false + + + + + formatDate + org.apache.taglibs.standard.tag.rt.fmt.FormatDateTag + empty + + Formats a date and/or time using the supplied styles and pattern + + + value + true + true + + + type + false + true + + + dateStyle + false + true + + + timeStyle + false + true + + + pattern + false + true + + + timeZone + false + true + + + var + false + false + + + scope + false + false + + + + + parseDate + org.apache.taglibs.standard.tag.rt.fmt.ParseDateTag + JSP + + Parses the string representation of a date and/or time + + + value + false + true + + + type + false + true + + + dateStyle + false + true + + + timeStyle + false + true + + + pattern + false + true + + + timeZone + false + true + + + parseLocale + false + true + + + var + false + false + + + scope + false + false + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0.tld new file mode 100644 index 0000000..20523ee --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0.tld @@ -0,0 +1,442 @@ + + + + 1.0 + 1.2 + fmt + http://java.sun.com/jstl/fmt + JSTL fmt + JSTL 1.0 i18n-capable formatting library + + + + org.apache.taglibs.standard.tlv.JstlFmtTLV + + + expressionAttributes + + requestEncoding:value + setLocale:value + setLocale:variant + timeZone:value + setTimeZone:value + bundle:basename + bundle:prefix + setBundle:basename + message:key + message:bundle + param:value + formatNumber:value + formatNumber:pattern + formatNumber:currencyCode + formatNumber:currencySymbol + formatNumber:groupingUsed + formatNumber:maxIntegerDigits + formatNumber:minIntegerDigits + formatNumber:maxFractionDigits + formatNumber:minFractionDigits + parseNumber:value + parseNumber:pattern + parseNumber:parseLocale + parseNumber:integerOnly + formatDate:value + formatDate:pattern + formatDate:timeZone + parseDate:value + parseDate:pattern + parseDate:timeZone + parseDate:parseLocale + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + requestEncoding + org.apache.taglibs.standard.tag.el.fmt.RequestEncodingTag + empty + + Sets the request character encoding + + + value + false + false + + + + + setLocale + org.apache.taglibs.standard.tag.el.fmt.SetLocaleTag + empty + + Stores the given locale in the locale configuration variable + + + value + true + false + + + variant + false + false + + + scope + false + false + + + + + timeZone + org.apache.taglibs.standard.tag.el.fmt.TimeZoneTag + JSP + + Specifies the time zone for any time formatting or parsing actions + nested in its body + + + value + true + false + + + + + setTimeZone + org.apache.taglibs.standard.tag.el.fmt.SetTimeZoneTag + empty + + Stores the given time zone in the time zone configuration variable + + + value + true + false + + + var + false + false + + + scope + false + false + + + + + bundle + org.apache.taglibs.standard.tag.el.fmt.BundleTag + JSP + + Loads a resource bundle to be used by its tag body + + + basename + true + false + + + prefix + false + false + + + + + setBundle + org.apache.taglibs.standard.tag.el.fmt.SetBundleTag + empty + + Loads a resource bundle and stores it in the named scoped variable or + the bundle configuration variable + + + basename + true + false + + + var + false + false + + + scope + false + false + + + + + message + org.apache.taglibs.standard.tag.el.fmt.MessageTag + JSP + + Maps key to localized message and performs parametric replacement + + + key + false + false + + + bundle + false + false + + + var + false + false + + + scope + false + false + + + + + param + org.apache.taglibs.standard.tag.el.fmt.ParamTag + JSP + + Supplies an argument for parametric replacement to a containing + <message> tag + + + value + false + false + + + + + formatNumber + org.apache.taglibs.standard.tag.el.fmt.FormatNumberTag + JSP + + Formats a numeric value as a number, currency, or percentage + + + value + false + false + + + type + false + false + + + pattern + false + false + + + currencyCode + false + false + + + currencySymbol + false + false + + + groupingUsed + false + false + + + maxIntegerDigits + false + false + + + minIntegerDigits + false + false + + + maxFractionDigits + false + false + + + minFractionDigits + false + false + + + var + false + false + + + scope + false + false + + + + + parseNumber + org.apache.taglibs.standard.tag.el.fmt.ParseNumberTag + JSP + + Parses the string representation of a number, currency, or percentage + + + value + false + false + + + type + false + false + + + pattern + false + false + + + parseLocale + false + false + + + integerOnly + false + false + + + var + false + false + + + scope + false + false + + + + + formatDate + org.apache.taglibs.standard.tag.el.fmt.FormatDateTag + empty + + Formats a date and/or time using the supplied styles and pattern + + + value + true + false + + + type + false + false + + + dateStyle + false + false + + + timeStyle + false + false + + + pattern + false + false + + + timeZone + false + false + + + var + false + false + + + scope + false + false + + + + + parseDate + org.apache.taglibs.standard.tag.el.fmt.ParseDateTag + JSP + + Parses the string representation of a date and/or time + + + value + false + false + + + type + false + false + + + dateStyle + false + false + + + timeStyle + false + false + + + pattern + false + false + + + timeZone + false + false + + + parseLocale + false + false + + + var + false + false + + + scope + false + false + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt.tld new file mode 100644 index 0000000..3b9a54a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt.tld @@ -0,0 +1,671 @@ + + + + + JSTL 1.1 i18n-capable formatting library + JSTL fmt + 1.1 + fmt + http://java.sun.com/jsp/jstl/fmt + + + + Provides core validation features for JSTL tags. + + + org.apache.taglibs.standard.tlv.JstlFmtTLV + + + + + + Sets the request character encoding + + requestEncoding + org.apache.taglibs.standard.tag.rt.fmt.RequestEncodingTag + empty + + +Name of character encoding to be applied when +decoding request parameters. + + value + false + true + + + + + + Stores the given locale in the locale configuration variable + + setLocale + org.apache.taglibs.standard.tag.rt.fmt.SetLocaleTag + empty + + +A String value is interpreted as the +printable representation of a locale, which +must contain a two-letter (lower-case) +language code (as defined by ISO-639), +and may contain a two-letter (upper-case) +country code (as defined by ISO-3166). +Language and country codes must be +separated by hyphen (-) or underscore +(_). + + value + true + true + + + +Vendor- or browser-specific variant. +See the java.util.Locale javadocs for +more information on variants. + + variant + false + true + + + +Scope of the locale configuration variable. + + scope + false + false + + + + + + Specifies the time zone for any time formatting or parsing actions + nested in its body + + timeZone + org.apache.taglibs.standard.tag.rt.fmt.TimeZoneTag + JSP + + +The time zone. A String value is interpreted as +a time zone ID. This may be one of the time zone +IDs supported by the Java platform (such as +"America/Los_Angeles") or a custom time zone +ID (such as "GMT-8"). See +java.util.TimeZone for more information on +supported time zone formats. + + value + true + true + + + + + + Stores the given time zone in the time zone configuration variable + + setTimeZone + org.apache.taglibs.standard.tag.rt.fmt.SetTimeZoneTag + empty + + +The time zone. A String value is interpreted as +a time zone ID. This may be one of the time zone +IDs supported by the Java platform (such as +"America/Los_Angeles") or a custom time zone +ID (such as "GMT-8"). See java.util.TimeZone for +more information on supported time zone +formats. + + value + true + true + + + +Name of the exported scoped variable which +stores the time zone of type +java.util.TimeZone. + + var + false + false + + + +Scope of var or the time zone configuration +variable. + + scope + false + false + + + + + + Loads a resource bundle to be used by its tag body + + bundle + org.apache.taglibs.standard.tag.rt.fmt.BundleTag + JSP + + +Resource bundle base name. This is the bundle's +fully-qualified resource name, which has the same +form as a fully-qualified class name, that is, it uses +"." as the package component separator and does not +have any file type (such as ".class" or ".properties") +suffix. + + basename + true + true + + + +Prefix to be prepended to the value of the message +key of any nested <fmt:message> action. + + prefix + false + true + + + + + + Loads a resource bundle and stores it in the named scoped variable or + the bundle configuration variable + + setBundle + org.apache.taglibs.standard.tag.rt.fmt.SetBundleTag + empty + + +Resource bundle base name. This is the bundle's +fully-qualified resource name, which has the same +form as a fully-qualified class name, that is, it uses +"." as the package component separator and does not +have any file type (such as ".class" or ".properties") +suffix. + + basename + true + true + + + +Name of the exported scoped variable which stores +the i18n localization context of type +javax.servlet.jsp.jstl.fmt.LocalizationC +ontext. + + var + false + false + + + +Scope of var or the localization context +configuration variable. + + scope + false + false + + + + + + Maps key to localized message and performs parametric replacement + + message + org.apache.taglibs.standard.tag.rt.fmt.MessageTag + JSP + + +Message key to be looked up. + + key + false + true + + + +Localization context in whose resource +bundle the message key is looked up. + + bundle + false + true + + + +Name of the exported scoped variable +which stores the localized message. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Supplies an argument for parametric replacement to a containing + <message> tag + + param + org.apache.taglibs.standard.tag.rt.fmt.ParamTag + JSP + + +Argument used for parametric replacement. + + value + false + true + + + + + + Formats a numeric value as a number, currency, or percentage + + formatNumber + org.apache.taglibs.standard.tag.rt.fmt.FormatNumberTag + JSP + + +Numeric value to be formatted. + + value + false + true + + + +Specifies whether the value is to be +formatted as number, currency, or +percentage. + + type + false + true + + + +Custom formatting pattern. + + pattern + false + true + + + +ISO 4217 currency code. Applied only +when formatting currencies (i.e. if type is +equal to "currency"); ignored otherwise. + + currencyCode + false + true + + + +Currency symbol. Applied only when +formatting currencies (i.e. if type is equal +to "currency"); ignored otherwise. + + currencySymbol + false + true + + + +Specifies whether the formatted output +will contain any grouping separators. + + groupingUsed + false + true + + + +Maximum number of digits in the integer +portion of the formatted output. + + maxIntegerDigits + false + true + + + +Minimum number of digits in the integer +portion of the formatted output. + + minIntegerDigits + false + true + + + +Maximum number of digits in the +fractional portion of the formatted output. + + maxFractionDigits + false + true + + + +Minimum number of digits in the +fractional portion of the formatted output. + + minFractionDigits + false + true + + + +Name of the exported scoped variable +which stores the formatted result as a +String. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Parses the string representation of a number, currency, or percentage + + parseNumber + org.apache.taglibs.standard.tag.rt.fmt.ParseNumberTag + JSP + + +String to be parsed. + + value + false + true + + + +Specifies whether the string in the value +attribute should be parsed as a number, +currency, or percentage. + + type + false + true + + + +Custom formatting pattern that determines +how the string in the value attribute is to be +parsed. + + pattern + false + true + + + +Locale whose default formatting pattern (for +numbers, currencies, or percentages, +respectively) is to be used during the parse +operation, or to which the pattern specified +via the pattern attribute (if present) is +applied. + + parseLocale + false + true + + + +Specifies whether just the integer portion of +the given value should be parsed. + + integerOnly + false + true + + + +Name of the exported scoped variable which +stores the parsed result (of type +java.lang.Number). + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Formats a date and/or time using the supplied styles and pattern + + formatDate + org.apache.taglibs.standard.tag.rt.fmt.FormatDateTag + empty + + +Date and/or time to be formatted. + + value + true + true + + + +Specifies whether the time, the date, or both +the time and date components of the given +date are to be formatted. + + type + false + true + + + +Predefined formatting style for dates. Follows +the semantics defined in class +java.text.DateFormat. Applied only +when formatting a date or both a date and +time (i.e. if type is missing or is equal to +"date" or "both"); ignored otherwise. + + dateStyle + false + true + + + +Predefined formatting style for times. Follows +the semantics defined in class +java.text.DateFormat. Applied only +when formatting a time or both a date and +time (i.e. if type is equal to "time" or "both"); +ignored otherwise. + + timeStyle + false + true + + + +Custom formatting style for dates and times. + + pattern + false + true + + + +Time zone in which to represent the formatted +time. + + timeZone + false + true + + + +Name of the exported scoped variable which +stores the formatted result as a String. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Parses the string representation of a date and/or time + + parseDate + org.apache.taglibs.standard.tag.rt.fmt.ParseDateTag + JSP + + +Date string to be parsed. + + value + false + true + + + +Specifies whether the date string in the +value attribute is supposed to contain a +time, a date, or both. + + type + false + true + + + +Predefined formatting style for days +which determines how the date +component of the date string is to be +parsed. Applied only when formatting a +date or both a date and time (i.e. if type +is missing or is equal to "date" or "both"); +ignored otherwise. + + dateStyle + false + true + + + +Predefined formatting styles for times +which determines how the time +component in the date string is to be +parsed. Applied only when formatting a +time or both a date and time (i.e. if type +is equal to "time" or "both"); ignored +otherwise. + + timeStyle + false + true + + + +Custom formatting pattern which +determines how the date string is to be +parsed. + + pattern + false + true + + + +Time zone in which to interpret any time +information in the date string. + + timeZone + false + true + + + +Locale whose predefined formatting styles +for dates and times are to be used during +the parse operation, or to which the +pattern specified via the pattern +attribute (if present) is applied. + + parseLocale + false + true + + + +Name of the exported scoped variable in +which the parsing result (of type +java.util.Date) is stored. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fn.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fn.tld new file mode 100644 index 0000000..12d4ca8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fn.tld @@ -0,0 +1,207 @@ + + + + + JSTL 1.1 functions library + JSTL functions + 1.1 + fn + http://java.sun.com/jsp/jstl/functions + + + + Tests if an input string contains the specified substring. + + contains + org.apache.taglibs.standard.functions.Functions + boolean contains(java.lang.String, java.lang.String) + + <c:if test="${fn:contains(name, searchString)}"> + + + + + + Tests if an input string contains the specified substring in a case insensitive way. + + containsIgnoreCase + org.apache.taglibs.standard.functions.Functions + boolean containsIgnoreCase(java.lang.String, java.lang.String) + + <c:if test="${fn:containsIgnoreCase(name, searchString)}"> + + + + + + Tests if an input string ends with the specified suffix. + + endsWith + org.apache.taglibs.standard.functions.Functions + boolean endsWith(java.lang.String, java.lang.String) + + <c:if test="${fn:endsWith(filename, ".txt")}"> + + + + + + Escapes characters that could be interpreted as XML markup. + + escapeXml + org.apache.taglibs.standard.functions.Functions + java.lang.String escapeXml(java.lang.String) + + ${fn:escapeXml(param:info)} + + + + + + Returns the index withing a string of the first occurrence of a specified substring. + + indexOf + org.apache.taglibs.standard.functions.Functions + int indexOf(java.lang.String, java.lang.String) + + ${fn:indexOf(name, "-")} + + + + + + Joins all elements of an array into a string. + + join + org.apache.taglibs.standard.functions.Functions + java.lang.String join(java.lang.String[], java.lang.String) + + ${fn:join(array, ";")} + + + + + + Returns the number of items in a collection, or the number of characters in a string. + + length + org.apache.taglibs.standard.functions.Functions + int length(java.lang.Object) + + You have ${fn:length(shoppingCart.products)} in your shopping cart. + + + + + + Returns a string resulting from replacing in an input string all occurrences + of a "before" string into an "after" substring. + + replace + org.apache.taglibs.standard.functions.Functions + java.lang.String replace(java.lang.String, java.lang.String, java.lang.String) + + ${fn:replace(text, "-", "•")} + + + + + + Splits a string into an array of substrings. + + split + org.apache.taglibs.standard.functions.Functions + java.lang.String[] split(java.lang.String, java.lang.String) + + ${fn:split(customerNames, ";")} + + + + + + Tests if an input string starts with the specified prefix. + + startsWith + org.apache.taglibs.standard.functions.Functions + boolean startsWith(java.lang.String, java.lang.String) + + <c:if test="${fn:startsWith(product.id, "100-")}"> + + + + + + Returns a subset of a string. + + substring + org.apache.taglibs.standard.functions.Functions + java.lang.String substring(java.lang.String, int, int) + + P.O. Box: ${fn:substring(zip, 6, -1)} + + + + + + Returns a subset of a string following a specific substring. + + substringAfter + org.apache.taglibs.standard.functions.Functions + java.lang.String substringAfter(java.lang.String, java.lang.String) + + P.O. Box: ${fn:substringAfter(zip, "-")} + + + + + + Returns a subset of a string before a specific substring. + + substringBefore + org.apache.taglibs.standard.functions.Functions + java.lang.String substringBefore(java.lang.String, java.lang.String) + + Zip (without P.O. Box): ${fn:substringBefore(zip, "-")} + + + + + + Converts all of the characters of a string to lower case. + + toLowerCase + org.apache.taglibs.standard.functions.Functions + java.lang.String toLowerCase(java.lang.String) + + Product name: ${fn.toLowerCase(product.name)} + + + + + + Converts all of the characters of a string to upper case. + + toUpperCase + org.apache.taglibs.standard.functions.Functions + java.lang.String toUpperCase(java.lang.String) + + Product name: ${fn.UpperCase(product.name)} + + + + + + Removes white spaces from both ends of a string. + + trim + org.apache.taglibs.standard.functions.Functions + java.lang.String trim(java.lang.String) + + Name: ${fn.trim(name)} + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/permittedTaglibs.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/permittedTaglibs.tld new file mode 100644 index 0000000..8c0c404 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/permittedTaglibs.tld @@ -0,0 +1,34 @@ + + + + + Restricts JSP pages to the JSTL tag libraries + + permittedTaglibs + 1.1 + permittedTaglibs + http://jakarta.apache.org/taglibs/standard/permittedTaglibs + + + + javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV + + + + Whitespace-separated list of taglib URIs to permit. This example + TLD for the Standard Taglib allows only JSTL 'el' taglibs to be + imported. + + permittedTaglibs + + http://java.sun.com/jsp/jstl/core + http://java.sun.com/jsp/jstl/fmt + http://java.sun.com/jsp/jstl/sql + http://java.sun.com/jsp/jstl/xml + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/scriptfree.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/scriptfree.tld new file mode 100644 index 0000000..62ceb43 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/scriptfree.tld @@ -0,0 +1,51 @@ + + + + + Validates JSP pages to prohibit use of scripting elements. + + 1.1 + scriptfree + http://jakarta.apache.org/taglibs/standard/scriptfree + + + + Validates prohibitions against scripting elements. + + + javax.servlet.jsp.jstl.tlv.ScriptFreeTLV + + + + Controls whether or not declarations are considered valid. + + allowDeclarations + false + + + + Controls whether or not scriptlets are considered valid. + + allowScriptlets + false + + + + Controls whether or not top-level expressions are considered valid. + + allowExpressions + false + + + + Controls whether or not expressions used to supply request-time + attribute values are considered valid. + + allowRTExpressions + false + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0-rt.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0-rt.tld new file mode 100644 index 0000000..c2fe525 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0-rt.tld @@ -0,0 +1,188 @@ + + + + 1.0 + 1.2 + sql_rt + http://java.sun.com/jstl/sql_rt + JSTL sql RT + JSTL 1.0 sql library + + + + org.apache.taglibs.standard.tlv.JstlSqlTLV + + + Provides core validation features for JSTL tags. + + + + + transaction + org.apache.taglibs.standard.tag.rt.sql.TransactionTag + JSP + + Provides nested database action elements with a shared Connection, + set up to execute all statements as one transaction. + + + dataSource + false + true + + + isolation + false + true + + + + + query + org.apache.taglibs.standard.tag.rt.sql.QueryTag + JSP + + Executes the SQL query defined in its body or through the + sql attribute. + + + var + true + false + + + scope + false + false + + + sql + false + true + + + dataSource + false + true + + + startRow + false + true + + + maxRows + false + true + + + + + update + org.apache.taglibs.standard.tag.rt.sql.UpdateTag + JSP + + Executes the SQL update defined in its body or through the + sql attribute. + + + var + false + false + + + scope + false + false + + + sql + false + true + + + dataSource + false + true + + + + + param + org.apache.taglibs.standard.tag.rt.sql.ParamTag + JSP + + Sets a parameter in an SQL statement to the specified value. + + + value + false + true + + + + + dateParam + org.apache.taglibs.standard.tag.rt.sql.DateParamTag + empty + + Sets a parameter in an SQL statement to the specified java.util.Date value. + + + value + true + true + + + type + false + true + + + + + setDataSource + org.apache.taglibs.standard.tag.rt.sql.SetDataSourceTag + empty + + Creates a simple DataSource suitable only for prototyping. + + + var + false + false + + + scope + false + false + + + dataSource + false + true + + + driver + false + true + + + url + false + true + + + user + false + true + + + password + false + true + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0.tld new file mode 100644 index 0000000..2f8a328 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0.tld @@ -0,0 +1,213 @@ + + + + 1.0 + 1.2 + sql + http://java.sun.com/jstl/sql + JSTL sql + JSTL 1.0 sql library + + + + org.apache.taglibs.standard.tlv.JstlSqlTLV + + + expressionAttributes + + transaction:dataSource + transaction:isolation + query:sql + query:dataSource + query:startRow + query:maxRows + update:sql + update:dataSource + param:value + dateParam:value + dateParam:type + setDataSource:dataSource + setDataSource:driver + setDataSource:url + setDataSource:user + setDataSource:password + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + transaction + org.apache.taglibs.standard.tag.el.sql.TransactionTag + JSP + + Provides nested database action elements with a shared Connection, + set up to execute all statements as one transaction. + + + dataSource + false + false + + + isolation + false + false + + + + + query + org.apache.taglibs.standard.tag.el.sql.QueryTag + JSP + + Executes the SQL query defined in its body or through the + sql attribute. + + + var + true + false + + + scope + false + false + + + sql + false + false + + + dataSource + false + false + + + startRow + false + false + + + maxRows + false + false + + + + + update + org.apache.taglibs.standard.tag.el.sql.UpdateTag + JSP + + Executes the SQL update defined in its body or through the + sql attribute. + + + var + false + false + + + scope + false + false + + + sql + false + false + + + dataSource + false + false + + + + + param + org.apache.taglibs.standard.tag.el.sql.ParamTag + JSP + + Sets a parameter in an SQL statement to the specified value. + + + value + false + false + + + + + dateParam + org.apache.taglibs.standard.tag.el.sql.DateParamTag + empty + + Sets a parameter in an SQL statement to the specified java.util.Date val +ue. + + + value + true + true + + + type + false + true + + + + + setDataSource + org.apache.taglibs.standard.tag.el.sql.SetDataSourceTag + empty + + Creates a simple DataSource suitable only for prototyping. + + + var + false + false + + + scope + false + false + + + dataSource + false + false + + + driver + false + false + + + url + false + false + + + user + false + false + + + password + false + false + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql.tld new file mode 100644 index 0000000..e53445b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql.tld @@ -0,0 +1,289 @@ + + + + + JSTL 1.1 sql library + JSTL sql + 1.1 + sql + http://java.sun.com/jsp/jstl/sql + + + + Provides core validation features for JSTL tags. + + + org.apache.taglibs.standard.tlv.JstlSqlTLV + + + + + + Provides nested database action elements with a shared Connection, + set up to execute all statements as one transaction. + + transaction + org.apache.taglibs.standard.tag.rt.sql.TransactionTag + JSP + + +DataSource associated with the database to access. A +String value represents a relative path to a JNDI +resource or the parameters for the JDBC +DriverManager facility. + + dataSource + false + true + + + +Transaction isolation level. If not specified, it is the +isolation level the DataSource has been configured +with. + + isolation + false + true + + + + + + Executes the SQL query defined in its body or through the + sql attribute. + + query + org.apache.taglibs.standard.tag.rt.sql.QueryTag + JSP + + +Name of the exported scoped variable for the +query result. The type of the scoped variable is +javax.servlet.jsp.jstl.sql. +Result (see Chapter 16 "Java APIs"). + + var + true + false + + + +Scope of var. + + scope + false + false + + + +SQL query statement. + + sql + false + true + + + +Data source associated with the database to +query. A String value represents a relative path +to a JNDI resource or the parameters for the +DriverManager class. + + dataSource + false + true + + + +The returned Result object includes the rows +starting at the specified index. The first row of +the original query result set is at index 0. If not +specified, rows are included starting from the +first row at index 0. + + startRow + false + true + + + +The maximum number of rows to be included in +the query result. If not specified, or set to -1, no +limit on the maximum number of rows is +enforced. + + maxRows + false + true + + + + + + Executes the SQL update defined in its body or through the + sql attribute. + + update + org.apache.taglibs.standard.tag.rt.sql.UpdateTag + JSP + + +Name of the exported scoped variable for the result +of the database update. The type of the scoped +variable is java.lang.Integer. + + var + false + false + + + +Scope of var. + + scope + false + false + + + +SQL update statement. + + sql + false + true + + + +Data source associated with the database to update. +A String value represents a relative path to a JNDI +resource or the parameters for the JDBC +DriverManager class. + + dataSource + false + true + + + + + + Sets a parameter in an SQL statement to the specified value. + + param + org.apache.taglibs.standard.tag.rt.sql.ParamTag + JSP + + +Parameter value. + + value + false + true + + + + + + Sets a parameter in an SQL statement to the specified java.util.Date value. + + dateParam + org.apache.taglibs.standard.tag.rt.sql.DateParamTag + empty + + +Parameter value for DATE, TIME, or +TIMESTAMP column in a database table. + + value + true + true + + + +One of "date", "time" or "timestamp". + + type + false + true + + + + + + Creates a simple DataSource suitable only for prototyping. + + setDataSource + org.apache.taglibs.standard.tag.rt.sql.SetDataSourceTag + empty + + +Name of the exported scoped variable +for the data source specified. Type can +be String or DataSource. + + var + false + false + + + +If var is specified, scope of the +exported variable. Otherwise, scope of +the data source configuration variable. + + scope + false + false + + + +Data source. If specified as a string, it +can either be a relative path to a JNDI +resource, or a JDBC parameters string +as defined in Section 10.1.1. + + dataSource + false + true + + + +JDBC parameter: driver class name. + + driver + false + true + + + +JDBC parameter: URL associated with +the database. + + url + false + true + + + +JDBC parameter: database user on +whose behalf the connection to the +database is being made. + + user + false + true + + + +JDBC parameter: user password + + password + false + true + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0-rt.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0-rt.tld new file mode 100644 index 0000000..e7062b7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0-rt.tld @@ -0,0 +1,256 @@ + + + + 1.0 + 1.2 + x_rt + http://java.sun.com/jstl/xml_rt + JSTL XML RT + JSTL 1.0 XML library + + + + org.apache.taglibs.standard.tlv.JstlXmlTLV + + + Provides validation features for JSTL XML tags. + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + out + org.apache.taglibs.standard.tag.rt.xml.ExprTag + empty + + Like <%= ... >, but for XPath expressions. + + + select + true + false + + + escapeXml + false + true + + + + + if + org.apache.taglibs.standard.tag.common.xml.IfTag + JSP + + XML conditional tag, which evalutes its body if the + supplied XPath expression evalutes to 'true' as a boolean + + + select + true + false + + + var + false + false + + + scope + false + false + + + + + forEach + org.apache.taglibs.standard.tag.common.xml.ForEachTag + JSP + + XML iteration tag. + + + var + false + false + + + select + true + false + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.rt.xml.ParamTag + JSP + + Adds a parameter to a containing 'transform' tag's Transformer + + + name + true + true + + + value + false + true + + + + + parse + org.apache.taglibs.standard.tag.rt.xml.ParseTag + org.apache.taglibs.standard.tei.XmlParseTEI + JSP + + Parses XML content from 'source' attribute or 'body' + + + var + false + false + + + varDom + false + false + + + scope + false + false + + + scopeDom + false + false + + + xml + false + true + + + systemId + false + true + + + filter + false + true + + + + + set + org.apache.taglibs.standard.tag.common.xml.SetTag + empty + + Saves the result of an XPath expression evaluation in a 'scope' + + + var + true + false + + + select + false + false + + + scope + false + false + + + + + transform + org.apache.taglibs.standard.tag.rt.xml.TransformTag + org.apache.taglibs.standard.tei.XmlTransformTEI + JSP + + Conducts a transformation given a source XML document + and an XSLT stylesheet + + + var + false + false + + + scope + false + false + + + result + false + true + + + xml + false + true + + + xmlSystemId + false + true + + + xslt + false + true + + + xsltSystemId + false + true + + + + + when + org.apache.taglibs.standard.tag.common.xml.WhenTag + JSP + + Subtag of <choose> that includes its body if its + expression evalutes to 'true' + + + select + true + false + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0.tld new file mode 100644 index 0000000..2237ccb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0.tld @@ -0,0 +1,273 @@ + + + + 1.0 + 1.2 + x + http://java.sun.com/jstl/xml + JSTL XML + JSTL 1.0 XML library + + + + org.apache.taglibs.standard.tlv.JstlXmlTLV + + + expressionAttributes + + out:escapeXml + parse:xml + parse:systemId + parse:filter + transform:xml + transform:xmlSystemId + transform:xslt + transform:xsltSystemId + transform:result + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + out + org.apache.taglibs.standard.tag.el.xml.ExprTag + empty + + Like <%= ... >, but for XPath expressions. + + + select + true + false + + + escapeXml + false + false + + + + + if + org.apache.taglibs.standard.tag.common.xml.IfTag + JSP + + XML conditional tag, which evalutes its body if the + supplied XPath expression evalutes to 'true' as a boolean + + + select + true + false + + + var + false + false + + + scope + false + false + + + + + forEach + org.apache.taglibs.standard.tag.common.xml.ForEachTag + JSP + + XML iteration tag. + + + var + false + false + + + select + true + false + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.el.xml.ParamTag + JSP + + Adds a parameter to a containing 'transform' tag's Transformer + + + name + true + false + + + value + false + false + + + + + parse + org.apache.taglibs.standard.tag.el.xml.ParseTag + org.apache.taglibs.standard.tei.XmlParseTEI + JSP + + Parses XML content from 'source' attribute or 'body' + + + var + false + false + + + varDom + false + false + + + scope + false + false + + + scopeDom + false + false + + + xml + false + false + + + systemId + false + false + + + filter + false + false + + + + + set + org.apache.taglibs.standard.tag.common.xml.SetTag + empty + + Saves the result of an XPath expression evaluation in a 'scope' + + + var + true + false + + + select + false + false + + + scope + false + false + + + + + transform + org.apache.taglibs.standard.tag.el.xml.TransformTag + org.apache.taglibs.standard.tei.XmlTransformTEI + JSP + + Conducts a transformation given a source XML document + and an XSLT stylesheet + + + var + false + false + + + scope + false + false + + + result + false + false + + + xml + false + false + + + xmlSystemId + false + false + + + xslt + false + false + + + xsltSystemId + false + false + + + + + when + org.apache.taglibs.standard.tag.common.xml.WhenTag + JSP + + Subtag of <choose> that includes its body if its + expression evalutes to 'true' + + + select + true + false + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x.tld new file mode 100644 index 0000000..e52ffe8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x.tld @@ -0,0 +1,448 @@ + + + + + JSTL 1.1 XML library + JSTL XML + 1.1 + x + http://java.sun.com/jsp/jstl/xml + + + + Provides validation features for JSTL XML tags. + + + org.apache.taglibs.standard.tlv.JstlXmlTLV + + + + + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + + + + Like <%= ... >, but for XPath expressions. + + out + org.apache.taglibs.standard.tag.rt.xml.ExprTag + empty + + +XPath expression to be evaluated. + + select + true + false + + + +Determines whether characters <,>,&,'," in the +resulting string should be converted to their +corresponding character entity codes. Default +value is true. + + escapeXml + false + true + + + + + + XML conditional tag, which evalutes its body if the + supplied XPath expression evalutes to 'true' as a boolean + + if + org.apache.taglibs.standard.tag.common.xml.IfTag + JSP + + +The test condition that tells whether or not the +body content should be processed. + + select + true + false + + + +Name of the exported scoped variable for the +resulting value of the test condition. The type +of the scoped variable is Boolean. + + var + false + false + + + +Scope for var. + + scope + false + false + + + + + + XML iteration tag. + + forEach + org.apache.taglibs.standard.tag.common.xml.ForEachTag + JSP + + +Name of the exported scoped variable for the +current item of the iteration. This scoped variable +has nested visibility. Its type depends on the +result of the XPath expression in the select +attribute. + + var + false + false + + + +XPath expression to be evaluated. + + select + true + false + + + +Iteration begins at the item located at the +specified index. First item of the collection has +index 0. + + begin + false + true + int + + + +Iteration ends at the item located at the specified +index (inclusive). + + end + false + true + int + + + +Iteration will only process every step items of +the collection, starting with the first one. + + step + false + true + int + + + +Name of the exported scoped variable for the +status of the iteration. Object exported is of type +javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped variable has nested visibility. + + varStatus + false + false + + + + + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + + + + Adds a parameter to a containing 'transform' tag's Transformer + + param + org.apache.taglibs.standard.tag.rt.xml.ParamTag + JSP + + +Name of the transformation parameter. + + name + true + true + + + +Value of the parameter. + + value + false + true + + + + + + Parses XML content from 'source' attribute or 'body' + + parse + org.apache.taglibs.standard.tag.rt.xml.ParseTag + org.apache.taglibs.standard.tei.XmlParseTEI + JSP + + +Name of the exported scoped variable for +the parsed XML document. The type of the +scoped variable is implementation +dependent. + + var + false + false + + + +Name of the exported scoped variable for +the parsed XML document. The type of the +scoped variable is +org.w3c.dom.Document. + + varDom + false + false + + + +Scope for var. + + scope + false + false + + + +Scope for varDom. + + scopeDom + false + false + + + +Deprecated. Use attribute 'doc' instead. + + xml + false + true + + + +Source XML document to be parsed. + + doc + false + true + + + +The system identifier (URI) for parsing the +XML document. + + systemId + false + true + + + +Filter to be applied to the source +document. + + filter + false + true + + + + + + Saves the result of an XPath expression evaluation in a 'scope' + + set + org.apache.taglibs.standard.tag.common.xml.SetTag + empty + + +Name of the exported scoped variable to hold +the value specified in the action. The type of the +scoped variable is whatever type the select +expression evaluates to. + + var + true + false + + + +XPath expression to be evaluated. + + select + false + false + + + +Scope for var. + + scope + false + false + + + + + + Conducts a transformation given a source XML document + and an XSLT stylesheet + + transform + org.apache.taglibs.standard.tag.rt.xml.TransformTag + org.apache.taglibs.standard.tei.XmlTransformTEI + JSP + + +Name of the exported +scoped variable for the +transformed XML +document. The type of the +scoped variable is +org.w3c.dom.Document. + + var + false + false + + + +Scope for var. + + scope + false + false + + + +Result +Object that captures or +processes the transformation +result. + + result + false + true + + + +Deprecated. Use attribute +'doc' instead. + + xml + false + true + + + +Source XML document to be +transformed. (If exported by +<x:set>, it must correspond +to a well-formed XML +document, not a partial +document.) + + doc + false + true + + + +Deprecated. Use attribute +'docSystemId' instead. + + xmlSystemId + false + true + + + +The system identifier (URI) +for parsing the XML +document. + + docSystemId + false + true + + + +javax.xml.transform.Source +Transformation stylesheet as +a String, Reader, or +Source object. + + xslt + false + true + + + +The system identifier (URI) +for parsing the XSLT +stylesheet. + + xsltSystemId + false + true + + + + + + Subtag of <choose> that includes its body if its + expression evalutes to 'true' + + when + org.apache.taglibs.standard.tag.common.xml.WhenTag + JSP + + +The test condition that tells whether or +not the body content should be +processed + + select + true + false + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jstl.jar b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jstl.jar new file mode 100644 index 0000000..a02abec Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/jstl.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/ojdbc14.jar b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/ojdbc14.jar new file mode 100644 index 0000000..2a33709 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/ojdbc14.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/standard.jar b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/standard.jar new file mode 100644 index 0000000..bc528ac Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/lib/standard.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/tld/librairie.tld b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/tld/librairie.tld new file mode 100644 index 0000000..548f131 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/tld/librairie.tld @@ -0,0 +1,14 @@ + + + +Description de ma libraire de balises simples. +1.0 +LibrairieDeBase +/LibrairieBalise + + Affichage du nom et mot de passe de l'utilisateur + afficheutilisateur + balise.afficheutilisateur + empty + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/web.xml b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/web.xml new file mode 100644 index 0000000..7b72d8f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/WEB-INF/web.xml @@ -0,0 +1,69 @@ + + + + + + Bienvenue sur I comme Herse + Boutique de vente par correspondance + + + + + boutique + ServletController + Controleur de servlets + Ma premiere servlet + + + + boutique + /connexion + + + + boutique + /articles + + + + + Toutes les pages + *.jsp + UTF-8 + /includes/entete.jsp + /includes/enqueue.jsp + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/includes/enqueue.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT/includes/enqueue.jsp new file mode 100644 index 0000000..fb4d749 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/includes/enqueue.jsp @@ -0,0 +1,6 @@ + + +

Propulsé par J2EE sur Tomcat5, écrit à l'aide de VIM

+ + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/includes/entete.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT/includes/entete.jsp new file mode 100644 index 0000000..11ff21c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/includes/entete.jsp @@ -0,0 +1,30 @@ + + + +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + I comme Herse + + + +
+ +

I, comme Herse

+ + + +
diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/index.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT/index.jsp new file mode 100644 index 0000000..7210e84 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/index.jsp @@ -0,0 +1 @@ +

Ceci est du contenu

diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/public/css/peinture.css b/P51/apache-tomcat-6.0.14/webapps/ROOT/public/css/peinture.css new file mode 100644 index 0000000..45b68ed --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/public/css/peinture.css @@ -0,0 +1,116 @@ +body, html { + width: 100%; + height: 100%; + margin: 0; + padding: 0; +} + +div#contenu_principal { + width: 100%; + height: 100%; + margin: 0; + padding: 0; + background-color: black; + color: orange; +} + +div#contenu_principal div#tete { + width: 100%; + height: 70px; + margin: 0; + position: absolute; + top: 0; + left: 0; + background-color: #00bb00; + color: white; + text-align: center; +} + +div#contenu_principal div#tete h1 { + margin: 0; + position: absolute; + left: 22%; + top: 22%; + color: lightgreen; +} + +div#contenu_principal div#tete h1:after { + display: block; + margin-top: -1.15em; + margin-left: -0.1em; + color: green; + content: attr(title); +} + +div#contenu_principal div#menu { + position: absolute; + width: 100%; + height: 25px; + margin: 0; + padding: 0; + top: 70px; + left: 0; + background-color: lightblue; +} + +div#contenu_principal div#menu ul#menu_principal +{ + height: 25px ; + margin: 0 ; + padding: 0 ; + background-color: #009933; + list-style-type: none ; +} + +div#contenu_principal div#menu ul#menu_principal li +{ + float: left ; + text-align: center ; +} + +div#contenu_principal div#menu ul#menu_principal li a +{ + width: 125px ; + line-height: 25px ; + font-size: 1.2em ; + font-weight: bold ; + letter-spacing: 2px ; + color: #fff ; + display: block ; + text-decoration: none ; + border-right: 2px solid #8BB18B ; +} + +div#contenu_principal div#menu ul#menu_principal li a:hover +{ + color: #AFCAAF; + background-color: #ceb; +} + +div#contenu_principal div#contenu_secondaire { + width: 100%; + height: auto; + margin: 0; + padding: 0; + position: absolute; + top: 95px; + right: 0; + color: green; + overflow: auto; +} + +div#contenu_principal div#pied { + width: auto; + height: 15px; + margin: -14px 0 0 0; + padding-right: 3px; + position: absolute; + top: 70px; + right: 0; + color: green; +} + +div#contenu_principal div#pied p { + margin: 0; + font-size: 13px; +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/test.agi b/P51/apache-tomcat-6.0.14/webapps/ROOT/test.agi new file mode 100644 index 0000000..a1dc69b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/test.agi @@ -0,0 +1 @@ +Bah voilà quoi diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/contenuPanier.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/contenuPanier.jsp new file mode 100644 index 0000000..192da55 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/contenuPanier.jsp @@ -0,0 +1,69 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + Contenu du Panier + + + +

Contenu du Panier

+

+ + + + + + + + + + + + + + + + + + + + +
DescriptionComplmntPanier
+ + + + + + + + + + + + + + + + + + +
Référence : ${artRef.ref}
Marque : ${artRef.marque}
Modèle : ${artRef.modele}
Description : ${artRef.description}
Prix : ${artRef.prix}
+
+ Quantit : ${artRef.quantite} + + ajouter au panier +
+ +
+ + Continuez vos achats + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/listeArticles.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/listeArticles.jsp new file mode 100644 index 0000000..d9e4398 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/listeArticles.jsp @@ -0,0 +1,58 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> + + + + + + + + Contenu du Panier + + + +

Liste des articles

+

+ + + + + + + + + + + + + + + +
DescriptionComplment
+ + + + + + + + + + + + + + + + + + +
Référence : ${artRef.ref}
Marque : ${artRef.marque}
Modèle : ${artRef.modele}
Description : ${artRef.description}
Prix : ${artRef.prix}
+
+ infos +
+ + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/loginForm.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/loginForm.jsp new file mode 100644 index 0000000..e9b3e68 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/loginForm.jsp @@ -0,0 +1,12 @@ +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + +

Authentification

+

+ + + + "/>
+ + "/>
+ + diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/panierVide.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/panierVide.jsp new file mode 100644 index 0000000..b043b41 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/panierVide.jsp @@ -0,0 +1,20 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> + + + + + + + + Panier + + + +

Panier

+

panier vide

+ Continuez vos achats + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/salut.jsp b/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/salut.jsp new file mode 100644 index 0000000..c65ab69 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ROOT/vues/salut.jsp @@ -0,0 +1,4 @@ +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="balise" uri="/WEB-INF/tld/librairie.tld" %> + + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.classpath b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.classpath new file mode 100644 index 0000000..b8a61a5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.classpath @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.cvsignore b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.cvsignore new file mode 100644 index 0000000..a340c10 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.cvsignore @@ -0,0 +1 @@ +work \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.project b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.project new file mode 100644 index 0000000..af84691 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.project @@ -0,0 +1,18 @@ + + + RandoOnLine + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + com.sysdeo.eclipse.tomcat.tomcatnature + + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.tomcatplugin b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.tomcatplugin new file mode 100644 index 0000000..3015aa2 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/.tomcatplugin @@ -0,0 +1,11 @@ + + + / + false + true + false + true + + + /RandoOnLine + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/.cvsignore b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/.cvsignore new file mode 100644 index 0000000..d366d2e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/.cvsignore @@ -0,0 +1 @@ +classes \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Article.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Article.class new file mode 100644 index 0000000..e3e5ec4 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Article.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Categorie.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Categorie.class new file mode 100644 index 0000000..4ff8d51 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Categorie.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Client.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Client.class new file mode 100644 index 0000000..c7b3549 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Client.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Panier.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Panier.class new file mode 100644 index 0000000..a1045a5 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/articles/Panier.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/Erreur.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/Erreur.class new file mode 100644 index 0000000..d738652 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/Erreur.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/GestionConnexion.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/GestionConnexion.class new file mode 100644 index 0000000..0f28e46 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/GestionConnexion.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/GestionnaireArticles.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/GestionnaireArticles.class new file mode 100644 index 0000000..8664fbf Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/GestionnaireArticles.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/GestionnairePanier.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/GestionnairePanier.class new file mode 100644 index 0000000..7190010 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/GestionnairePanier.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/OperationBDD.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/OperationBDD.class new file mode 100644 index 0000000..b23efd2 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/OperationBDD.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/ParametresConnexion.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/ParametresConnexion.class new file mode 100644 index 0000000..61454e3 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/gestionnaires/ParametresConnexion.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/servlets/ArticlesServlet.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/servlets/ArticlesServlet.class new file mode 100644 index 0000000..a9ab7ca Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/servlets/ArticlesServlet.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/servlets/ClientServlet.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/servlets/ClientServlet.class new file mode 100644 index 0000000..754f075 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/servlets/ClientServlet.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/servlets/PanierServlet.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/servlets/PanierServlet.class new file mode 100644 index 0000000..a1b7905 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/classes/com/servlets/PanierServlet.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/lib/jstl.jar b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/lib/jstl.jar new file mode 100644 index 0000000..6b41358 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/lib/jstl.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/lib/mysql-connector-java-5.0.8-bin.jar b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/lib/mysql-connector-java-5.0.8-bin.jar new file mode 100644 index 0000000..0170c3e Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/lib/mysql-connector-java-5.0.8-bin.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/lib/standard.jar b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/lib/standard.jar new file mode 100644 index 0000000..258daae Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/lib/standard.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Article.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Article.java new file mode 100644 index 0000000..7038547 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Article.java @@ -0,0 +1,90 @@ +/* + * article.java + * + * Created on 18 janvier 2008, 14:26 + */ + +package com.articles; + +/** + * Article de la base de donne, avec la quantit en plus + * @author 3fvorillion + */ +public class Article +{ + private String ref = ""; + private String categ = ""; + private String marque = ""; + private String modele = ""; + private double prix = 0; + private String photo = ""; + private String description = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + public String getCateg() + { + return this.categ; + } + public String getMarque() + { + return this.marque; + } + public String getModele() + { + return this.modele; + } + public double getPrix() + { + return this.prix; + } + public String getPhoto() + { + return this.photo; + } + public String getDescription() + { + return this.description; + } + + public void setRef(String ref) + { + this.ref = ref; + } + public void setCateg(String categ) + { + this.categ = categ; + } + public void setMarque(String marque) + { + this.marque = marque; + } + public void setModele(String modele) + { + this.modele = modele; + } + public void setPrix(double prix) + { + this.prix = prix; + } + public void setPhoto(String photo) + { + this.photo = photo; + } + public void setDescription(String description) + { + this.description = description; + } + + public int getQuantite() + { + return this.quantite; + } + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Categorie.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Categorie.java new file mode 100644 index 0000000..622ac2b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Categorie.java @@ -0,0 +1,41 @@ +package com.articles; + +/** + * Catgorie de la base de donne + * @author 3fvorillion + */ +public class Categorie +{ + private int id = 0; + private String cat = ""; + + public Categorie() + { + ; + } + public Categorie(int id, String cat) + { + this.id = id; + this.cat = cat; + } + + public int getId() + { + return this.id; + } + + public void setId(int id) + { + this.id = id; + } + + public String getCat() + { + return this.cat; + } + + public void setCat(String cat) + { + this.cat = cat; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Client.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Client.java new file mode 100644 index 0000000..b5c3135 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Client.java @@ -0,0 +1,64 @@ +package com.articles; + +/** + * Client qui achte des articles + * @author 3fvorillion + */ +public class Client +{ + private String nom = ""; + private String prenom = ""; + private String adresse = ""; + private String codePost = ""; + private String ville = ""; + + public String getNom() + { + return this.nom; + } + + public void setNom(String nom) + { + this.nom = nom; + } + + public String getPrenom() + { + return this.prenom; + } + + public void setPrenom(String prenom) + { + this.prenom = prenom; + } + + public String getAdresse() + { + return this.adresse; + } + + public void setAdresse(String adresse) + { + this.adresse = adresse; + } + + public String getCodePost() + { + return this.codePost; + } + + public void setCodePost(String codePost) + { + this.codePost = codePost; + } + + public String getVille() + { + return this.ville; + } + + public void setVille(String ville) + { + this.ville = ville; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Panier.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Panier.java new file mode 100644 index 0000000..47ca54a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/articles/Panier.java @@ -0,0 +1,29 @@ +package com.articles; + +/** + * Panier du client. Il contient des articles. + * @author 3fvorillion + */ +public class Panier +{ + private double prixTotal = 0; + + public Panier() + { + ; + } + public Panier(double prixTotal) + { + this.prixTotal = prixTotal; + } + + public double getPrixTotal() + { + return this.prixTotal; + } + + public void setPrixTotal(double prixTotal) + { + this.prixTotal = prixTotal; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/gestionnaires/Erreur.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/gestionnaires/Erreur.java new file mode 100644 index 0000000..65ff3ce --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/gestionnaires/Erreur.java @@ -0,0 +1,27 @@ +package com.gestionnaires; + +/** + * Beans permettant d'afficher les erreurs dans la page erreurs.jsp + * @author 3fvorillion + */ +public class Erreur +{ + private String message = ""; + + public Erreur() + {} + public Erreur(String message) + { + this.message = message; + } + + public String getMessage() + { + return this.message; + } + + public void setMessage(String message) + { + this.message = message; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/gestionnaires/GestionConnexion.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/gestionnaires/GestionConnexion.java new file mode 100644 index 0000000..6754067 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/gestionnaires/GestionConnexion.java @@ -0,0 +1,522 @@ +package com.gestionnaires; + +/* + * Remarque : Type de caractres utiliss dans ce fichier : UTF-8 + */ + +//JDBC +import java.sql.*; +import java.util.Vector; + + + +/** + * Oprations possibles avec GestionConnexion. + * @author 3fvorillion + */ +enum OperationBDD +{ + /** + * opération de sélection . + */ + OP_BDD_SELECTION, + /** + * opération de création de table. + */ + OP_BDD_CREER_TABLE, + /** + * opération de suppression de table. + */ + OP_BDD_SUPPR_TABLE +} + +/** + * Gestionnaire d'une connexion à une base de données. + * @author 3fvorillion + */ +public class GestionConnexion +{ + /* + * VARIABLES + */ + // paramtres + private ParametresConnexion paramsConn; + + // connexion + private Connection connection = null; + private Statement statement = null; + + // requte SQL + private String requeteSQL = ""; + private ResultSet resultSet = null; + + // erreurs - anomalies + private Vector vs_erreurs = null; + private Vector vs_anomalies = null; + + + /* + * CONSTRUCTEUR + */ + /** + * Constructeur par défaut.
+ * Instancie le gestionnaire d'une connexion à une base de données. + * @exception ClassNotFoundException La classe n'a pas été trouvée + */ + public GestionConnexion() + throws ClassNotFoundException, Exception + { + /* + * Init les autres variables + */ + this.statement = null; + this.resultSet = null; + this.requeteSQL = ""; + + this.paramsConn = new ParametresConnexion(); + + //init la gestion des erreurs - anomalies + this.vs_erreurs = new Vector(); + this.vs_anomalies = new Vector(); + + try + { + // Rcupration du driver + Class.forName(ParametresConnexion.CLASSE).newInstance(); + } + catch (ClassNotFoundException ex) + { + //remonte l'exception + throw new ClassNotFoundException("La classe '"+ParametresConnexion.CLASSE+"' n'a pas t trouve."); + } + catch (Exception ex) + { + //remonte l'exception + throw ex; + } + } + + + /* + * METHODES D'INSTANCES + */ + /** + * Ouvre une connexion avec les paramètres spécifiés. + * @param params Objet contenant les paramètres à appliquer pour la connexion. + */ + public void ouvrir(ParametresConnexion params) + { + //Vrifie le paramtre + if (params == null) + throw new NullPointerException(); + + //Copie les paramtres + this.paramsConn.CopierDepuis(params); + + //Appelle la mthode sans paramtres + this.ouvrir(); + } + /** + * Ouvre une connexion avec les paramètres déjà chargés.
+ * Note : si aucun paramètre n'a été chargé, utilise les paramètres de connexion par défaut (cf classe ParametresConnexion). + */ + public void ouvrir() + { + try + { + // ferme la conexion prcdente + this.fermerConnexion(); + + // init la nouvelle connexion + this.connection = DriverManager.getConnection(this.paramsConn.Url, + this.paramsConn.Utilisateur, this.paramsConn.Pwd); + + this.traiterWarning(this.connection.getWarnings()); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerConnexion(); + } + } + + /** + * Donne l'état de la connexion en cours. + * @return true si la connexion est ouverte; false si fermée. + */ + public boolean estOuverte() + { + boolean bOuverte = false; + + try + { + if (this.connection != null) + bOuverte = !this.connection.isClosed(); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return bOuverte; + } + + /** + * Ferme les ressources utilisées par la requête:
+ * - ferme le ResultSet et le Statement;
+ * - vide le contenu de la requête. + */ + public void fermerRessourcesRequete() + { + try + { + // Ferme le resultSet + if (this.resultSet != null) + { + this.resultSet.close(); + this.resultSet = null; + } + + // Ferme le statement + if (this.statement != null) + { + this.statement.close(); + this.statement = null; + } + + // Vide la requte + this.requeteSQL = ""; + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + /** + * Ferme la connexion et libère les autres ressources qui ont pu être utilisées. + */ + public void fermerConnexion() + { + try + { + // Ferme le statement + this.fermerRessourcesRequete(); + + // Ferme la connexion + if (this.connection != null) + { + this.connection.close(); + this.connection = null; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + /** + * Lance la requête SQL de sélection spécifiée. + * @param query Requête SQL de type SELECT à exécuter. + * @return true si la requête a réussie; false sinon. + */ + public boolean lancerRequeteSelection(String query) + { + boolean res = true; + + try + { + // verifie la connexion + if (this.connection != null) + { + // libre les ressources de la prcdente requte + this.fermerRessourcesRequete(); + + // prepare la requete + this.statement = this.connection.createStatement(); + this.traiterWarning(this.statement.getWarnings()); + + // emet la requete + this.resultSet = this.statement.executeQuery(query); + this.traiterWarning(this.resultSet.getWarnings()); + + // si on est arriv jusqu'ici, c'est qu'il n'y a pas eu de leve d'exception + // =>actualise la requte + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + // libre les ressources utilises + this.fermerRessourcesRequete(); + + //annonce l'chec de la requte SQL + res = false; + } + + return res; + } + + /** + * Lance la requête SQL spécifiée qui modifie la base de donnée. + * @param query Requête SQL de type DELETE, UPDATE, INSERT à exécuter. + * @return nombre de lignes modifiées pour requête DDL;
+ * 0 pour requête ne donnant aucun reacute;sultat;
+ * -1 si une erreur est survenue lors de l'excution de la requte; + */ + public int lancerRequeteModifBDD(String query) + { + int res = 0; + + try + { + // verifie la connexion + if (this.connection != null) + { + // libre les ressources de la prcdente requte + this.fermerRessourcesRequete(); + + // prepare la requete + this.statement = this.connection.createStatement(); + + // emet la requete + res = this.statement.executeUpdate(query); + this.traiterWarning(this.statement.getWarnings()); + + // si on est arriv jusqu'ici, c'est qu'il n'y a pas eu de leve d'exception + // =>actualise la requte + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + // libre les ressources utilises + this.fermerRessourcesRequete(); + + //annonce l'chec de la requte SQL + res = -1; + } + + return res; + } + + /** + * Retourne une copie de l'objet contenant les paramètres de la connexion courante. + * @return Copie de l'objet contenant les paramètres de connexion. + */ + public ParametresConnexion getParametresConnexion() + { + //Retourne une copie de l'objet contenant les paramtres de connexion + return new ParametresConnexion(this.paramsConn); + } + + /** + * Retourne la requête SQL qui a été lancée avec succès. + * @return Requête SQL qui a été exécutée.
Si pas de résultats disponibles, renvoie une chane vide. + */ + public String getRequeteSQL() + { + return this.requeteSQL; + } + + /** + * Donne les infos sur la connexion courante. + * @return Liste des infos de la connexion en cours. + */ + public Vector getInfosConnexion() + { + Vector vs_infosConn = new Vector(); + DatabaseMetaData dmd; + + try + { + // Vrifie que la connexion soit ouverte + if (this.estOuverte()) + { + // Etat de la connexion + vs_infosConn.add("Etat de la connexion : ouverte"); + vs_infosConn.add("------------------------------"); + + // Obtient les meta-datas de la base + dmd = this.connection.getMetaData(); + + vs_infosConn.add("Connexion : " + dmd.getURL()); + vs_infosConn.add("Driver : " + dmd.getDriverName()); + vs_infosConn.add("Version : " + dmd.getDriverVersion()); + } + else + { + // Etat de la connexion + vs_infosConn.add("Etat de la connexion : ferme"); + vs_infosConn.add("------------------------------"); + + vs_infosConn.add("Connexion : " + this.paramsConn.Url);//contient le Serveur, le Port et la Base + vs_infosConn.add("Utilisateur : " + this.paramsConn.Utilisateur); + vs_infosConn.add("Mot de passe : " + this.paramsConn.Pwd.length() + " caractre(s)"); + } + } + catch (SQLException ex) + { + // Erreur lors de l'obtention du nom des colonnes + this.traiterSQLException(ex); + } + + return vs_infosConn; + } + + /** + * Récupère la liste des noms des colonnes issues du résultat de la requête SQL précédemment lancée. + * @return Liste des noms des colonnes issues du résultat de la requête SQL. + */ + public Vector getNomsColonnes() + { + Vector vs_cols = new Vector(); + ResultSetMetaData rsmd; + + try + { + // Vrifie si la requte a djà t lance + if (this.resultSet != null) + { + rsmd = this.resultSet.getMetaData(); // obtient les meta-datas de la requte + int nbrCols = rsmd.getColumnCount(); + + for (int idCol = 1; idCol <= nbrCols; idCol++) + if (rsmd.isSearchable(idCol)) + vs_cols.add(rsmd.getColumnName(idCol)); + } + else if (this.statement == null) + // anomalie + this.vs_anomalies.add("Vous n'avez pas encore lanc la requte!!"); + } + catch (SQLException ex) + { + // Erreur lors de l'obtention du nom des colonnes + this.traiterSQLException(ex); + } + + return vs_cols; + } + + /** + * Récupère le résultat de la requête SQL précédemment lancée dans un tableau d'objets.
+ * Note : Ce tableau est composé d'une liste de lignes.
Ces lignes sont elles-mêmes composées d'une liste d'objets. + * @return Tableau d'objets correspondant au résultat de la requête SQL. + */ + public Vector> getDataVector() + { + Vector> v_datas = new Vector>(); + ResultSetMetaData rsmd; + + try + { + rsmd = this.resultSet.getMetaData(); + // Vrifie qu'il y ai un rsultat et place le curseur au dbut + if (rsmd.getColumnCount() > 0) + { + while (this.resultSet.next()) + { + Vector vo_ligne = new Vector(); + // cr la ligne + for (int idCol = 1; idCol <= rsmd.getColumnCount(); idCol++) + vo_ligne.add(this.resultSet.getObject(idCol)); + // ajoute la ligne au vecteur principal + v_datas.add(vo_ligne); + } + } + + if (v_datas.isEmpty()) // anomalie + this.vs_anomalies.add("Aucune donne trouve!!"); + } + catch (SQLException ex) + { + // Probleme lors de l'obtention des donnees + this.traiterSQLException(ex); + } + + return v_datas; + } + + /* + * GESTION DES ERREURS - ANOMALIES + */ + /** + * Trace les erreurs SQL qui ont été levées par une exception donnée. + * @param ex SQLException à tracer. + */ + public void traiterSQLException(SQLException ex) + { + String str_ex; + + str_ex = "********* SQLException *********\n"; + while (ex != null) + { + str_ex = "SQLState : " + ex.getSQLState() + "\n"; + str_ex += "Message : " + ex.getMessage() + "\n"; + str_ex += "------------------------------\n"; + this.vs_erreurs.add(str_ex); + + ex = ex.getNextException(); + } + } + + /** + * Trace les anomalies SQL données. + * @param warn Anomalies SQL à tracer. + */ + public void traiterWarning(SQLWarning warn) + { + String str_an; + + str_an = "********* SQLWarning *********\n"; + while (warn != null) + { + str_an = "SQLState : " + warn.getSQLState() + "\n"; + str_an += "Message : " + warn.getMessage() + "\n"; + str_an += "------------------------------\n"; + this.vs_anomalies.add(str_an); + + warn = warn.getNextWarning(); + } + } + + /** + * Récupère la liste des erreurs tracées. + * @return Liste des erreurs tracées.
Note : retourne une copie du vecteur interne pour empêcher la modification directe de celui-ci. + */ + public Vector getErreurs() + { + return new Vector(this.vs_erreurs); + } + + /** + * Récupère la liste des anomalies tracées. + * @return Liste des anomalies tracées.
Note : retourne une copie du vecteur interne pour empêcher la modification directe de celui-ci. + */ + public Vector getAnomalies() + { + return new Vector(this.vs_anomalies); + } + + /** + * Efface la liste des erreurs tracées. + */ + public void effaceErreurs() + { + this.vs_erreurs.clear(); + } + + /** + * Efface la liste des anomalies tracées. + */ + public void effaceAnomalies() + { + this.vs_anomalies.clear(); + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/gestionnaires/GestionnaireArticles.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/gestionnaires/GestionnaireArticles.java new file mode 100644 index 0000000..926127b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/gestionnaires/GestionnaireArticles.java @@ -0,0 +1,208 @@ +package com.gestionnaires; + +import java.util.Vector; +import com.articles.Article; +import com.articles.Categorie; + +/** + * Gestionnaire des articles (et des catgories) :
+ * Rcupre les articles et les catgories depuis la BDD, selon des critres ou non.
+ * Note : il ne doit y avoir qu'une instance de cette classe : elle utilise le gestionnaire de connexion la BDD. + * @author 3fvorillion + */ +public class GestionnaireArticles +{ + private static GestionnaireArticles instanceUnique = null; + private GestionConnexion gestConn = null; + private ParametresConnexion paramsConn = null; + + /** + * Instancie le gestionnaire d'articles.
+ * - instancie le gestionnaire de connexion la BDD. + * @throws Exception + */ + public GestionnaireArticles() + throws Exception + { + // + // Cration de l'objet connexion + // + this.gestConn = new GestionConnexion(); + + this.paramsConn = new ParametresConnexion(); + } + + /*** + * Donne la liste des articles correspondants aux conditions donnees. + * @param sConditions Conditions de selection des articles.
Peut tre null ou vide.
Sans la clause 'where'. + * @return Liste des articles correspondants aux critres donns. + */ + public Vector
donnerListeArticles(String sConditions) + throws Exception + { + Vector> vResReq = null; + Vector vLstCols = null; + Vector
vLstArts = null; + Article tmpArt = null; + String sReqSQL = ""; + + // + // Se connecte la base + // + // Ouvre la connexion si pas dj fait + if (!this.gestConn.estOuverte()) + this.gestConn.ouvrir(this.paramsConn); + + // Si pas ouverte, sort + if ( !this.gestConn.estOuverte() ) + throw new Exception("La connexion avec la base de donnes n'a pas pu tre tablie."); + + // + // Crer la requte + // + sReqSQL = "SELECT * FROM ARTICLES_RANDO"; + if (sConditions != null) + if (!sConditions.equals("")) + sReqSQL += " WHERE " + sConditions; + + // + // Lance la requte et rcupre les donnes + // + if (this.gestConn.lancerRequeteSelection(sReqSQL)) + { + vResReq = this.gestConn.getDataVector(); + vLstCols = this.gestConn.getNomsColonnes(); + vLstArts = new Vector
(vResReq.size()); + + for (int iArt=0; iArtPeut tre null ou vide.
Sans la clause 'where'. + * @return Liste des categories correspondants aux critres donns. + */ + public Vector donnerListeCategories(String sConditions) + throws Exception + { + Vector> vResReq = null; + Vector vLstCols = null; + Vector vLstCats = null; + Categorie tmpCat = null; + String sReqSQL = ""; + + // + // Se connecte la base + // + // Ouvre la connexion si pas dj fait + if (!this.gestConn.estOuverte()) + this.gestConn.ouvrir(this.paramsConn); + + // Si pas ouverte, sort + if ( !this.gestConn.estOuverte() ) + throw new Exception("La connexion avec la base de donnes n'a pas pu tre tablie."); + + // + // Crer la requte + // + sReqSQL = "SELECT * FROM CATEGORIE_RANDO"; + if (sConditions != null) + if (!sConditions.equals("")) + sReqSQL += " WHERE " + sConditions; + + // + // Lance la requte et rcupre les donnes + // + if (this.gestConn.lancerRequeteSelection(sReqSQL)) + { + vResReq = this.gestConn.getDataVector(); + vLstCols = this.gestConn.getNomsColonnes(); + vLstCats = new Vector(vResReq.size()); + + for (int iArt=0; iArt vArticles = null; + boolean bEstPaye = false; + + /** + * Instancie le panier + */ + public GestionnairePanier() + { + this.vArticles = new Vector
(); + } + + /** + * Ajoute un article au panier. + * @param art article ajouter. + */ + public void ajouterAchat(Article art) + { + Article artPan = null; + boolean bArtTrouve = false; + + if (art == null) + return; + + //Vrifie si pas dj prsent + for (int i=0; i donneContenu() + { + return this.vArticles; + } + + /** + * Donne l'tat de payement du panier. + * @return 'true' si le panier est pass ' la caisse'. 'fase' sinon. + */ + public boolean getEstPaye() + { + return this.bEstPaye; + } + + /** + * Dtermine l'tat de payement du panier. + * @param bEstPaye 'true' si le panier est pass ' la caisse'. 'fase' sinon. + */ + public void setEstPaye(boolean bEstPaye) + { + this.bEstPaye = bEstPaye; + } + + /** + * Calcule et retourne le prix total du panier. + * @return Prix total du panier. + */ + public double getPrixTotalPanier() + { + double prixTotal = 0; + + for (int i=0; i + * - affichage, filtrage des articles et de leurs caractristiques. + * @author 3fvorillion + * @version + */ +public class ArticlesServlet + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + /** + * Traite les messages et affiche en consquence. + * @param request + * @param response + * @throws ServletException + * @throws IOException + */ + private void affArticles(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + String sPageAffichage = ""; + Vector vCats = null; + Vector
vArts = null; + String sIdCategAff; + String sCondReqSQL = ""; + + // + // Traite le filtre + // + sIdCategAff = request.getParameter("lstCategs"); + if (sIdCategAff != null) + { + //Si pas dfinit ou "toutes catgorie" + if (sIdCategAff.equals("") || sIdCategAff.equals("-1")) + { + sCondReqSQL = ""; + } + else + { + sCondReqSQL = "CATEGORIE="+sIdCategAff; + } + } + else + sCondReqSQL = ""; + + //Rcupre le gestionnaire d'articles + try + { + // + // Rcupre les articles depuis la base + // + this.gestArts = com.gestionnaires.GestionnaireArticles.getInstanceUnique(); + + //Rcupre la liste des articles (filtrs) + vArts = this.gestArts.donnerListeArticles(sCondReqSQL); + //Rcupre la liste des articles + vCats = this.gestArts.donnerListeCategories(""); + vCats.add(0, new Categorie(-1, "Toutes categories")); + + if (!vArts.isEmpty()) + { + request.setAttribute("categories", vCats); + request.setAttribute("articles", vArts); + + sPageAffichage = "/listeArticles.jsp"; + } + else + { + sPageAffichage = "/listeArticlesVide.jsp"; + } + + } + catch (Exception ex) + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur(ex.getMessage())); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + // + /** Handles the HTTP GET method. + * @param request servlet request + * @param response servlet response + */ + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affArticles(request, response); + } + + /** Handles the HTTP POST method. + * @param request servlet request + * @param response servlet response + */ + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affArticles(request, response); + } + + /** Returns a short description of the servlet. + */ + public String getServletInfo() { + return "Gestion de articles"; + } + // +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/servlets/ClientServlet.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/servlets/ClientServlet.java new file mode 100644 index 0000000..88c4f3c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/servlets/ClientServlet.java @@ -0,0 +1,187 @@ +/* + * Panier.java + * + * Created on 11 janvier 2008, 15:06 + */ + +package com.servlets; + +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.Panier; +import com.articles.Client; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +/** + * Servlet Grant l'affichage des commandes d'un client.
+ * - payement et confirmation de payement. + * @author 3fvorillion + * @version + */ +public class ClientServlet + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + /** + * Traite les messages et affiche en consquence. + * @param request + * @param response + * @throws ServletException + * @throws IOException + */ + private void affPayement(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + GestionnairePanier panier = null; + Vector vErrs = new Vector(); + Vector
vArts = null; + Client cli = null; + String sAction; + String sPageAffichage; + + // + // Rcupre l'objet de la session + // + panier = PanierServlet.getPanierSession(request); + + // + // Traite les actions + // + sAction = request.getParameter("action"); + if (sAction == null) + { ; } + else if (sAction.equals("payer")) + { + cli = new Client(); + + //Rcupre les infos de l'utilisateur + if (request.getParameter("nomCli") != null) + { + if (!request.getParameter("nomCli").equals("")) + cli.setNom(request.getParameter("nomCli")); + else + vErrs.add(new Erreur("Votre nom n'est pas saisi.")); + } + else + vErrs.add(new Erreur("Le nom du client n'est pas disponible.")); + + if (request.getParameter("prenomCli") != null) + { + if (!request.getParameter("prenomCli").equals("")) + cli.setPrenom(request.getParameter("prenomCli")); + else + vErrs.add(new Erreur("Votre prenom n'est pas saisi.")); + } + else + vErrs.add(new Erreur("Le prenom du client n'est pas disponible.")); + + if (request.getParameter("addrCli") != null) + { + if (!request.getParameter("addrCli").equals("")) + cli.setAdresse(request.getParameter("addrCli")); + else + vErrs.add(new Erreur("Votre adresse n'est pas saisi.")); + } + else + vErrs.add(new Erreur("L'adresse du client n'est pas disponible.")); + + if (request.getParameter("cpCli") != null) + { + if (!request.getParameter("cpCli").equals("")) + cli.setCodePost(request.getParameter("cpCli")); + else + vErrs.add(new Erreur("Votre code postal n'est pas saisi.")); + } + else + vErrs.add(new Erreur("Le code postal du client n'est pas disponible.")); + + if (request.getParameter("villeCli") != null) + { + if (!request.getParameter("villeCli").equals("")) + cli.setVille(request.getParameter("villeCli")); + else + vErrs.add(new Erreur("Votre ville n'est pas saisi.")); + } + else + vErrs.add(new Erreur("La ville du client n'est pas disponible.")); + } + + if (vErrs.isEmpty()) + { + // + // Affiche la liste des articles du panier + // + //Rcupre la liste des articles + vArts = panier.donneContenu(); + + if (!vArts.isEmpty()) + { + request.setAttribute("articles", vArts); + request.setAttribute("panierTotal", new Panier(panier.getPrixTotalPanier())); + + //Vrifie si on a dj saisi les infos client + if (cli != null) + { + request.setAttribute("client", cli); + + sPageAffichage = "/resultPayement.jsp"; + + //Signale que le panier est prt tre supprim + panier.setEstPaye(true); + } + else + sPageAffichage = "/payement.jsp"; + } + else + { + sPageAffichage = "/panierVide.jsp"; + } + } + else + { + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + // + /** Handles the HTTP GET method. + * @param request servlet request + * @param response servlet response + */ + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affPayement(request, response); + } + + /** Handles the HTTP POST method. + * @param request servlet request + * @param response servlet response + */ + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affPayement(request, response); + } + + /** Returns a short description of the servlet. + */ + public String getServletInfo() { + return "Gestion du client"; + } + // +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/servlets/PanierServlet.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/servlets/PanierServlet.java new file mode 100644 index 0000000..8e47ca5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/src/com/servlets/PanierServlet.java @@ -0,0 +1,228 @@ +/* + * Panier.java + * + * Created on 11 janvier 2008, 15:06 + */ + +package com.servlets; + +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.lang.*; +import java.util.Vector; +import com.articles.Article; +import com.articles.Panier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +/** + * Servlet Grant l'affichage des articles du panier.
+ * - affichage des articles et de leurs caractristiques. + * - modification des quantits. + * - suppression des articles du panier. + * @author 3fvorillion + * @version + */ +public class PanierServlet + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + /** + * Rcupre le panier courant de la session courante.
+ * Si pas de panier disponibles, en cr un.
+ * Si le painier courant en dj pay, en cr un autre. + * @param request requete du servlet + * @return le panier courant de la session + */ + public static GestionnairePanier getPanierSession(HttpServletRequest request) + { + HttpSession session = request.getSession(true); + + // + // Rcupre l'objet de la session + // + GestionnairePanier panier = (GestionnairePanier)session.getAttribute("caddy"); + if ( panier == null ) + { + panier = new GestionnairePanier(); + panier.setEstPaye(false); + + session.setAttribute("caddy", panier) ; + } + else if ( panier.getEstPaye() ) + { + //Supprime l'ancien de la liste de la session + session.removeAttribute("caddy") ; + + //Cr un nouveau + panier = new GestionnairePanier(); + panier.setEstPaye(false); + + session.setAttribute("caddy", panier) ; + } + + + return panier; + } + + /** + * Traite les messages et affiche en consquence. + * @param request + * @param response + * @throws ServletException + * @throws IOException + */ + private void affArticlesPanier(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + GestionnairePanier panier = null; + Vector
vArts = null; + String sAction; + String sPageAffichage; + String sCondReqSQL; + + // + // Rcupre l'objet de la session + // + panier = PanierServlet.getPanierSession(request); + + // + // Traite les actions + // + sAction = request.getParameter("action"); + if (sAction == null) + { ; } + else if (sAction.equals("add")) + { + if (request.getParameter("artRef") != null) + { + sCondReqSQL = "REFERENCE = '" + request.getParameter("artRef") + "'"; + + //Rcupre le gestionnaire d'articles + try + { + // + // Rcupre les articles depuis la base + // + this.gestArts = com.gestionnaires.GestionnaireArticles.getInstanceUnique(); + + //Rcupre la liste des articles + vArts = this.gestArts.donnerListeArticles(sCondReqSQL); + + if (vArts.size() == 1) + { + panier.ajouterAchat(vArts.get(0)); + } + else + { + Vector vErrs = new Vector(); + if (vArts.isEmpty()) + vErrs.add(new Erreur("Aucun article n'est disponible dans la boutique")); + else + vErrs.add(new Erreur("Trop d'articles correspondent la slection")); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + return; + } + } + catch (Exception ex) + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur(ex.getMessage())); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + return; + } + } + } + else if (sAction.equals("del")) + { + if (request.getParameter("artRef") != null) + panier.enleverAchat(request.getParameter("artRef")); + } + else if (sAction.equals("modif")) + { + //Rcupre la liste des articles + vArts = panier.donneContenu(); + + for (int i=0;i + /** Handles the HTTP GET method. + * @param request servlet request + * @param response servlet response + */ + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affArticlesPanier(request, response); + } + + /** Handles the HTTP POST method. + * @param request servlet request + * @param response servlet response + */ + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affArticlesPanier(request, response); + } + + /** Returns a short description of the servlet. + */ + public String getServletInfo() { + return "Gestion du panier"; + } + // +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/web.xml b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/web.xml new file mode 100644 index 0000000..abb9a3f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/WEB-INF/web.xml @@ -0,0 +1,50 @@ + + + + com.sun.faces.verifyObjects + false + + + com.sun.faces.validateXml + true + + + javax.faces.STATE_SAVING_METHOD + client + + + PanierServlet + com.servlets.PanierServlet + + + PanierServlet + /Panier + + + ArticlesServlet + com.servlets.ArticlesServlet + + + ArticlesServlet + /Articles + + + ClientServlet + com.servlets.ClientServlet + + + ClientServlet + /Client + + + + 30 + + + + + index.jsp + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/contenuPanier.jsp b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/contenuPanier.jsp new file mode 100644 index 0000000..ed0f01e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/contenuPanier.jsp @@ -0,0 +1,87 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + RandoOnLine - Contenu du Panier + + + +

RandoOnLine

+ + + + + + + + + +
AccueilPanierListe des articlesPasser la caisse
+ +

Contenu du Panier

+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
AperuPropritsQuantitAction
+ image + + + + + + + + + + + + + + + + +
Référence : ${artRef.ref}
Marque : ${artRef.marque}
Modèle : ${artRef.modele}
Prix : ${artRef.prix}
+
+ + + enlever +
Total : + + +
+
+ + +
+ + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/erreurs.jsp b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/erreurs.jsp new file mode 100644 index 0000000..a5b7ee8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/erreurs.jsp @@ -0,0 +1,39 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + RandoOnLine - Erreurs + + + +

RandoOnLine

+ + + + + + + + +
AccueilPanierListe des articles
+ +

Les erreurs suivantes se sont produites :

+
    + +
  • + ${err.message} +
  • +
    +
+ +

Accueil

+ + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/arva9000.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/arva9000.jpg new file mode 100644 index 0000000..58b2f2a Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/arva9000.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/baton.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/baton.jpg new file mode 100644 index 0000000..5563195 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/baton.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/gps.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/gps.jpg new file mode 100644 index 0000000..14bf220 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/gps.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_azimut.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_azimut.jpg new file mode 100644 index 0000000..4c2e37d Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_azimut.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_chamois.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_chamois.jpg new file mode 100644 index 0000000..358ef1b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_chamois.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_freepack.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_freepack.jpg new file mode 100644 index 0000000..972ca38 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_freepack.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_hoggar.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_hoggar.jpg new file mode 100644 index 0000000..f6ddcac Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_hoggar.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_mountain.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_mountain.jpg new file mode 100644 index 0000000..18d30a9 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_mountain.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_neve.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_neve.jpg new file mode 100644 index 0000000..ad9acc0 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_neve.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_sarco.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_sarco.jpg new file mode 100644 index 0000000..3074022 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/lafuma_sarco.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/marechal_4P.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/marechal_4P.jpg new file mode 100644 index 0000000..1e2c89c Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/marechal_4P.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/marechal_4P_mono.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/marechal_4P_mono.jpg new file mode 100644 index 0000000..dbc0270 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/marechal_4P_mono.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/nic_impex.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/nic_impex.jpg new file mode 100644 index 0000000..f21d4aa Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/nic_impex.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/nic_impex_2P.jpg b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/nic_impex_2P.jpg new file mode 100644 index 0000000..0ba408f Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/img/nic_impex_2P.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/index.jsp b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/index.jsp new file mode 100644 index 0000000..f77b71b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/index.jsp @@ -0,0 +1,20 @@ +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + + + + + + RandoOnLine + + + +

RandoOnLine

+
+ Afficher les articles + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/infos.jsp b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/infos.jsp new file mode 100644 index 0000000..2f3d520 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/infos.jsp @@ -0,0 +1,69 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + RandoOnLine - Infos + + + + +

Infos sur l'article

+ + + + + + + + + + + + + +
AperuProprits
+ " width="50" height="50" alt="image"/> + + + + + + + + + + + + + + + + + + + +
Référence : +
Marque : +
Modèle : +
Description : +
Prix : +
+
+
+

Acheter l'article

+
+ "> + Quantit :
+
+ +
+ + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/listeArticles.jsp b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/listeArticles.jsp new file mode 100644 index 0000000..89f2b92 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/listeArticles.jsp @@ -0,0 +1,83 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + RandoOnLine - Articles disponibles + + + +

RandoOnLine

+ + + + + + + + +
AccueilPanierListe des articles
+ +

Filtre

+
+ + +
+ +

Liste des articles disponibles

+ + + + + + + + + + + + + + + + + +
AperuPropritsAction
+ image + + + + + + + + + + + + + + + + + + + +
Référence : ${artRef.ref}
Marque : ${artRef.marque}
Modèle : ${artRef.modele}
Description : ${artRef.description}
Prix : ${artRef.prix}
+
+ ajouter au panier +
+ + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/listeArticlesVide.jsp b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/listeArticlesVide.jsp new file mode 100644 index 0000000..67b4dc2 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/listeArticlesVide.jsp @@ -0,0 +1,31 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> + + + + + + + + RandoOnLine - Articles disponibles + + +

RandoOnLine

+ + + + + + + + +
AccueilPanierListe des articles
+ +

Liste des articles disponibles

+

Nous somme actuellement en rupture de stock !

+

Nous serons livr trs prochainement.

+ Accueil + + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/panierVide.jsp b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/panierVide.jsp new file mode 100644 index 0000000..32c7408 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/panierVide.jsp @@ -0,0 +1,30 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> + + + + + + + + RandoOnLine - Contenu du Panier + + +

RandoOnLine

+ + + + + + + + +
AccueilPanierListe des articles
+ +

Contenu de votre panier

+

Votre panier est vide

+ Continuez vos achats + + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/payement.jsp b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/payement.jsp new file mode 100644 index 0000000..f9ab3d7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/payement.jsp @@ -0,0 +1,97 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + RandoOnLine - Payement + + + +

RandoOnLine

+ + + + + + + + + +
AccueilPanierListe des articlesPasser la caisse
+ +

Payement

+ +

Rappel de la commande :

+ + + + + + + + + + + + + + + + + + + + + +
ReferenceModelePrix
+ Référence : ${artRef.ref} + + Modèle : ${artRef.modele} + + Prix : ${artRef.prix} +
Total : + + +
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
Nom :
Prnom :
Adresse :
Code postal :
Ville :
+

Note : le payement se fera la livraison de la commande.

+ +   + +
+ + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/resultPayement.jsp b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/resultPayement.jsp new file mode 100644 index 0000000..3190263 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/resultPayement.jsp @@ -0,0 +1,75 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + RandoOnLine - Payement + + + +

RandoOnLine

+ + + + + + + + + +
AccueilPanierListe des articlesPasser la caisse
+ +

Confirmation de la commande

+ +

Rappel de la commande :

+ + + + + + + + + + + + + + + + + + + + + +
ReferenceModelePrix
+ Référence : ${artRef.ref} + + Modèle : ${artRef.modele} + + Prix : ${artRef.prix} +
Total : + + +
+ +
+ + +

Note : le payement se fera la livraison de la commande l'adresse suivante :
+  
+
+   +

+ +

Accueil

+ + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/resumePanier.jsp b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/resumePanier.jsp new file mode 100644 index 0000000..f3738ba --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/resumePanier.jsp @@ -0,0 +1,83 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + RandoOnLine - Resume du Panier + + + +

RandoOnLine

+ + + + + + + + + +
AccueilPanierListe des articlesPasser la caisse
+ +

Contenu du Panier

+ +
+ + + + + + + + + + + + + + + + + + + + + +
AperuPropritsQuantit
+ image + + + + + + + + + + + + + + + + +
Référence : ${artRef.ref}
Marque : ${artRef.marque}
Modèle : ${artRef.modele}
Prix : ${artRef.prix}
+
+ ${artRef.quantite} +
Total : + + +
+
+   + +
+ + diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/style.css b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/style.css new file mode 100644 index 0000000..39aee42 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/style.css @@ -0,0 +1,67 @@ +body { + min-width: 610px; + color: #222233; + font-family : Verdana, Arial, Helvetica, sans-serif; +} + +h1 { + padding-bottom:0.2em; + padding-top:0.2em; + padding-left:0.2em; + background-color: #dfe5ea; + margin: 2px 2px 2px 2px; + border: 1px solid #B7D6E3; + font-size: 14px; + color: #144b8a; +} + + +h2 { + margin-top:1em; + padding-bottom:0.2em; + border-bottom: 1px solid #ccc; + font-size: 12px; + color: #36628A; +} + +h3 { + font-size: 12px; + color: #7799D0; +} + +h4 { + font-size: 10px; + font-weight: bold; + color: #000000; +} + +p { + text-align: justify; + font-size: 11px; + line-height:150%; +} + +table, td { + font-family: Verdana, Arial, Helvetica, sans-serif; + font-size: 11px; + line-height:120%; + border-collapse: collapse; + border: 1px solid #88aacc; + padding: 0.3em +} + +td.selected { + background-color: #EEDDDD; +} +td.tabTotal { + text-align: right; + font-weight: bold; +} + +th { + font-weight: bold; + color: #333377; + background-color: #EEEEEE; + border: 1px solid #224466; + padding: 0.5em +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/contenuPanier_jsp.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/contenuPanier_jsp.class new file mode 100644 index 0000000..4d161eb Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/contenuPanier_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/contenuPanier_jsp.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/contenuPanier_jsp.java new file mode 100644 index 0000000..6215020 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/contenuPanier_jsp.java @@ -0,0 +1,221 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class contenuPanier_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Contenu du Panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

RandoOnLine

\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
AccueilPanierListe des articlesPasser � la caisse
\r\n"); + out.write(" \r\n"); + out.write("

Contenu du Panier

\r\n"); + out.write("\r\n"); + out.write("\t
\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write("
Aper�uPropri�t�sQuantit�Action
Total :\r\n"); + com.articles.Panier panierTotal = null; + synchronized (request) { + panierTotal = (com.articles.Panier) _jspx_page_context.getAttribute("panierTotal", PageContext.REQUEST_SCOPE); + if (panierTotal == null){ + panierTotal = new com.articles.Panier(); + _jspx_page_context.setAttribute("panierTotal", panierTotal, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write("\t\t\t\t\t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Panier)_jspx_page_context.findAttribute("panierTotal")).getPrixTotal()))); + out.write("\r\n"); + out.write("
\r\n"); + out.write("
\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t
\r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /contenuPanier.jsp(42,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${articles}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /contenuPanier.jsp(42,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("artRef"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \"image\"/\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
Référence : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.ref}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
Marque : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.marque}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
Modèle : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.modele}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
Prix : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.prix}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" enlever\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/erreurs_jsp.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/erreurs_jsp.class new file mode 100644 index 0000000..c5c739b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/erreurs_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/erreurs_jsp.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/erreurs_jsp.java new file mode 100644 index 0000000..7decc01 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/erreurs_jsp.java @@ -0,0 +1,147 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class erreurs_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Erreurs\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

RandoOnLine

\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
AccueilPanierListe des articles
\r\n"); + out.write(" \r\n"); + out.write("\t\t

Les erreurs suivantes se sont produites :

\r\n"); + out.write("\t\t
    \r\n"); + out.write("\t\t\t"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t
\r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /erreurs.jsp(30,3) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${erreurs}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /erreurs.jsp(30,3) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("err"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write("\t\t\t\t\t
  • \r\n"); + out.write("\t\t\t\t\t\t"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${err.message}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t\t\t\t\t
  • \r\n"); + out.write("\t\t\t"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/index_jsp.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/index_jsp.class new file mode 100644 index 0000000..9873b9f Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/index_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/index_jsp.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/index_jsp.java new file mode 100644 index 0000000..e3193bb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/index_jsp.java @@ -0,0 +1,84 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write("
    \r\n"); + out.write(" Afficher les articles\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/infos_jsp.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/infos_jsp.class new file mode 100644 index 0000000..707630b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/infos_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/infos_jsp.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/infos_jsp.java new file mode 100644 index 0000000..6125c5b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/infos_jsp.java @@ -0,0 +1,159 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class infos_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" Contenu du Panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + com.articles.Article art = null; + synchronized (request) { + art = (com.articles.Article) _jspx_page_context.getAttribute("art", PageContext.REQUEST_SCOPE); + if (art == null){ + art = new com.articles.Article(); + _jspx_page_context.setAttribute("art", art, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write(" \r\n"); + out.write("\t

    Infos sur l'article

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Aper�uPropri�t�s
    \r\n"); + out.write(" \"image\"/\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Référence :\r\n"); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Article)_jspx_page_context.findAttribute("art")).getRef()))); + out.write("
    Marque : \r\n"); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Article)_jspx_page_context.findAttribute("art")).getMarque()))); + out.write("
    Modèle : \r\n"); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Article)_jspx_page_context.findAttribute("art")).getModele()))); + out.write("
    Description : \r\n"); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Article)_jspx_page_context.findAttribute("art")).getDescription()))); + out.write("
    Prix : \r\n"); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Article)_jspx_page_context.findAttribute("art")).getPrix()))); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("\t\t
    \r\n"); + out.write("\t\t
    \r\n"); + out.write("\t\t\t\r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t\t\t\t\t\r\n"); + out.write("\t\t\t\t\t\r\n"); + out.write("\t\t\t\t\t\r\n"); + out.write("\t\t\t\t\t\r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t\t\t
    Qt�\r\n"); + out.write("\t\t\t\t\t\r\n"); + out.write("\t\t\t\t\t
    \r\n"); + out.write("\t\t
    \r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticlesVide_jsp.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticlesVide_jsp.class new file mode 100644 index 0000000..f66c9d3 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticlesVide_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticlesVide_jsp.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticlesVide_jsp.java new file mode 100644 index 0000000..d7c969c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticlesVide_jsp.java @@ -0,0 +1,95 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class listeArticlesVide_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Articles disponibles\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articles
    \r\n"); + out.write(" \r\n"); + out.write("\t\t

    Liste des articles disponibles

    \r\n"); + out.write("\t\t

    Nous somme actuellement en rupture de stock !

    \r\n"); + out.write("\t\t

    Nous serons livr� tr�s prochainement.

    \r\n"); + out.write(" \tAccueil\r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticles_jsp.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticles_jsp.class new file mode 100644 index 0000000..ad5fd69 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticles_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticles_jsp.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticles_jsp.java new file mode 100644 index 0000000..5b1e6b0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/listeArticles_jsp.java @@ -0,0 +1,246 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class listeArticles_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Articles disponibles\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articles
    \r\n"); + out.write(" \r\n"); + out.write("\t

    Filtre

    \r\n"); + out.write("\t
    \r\n"); + out.write("\t\t\r\n"); + out.write(" \r\n"); + out.write("\t
    \r\n"); + out.write("\t\r\n"); + out.write("\t

    Liste des articles disponibles

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + if (_jspx_meth_c_005fforEach_005f1(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" \r\n"); + out.write("
    Aper�uPropri�t�sAction
    \r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + out.write(" "); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /listeArticles.jsp(31,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${categories}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /listeArticles.jsp(31,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("categ"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write("\t\t\t\r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } + + private boolean _jspx_meth_c_005fforEach_005f1(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f1 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f1.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f1.setParent(null); + // /listeArticles.jsp(48,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f1.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${articles}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /listeArticles.jsp(48,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f1.setVar("artRef"); + int[] _jspx_push_body_count_c_005fforEach_005f1 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f1 = _jspx_th_c_005fforEach_005f1.doStartTag(); + if (_jspx_eval_c_005fforEach_005f1 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \"image\"/\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Référence : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.ref}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Marque : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.marque}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Modèle : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.modele}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Description : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.description}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Prix : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.prix}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" ajouter au panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f1.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f1.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f1[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f1.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f1.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f1); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/panierVide_jsp.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/panierVide_jsp.class new file mode 100644 index 0000000..7f6ca11 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/panierVide_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/panierVide_jsp.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/panierVide_jsp.java new file mode 100644 index 0000000..e4bd2b6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/panierVide_jsp.java @@ -0,0 +1,94 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class panierVide_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Contenu du Panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articles
    \r\n"); + out.write(" \r\n"); + out.write("\t\t

    Contenu de votre panier

    \r\n"); + out.write("\t\t

    Votre panier est vide

    \r\n"); + out.write(" \tContinuez vos achats\r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/payement_jsp.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/payement_jsp.class new file mode 100644 index 0000000..f8d61de Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/payement_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/payement_jsp.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/payement_jsp.java new file mode 100644 index 0000000..e90e702 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/payement_jsp.java @@ -0,0 +1,219 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class payement_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Payement\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articlesPasser � la caisse
    \r\n"); + out.write(" \r\n"); + out.write("

    Payement

    \r\n"); + out.write("\r\n"); + out.write("\t

    Rappel de la commande :

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write("
    ReferenceModelePrix
    Total :\r\n"); + com.articles.Panier panierTotal = null; + synchronized (request) { + panierTotal = (com.articles.Panier) _jspx_page_context.getAttribute("panierTotal", PageContext.REQUEST_SCOPE); + if (panierTotal == null){ + panierTotal = new com.articles.Panier(); + _jspx_page_context.setAttribute("panierTotal", panierTotal, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write("\t\t\t\t\t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Panier)_jspx_page_context.findAttribute("panierTotal")).getPrixTotal()))); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("\t\t
    \r\n"); + out.write("\r\n"); + out.write("\t
    \r\n"); + out.write("\t\r\n"); + out.write(" \r\n"); + out.write(" \t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\r\n"); + out.write(" \r\n"); + out.write("
    Nom :
    Pr�nom :
    Adresse :
    Code postal :
    Ville :
    \r\n"); + out.write("

    Note : le payement se fera � la livraison de la commande.

    \r\n"); + out.write(" \r\n"); + out.write("  \r\n"); + out.write(" \r\n"); + out.write("\t
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /payement.jsp(41,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${articles}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /payement.jsp(41,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("artRef"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \tRéférence : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.ref}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t\t\t\t\tModèle : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.modele}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t \r\n"); + out.write("\t \tPrix : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.prix}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t \r\n"); + out.write(" \r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resultPayement_jsp.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resultPayement_jsp.class new file mode 100644 index 0000000..4507c5a Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resultPayement_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resultPayement_jsp.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resultPayement_jsp.java new file mode 100644 index 0000000..cd3fb92 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resultPayement_jsp.java @@ -0,0 +1,214 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class resultPayement_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Payement\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articlesPasser � la caisse
    \r\n"); + out.write(" \r\n"); + out.write("

    Confirmation de la commande

    \r\n"); + out.write("\r\n"); + out.write("\t

    Rappel de la commande :

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write("
    ReferenceModelePrix
    Total :\r\n"); + com.articles.Panier panierTotal = null; + synchronized (request) { + panierTotal = (com.articles.Panier) _jspx_page_context.getAttribute("panierTotal", PageContext.REQUEST_SCOPE); + if (panierTotal == null){ + panierTotal = new com.articles.Panier(); + _jspx_page_context.setAttribute("panierTotal", panierTotal, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write("\t\t\t\t\t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Panier)_jspx_page_context.findAttribute("panierTotal")).getPrixTotal()))); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("\t\t
    \r\n"); + out.write("\r\n"); + out.write("\t"); + com.articles.Client client = null; + synchronized (request) { + client = (com.articles.Client) _jspx_page_context.getAttribute("client", PageContext.REQUEST_SCOPE); + if (client == null){ + client = new com.articles.Client(); + _jspx_page_context.setAttribute("client", client, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write("

    Note : le payement se fera � la livraison de la commande � l'adresse suivante :
    \r\n"); + out.write("\t\t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Client)_jspx_page_context.findAttribute("client")).getNom()))); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Client)_jspx_page_context.findAttribute("client")).getPrenom()))); + out.write("
    \r\n"); + out.write(" \t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Client)_jspx_page_context.findAttribute("client")).getAdresse()))); + out.write("
    \r\n"); + out.write(" \t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Client)_jspx_page_context.findAttribute("client")).getCodePost()))); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Client)_jspx_page_context.findAttribute("client")).getVille()))); + out.write("\r\n"); + out.write("

    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /resultPayement.jsp(41,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${articles}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /resultPayement.jsp(41,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("artRef"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \tRéférence : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.ref}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t\t\t\t\tModèle : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.modele}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t \r\n"); + out.write("\t \tPrix : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.prix}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t \r\n"); + out.write(" \r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resumePanier_jsp.class b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resumePanier_jsp.class new file mode 100644 index 0000000..92220b5 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resumePanier_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resumePanier_jsp.java b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resumePanier_jsp.java new file mode 100644 index 0000000..dbb0344 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/RandoOnLine/work/org/apache/jsp/resumePanier_jsp.java @@ -0,0 +1,211 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class resumePanier_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Resume du Panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articlesPasser � la caisse
    \r\n"); + out.write(" \r\n"); + out.write("

    Contenu du Panier

    \r\n"); + out.write("\r\n"); + out.write("\t
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write("
    Aper�uPropri�t�sQuantit�
    Total :\r\n"); + com.articles.Panier panierTotal = null; + synchronized (request) { + panierTotal = (com.articles.Panier) _jspx_page_context.getAttribute("panierTotal", PageContext.REQUEST_SCOPE); + if (panierTotal == null){ + panierTotal = new com.articles.Panier(); + _jspx_page_context.setAttribute("panierTotal", panierTotal, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write("\t\t\t\t\t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Panier)_jspx_page_context.findAttribute("panierTotal")).getPrixTotal()))); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("  \r\n"); + out.write(" \r\n"); + out.write("\t
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /resumePanier.jsp(41,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${articles}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /resumePanier.jsp(41,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("artRef"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \"image\"/\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Référence : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.ref}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Marque : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.marque}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Modèle : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.modele}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Prix : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.prix}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.quantite}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/blankoworld/WEB-INF/classes/jsp2/bonjour.class b/P51/apache-tomcat-6.0.14/webapps/blankoworld/WEB-INF/classes/jsp2/bonjour.class new file mode 100644 index 0000000..1688cbc Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/blankoworld/WEB-INF/classes/jsp2/bonjour.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/blankoworld/WEB-INF/classes/jsp2/bonjour.java b/P51/apache-tomcat-6.0.14/webapps/blankoworld/WEB-INF/classes/jsp2/bonjour.java new file mode 100644 index 0000000..7d89fe7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/blankoworld/WEB-INF/classes/jsp2/bonjour.java @@ -0,0 +1,14 @@ +package jsp2; + +import javax.servlet.jsp.JspException; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import java.io.IOException; + +/** + * * SimpleTag handler that prints "Hello, world!" + * */ +public class bonjour extends SimpleTagSupport { + public void doTag() throws JspException, IOException { + getJspContext().getOut().write( "Bonjour !" ); + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/blankoworld/bonjour.jsp b/P51/apache-tomcat-6.0.14/webapps/blankoworld/bonjour.jsp new file mode 100644 index 0000000..000be2c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/blankoworld/bonjour.jsp @@ -0,0 +1,20 @@ +<%@ taglib prefix="balise" uri="librairie.tld" %> + + + + + +
    +

    Notre outil applicatif

    + +
    + +
    +
    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/blankoworld/index.html b/P51/apache-tomcat-6.0.14/webapps/blankoworld/index.html new file mode 100644 index 0000000..d9eb39a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/blankoworld/index.html @@ -0,0 +1,18 @@ + + + + + +
    +

    Notre outil applicatif

    + +
    Contenu secondaire : texte.
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/blankoworld/librairie.tld b/P51/apache-tomcat-6.0.14/webapps/blankoworld/librairie.tld new file mode 100644 index 0000000..041f508 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/blankoworld/librairie.tld @@ -0,0 +1,14 @@ + + + +Description de ma libraire de balises simples. +1.0 +LibrairieDeBase +/SimpleTagLibrary + + Sortie Bonjour + bonjour + jsp2.bonjour + empty + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/BUILDING.txt b/P51/apache-tomcat-6.0.14/webapps/docs/BUILDING.txt new file mode 100644 index 0000000..d8eb6e9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/BUILDING.txt @@ -0,0 +1,121 @@ +$Id: BUILDING.txt 467221 2006-10-24 03:16:33Z markt $ + + ==================================================== + Building The Apache Tomcat 6.0 Servlet/JSP Container + ==================================================== + +This subproject contains the source code for Tomcat 6.0, a container that +implements the Servlet 2.5 and JSP 2.1 specifications from the Java +Community Process . In order to build a binary +distribution version of the container from a source distribution, +do the following: + + +(0) Download and Install a Java Development Kit + +* If the JDK is already installed, skip to (1). + +* Download a Java Development Kit (JDK) release (version 1.5.x or later) from: + + http://java.sun.com/j2se/ + +* Install the JDK according to the instructions included with the release. + +* Set an environment variable JAVA_HOME to the pathname of the directory + into which you installed the JDK release. + + +(1) Install Apache Ant 1.6.x on your computer + +* If Apache Ant 1.6.x is already installed on your computer, skip to (2). + +* Download a binary distribution of Ant 1.6.x from: + + http://ant.apache.org/bindownload.cgi + +* Unpack the binary distribution into a convenient location so that the + Ant release resides in its own directory (conventionally named + "apache-ant-[version]"). For the purposes of the remainder of this document, + the symbolic name "${ant.home}" is used to refer to the full pathname of + the release directory. + +* Create an ANT_HOME environment variable to point the directory + ${ant.home}. + +* Modify the PATH environment variable to include the directory + ${ant.home}/bin in its list. This makes the "ant" command line script + available, which will be used to actually perform the build. + + +(2) Building Tomcat 6.0 + +(2.1) Checkout or obtain the source code for Tomcat 6.0 + +* Tomcat SVN repository URL: + http://svn.apache.org/repos/asf/tomcat/tc6.0.x/ + +* Download a source package from: + http://tomcat.apache.org/download-60.cgi + +* Checkout the source using SVN, selecting the desired version or + branch (current development source is at + http://svn.apache.org/repos/asf/tomcat/tc6.0.x/trunk/), or + unpack the source package. The location where the source has been + placed will be referred as ${tomcat.source}. + +(2.2) Building + +* Go to that directory, and do: + + cd ${tomcat.source} + ant download + ant + +* NOTE: Users accessing the Internet through a proxy must use a properties + file to indicate to Ant the proxy configuration. Read below. + +* WARNING: Running this command will download binaries to the /usr/share/java + directory. Make sure this is appropriate to do on your computer. On Windows, + this usually corresponds to the "C:\usr\share\java" directory, unless Cygwin + is used. Read below to customize the directory used to download the binaries. + +* The build can be controlled by creating a ${tomcat.source}/build.properties + file, and adding the following content to it: + + # ----- Proxy setup ----- + # Uncomment if using a proxy server + #proxy.host=proxy.domain + #proxy.port=8080 + #proxy.use=on + + # ----- Default Base Path for Dependent Packages ----- + # Replace this path with the directory path where dependencies binaries + # should be downloaded + base.path=/usr/share/java + + +(3) Updating sources + +It is recommended that you regularly update the downloaded Tomcat 6 sources +using your SVN client. + +(4) Rebuilds + +For a quick rebuild of only modified code you can use: + + cd ${tomcat.source} + ant + +(5) Building the servlet and jsp API documentation + +The documentation can be easly built: + + cd ${tomcat.source} + ant -f dist.xml dist-javadoc + +(6) Building a release running tests: + + cd ${tomcat.source} + ant -f dist.xml release + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/NOTICE b/P51/apache-tomcat-6.0.14/webapps/docs/NOTICE new file mode 100644 index 0000000..db81026 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/NOTICE @@ -0,0 +1,16 @@ +Apache Tomcat +Copyright 1999-2007 The Apache Software Foundation + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + +The Windows Installer is built with the Nullsoft +Scriptable Install Sysem (NSIS), which is +open source software. The original software and +related information is available at +http://nsis.sourceforge.net. + +Java compilation software for JSP pages is provided by Eclipse, +which is open source software. The orginal software and +related infomation is available at +http://www.eclipse.org. diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/RELEASE-NOTES.txt b/P51/apache-tomcat-6.0.14/webapps/docs/RELEASE-NOTES.txt new file mode 100644 index 0000000..1576f5f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/RELEASE-NOTES.txt @@ -0,0 +1,178 @@ + + + Apache Tomcat Version 6.0.14 + Release Notes + + +$Id: RELEASE-NOTES 521511 2007-03-22 22:38:04Z fhanik $ + + +============================= +KNOWN ISSUES IN THIS RELEASE: +============================= + +* Dependency Changes +* JNI Based Applications +* Bundled APIs +* Web application reloading and static fields in shared libraries +* Tomcat on Linux +* Enabling SSI and CGI Support +* Security manager URLs +* Symlinking static resources +* Enabling invoker servlet +* Viewing the Tomcat Change Log +* When all else fails + + +=================== +Dependency Changes: +=================== +Tomcat 6.0 is designed to run on JSE 5.0 and later, and requires +configuration to run on JSE 5.0. + +In addition, Tomcat 6.0 uses the Eclipse JDT Java compiler for compiling +JSP pages. This means you no longer need to have the complete +Java Development Kit (JDK) to run Tomcat, but a Java Runtime Environment +(JRE) is sufficient. The Eclipse JDT Java compiler is bundled with the +binary Tomcat distributions. Tomcat can also be configured to use the +compiler from the JDK to compile JSPs, or any other Java compiler supported +by Apache Ant. + + +======================= +JNI Based Applications: +======================= +Applications that require native libraries must ensure that the libraries have +been loaded prior to use. Typically, this is done with a call like: + + static { + System.loadLibrary("path-to-library-file"); + } + +in some class. However, the application must also ensure that the library is +not loaded more than once. If the above code were placed in a class inside +the web application (i.e. under /WEB-INF/classes or /WEB-INF/lib), and the +application were reloaded, the loadLibrary() call would be attempted a second +time. + +To avoid this problem, place classes that load native libraries outside of the +web application, and ensure that the loadLibrary() call is executed only once +during the lifetime of a particular JVM. + + +============= +Bundled APIs: +============= +A standard installation of Tomcat 6.0 makes all of the following APIs available +for use by web applications (by placing them in "lib"): +* annotations-api.jar (Annotations package) +* catalina.jar (Tomcat Catalina implementation) +* catalina-ant.jar (Tomcat Catalina Ant tasks) +* catalina-ha.jar (High availability package) +* catalina-tribes.jar (Group communication) +* commons-logging-api.jar (Commons Logging API 1.0.x) +* el-api.jar (EL 2.1 API) +* jasper.jar (Jasper 2 Compiler and Runtime) +* jasper-el.jar (Jasper 2 EL implementation) +* jasper-jdt.jar (Eclipse JDT 3.2 Java compiler) +* jsp-api.jar (JSP 2.1 API) +* servlet-api.jar (Servlet 2.5 API) +* tomcat-coyote.jar (Tomcat connectors and utility classes) +* tomcat-dbcp.jar (package renamed database connection pool based on Commons DBCP) + +You can make additional APIs available to all of your web applications by +putting unpacked classes into a "classes" directory (not created by default), +or by placing them in JAR files in the "lib" directory. + +To override the XML parser implementation or interfaces, use the endorsed +mechanism of the JVM. The default configuration defines JARs located in +"endorsed" as endorsed. + + +================================================================ +Web application reloading and static fields in shared libraries: +================================================================ +Some shared libraries (many are part of the JDK) keep references to objects +instantiated by the web application. To avoid class loading related problems +(ClassCastExceptions, messages indicating that the classloader +is stopped, etc.), the shared libraries state should be reinitialized. + +Something which might help is to avoid putting classes which would be +referenced by a shared static field in the web application classloader, +and putting them in the shared classloader instead (JARs should be put in the +"lib" folder, and classes should be put in the "classes" folder). + + +================ +Tomcat on Linux: +================ +GLIBC 2.2 / Linux 2.4 users should define an environment variable: +export LD_ASSUME_KERNEL=2.2.5 + +Redhat Linux 9.0 users should use the following setting to avoid +stability problems: +export LD_ASSUME_KERNEL=2.4.1 + +There are some Linux bugs reported against the NIO sendfile behavior, make sure you +have a JDK that is up to date, or disable sendfile behavior in the Connector.
    +6427312: (fc) FileChannel.transferTo() throws IOException "system call interrupted"
    +5103988: (fc) FileChannel.transferTo should return -1 for EAGAIN instead throws IOException
    +6253145: (fc) FileChannel.transferTo on Linux fails when going beyond 2GB boundary
    +6470086: (fc) FileChannel.transferTo(2147483647, 1, channel) cause "Value too large" exception
    + + +============================= +Enabling SSI and CGI Support: +============================= +Because of the security risks associated with CGI and SSI available +to web applications, these features are disabled by default. + +To enable and configure CGI support, please see the cgi-howto.html page. + +To enable and configue SSI support, please see the ssi-howto.html page. + + +====================== +Security manager URLs: +====================== +In order to grant security permissions to JARs located inside the +web application repository, use URLs of of the following format +in your policy file: + +file:${catalina.home}/webapps/examples/WEB-INF/lib/driver.jar + + +============================ +Symlinking static resources: +============================ +By default, Unix symlinks will not work when used in a web application to link +resources located outside the web application root directory. + +This behavior is optional, and the "allowLinking" flag may be used to disable +the check. + + +========================= +Enabling invoker servlet: +========================= +Starting with Tomcat 4.1.12, the invoker servlet is no longer available by +default in all webapps. Enabling it for all webapps is possible by editing +$CATALINA_HOME/conf/web.xml to uncomment the "/servlet/*" servlet-mapping +definition. + +Using the invoker servlet in a production environment is not recommended and +is unsupported. More details are available on the Tomcat FAQ at +http://tomcat.apache.org/faq/misc.html#invoker. + + +============================== +Viewing the Tomcat Change Log: +============================== +See changelog.html in this directory. + + +==================== +When all else fails: +==================== +See the FAQ +http://tomcat.apache.org/faq/ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/RUNNING.txt b/P51/apache-tomcat-6.0.14/webapps/docs/RUNNING.txt new file mode 100644 index 0000000..9cdae5a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/RUNNING.txt @@ -0,0 +1,147 @@ +$Id: RUNNING.txt 354430 2005-12-06 13:44:26Z yoavs $ + + =================================================== + Running The Apache Tomcat 6.0 Servlet/JSP Container + =================================================== + +Apache Tomcat 6.0 requires the Java 2 Standard Edition Runtime +Environment (JRE) version 5.0 or later. + +============================= +Running With JRE 5.0 Or Later +============================= + +(1) Download and Install the J2SE Runtime Environment (JRE) + +(1.1) Download the Java 2 Standard Edition Runtime Environment (JRE), + release version 5.0 or later, from http://java.sun.com/j2se. + +(1.2) Install the JRE according to the instructions included with the + release. +(1.3) Set an environment variable named JRE_HOME to the pathname of + the directory into which you installed the JRE, e.g. c:\jre5.0 + or /usr/local/java/jre5.0. + +NOTE: You may also use the full JDK rather than just the JRE. In this + case set your JAVA_HOME environment variable to the pathname of + the directory into which you installed the JDK, e.g. c:\j2sdk5.0 + or /usr/local/java/j2sdk5.0. + + +(2) Download and Install the Tomcat Binary Distribution + +NOTE: As an alternative to downloading a binary distribution, you can create +your own from the Tomcat source repository, as described in "BUILDING.txt". +If you do this, the value to use for "${catalina.home}" will be the "dist" +subdirectory of your source distribution. + +(2.1) Download a binary distribution of Tomcat from: + + http://tomcat.apache.org + +(2.2) Unpack the binary distribution into a convenient location so that the + distribution resides in its own directory (conventionally named + "apache-tomcat-[version]"). For the purposes of the remainder of this document, + the symbolic name "$CATALINA_HOME" is used to refer to the full + pathname of the release directory. + + +(3) Start Up Tomcat + +(3.1) Tomcat can be started by executing the following commands: + + $CATALINA_HOME\bin\startup.bat (Windows) + + $CATALINA_HOME/bin/startup.sh (Unix) + +(3.2) After startup, the default web applications included with Tomcat will be + available by visiting: + + http://localhost:8080/ + +(3.3) Further information about configuring and running Tomcat can be found in + the documentation included here, as well as on the Tomcat web site: + + http://tomcat.apache.org + + +(4) Shut Down Tomcat + +(4.1) Tomcat can be shut down by executing the following command: + + $CATALINA_HOME\bin\shutdown (Windows) + + $CATALINA_HOME/bin/shutdown.sh (Unix) + + +================================================== +Advanced Configuration - Multiple Tomcat Instances +================================================== + +In many circumstances, it is desirable to have a single copy of a Tomcat +binary distribution shared among multiple users on the same server. To make +this possible, you can pass a "-Dcatalina.base=$CATALINA_BASE" argument when +executing the startup command (see (2)). In this +"-Dcatalina.base=$CATALINA_BASE" argument, replace $CATALINA_BASE with the +directory that contains the files for your 'personal' Tomcat instance. + +When you use this "-Dcatalina.base=$CATALINA_BASE" argument, Tomcat will +calculate all relative references for files in the following directories based +on the value of $CATALINA_BASE instead of $CATALINA_HOME: + +* conf - Server configuration files (including server.xml) + +* logs - Log and output files + +* lib - For classes and resources that must be shared across all web + applications + +* webapps - Automatically loaded web applications + +* work - Temporary working directories for web applications + +* temp - Directory used by the JVM for temporary files (java.io.tmpdir) + +If you do not pass the "-Dcatalina.base=$CATALINA_BASE" argument to the +startup command, $CATALINA_BASE will default to the same value as $CATALINA_HOME, + which means that the same directory is used for all relative path resolutions. + + +================ +Troubleshooting +================ + +There are only really 3 things likely to go wrong during the stand-alone +Tomcat install: + +(1) The most common hiccup is when another web server (or any process for that + matter) has laid claim to port 8080. This is the default HTTP port that + Tomcat attempts to bind to at startup. To change this, open the file: + + $CATALINA_HOME/conf/server.xml + + and search for '8080'. Change it to a port that isn't in use, and is + greater than 1024, as ports less than or equal to 1024 require superuser + access to bind under UNIX. + + Restart Tomcat and you're in business. Be sure that you replace the "8080" + in the URL you're using to access Tomcat. For example, if you change the + port to 1977, you would request the URL http://localhost:1977/ in your browser. + +(2) An "out of environment space" error when running the batch files in + Windows 95, 98, or ME operating systems. + + Right-click on the STARTUP.BAT and SHUTDOWN.BAT files. Click on + "Properties", then on the "Memory" tab. For the "Initial environment" field, + enter in something like 4096. + + After you click apply, Windows will create shortcuts which you can use + to start and stop the container. + +(3) The 'localhost' machine isn't found. This could happen if you're behind a + proxy. If that's the case, make sure the proxy configuration for your + browser knows that you shouldn't be going through the proxy to access the + "localhost". + + In Netscape, this is under Edit/Preferences -> Advanced/Proxies, and in + Internet Explorer, Tools -> Internet Options -> Connections -> LAN Settings. diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/WEB-INF/web.xml b/P51/apache-tomcat-6.0.14/webapps/docs/WEB-INF/web.xml new file mode 100644 index 0000000..7e3aef1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/WEB-INF/web.xml @@ -0,0 +1,11 @@ + + + + Tomcat Documentation + + Tomcat Documentation. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/aio.html b/P51/apache-tomcat-6.0.14/webapps/docs/aio.html new file mode 100644 index 0000000..0ae2e94 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/aio.html @@ -0,0 +1,314 @@ +Apache Tomcat 6.0 - Advanced IO and Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Advanced IO and Tomcat

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    + With usage of APR or NIO APIs as the basis of its connectors, Tomcat is + able to provide a number of extensions over the regular blocking IO + as provided with support for the Servlet API. +

    + +

    + IMPORTANT NOTE: Usage of these features requires using the APR or NIO + HTTP connectors. The classic java.io HTTP connector and the AJP connectors + do not support them. +

    + +
    Comet support
    + +

    + Comet support allows a servlet to process IO aynchronously, recieving + events when data is available for reading on the connection (rather than + always using a blocking read), and writing data back on connections + asychnonously (most likely responding to some event raised from some + other source). +

    + +
    CometEvent
    + +

    + Servlets which implement the org.apache.catalina.CometProcessor + interface will have their event method invoked rather than the usual service + method, according to the event which occurred. The event object gives + access to the usual request and response objects, which may be used in the + usual way. The main difference is that those objects remain valid and fully + functional at any time between processing of the BEGIN event until processing + an END or ERROR event. + The following event types exist: +

    + +
      +
    • EventType.BEGIN: will be called at the beginning + of the processing of the connection. It can be used to initialize any relevant + fields using the request and response objects. Between the end of the processing + of this event, and the beginning of the processing of the end or error events, + it is possible to use the response object to write data on the open connection. + Note that the response object and depedent OutputStream and Writer are still + not synchronized, so when they are accessed by multiple threads, + synchronization is mandatory. After processing the initial event, the request + is considered to be committed.
    • +
    • EventType.READ: This indicates that input data is available, and that one read can be made + without blocking. The available and ready methods of the InputStream or + Reader may be used to determine if there is a risk of blocking: the servlet + should read while data is reported available, and can make one additional read + should read while data is reported available. When encountering a read error, + the servlet should report it by propagating the exception properly. Throwing + an exception will cause the error event to be invoked, and the connection + will be closed. + Alternately, it is also possible to catch any exception, perform clean up + on any data structure the servlet may be using, and using the close method + of the event. It is not allowed to attempt reading data from the request + object outside of the execution of this method.
      + On some platforms, like Windows, a client disconnect is indicated by a READ event. + Reading from the stream may result in -1, an IOException or an EOFException. + Make sure you properly handle all these three cases. + If you don't catch the IOException, Tomcat will instantly invoke your event chain with an ERROR as + it catches the error for you, and you will be notified of the error at that time. +
    • +
    • EventType.END: End may be called to end the processing of the request. Fields that have + been initialized in the begin method should be reset. After this event has + been processed, the request and response objects, as well as all their dependent + objects will be recycled and used to process other requests. End will also be + called when data is available and the end of file is reached on the request input + (this usually indicates the client has pipelined a request).
    • +
    • EventType.ERROR: Error will be called by the container in the case where an IO exception + or a similar unrecoverable error occurs on the connection. Fields that have + been initialized in the begin method should be reset. After this event has + been processed, the request and response objects, as well as all their dependent + objects will be recycled and used to process other requests.
    • +
    + +

    + There are some event subtypes which allow finer processing of events (note: some of these + events require usage of the org.apache.catalina.valves.CometConnectionManagerValve valve): +

    + +
      +
    • EventSubType.TIMEOUT: The connection timed out (sub type of ERROR); note that this ERROR + type is not fatal, and the connection will not be closed unless the servlet uses the close + method of the event. +
    • +
    • EventSubType.CLIENT_DISCONNECT: The client connection was closed (sub type of ERROR). + method of the event. +
    • +
    • EventSubType.IOEXCEPTION: An IO exception occurred, such as invalid content, for example, + an invalid chunk block (sub type of ERROR). +
    • +
    • EventSubType.WEBAPP_RELOAD: The web application is being reloaded (sub type of END). +
    • +
    • EventSubType.SESSION_END: The servlet ended the session (sub type of END). +
    • +
    + +

    + As described above, the typical lifecycle of a Comet request will consist in a series of + events such as: BEGIN -> READ -> READ -> READ -> ERROR/TIMEOUT. At any time, the servlet + may end processing of the request by using the close method of the event object. +

    + +
    + +
    CometFilter
    + +

    + Similar to regular filters, a filter chain is invoked when comet events are processed. + These filters should implement the CometFilter interface (which works in the same way as + the regular Filter interface), and should be declared and mapped in the deployment + descriptor in the same way as a regular filter. The filter chain when processing an event + will only include filters which match all the usual mapping rules, and also implement + the CometFiler interface. +

    + +
    + +
    Example code
    + +

    + The following pseudo code servlet implments asynchronous chat functionality using the API + described above: +

    + +
    +public class ChatServlet
    +    extends HttpServlet implements CometProcessor {
    +
    +    protected ArrayList<HttpServletResponse> connections = 
    +        new ArrayList<HttpServletResponse>();
    +    protected MessageSender messageSender = null;
    +    
    +    public void init() throws ServletException {
    +        messageSender = new MessageSender();
    +        Thread messageSenderThread = 
    +            new Thread(messageSender, "MessageSender[" + getServletContext().getContextPath() + "]");
    +        messageSenderThread.setDaemon(true);
    +        messageSenderThread.start();
    +    }
    +
    +    public void destroy() {
    +        connections.clear();
    +        messageSender.stop();
    +        messageSender = null;
    +    }
    +
    +    /**
    +     * Process the given Comet event.
    +     * 
    +     * @param event The Comet event that will be processed
    +     * @throws IOException
    +     * @throws ServletException
    +     */
    +    public void event(CometEvent event)
    +        throws IOException, ServletException {
    +        HttpServletRequest request = event.getHttpServletRequest();
    +        HttpServletResponse response = event.getHttpServletResponse();
    +        if (event.getEventType() == CometEvent.EventType.BEGIN) {
    +            log("Begin for session: " + request.getSession(true).getId());
    +            PrintWriter writer = response.getWriter();
    +            writer.println("<!doctype html public \"-//w3c//dtd html 4.0 transitional//en\">");
    +            writer.println("<head><title>JSP Chat</title></head><body bgcolor=\"#FFFFFF\">");
    +            writer.flush();
    +            synchronized(connections) {
    +                connections.add(response);
    +            }
    +        } else if (event.getEventType() == CometEvent.EventType.ERROR) {
    +            log("Error for session: " + request.getSession(true).getId());
    +            synchronized(connections) {
    +                connections.remove(response);
    +            }
    +            event.close();
    +        } else if (event.getEventType() == CometEvent.EventType.END) {
    +            log("End for session: " + request.getSession(true).getId());
    +            synchronized(connections) {
    +                connections.remove(response);
    +            }
    +            PrintWriter writer = response.getWriter();
    +            writer.println("</body></html>");
    +            event.close();
    +        } else if (event.getEventType() == CometEvent.EventType.READ) {
    +            InputStream is = request.getInputStream();
    +            byte[] buf = new byte[512];
    +            do {
    +                int n = is.read(buf); //can throw an IOException
    +                if (n > 0) {
    +                    log("Read " + n + " bytes: " + new String(buf, 0, n) 
    +                            + " for session: " + request.getSession(true).getId());
    +                } else if (n < 0) {
    +                    error(event, request, response);
    +                    return;
    +                }
    +            } while (is.available() > 0);
    +        }
    +    }
    +
    +    public class MessageSender implements Runnable {
    +
    +        protected boolean running = true;
    +        protected ArrayList<String> messages = new ArrayList<String>();
    +        
    +        public MessageSender() {
    +        }
    +        
    +        public void stop() {
    +            running = false;
    +        }
    +
    +        /**
    +         * Add message for sending.
    +         */
    +        public void send(String user, String message) {
    +            synchronized (messages) {
    +                messages.add("[" + user + "]: " + message);
    +                messages.notify();
    +            }
    +        }
    +
    +        public void run() {
    +
    +            while (running) {
    +
    +                if (messages.size() == 0) {
    +                    try {
    +                        synchronized (messages) {
    +                            messages.wait();
    +                        }
    +                    } catch (InterruptedException e) {
    +                        // Ignore
    +                    }
    +                }
    +
    +                synchronized (connections) {
    +                    String[] pendingMessages = null;
    +                    synchronized (messages) {
    +                        pendingMessages = messages.toArray(new String[0]);
    +                        messages.clear();
    +                    }
    +                    // Send any pending message on all the open connections
    +                    for (int i = 0; i < connections.size(); i++) {
    +                        try {
    +                            PrintWriter writer = connections.get(i).getWriter();
    +                            for (int j = 0; j < pendingMessages.length; j++) {
    +                                writer.println(pendingMessages[j] + "<br>");
    +                            }
    +                            writer.flush();
    +                        } catch (IOException e) {
    +                            log("IOExeption sending message", e);
    +                        }
    +                    }
    +                }
    +
    +            }
    +
    +        }
    +
    +    }
    +
    +}
    +  
    + +
    +
    Comet timeouts
    +

    If you are using the NIO connector, you can set individual timeouts for your different comet connections. + To set a timeout, simple set a request attribute like the following code shows: +

    CometEvent event.... event.setTimeout(30*1000);
    or +
    event.getHttpServletRequest().setAttribute("org.apache.tomcat.comet.timeout", new Integer(30 * 1000));
    + This sets the timeout to 30 seconds. + Important note, in order to set this timeout, it has to be done on the BEGIN event. + The default value is soTimeout +

    +

    If you are using the APR connector, all Comet connections will have the same timeout value. It is soTimeout*50 +

    +
    + +
    Asynchronous writes
    + +

    + When APR or NIO is enabled, Tomcat supports using sendfile to send large static files. + These writes, as soon as the system load increases, will be performed + asynchronously in the most efficient way. Instead of sending a large response using + blocking writes, it is possible to write content to a static file, and write it + using a sendfile code. A caching valve could take advantage of this to cache the + response data in a file rather than store it in memory. Sendfile support is + available if the request attribute org.apache.tomcat.sendfile.support + is set to Boolean.TRUE. +

    + +

    + Any servlet can instruct Tomcat to perform a sendfile call by setting the appropriate + response attributes. When using sendfile, it is best to ensure that neither the + request or response have been wrapped, since as the response body will be sent later + by the connector itself, it cannot be filtered. Other than setting the 3 needed + response attributes, the servlet should not send any response data, but it may use + any method which will result in modifying the response header (like setting cookies). +

    + +
      +
    • org.apache.tomcat.sendfile.filename: Canonical filename of the file which will be sent as + a String
    • +
    • org.apache.tomcat.sendfile.start: Start offset as a Long
    • +
    • org.apache.tomcat.sendfile.start: End offset as a Long
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/api/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/api/index.html new file mode 100644 index 0000000..f698fb4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/api/index.html @@ -0,0 +1,17 @@ + + + + + API docs + + + + +Tomcat's internal javadoc is no longer installed by default. Download and install +the "fulldocs" package to get it. + +You can also access the javadoc online in the Tomcat +documentation bundle. + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/build.xml.txt b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/build.xml.txt new file mode 100644 index 0000000..c0f9679 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/build.xml.txt @@ -0,0 +1,497 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/deployment.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/deployment.html new file mode 100644 index 0000000..6d54ee9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/deployment.html @@ -0,0 +1,224 @@ +Application Developer's Guide - Deployment
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Contents

    Application Developer's Guide

    Deployment

    Printer Friendly Version
    print-friendly
    version +
    Background
    + +

    Before describing how to organize your source code directories, +it is useful to examine the runtime organization of a web application. +Prior to the Servlet API Specification, version 2.2, there was little +consistency between server platforms. However, servers that conform +to the 2.2 (or later) specification are required to accept a +Web Application Archive in a standard format, which is discussed +further below.

    + +

    A web application is defined as a hierarchy of directories and files +in a standard layout. Such a hierarchy can be accessed in its "unpacked" +form, where each directory and file exists in the filesystem separately, +or in a "packed" form known as a Web ARchive, or WAR file. The former format +is more useful during development, while the latter is used when you +distribute your application to be installed.

    + +

    The top-level directory of your web application hierarchy is also the +document root of your application. Here, you will place the HTML +files and JSP pages that comprise your application's user interface. When the +system administrator deploys your application into a particular server, he +or she assigns a context path to your application (a later section +of this manual describes deployment on Tomcat). Thus, if the +system administrator assigns your application to the context path +/catalog, then a request URI referring to +/catalog/index.html will retrieve the index.html +file from your document root.

    + +
    Standard Directory Layout
    + +

    To facilitate creation of a Web Application Archive file in the required +format, it is convenient to arrange the "executable" files of your web +application (that is, the files that Tomcat actually uses when executing +your app) in the same organization as required by the WAR format itself. +To do this, you will end up with the following contents in your +application's "document root" directory:

    +
      +
    • *.html, *.jsp, etc. - The HTML and JSP pages, along + with other files that must be visible to the client browser (such as + JavaScript, stylesheet files, and images) for your application. + In larger applications you may choose to divide these files into + a subdirectory hierarchy, but for smaller apps, it is generally + much simpler to maintain only a single directory for these files. +

    • +
    • /WEB-INF/web.xml - The Web Application Deployment + Descriptor for your application. This is an XML file describing + the servlets and other components that make up your application, + along with any initialization parameters and container-managed + security constraints that you want the server to enforce for you. + This file is discussed in more detail in the following subsection. +

    • +
    • /WEB-INF/classes/ - This directory contains any Java + class files (and associated resources) required for your application, + including both servlet and non-servlet classes, that are not combined + into JAR files. If your classes are organized into Java packages, + you must reflect this in the directory hierarchy under + /WEB-INF/classes/. For example, a Java class named + com.mycompany.mypackage.MyServlet + would need to be stored in a file named + /WEB-INF/classes/com/mycompany/mypackage/MyServlet.class. +

    • +
    • /WEB-INF/lib/ - This directory contains JAR files that + contain Java class files (and associated resources) required for your + application, such as third party class libraries or JDBC drivers.
    • +
    + +

    When you install an application into Tomcat (or any other +2.2/2.3-compatible server), the classes in the WEB-INF/classes/ +directory, as well as all classes in JAR files found in the +WEB-INF/lib/ directory, are made visible to other classes +within your particular web application. Thus, if +you include all of the required library classes in one of these places (be +sure to check licenses for redistribution rights for any third party libraries +you utilize), you will simplify the installation of your web application -- +no adjustment to the system class path (or installation of global library +files in your server) will be necessary.

    + +

    Much of this information was extracted from Chapter 9 of the Servlet +API Specification, version 2.3, which you should consult for more details.

    + +
    Shared Library Files
    + +

    Like most servlet containers, Tomcat 5 also supports mechanisms to install +library JAR files (or unpacked classes) once, and make them visible to all +installed web applications (without having to be included inside the web +application itself. The details of how Tomcat locates and shares such +classes are described in the +Class Loader HOW-TO documentation. +For the purposes of our discussion, there are two locations that are commonly +used within a Tomcat 5 installation for shared code:

    +
      +
    • $CATALINA_HOME/common/lib - JAR files placed here are + visible both to web applications and internal Tomcat code. This is a + good place to put JDBC drivers that are required for both your application + and internal Tomcat use (such as for a JDBCRealm). +

    • +
    • $CATALINA_BASE/shared/lib - JAR files placed here are + visible to all web applications, but not to internal Tomcat code. This + is the right place for shared libraries that are specific to your + application.

    • +
    + +

    Out of the box, a standard Tomcat 5 installation includes a variety +of pre-installed shared library files, including:

    +
      +
    • The Servlet 2.4 and JSP 2.0 APIs that are fundamental + to writing servlets and JavaServer Pages.

    • +
    • An XML Parser compliant with the JAXP (version 1.2) APIs, so + your application can perform DOM-based or SAX-based processing of + XML documents.

    • +
    + +
    Web Application Deployment Descriptor
    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 5, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 5 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +

    As mentioned above, the /WEB-INF/web.xml file contains the +Web Application Deployment Descriptor for your application. As the filename +extension implies, this file is an XML document, and defines everything about +your application that a server needs to know (except the context path, +which is assigned by the system administrator when the application is +deployed).

    + +

    The complete syntax and semantics for the deployment descriptor is defined +in Chapter 13 of the Servlet API Specification, version 2.3. Over time, it +is expected that development tools will be provided that create and edit the +deployment descriptor for you. In the meantime, to provide a starting point, +a basic web.xml file +is provided. This file includes comments that describe the purpose of each +included element.

    + +

    NOTE - The Servlet Specification includes a Document +Type Descriptor (DTD) for the web application deployment descriptor, and +Tomcat 5 enforces the rules defined here when processing your application's +/WEB-INF/web.xml file. In particular, you must +enter your descriptor elements (such as <filter>, +<servlet>, and <servlet-mapping> in +the order defined by the DTD (see Section 13.3).

    + +
    Tomcat Context Descriptor
    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 5, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 5 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +

    A /META-INF/context.xml file can be used to define Tomcat specific +configuration options, such as loggers, data sources, session manager +configuration and more. This XML file must contain one Context element, which +will be considered as if it was the child of the Host element corresponding +to the Host to which the The Tomcat configuration documentation contains +information on the Context element.

    + +
    Deployment With Tomcat 5
    + +

    In order to be executed, a web application must be deployed on +a servlet container. This is true even during development. +We will describe using Tomcat 5 to provide the execution environment. +A web application can be deployed in Tomcat by one of the following +approaches:

    +
      +
    • Copy unpacked directory hierarchy into a subdirectory in directory + $CATALINA_HOME/webapps/. Tomcat will assign a + context path to your application based on the subdirectory name you + choose. We will use this technique in the build.xml + file that we construct, because it is the quickest and easiest approach + during development. Be sure to restart Tomcat after installing or + updating your application. +

    • +
    • Copy the web application archive file into directory + $CATALINA_HOME/webapps/. When Tomcat is started, it will + automatically expand the web application archive file into its unpacked + form, and execute the application that way. This approach would typically + be used to install an additional application, provided by a third party + vendor or by your internal development staff, into an existing + Tomcat installation. NOTE - If you use this approach, + and wish to update your application later, you must both replace the + web application archive file AND delete the expanded + directory that Tomcat created, and then restart Tomcat, in order to reflect + your changes. +

    • +
    • Use the Tomcat 5 "Manager" web application to deploy and undeploy + web applications. Tomcat 5 includes a web application, deployed + by default on context path /manager, that allows you to + deploy and undeploy applications on a running Tomcat server without + restarting it. See the administrator documentation (TODO: hyperlink) + for more information on using the Manager web application.

    • +
    • Use "Manager" Ant Tasks In Your Build Script. Tomcat 5 + includes a set of custom task definitions for the Ant + build tool that allow you to automate the execution of commands to the + "Manager" web application. These tasks are used in the Tomcat deployer. +

    • +
    • Use the Tomcat Deployer. Tomcat 5 includes a packaged tool + bundling the Ant tasks, and can be used to automatically precompile JSPs + which are part of the web application before deployment to the server. +

    • +
    + +

    Deploying your app on other servlet containers will be specific to each +container, but all containers compatible with the Servlet API Specification +(version 2.2 or later) are required to accept a web application archive file. +Note that other containers are NOT required to accept an +unpacked directory structure (as Tomcat does), or to provide mechanisms for +shared library files, but these features are commonly available.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/index.html new file mode 100644 index 0000000..ba1a5cc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/index.html @@ -0,0 +1,45 @@ +Application Developer's Guide - Table of Contents
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Contents

    Application Developer's Guide

    Table of Contents

    Printer Friendly Version
    print-friendly
    version +
    Preface
    + +

    This manual includes contributions from many members of the Tomcat Project +developer community. The following authors have provided significant content: +

    + + +
    Table of Contents
    + +

    The information presented is divided into the following sections:

    +
      +
    • Introduction - + Briefly describes the information covered here, with + links and references to other sources of information.
    • +
    • Installation - + Covers acquiring and installing the required software + components to use Tomcat for web application development.
    • +
    • Deployment Organization - + Discusses the standard directory layout for a web application + (defined in the Servlet API Specification), the Web Application + Deployment Descriptor, and options for integration with Tomcat + in your development environment.
    • +
    • Source Organization - + Describes a useful approach to organizing the source code + directories for your project, and introduces the + build.xml used by Ant to manage compilation.
    • +
    • Development Processes - + Provides brief descriptions of typical development processes + utilizing the recommended deployment and source organizations.
    • +
    • Example Application - + This directory contains a very simple, but functionally complete, + "Hello, World" application built according to the principles + described in this manual. You can use this application to + practice using the described techniques.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/installation.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/installation.html new file mode 100644 index 0000000..f11a6c3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/installation.html @@ -0,0 +1,71 @@ +Application Developer's Guide - Installation
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Contents

    Application Developer's Guide

    Installation

    Printer Friendly Version
    print-friendly
    version +
    Installation
    + +

    In order to use Tomcat 6 for developing web applications, you must first +install it (and the software it depends on). The required steps are outlined +in the following subsections.

    + +
    JDK
    + +

    Tomcat 6.0 was designed to run on J2SE 5.0. +

    + +

    Compatible JDKs for many platforms (or links to where they can be found) +are available at +http://java.sun.com/j2se/.

    + +
    + +
    Tomcat
    + +

    Binary downloads of the Tomcat server are available from +http://tomcat.apache.org/download-60.cgi. +This manual assumes you are using the most recent release +of Tomcat 6. Detailed instructions for downloading and installing +Tomcat 6 are available here.

    + +

    In the remainder of this manual, example shell scripts assume that you have +set an environment variable CATALINA_HOME that contains the +pathname to the directory in which Tomcat 6 has been installed.

    + +
    + + +
    Ant
    + +

    Binary downloads of the Ant build tool are available from +http://ant.apache.org/bindownload.cgi. +This manual assumes you are using Ant 1.4 or later. The instructions should +also be compatible with later versions, but this has not been tested.

    + +

    Download and install Ant from the distribution directory mentioned above. +Then, add the bin directory of the Ant distribution to your +PATH environment variable, following the standard practices for +your operating system platform. Once you have done this, you will be able to +execute the ant shell command directly.

    + +
    + + +
    CVS
    + +

    Besides the required tools described above, you are strongly encouraged +to download and install a source code control system, such as the +Concurrent Version System (CVS), to maintain historical +versions of the source files that make up your web application. Besides +the server, you will also need appropriate client +tools to check out source code files, and check in modified versions.

    + +

    Detailed instructions for installing and using source code control +applications is beyond the scope of this manual. However, CVS server and +client tools for many platforms (along with documentation) can be downloaded +from http://www.cvshome.org.

    + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/introduction.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/introduction.html new file mode 100644 index 0000000..117d309 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/introduction.html @@ -0,0 +1,66 @@ +Application Developer's Guide - Introduction
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Contents

    Application Developer's Guide

    Introduction

    Printer Friendly Version
    print-friendly
    version +
    Overview
    + +

    Congratulations! You've decided to (or been told to) learn how to +build web applications using servlets and JSP pages, and picked the +Tomcat server to use for your learning and development. But now what +do you do?

    + +

    This manual is a primer covering the basic steps of using Tomcat to +set up a development environment, organize your source code, and then +build and test your application. It does not discuss architectures or +recommended coding practices for web application development, +or provide in depth instructions on operating the development +tools that are discussed. References to sources of additional information +are included in the following subsections.

    + +

    The discussion in this manual is aimed at developers who will be using +a text editor along with command line tools to develop and debug their +applications. As such, the recommendations are fairly generic -- but you +should easily be able to apply them in either a Windows-based or Unix-based +development environment. If you are utilizing an Interactive Development +Environment (IDE) tool, you will need to adapt the advice given here to +the details of your particular environment.

    + +
    Links
    + +

    The following links provide access to selected sources of online +information, documentation, and software that is useful in developing +web applications with Tomcat.

    +
      +
    • http://java.sun.com/products/jsp/download.html - + JavaServer Pages (JSP) Specfication, Version 2.0. Describes + the programming environment provided by standard implementations + of the JavaServer Pages (JSP) technology. In conjunction with + the Servlet API Specification (see below), this document describes + what a portable API page is allowed to contain. Specific + information on scripting (Chapter 6), tag extensions (Chapter 7), + and packaging JSP pages (Appendix A) is useful. The Javadoc + API Documentation is included in the specification, and with the + Tomcat download.

    • +
    • http://java.sun.com/products/servlet/download.html - + Servlet API Specification, Version 2.4. Describes the + programming environment that must be provided by all servlet + containers conforming to this specification. In particular, you + will need this document to understand the web application + directory structure and deployment file (Chapter 9), methods of + mapping request URIs to servlets (Chapter 11), container managed + security (Chapter 12), and the syntax of the web.xml + Web Application Deployment Descriptor (Chapter 13). The Javadoc + API Documentation is included in the specification, and with the + Tomcat download.

    • +
    • http://java.sun.com/j2ee/blueprints/ - + Sun BluePrints (tm) Design Guidelines for J2EE. Comprehensive + advice and examples on application design for the Java2 Enterprise + Edition (J2EE) platform, which includes servlets and JSP pages. The + chapters on servlet and JSP design are useful even when your application + does not require other J2EE platform components. +

    • +
    • TODO -- Add more entries here!
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/deployment.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/deployment.html new file mode 100644 index 0000000..91c821f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/deployment.html @@ -0,0 +1,223 @@ +Application Developer's Guide - Deployment
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Application Developer's Guide

    Deployment

    Background
    + +

    Before describing how to organize your source code directories, +it is useful to examine the runtime organization of a web application. +Prior to the Servlet API Specification, version 2.2, there was little +consistency between server platforms. However, servers that conform +to the 2.2 (or later) specification are required to accept a +Web Application Archive in a standard format, which is discussed +further below.

    + +

    A web application is defined as a hierarchy of directories and files +in a standard layout. Such a hierarchy can be accessed in its "unpacked" +form, where each directory and file exists in the filesystem separately, +or in a "packed" form known as a Web ARchive, or WAR file. The former format +is more useful during development, while the latter is used when you +distribute your application to be installed.

    + +

    The top-level directory of your web application hierarchy is also the +document root of your application. Here, you will place the HTML +files and JSP pages that comprise your application's user interface. When the +system administrator deploys your application into a particular server, he +or she assigns a context path to your application (a later section +of this manual describes deployment on Tomcat). Thus, if the +system administrator assigns your application to the context path +/catalog, then a request URI referring to +/catalog/index.html will retrieve the index.html +file from your document root.

    + +
    Standard Directory Layout
    + +

    To facilitate creation of a Web Application Archive file in the required +format, it is convenient to arrange the "executable" files of your web +application (that is, the files that Tomcat actually uses when executing +your app) in the same organization as required by the WAR format itself. +To do this, you will end up with the following contents in your +application's "document root" directory:

    +
      +
    • *.html, *.jsp, etc. - The HTML and JSP pages, along + with other files that must be visible to the client browser (such as + JavaScript, stylesheet files, and images) for your application. + In larger applications you may choose to divide these files into + a subdirectory hierarchy, but for smaller apps, it is generally + much simpler to maintain only a single directory for these files. +

    • +
    • /WEB-INF/web.xml - The Web Application Deployment + Descriptor for your application. This is an XML file describing + the servlets and other components that make up your application, + along with any initialization parameters and container-managed + security constraints that you want the server to enforce for you. + This file is discussed in more detail in the following subsection. +

    • +
    • /WEB-INF/classes/ - This directory contains any Java + class files (and associated resources) required for your application, + including both servlet and non-servlet classes, that are not combined + into JAR files. If your classes are organized into Java packages, + you must reflect this in the directory hierarchy under + /WEB-INF/classes/. For example, a Java class named + com.mycompany.mypackage.MyServlet + would need to be stored in a file named + /WEB-INF/classes/com/mycompany/mypackage/MyServlet.class. +

    • +
    • /WEB-INF/lib/ - This directory contains JAR files that + contain Java class files (and associated resources) required for your + application, such as third party class libraries or JDBC drivers.
    • +
    + +

    When you install an application into Tomcat (or any other +2.2/2.3-compatible server), the classes in the WEB-INF/classes/ +directory, as well as all classes in JAR files found in the +WEB-INF/lib/ directory, are made visible to other classes +within your particular web application. Thus, if +you include all of the required library classes in one of these places (be +sure to check licenses for redistribution rights for any third party libraries +you utilize), you will simplify the installation of your web application -- +no adjustment to the system class path (or installation of global library +files in your server) will be necessary.

    + +

    Much of this information was extracted from Chapter 9 of the Servlet +API Specification, version 2.3, which you should consult for more details.

    + +
    Shared Library Files
    + +

    Like most servlet containers, Tomcat 5 also supports mechanisms to install +library JAR files (or unpacked classes) once, and make them visible to all +installed web applications (without having to be included inside the web +application itself. The details of how Tomcat locates and shares such +classes are described in the +Class Loader HOW-TO documentation. +For the purposes of our discussion, there are two locations that are commonly +used within a Tomcat 5 installation for shared code:

    +
      +
    • $CATALINA_HOME/common/lib - JAR files placed here are + visible both to web applications and internal Tomcat code. This is a + good place to put JDBC drivers that are required for both your application + and internal Tomcat use (such as for a JDBCRealm). +

    • +
    • $CATALINA_BASE/shared/lib - JAR files placed here are + visible to all web applications, but not to internal Tomcat code. This + is the right place for shared libraries that are specific to your + application.

    • +
    + +

    Out of the box, a standard Tomcat 5 installation includes a variety +of pre-installed shared library files, including:

    +
      +
    • The Servlet 2.4 and JSP 2.0 APIs that are fundamental + to writing servlets and JavaServer Pages.

    • +
    • An XML Parser compliant with the JAXP (version 1.2) APIs, so + your application can perform DOM-based or SAX-based processing of + XML documents.

    • +
    + +
    Web Application Deployment Descriptor
    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 5, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 5 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +

    As mentioned above, the /WEB-INF/web.xml file contains the +Web Application Deployment Descriptor for your application. As the filename +extension implies, this file is an XML document, and defines everything about +your application that a server needs to know (except the context path, +which is assigned by the system administrator when the application is +deployed).

    + +

    The complete syntax and semantics for the deployment descriptor is defined +in Chapter 13 of the Servlet API Specification, version 2.3. Over time, it +is expected that development tools will be provided that create and edit the +deployment descriptor for you. In the meantime, to provide a starting point, +a basic web.xml file +is provided. This file includes comments that describe the purpose of each +included element.

    + +

    NOTE - The Servlet Specification includes a Document +Type Descriptor (DTD) for the web application deployment descriptor, and +Tomcat 5 enforces the rules defined here when processing your application's +/WEB-INF/web.xml file. In particular, you must +enter your descriptor elements (such as <filter>, +<servlet>, and <servlet-mapping> in +the order defined by the DTD (see Section 13.3).

    + +
    Tomcat Context Descriptor
    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 5, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 5 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +

    A /META-INF/context.xml file can be used to define Tomcat specific +configuration options, such as loggers, data sources, session manager +configuration and more. This XML file must contain one Context element, which +will be considered as if it was the child of the Host element corresponding +to the Host to which the The Tomcat configuration documentation contains +information on the Context element.

    + +
    Deployment With Tomcat 5
    + +

    In order to be executed, a web application must be deployed on +a servlet container. This is true even during development. +We will describe using Tomcat 5 to provide the execution environment. +A web application can be deployed in Tomcat by one of the following +approaches:

    +
      +
    • Copy unpacked directory hierarchy into a subdirectory in directory + $CATALINA_HOME/webapps/. Tomcat will assign a + context path to your application based on the subdirectory name you + choose. We will use this technique in the build.xml + file that we construct, because it is the quickest and easiest approach + during development. Be sure to restart Tomcat after installing or + updating your application. +

    • +
    • Copy the web application archive file into directory + $CATALINA_HOME/webapps/. When Tomcat is started, it will + automatically expand the web application archive file into its unpacked + form, and execute the application that way. This approach would typically + be used to install an additional application, provided by a third party + vendor or by your internal development staff, into an existing + Tomcat installation. NOTE - If you use this approach, + and wish to update your application later, you must both replace the + web application archive file AND delete the expanded + directory that Tomcat created, and then restart Tomcat, in order to reflect + your changes. +

    • +
    • Use the Tomcat 5 "Manager" web application to deploy and undeploy + web applications. Tomcat 5 includes a web application, deployed + by default on context path /manager, that allows you to + deploy and undeploy applications on a running Tomcat server without + restarting it. See the administrator documentation (TODO: hyperlink) + for more information on using the Manager web application.

    • +
    • Use "Manager" Ant Tasks In Your Build Script. Tomcat 5 + includes a set of custom task definitions for the Ant + build tool that allow you to automate the execution of commands to the + "Manager" web application. These tasks are used in the Tomcat deployer. +

    • +
    • Use the Tomcat Deployer. Tomcat 5 includes a packaged tool + bundling the Ant tasks, and can be used to automatically precompile JSPs + which are part of the web application before deployment to the server. +

    • +
    + +

    Deploying your app on other servlet containers will be specific to each +container, but all containers compatible with the Servlet API Specification +(version 2.2 or later) are required to accept a web application archive file. +Note that other containers are NOT required to accept an +unpacked directory structure (as Tomcat does), or to provide mechanisms for +shared library files, but these features are commonly available.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/docs/appdev/build.xml.txt b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/docs/appdev/build.xml.txt new file mode 100644 index 0000000..c0f9679 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/docs/appdev/build.xml.txt @@ -0,0 +1,497 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/docs/appdev/web.xml.txt b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/docs/appdev/web.xml.txt new file mode 100644 index 0000000..93bb139 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/docs/appdev/web.xml.txt @@ -0,0 +1,150 @@ + + + + + + + + + + My Web Application + + This is version X.X of an application to perform + a wild and wonderful task, based on servlets and + JSP pages. It was written by Dave Developer + (dave@mycompany.com), who should be contacted for + more information. + + + + + + + webmaster + myaddress@mycompany.com + + The EMAIL address of the administrator to whom questions + and comments about this application should be addressed. + + + + + + + + controller + + This servlet plays the "controller" role in the MVC architecture + used in this application. It is generally mapped to the ".do" + filename extension with a servlet-mapping element, and all form + submits in the app will be submitted to a request URI like + "saveCustomer.do", which will therefore be mapped to this servlet. + + The initialization parameter namess for this servlet are the + "servlet path" that will be received by this servlet (after the + filename extension is removed). The corresponding value is the + name of the action class that will be used to process this request. + + com.mycompany.mypackage.ControllerServlet + + listOrders + com.mycompany.myactions.ListOrdersAction + + + saveCustomer + com.mycompany.myactions.SaveCustomerAction + + + 5 + + + + graph + + This servlet produces GIF images that are dynamically generated + graphs, based on the input parameters included on the request. + It is generally mapped to a specific request URI like "/graph". + + + + + + + + controller + *.do + + + + graph + /graph + + + + + + + 30 + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/index.html new file mode 100644 index 0000000..92ad421 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/index.html @@ -0,0 +1,44 @@ +Application Developer's Guide - Table of Contents
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Application Developer's Guide

    Table of Contents

    Preface
    + +

    This manual includes contributions from many members of the Tomcat Project +developer community. The following authors have provided significant content: +

    + + +
    Table of Contents
    + +

    The information presented is divided into the following sections:

    +
      +
    • Introduction - + Briefly describes the information covered here, with + links and references to other sources of information.
    • +
    • Installation - + Covers acquiring and installing the required software + components to use Tomcat for web application development.
    • +
    • Deployment Organization - + Discusses the standard directory layout for a web application + (defined in the Servlet API Specification), the Web Application + Deployment Descriptor, and options for integration with Tomcat + in your development environment.
    • +
    • Source Organization - + Describes a useful approach to organizing the source code + directories for your project, and introduces the + build.xml used by Ant to manage compilation.
    • +
    • Development Processes - + Provides brief descriptions of typical development processes + utilizing the recommended deployment and source organizations.
    • +
    • Example Application - + This directory contains a very simple, but functionally complete, + "Hello, World" application built according to the principles + described in this manual. You can use this application to + practice using the described techniques.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/installation.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/installation.html new file mode 100644 index 0000000..9598e03 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/installation.html @@ -0,0 +1,70 @@ +Application Developer's Guide - Installation
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Application Developer's Guide

    Installation

    Installation
    + +

    In order to use Tomcat 6 for developing web applications, you must first +install it (and the software it depends on). The required steps are outlined +in the following subsections.

    + +
    JDK
    + +

    Tomcat 6.0 was designed to run on J2SE 5.0. +

    + +

    Compatible JDKs for many platforms (or links to where they can be found) +are available at +http://java.sun.com/j2se/.

    + +
    + +
    Tomcat
    + +

    Binary downloads of the Tomcat server are available from +http://tomcat.apache.org/download-60.cgi. +This manual assumes you are using the most recent release +of Tomcat 6. Detailed instructions for downloading and installing +Tomcat 6 are available here.

    + +

    In the remainder of this manual, example shell scripts assume that you have +set an environment variable CATALINA_HOME that contains the +pathname to the directory in which Tomcat 6 has been installed.

    + +
    + + +
    Ant
    + +

    Binary downloads of the Ant build tool are available from +http://ant.apache.org/bindownload.cgi. +This manual assumes you are using Ant 1.4 or later. The instructions should +also be compatible with later versions, but this has not been tested.

    + +

    Download and install Ant from the distribution directory mentioned above. +Then, add the bin directory of the Ant distribution to your +PATH environment variable, following the standard practices for +your operating system platform. Once you have done this, you will be able to +execute the ant shell command directly.

    + +
    + + +
    CVS
    + +

    Besides the required tools described above, you are strongly encouraged +to download and install a source code control system, such as the +Concurrent Version System (CVS), to maintain historical +versions of the source files that make up your web application. Besides +the server, you will also need appropriate client +tools to check out source code files, and check in modified versions.

    + +

    Detailed instructions for installing and using source code control +applications is beyond the scope of this manual. However, CVS server and +client tools for many platforms (along with documentation) can be downloaded +from http://www.cvshome.org.

    + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/introduction.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/introduction.html new file mode 100644 index 0000000..2a7f714 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/introduction.html @@ -0,0 +1,65 @@ +Application Developer's Guide - Introduction
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Application Developer's Guide

    Introduction

    Overview
    + +

    Congratulations! You've decided to (or been told to) learn how to +build web applications using servlets and JSP pages, and picked the +Tomcat server to use for your learning and development. But now what +do you do?

    + +

    This manual is a primer covering the basic steps of using Tomcat to +set up a development environment, organize your source code, and then +build and test your application. It does not discuss architectures or +recommended coding practices for web application development, +or provide in depth instructions on operating the development +tools that are discussed. References to sources of additional information +are included in the following subsections.

    + +

    The discussion in this manual is aimed at developers who will be using +a text editor along with command line tools to develop and debug their +applications. As such, the recommendations are fairly generic -- but you +should easily be able to apply them in either a Windows-based or Unix-based +development environment. If you are utilizing an Interactive Development +Environment (IDE) tool, you will need to adapt the advice given here to +the details of your particular environment.

    + +
    Links
    + +

    The following links provide access to selected sources of online +information, documentation, and software that is useful in developing +web applications with Tomcat.

    +
      +
    • http://java.sun.com/products/jsp/download.html - + JavaServer Pages (JSP) Specfication, Version 2.0. Describes + the programming environment provided by standard implementations + of the JavaServer Pages (JSP) technology. In conjunction with + the Servlet API Specification (see below), this document describes + what a portable API page is allowed to contain. Specific + information on scripting (Chapter 6), tag extensions (Chapter 7), + and packaging JSP pages (Appendix A) is useful. The Javadoc + API Documentation is included in the specification, and with the + Tomcat download.

    • +
    • http://java.sun.com/products/servlet/download.html - + Servlet API Specification, Version 2.4. Describes the + programming environment that must be provided by all servlet + containers conforming to this specification. In particular, you + will need this document to understand the web application + directory structure and deployment file (Chapter 9), methods of + mapping request URIs to servlets (Chapter 11), container managed + security (Chapter 12), and the syntax of the web.xml + Web Application Deployment Descriptor (Chapter 13). The Javadoc + API Documentation is included in the specification, and with the + Tomcat download.

    • +
    • http://java.sun.com/j2ee/blueprints/ - + Sun BluePrints (tm) Design Guidelines for J2EE. Comprehensive + advice and examples on application design for the Java2 Enterprise + Edition (J2EE) platform, which includes servlets and JSP pages. The + chapters on servlet and JSP design are useful even when your application + does not require other J2EE platform components. +

    • +
    • TODO -- Add more entries here!
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/processes.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/processes.html new file mode 100644 index 0000000..71cf3e8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/processes.html @@ -0,0 +1,284 @@ +Application Developer's Guide - Development Processes
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Application Developer's Guide

    Development Processes

    Development Processes
    + +

    Although application development can take many forms, this manual proposes +a fairly generic process for creating web applications using Tomcat. The +following sections highlight the commands and tasks that you, as the developer +of the code, will perform. The same basic approach works when you have +multiple programmers involved, as long as you have an appropriate source code +control system and internal team rules about who is working on what parts +of the application at any given time.

    + +

    The task descriptions below assume that you will be using CVS for source +code control, and that you have already configured access to the appropriate +CVS repository. Instructions for doing this are beyond the scope of this +manual. If you are using a different source code control environment, you +will need to figure out the corresponding commands for your system.

    + + +
    One-Time Setup of Ant and Tomcat for Development
    + +

    In order to take advantage of the special Ant tasks that interact with the +Manager web application, you need to perform the following tasks +once (no matter how many web applications you plan to develop).

    +
      +
    • Configure the Ant custom tasks. The implementation code for the + Ant custom tasks is in a JAR file named + $CATALINA_HOME/server/lib/catalina-ant.jar, which must be + copied in to the lib directory of your Ant installation. +

    • +
    • Define one or more Tomcat users. The Manager web + application runs under a security constraint that requires a user to be + logged in, and have the security role manager assigned to + him or her. How such users are defined depends on which Realm you have + configured in Tomcat's conf/server.xml file -- see the + Realm Configuration HOW-TO for more + information. You may define any number of users (with any username + and password that you like) with the manager role. +

    • +
    + +
    + + +
    Create Project Source Code Directory
    + +

    The first step is to create a new project source directory, and customize +the build.xml and build.properties files you will +be using. The directory structure is described in the +previous section, or you can use the +sample application as a starting point.

    + +

    Create your project source directory, and define it within your CVS +repository. This might be done by a series of commands like this, where +{project} is the name under which your project should be +stored in the CVS repository, and {username} is your login username:

    +
    +cd {my home directory}
    +mkdir myapp	<-- Assumed "project source directory"
    +cd myapp
    +mkdir docs
    +mkdir src
    +mkdir web
    +mkdir web/WEB-INF
    +cvs import -m "Initial Project Creation" {project} \
    +	{username} start
    +
    + +

    Now, to verify that it was created correctly in CVS, we will perform a +checkout of the new project:

    +
    +cd ..
    +mv myapp myapp.bu
    +cvs checkout {project}
    +
    + +

    Next, you will need to create and check in an initial version of the +build.xml script to be used for development. For getting +started quickly and easily, base your build.xml on the +basic build.xml file, included with this manual, +or code it from scratch.

    +
    +cd {my home directory}
    +cd myapp
    +emacs build.xml		<-- if you want a real editor :-)
    +cvs add build.xml
    +cvs commit
    +
    + +

    Until you perform the CVS commit, your changes are local to your own +development directory. Committing makes those changes visible to other +developers on your team that are sharing the same CVS repository.

    + +

    The next step is to customize the Ant properties that are +named in the build.xml script. This is done by creating a +file named build.properties in your project's top-level +directory. The supported properties are listed in the comments inside +the sample build.xml script. At a minimum, you will generally +need to define the catalina.home property defining where +Tomcat 5 is installed, and the manager application username and password. +You might end up with something like this:

    +
    +# Context path to install this application on
    +app.path=/hello
    +
    +# Tomcat 5 installation directory
    +catalina.home=/usr/local/apache-tomcat-6.0
    +
    +# Manager webapp username and password
    +manager.username=myusername
    +manager.password=mypassword
    +
    + +

    In general, you will not want to check the +build.properties file in to the CVS repository, because it +is unique to each developer's environment.

    + +

    Now, create the initial version of the web application deployment +descriptor. You can base web.xml on the +basic web.xml file, or code it from scratch.

    +
    +cd {my home directory}
    +cd myapp/web/WEB-INF
    +emacs web.xml
    +cvs add web.xml
    +cvs commit
    +
    + +Note that this is only an example web.xml file. The full definition +of the deployment descriptor file is in the +Servlet Specification. + +
    + + +
    Edit Source Code and Pages
    + +

    The edit/build/test tasks will generally be your most common activities +during development and maintenance. The following general principles apply. +As described in Source Organization, newly created +source files should be located in the appropriate subdirectory, under your +project source directory.

    + +

    Whenever you wish to refresh your development directory to reflect the +work performed by other developers, you will ask CVS to do it for you:

    +
    +cd {my home directory}
    +cd myapp
    +cvs update -dP
    +
    + +

    To create a new file, go to the appropriate directory, create the file, +and register it with CVS. When you are satisfied with it's contents (after +building and testing is successful), commit the new file to the repository. +For example, to create a new JSP page:

    +
    +cd {my home directory}
    +cd myapp/web		<-- Ultimate destination is document root
    +emacs mypage.jsp
    +cvs add mypage.jsp
    +... build and test the application ...
    +cvs commit
    +
    + +

    Java source code that is defined in packages must be organized in a +directory hierarchy (under the src/ subdirectory) that +matches the package names. For example, a Java class named +com.mycompany.mypackage.MyClass.java should be stored in file +src/com/mycompany/mypackage/MyClass.java. +Whenever you create a new subdirectory, don't forget to +register it with CVS.

    + +

    To edit an existing source file, you will generally just start editing +and testing, then commit the changed file when everything works. Although +CVS can be configured to required you to "check out" or "lock" a file you +are going to be modifying, this is generally not used.

    + +
    + + +
    Build the Web Application
    + +

    When you are ready to compile the application, issue the following +commands (generally, you will want a shell window open that is set to +the project source directory, so that only the last command is needed):

    +
    +cd {my home directory}
    +cd myapp		<-- Normally leave a window open here
    +ant
    +
    + +

    The Ant tool will be execute the default "compile" target in your +build.xml file, which will compile any new or updated Java +code. If this is the first time you compile after a "build clean", +it will cause everything to be recompiled.

    + +

    To force the recompilation of your entire application, do this instead:

    +
    +cd {my home directory}
    +cd myapp
    +ant all
    +
    + +

    This is a very good habit immediately before checking in changes, to +make sure that you have not introduced any subtle problems that Javac's +conditional checking did not catch.

    + +
    + + +
    Test Your Web Application
    + +

    To test your application, you will want to install it under Tomcat. The +quickest way to do that is to use the custom Ant tasks that are included in +the sample build.xml script. Using these commands might follow +a pattern like this:

    +
      +
    • Start Tomcat 5 if needed. If Tomcat 5 is not already running, + you will need to start it in the usual way. +

    • +
    • Compile your application. Use the ant compile + command (or just ant, since this is the default). Make + sure that there are no compilation errors. +

    • +
    • Install the application. Use the ant install + command. This tells Tomcat to immediately start running your app on + the context path defined in the app.path build property. + Tomcat does NOT have to be restarted for this to + take effect.

    • +
    • Test the application. Using your browser or other testing + tools, test the functionality of your application. +

    • +
    • Modify and rebuild as needed. As you discover that changes + are required, make those changes in the original source + files, not in the output build directory, and re-issue the + ant compile command. This ensures that your changes will + be available to be saved (via cvs commit) later on -- + the output build directory is deleted and recreated as necessary. +

    • +
    • Reload the application. Tomcat will recognize changes in + JSP pages automatically, but it will continue to use the old versions + of any servlet or JavaBean classes until the application is reloaded. + You can trigger this by executing the ant reload command. +

    • +
    • Remove the application when you re done. When you are through + working on this application, you can remove it from live execution by + running the ant remove command.
    • +
    + +

    Do not forget to commit your changes to the source code repository when +you have completed your testing!

    + +
    + + +
    Creating a Release
    + +

    When you are through adding new functionality, and you've tested everything +(you DO test, don't you :-), it is time to create the distributable version +of your web application that can be deployed on the production server. The +following general steps are required:

    +
      +
    • Issue the command ant all from the project source + directory, to rebuild everything from scratch one last time. +

    • +
    • Use the cvs tag command to create an identifier for + all of the source files utilized to create this release. This allows + you to reliably reconstruct a release (from sources) at a later + time.
    • +
    • Issue the command ant dist to create a distributable + web application archive (WAR) file, as well as a JAR file containing + the corresponding source code. +

    • +
    • Package the contents of the dist directory using the + tar or zip utility, according to + the standard release procedures used by your organization.
    • +
    + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/source.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/source.html new file mode 100644 index 0000000..b6c001d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/printer/source.html @@ -0,0 +1,284 @@ +Application Developer's Guide - Source Organization
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Application Developer's Guide

    Source Organization

    Directory Structure
    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 5, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 5 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +

    A key recommendation of this manual is to separate the directory +hierarchy containing your source code (described in this section) from +the directory hierarchy containing your deployable application +(described in the preceding section). Maintaining this separation has +the following advantages:

    +
      +
    • The contents of the source directories can be more easily administered, + moved, and backed up if the "executable" version of the application + is not intermixed. +

    • +
    • Source code control is easier to manage on directories that contain + only source files. +

    • +
    • The files that make up an installable distribution of your + application are much easier to select when the deployment + hierarchy is separate.
    • +
    + +

    As we will see, the ant development tool makes the creation +and processing of such directory hierarchies nearly painless.

    + +

    The actual directory and file hierarchy used to contain the source code +of an application can be pretty much anything you like. However, the +following organization has proven to be quite generally applicable, and is +expected by the example build.xml configuration file that +is discussed below. All of these components exist under a top level +project source directory for your application:

    +
      +
    • docs/ - Documentation for your application, in whatever + format your development team is using.

    • +
    • src/ - Java source files that generate the servlets, + beans, and other Java classes that are unique to your application. + If your source code is organized in packages (highly + recommended), the package hierarchy should be reflected as a directory + structure underneath this directory.

    • +
    • web/ - The static content of your web site (HTML pages, + JSP pages, JavaScript files, CSS stylesheet files, and images) that will + be accessible to application clients. This directory will be the + document root of your web application, and any subdirectory + structure found here will be reflected in the request URIs required to + access those files.

    • +
    • web/WEB-INF/ - The special configuration files required + for your application, including the web application deployment descriptor + (web.xml, defined in the + Servlet Specification), + tag library descriptors for custom tag libraries + you have created, and other resource files you wish to include within + your web application. Even though this directory appears to be a + subdirectory of your document root, the Servlet Specification + prohibits serving the contents of this directory (or any file it contains) + directly to a client request. Therefore, this is a good place to store + configuration information that is sensitive (such as database connection + usernames and passwords), but is required for your application to + operate successfully.
    • +
    + +

    During the development process, two additional directories will be +created on a temporary basis:

    +
      +
    • build/ - When you execute a default build + (ant), this directory will contain an exact image + of the files in the web application archive for this application. + Tomcat 5 allows you to deploy an application in an unpacked + directory like this, either by copying it to the + $CATALINA_HOME/webapps directory, or by installing + it via the "Manager" web application. The latter approach is very + useful during development, and will be illustrated below. +

    • +
    • dist/ - When you execute the ant dist + target, this directory will be created. It will create an exact image + of the binary distribution for your web application, including an license + information, documentation, and README files that you have prepared.
    • +
    + +

    Note that these two directories should NOT be archived in +your source code control system, because they are deleted and recreated (from +scratch) as needed during development. For that reason, you should not edit +any source files in these directories if you want to maintain a permanent +record of the changes, because the changes will be lost the next time that a +build is performed.

    + +
    External Dependencies
    + +

    What do you do if your application requires JAR files (or other + resources) from external projects or packages? A common example is that + you need to include a JDBC driver in your web application, in order to + operate.

    + +

    Different developers take different approaches to this problem. + Some will encourage checking a copy of the JAR files you depend on into + the source code control archives for every application that requires those + JAR files. However, this can cause significant management issues when you + use the same JAR in many applications - particular when faced with a need + to upgrade to a different version of that JAR file.

    + +

    Therefore, this manual recommends that you NOT store + a copy of the packages you depend on inside the source control archives + of your applications. Instead, the external dependencies should be + integrated as part of the process of building your + application. In that way, you can always pick up the appropriate version + of the JAR files from wherever your development system administrator has + installed them, without having to worry about updating your application + every time the version of the dependent JAR file is changed.

    + +

    In the example Ant build.xml file, we will demonstrate + how to define build properties that let you configure the locations + of the files to be copied, without having to modify build.xml + when these files change. The build properties used by a particular + developer can be customized on a per-application basis, or defaulted to + "standard" build properties stored in the developer's home directory.

    + +

    In many cases, your development system administrator will have already + installed the required JAR files into Tomcat 5's common/lib + or shared/lib directories. If this has been done, you need + to take no actions at all - the example build.xml file + automatically constructs a compile classpath that includes these files.

    + +
    + +
    Source Code Control
    + +

    As mentioned earlier, it is highly recommended that you place all of the +source files that comprise your application under the management of a +source code control system like the Concurrent Version System (CVS). If you +elect to do this, every directory and file in the source hierarchy should be +registered and saved -- but none of the generated files. If you register +binary format files (such as images or JAR libraries), be sure to indicate +this to your source code control system.

    + +

    We recommended (in the previous section) that you should not store the +contents of the build/ and dist/ directories +created by your development process in the source code control system. An +easy way to tell CVS to ignore these directories is to create a file named +.cvsignore (note the leading period) in your top-level source +directory, with the following contents:

    +
    +build
    +dist
    +build.properties
    +
    + +

    The reason for mentioning build.properties here will be +explained in the Processes section.

    + +

    Detailed instructions for your source code control environment are beyond +the scope of this manual. However, the following steps are followed when +using a command-line CVS client:

    +
      +
    • To refresh the state of your source code to that stored in the + the source repository, go to your project source directory, and + execute cvs update -dP. +

    • +
    • When you create a new subdirectory in the source code hierarchy, register + it in CVS with a command like cvs add {subdirname}. +

    • +
    • When you first create a new source code file, navigate to the directory + that contains it, and register the new file with a command like + cvs add {filename}. +

    • +
    • If you no longer need a particular source code file, navigate to the + containing directory and remove the file. Then, deregister it in CVS + with a command like cvs remove {filename}. +

    • +
    • While you are creating, modifying, and deleting source files, changes + are not yet reflected in the server repository. To save your changes in + their current state, go to the project source directory + and execute cvs commit. You will be asked to write a brief + description of the changes you have just completed, which will be stored + with the new version of any updated source file.
    • +
    + +

    CVS, like other source code control systems, has many additional features +(such as the ability to tag the files that made up a particular release, and +support for multiple development branches that can later be merged). See the +links and references in the Introduction for +more information.

    + +
    BUILD.XML Configuration File
    + +

    We will be using the ant tool to manage the compilation of +our Java source code files, and creation of the deployment hierarchy. Ant +operates under the control of a build file, normally called +build.xml, that defines the processing steps required. This +file is stored in the top-level directory of your source code hierarchy, and +should be checked in to your source code control system.

    + +

    Like a Makefile, the build.xml file provides several +"targets" that support optional development activities (such as creating +the associated Javadoc documentation, erasing the deployment home directory +so you can build your project from scratch, or creating the web application +archive file so you can distribute your application. A well-constructed +build.xml file will contain internal documentation describing +the targets that are designed for use by the developer, versus those targets +used internally. To ask Ant to display the project documentation, change to +the directory containing the build.xml flie and type:

    +
    +ant -projecthelp
    +
    + +

    To give you a head start, a basic build.xml file +is provided that you can customize and install in the project source directory +for your application. This file includes comments that describe the various +targets that can be executed. Briefly, the following targets are generally +provided:

    +
      +
    • clean - This target deletes any existing + build and dist directories, so that they + can be reconstructed from scratch. This allows you to guarantee that + you have not made source code modifications that will result in + problems at runtime due to not recompiling all affected classes. +

    • +
    • compile - This target is used to compile any source code + that has been changed since the last time compilation took place. The + resulting class files are created in the WEB-INF/classes + subdirectory of your build directory, exactly where the + structure of a web application requires them to be. Because + this command is executed so often during development, it is normally + made the "default" target so that a simple ant command will + execute it. +

    • +
    • all - This target is a short cut for running the + clean target, followed by the compile target. + Thus, it guarantees that you will recompile the entire application, to + ensure that you have not unknowingly introduced any incompatible changes. +

    • +
    • javadoc - This target creates Javadoc API documentation + for the Java classes in this web application. The example + build.xml file assumes you want to include the API + documentation with your app distribution, so it generates the docs + in a subdirectory of the dist directory. Because you normally + do not need to generate the Javadocs on every compilation, this target is + usually a dependency of the dist target, but not of the + compile target. +

    • +
    • dist - This target creates a distribution directory for + your application, including any required documentation, the Javadocs for + your Java classes, and a web application archive (WAR) file that will be + delivered to system administrators who wish to install your application. + Because this target also depends on the deploy target, the + web application archive will have also picked up any external dependencies + that were included at deployment time.
    • +
    + +

    For interactive development and testing of your web application using +Tomcat 5, the following additional targets are defined:

    +
      +
    • install - Tell the currently running Tomcat 5 to make + the application you are developing immediately available for execution + and testing. This action does not require Tomcat 5 to be restarted, but + it is also not remembered after Tomcat is restarted the next time. +

    • +
    • reload - Once the application is installed, you can + continue to make changes and recompile using the compile + target. Tomcat 5 will automatically recognize changes made to JSP pages, + but not to servlet or JavaBean classes - this command will tell Tomcat + to restart the currently installed application so that such changes are + recognized. +

    • +
    • remove - When you have completed your development and + testing activities, you can optionally tell Tomcat 5 to remove this + application from service. +
    • +
    + +

    Using the development and testing targets requires some additional +one-time setup that is described on the next page.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/processes.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/processes.html new file mode 100644 index 0000000..0085adf --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/processes.html @@ -0,0 +1,285 @@ +Application Developer's Guide - Development Processes
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Contents

    Application Developer's Guide

    Development Processes

    Printer Friendly Version
    print-friendly
    version +
    Development Processes
    + +

    Although application development can take many forms, this manual proposes +a fairly generic process for creating web applications using Tomcat. The +following sections highlight the commands and tasks that you, as the developer +of the code, will perform. The same basic approach works when you have +multiple programmers involved, as long as you have an appropriate source code +control system and internal team rules about who is working on what parts +of the application at any given time.

    + +

    The task descriptions below assume that you will be using CVS for source +code control, and that you have already configured access to the appropriate +CVS repository. Instructions for doing this are beyond the scope of this +manual. If you are using a different source code control environment, you +will need to figure out the corresponding commands for your system.

    + + +
    One-Time Setup of Ant and Tomcat for Development
    + +

    In order to take advantage of the special Ant tasks that interact with the +Manager web application, you need to perform the following tasks +once (no matter how many web applications you plan to develop).

    +
      +
    • Configure the Ant custom tasks. The implementation code for the + Ant custom tasks is in a JAR file named + $CATALINA_HOME/server/lib/catalina-ant.jar, which must be + copied in to the lib directory of your Ant installation. +

    • +
    • Define one or more Tomcat users. The Manager web + application runs under a security constraint that requires a user to be + logged in, and have the security role manager assigned to + him or her. How such users are defined depends on which Realm you have + configured in Tomcat's conf/server.xml file -- see the + Realm Configuration HOW-TO for more + information. You may define any number of users (with any username + and password that you like) with the manager role. +

    • +
    + +
    + + +
    Create Project Source Code Directory
    + +

    The first step is to create a new project source directory, and customize +the build.xml and build.properties files you will +be using. The directory structure is described in the +previous section, or you can use the +sample application as a starting point.

    + +

    Create your project source directory, and define it within your CVS +repository. This might be done by a series of commands like this, where +{project} is the name under which your project should be +stored in the CVS repository, and {username} is your login username:

    +
    +cd {my home directory}
    +mkdir myapp	<-- Assumed "project source directory"
    +cd myapp
    +mkdir docs
    +mkdir src
    +mkdir web
    +mkdir web/WEB-INF
    +cvs import -m "Initial Project Creation" {project} \
    +	{username} start
    +
    + +

    Now, to verify that it was created correctly in CVS, we will perform a +checkout of the new project:

    +
    +cd ..
    +mv myapp myapp.bu
    +cvs checkout {project}
    +
    + +

    Next, you will need to create and check in an initial version of the +build.xml script to be used for development. For getting +started quickly and easily, base your build.xml on the +basic build.xml file, included with this manual, +or code it from scratch.

    +
    +cd {my home directory}
    +cd myapp
    +emacs build.xml		<-- if you want a real editor :-)
    +cvs add build.xml
    +cvs commit
    +
    + +

    Until you perform the CVS commit, your changes are local to your own +development directory. Committing makes those changes visible to other +developers on your team that are sharing the same CVS repository.

    + +

    The next step is to customize the Ant properties that are +named in the build.xml script. This is done by creating a +file named build.properties in your project's top-level +directory. The supported properties are listed in the comments inside +the sample build.xml script. At a minimum, you will generally +need to define the catalina.home property defining where +Tomcat 5 is installed, and the manager application username and password. +You might end up with something like this:

    +
    +# Context path to install this application on
    +app.path=/hello
    +
    +# Tomcat 5 installation directory
    +catalina.home=/usr/local/apache-tomcat-6.0
    +
    +# Manager webapp username and password
    +manager.username=myusername
    +manager.password=mypassword
    +
    + +

    In general, you will not want to check the +build.properties file in to the CVS repository, because it +is unique to each developer's environment.

    + +

    Now, create the initial version of the web application deployment +descriptor. You can base web.xml on the +basic web.xml file, or code it from scratch.

    +
    +cd {my home directory}
    +cd myapp/web/WEB-INF
    +emacs web.xml
    +cvs add web.xml
    +cvs commit
    +
    + +Note that this is only an example web.xml file. The full definition +of the deployment descriptor file is in the +Servlet Specification. + +
    + + +
    Edit Source Code and Pages
    + +

    The edit/build/test tasks will generally be your most common activities +during development and maintenance. The following general principles apply. +As described in Source Organization, newly created +source files should be located in the appropriate subdirectory, under your +project source directory.

    + +

    Whenever you wish to refresh your development directory to reflect the +work performed by other developers, you will ask CVS to do it for you:

    +
    +cd {my home directory}
    +cd myapp
    +cvs update -dP
    +
    + +

    To create a new file, go to the appropriate directory, create the file, +and register it with CVS. When you are satisfied with it's contents (after +building and testing is successful), commit the new file to the repository. +For example, to create a new JSP page:

    +
    +cd {my home directory}
    +cd myapp/web		<-- Ultimate destination is document root
    +emacs mypage.jsp
    +cvs add mypage.jsp
    +... build and test the application ...
    +cvs commit
    +
    + +

    Java source code that is defined in packages must be organized in a +directory hierarchy (under the src/ subdirectory) that +matches the package names. For example, a Java class named +com.mycompany.mypackage.MyClass.java should be stored in file +src/com/mycompany/mypackage/MyClass.java. +Whenever you create a new subdirectory, don't forget to +register it with CVS.

    + +

    To edit an existing source file, you will generally just start editing +and testing, then commit the changed file when everything works. Although +CVS can be configured to required you to "check out" or "lock" a file you +are going to be modifying, this is generally not used.

    + +
    + + +
    Build the Web Application
    + +

    When you are ready to compile the application, issue the following +commands (generally, you will want a shell window open that is set to +the project source directory, so that only the last command is needed):

    +
    +cd {my home directory}
    +cd myapp		<-- Normally leave a window open here
    +ant
    +
    + +

    The Ant tool will be execute the default "compile" target in your +build.xml file, which will compile any new or updated Java +code. If this is the first time you compile after a "build clean", +it will cause everything to be recompiled.

    + +

    To force the recompilation of your entire application, do this instead:

    +
    +cd {my home directory}
    +cd myapp
    +ant all
    +
    + +

    This is a very good habit immediately before checking in changes, to +make sure that you have not introduced any subtle problems that Javac's +conditional checking did not catch.

    + +
    + + +
    Test Your Web Application
    + +

    To test your application, you will want to install it under Tomcat. The +quickest way to do that is to use the custom Ant tasks that are included in +the sample build.xml script. Using these commands might follow +a pattern like this:

    +
      +
    • Start Tomcat 5 if needed. If Tomcat 5 is not already running, + you will need to start it in the usual way. +

    • +
    • Compile your application. Use the ant compile + command (or just ant, since this is the default). Make + sure that there are no compilation errors. +

    • +
    • Install the application. Use the ant install + command. This tells Tomcat to immediately start running your app on + the context path defined in the app.path build property. + Tomcat does NOT have to be restarted for this to + take effect.

    • +
    • Test the application. Using your browser or other testing + tools, test the functionality of your application. +

    • +
    • Modify and rebuild as needed. As you discover that changes + are required, make those changes in the original source + files, not in the output build directory, and re-issue the + ant compile command. This ensures that your changes will + be available to be saved (via cvs commit) later on -- + the output build directory is deleted and recreated as necessary. +

    • +
    • Reload the application. Tomcat will recognize changes in + JSP pages automatically, but it will continue to use the old versions + of any servlet or JavaBean classes until the application is reloaded. + You can trigger this by executing the ant reload command. +

    • +
    • Remove the application when you re done. When you are through + working on this application, you can remove it from live execution by + running the ant remove command.
    • +
    + +

    Do not forget to commit your changes to the source code repository when +you have completed your testing!

    + +
    + + +
    Creating a Release
    + +

    When you are through adding new functionality, and you've tested everything +(you DO test, don't you :-), it is time to create the distributable version +of your web application that can be deployed on the production server. The +following general steps are required:

    +
      +
    • Issue the command ant all from the project source + directory, to rebuild everything from scratch one last time. +

    • +
    • Use the cvs tag command to create an identifier for + all of the source files utilized to create this release. This allows + you to reliably reconstruct a release (from sources) at a later + time.
    • +
    • Issue the command ant dist to create a distributable + web application archive (WAR) file, as well as a JAR file containing + the corresponding source code. +

    • +
    • Package the contents of the dist directory using the + tar or zip utility, according to + the standard release procedures used by your organization.
    • +
    + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/build.xml b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/build.xml new file mode 100644 index 0000000..c0f9679 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/build.xml @@ -0,0 +1,497 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/docs/README.txt b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/docs/README.txt new file mode 100644 index 0000000..16fda4d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/docs/README.txt @@ -0,0 +1,2 @@ +This is a dummy README file for the sample +web application. diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/index.html new file mode 100644 index 0000000..c123fc0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/index.html @@ -0,0 +1,30 @@ + + + +Sample Application + + +

    Sample Application

    +

    + The example app has been packaged as a war file and can be downloaded + here (Note: make sure your browser doesn't + change file extension or append a new one). +

    +

    + The easiest way to run this application is simply to move the war file + to your CATALINA_HOME/webapps directory. Tomcat will automatically + expand and deploy the application for you. You can view it with the + following URL (assuming that you're running tomcat on port 8080 + as is the default): +
    + http://localhost:8080/sample +

    +

    + If you just want to browse the code you can unpack the war file + with the jar command. + + jar -xvf sample.war + +

    + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/sample.war b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/sample.war new file mode 100644 index 0000000..b649cc8 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/sample.war differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/src/mypackage/Hello.java b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/src/mypackage/Hello.java new file mode 100644 index 0000000..8c79077 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/src/mypackage/Hello.java @@ -0,0 +1,83 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package mypackage; + +import java.io.IOException; +import java.io.PrintWriter; +import java.util.Enumeration; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +/** + * Simple servlet to validate that the Hello, World example can + * execute servlets. In the web application deployment descriptor, + * this servlet must be mapped to correspond to the link in the + * "index.html" file. + * + * @author Craig R. McClanahan + */ + +public final class Hello extends HttpServlet { + + + /** + * Respond to a GET request for the content produced by + * this servlet. + * + * @param request The servlet request we are processing + * @param response The servlet response we are producing + * + * @exception IOException if an input/output error occurs + * @exception ServletException if a servlet error occurs + */ + public void doGet(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException { + + response.setContentType("text/html"); + PrintWriter writer = response.getWriter(); + + writer.println(""); + writer.println(""); + writer.println("Sample Application Servlet Page"); + writer.println(""); + writer.println(""); + + writer.println(""); + writer.println(""); + writer.println(""); + writer.println(""); + writer.println(""); + writer.println("
    "); + writer.println(""); + writer.println(""); + writer.println("

    Sample Application Servlet

    "); + writer.println("This is the output of a servlet that is part of"); + writer.println("the Hello, World application."); + writer.println("
    "); + + writer.println(""); + writer.println(""); + + } + + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/WEB-INF/web.xml b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/WEB-INF/web.xml new file mode 100644 index 0000000..32e0a4d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/WEB-INF/web.xml @@ -0,0 +1,23 @@ + + + + Hello, World Application + + This is a simple web application with a source code organization + based on the recommendations of the Application Developer's Guide. + + + + HelloServlet + mypackage.Hello + + + + HelloServlet + /hello + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/hello.jsp b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/hello.jsp new file mode 100644 index 0000000..ff73e3c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/hello.jsp @@ -0,0 +1,23 @@ + + +Sample Application JSP Page + + + + + + + + +
    + + +

    Sample Application JSP Page

    +This is the output of a JSP page that is part of the Hello, World +application. +
    + +<%= new String("Hello!") %> + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/images/tomcat.gif b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/images/tomcat.gif new file mode 100644 index 0000000..32f7d80 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/images/tomcat.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/index.html new file mode 100644 index 0000000..fe61a15 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/sample/web/index.html @@ -0,0 +1,28 @@ + + +Sample "Hello, World" Application + + + + + + + + +
    + + +

    Sample "Hello, World" Application

    +

    This is the home page for a sample application used to illustrate the +source directory organization of a web application utilizing the principles +outlined in the Application Developer's Guide. +

    + +

    To prove that they work, you can execute either of the following links: +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/source.html b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/source.html new file mode 100644 index 0000000..c275b69 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/source.html @@ -0,0 +1,285 @@ +Application Developer's Guide - Source Organization
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Contents

    Application Developer's Guide

    Source Organization

    Printer Friendly Version
    print-friendly
    version +
    Directory Structure
    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 5, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 5 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +

    A key recommendation of this manual is to separate the directory +hierarchy containing your source code (described in this section) from +the directory hierarchy containing your deployable application +(described in the preceding section). Maintaining this separation has +the following advantages:

    +
      +
    • The contents of the source directories can be more easily administered, + moved, and backed up if the "executable" version of the application + is not intermixed. +

    • +
    • Source code control is easier to manage on directories that contain + only source files. +

    • +
    • The files that make up an installable distribution of your + application are much easier to select when the deployment + hierarchy is separate.
    • +
    + +

    As we will see, the ant development tool makes the creation +and processing of such directory hierarchies nearly painless.

    + +

    The actual directory and file hierarchy used to contain the source code +of an application can be pretty much anything you like. However, the +following organization has proven to be quite generally applicable, and is +expected by the example build.xml configuration file that +is discussed below. All of these components exist under a top level +project source directory for your application:

    +
      +
    • docs/ - Documentation for your application, in whatever + format your development team is using.

    • +
    • src/ - Java source files that generate the servlets, + beans, and other Java classes that are unique to your application. + If your source code is organized in packages (highly + recommended), the package hierarchy should be reflected as a directory + structure underneath this directory.

    • +
    • web/ - The static content of your web site (HTML pages, + JSP pages, JavaScript files, CSS stylesheet files, and images) that will + be accessible to application clients. This directory will be the + document root of your web application, and any subdirectory + structure found here will be reflected in the request URIs required to + access those files.

    • +
    • web/WEB-INF/ - The special configuration files required + for your application, including the web application deployment descriptor + (web.xml, defined in the + Servlet Specification), + tag library descriptors for custom tag libraries + you have created, and other resource files you wish to include within + your web application. Even though this directory appears to be a + subdirectory of your document root, the Servlet Specification + prohibits serving the contents of this directory (or any file it contains) + directly to a client request. Therefore, this is a good place to store + configuration information that is sensitive (such as database connection + usernames and passwords), but is required for your application to + operate successfully.
    • +
    + +

    During the development process, two additional directories will be +created on a temporary basis:

    +
      +
    • build/ - When you execute a default build + (ant), this directory will contain an exact image + of the files in the web application archive for this application. + Tomcat 5 allows you to deploy an application in an unpacked + directory like this, either by copying it to the + $CATALINA_HOME/webapps directory, or by installing + it via the "Manager" web application. The latter approach is very + useful during development, and will be illustrated below. +

    • +
    • dist/ - When you execute the ant dist + target, this directory will be created. It will create an exact image + of the binary distribution for your web application, including an license + information, documentation, and README files that you have prepared.
    • +
    + +

    Note that these two directories should NOT be archived in +your source code control system, because they are deleted and recreated (from +scratch) as needed during development. For that reason, you should not edit +any source files in these directories if you want to maintain a permanent +record of the changes, because the changes will be lost the next time that a +build is performed.

    + +
    External Dependencies
    + +

    What do you do if your application requires JAR files (or other + resources) from external projects or packages? A common example is that + you need to include a JDBC driver in your web application, in order to + operate.

    + +

    Different developers take different approaches to this problem. + Some will encourage checking a copy of the JAR files you depend on into + the source code control archives for every application that requires those + JAR files. However, this can cause significant management issues when you + use the same JAR in many applications - particular when faced with a need + to upgrade to a different version of that JAR file.

    + +

    Therefore, this manual recommends that you NOT store + a copy of the packages you depend on inside the source control archives + of your applications. Instead, the external dependencies should be + integrated as part of the process of building your + application. In that way, you can always pick up the appropriate version + of the JAR files from wherever your development system administrator has + installed them, without having to worry about updating your application + every time the version of the dependent JAR file is changed.

    + +

    In the example Ant build.xml file, we will demonstrate + how to define build properties that let you configure the locations + of the files to be copied, without having to modify build.xml + when these files change. The build properties used by a particular + developer can be customized on a per-application basis, or defaulted to + "standard" build properties stored in the developer's home directory.

    + +

    In many cases, your development system administrator will have already + installed the required JAR files into Tomcat 5's common/lib + or shared/lib directories. If this has been done, you need + to take no actions at all - the example build.xml file + automatically constructs a compile classpath that includes these files.

    + +
    + +
    Source Code Control
    + +

    As mentioned earlier, it is highly recommended that you place all of the +source files that comprise your application under the management of a +source code control system like the Concurrent Version System (CVS). If you +elect to do this, every directory and file in the source hierarchy should be +registered and saved -- but none of the generated files. If you register +binary format files (such as images or JAR libraries), be sure to indicate +this to your source code control system.

    + +

    We recommended (in the previous section) that you should not store the +contents of the build/ and dist/ directories +created by your development process in the source code control system. An +easy way to tell CVS to ignore these directories is to create a file named +.cvsignore (note the leading period) in your top-level source +directory, with the following contents:

    +
    +build
    +dist
    +build.properties
    +
    + +

    The reason for mentioning build.properties here will be +explained in the Processes section.

    + +

    Detailed instructions for your source code control environment are beyond +the scope of this manual. However, the following steps are followed when +using a command-line CVS client:

    +
      +
    • To refresh the state of your source code to that stored in the + the source repository, go to your project source directory, and + execute cvs update -dP. +

    • +
    • When you create a new subdirectory in the source code hierarchy, register + it in CVS with a command like cvs add {subdirname}. +

    • +
    • When you first create a new source code file, navigate to the directory + that contains it, and register the new file with a command like + cvs add {filename}. +

    • +
    • If you no longer need a particular source code file, navigate to the + containing directory and remove the file. Then, deregister it in CVS + with a command like cvs remove {filename}. +

    • +
    • While you are creating, modifying, and deleting source files, changes + are not yet reflected in the server repository. To save your changes in + their current state, go to the project source directory + and execute cvs commit. You will be asked to write a brief + description of the changes you have just completed, which will be stored + with the new version of any updated source file.
    • +
    + +

    CVS, like other source code control systems, has many additional features +(such as the ability to tag the files that made up a particular release, and +support for multiple development branches that can later be merged). See the +links and references in the Introduction for +more information.

    + +
    BUILD.XML Configuration File
    + +

    We will be using the ant tool to manage the compilation of +our Java source code files, and creation of the deployment hierarchy. Ant +operates under the control of a build file, normally called +build.xml, that defines the processing steps required. This +file is stored in the top-level directory of your source code hierarchy, and +should be checked in to your source code control system.

    + +

    Like a Makefile, the build.xml file provides several +"targets" that support optional development activities (such as creating +the associated Javadoc documentation, erasing the deployment home directory +so you can build your project from scratch, or creating the web application +archive file so you can distribute your application. A well-constructed +build.xml file will contain internal documentation describing +the targets that are designed for use by the developer, versus those targets +used internally. To ask Ant to display the project documentation, change to +the directory containing the build.xml flie and type:

    +
    +ant -projecthelp
    +
    + +

    To give you a head start, a basic build.xml file +is provided that you can customize and install in the project source directory +for your application. This file includes comments that describe the various +targets that can be executed. Briefly, the following targets are generally +provided:

    +
      +
    • clean - This target deletes any existing + build and dist directories, so that they + can be reconstructed from scratch. This allows you to guarantee that + you have not made source code modifications that will result in + problems at runtime due to not recompiling all affected classes. +

    • +
    • compile - This target is used to compile any source code + that has been changed since the last time compilation took place. The + resulting class files are created in the WEB-INF/classes + subdirectory of your build directory, exactly where the + structure of a web application requires them to be. Because + this command is executed so often during development, it is normally + made the "default" target so that a simple ant command will + execute it. +

    • +
    • all - This target is a short cut for running the + clean target, followed by the compile target. + Thus, it guarantees that you will recompile the entire application, to + ensure that you have not unknowingly introduced any incompatible changes. +

    • +
    • javadoc - This target creates Javadoc API documentation + for the Java classes in this web application. The example + build.xml file assumes you want to include the API + documentation with your app distribution, so it generates the docs + in a subdirectory of the dist directory. Because you normally + do not need to generate the Javadocs on every compilation, this target is + usually a dependency of the dist target, but not of the + compile target. +

    • +
    • dist - This target creates a distribution directory for + your application, including any required documentation, the Javadocs for + your Java classes, and a web application archive (WAR) file that will be + delivered to system administrators who wish to install your application. + Because this target also depends on the deploy target, the + web application archive will have also picked up any external dependencies + that were included at deployment time.
    • +
    + +

    For interactive development and testing of your web application using +Tomcat 5, the following additional targets are defined:

    +
      +
    • install - Tell the currently running Tomcat 5 to make + the application you are developing immediately available for execution + and testing. This action does not require Tomcat 5 to be restarted, but + it is also not remembered after Tomcat is restarted the next time. +

    • +
    • reload - Once the application is installed, you can + continue to make changes and recompile using the compile + target. Tomcat 5 will automatically recognize changes made to JSP pages, + but not to servlet or JavaBean classes - this command will tell Tomcat + to restart the currently installed application so that such changes are + recognized. +

    • +
    • remove - When you have completed your development and + testing activities, you can optionally tell Tomcat 5 to remove this + application from service. +
    • +
    + +

    Using the development and testing targets requires some additional +one-time setup that is described on the next page.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/appdev/web.xml.txt b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/web.xml.txt new file mode 100644 index 0000000..93bb139 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/appdev/web.xml.txt @@ -0,0 +1,150 @@ + + + + + + + + + + My Web Application + + This is version X.X of an application to perform + a wild and wonderful task, based on servlets and + JSP pages. It was written by Dave Developer + (dave@mycompany.com), who should be contacted for + more information. + + + + + + + webmaster + myaddress@mycompany.com + + The EMAIL address of the administrator to whom questions + and comments about this application should be addressed. + + + + + + + + controller + + This servlet plays the "controller" role in the MVC architecture + used in this application. It is generally mapped to the ".do" + filename extension with a servlet-mapping element, and all form + submits in the app will be submitted to a request URI like + "saveCustomer.do", which will therefore be mapped to this servlet. + + The initialization parameter namess for this servlet are the + "servlet path" that will be received by this servlet (after the + filename extension is removed). The corresponding value is the + name of the action class that will be used to process this request. + + com.mycompany.mypackage.ControllerServlet + + listOrders + com.mycompany.myactions.ListOrdersAction + + + saveCustomer + com.mycompany.myactions.SaveCustomerAction + + + 5 + + + + graph + + This servlet produces GIF images that are dynamically generated + graphs, based on the input parameters included on the request. + It is generally mapped to a specific request URI like "/graph". + + + + + + + + controller + *.do + + + + graph + /graph + + + + + + + 30 + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/apr.html b/P51/apache-tomcat-6.0.14/webapps/docs/apr.html new file mode 100644 index 0000000..d2f370b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/apr.html @@ -0,0 +1,275 @@ +Apache Tomcat 6.0 - Apache Portable Runtime and Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Apache Portable Runtime and Tomcat

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    + Tomcat can use the Apache Portable Runtime to + provide superior scalability, performance, and better integration with native server + technologies. The Apache Portable Runtime is a highly portable library that is at + the heart of Apache HTTP Server 2.x. APR has many uses, including access to advanced IO + functionality (such as sendfile, epoll and OpenSSL), OS level functionality (random number + generation, system status, etc), and native process handling (shared memory, NT + pipes and Unix sockets). +

    + +

    + These features allows making Tomcat a general purpose webserver, will enable much better + integration with other native web technologies, and overall make Java much more viable as + a full fledged webserver platform rather than simply a backend focused technology. +

    + +
    Installation
    + +

    + APR support requires three main native components to be installed: +

      +
    • APR library
    • +
    • JNI wrappers for APR used by Tomcat (libtcnative)
    • +
    • OpenSSL libraries
    • +
    +

    + +
    Windows
    + +

    + Windows binaries are provided for tcnative-1, which is a statically compiled .dll which includes + OpenSSL and APR. It can be downloaded from here + as 32bit or AMD x86-64 binaries. + In security conscious production environments, it is recommended to use separate shared dlls + for OpenSSL, APR, and libtcnative-1, and update them as needed according to security bulletins. + Windows OpenSSL binaries are linked from the Official OpenSSL + website (see related/binaries). +

    + +
    + +
    Linux
    + +

    + Most Linux distributions will ship packages for APR and OpenSSL. The JNI wrapper (libtcnative) will + then have to be compiled. It depends on APR, OpenSSL, and the Java headers. +

    + +

    + Requirements: +

      +
    • APR 1.2+ development headers (libapr1-dev package)
    • +
    • OpenSSL 0.9.7+ development headers (libssl-dev package)
    • +
    • JNI headers from Java compatible JDK 1.4+
    • +
    • GNU development environment (gcc, make)
    • +
    +

    + +

    + The wrapper library sources are located in the Tomcat binary bundle, in the + bin/tomcat-native.tar.gz archive. + Once the build environment is installed and the source archive is extracted, the wrapper library + can be compiled using (from the folder containing the configure script): +

    ./configure && make && make install
    +

    + +
    + +
    APR Components
    + +

    + Once the libraries are properly installed and available to Java (if loading fails, the library path + will be displayed), the Tomcat connectors will automatically use APR. Configuration of the connectors + is similar to the regular connectors, but have a few extra attributes which are used to configure + APR components. Note that the defaults should be well tuned for most use cases, and additional + tweaking shouldn't be required. +

    + +

    + When APR is enabled, the following features are also enabled in Tomcat: +

      +
    • Secure session ID generation by default on all platforms (platforms other than Linux required + random number generation using a configured entropy)
    • +
    • OS level statistics on memory usage and CPU usage by the Tomcat process are displayed by + the status servlet
    • +
    +

    + +
    APR Lifecycle Listener Configuration
    +
    AprLifecycleListener
    + +

    + Name of the SSLEngine to use. off: Do not use SSL, on: Use SSL but no specific ENGINE. + The default value is on. + This initializes the native SSL engine, then enable the use of this engine in the connector + using the SSLEnabled attribute. Example: +

    +<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
    +      
    +

    +

    See the Official OpenSSL + website for more details on SSL hardware engines and manufacturers. +

    +
    +
    +
    APR Connectors Configuration
    + +
    HTTP
    + +

    + When APR is enabled, the HTTP connector will use sendfile for hadling large static files (all such + files will be sent ansychronously using high performance kernel level calls), and will use + a socket poller for keepalive, increasing scalability of the server. +

    + +

    + The following attributes are supported in the HTTP APR connector in addition to the ones supported + in the regular HTTP connector: +

    + +
    AttributeDescription
    keepAliveTimeout +

    The number of milliseconds this Connector will wait for + another HTTP request before closing the connection. + The default value is to use the value that has been set for the + connectionTimeout attribute. This value also controls the timeout interval which + is used for Comet connections.

    +
    pollTime +

    Duration of a poll call. Lowering this value will slightly decrease latency of connections + being kept alive in some cases, but will use more CPU as more poll calls are being made. The + default value is 2000 (5ms).

    +
    pollerSize +

    Amount of sockets that the poller responsible for polling kept alive connections can hold at a + given time. Extra connections will be closed right away. The default value is 8192, corresponding to + 8192 keepalive connections.

    +
    useSendfile +

    Use kernel level sendfile for certain static files. The default value is true.

    +
    sendfileSize +

    Amount of sockets that the poller responsible for sending static files asynchronously can hold + at a given time. Extra connections will be closed right away without any data being sent + (resulting in a zero length file on the client side). Note that in most cases, sendfile is a call + that will return right away (being taken care of "synchonously" by the kernel), and the sendfile + poller will not be used, so the amount of static files which can be sent concurrently is much larger + than the specified amount. The default value is 1024.

    +
    + +
    + +
    HTTPS
    + +

    + When APR is enabled, the HTTPS connector will use a socket poller for keepalive, increasing + scalability of the server. It also uses OpenSSL, which may be more optimized than JSSE depending + on the processor being used, and can be complemented with many commercial accelerator components. + Unlike the HTTP connector, the HTTPS connector cannot use sendfile to optimize static file + processing. +

    + +

    + The HTTPS APR connector has the same basic attributes than the HTTP APR connector, but adds + OpenSSL specific ones. For the full details on using OpenSSL, please refer to OpenSSL documentations + and the many books available for it (see the Official OpenSSL + website). The SSL specific attributes for the connector are: +

    + +
    AttributeDescription
    SSLEnabled +

    + Enable SSL on the socket, default value is false. Set this value to true + to enable SSL handshake/encryption/decryption in the APR connector. +

    +
    SSLProtocol +

    + Protocol which may be used for communicating with clients. The default is "all", with + other acceptable values being "SSLv2", "SSLv3", "TLSv1", and "SSLv2+SSLv3". +

    +
    SSLCipherSuite +

    + Ciphers which may be used for communicating with clients. The default is "ALL", with + other acceptable values being a list of ciphers, with ":" used as the delimiter + (see OpenSSL documentation for the list of ciphers supported). +

    +
    SSLCertificateFile +

    + Name of the file that contains the server certificate. The format is PEM-encoded. +

    +
    SSLCertificateKeyFile +

    + Name of the file that contains the server private key. The format is PEM-encoded. + The default value is the value of "SSLCertificateFile" and in this case both certificate + and private key have to be in this file (NOT RECOMMENDED). +

    +
    SSLPassword +

    + Pass phrase for the encrypted private key. If "SSLPassword" is not provided, the callback fonction + should prompt for the pass phrase. +

    +
    SSLVerifyClient +

    + Ask client for certificate. The default is "none", meaning the client will not have the opportunity + to submit a certificate. Other acceptable values include "optional", "require" and "optionalNoCA". +

    +
    SSLVerifyDepth +

    + Maximum verification depth for client certificates. The default is "10". +

    +
    SSLCACertificateFile +

    + See the mod_ssl documentation. +

    +
    SSLCACertificatePath +

    + See the mod_ssl documentation. +

    +
    SSLCertificateChainFile +

    + See the mod_ssl documentation. +

    +
    SSLCARevocationFile +

    + See the mod_ssl documentation. +

    +
    SSLCARevocationPath +

    + See the mod_ssl documentation. +

    +
    + +

    + An example SSL Connector declaration can be: +

    +    <Connector port="443" maxHttpHeaderSize="8192"
    +               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
    +               enableLookups="false" disableUploadTimeout="true"
    +               acceptCount="100" scheme="https" secure="true"
    +               SSLEnabled="true" 
    +               SSLCertificateFile="${catalina.base}/conf/localhost.crt"
    +               SSLCertificateKeyFile="${catalina.base}/conf/localhost.key" />
    +

    + +
    + +
    AJP
    + +

    + When APR is enabled, the AJP connector will use a socket poller for keepalive, increasing + scalability of the server. As AJP is designed around a pool of persistent (or almost + persistent) connections, this will reduce significantly the amount of processing threads + needed by Tomcat. Unlike the HTTP connector, the AJP connector cannot use sendfile to optimize + static file processing. +

    + +

    + The following attributes are supported in the AJP APR connector in addition to the ones supported + in the regular AJP connector: +

    + +
    AttributeDescription
    pollTime +

    Duration of a poll call. Lowering this value will slightly decrease latency of connections + being kept alive in some cases, but will use more CPU as more poll calls are being made. The + default value is 2000 (5ms).

    +
    pollerSize +

    Amount of sockets that the poller responsible for polling kept alive connections can hold at a + given time. Extra connections will be closed right away. The default value is 8192, corresponding to + 8192 keepalive connections.

    +
    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/index.html new file mode 100644 index 0000000..0cfcaa4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/index.html @@ -0,0 +1,35 @@ +Apache Tomcat Architecture - Table of Contents
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Contents

    Apache Tomcat Architecture

    Table of Contents

    Printer Friendly Version
    print-friendly
    version +
    Preface
    + +

    This section of the Tomcat documentation attempts to explain +the architecture and design of the Tomcat server. It includes significant +contributions from several tomcat developers: +

    + + +
    Table of Contents
    + +

    The information presented is divided into the following sections:

    +
      +
    • Overview - + An overview of the Tomcat server architecture with key terms + and concepts.
    • +
    • Server Startup - + A detailed description, with sequence diagrams, of how the Tomcat + server starts up.
    • +
    • Request Process Flow - + A detailed description of how Tomcat handles a request.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/overview.html b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/overview.html new file mode 100644 index 0000000..8e43f35 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/overview.html @@ -0,0 +1,105 @@ +Apache Tomcat Architecture - Architecture Overview
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Contents

    Apache Tomcat Architecture

    Architecture Overview

    Printer Friendly Version
    print-friendly
    version +
    Overview
    +

    +This page provides an overview of the Tomcat server architecture. +

    +
    Terms
    + +
    Server
    +

    +In the Tomcat world, a +Server represents the whole container. +Tomcat provides a default implementation of the +Server interface., +and this is rarely customized by users. +

    +
    + +
    Service
    +

    +A Service is an intermediate component +which lives inside a Server and ties one or more Connectors to exactly one +Engine. The Service element is rarely customized by users, as the default +implementation is simple and sufficient: +Service interface. +

    +
    + +
    Engine
    +

    +An +Engine represents request processing +pipeline for a specific Service. As a Service may have multiple Connectors, +the Engine received and processes all requests from these connectors, handing +the response back to the appropriate connector for transmission to the client. +The Engine interface +may be implemented to supply custom Engines, though this is uncommon. +

    +

    +Note that the Engine may be used for Tomcat server clustering via the +jvmRoute parameter. Read the Clustering documentation for more information. +

    +
    + +
    Host
    +

    +A Host is an association of a network name, +e.g. www.yourcompany.com, to the Tomcat server. An Engine may contain +multiple hosts, and the Host element also supports network aliases such as +yourcompany.com and abc.yourcompany.com. Users rarely create custom +Hosts +because the +StandardHost +implementation provides significant additional functionality. +

    +
    + +
    Connector
    +

    +A Connector handles communications with the client. There are multiple +connectors available with Tomcat, all of which implement the +Connector +interface. These include the +Coyote connector which is used for +most HTTP traffic, especially when running Tomcat as a standalone server, +and the JK2 connector which implements +the AJP procotol used when connecting Tomcat to an Apache HTTPD server. +Creating a customized connector is a significant effort. +

    +
    + +
    Context
    +

    +A +Context +represents a web application. A Host may contain multiple +contexts, each with a unique path. The +Context +interface may be implemented to create custom Contexts, but +this is rarely the case because the + +StandardContext provides significant additional functionality. +

    +
    +
    Comments
    +

    +Tomcat is designed to be a fast and efficient implementation of the +Servlet Specification. Tomcat came about as the reference implementation +of this specification, and has remained rigorous in adhering to the +specification. At the same time, significant attention has been paid +to Tomcat's performance and it is now on par with other servlet containers, +including commercial ones. +

    +

    +In recent releases of Tomcat, mostly starting with Tomcat 5, +we have begun effots to make more aspects of Tomcat managable via +JMX. In addition, the Manager and Admin webapps have been greatly +enhanced and improved. Managability is a primary area of concern +for us as the product matures and the specification becomes more +stable. +

    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/index.html new file mode 100644 index 0000000..ac0b8fa --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/index.html @@ -0,0 +1,34 @@ +Apache Tomcat Architecture - Table of Contents
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Architecture

    Table of Contents

    Preface
    + +

    This section of the Tomcat documentation attempts to explain +the architecture and design of the Tomcat server. It includes significant +contributions from several tomcat developers: +

    + + +
    Table of Contents
    + +

    The information presented is divided into the following sections:

    +
      +
    • Overview - + An overview of the Tomcat server architecture with key terms + and concepts.
    • +
    • Server Startup - + A detailed description, with sequence diagrams, of how the Tomcat + server starts up.
    • +
    • Request Process Flow - + A detailed description of how Tomcat handles a request.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/overview.html b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/overview.html new file mode 100644 index 0000000..1a650b9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/overview.html @@ -0,0 +1,104 @@ +Apache Tomcat Architecture - Architecture Overview
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Architecture

    Architecture Overview

    Overview
    +

    +This page provides an overview of the Tomcat server architecture. +

    +
    Terms
    + +
    Server
    +

    +In the Tomcat world, a +Server represents the whole container. +Tomcat provides a default implementation of the +Server interface., +and this is rarely customized by users. +

    +
    + +
    Service
    +

    +A Service is an intermediate component +which lives inside a Server and ties one or more Connectors to exactly one +Engine. The Service element is rarely customized by users, as the default +implementation is simple and sufficient: +Service interface. +

    +
    + +
    Engine
    +

    +An +Engine represents request processing +pipeline for a specific Service. As a Service may have multiple Connectors, +the Engine received and processes all requests from these connectors, handing +the response back to the appropriate connector for transmission to the client. +The Engine interface +may be implemented to supply custom Engines, though this is uncommon. +

    +

    +Note that the Engine may be used for Tomcat server clustering via the +jvmRoute parameter. Read the Clustering documentation for more information. +

    +
    + +
    Host
    +

    +A Host is an association of a network name, +e.g. www.yourcompany.com, to the Tomcat server. An Engine may contain +multiple hosts, and the Host element also supports network aliases such as +yourcompany.com and abc.yourcompany.com. Users rarely create custom +Hosts +because the +StandardHost +implementation provides significant additional functionality. +

    +
    + +
    Connector
    +

    +A Connector handles communications with the client. There are multiple +connectors available with Tomcat, all of which implement the +Connector +interface. These include the +Coyote connector which is used for +most HTTP traffic, especially when running Tomcat as a standalone server, +and the JK2 connector which implements +the AJP procotol used when connecting Tomcat to an Apache HTTPD server. +Creating a customized connector is a significant effort. +

    +
    + +
    Context
    +

    +A +Context +represents a web application. A Host may contain multiple +contexts, each with a unique path. The +Context +interface may be implemented to create custom Contexts, but +this is rarely the case because the + +StandardContext provides significant additional functionality. +

    +
    +
    Comments
    +

    +Tomcat is designed to be a fast and efficient implementation of the +Servlet Specification. Tomcat came about as the reference implementation +of this specification, and has remained rigorous in adhering to the +specification. At the same time, significant attention has been paid +to Tomcat's performance and it is now on par with other servlet containers, +including commercial ones. +

    +

    +In recent releases of Tomcat, mostly starting with Tomcat 5, +we have begun effots to make more aspects of Tomcat managable via +JMX. In addition, the Manager and Admin webapps have been greatly +enhanced and improved. Managability is a primary area of concern +for us as the product matures and the specification becomes more +stable. +

    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/requestProcess.html b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/requestProcess.html new file mode 100644 index 0000000..248ec45 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/requestProcess.html @@ -0,0 +1,37 @@ +Apache Tomcat Architecture - Request Process Flow
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Architecture

    Request Process Flow

    Request Process Flow
    + +

    +This page describes the process used by Tomcat to handle +an incoming request. This process is largely defined by +the Servlet Specification, which outlines the order +of events that must take place. +

    + +
    description
    +

    +TODO +

    +
    + +
    diagram
    +

    +A UML sequence diagram of the request process is available +here. +

    +
    + +
    comments
    +

    +The Servlet Specification provides many opportunities for +listening in (using Listeners) or modiying (using Filters) +the request handling process even before the request arrives +at the servlet that will handle it. +

    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/startup.html b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/startup.html new file mode 100644 index 0000000..1b1df3b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/printer/startup.html @@ -0,0 +1,41 @@ +Apache Tomcat Architecture - Startup
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Architecture

    Startup

    Server Startup
    + +

    +This page describes how the Tomcat server starts up. There are several +different ways to start tomcat, including: +

      +
    • From the command line.
    • +
    • From a Java program as an embedded server.
    • +
    • Automatically as a Windows service.
    • +
    +

    + +
    description
    +

    +A text description of the startup procedure is available +here. +

    +
    + +
    diagram
    +

    +A UML sequence diagram of the startup procedure is available +here. +

    +
    + +
    comments
    +

    +The startup process can be customized in many ways, both +by modifying Tomcat code and by implementing your own +LifecycleListeners which are then registered in the server.xml +configuration file. +

    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/requestProcess.html b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/requestProcess.html new file mode 100644 index 0000000..82d7aea --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/requestProcess.html @@ -0,0 +1,38 @@ +Apache Tomcat Architecture - Request Process Flow
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Contents

    Apache Tomcat Architecture

    Request Process Flow

    Printer Friendly Version
    print-friendly
    version +
    Request Process Flow
    + +

    +This page describes the process used by Tomcat to handle +an incoming request. This process is largely defined by +the Servlet Specification, which outlines the order +of events that must take place. +

    + +
    description
    +

    +TODO +

    +
    + +
    diagram
    +

    +A UML sequence diagram of the request process is available +here. +

    +
    + +
    comments
    +

    +The Servlet Specification provides many opportunities for +listening in (using Listeners) or modiying (using Filters) +the request handling process even before the request arrives +at the servlet that will handle it. +

    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/requestProcess/requestProcess.pdf b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/requestProcess/requestProcess.pdf new file mode 100644 index 0000000..6a171de Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/requestProcess/requestProcess.pdf differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/requestProcess/roseModel.mdl b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/requestProcess/roseModel.mdl new file mode 100644 index 0000000..64ef567 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/requestProcess/roseModel.mdl @@ -0,0 +1,12921 @@ + +(object Petal + version 45 + _written "Rose 7.6.0109.2314" + charSet 0) + +(object Design "Logical View" + is_unit TRUE + is_loaded TRUE + quid "3DFDF6CE0337" + defaults (object defaults + rightMargin 0.250000 + leftMargin 0.250000 + topMargin 0.250000 + bottomMargin 0.500000 + pageOverlap 0.250000 + clipIconLabels TRUE + autoResize TRUE + snapToGrid TRUE + gridX 16 + gridY 16 + defaultFont (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + showMessageNum 1 + showClassOfObject TRUE + notation "Unified") + root_usecase_package (object Class_Category "Use Case View" + quid "3DFDF6CE0369" + exportControl "Public" + global TRUE + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list + (object UseCaseDiagram "Main" + quid "3DFDF6D201FE" + title "Main" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 0 + items (list diagram_item_list)))) + root_category (object Class_Category "Logical View" + quid "3DFDF6CE0338" + exportControl "Public" + global TRUE + subsystem "Component View" + quidu "3DFDF6CE036A" + logical_models (list unit_reference_list + (object Class_Category "org.apache.catalina" + quid "3E42DE8D0082" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E42DEF601EB" + supplier "Logical View::org.apache.tomcat.util" + quidu "3E42DEDF01F2") + (object Visibility_Relationship + quid "3E42DF700060" + supplier "Logical View::org.apache.coyote" + quidu "3E42DE9F0132") + (object Visibility_Relationship + quid "3E43D165039C" + supplier "Logical View::org.apache.naming" + quidu "3E43D1580339")) + exportControl "Public" + logical_models (list unit_reference_list + (object Class_Category "ant" + quid "3E42DFBB037F" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43CFF7020F" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "authenticator" + quid "3E42DFC702B4" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D03C0395" + supplier "Logical View::org.apache.catalina::deploy" + quidu "3E42DFDC0340") + (object Visibility_Relationship + quid "3E43D03F01C2" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184") + (object Visibility_Relationship + quid "3E43D043024A" + supplier "Logical View::org.apache.catalina::valves" + quidu "3E42E02D035B")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "connector" + quid "3E42DFCF036A" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D07E017D" + supplier "Logical View::org.apache.catalina::session" + quidu "3E42E00C026D")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "core" + quid "3E42DFD603BA" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D19E01A9" + supplier "Logical View::org.apache.catalina::deploy" + quidu "3E42DFDC0340") + (object Visibility_Relationship + quid "3E43D1A10185" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184") + (object Visibility_Relationship + quid "3E43D1CE007C" + supplier "Logical View::org.apache.catalina::connector" + quidu "3E42DFCF036A") + (object Visibility_Relationship + quid "3E43D1D800D0" + supplier "Logical View::org.apache.catalina::security" + quidu "3E42E00100D7") + (object Visibility_Relationship + quid "3E43D25C031F" + supplier "Logical View::org.apache.catalina::mbean" + quidu "3E42DFF10188") + (object Visibility_Relationship + quid "3E43D260028E" + supplier "Logical View::org.apache.catalina::startup" + quidu "3E42E01E00EC") + (object Visibility_Relationship + quid "3E43D26A015C" + supplier "Logical View::org.apache.catalina::session" + quidu "3E42E00C026D") + (object Visibility_Relationship + quid "3E43D2830271" + supplier "Logical View::org.apache.catalina::valves" + quidu "3E42E02D035B") + (object Visibility_Relationship + quid "3E43D2C80248" + supplier "Logical View::org.apache.catalina::net" + quidu "3E42DFF70227") + (object Visibility_Relationship + quid "3E43D2D6002B" + supplier "Logical View::org.apache.catalina::loader" + quidu "3E43D2D002D6") + (object Visibility_Relationship + quid "3E43D3D300F7" + supplier "Logical View::org.apache.naming" + quidu "3E43D1580339")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "deploy" + quid "3E42DFDC0340" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D32001B8" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "launcher" + quid "3E42DFE2033F" + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "logger" + quid "3E42DFEC0285" + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "mbean" + quid "3E42DFF10188" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D49101A5" + supplier "Logical View::org.apache.catalina::deploy" + quidu "3E42DFDC0340") + (object Visibility_Relationship + quid "3E43D4C6027D" + supplier "Logical View::org.apache.catalina::core" + quidu "3E42DFD603BA") + (object Visibility_Relationship + quid "3E43D4FB008F" + supplier "Logical View::org.apache.catalina::session" + quidu "3E42E00C026D") + (object Visibility_Relationship + quid "3E43D50000BE" + supplier "Logical View::org.apache.catalina::valves" + quidu "3E42E02D035B") + (object Visibility_Relationship + quid "3E43D5080278" + supplier "Logical View::org.apache.catalina::realm" + quidu "3E42DFFA00AE") + (object Visibility_Relationship + quid "3E43D55A0258" + supplier "Logical View::org.apache.catalina::logger" + quidu "3E42DFEC0285") + (object Visibility_Relationship + quid "3E43D56000D0" + supplier "Logical View::org.apache.catalina::authenticator" + quidu "3E42DFC702B4")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "net" + quid "3E42DFF70227" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D6390371" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "realm" + quid "3E42DFFA00AE" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D69F0133" + supplier "Logical View::org.apache.catalina::core" + quidu "3E42DFD603BA") + (object Visibility_Relationship + quid "3E43D6A10353" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184") + (object Visibility_Relationship + quid "3E43D70E00E2" + supplier "Logical View::org.apache.naming" + quidu "3E43D1580339") + (object Visibility_Relationship + quid "3E43D72302D7" + supplier "Logical View::org.apache.catalina::deploy" + quidu "3E42DFDC0340")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "security" + quid "3E42E00100D7" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D74D007F" + supplier "Logical View::org.apache.catalina::startup" + quidu "3E42E01E00EC") + (object Visibility_Relationship + quid "3E43D76B0371" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "servlets" + quid "3E42E00502DB" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D82702E5" + supplier "Logical View::org.apache.tomcat.util" + quidu "3E42DEDF01F2") + (object Visibility_Relationship + quid "3E43D82A02CC" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184") + (object Visibility_Relationship + quid "3E43D82D0244" + supplier "Logical View::org.apache.naming" + quidu "3E43D1580339")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "session" + quid "3E42E00C026D" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D8770344" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "ssi" + quid "3E42E01002C3" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D8F902B5" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "startup" + quid "3E42E01E00EC" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D9150251" + supplier "Logical View::org.apache.catalina::logger" + quidu "3E42DFEC0285") + (object Visibility_Relationship + quid "3E43D919018F" + supplier "Logical View::org.apache.catalina::security" + quidu "3E42E00100D7") + (object Visibility_Relationship + quid "3E43D946000D" + supplier "Logical View::org.apache.catalina::core" + quidu "3E42DFD603BA") + (object Visibility_Relationship + quid "3E43D95E012A" + supplier "Logical View::org.apache.catalina::loader" + quidu "3E43D2D002D6") + (object Visibility_Relationship + quid "3E43D9960315" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184") + (object Visibility_Relationship + quid "3E43D99902BF" + supplier "Logical View::org.apache.catalina::valves" + quidu "3E42E02D035B") + (object Visibility_Relationship + quid "3E43D99C0147" + supplier "Logical View::org.apache.catalina::deploy" + quidu "3E42DFDC0340") + (object Visibility_Relationship + quid "3E43D9DA0114" + supplier "Logical View::org.apache.catalina::net" + quidu "3E42DFF70227") + (object Visibility_Relationship + quid "3E43D9F402F2" + supplier "Logical View::org.apache.catalina::realm" + quidu "3E42DFFA00AE")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "user" + quid "3E42E0220174" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43DB240227" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184") + (object Visibility_Relationship + quid "3E43DB31009F" + supplier "Logical View::org.apache.naming" + quidu "3E43D1580339")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "util" + quid "3E42E0260184" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43DB85017C" + supplier "Logical View::org.apache.catalina::core" + quidu "3E42DFD603BA") + (object Visibility_Relationship + quid "3E43DB88016C" + supplier "Logical View::org.apache.naming" + quidu "3E43D1580339")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "valves" + quid "3E42E02D035B" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43DC2B0257" + supplier "Logical View::org.apache.catalina::util" + quidu "3E42E0260184") + (object Visibility_Relationship + quid "3E43DD3E0271" + supplier "Logical View::org.apache.catalina::deploy" + quidu "3E42DFDC0340") + (object Visibility_Relationship + quid "3E43DD4102CF" + supplier "Logical View::org.apache.catalina::connector" + quidu "3E42DFCF036A") + (object Visibility_Relationship + quid "3E43DDDE00B8" + supplier "Logical View::org.apache.catalina::core" + quidu "3E42DFD603BA")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "loader" + quid "3E43D2D002D6" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E43D3CF00F2" + supplier "Logical View::org.apache.naming" + quidu "3E43D1580339")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list))) + logical_presentations (list unit_reference_list + (object ClassDiagram "Main" + quid "3E42DFB6010B" + title "Main" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 0 + items (list diagram_item_list + (object CategoryView "Logical View::org.apache.catalina::ant" @1 + location (2208, 1504) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @1 + location (2064, 1420) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "ant") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DFBB037F" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::authenticator" @2 + location (192, 2000) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @2 + location (48, 1916) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "authenticator") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DFC702B4" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::connector" @3 + location (464, 1328) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @3 + location (320, 1244) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "connector") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DFCF036A" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::core" @4 + location (2224, 800) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @4 + location (2080, 716) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "core") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DFD603BA" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::deploy" @5 + location (240, 160) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @5 + location (96, 76) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "deploy") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DFDC0340" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::launcher" @6 + location (1776, 2480) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @6 + location (1632, 2396) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "launcher") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DFE2033F" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::logger" @7 + location (752, 128) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @7 + location (608, 44) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "logger") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DFEC0285" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::mbean" @8 + location (2208, 1216) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @8 + location (2064, 1132) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "mbean") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DFF10188" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::net" @9 + location (1056, 2496) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @9 + location (912, 2412) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "net") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DFF70227" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::realm" @10 + location (1248, 112) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @10 + location (1104, 28) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "realm") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DFFA00AE" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::security" @11 + location (304, 2496) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @11 + location (160, 2412) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "security") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42E00100D7" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::servlets" @12 + location (2096, 1888) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @12 + location (1952, 1804) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "servlets") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42E00502DB" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::session" @13 + location (432, 1696) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @13 + location (288, 1612) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "session") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42E00C026D" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::ssi" @14 + location (672, 2480) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @14 + location (528, 2393) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "ssi") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42E01002C3" + width 301 + height 187) + (object CategoryView "Logical View::org.apache.catalina::startup" @15 + location (1088, 832) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @15 + location (944, 748) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "startup") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42E01E00EC" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::user" @16 + location (1424, 2496) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @16 + location (1280, 2412) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "user") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42E0220174" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::util" @17 + location (1312, 1872) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @17 + location (1168, 1788) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "util") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42E0260184" + width 300 + height 180) + (object CategoryView "Logical View::org.apache.catalina::valves" @18 + location (304, 704) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @18 + location (160, 620) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "valves") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42E02D035B" + width 300 + height 180) + (object ImportView "" @19 + stereotype TRUE + line_color 3342489 + quidu "3E43CFF7020F" + client @1 + supplier @17 + line_style 0) + (object ImportView "" @20 + stereotype TRUE + line_color 3342489 + quidu "3E43D07E017D" + client @3 + supplier @13 + line_style 0) + (object CategoryView "Logical View::org.apache.catalina::loader" @21 + location (2240, 416) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @21 + location (2096, 332) + fill_color 13434879 + nlines 2 + max_width 288 + justify 0 + label "loader") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E43D2D002D6" + width 300 + height 180) + (object ImportView "" @22 + stereotype TRUE + line_color 3342489 + quidu "3E43D32001B8" + client @5 + supplier @17 + line_style 0) + (object CategoryView "Logical View::org.apache.naming" @23 + location (1872, 96) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @23 + location (1699, 12) + fill_color 13434879 + nlines 2 + max_width 346 + justify 0 + label "org.apache.naming") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E43D1580339" + width 358 + height 180) + (object ImportView "" @24 + stereotype TRUE + line_color 3342489 + quidu "3E43D3CF00F2" + client @21 + supplier @23 + line_style 0) + (object ImportView "" @25 + stereotype TRUE + line_color 3342489 + quidu "3E43D6390371" + client @9 + supplier @17 + line_style 0) + (object ImportView "" @26 + stereotype TRUE + line_color 3342489 + quidu "3E43D69F0133" + client @10 + supplier @4 + line_style 0) + (object ImportView "" @27 + stereotype TRUE + line_color 3342489 + quidu "3E43D6A10353" + client @10 + supplier @17 + line_style 0) + (object ImportView "" @28 + stereotype TRUE + line_color 3342489 + quidu "3E43D70E00E2" + client @10 + supplier @23 + line_style 0) + (object ImportView "" @29 + stereotype TRUE + line_color 3342489 + quidu "3E43D72302D7" + client @10 + supplier @5 + line_style 0) + (object ImportView "" @30 + stereotype TRUE + line_color 3342489 + quidu "3E43D69F0133" + client @10 + supplier @4 + line_style 0) + (object ImportView "" @31 + stereotype TRUE + line_color 3342489 + quidu "3E43D74D007F" + client @11 + supplier @15 + line_style 0) + (object ImportView "" @32 + stereotype TRUE + line_color 3342489 + quidu "3E43D76B0371" + client @11 + supplier @17 + line_style 0) + (object CategoryView "Logical View::org.apache.tomcat.util" @33 + location (2096, 2224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @33 + location (1923, 2140) + fill_color 13434879 + nlines 2 + max_width 346 + justify 0 + label "org.apache.tomcat.util") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DEDF01F2" + width 358 + height 180) + (object ImportView "" @34 + stereotype TRUE + line_color 3342489 + quidu "3E43D8770344" + client @13 + supplier @17 + line_style 0) + (object ImportView "" @35 + stereotype TRUE + line_color 3342489 + quidu "3E43D8F902B5" + client @14 + supplier @17 + line_style 0) + (object ImportView "" @36 + stereotype TRUE + line_color 3342489 + quidu "3E43DB240227" + client @16 + supplier @17 + line_style 0) + (object ImportView "" @37 + stereotype TRUE + line_color 3342489 + quidu "3E43DB31009F" + client @16 + supplier @23 + line_style 0) + (object ImportView "" @38 + stereotype TRUE + line_color 3342489 + quidu "3E43DB85017C" + client @17 + supplier @4 + line_style 0) + (object ImportView "" @39 + stereotype TRUE + line_color 3342489 + quidu "3E43DB88016C" + client @17 + supplier @23 + line_style 0) + (object ImportView "" @40 + stereotype TRUE + line_color 3342489 + quidu "3E43D82702E5" + client @12 + supplier @33 + line_style 0) + (object ImportView "" @41 + stereotype TRUE + line_color 3342489 + quidu "3E43D82A02CC" + client @12 + supplier @17 + line_style 0) + (object ImportView "" @42 + stereotype TRUE + line_color 3342489 + quidu "3E43D82D0244" + client @12 + supplier @23 + vertices (list Points + (2060, 1743) + (1746, 447) + (1838, 186)) + line_style 0) + (object ImportView "" @43 + stereotype TRUE + line_color 3342489 + quidu "3E43D919018F" + client @15 + supplier @11 + line_style 0) + (object ImportView "" @44 + stereotype TRUE + line_color 3342489 + quidu "3E43D946000D" + client @15 + supplier @4 + line_style 0) + (object ImportView "" @45 + stereotype TRUE + line_color 3342489 + quidu "3E43D95E012A" + client @15 + supplier @21 + line_style 0) + (object ImportView "" @46 + stereotype TRUE + line_color 3342489 + quidu "3E43D95E012A" + client @15 + supplier @21 + line_style 0) + (object ImportView "" @47 + stereotype TRUE + line_color 3342489 + quidu "3E43D9960315" + client @15 + supplier @17 + line_style 0) + (object ImportView "" @48 + stereotype TRUE + line_color 3342489 + quidu "3E43D99902BF" + client @15 + supplier @18 + line_style 0) + (object ImportView "" @49 + stereotype TRUE + line_color 3342489 + quidu "3E43D99C0147" + client @15 + supplier @5 + line_style 0) + (object ImportView "" @50 + stereotype TRUE + line_color 3342489 + quidu "3E43D946000D" + client @15 + supplier @4 + line_style 0) + (object ImportView "" @51 + stereotype TRUE + line_color 3342489 + quidu "3E43D9150251" + client @15 + supplier @7 + line_style 0) + (object ImportView "" @52 + stereotype TRUE + line_color 3342489 + quidu "3E43D9DA0114" + client @15 + supplier @9 + line_style 0) + (object ImportView "" @53 + stereotype TRUE + line_color 3342489 + quidu "3E43D9F402F2" + client @15 + supplier @10 + line_style 0) + (object ImportView "" @54 + stereotype TRUE + line_color 3342489 + quidu "3E43D9960315" + client @15 + supplier @17 + line_style 0) + (object ImportView "" @55 + stereotype TRUE + line_color 3342489 + quidu "3E43D946000D" + client @15 + supplier @4 + line_style 0) + (object ImportView "" @56 + stereotype TRUE + line_color 3342489 + quidu "3E43D99C0147" + client @15 + supplier @5 + line_style 0) + (object ImportView "" @57 + stereotype TRUE + line_color 3342489 + quidu "3E43D49101A5" + client @8 + supplier @5 + line_style 0) + (object ImportView "" @58 + stereotype TRUE + line_color 3342489 + quidu "3E43D4C6027D" + client @8 + supplier @4 + line_style 0) + (object ImportView "" @59 + stereotype TRUE + line_color 3342489 + quidu "3E43D4FB008F" + client @8 + supplier @13 + line_style 0) + (object ImportView "" @60 + stereotype TRUE + line_color 3342489 + quidu "3E43D50000BE" + client @8 + supplier @18 + vertices (list Points + (2057, 1216) + (1278, 1216) + (454, 783)) + line_style 0) + (object ImportView "" @61 + stereotype TRUE + line_color 3342489 + quidu "3E43D5080278" + client @8 + supplier @10 + line_style 0) + (object ImportView "" @62 + stereotype TRUE + line_color 3342489 + quidu "3E43D55A0258" + client @8 + supplier @7 + line_style 0) + (object ImportView "" @63 + stereotype TRUE + line_color 3342489 + quidu "3E43D56000D0" + client @8 + supplier @2 + line_style 0) + (object ImportView "" @64 + stereotype TRUE + line_color 3342489 + quidu "3E43D19E01A9" + client @4 + supplier @5 + line_style 0) + (object ImportView "" @65 + stereotype TRUE + line_color 3342489 + quidu "3E43D1A10185" + client @4 + supplier @17 + line_style 0) + (object ImportView "" @66 + stereotype TRUE + line_color 3342489 + quidu "3E43D1CE007C" + client @4 + supplier @3 + line_style 0) + (object ImportView "" @67 + stereotype TRUE + line_color 3342489 + quidu "3E43D1D800D0" + client @4 + supplier @11 + vertices (list Points + (2081, 890) + (959, 1616) + (409, 2351)) + line_style 0) + (object ImportView "" @68 + stereotype TRUE + line_color 3342489 + quidu "3E43D25C031F" + client @4 + supplier @8 + line_style 0) + (object ImportView "" @69 + stereotype TRUE + line_color 3342489 + quidu "3E43D260028E" + client @4 + supplier @15 + line_style 0) + (object ImportView "" @70 + stereotype TRUE + line_color 3342489 + quidu "3E43D26A015C" + client @4 + supplier @13 + line_style 0) + (object ImportView "" @71 + stereotype TRUE + line_color 3342489 + quidu "3E43D2830271" + client @4 + supplier @18 + line_style 0) + (object ImportView "" @72 + stereotype TRUE + line_color 3342489 + quidu "3E43D2C80248" + client @4 + supplier @9 + line_style 0) + (object ImportView "" @73 + stereotype TRUE + line_color 3342489 + quidu "3E43D2D6002B" + client @4 + supplier @21 + line_style 0) + (object ImportView "" @74 + stereotype TRUE + line_color 3342489 + quidu "3E43D3D300F7" + client @4 + supplier @23 + line_style 0) + (object ImportView "" @75 + stereotype TRUE + line_color 3342489 + quidu "3E43D03C0395" + client @2 + supplier @5 + vertices (list Points + (171, 1855) + (16, 766) + (205, 250)) + line_style 0) + (object ImportView "" @76 + stereotype TRUE + line_color 3342489 + quidu "3E43D03F01C2" + client @2 + supplier @17 + line_style 0) + (object ImportView "" @77 + stereotype TRUE + line_color 3342489 + quidu "3E43D043024A" + client @2 + supplier @18 + line_style 0) + (object ImportView "" @78 + stereotype TRUE + line_color 3342489 + quidu "3E43DC2B0257" + client @18 + supplier @17 + line_style 0) + (object ImportView "" @79 + stereotype TRUE + line_color 3342489 + quidu "3E43DD3E0271" + client @18 + supplier @5 + line_style 0) + (object ImportView "" @80 + stereotype TRUE + line_color 3342489 + quidu "3E43DD4102CF" + client @18 + supplier @3 + line_style 0) + (object ImportView "" @81 + stereotype TRUE + line_color 3342489 + quidu "3E43DDDE00B8" + client @18 + supplier @4 + vertices (list Points + (454, 654) + (1293, 381) + (2073, 731)) + line_style 0))))) + (object Class_Category "org.apache.coyote" + quid "3E42DE9F0132" + visible_categories (list visibility_relationship_list + (object Visibility_Relationship + quid "3E42DEFC00B3" + supplier "Logical View::org.apache.tomcat.util" + quidu "3E42DEDF01F2")) + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "org.apache.tomcat.util" + quid "3E42DEDF01F2" + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "org.apache.jasper" + quid "3E42DEFF0270" + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Class_Category "org.apache.naming" + quid "3E43D1580339" + exportControl "Public" + logical_models (list unit_reference_list) + logical_presentations (list unit_reference_list)) + (object Mechanism @82 + logical_models (list unit_reference_list + (object Object "Bootstrap" + quid "3DFDF8FD0345" + collaborators (list link_list + (object Link + quid "3DFDF9210008" + supplier "Bootstrap" + quidu "3DFDF8FD0345" + messages (list Messages + (object Message "initClassLoaders()" + quid "3DFDF9210009" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1" + ordinal 0 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFDF91A010C" + supplier "Catalina" + quidu "3DFDF90A0330" + messages (list Messages + (object Message "newInstance()" + quid "3DFDF91A010D" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2" + ordinal 1 + quidu "000000000000" + creation FALSE) + (object Message "setParentClassLoader()" + quid "3DFDF97900C2" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3" + ordinal 2 + quidu "000000000000" + creation FALSE) + (object Message "load()" + quid "3DFDFA3402F2" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "4" + ordinal 3 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "Digester" + quid "3DFDFAF201A1" + collaborators (list link_list + (object Link + quid "3DFDFB8400A6" + supplier "ServerLifecycleListener" + quidu "3DFDFB4B0217" + messages (list Messages + (object Message "newInstance()" + quid "3DFDFB8400A7" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "9.1" + ordinal 9 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFDFB920147" + supplier "GlobalResourcesLifecycleListener" + quidu "3DFDFB7A02AB" + messages (list Messages + (object Message "newInstance()" + quid "3DFDFB920148" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "9.2" + ordinal 10 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "ServerLifecycleListener" + quid "3DFDFB4B0217" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "GlobalResourcesLifecycleListener" + quid "3DFDFB7A02AB" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "SecurityConfig" + quid "3DFDFBD802BA" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "Catalina" + quid "3DFDF90A0330" + collaborators (list link_list + (object Link + quid "3DFDFA8001D9" + supplier "Catalina" + quidu "3DFDF90A0330" + messages (list Messages + (object Message "initDirs()" + quid "3DFDFA8001DA" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "5" + ordinal 4 + quidu "000000000000" + creation FALSE) + (object Message "initNaming()" + quid "3DFDFA8B0347" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "6" + ordinal 5 + quidu "000000000000" + creation FALSE) + (object Message "initialize()" + quid "3DFDFAAD01AC" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "7" + ordinal 6 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFDFAF800C3" + supplier "Digester" + quidu "3DFDFAF201A1" + messages (list Messages + (object Message "createDigester()" + quid "3DFDFAF800C4" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8" + ordinal 7 + quidu "000000000000" + creation FALSE) + (object Message "parse()" + quid "3DFDFB0100B2" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "9" + ordinal 8 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFDFBEA00C1" + supplier "SecurityConfig" + quidu "3DFDFBD802BA" + messages (list Messages + (object Message "newInstance()" + quid "3DFDFBEA00C2" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "10" + ordinal 11 + quidu "000000000000" + creation FALSE) + (object Message "setPackageDefinition()" + quid "3DFDFBF401F2" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "11" + ordinal 12 + Operation "setPackageDefinition" + quidu "000000000000" + creation FALSE) + (object Message "setPackageAccess()" + quid "3DFDFC1203C2" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "12" + ordinal 13 + Operation "setPackageAccess" + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE))) + (object Mechanism @83 + logical_models (list unit_reference_list + (object Object "Catalina" + quid "3DFDFC8F015F" + collaborators (list link_list + (object Link + quid "3DFDFD1F0075" + supplier "StandardServer" + quidu "3DFDFCCB006B" + messages (list Messages + (object Message "initialize()" + quid "3DFDFD1F0076" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1" + ordinal 0 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardServer" + quid "3DFDFCCB006B" + collaborators (list link_list + (object Link + quid "3DFDFD3D01C3" + supplier "StandardService" + quidu "3DFDFD370020" + messages (list Messages + (object Message "initialize()" + quid "3DFDFD3D01C4" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2" + ordinal 1 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardService" + quid "3DFDFD370020" + collaborators (list link_list + (object Link + quid "3DFDFE990304" + supplier "CoyoteConnector" + quidu "3DFDFE810313" + messages (list Messages + (object Message "initialize()" + quid "3DFDFE990305" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.1" + ordinal 2 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "CoyoteConnector" + quid "3DFDFE810313" + collaborators (list link_list + (object Link + quid "3DFE013D0216" + supplier "CoyoteAdapter" + quidu "3DFDFFA00226" + messages (list Messages + (object Message "new()" + quid "3DFE013D0217" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.1.1" + ordinal 3 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE0183032F" + supplier "Http11Protocol" + quidu "3DFE016601A6" + messages (list Messages + (object Message "new()" + quid "3DFE01830330" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.1.2" + ordinal 4 + quidu "000000000000" + creation FALSE) + (object Message "init()" + quid "3DFE0188032C" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.1.3" + ordinal 5 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE01BC038B" + supplier "JkCoyoteAdapter" + quidu "3DFE01AD01A8" + messages (list Messages + (object Message "new()" + quid "3DFE01BC038C" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.1.4" + ordinal 6 + quidu "000000000000" + creation FALSE) + (object Message "init()" + quid "3DFE01C30164" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.1.5" + ordinal 7 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "CoyoteAdapter" + quid "3DFDFFA00226" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "Http11Protocol" + quid "3DFE016601A6" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "JkCoyoteAdapter" + quid "3DFE01AD01A8" + persistence "Transient" + creationObj FALSE + multi FALSE))) + (object Mechanism @84 + logical_models (list unit_reference_list + (object Object "Bootstrap" + quid "3DFE027700F5" + collaborators (list link_list + (object Link + quid "3DFE02830373" + supplier "Catalina" + quidu "3DFE027D0067" + messages (list Messages + (object Message "start()" + quid "3DFE02830374" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1" + ordinal 0 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "Catalina" + quid "3DFE027D0067" + collaborators (list link_list + (object Link + quid "3DFE02BA0187" + supplier "StandardServer" + quidu "3DFE02B30015" + messages (list Messages + (object Message "start()" + quid "3DFE02BA0188" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1" + ordinal 1 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardServer" + quid "3DFE02B30015" + collaborators (list link_list + (object Link + quid "3DFE02D3006B" + supplier "StandardServer" + quidu "3DFE02B30015" + messages (list Messages + (object Message "fireLifecycleEvent(BEFORE_START_EVENT)" + quid "3DFE02D3006C" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.1" + ordinal 2 + quidu "000000000000" + creation FALSE) + (object Message "fireLifecycleEvent(START_EVENT)" + quid "3DFE02DF02DF" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.2" + ordinal 3 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE030C02B2" + supplier "StandardService" + quidu "3DFE030400E3" + messages (list Messages + (object Message "start()" + quid "3DFE030C02B3" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.3" + ordinal 4 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardService" + quid "3DFE030400E3" + collaborators (list link_list + (object Link + quid "3DFE031D0021" + supplier "StandardService" + quidu "3DFE030400E3" + messages (list Messages + (object Message "fireLifecycleEvent(BEFORE_START_EVENT)" + quid "3DFE031D0022" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.3.1" + ordinal 5 + quidu "000000000000" + creation FALSE) + (object Message "fireLifecycleEvent(START_EVENT)" + quid "3DFE0330019B" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.3.2" + ordinal 6 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE03700189" + supplier "StandardEngine" + quidu "3DFE034700C2" + messages (list Messages + (object Message "start()" + quid "3DFE0370018A" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.3.3" + ordinal 7 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardEngine" + quid "3DFE034700C2" + collaborators (list link_list + (object Link + quid "3DFE03750050" + supplier "StandardEngine" + quidu "3DFE034700C2" + messages (list Messages + (object Message "fireLifecycleEvent(BEFORE_START_EVENT)" + quid "3DFE03750051" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2" + ordinal 8 + quidu "000000000000" + creation FALSE) + (object Message "addDefaultMapper()" + quid "3DFE0389001C" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3" + ordinal 9 + quidu "000000000000" + creation FALSE) + (object Message "logger.start()" + quid "3DFE03980281" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "4" + ordinal 10 + quidu "000000000000" + creation FALSE) + (object Message "realm.start()" + quid "3DFE03A80107" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "5" + ordinal 11 + quidu "000000000000" + creation FALSE) + (object Message "findMappers()" + quid "3DFE03BD000D" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "6" + ordinal 12 + quidu "000000000000" + creation FALSE) + (object Message "findChildren()" + quid "3DFE03E000A4" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "7" + ordinal 13 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE03FB0279" + supplier "StandardHost" + quidu "3DFE03F2035D" + messages (list Messages + (object Message "start()" + quid "3DFE03FB027A" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8" + ordinal 14 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardHost" + quid "3DFE03F2035D" + collaborators (list link_list + (object Link + quid "3DFE043B02AD" + supplier "StandardHost" + quidu "3DFE03F2035D" + messages (list Messages + (object Message "fireLifecycleEvent(BEFORE_START_EVENT)" + quid "3DFE043B02AE" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8.1" + ordinal 15 + quidu "000000000000" + creation FALSE) + (object Message "addDefaultMapper()" + quid "3DFE045C021F" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8.2" + ordinal 16 + quidu "000000000000" + creation FALSE) + (object Message "logger.start()" + quid "3DFE049B000C" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8.3" + ordinal 17 + quidu "000000000000" + creation FALSE) + (object Message "findMapper()" + quid "3DFE04A303BB" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8.4" + ordinal 18 + quidu "000000000000" + creation FALSE) + (object Message "findChildren()" + quid "3DFE04A90342" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8.5" + ordinal 19 + Operation "findChildren" + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE048E00B8" + supplier "StandardPipeline" + quidu "3DFE047D006D" + messages (list Messages + (object Message "start()" + quid "3DFE048E00B9" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8.6" + ordinal 20 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardPipeline" + quid "3DFE047D006D" + collaborators (list link_list + (object Link + quid "3DFE05780137" + supplier "StandardPipeline" + quidu "3DFE047D006D" + messages (list Messages + (object Message "fireLifecycleEvent(BEFORE_START_EVENT)" + quid "3DFE05780138" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8.6.1" + ordinal 21 + Operation "fireLifecycleEvent(AFTER_START_EVENT)" + quidu "000000000000" + creation FALSE) + (object Message "fireLifecycleEvent(START_EVENT)" + quid "3DFE05A80398" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8.6.2" + ordinal 22 + Operation "fireLifecycleEvent(BEFORE_START_EVENT)" + quidu "000000000000" + creation FALSE) + (object Message "fireLifecycleEvent(AFTER_EVENT)" + quid "3DFE05BA0196" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "8.6.3" + ordinal 23 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE))) + (object Mechanism @85 + logical_models (list unit_reference_list + (object Object "StandardHost" + quid "3DFE0538017B" + collaborators (list link_list + (object Link + quid "3DFE066C0340" + supplier "StandardHost" + quidu "3DFE0538017B" + messages (list Messages + (object Message "fireLifecycleEvent(START_EVENT)" + quid "3DFE066C0341" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1" + ordinal 0 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE06D20293" + supplier "HostConfig" + quidu "3DFE06A60131" + messages (list Messages + (object Message "interested[i].lifecycleEvent()" + quid "3DFE06D20294" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2" + ordinal 1 + quidu "000000000000" + creation FALSE) + (object Message "install()" + quid "3DFE078B03BB" + frequency "Aperiodic" + synchronization "Simple" + dir "ToClientFromSupplier" + sequence "2.6" + ordinal 7 + quidu "000000000000" + creation FALSE) + (object Message "install()" + quid "3DFE132D0309" + frequency "Aperiodic" + synchronization "Simple" + dir "ToClientFromSupplier" + sequence "5" + ordinal 13 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE07B100BD" + supplier "StandardHostDeployer" + quidu "3DFE079A0055" + messages (list Messages + (object Message "install()" + quid "3DFE07B100BE" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3" + ordinal 8 + quidu "000000000000" + creation FALSE) + (object Message "install() // same as above" + quid "3DFE133A036C" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "6" + ordinal 17 + Operation "install()" + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "HostConfig" + quid "3DFE06A60131" + collaborators (list link_list + (object Link + quid "3DFE06E9028C" + supplier "HostConfig" + quidu "3DFE06A60131" + messages (list Messages + (object Message "setDeployXML()" + quid "3DFE06E9028D" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.1" + ordinal 2 + quidu "000000000000" + creation FALSE) + (object Message "setLiveDeploy()" + quid "3DFE06F300FF" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.2" + ordinal 3 + quidu "000000000000" + creation FALSE) + (object Message "setUnpacksWar()" + quid "3DFE06FB00D9" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.3" + ordinal 4 + quidu "000000000000" + creation FALSE) + (object Message "setXMLValidation()" + quid "3DFE070C0015" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.4" + ordinal 5 + quidu "000000000000" + creation FALSE) + (object Message "deployDescriptors()" + quid "3DFE073B0031" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2.5" + ordinal 6 + quidu "000000000000" + creation FALSE) + (object Message "deployApps()" + quid "3DFE131F0327" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "4" + ordinal 12 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardHostDeployer" + quid "3DFE079A0055" + collaborators (list link_list + (object Link + quid "3DFE07D200EC" + supplier "Digester" + quidu "3DFE07C9034C" + messages (list Messages + (object Message "create()" + quid "3DFE07D200ED" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1" + ordinal 9 + quidu "000000000000" + creation FALSE) + (object Message "parse()" + quid "3DFE07D603D7" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.6" + ordinal 16 + quidu "000000000000" + creation FALSE) + (object Message "add(ContextRuleSet)" + quid "3DFE08FA003D" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.3" + ordinal 11 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE087D01E2" + supplier "StandardHostDeployer" + quidu "3DFE079A0055") + (object Link + quid "3DFE08DA029A" + supplier "ContextRuleSet" + quidu "3DFE0834016F" + messages (list Messages + (object Message "new()" + quid "3DFE08DA029B" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.2" + ordinal 10 + quidu "000000000000" + creation FALSE) + (object Message "add(NamingRuleSet())" + quid "3DFE0907015F" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.5" + ordinal 15 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE08E00090" + supplier "NamingRuleSet" + quidu "3DFE08D00173" + messages (list Messages + (object Message "new()" + quid "3DFE08E00091" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.4" + ordinal 14 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "Digester" + quid "3DFE07C9034C" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "ContextRuleSet" + quid "3DFE0834016F" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "NamingRuleSet" + quid "3DFE08D00173" + persistence "Transient" + creationObj FALSE + multi FALSE))) + (object Mechanism @86 + logical_models (list unit_reference_list + (object Object "Digester" + quid "3DFE095A0371" + collaborators (list link_list + (object Link + quid "3DFE0E7801DA" + supplier "Digester" + quidu "3DFE095A0371" + messages (list Messages + (object Message "parse" + quid "3DFE0E7801DB" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1" + ordinal 0 + quidu "000000000000" + creation FALSE) + (object Message "startElement()" + quid "3DFE0F2F03D2" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2" + ordinal 1 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE0F400213" + supplier "Rule" + quidu "3DFE0E7400D0" + messages (list Messages + (object Message "begin()" + quid "3DFE0F400214" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3" + ordinal 2 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "Rule" + quid "3DFE0E7400D0" + collaborators (list link_list + (object Link + quid "3DFE0FD30265" + supplier "StandardContext" + quidu "3DFE0FC502A1" + messages (list Messages + (object Message "newInstance()" + quid "3DFE0FD30266" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1" + ordinal 3 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE102002E8" + supplier "SetPropertiesRule" + quidu "3DFE100303A4" + messages (list Messages + (object Message "begin()" + quid "3DFE102002E9" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.2" + ordinal 6 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE127F0024" + supplier "Rule" + quidu "3DFE0E7400D0") + (object Link + quid "3DFE128501C7" + supplier "SetNextRule" + quidu "3DFE12690267" + messages (list Messages + (object Message "end()" + quid "3DFE128501C8" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.3" + ordinal 8 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardContext" + quid "3DFE0FC502A1" + collaborators (list link_list + (object Link + quid "3DFE114A0192" + supplier "StandardPipeline" + quidu "3DFE112F003F" + messages (list Messages + (object Message "setBasic(StandardContextValve)" + quid "3DFE114A0193" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.2" + ordinal 5 + Operation "setBasic" + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE115E001E" + supplier "StandardContextValve" + quidu "3DFE110D0375" + messages (list Messages + (object Message "new()" + quid "3DFE115E001F" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1" + ordinal 4 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "SetPropertiesRule" + quid "3DFE100303A4" + collaborators (list link_list + (object Link + quid "3DFE11D50390" + supplier "StandardContext" + quidu "3DFE0FC502A1" + messages (list Messages + (object Message "//Using BeanUtil, set the object properties (from ex: admin.xml)" + quid "3DFE11D50391" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.2.1" + ordinal 7 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardContextValve" + quid "3DFE110D0375" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardPipeline" + quid "3DFE112F003F" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "SetNextRule" + quid "3DFE12690267" + persistence "Transient" + creationObj FALSE + multi FALSE))) + (object Mechanism @87 + logical_models (list unit_reference_list + (object Object "StandardContext" + quid "3DFE196D00D9" + collaborators (list link_list + (object Link + quid "3DFE200603BD" + supplier "WebappLoader" + quidu "3DFE1FFA0347" + messages (list Messages + (object Message "new" + quid "3DFE200603BE" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.1" + ordinal 5 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE200C0299" + supplier "StandardContext" + quidu "3DFE196D00D9" + messages (list Messages + (object Message "setLoader" + quid "3DFE200C029A" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.2" + ordinal 6 + quidu "000000000000" + creation FALSE) + (object Message "setManager" + quid "3DFE2032001C" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.4" + ordinal 8 + quidu "000000000000" + creation FALSE) + (object Message "fireLifecycleEvent(START_EVENT)" + quid "3DFE205B01A2" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.5" + ordinal 9 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE202C024F" + supplier "StandardManager" + quidu "3DFE201F0105" + messages (list Messages + (object Message "new" + quid "3DFE202C0250" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.3" + ordinal 7 + quidu "000000000000" + creation FALSE) + (object Message "start()" + quid "3DFE20B600E5" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.7" + ordinal 12 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE20960002" + supplier "ContextConfig" + quidu "3DFE2087028C" + messages (list Messages + (object Message " // Notify interested LifecycleListeners" + quid "3DFE20960003" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.6" + ordinal 10 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardHostDeployer" + quid "3DFE1D8A02DC" + collaborators (list link_list + (object Link + quid "3DFE1FAF0014" + supplier "StandardHost" + quidu "3DFE1DF20141" + messages (list Messages + (object Message "addChild" + quid "3DFE1FB60277" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1" + ordinal 3 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardHost" + quid "3DFE1DF20141" + collaborators (list link_list + (object Link + quid "3DFE1FC40227" + supplier "StandardContext" + quidu "3DFE196D00D9" + messages (list Messages + (object Message "start()" + quid "3DFE1FC40228" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1" + ordinal 4 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "WebappLoader" + quid "3DFE1FFA0347" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardManager" + quid "3DFE201F0105" + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "ContextConfig" + quid "3DFE2087028C" + collaborators (list link_list + (object Link + quid "3DFE20CF018B" + supplier "ContextConfig" + quidu "3DFE2087028C" + messages (list Messages + (object Message "start()" + quid "3DFE20CF018C" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.6.1" + ordinal 11 + quidu "000000000000" + creation FALSE) + (object Message "defaultConfig()" + quid "3DFE20E303E2" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.6.2" + ordinal 13 + quidu "000000000000" + creation FALSE) + (object Message "applicationConfig()" + quid "3DFE211D01A1" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.6.3" + ordinal 14 + Operation "applicationConfig" + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE21B60287" + supplier "Digester" + quidu "3DFE13960364" + messages (list Messages + (object Message "create()" + quid "3DFE21B60288" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.6.3.1" + ordinal 15 + quidu "000000000000" + creation FALSE) + (object Message "createWarpper() // Invoked by a WebWrapperRule (not Directly by the Digester)" + quid "3DFE228B03BA" + frequency "Aperiodic" + synchronization "Simple" + dir "ToClientFromSupplier" + sequence "3.1.1.6.3.1.2" + ordinal 17 + Operation "createWarpper() // Invoked by a Rule (not Directly by the Digester)" + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE22560061" + supplier "StandardWrapper" + quidu "3DFE220C0122" + messages (list Messages + (object Message "new" + quid "3DFE229A0004" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.6.3.1.2.1" + ordinal 18 + quidu "000000000000" + creation FALSE) + (object Message "addInstanceListener()" + quid "3DFE22A700C1" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.6.3.2" + ordinal 19 + Operation "addInstanceListener" + quidu "000000000000" + creation FALSE) + (object Message "addLifecycleListener()" + quid "3DFE22C701CC" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.6.3.3" + ordinal 20 + quidu "000000000000" + creation FALSE) + (object Message "addContainerListener()" + quid "3DFE22E80364" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.6.3.4" + ordinal 21 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj TRUE + multi FALSE) + (object Object "Digester" + quid "3DFE13960364" + collaborators (list link_list + (object Link + quid "3DFE19AE0064" + supplier "Digester" + quidu "3DFE13960364" + messages (list Messages + (object Message "parse" + quid "3DFE19AE0065" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1" + ordinal 0 + quidu "000000000000" + creation FALSE) + (object Message "startElement()" + quid "3DFE19B102E9" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2" + ordinal 1 + quidu "000000000000" + creation FALSE) + (object Message "// Process web.xml * tld.xml" + quid "3DFE21BE021B" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1.1.6.3.1.1" + ordinal 16 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE1DFB0021" + supplier "StandardHostDeployer" + quidu "3DFE1D8A02DC" + messages (list Messages + (object Message "addChild" + quid "3DFE1DFB0022" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3" + ordinal 2 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE22190225" + supplier "StandardWrapper" + quidu "3DFE220C0122")) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardWrapper" + quid "3DFE220C0122" + persistence "Transient" + creationObj FALSE + multi FALSE))) + (object Mechanism @88 + logical_models (list unit_reference_list + (object Object "ThreadPool" + quid "3DFE402B02C5" + collaborators (list link_list + (object Link + quid "3DFE40E701AD" + supplier "TcpWorkerThread" + quidu "3DFE403200F8" + messages (list Messages + (object Message "runIt()" + quid "3DFE40E701AE" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1" + ordinal 0 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "TcpWorkerThread" + quid "3DFE403200F8" + collaborators (list link_list + (object Link + quid "3DFE40FC010D" + supplier "Http11Protocol" + quidu "3DFE40750177" + messages (list Messages + (object Message "processConnection" + quid "3DFE40FC010E" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1" + ordinal 1 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "Http11Protocol" + quid "3DFE40750177" + collaborators (list link_list + (object Link + quid "3DFE4111029E" + supplier "Http11Protocol" + quidu "3DFE40750177" + messages (list Messages + (object Message "process()" + quid "3DFE4111029F" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.1" + ordinal 2 + quidu "000000000000" + creation FALSE) + (object Message "parseHeaders()" + quid "3DFE415C0151" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2" + ordinal 3 + quidu "000000000000" + creation FALSE) + (object Message "prepareRequest()" + quid "3DFE41A60161" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3" + ordinal 4 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE41D60106" + supplier "CoyoteAdapter" + quidu "3DFE410600DF" + messages (list Messages + (object Message "service()" + quid "3DFE41D60107" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "4" + ordinal 5 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "CoyoteAdapter" + quid "3DFE410600DF" + collaborators (list link_list + (object Link + quid "3DFE422C01F0" + supplier "CoyoteAdapter" + quidu "3DFE410600DF" + messages (list Messages + (object Message "postParseRequest()" + quid "3DFE422C01F1" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "5" + ordinal 6 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE42800237" + supplier "StandardEngine" + quidu "3DFE424B0349" + messages (list Messages + (object Message "invoke()" + quid "3DFE42800238" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "6" + ordinal 7 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardEngine" + quid "3DFE424B0349" + collaborators (list link_list + (object Link + quid "3DFE429A002C" + supplier "StandardPipeline" + quidu "3DFE42900045" + messages (list Messages + (object Message "invoke()" + quid "3DFE429A002D" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "6.1" + ordinal 8 + Operation "invoke" + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardPipeline" + quid "3DFE42900045" + collaborators (list link_list + (object Link + quid "3DFE42CE022F" + supplier "StandardValveContext" + quidu "3DFE42C002B1" + messages (list Messages + (object Message "invoke()" + quid "3DFE42CE0230" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "6.1.1" + ordinal 9 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardValveContext" + quid "3DFE42C002B1" + persistence "Transient" + creationObj FALSE + multi FALSE))) + (object Mechanism @89 + logical_models (list unit_reference_list + (object Object "StandardContextValve" + quid "3DFE4307001E" + collaborators (list link_list + (object Link + quid "3DFE434C019A" + supplier "StandardEngineValve" + quidu "3DFE432801F3" + messages (list Messages + (object Message "invoke()" + quid "3DFE434C019B" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1" + ordinal 0 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE43C203A3" + supplier "ErrorReportValve" + quidu "3DFE438C028D" + messages (list Messages + (object Message "invoke()" + quid "3DFE43C203A4" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3" + ordinal 4 + quidu "000000000000" + creation FALSE) + (object Message "invokeNext()" + quid "3DFE46330293" + frequency "Aperiodic" + synchronization "Simple" + dir "ToClientFromSupplier" + sequence "3.2" + ordinal 6 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE46E70025" + supplier "ErrorDispatcherValve" + quidu "3DFE451F01EC" + messages (list Messages + (object Message "invoke()" + quid "3DFE46E70026" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "4" + ordinal 7 + quidu "000000000000" + creation FALSE) + (object Message "invokeNext" + quid "3DFE475D03A0" + frequency "Aperiodic" + synchronization "Simple" + dir "ToClientFromSupplier" + sequence "4.1" + ordinal 8 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE476503C9" + supplier "StandardHostValve" + quidu "3DFE47310130" + messages (list Messages + (object Message "invoke()" + quid "3DFE476503CA" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "5" + ordinal 9 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardEngineValve" + quid "3DFE432801F3" + collaborators (list link_list + (object Link + quid "3DFE436C009C" + supplier "StandardHost" + quidu "3DFE436503BD" + messages (list Messages + (object Message "map()" + quid "3DFE436C009D" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1" + ordinal 1 + quidu "000000000000" + creation FALSE) + (object Message "invoke()" + quid "3DFE43830063" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.2" + ordinal 2 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE437F0143" + supplier "StandardEngineValve" + quidu "3DFE432801F3")) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardHost" + quid "3DFE436503BD" + collaborators (list link_list + (object Link + quid "3DFE43B903BE" + supplier "StandardContextValve" + quidu "3DFE4307001E" + messages (list Messages + (object Message "invoke()" + quid "3DFE43B903BF" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "2" + ordinal 3 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "ErrorReportValve" + quid "3DFE438C028D" + collaborators (list link_list + (object Link + quid "3DFE442501B0" + supplier "ErrorReportValve" + quidu "3DFE438C028D" + messages (list Messages + (object Message "report()" + quid "3DFE442501B1" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "3.1" + ordinal 5 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE452A00F7" + supplier "ErrorDispatcherValve" + quidu "3DFE451F01EC")) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "ErrorDispatcherValve" + quid "3DFE451F01EC" + collaborators (list link_list + (object Link + quid "3DFE47500148" + supplier "StandardHostValve" + quidu "3DFE47310130") + (object Link + quid "3DFE47580335" + supplier "ErrorDispatcherValve" + quidu "3DFE451F01EC")) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardHostValve" + quid "3DFE47310130" + collaborators (list link_list + (object Link + quid "3DFE47CD0166" + supplier "StandardHostValve" + quidu "3DFE47310130" + messages (list Messages + (object Message "map() //Context" + quid "3DFE47CD0167" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "5.1" + ordinal 10 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE47D500B3" + supplier "StandardContext" + quidu "3DFE47C100F1" + messages (list Messages + (object Message "invoke()" + quid "3DFE47D500B4" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "5.2" + ordinal 11 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardContext" + quid "3DFE47C100F1" + persistence "Transient" + creationObj FALSE + multi FALSE))) + (object Mechanism @90 + logical_models (list unit_reference_list + (object Object "StandardContext" + quid "3DFE48B001D1" + collaborators (list link_list + (object Link + quid "3DFE48BE0267" + supplier "StandardPipeline" + quidu "3DFE48B80088" + messages (list Messages + (object Message "invoke()" + quid "3DFE48BE0268" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1" + ordinal 0 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardPipeline" + quid "3DFE48B80088" + collaborators (list link_list + (object Link + quid "3DFE48EA0039" + supplier "StandardValveContext" + quidu "3DFE48D000DC" + messages (list Messages + (object Message "invoke()" + quid "3DFE48EA003A" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1" + ordinal 1 + quidu "000000000000" + creation FALSE) + (object Message "invoke()" + quid "3DFE4976015D" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.2" + ordinal 6 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardValveContext" + quid "3DFE48D000DC" + collaborators (list link_list + (object Link + quid "3DFE491102D5" + supplier "StandardContextValve" + quidu "3DFE490303A7" + messages (list Messages + (object Message "invoke()" + quid "3DFE491102D6" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.1" + ordinal 2 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE4993023B" + supplier "StandardWrapperValve" + quidu "3DFE49890056" + messages (list Messages + (object Message "invoke()" + quid "3DFE4993023C" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.2.1" + ordinal 7 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardContextValve" + quid "3DFE490303A7" + collaborators (list link_list + (object Link + quid "3DFE492F033C" + supplier "StandardContextValve" + quidu "3DFE490303A7" + messages (list Messages + (object Message "map //return Wrapper" + quid "3DFE492F033D" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.1.1" + ordinal 3 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE494A0150" + supplier "StandardWrapper" + quidu "3DFE49370351" + messages (list Messages + (object Message "invoke()" + quid "3DFE494A0151" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.1.2" + ordinal 4 + Operation "invoke" + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardWrapper" + quid "3DFE49370351" + collaborators (list link_list + (object Link + quid "3DFE495F0287" + supplier "StandardPipeline" + quidu "3DFE48B80088" + messages (list Messages + (object Message "invoke()" + quid "3DFE495F0288" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.1.1.2.1" + ordinal 5 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "StandardWrapperValve" + quid "3DFE49890056" + collaborators (list link_list + (object Link + quid "3DFE49DB018A" + supplier "StandardWrapperValve" + quidu "3DFE49890056") + (object Link + quid "3DFE49EC004E" + supplier "StandardWrapper" + quidu "3DFE49370351" + messages (list Messages + (object Message "allocate()" + quid "3DFE49EC004F" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.2.1.1" + ordinal 8 + quidu "000000000000" + creation FALSE) + (object Message "return servlet" + quid "3DFE4A200067" + frequency "Aperiodic" + synchronization "Return" + dir "ToClientFromSupplier" + sequence "1.2.1.1.1" + ordinal 9 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE4A29027D" + supplier "ApplicationFilterChain" + quidu "3DFE4A1500B2" + messages (list Messages + (object Message "createFilterChain()" + quid "3DFE4A29027E" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.2.1.1.1.1" + ordinal 10 + quidu "000000000000" + creation FALSE) + (object Message "doFilter()" + quid "3DFE4A490283" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.2.1.2" + ordinal 11 + Operation "doFilter" + quidu "000000000000" + creation FALSE) + (object Message "return" + quid "3DFE4CB4025B" + frequency "Aperiodic" + synchronization "Return" + dir "ToClientFromSupplier" + sequence "1.2.1.2.3" + ordinal 14 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "ApplicationFilterChain" + quid "3DFE4A1500B2" + collaborators (list link_list + (object Link + quid "3DFE4C2701C2" + supplier "ApplicationFilterChain" + quidu "3DFE4A1500B2" + messages (list Messages + (object Message "internalDoFilter()" + quid "3DFE4C2701C3" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.2.1.2.1" + ordinal 12 + quidu "000000000000" + creation FALSE))) + (object Link + quid "3DFE4CA502BE" + supplier "$UNNAMED$0" + quidu "3DFE4BAE0056" + messages (list Messages + (object Message "service()" + quid "3DFE4CA502BF" + frequency "Aperiodic" + synchronization "Simple" + dir "FromClientToSupplier" + sequence "1.2.1.2.2" + ordinal 13 + quidu "000000000000" + creation FALSE)))) + persistence "Transient" + creationObj FALSE + multi FALSE) + (object Object "$UNNAMED$0" + quid "3DFE4BAE0056" + stereotype "Servlet" + persistence "Transient" + creationObj TRUE + multi FALSE)))) + logical_presentations (list unit_reference_list + (object ClassDiagram "Main" + quid "3DFDF6D2021B" + title "Main" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 0 + items (list diagram_item_list)) + (object ClassDiagram "high level packaging" + quid "3E42DE75004B" + title "high level packaging" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 0 + items (list diagram_item_list + (object CategoryView "Logical View::org.apache.catalina" @91 + location (1024, 752) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @91 + location (780, 668) + fill_color 13434879 + nlines 2 + max_width 488 + justify 0 + label "org.apache.catalina") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DE8D0082" + width 500 + height 181) + (object CategoryView "Logical View::org.apache.coyote" @92 + location (512, 1184) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @92 + location (237, 1090) + fill_color 13434879 + nlines 2 + max_width 550 + justify 0 + label "org.apache.coyote") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DE9F0132" + width 563 + height 200) + (object CategoryView "Logical View::org.apache.tomcat.util" @93 + location (1920, 1104) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @93 + location (1670, 1020) + fill_color 13434879 + nlines 2 + max_width 500 + justify 0 + label "org.apache.tomcat.util") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DEDF01F2" + width 512 + height 181) + (object ImportView "" @94 + stereotype TRUE + line_color 3342489 + quidu "3E42DEF601EB" + client @91 + supplier @93 + line_style 0) + (object ImportView "" @95 + stereotype TRUE + line_color 3342489 + quidu "3E42DEFC00B3" + client @92 + supplier @93 + line_style 0) + (object CategoryView "Logical View::org.apache.jasper" @96 + location (1728, 624) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @96 + location (1437, 540) + fill_color 13434879 + nlines 2 + max_width 582 + justify 0 + label "org.apache.jasper") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E42DEFF0270" + width 594 + height 181) + (object ImportView "" @97 + stereotype TRUE + line_color 3342489 + quidu "3E42DF700060" + client @91 + supplier @92 + line_style 0) + (object NoteView @98 + location (1200, 208) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @98 + location (847, 143) + fill_color 13434879 + nlines 2 + max_width 671 + label "High Level package dependencies") + line_color 3342489 + fill_color 13434879 + width 731 + height 143) + (object CategoryView "Logical View::org.apache.naming" @99 + location (352, 304) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @99 + location (83, 220) + fill_color 13434879 + nlines 2 + max_width 538 + justify 0 + label "org.apache.naming") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3E43D1580339" + width 550 + height 181) + (object ImportView "" @100 + stereotype TRUE + line_color 3342489 + quidu "3E43D165039C" + client @91 + supplier @99 + line_style 0))) + (object InteractionDiagram "1. catalina_load" + mechanism_ref @82 + quid "3DFDF8EE0267" + title "1. catalina_load" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 519 + items (list diagram_item_list + (object InterObjView "Bootstrap" @101 + location (224, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @101 + location (224, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Bootstrap") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDF8FD0345" + width 300 + height 1972 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @102 + location (224, 368) + line_color 3342489 + InterObjView @101 + height 1738 + y_coord 1678 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @103 + location (224, 368) + line_color 3342489 + InterObjView @101 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "Digester" @104 + location (896, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @104 + location (896, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Digester") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDFAF201A1" + width 300 + height 1972 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @105 + location (896, 1232) + line_color 3342489 + InterObjView @104 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @106 + location (896, 1312) + line_color 3342489 + InterObjView @104 + height 264 + y_coord 204 + Nested FALSE)) + (object InterObjView "ServerLifecycleListener" @107 + location (1232, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @107 + location (1232, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "ServerLifecycleListener") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDFB4B0217" + width 300 + height 1972 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @108 + location (1232, 1328) + line_color 3342489 + InterObjView @107 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "GlobalResourcesLifecycleListener" @109 + location (1568, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @109 + location (1568, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 322 + justify 0 + label "GlobalResourcesLifecycleListener") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDFB7A02AB" + width 340 + height 1972 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @110 + location (1568, 1456) + line_color 3342489 + InterObjView @109 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "SecurityConfig" @111 + location (1920, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @111 + location (1920, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "SecurityConfig") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDFBD802BA" + width 300 + height 1972 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @112 + location (1920, 1600) + line_color 3342489 + InterObjView @111 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @113 + location (1920, 1680) + line_color 3342489 + InterObjView @111 + height 146 + y_coord 86 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @114 + location (1920, 1760) + line_color 3342489 + InterObjView @111 + height 60 + y_coord 0 + Nested TRUE)) + (object SelfMessView "" @115 + location (16, 368) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @116 + Parent_View @115 + location (315, 324) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDF9210009" + anchor_loc 1 + nlines 1 + max_width 340 + justify 0 + label "initClassLoaders()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @101 + supplier @101 + Focus_Src @102 + Focus_Entry @103 + origin (240, 368) + terminus (390, 368) + ordinal 0) + (object NoteView @117 + location (1152, 1072) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @117 + location (1014, 1012) + fill_color 13434879 + nlines 2 + max_width 240 + label "parse server.xml") + line_color 3342489 + fill_color 13434879 + width 300 + height 132) + (object NoteView @118 + location (1376, 80) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @118 + location (1238, 20) + fill_color 13434879 + nlines 2 + max_width 240 + label "MBeans") + line_color 3342489 + fill_color 13434879 + width 300 + height 132) + (object AttachView "" @119 + stereotype TRUE + line_color 3342489 + client @118 + supplier @107 + line_style 0) + (object AttachView "" @120 + stereotype TRUE + line_color 3342489 + client @109 + supplier @118 + line_style 0) + (object NoteView @121 + location (2160, 2176) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @121 + location (1947, 2113) + fill_color 13434879 + nlines 2 + max_width 390 + label "#1Catalina.load()") + line_color 3342489 + fill_color 13434879 + width 450 + height 138) + (object InterObjView "Catalina" @122 + location (560, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @122 + location (560, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Catalina") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDF90A0330" + width 300 + height 1972 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @123 + location (560, 464) + line_color 3342489 + InterObjView @122 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @124 + location (560, 608) + line_color 3342489 + InterObjView @122 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @125 + location (560, 720) + line_color 3342489 + InterObjView @122 + height 1326 + y_coord 1266 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @126 + location (560, 896) + line_color 3342489 + InterObjView @122 + height 194 + y_coord 134 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @127 + location (560, 896) + InterObjView @122 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @128 + location (560, 1024) + line_color 3342489 + InterObjView @122 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @129 + location (560, 1024) + InterObjView @122 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @130 + location (560, 1152) + line_color 3342489 + InterObjView @122 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @131 + location (560, 1152) + InterObjView @122 + height 60 + y_coord 0 + Nested TRUE)) + (object SelfMessView "" @132 + location (16, 896) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @133 + Parent_View @132 + location (651, 852) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFA8001DA" + anchor_loc 1 + nlines 1 + max_width 160 + justify 0 + label "initDirs()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @122 + supplier @122 + Focus_Src @127 + Focus_Entry @126 + origin (576, 896) + terminus (726, 896) + ordinal 4) + (object SelfMessView "" @134 + location (16, 1024) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @135 + Parent_View @134 + location (701, 981) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFA8B0347" + anchor_loc 1 + nlines 1 + max_width 228 + justify 0 + label "initNaming()" + pctDist 0.840000 + height 44 + orientation 0) + line_color 3342489 + client @122 + supplier @122 + Focus_Src @129 + Focus_Entry @128 + origin (576, 1024) + terminus (726, 1024) + ordinal 5) + (object SelfMessView "" @136 + location (16, 1152) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @137 + Parent_View @136 + location (686, 1109) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFAAD01AC" + anchor_loc 1 + nlines 1 + max_width 180 + justify 0 + label "initialize()" + pctDist 0.733333 + height 44 + orientation 0) + line_color 3342489 + client @122 + supplier @122 + Focus_Src @131 + Focus_Entry @130 + origin (576, 1152) + terminus (726, 1152) + ordinal 6) + (object InterMessView "" @138 + location (16, 464) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @139 + Parent_View @138 + location (389, 437) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDF91A010D" + anchor_loc 1 + nlines 1 + max_width 265 + justify 0 + label "newInstance()" + pctDist 0.495082 + height 28 + orientation 0) + line_color 3342489 + client @101 + supplier @122 + Focus_Src @102 + Focus_Entry @123 + origin (239, 464) + terminus (544, 464) + ordinal 1) + (object InterMessView "" @140 + location (16, 608) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @141 + Parent_View @140 + location (456, 565) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDF97900C2" + anchor_loc 1 + nlines 1 + max_width 445 + justify 0 + label "setParentClassLoader()" + pctDist 0.711475 + height 44 + orientation 0) + line_color 3342489 + client @101 + supplier @122 + Focus_Src @102 + Focus_Entry @124 + origin (239, 608) + terminus (544, 608) + ordinal 2) + (object InterMessView "" @142 + location (16, 720) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @143 + Parent_View @142 + location (391, 676) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFA3402F2" + anchor_loc 1 + nlines 1 + max_width 108 + justify 0 + label "load()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @101 + supplier @122 + Focus_Src @102 + Focus_Entry @125 + origin (239, 720) + terminus (544, 720) + ordinal 3) + (object InterMessView "" @144 + location (16, 1232) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @145 + Parent_View @144 + location (727, 1188) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFAF800C4" + anchor_loc 1 + nlines 1 + max_width 302 + justify 0 + label "createDigester()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @122 + supplier @104 + Focus_Src @125 + Focus_Entry @105 + origin (575, 1232) + terminus (880, 1232) + ordinal 7) + (object InterMessView "" @146 + location (16, 1312) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @147 + Parent_View @146 + location (727, 1268) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFB0100B2" + anchor_loc 1 + nlines 1 + max_width 136 + justify 0 + label "parse()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @122 + supplier @104 + Focus_Src @125 + Focus_Entry @106 + origin (575, 1312) + terminus (880, 1312) + ordinal 8) + (object AttachView "" @148 + stereotype TRUE + line_color 3342489 + client @147 + supplier @117 + line_style 0) + (object InterMessView "" @149 + location (16, 1328) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @150 + Parent_View @149 + location (1063, 1284) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFB8400A7" + anchor_loc 1 + nlines 1 + max_width 265 + justify 0 + label "newInstance()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @104 + supplier @107 + Focus_Src @106 + Focus_Entry @108 + origin (911, 1328) + terminus (1216, 1328) + ordinal 9) + (object InterMessView "" @151 + location (16, 1456) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @152 + Parent_View @151 + location (1231, 1412) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFB920148" + anchor_loc 1 + nlines 1 + max_width 265 + justify 0 + label "newInstance()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @104 + supplier @109 + Focus_Src @106 + Focus_Entry @110 + origin (911, 1456) + terminus (1552, 1456) + ordinal 10) + (object InterMessView "" @153 + location (16, 1600) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @154 + Parent_View @153 + location (1239, 1556) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFBEA00C2" + anchor_loc 1 + nlines 1 + max_width 265 + justify 0 + label "newInstance()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @122 + supplier @111 + Focus_Src @125 + Focus_Entry @112 + origin (575, 1600) + terminus (1904, 1600) + ordinal 11) + (object InterMessView "" @155 + location (16, 1680) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @156 + Parent_View @155 + location (1239, 1636) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFBF401F2" + anchor_loc 1 + nlines 1 + max_width 425 + justify 0 + label "setPackageDefinition()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @122 + supplier @111 + Focus_Src @125 + Focus_Entry @113 + origin (575, 1680) + terminus (1904, 1680) + ordinal 12) + (object InterMessView "" @157 + location (16, 1760) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @158 + Parent_View @157 + location (1239, 1716) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFC1203C2" + anchor_loc 1 + nlines 1 + max_width 386 + justify 0 + label "setPackageAccess()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @122 + supplier @111 + Focus_Src @125 + Focus_Entry @114 + origin (575, 1760) + terminus (1904, 1760) + ordinal 13))) + (object InteractionDiagram "2. catalina_initliaze" + mechanism_ref @83 + quid "3DFDFC44002A" + title "2. catalina_initliaze" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 87 + items (list diagram_item_list + (object InterObjView "Catalina" @159 + location (176, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @159 + location (176, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Catalina") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDFC8F015F" + width 300 + height 1180 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @160 + location (176, 400) + line_color 3342489 + InterObjView @159 + height 914 + y_coord 854 + Nested FALSE)) + (object InterObjView "StandardServer" @161 + location (496, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @161 + location (496, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardServer") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDFCCB006B" + width 300 + height 1180 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @162 + location (496, 400) + line_color 3342489 + InterObjView @161 + height 854 + y_coord 794 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @163 + location (496, 480) + line_color 3342489 + InterObjView @161 + height 768 + y_coord 708 + Nested TRUE)) + (object InterObjView "StandardService" @164 + location (832, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @164 + location (832, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardService") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDFD370020" + width 300 + height 1180 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @165 + location (832, 480) + line_color 3342489 + InterObjView @164 + height 708 + y_coord 648 + Nested FALSE)) + (object InterObjView "CoyoteConnector" @166 + location (1168, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @166 + location (1168, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "CoyoteConnector") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDFE810313" + width 300 + height 1180 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @167 + location (1168, 528) + line_color 3342489 + InterObjView @166 + height 600 + y_coord 540 + Nested FALSE)) + (object InterObjView "CoyoteAdapter" @168 + location (1504, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @168 + location (1504, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "CoyoteAdapter") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFDFFA00226" + width 300 + height 1180 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @169 + location (1504, 576) + line_color 3342489 + InterObjView @168 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "Http11Protocol" @170 + location (1808, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @170 + location (1808, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Http11Protocol") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE016601A6" + width 300 + height 1180 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @171 + location (1808, 704) + line_color 3342489 + InterObjView @170 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @172 + location (1808, 832) + line_color 3342489 + InterObjView @170 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "JkCoyoteAdapter" @173 + location (2144, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @173 + location (2144, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "JkCoyoteAdapter") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE01AD01A8" + width 300 + height 1180 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @174 + location (2144, 928) + line_color 3342489 + InterObjView @173 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @175 + location (2144, 1008) + line_color 3342489 + InterObjView @173 + height 60 + y_coord 0 + Nested FALSE)) + (object InterMessView "" @176 + location (16, 400) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @177 + Parent_View @176 + location (335, 356) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFD1F0076" + anchor_loc 1 + nlines 1 + max_width 180 + justify 0 + label "initialize()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @159 + supplier @161 + Focus_Src @160 + Focus_Entry @162 + origin (191, 400) + terminus (480, 400) + ordinal 0) + (object InterMessView "" @178 + location (16, 480) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @179 + Parent_View @178 + location (663, 436) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFD3D01C4" + anchor_loc 1 + nlines 1 + max_width 180 + justify 0 + label "initialize()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @161 + supplier @164 + Focus_Src @163 + Focus_Entry @165 + origin (511, 480) + terminus (816, 480) + ordinal 1) + (object InterMessView "" @180 + location (16, 528) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @181 + Parent_View @180 + location (999, 484) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFDFE990305" + anchor_loc 1 + nlines 1 + max_width 180 + justify 0 + label "initialize()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @164 + supplier @166 + Focus_Src @165 + Focus_Entry @167 + origin (847, 528) + terminus (1152, 528) + ordinal 2) + (object InterMessView "" @182 + location (16, 576) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @183 + Parent_View @182 + location (1335, 532) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE013D0217" + anchor_loc 1 + nlines 1 + max_width 106 + justify 0 + label "new()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @166 + supplier @168 + Focus_Src @167 + Focus_Entry @169 + origin (1183, 576) + terminus (1488, 576) + ordinal 3) + (object InterMessView "" @184 + location (1504, 704) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @185 + Parent_View @184 + location (1487, 660) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE01830330" + anchor_loc 1 + nlines 1 + max_width 106 + justify 0 + label "new()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @166 + supplier @170 + Focus_Src @167 + Focus_Entry @171 + origin (1183, 704) + terminus (1792, 704) + ordinal 4) + (object InterMessView "" @186 + location (1504, 832) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @187 + Parent_View @186 + location (1487, 788) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE0188032C" + anchor_loc 1 + nlines 1 + max_width 80 + justify 0 + label "init()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @166 + supplier @170 + Focus_Src @167 + Focus_Entry @172 + origin (1183, 832) + terminus (1792, 832) + ordinal 5) + (object InterMessView "" @188 + location (16, 928) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @189 + Parent_View @188 + location (1655, 884) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE01BC038C" + anchor_loc 1 + nlines 1 + max_width 106 + justify 0 + label "new()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @166 + supplier @173 + Focus_Src @167 + Focus_Entry @174 + origin (1183, 928) + terminus (2128, 928) + ordinal 6) + (object InterMessView "" @190 + location (16, 1008) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @191 + Parent_View @190 + location (1655, 964) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE01C30164" + anchor_loc 1 + nlines 1 + max_width 80 + justify 0 + label "init()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @166 + supplier @173 + Focus_Src @167 + Focus_Entry @175 + origin (1183, 1008) + terminus (2128, 1008) + ordinal 7) + (object NoteView @192 + location (2144, 2016) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @192 + location (1947, 1957) + fill_color 13434879 + nlines 2 + max_width 359 + label "#2 Catalina.initialize()") + line_color 3342489 + fill_color 13434879 + width 419 + height 131))) + (object InteractionDiagram "3. catalina_start" + mechanism_ref @84 + quid "3DFE026D02D1" + title "3. catalina_start" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 2481 + items (list diagram_item_list + (object InterObjView "Bootstrap" @193 + location (192, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @193 + location (192, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Bootstrap") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE027700F5" + width 300 + height 2912 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @194 + location (192, 384) + line_color 3342489 + InterObjView @193 + height 2662 + y_coord 2602 + Nested FALSE)) + (object InterObjView "Catalina" @195 + location (480, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @195 + location (480, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Catalina") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE027D0067" + width 300 + height 2912 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @196 + location (480, 384) + line_color 3342489 + InterObjView @195 + height 2602 + y_coord 2542 + Nested FALSE)) + (object InterObjView "StandardServer" @197 + location (784, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @197 + location (784, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardServer") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE02B30015" + width 300 + height 2912 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @198 + location (784, 416) + line_color 3342489 + InterObjView @197 + height 2510 + y_coord 2450 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @199 + location (784, 480) + line_color 3342489 + InterObjView @197 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @200 + location (784, 592) + line_color 3342489 + InterObjView @197 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardService" @201 + location (1088, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @201 + location (1088, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardService") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE030400E3" + width 300 + height 2912 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @202 + location (1088, 704) + line_color 3342489 + InterObjView @201 + height 2162 + y_coord 2102 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @203 + location (1088, 752) + line_color 3342489 + InterObjView @201 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @204 + location (1088, 864) + line_color 3342489 + InterObjView @201 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardEngine" @205 + location (1424, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @205 + location (1424, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 332 + justify 0 + label "StandardEngine") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE034700C2" + width 350 + height 2912 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @206 + location (1424, 976) + line_color 3342489 + InterObjView @205 + height 1830 + y_coord 1770 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @207 + location (1424, 1056) + line_color 3342489 + InterObjView @205 + height 1744 + y_coord 1684 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @208 + location (1424, 1056) + line_color 3342489 + InterObjView @205 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @209 + location (1424, 1168) + line_color 3342489 + InterObjView @205 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @210 + location (1424, 1296) + line_color 3342489 + InterObjView @205 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @211 + location (1424, 1408) + line_color 3342489 + InterObjView @205 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @212 + location (1424, 1536) + line_color 3342489 + InterObjView @205 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @213 + location (1424, 1648) + line_color 3342489 + InterObjView @205 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardHost" @214 + location (1760, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @214 + location (1760, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardHost") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE03F2035D" + width 300 + height 2912 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @215 + location (1760, 1760) + line_color 3342489 + InterObjView @214 + height 980 + y_coord 920 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @216 + location (1760, 1808) + line_color 3342489 + InterObjView @214 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @217 + location (1760, 1920) + line_color 3342489 + InterObjView @214 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @218 + location (1760, 2032) + line_color 3342489 + InterObjView @214 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @219 + location (1760, 2144) + line_color 3342489 + InterObjView @214 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @220 + location (1760, 2256) + line_color 3342489 + InterObjView @214 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardPipeline" @221 + location (2080, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @221 + location (2080, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 326 + justify 0 + label "StandardPipeline") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE047D006D" + width 344 + height 2912 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @222 + location (2080, 2368) + line_color 3342489 + InterObjView @221 + height 312 + y_coord 252 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @223 + location (2080, 2416) + line_color 3342489 + InterObjView @221 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @224 + location (2080, 2480) + line_color 3342489 + InterObjView @221 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @225 + location (2080, 2560) + line_color 3342489 + InterObjView @221 + height 60 + y_coord 0 + Nested TRUE)) + (object InterMessView "" @226 + location (16, 384) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @227 + Parent_View @226 + location (335, 340) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE02830374" + anchor_loc 1 + nlines 1 + max_width 110 + justify 0 + label "start()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @193 + supplier @195 + Focus_Src @194 + Focus_Entry @196 + origin (207, 384) + terminus (464, 384) + ordinal 0) + (object InterMessView "" @228 + location (16, 416) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @229 + Parent_View @228 + location (631, 372) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE02BA0188" + anchor_loc 1 + nlines 1 + max_width 110 + justify 0 + label "start()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @195 + supplier @197 + Focus_Src @196 + Focus_Entry @198 + origin (495, 416) + terminus (768, 416) + ordinal 1) + (object SelfMessView "" @230 + location (16, 480) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @231 + Parent_View @230 + location (1244, 437) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE02D3006C" + anchor_loc 1 + nlines 1 + max_width 854 + justify 0 + label "fireLifecycleEvent(BEFORE_START_EVENT)" + pctDist 2.960000 + height 44 + orientation 0) + line_color 3342489 + client @197 + supplier @197 + Focus_Src @198 + Focus_Entry @199 + origin (800, 480) + terminus (950, 480) + ordinal 2) + (object SelfMessView "" @232 + location (16, 592) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @233 + Parent_View @232 + location (1146, 549) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE02DF02DF" + anchor_loc 1 + nlines 1 + max_width 658 + justify 0 + label "fireLifecycleEvent(START_EVENT)" + pctDist 2.313333 + height 44 + orientation 0) + line_color 3342489 + client @197 + supplier @197 + Focus_Src @198 + Focus_Entry @200 + origin (800, 592) + terminus (950, 592) + ordinal 3) + (object InterMessView "" @234 + location (16, 704) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @235 + Parent_View @234 + location (935, 660) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE030C02B3" + anchor_loc 1 + nlines 1 + max_width 110 + justify 0 + label "start()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @197 + supplier @201 + Focus_Src @198 + Focus_Entry @202 + origin (799, 704) + terminus (1072, 704) + ordinal 4) + (object SelfMessView "" @236 + location (16, 752) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @237 + Parent_View @236 + location (1531, 708) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE031D0022" + anchor_loc 1 + nlines 1 + max_width 854 + justify 0 + label "fireLifecycleEvent(BEFORE_START_EVENT)" + pctDist 2.853333 + height 45 + orientation 0) + line_color 3342489 + client @201 + supplier @201 + Focus_Src @202 + Focus_Entry @203 + origin (1104, 752) + terminus (1254, 752) + ordinal 5) + (object SelfMessView "" @238 + location (16, 864) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @239 + Parent_View @238 + location (1449, 821) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE0330019B" + anchor_loc 1 + nlines 1 + max_width 658 + justify 0 + label "fireLifecycleEvent(START_EVENT)" + pctDist 2.306667 + height 44 + orientation 0) + line_color 3342489 + client @201 + supplier @201 + Focus_Src @202 + Focus_Entry @204 + origin (1104, 864) + terminus (1254, 864) + ordinal 6) + (object InterMessView "" @240 + location (16, 976) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @241 + Parent_View @240 + location (1255, 932) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE0370018A" + anchor_loc 1 + nlines 1 + max_width 110 + justify 0 + label "start()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @201 + supplier @205 + Focus_Src @202 + Focus_Entry @206 + origin (1103, 976) + terminus (1408, 976) + ordinal 7) + (object SelfMessView "" @242 + location (16, 1056) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @243 + Parent_View @242 + location (1865, 1014) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE03750051" + anchor_loc 1 + nlines 1 + max_width 854 + justify 0 + label "fireLifecycleEvent(BEFORE_START_EVENT)" + pctDist 2.840000 + height 43 + orientation 0) + line_color 3342489 + client @205 + supplier @205 + Focus_Src @207 + Focus_Entry @208 + origin (1440, 1056) + terminus (1590, 1056) + ordinal 8) + (object SelfMessView "" @244 + location (16, 1168) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @245 + Parent_View @244 + location (1639, 1141) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE0389001C" + anchor_loc 1 + nlines 1 + max_width 373 + justify 0 + label "addDefaultMapper()" + pctDist 1.326667 + height 28 + orientation 0) + line_color 3342489 + client @205 + supplier @205 + Focus_Src @207 + Focus_Entry @209 + origin (1440, 1168) + terminus (1590, 1168) + ordinal 9) + (object SelfMessView "" @246 + location (16, 1296) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @247 + Parent_View @246 + location (1592, 1268) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE03980281" + anchor_loc 1 + nlines 1 + max_width 238 + justify 0 + label "logger.start()" + pctDist 1.020000 + height 29 + orientation 0) + line_color 3342489 + client @205 + supplier @205 + Focus_Src @207 + Focus_Entry @210 + origin (1440, 1296) + terminus (1590, 1296) + ordinal 10) + (object SelfMessView "" @248 + location (16, 1408) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @249 + Parent_View @248 + location (1593, 1380) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE03A80107" + anchor_loc 1 + nlines 1 + max_width 226 + justify 0 + label "realm.start()" + pctDist 1.026667 + height 29 + orientation 0) + line_color 3342489 + client @205 + supplier @205 + Focus_Src @207 + Focus_Entry @211 + origin (1440, 1408) + terminus (1590, 1408) + ordinal 11) + (object SelfMessView "" @250 + location (16, 1536) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @251 + Parent_View @250 + location (1608, 1508) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE03BD000D" + anchor_loc 1 + nlines 1 + max_width 259 + justify 0 + label "findMappers()" + pctDist 1.120000 + height 29 + orientation 0) + line_color 3342489 + client @205 + supplier @205 + Focus_Src @207 + Focus_Entry @212 + origin (1440, 1536) + terminus (1590, 1536) + ordinal 12) + (object SelfMessView "" @252 + location (16, 1648) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @253 + Parent_View @252 + location (1515, 1604) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE03E000A4" + anchor_loc 1 + nlines 1 + max_width 251 + justify 0 + label "findChildren()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @205 + supplier @205 + Focus_Src @207 + Focus_Entry @213 + origin (1440, 1648) + terminus (1590, 1648) + ordinal 13) + (object InterMessView "" @254 + location (1664, 1760) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @255 + Parent_View @254 + location (1591, 1716) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE03FB027A" + anchor_loc 1 + nlines 1 + max_width 110 + justify 0 + label "start()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @205 + supplier @214 + Focus_Src @207 + Focus_Entry @215 + origin (1439, 1760) + terminus (1744, 1760) + ordinal 14) + (object SelfMessView "" @256 + location (16, 1808) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @257 + Parent_View @256 + location (1606, 1784) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE043B02AE" + anchor_loc 1 + nlines 1 + max_width 854 + justify 0 + label "fireLifecycleEvent(BEFORE_START_EVENT)" + pctDist -1.133333 + height 24 + orientation 0) + line_color 3342489 + client @214 + supplier @214 + Focus_Src @215 + Focus_Entry @216 + origin (1776, 1808) + terminus (1926, 1808) + ordinal 15) + (object SelfMessView "" @258 + location (16, 1920) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @259 + Parent_View @258 + location (1963, 1877) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE045C021F" + anchor_loc 1 + nlines 1 + max_width 373 + justify 0 + label "addDefaultMapper()" + pctDist 1.253333 + height 44 + orientation 0) + line_color 3342489 + client @214 + supplier @214 + Focus_Src @215 + Focus_Entry @217 + origin (1776, 1920) + terminus (1926, 1920) + ordinal 16) + (object InterMessView "" @260 + location (2000, 2368) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @261 + Parent_View @260 + location (1919, 2324) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE048E00B9" + anchor_loc 1 + nlines 1 + max_width 110 + justify 0 + label "start()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @214 + supplier @221 + Focus_Src @215 + Focus_Entry @222 + origin (1775, 2368) + terminus (2064, 2368) + ordinal 20) + (object SelfMessView "" @262 + location (16, 2032) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @263 + Parent_View @262 + location (1916, 2004) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE049B000C" + anchor_loc 1 + nlines 1 + max_width 238 + justify 0 + label "logger.start()" + pctDist 0.933333 + height 29 + orientation 0) + line_color 3342489 + client @214 + supplier @214 + Focus_Src @215 + Focus_Entry @218 + origin (1776, 2032) + terminus (1926, 2032) + ordinal 17) + (object SelfMessView "" @264 + location (16, 2144) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @265 + Parent_View @264 + location (1916, 2117) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE04A303BB" + anchor_loc 1 + nlines 1 + max_width 238 + justify 0 + label "findMapper()" + pctDist 0.933333 + height 28 + orientation 0) + line_color 3342489 + client @214 + supplier @214 + Focus_Src @215 + Focus_Entry @219 + origin (1776, 2144) + terminus (1926, 2144) + ordinal 18) + (object SelfMessView "" @266 + location (16, 2256) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @267 + Parent_View @266 + location (1916, 2228) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE04A90342" + anchor_loc 1 + nlines 1 + max_width 251 + justify 0 + label "findChildren()" + pctDist 0.933333 + height 29 + orientation 0) + line_color 3342489 + client @214 + supplier @214 + Focus_Src @215 + Focus_Entry @220 + origin (1776, 2256) + terminus (1926, 2256) + ordinal 19) + (object NoteView @268 + location (2128, 1488) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @268 + location (1915, 1422) + fill_color 13434879 + nlines 2 + max_width 390 + label "#1 Catalina.start()") + line_color 3342489 + fill_color 13434879 + width 450 + height 144) + (object SelfMessView "" @269 + location (16, 2416) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @270 + Parent_View @269 + location (1644, 2498) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE05780138" + anchor_loc 1 + nlines 1 + max_width 854 + justify 0 + label "fireLifecycleEvent(BEFORE_START_EVENT)" + pctDist -3.020000 + height 45 + orientation 0) + line_color 3342489 + client @221 + supplier @221 + Focus_Src @222 + Focus_Entry @223 + origin (2096, 2416) + terminus (2246, 2416) + ordinal 21) + (object SelfMessView "" @271 + location (16, 2480) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @272 + Parent_View @271 + location (1705, 2582) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE05A80398" + anchor_loc 1 + nlines 1 + max_width 658 + justify 0 + label "fireLifecycleEvent(START_EVENT)" + pctDist -2.613333 + height 45 + orientation 0) + line_color 3342489 + client @221 + supplier @221 + Focus_Src @222 + Focus_Entry @224 + origin (2096, 2480) + terminus (2246, 2480) + ordinal 22) + (object SelfMessView "" @273 + location (16, 2560) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @274 + Parent_View @273 + location (1737, 2423) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE05BA0196" + anchor_loc 1 + nlines 1 + max_width 658 + justify 0 + label "fireLifecycleEvent(AFTER_EVENT)" + pctDist -2.393333 + height 138 + orientation 0) + line_color 3342489 + client @221 + supplier @221 + Focus_Src @222 + Focus_Entry @225 + origin (2096, 2560) + terminus (2246, 2560) + ordinal 23) + (object NoteView @275 + location (960, 1680) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @275 + location (635, 1571) + fill_color 13434879 + nlines 4 + max_width 615 + label "All StandardX will fire these events.") + line_color 3342489 + fill_color 13434879 + width 675 + height 231) + (object AttachView "" @276 + stereotype TRUE + line_color 3342489 + client @275 + supplier @272 + line_style 0) + (object AttachView "" @277 + stereotype TRUE + line_color 3342489 + client @275 + supplier @270 + line_style 0) + (object AttachView "" @278 + stereotype TRUE + line_color 3342489 + client @275 + supplier @274 + line_style 0))) + (object InteractionDiagram "4. catalina_start_2" + mechanism_ref @85 + quid "3DFE050900BF" + title "4. catalina_start_2" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 1087 + items (list diagram_item_list + (object InterObjView "StandardHost" @279 + location (208, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @279 + location (208, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardHost") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE0538017B" + width 300 + height 2114 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @280 + location (208, 384) + line_color 3342489 + InterObjView @279 + height 1864 + y_coord 1804 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @281 + location (208, 384) + line_color 3342489 + InterObjView @279 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @282 + location (208, 1088) + line_color 3342489 + InterObjView @279 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @283 + location (208, 1616) + line_color 3342489 + InterObjView @279 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "HostConfig" @284 + location (544, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @284 + location (544, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "HostConfig") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE06A60131" + width 300 + height 2114 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @285 + location (544, 512) + line_color 3342489 + InterObjView @284 + height 696 + y_coord 636 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @286 + location (544, 576) + line_color 3342489 + InterObjView @284 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @287 + location (544, 688) + line_color 3342489 + InterObjView @284 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @288 + location (544, 784) + line_color 3342489 + InterObjView @284 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @289 + location (544, 896) + line_color 3342489 + InterObjView @284 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @290 + location (544, 1008) + line_color 3342489 + InterObjView @284 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @291 + location (544, 1536) + line_color 3342489 + InterObjView @284 + height 200 + y_coord 140 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @292 + location (544, 1536) + line_color 3342489 + InterObjView @284 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardHostDeployer" @293 + location (944, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @293 + location (944, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 426 + justify 0 + label "StandardHostDeployer") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE079A0055" + width 444 + height 2114 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @294 + location (944, 1280) + line_color 3342489 + InterObjView @293 + height 824 + y_coord 764 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @295 + location (944, 2128) + line_color 3342489 + InterObjView @293 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "Digester" @296 + location (1328, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @296 + location (1328, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Digester") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE07C9034C" + width 300 + height 2114 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @297 + location (1328, 1280) + line_color 3342489 + InterObjView @296 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @298 + location (1328, 1488) + line_color 3342489 + InterObjView @296 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @299 + location (1328, 1984) + line_color 3342489 + InterObjView @296 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "ContextRuleSet" @300 + location (1648, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @300 + location (1648, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "ContextRuleSet") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE0834016F" + width 300 + height 2114 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @301 + location (1648, 1408) + line_color 3342489 + InterObjView @300 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @302 + location (1648, 1888) + line_color 3342489 + InterObjView @300 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "NamingRuleSet" @303 + location (1968, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @303 + location (1968, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "NamingRuleSet") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE08D00173" + width 300 + height 2114 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @304 + location (1968, 1792) + line_color 3342489 + InterObjView @303 + height 60 + y_coord 0 + Nested FALSE)) + (object SelfMessView "" @305 + location (0, 384) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @306 + Parent_View @305 + location (555, 342) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE066C0341" + anchor_loc 1 + nlines 1 + max_width 651 + justify 0 + label "fireLifecycleEvent(START_EVENT)" + pctDist 2.206667 + height 43 + orientation 0) + line_color 3342489 + client @279 + supplier @279 + Focus_Src @280 + Focus_Entry @281 + origin (224, 384) + terminus (374, 384) + ordinal 0) + (object InterMessView "" @307 + location (384, 512) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @308 + Parent_View @307 + location (486, 468) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE06D20294" + anchor_loc 1 + nlines 1 + max_width 507 + justify 0 + label "interested[i].lifecycleEvent()" + pctDist 0.865574 + height 45 + orientation 0) + line_color 3342489 + client @279 + supplier @284 + Focus_Src @280 + Focus_Entry @285 + origin (223, 512) + terminus (528, 512) + ordinal 1) + (object SelfMessView "" @309 + location (16, 576) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @310 + Parent_View @309 + location (713, 537) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE06E9028D" + anchor_loc 1 + nlines 1 + max_width 297 + justify 0 + label "setDeployXML()" + pctDist 1.026667 + height 40 + orientation 0) + line_color 3342489 + client @284 + supplier @284 + Focus_Src @285 + Focus_Entry @286 + origin (560, 576) + terminus (710, 576) + ordinal 2) + (object SelfMessView "" @311 + location (16, 688) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @312 + Parent_View @311 + location (714, 645) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE06F300FF" + anchor_loc 1 + nlines 1 + max_width 288 + justify 0 + label "setLiveDeploy()" + pctDist 1.033333 + height 44 + orientation 0) + line_color 3342489 + client @284 + supplier @284 + Focus_Src @285 + Focus_Entry @287 + origin (560, 688) + terminus (710, 688) + ordinal 3) + (object SelfMessView "" @313 + location (16, 784) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @314 + Parent_View @313 + location (732, 756) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE06FB00D9" + anchor_loc 1 + nlines 1 + max_width 326 + justify 0 + label "setUnpacksWar()" + pctDist 1.153333 + height 29 + orientation 0) + line_color 3342489 + client @284 + supplier @284 + Focus_Src @285 + Focus_Entry @288 + origin (560, 784) + terminus (710, 784) + ordinal 4) + (object SelfMessView "" @315 + location (16, 896) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @316 + Parent_View @315 + location (747, 868) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE070C0015" + anchor_loc 1 + nlines 1 + max_width 350 + justify 0 + label "setXMLValidation()" + pctDist 1.246667 + height 29 + orientation 0) + line_color 3342489 + client @284 + supplier @284 + Focus_Src @285 + Focus_Entry @289 + origin (560, 896) + terminus (710, 896) + ordinal 5) + (object SelfMessView "" @317 + location (16, 1008) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @318 + Parent_View @317 + location (762, 980) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE073B0031" + anchor_loc 1 + nlines 1 + max_width 359 + justify 0 + label "deployDescriptors()" + pctDist 1.346667 + height 29 + orientation 0) + line_color 3342489 + client @284 + supplier @284 + Focus_Src @285 + Focus_Entry @290 + origin (560, 1008) + terminus (710, 1008) + ordinal 6) + (object InterMessView "" @319 + location (16, 1088) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @320 + Parent_View @319 + location (376, 1044) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE078B03BB" + anchor_loc 1 + nlines 1 + max_width 136 + justify 0 + label "install()" + pctDist 0.500000 + height 45 + orientation 1) + line_color 3342489 + client @284 + supplier @279 + Focus_Src @285 + Focus_Entry @282 + origin (528, 1088) + terminus (224, 1088) + ordinal 7) + (object InterMessView "" @321 + location (576, 1280) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @322 + Parent_View @321 + location (575, 1236) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE07B100BE" + anchor_loc 1 + nlines 1 + max_width 136 + justify 0 + label "install()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @279 + supplier @293 + Focus_Src @280 + Focus_Entry @294 + origin (223, 1280) + terminus (928, 1280) + ordinal 8) + (object InterMessView "" @323 + location (1152, 1280) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @324 + Parent_View @323 + location (1135, 1236) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE07D200ED" + anchor_loc 1 + nlines 1 + max_width 144 + justify 0 + label "create()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @293 + supplier @296 + Focus_Src @294 + Focus_Entry @297 + origin (959, 1280) + terminus (1312, 1280) + ordinal 9) + (object InterMessView "" @325 + location (1136, 1984) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @326 + Parent_View @325 + location (1135, 1940) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE07D603D7" + anchor_loc 1 + nlines 1 + max_width 136 + justify 0 + label "parse()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @293 + supplier @296 + Focus_Src @294 + Focus_Entry @299 + origin (959, 1984) + terminus (1312, 1984) + ordinal 16) + (object InterMessView "" @327 + location (1296, 1408) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @328 + Parent_View @327 + location (1295, 1364) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE08DA029B" + anchor_loc 1 + nlines 1 + max_width 106 + justify 0 + label "new()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @293 + supplier @300 + Focus_Src @294 + Focus_Entry @301 + origin (959, 1408) + terminus (1632, 1408) + ordinal 10) + (object InterMessView "" @329 + location (1456, 1792) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @330 + Parent_View @329 + location (1455, 1748) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE08E00091" + anchor_loc 1 + nlines 1 + max_width 106 + justify 0 + label "new()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @293 + supplier @303 + Focus_Src @294 + Focus_Entry @304 + origin (959, 1792) + terminus (1952, 1792) + ordinal 14) + (object InterMessView "" @331 + location (16, 1488) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @332 + Parent_View @331 + location (1182, 1445) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE08FA003D" + anchor_loc 1 + nlines 1 + max_width 387 + justify 0 + label "add(ContextRuleSet)" + pctDist 0.631728 + height 44 + orientation 0) + line_color 3342489 + client @293 + supplier @296 + Focus_Src @294 + Focus_Entry @298 + origin (959, 1488) + terminus (1312, 1488) + ordinal 11) + (object InterMessView "" @333 + location (1296, 1888) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @334 + Parent_View @333 + location (1295, 1844) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE0907015F" + anchor_loc 1 + nlines 1 + max_width 416 + justify 0 + label "add(NamingRuleSet())" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @293 + supplier @300 + Focus_Src @294 + Focus_Entry @302 + origin (959, 1888) + terminus (1632, 1888) + ordinal 15) + (object NoteView @335 + location (2096, 2384) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @335 + location (1893, 2315) + fill_color 13434879 + nlines 2 + max_width 371 + label "#2 Catalina.start()") + line_color 3342489 + fill_color 13434879 + width 431 + height 150) + (object SelfMessView "" @336 + location (16, 1536) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @337 + Parent_View @336 + location (697, 1493) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE131F0327" + anchor_loc 1 + nlines 1 + max_width 244 + justify 0 + label "deployApps()" + pctDist 0.913333 + height 43 + orientation 0) + line_color 3342489 + client @284 + supplier @284 + Focus_Src @291 + Focus_Entry @292 + origin (560, 1536) + terminus (710, 1536) + ordinal 12) + (object InterMessView "" @338 + location (16, 1616) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @339 + Parent_View @338 + location (376, 1572) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE132D0309" + anchor_loc 1 + nlines 1 + max_width 136 + justify 0 + label "install()" + pctDist 0.500000 + height 45 + orientation 1) + line_color 3342489 + client @284 + supplier @279 + Focus_Src @291 + Focus_Entry @283 + origin (528, 1616) + terminus (224, 1616) + ordinal 13) + (object InterMessView "" @340 + location (576, 2128) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @341 + Parent_View @340 + location (575, 2084) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE133A036C" + anchor_loc 1 + nlines 1 + max_width 463 + justify 0 + label "install() // same as above" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @279 + supplier @293 + Focus_Src @280 + Focus_Entry @295 + origin (223, 2128) + terminus (928, 2128) + ordinal 17))) + (object InteractionDiagram "5. catalina_start_3" + mechanism_ref @86 + quid "3DFE094A0346" + title "5. catalina_start_3" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 0 + items (list diagram_item_list + (object InterObjView "Digester" @342 + location (176, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @342 + location (176, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Digester") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE095A0371" + width 300 + height 1214 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @343 + location (176, 352) + line_color 3342489 + InterObjView @342 + height 996 + y_coord 936 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @344 + location (176, 352) + line_color 3342489 + InterObjView @342 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @345 + location (176, 448) + line_color 3342489 + InterObjView @342 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "Rule" @346 + location (480, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @346 + location (480, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Rule") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE0E7400D0" + width 300 + height 1214 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @347 + location (480, 560) + line_color 3342489 + InterObjView @346 + height 728 + y_coord 668 + Nested FALSE)) + (object InterObjView "StandardContext" @348 + location (816, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @348 + location (816, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 332 + justify 0 + label "StandardContext") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE0FC502A1" + width 350 + height 1214 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @349 + location (816, 592) + line_color 3342489 + InterObjView @348 + height 264 + y_coord 204 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @350 + location (816, 1008) + line_color 3342489 + InterObjView @348 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "StandardPipeline" @351 + location (1184, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @351 + location (1184, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 363 + justify 0 + label "StandardPipeline") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE112F003F" + width 381 + height 1214 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @352 + location (1184, 736) + line_color 3342489 + InterObjView @351 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "StandardContextValve" @353 + location (1552, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @353 + location (1552, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 300 + justify 0 + label "StandardContextValve") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE110D0375" + width 318 + height 1214 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @354 + location (1552, 624) + line_color 3342489 + InterObjView @353 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "SetPropertiesRule" @355 + location (1920, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @355 + location (1920, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 363 + justify 0 + label "SetPropertiesRule") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE100303A4" + width 381 + height 1214 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @356 + location (1920, 928) + line_color 3342489 + InterObjView @355 + height 200 + y_coord 140 + Nested FALSE)) + (object InterObjView "SetNextRule" @357 + location (2272, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @357 + location (2272, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "SetNextRule") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE12690267" + width 300 + height 1214 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @358 + location (2272, 1168) + line_color 3342489 + InterObjView @357 + height 60 + y_coord 0 + Nested FALSE)) + (object SelfMessView "" @359 + location (0, 352) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @360 + Parent_View @359 + location (267, 308) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE0E7801DB" + anchor_loc 1 + nlines 1 + max_width 108 + justify 0 + label "parse" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @342 + supplier @342 + Focus_Src @343 + Focus_Entry @344 + origin (192, 352) + terminus (342, 352) + ordinal 0) + (object SelfMessView "" @361 + location (16, 448) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @362 + Parent_View @361 + location (345, 420) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE0F2F03D2" + anchor_loc 1 + nlines 1 + max_width 267 + justify 0 + label "startElement()" + pctDist 1.020000 + height 28 + orientation 0) + line_color 3342489 + client @342 + supplier @342 + Focus_Src @343 + Focus_Entry @345 + origin (192, 448) + terminus (342, 448) + ordinal 1) + (object InterMessView "" @363 + location (336, 560) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @364 + Parent_View @363 + location (327, 516) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE0F400214" + anchor_loc 1 + nlines 1 + max_width 132 + justify 0 + label "begin()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @342 + supplier @346 + Focus_Src @343 + Focus_Entry @347 + origin (191, 560) + terminus (464, 560) + ordinal 2) + (object InterMessView "" @365 + location (16, 592) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @366 + Parent_View @365 + location (647, 548) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE0FD30266" + anchor_loc 1 + nlines 1 + max_width 265 + justify 0 + label "newInstance()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @346 + supplier @348 + Focus_Src @347 + Focus_Entry @349 + origin (495, 592) + terminus (800, 592) + ordinal 3) + (object InterMessView "" @367 + location (864, 928) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @368 + Parent_View @367 + location (1199, 884) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE102002E9" + anchor_loc 1 + nlines 1 + max_width 132 + justify 0 + label "begin()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @346 + supplier @355 + Focus_Src @347 + Focus_Entry @356 + origin (495, 928) + terminus (1904, 928) + ordinal 6) + (object InterMessView "" @369 + location (1008, 736) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @370 + Parent_View @369 + location (1139, 693) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE114A0193" + anchor_loc 1 + nlines 1 + max_width 610 + justify 0 + label "setBasic(StandardContextValve)" + pctDist 0.915014 + height 44 + orientation 0) + line_color 3342489 + client @348 + supplier @351 + Focus_Src @349 + Focus_Entry @352 + origin (831, 736) + terminus (1168, 736) + ordinal 5) + (object InterMessView "" @371 + location (16, 624) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @372 + Parent_View @371 + location (1183, 580) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE115E001F" + anchor_loc 1 + nlines 1 + max_width 106 + justify 0 + label "new()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @348 + supplier @353 + Focus_Src @349 + Focus_Entry @354 + origin (831, 624) + terminus (1536, 624) + ordinal 4) + (object InterMessView "" @373 + location (1440, 1008) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @374 + Parent_View @373 + location (1368, 964) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE11D50391" + anchor_loc 1 + nlines 1 + max_width 1190 + justify 0 + label "//Using BeanUtil, set the object properties (from ex: admin.xml)" + pctDist 0.500000 + height 45 + orientation 1) + line_color 3342489 + client @355 + supplier @348 + Focus_Src @356 + Focus_Entry @350 + origin (1904, 1008) + terminus (832, 1008) + ordinal 7) + (object InterMessView "" @375 + location (1392, 1168) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @376 + Parent_View @375 + location (1375, 1124) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE128501C8" + anchor_loc 1 + nlines 1 + max_width 99 + justify 0 + label "end()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @346 + supplier @357 + Focus_Src @347 + Focus_Entry @358 + origin (495, 1168) + terminus (2256, 1168) + ordinal 8) + (object NoteView @377 + location (1216, 80) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @377 + location (900, 15) + fill_color 13434879 + nlines 2 + max_width 596 + label "HostConfig.deployDescriptor()") + line_color 3342489 + fill_color 13434879 + width 656 + height 143) + (object NoteView @378 + location (2128, 1888) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @378 + location (1947, 1822) + fill_color 13434879 + nlines 2 + max_width 327 + label "#3 Catalina.start()") + line_color 3342489 + fill_color 13434879 + width 387 + height 144))) + (object InteractionDiagram "6. catalina_start_4" + mechanism_ref @87 + quid "3DFE13890008" + title "6. catalina_start_4" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 1818 + items (list diagram_item_list + (object InterObjView "Digester" @379 + location (176, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @379 + location (176, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Digester") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE13960364" + width 300 + height 2446 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @380 + location (176, 336) + line_color 3342489 + InterObjView @379 + height 1228 + y_coord 1168 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @381 + location (176, 336) + line_color 3342489 + InterObjView @379 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @382 + location (176, 480) + line_color 3342489 + InterObjView @379 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @383 + location (176, 1616) + line_color 3342489 + InterObjView @379 + height 580 + y_coord 520 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @384 + location (176, 1728) + line_color 3342489 + InterObjView @379 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardHostDeployer" @385 + location (480, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @385 + location (480, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 301 + justify 0 + label "StandardHostDeployer") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE1D8A02DC" + width 319 + height 2446 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @386 + location (480, 576) + line_color 3342489 + InterObjView @385 + height 928 + y_coord 868 + Nested FALSE)) + (object InterObjView "StandardHost" @387 + location (800, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @387 + location (800, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardHost") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE1DF20141" + width 300 + height 2446 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @388 + location (800, 592) + line_color 3342489 + InterObjView @387 + height 852 + y_coord 792 + Nested FALSE)) + (object InterObjView "StandardContext" @389 + location (1120, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @389 + location (1120, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 295 + justify 0 + label "StandardContext") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE196D00D9" + width 313 + height 2446 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @390 + location (1120, 624) + line_color 3342489 + InterObjView @389 + height 760 + y_coord 700 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @391 + location (1120, 800) + line_color 3342489 + InterObjView @389 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @392 + location (1120, 976) + line_color 3342489 + InterObjView @389 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @393 + location (1120, 1072) + line_color 3342489 + InterObjView @389 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "WebappLoader" @394 + location (1440, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @394 + location (1440, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 295 + justify 0 + label "WebappLoader") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE1FFA0347" + width 313 + height 2446 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @395 + location (1440, 640) + line_color 3342489 + InterObjView @394 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "StandardManager" @396 + location (1760, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @396 + location (1760, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 301 + justify 0 + label "StandardManager") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE201F0105" + width 319 + height 2446 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @397 + location (1760, 832) + line_color 3342489 + InterObjView @396 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @398 + location (1760, 1264) + line_color 3342489 + InterObjView @396 + height 60 + y_coord 0 + Nested FALSE)) + (object InterObjView "ContextConfig" @399 + location (1952, 352) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @399 + location (1952, 352) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "ContextConfig") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE2087028C" + width 300 + height 2318 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @400 + location (1952, 412) + InterObjView @399 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @401 + location (1952, 1136) + line_color 3342489 + InterObjView @399 + height 1444 + y_coord 1384 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @402 + location (1952, 1264) + line_color 3342489 + InterObjView @399 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @403 + location (1952, 1456) + line_color 3342489 + InterObjView @399 + height 1070 + y_coord 1010 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @404 + location (1952, 1568) + line_color 3342489 + InterObjView @399 + height 952 + y_coord 892 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @405 + location (1952, 1984) + line_color 3342489 + InterObjView @399 + height 152 + y_coord 92 + Nested TRUE)) + (object SelfMessView "" @406 + location (16, 336) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @407 + Parent_View @406 + location (267, 292) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE19AE0065" + anchor_loc 1 + nlines 1 + max_width 108 + justify 0 + label "parse" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @379 + supplier @379 + Focus_Src @380 + Focus_Entry @381 + origin (192, 336) + terminus (342, 336) + ordinal 0) + (object SelfMessView "" @408 + location (16, 480) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @409 + Parent_View @408 + location (328, 437) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE19B102E9" + anchor_loc 1 + nlines 1 + max_width 267 + justify 0 + label "startElement()" + pctDist 0.906667 + height 44 + orientation 0) + line_color 3342489 + client @379 + supplier @379 + Focus_Src @380 + Focus_Entry @382 + origin (192, 480) + terminus (342, 480) + ordinal 1) + (object InterMessView "" @410 + location (16, 576) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @411 + Parent_View @410 + location (327, 552) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE1DFB0022" + anchor_loc 1 + nlines 1 + max_width 165 + justify 0 + label "addChild" + pctDist 0.498645 + height 25 + orientation 0) + line_color 3342489 + client @379 + supplier @385 + Focus_Src @380 + Focus_Entry @386 + origin (191, 576) + terminus (464, 576) + ordinal 2) + (object InterMessView "" @412 + location (16, 592) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @413 + Parent_View @412 + location (639, 548) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE1FB60277" + anchor_loc 1 + nlines 1 + max_width 165 + justify 0 + label "addChild" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @385 + supplier @387 + Focus_Src @386 + Focus_Entry @388 + origin (495, 592) + terminus (784, 592) + ordinal 3) + (object InterMessView "" @414 + location (16, 624) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @415 + Parent_View @414 + location (959, 580) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE1FC40228" + anchor_loc 1 + nlines 1 + max_width 110 + justify 0 + label "start()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @387 + supplier @389 + Focus_Src @388 + Focus_Entry @390 + origin (815, 624) + terminus (1104, 624) + ordinal 4) + (object InterMessView "" @416 + location (16, 640) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @417 + Parent_View @416 + location (1279, 596) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE200603BE" + anchor_loc 1 + nlines 1 + max_width 82 + justify 0 + label "new" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @389 + supplier @394 + Focus_Src @390 + Focus_Entry @395 + origin (1135, 640) + terminus (1424, 640) + ordinal 5) + (object SelfMessView "" @418 + location (16, 800) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @419 + Parent_View @418 + location (1224, 756) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE200C029A" + anchor_loc 1 + nlines 1 + max_width 186 + justify 0 + label "setLoader" + pctDist 0.593333 + height 45 + orientation 0) + line_color 3342489 + client @389 + supplier @389 + Focus_Src @390 + Focus_Entry @391 + origin (1136, 800) + terminus (1286, 800) + ordinal 6) + (object InterMessView "" @420 + location (16, 832) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @421 + Parent_View @420 + location (1439, 788) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE202C0250" + anchor_loc 1 + nlines 1 + max_width 82 + justify 0 + label "new" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @389 + supplier @396 + Focus_Src @390 + Focus_Entry @397 + origin (1135, 832) + terminus (1744, 832) + ordinal 7) + (object SelfMessView "" @422 + location (16, 976) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @423 + Parent_View @422 + location (1260, 933) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE2032001C" + anchor_loc 1 + nlines 1 + max_width 221 + justify 0 + label "setManager" + pctDist 0.833333 + height 44 + orientation 0) + line_color 3342489 + client @389 + supplier @389 + Focus_Src @390 + Focus_Entry @392 + origin (1136, 976) + terminus (1286, 976) + ordinal 8) + (object SelfMessView "" @424 + location (16, 1072) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @425 + Parent_View @424 + location (1481, 1043) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE205B01A2" + anchor_loc 1 + nlines 1 + max_width 658 + justify 0 + label "fireLifecycleEvent(START_EVENT)" + pctDist 2.306667 + height 30 + orientation 0) + line_color 3342489 + client @389 + supplier @389 + Focus_Src @390 + Focus_Entry @393 + origin (1136, 1072) + terminus (1286, 1072) + ordinal 9) + (object InterMessView "" @426 + location (16, 1136) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @427 + Parent_View @426 + location (1535, 1092) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE20960003" + anchor_loc 1 + nlines 1 + max_width 745 + justify 0 + label " // Notify interested LifecycleListeners" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @389 + supplier @399 + Focus_Src @390 + Focus_Entry @401 + origin (1135, 1136) + terminus (1936, 1136) + ordinal 10) + (object SelfMessView "" @428 + location (16, 1264) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @429 + Parent_View @428 + location (2043, 1220) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE20CF018C" + anchor_loc 1 + nlines 1 + max_width 110 + justify 0 + label "start()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @399 + supplier @399 + Focus_Src @401 + Focus_Entry @402 + origin (1968, 1264) + terminus (2118, 1264) + ordinal 11) + (object SelfMessView "" @430 + location (16, 1456) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @431 + Parent_View @430 + location (2027, 1413) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE20E303E2" + anchor_loc 1 + nlines 1 + max_width 275 + justify 0 + label "defaultConfig()" + pctDist 0.393333 + height 44 + orientation 0) + line_color 3342489 + client @399 + supplier @399 + Focus_Src @401 + Focus_Entry @403 + origin (1968, 1456) + terminus (2118, 1456) + ordinal 13) + (object SelfMessView "" @432 + location (16, 1568) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @433 + Parent_View @432 + location (2043, 1524) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE211D01A1" + anchor_loc 1 + nlines 1 + max_width 349 + justify 0 + label "applicationConfig()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @399 + supplier @399 + Focus_Src @401 + Focus_Entry @404 + origin (1968, 1568) + terminus (2118, 1568) + ordinal 14) + (object InterMessView "" @434 + location (1664, 1264) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @435 + Parent_View @434 + location (1439, 1220) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE20B600E5" + anchor_loc 1 + nlines 1 + max_width 110 + justify 0 + label "start()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @389 + supplier @396 + Focus_Src @390 + Focus_Entry @398 + origin (1135, 1264) + terminus (1744, 1264) + ordinal 12) + (object InterMessView "" @436 + location (16, 1616) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @437 + Parent_View @436 + location (1064, 1572) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE21B60288" + anchor_loc 1 + nlines 1 + max_width 145 + justify 0 + label "create()" + pctDist 0.500000 + height 45 + orientation 1) + line_color 3342489 + client @399 + supplier @379 + Focus_Src @404 + Focus_Entry @383 + origin (1936, 1616) + terminus (192, 1616) + ordinal 15) + (object SelfMessView "" @438 + location (16, 1728) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @439 + Parent_View @438 + location (457, 1701) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE21BE021B" + anchor_loc 1 + nlines 1 + max_width 530 + justify 0 + label "// Process web.xml * tld.xml" + pctDist 1.773333 + height 28 + orientation 0) + line_color 3342489 + client @379 + supplier @379 + Focus_Src @383 + Focus_Entry @384 + origin (192, 1728) + terminus (342, 1728) + ordinal 16) + (object InterObjView "StandardWrapper" @440 + location (2208, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @440 + location (2208, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardWrapper") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE220C0122" + width 300 + height 2446 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @441 + location (2208, 2016) + line_color 3342489 + InterObjView @440 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @442 + location (2208, 2176) + line_color 3342489 + InterObjView @440 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @443 + location (2208, 2288) + line_color 3342489 + InterObjView @440 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @444 + location (2208, 2400) + line_color 3342489 + InterObjView @440 + height 60 + y_coord 0 + Nested FALSE)) + (object InterMessView "" @445 + location (16, 1984) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @446 + Parent_View @445 + location (1063, 1940) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE228B03BA" + anchor_loc 1 + nlines 1 + max_width 1478 + justify 0 + label "createWarpper() // Invoked by a WebWrapperRule (not Directly by the Digester)" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @379 + supplier @399 + Focus_Src @383 + Focus_Entry @405 + origin (191, 1984) + terminus (1936, 1984) + ordinal 17) + (object InterMessView "" @447 + location (16, 2016) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @448 + Parent_View @447 + location (2079, 1972) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE229A0004" + anchor_loc 1 + nlines 1 + max_width 82 + justify 0 + label "new" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @399 + supplier @440 + Focus_Src @405 + Focus_Entry @441 + origin (1967, 2016) + terminus (2192, 2016) + ordinal 18) + (object InterMessView "" @449 + location (16, 2176) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @450 + Parent_View @449 + location (2116, 2134) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE22A700C1" + anchor_loc 1 + nlines 1 + max_width 405 + justify 0 + label "addInstanceListener()" + pctDist 0.662295 + height 43 + orientation 0) + line_color 3342489 + client @399 + supplier @440 + Focus_Src @404 + Focus_Entry @442 + origin (1967, 2176) + terminus (2192, 2176) + ordinal 19) + (object InterMessView "" @451 + location (2496, 2288) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @452 + Parent_View @451 + location (2116, 2245) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE22C701CC" + anchor_loc 1 + nlines 1 + max_width 410 + justify 0 + label "addLifecycleListener()" + pctDist 0.662295 + height 44 + orientation 0) + line_color 3342489 + client @399 + supplier @440 + Focus_Src @404 + Focus_Entry @443 + origin (1967, 2288) + terminus (2192, 2288) + ordinal 20) + (object InterMessView "" @453 + location (16, 2400) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @454 + Parent_View @453 + location (2124, 2357) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE22E80364" + anchor_loc 1 + nlines 1 + max_width 428 + justify 0 + label "addContainerListener()" + pctDist 0.701639 + height 44 + orientation 0) + line_color 3342489 + client @399 + supplier @440 + Focus_Src @404 + Focus_Entry @444 + origin (1967, 2400) + terminus (2192, 2400) + ordinal 21) + (object NoteView @455 + location (1216, 80) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @455 + location (825, 14) + fill_color 13434879 + nlines 2 + max_width 746 + label "Deploy App.") + line_color 3342489 + fill_color 13434879 + width 806 + height 144) + (object NoteView @456 + location (2144, 2704) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @456 + location (1953, 2641) + fill_color 13434879 + nlines 2 + max_width 347 + label "#4 Catalina.start()") + line_color 3342489 + fill_color 13434879 + width 407 + height 138))) + (object InteractionDiagram "1. catalina_request" + mechanism_ref @88 + quid "3DFE3B5001C3" + title "1. catalina_request" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 0 + items (list diagram_item_list + (object InterObjView "ThreadPool" @457 + location (176, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @457 + location (176, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "ThreadPool") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE402B02C5" + width 300 + height 1276 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @458 + location (176, 384) + line_color 3342489 + InterObjView @457 + height 304 + y_coord 244 + Nested FALSE)) + (object InterObjView "TcpWorkerThread" @459 + location (512, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @459 + location (512, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 332 + justify 0 + label "TcpWorkerThread") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE403200F8" + width 350 + height 1276 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @460 + location (512, 384) + line_color 3342489 + InterObjView @459 + height 244 + y_coord 184 + Nested FALSE)) + (object InterObjView "Http11Protocol" @461 + location (848, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @461 + location (848, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "Http11Protocol") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE40750177" + width 300 + height 1276 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @462 + location (848, 400) + line_color 3342489 + InterObjView @461 + height 168 + y_coord 108 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @463 + location (848, 448) + line_color 3342489 + InterObjView @461 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @464 + location (848, 592) + line_color 3342489 + InterObjView @461 + height 120 + y_coord 60 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @465 + location (848, 592) + line_color 3342489 + InterObjView @461 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @466 + location (848, 736) + line_color 3342489 + InterObjView @461 + height 674 + y_coord 614 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @467 + location (848, 736) + line_color 3342489 + InterObjView @461 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "CoyoteAdapter" @468 + location (1168, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @468 + location (1168, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "CoyoteAdapter") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE410600DF" + width 300 + height 1276 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @469 + location (1168, 848) + line_color 3342489 + InterObjView @468 + height 502 + y_coord 442 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @470 + location (1168, 944) + line_color 3342489 + InterObjView @468 + height 352 + y_coord 292 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @471 + location (1168, 944) + line_color 3342489 + InterObjView @468 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardEngine" @472 + location (1520, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @472 + location (1520, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 363 + justify 0 + label "StandardEngine") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE424B0349" + width 381 + height 1276 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @473 + location (1520, 1008) + line_color 3342489 + InterObjView @472 + height 228 + y_coord 168 + Nested FALSE)) + (object InterObjView "StandardPipeline" @474 + location (1872, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @474 + location (1872, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardPipeline") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE42900045" + width 300 + height 1276 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @475 + location (1872, 1040) + line_color 3342489 + InterObjView @474 + height 136 + y_coord 76 + Nested FALSE)) + (object InterObjView "StandardValveContext" @476 + location (2192, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @476 + location (2192, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardValveContext") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE42C002B1" + width 300 + height 1276 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @477 + location (2192, 1056) + line_color 3342489 + InterObjView @476 + height 60 + y_coord 0 + Nested FALSE)) + (object InterMessView "" @478 + location (16, 384) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @479 + Parent_View @478 + location (343, 340) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE40E701AE" + anchor_loc 1 + nlines 1 + max_width 112 + justify 0 + label "runIt()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @457 + supplier @459 + Focus_Src @458 + Focus_Entry @460 + origin (191, 384) + terminus (496, 384) + ordinal 0) + (object InterMessView "" @480 + location (16, 400) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @481 + Parent_View @480 + location (679, 356) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE40FC010E" + anchor_loc 1 + nlines 1 + max_width 359 + justify 0 + label "processConnection" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @459 + supplier @461 + Focus_Src @460 + Focus_Entry @462 + origin (527, 400) + terminus (832, 400) + ordinal 1) + (object SelfMessView "" @482 + location (16, 448) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @483 + Parent_View @482 + location (969, 405) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE4111029F" + anchor_loc 1 + nlines 1 + max_width 175 + justify 0 + label "process()" + pctDist 0.706667 + height 44 + orientation 0) + line_color 3342489 + client @461 + supplier @461 + Focus_Src @462 + Focus_Entry @463 + origin (864, 448) + terminus (1014, 448) + ordinal 2) + (object SelfMessView "" @484 + location (16, 592) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @485 + Parent_View @484 + location (1048, 549) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE415C0151" + anchor_loc 1 + nlines 1 + max_width 291 + justify 0 + label "parseHeaders()" + pctDist 1.226667 + height 44 + orientation 0) + line_color 3342489 + client @461 + supplier @461 + Focus_Src @464 + Focus_Entry @465 + origin (864, 592) + terminus (1014, 592) + ordinal 3) + (object SelfMessView "" @486 + location (16, 736) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @487 + Parent_View @486 + location (1052, 692) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE41A60161" + anchor_loc 1 + nlines 1 + max_width 328 + justify 0 + label "prepareRequest()" + pctDist 1.253333 + height 44 + orientation 0) + line_color 3342489 + client @461 + supplier @461 + Focus_Src @466 + Focus_Entry @467 + origin (864, 736) + terminus (1014, 736) + ordinal 4) + (object InterMessView "" @488 + location (992, 848) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @489 + Parent_View @488 + location (1007, 804) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE41D60107" + anchor_loc 1 + nlines 1 + max_width 162 + justify 0 + label "service()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @461 + supplier @468 + Focus_Src @466 + Focus_Entry @469 + origin (863, 848) + terminus (1152, 848) + ordinal 5) + (object SelfMessView "" @490 + location (16, 944) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @491 + Parent_View @490 + location (1372, 916) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE422C01F1" + anchor_loc 1 + nlines 1 + max_width 373 + justify 0 + label "postParseRequest()" + pctDist 1.253333 + height 28 + orientation 0) + line_color 3342489 + client @468 + supplier @468 + Focus_Src @470 + Focus_Entry @471 + origin (1184, 944) + terminus (1334, 944) + ordinal 6) + (object InterMessView "" @492 + location (1344, 1008) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @493 + Parent_View @492 + location (1343, 964) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE42800238" + anchor_loc 1 + nlines 1 + max_width 149 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @468 + supplier @472 + Focus_Src @470 + Focus_Entry @473 + origin (1183, 1008) + terminus (1504, 1008) + ordinal 7) + (object InterMessView "" @494 + location (16, 1040) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @495 + Parent_View @494 + location (1695, 996) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE429A002D" + anchor_loc 1 + nlines 1 + max_width 149 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @472 + supplier @474 + Focus_Src @473 + Focus_Entry @475 + origin (1535, 1040) + terminus (1856, 1040) + ordinal 8) + (object InterMessView "" @496 + location (16, 1056) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @497 + Parent_View @496 + location (2031, 1012) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE42CE0230" + anchor_loc 1 + nlines 1 + max_width 149 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @474 + supplier @476 + Focus_Src @475 + Focus_Entry @477 + origin (1887, 1056) + terminus (2176, 1056) + ordinal 9) + (object NoteView @498 + location (2000, 2016) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @498 + location (1862, 1956) + fill_color 13434879 + nlines 2 + max_width 240 + label "See next diagram") + line_color 3342489 + fill_color 13434879 + width 300 + height 132) + (object AttachView "" @499 + stereotype TRUE + line_color 3342489 + client @498 + supplier @476 + line_style 0))) + (object InteractionDiagram "2. catalina_request_2" + mechanism_ref @89 + quid "3DFE42F7024C" + title "2. catalina_request_2" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 0 + items (list diagram_item_list + (object InterObjView "StandardContextValve" @500 + location (224, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @500 + location (224, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 401 + justify 0 + label "StandardContextValve") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE4307001E" + width 419 + height 1678 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @501 + location (224, 384) + line_color 3342489 + InterObjView @500 + height 386 + y_coord 326 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @502 + location (224, 704) + line_color 3342489 + InterObjView @500 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @503 + location (224, 896) + line_color 3342489 + InterObjView @500 + height 916 + y_coord 856 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @504 + location (224, 1024) + line_color 3342489 + InterObjView @500 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @505 + location (224, 1280) + line_color 3342489 + InterObjView @500 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardEngineValve" @506 + location (592, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @506 + location (592, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardEngineValve") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE432801F3" + width 300 + height 1678 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @507 + location (592, 384) + line_color 3342489 + InterObjView @506 + height 264 + y_coord 204 + Nested FALSE)) + (object InterObjView "StandardHost" @508 + location (912, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @508 + location (912, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardHost") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE436503BD" + width 300 + height 1678 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @509 + location (912, 416) + line_color 3342489 + InterObjView @508 + height 431 + y_coord 371 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @510 + location (912, 528) + line_color 3342489 + InterObjView @508 + height 60 + y_coord 0 + Nested TRUE) + Focus_Of_Control (object Focus_Of_Control "" @511 + location (912, 704) + line_color 3342489 + InterObjView @508 + height 120 + y_coord 60 + Nested TRUE)) + (object InterObjView "ErrorReportValve" @512 + location (1264, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @512 + location (1264, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 294 + justify 0 + label "ErrorReportValve") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE438C028D" + width 312 + height 1678 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @513 + location (1264, 896) + line_color 3342489 + InterObjView @512 + height 248 + y_coord 188 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @514 + location (1264, 944) + line_color 3342489 + InterObjView @512 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "ErrorDispatcherValve" @515 + location (1584, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @515 + location (1584, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 295 + justify 0 + label "ErrorDispatcherValve") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE451F01EC" + width 313 + height 1678 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @516 + location (1584, 1168) + line_color 3342489 + InterObjView @515 + height 232 + y_coord 172 + Nested FALSE)) + (object InterObjView "StandardHostValve" @517 + location (1904, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @517 + location (1904, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 295 + justify 0 + label "StandardHostValve") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE47310130" + width 313 + height 1678 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @518 + location (1904, 1472) + line_color 3342489 + InterObjView @517 + height 280 + y_coord 220 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @519 + location (1904, 1536) + line_color 3342489 + InterObjView @517 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardContext" @520 + location (2224, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @520 + location (2224, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardContext") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE47C100F1" + width 300 + height 1678 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @521 + location (2224, 1632) + line_color 3342489 + InterObjView @520 + height 60 + y_coord 0 + Nested FALSE)) + (object InterMessView "" @522 + location (16, 384) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @523 + Parent_View @522 + location (407, 340) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE434C019B" + anchor_loc 1 + nlines 1 + max_width 146 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @500 + supplier @506 + Focus_Src @501 + Focus_Entry @507 + origin (239, 384) + terminus (576, 384) + ordinal 0) + (object InterMessView "" @524 + location (16, 416) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @525 + Parent_View @524 + location (751, 372) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE436C009D" + anchor_loc 1 + nlines 1 + max_width 107 + justify 0 + label "map()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @506 + supplier @508 + Focus_Src @507 + Focus_Entry @509 + origin (607, 416) + terminus (896, 416) + ordinal 1) + (object InterMessView "" @526 + location (800, 528) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @527 + Parent_View @526 + location (751, 484) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE43830063" + anchor_loc 1 + nlines 1 + max_width 146 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @506 + supplier @508 + Focus_Src @507 + Focus_Entry @510 + origin (607, 528) + terminus (896, 528) + ordinal 2) + (object InterMessView "" @528 + location (608, 704) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @529 + Parent_View @528 + location (568, 660) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE43B903BF" + anchor_loc 1 + nlines 1 + max_width 146 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 1) + line_color 3342489 + client @508 + supplier @500 + Focus_Src @511 + Focus_Entry @502 + origin (896, 704) + terminus (240, 704) + ordinal 3) + (object InterMessView "" @530 + location (752, 896) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @531 + Parent_View @530 + location (743, 852) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE43C203A4" + anchor_loc 1 + nlines 1 + max_width 146 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @500 + supplier @512 + Focus_Src @503 + Focus_Entry @513 + origin (239, 896) + terminus (1248, 896) + ordinal 4) + (object SelfMessView "" @532 + location (16, 944) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @533 + Parent_View @532 + location (1355, 900) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE442501B1" + anchor_loc 1 + nlines 1 + max_width 135 + justify 0 + label "report()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @512 + supplier @512 + Focus_Src @513 + Focus_Entry @514 + origin (1280, 944) + terminus (1430, 944) + ordinal 5) + (object InterMessView "" @534 + location (16, 1024) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @535 + Parent_View @534 + location (744, 980) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE46330293" + anchor_loc 1 + nlines 1 + max_width 230 + justify 0 + label "invokeNext()" + pctDist 0.500000 + height 45 + orientation 1) + line_color 3342489 + client @512 + supplier @500 + Focus_Src @513 + Focus_Entry @504 + origin (1248, 1024) + terminus (240, 1024) + ordinal 6) + (object InterMessView "" @536 + location (944, 1168) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @537 + Parent_View @536 + location (903, 1124) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE46E70026" + anchor_loc 1 + nlines 1 + max_width 146 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @500 + supplier @515 + Focus_Src @503 + Focus_Entry @516 + origin (239, 1168) + terminus (1568, 1168) + ordinal 7) + (object InterMessView "" @538 + location (16, 1280) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @539 + Parent_View @538 + location (904, 1236) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE475D03A0" + anchor_loc 1 + nlines 1 + max_width 206 + justify 0 + label "invokeNext" + pctDist 0.500000 + height 45 + orientation 1) + line_color 3342489 + client @515 + supplier @500 + Focus_Src @516 + Focus_Entry @505 + origin (1568, 1280) + terminus (240, 1280) + ordinal 8) + (object InterMessView "" @540 + location (1184, 1472) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @541 + Parent_View @540 + location (1063, 1428) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE476503CA" + anchor_loc 1 + nlines 1 + max_width 146 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @500 + supplier @517 + Focus_Src @503 + Focus_Entry @518 + origin (239, 1472) + terminus (1888, 1472) + ordinal 9) + (object SelfMessView "" @542 + location (16, 1536) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @543 + Parent_View @542 + location (1995, 1492) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE47CD0167" + anchor_loc 1 + nlines 1 + max_width 295 + justify 0 + label "map() //Context" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @517 + supplier @517 + Focus_Src @518 + Focus_Entry @519 + origin (1920, 1536) + terminus (2070, 1536) + ordinal 10) + (object InterMessView "" @544 + location (16, 1632) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @545 + Parent_View @544 + location (2063, 1588) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE47D500B4" + anchor_loc 1 + nlines 1 + max_width 146 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @517 + supplier @520 + Focus_Src @518 + Focus_Entry @521 + origin (1919, 1632) + terminus (2208, 1632) + ordinal 11))) + (object InteractionDiagram "3. catalina_request_3" + mechanism_ref @90 + quid "3DFE48A202AD" + title "3. catalina_request_3" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 612 + origin_y 938 + items (list diagram_item_list + (object InterObjView "StandardContext" @546 + location (160, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @546 + location (160, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardContext") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE48B001D1" + width 300 + height 2226 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @547 + location (160, 400) + line_color 3342489 + InterObjView @546 + height 1960 + y_coord 1900 + Nested FALSE)) + (object InterObjView "StandardPipeline" @548 + location (480, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @548 + location (480, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardPipeline") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE48B80088" + width 300 + height 2226 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @549 + location (480, 400) + line_color 3342489 + InterObjView @548 + height 1900 + y_coord 1840 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @550 + location (480, 1088) + line_color 3342489 + InterObjView @548 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardValveContext" @551 + location (800, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @551 + location (800, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardValveContext") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE48D000DC" + width 300 + height 2226 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @552 + location (800, 736) + line_color 3342489 + InterObjView @551 + height 1510 + y_coord 1450 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @553 + location (800, 1168) + line_color 3342489 + InterObjView @551 + height 1072 + y_coord 1012 + Nested TRUE)) + (object InterObjView "StandardContextValve" @554 + location (1104, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @554 + location (1104, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardContextValve") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE490303A7" + width 300 + height 2226 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @555 + location (1104, 800) + line_color 3342489 + InterObjView @554 + height 468 + y_coord 408 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @556 + location (1104, 848) + line_color 3342489 + InterObjView @554 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "StandardWrapper" @557 + location (1424, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @557 + location (1424, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 288 + justify 0 + label "StandardWrapper") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE49370351" + width 306 + height 2226 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @558 + location (1424, 944) + line_color 3342489 + InterObjView @557 + height 264 + y_coord 204 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @559 + location (1424, 1520) + line_color 3342489 + InterObjView @557 + height 340 + y_coord 280 + Nested FALSE)) + (object InterObjView "StandardWrapperValve" @560 + location (1744, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @560 + location (1744, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "StandardWrapperValve") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE49890056" + width 300 + height 2226 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @561 + location (1744, 1440) + line_color 3342489 + InterObjView @560 + height 740 + y_coord 680 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @562 + location (1744, 1616) + line_color 3342489 + InterObjView @560 + height 184 + y_coord 124 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @563 + location (1744, 2000) + line_color 3342489 + InterObjView @560 + height 60 + y_coord 0 + Nested TRUE)) + (object InterObjView "ApplicationFilterChain" @564 + location (2064, 224) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @564 + location (2064, 224) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "ApplicationFilterChain") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE4A1500B2" + width 300 + height 2226 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @565 + location (2064, 1680) + line_color 3342489 + InterObjView @564 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @566 + location (2064, 1808) + line_color 3342489 + InterObjView @564 + height 312 + y_coord 252 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @567 + location (2064, 1872) + line_color 3342489 + InterObjView @564 + height 60 + y_coord 0 + Nested TRUE)) + (object InterMessView "" @568 + location (336, 400) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @569 + Parent_View @568 + location (319, 356) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE48BE0268" + anchor_loc 1 + nlines 1 + max_width 147 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @546 + supplier @548 + Focus_Src @547 + Focus_Entry @549 + origin (175, 400) + terminus (464, 400) + ordinal 0) + (object InterMessView "" @570 + location (16, 736) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @571 + Parent_View @570 + location (639, 692) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE48EA003A" + anchor_loc 1 + nlines 1 + max_width 147 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @548 + supplier @551 + Focus_Src @549 + Focus_Entry @552 + origin (495, 736) + terminus (784, 736) + ordinal 1) + (object InterMessView "" @572 + location (16, 800) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @573 + Parent_View @572 + location (951, 756) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE491102D6" + anchor_loc 1 + nlines 1 + max_width 147 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @551 + supplier @554 + Focus_Src @552 + Focus_Entry @555 + origin (815, 800) + terminus (1088, 800) + ordinal 2) + (object SelfMessView "" @574 + location (16, 848) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @575 + Parent_View @574 + location (1322, 821) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE492F033D" + anchor_loc 1 + nlines 1 + max_width 437 + justify 0 + label "map //return Wrapper" + pctDist 1.346667 + height 28 + orientation 0) + line_color 3342489 + client @554 + supplier @554 + Focus_Src @555 + Focus_Entry @556 + origin (1120, 848) + terminus (1270, 848) + ordinal 3) + (object InterMessView "" @576 + location (1264, 944) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @577 + Parent_View @576 + location (1262, 901) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE494A0151" + anchor_loc 1 + nlines 1 + max_width 147 + justify 0 + label "invoke()" + pctDist 0.498270 + height 44 + orientation 0) + line_color 3342489 + client @554 + supplier @557 + Focus_Src @555 + Focus_Entry @558 + origin (1119, 944) + terminus (1408, 944) + ordinal 4) + (object InterMessView "" @578 + location (960, 1088) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @579 + Parent_View @578 + location (952, 1044) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE495F0288" + anchor_loc 1 + nlines 1 + max_width 147 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 1) + line_color 3342489 + client @557 + supplier @548 + Focus_Src @558 + Focus_Entry @550 + origin (1408, 1088) + terminus (496, 1088) + ordinal 5) + (object InterMessView "" @580 + location (16, 1168) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @581 + Parent_View @580 + location (639, 1124) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE4976015D" + anchor_loc 1 + nlines 1 + max_width 147 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @548 + supplier @551 + Focus_Src @549 + Focus_Entry @553 + origin (495, 1168) + terminus (784, 1168) + ordinal 6) + (object InterMessView "" @582 + location (1296, 1440) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @583 + Parent_View @582 + location (1271, 1396) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE4993023C" + anchor_loc 1 + nlines 1 + max_width 147 + justify 0 + label "invoke()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @551 + supplier @560 + Focus_Src @553 + Focus_Entry @561 + origin (815, 1440) + terminus (1728, 1440) + ordinal 7) + (object InterMessView "" @584 + location (1616, 1520) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @585 + Parent_View @584 + location (1584, 1476) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE49EC004F" + anchor_loc 1 + nlines 1 + max_width 175 + justify 0 + label "allocate()" + pctDist 0.500000 + height 45 + orientation 1) + line_color 3342489 + client @560 + supplier @557 + Focus_Src @561 + Focus_Entry @559 + origin (1728, 1520) + terminus (1440, 1520) + ordinal 8) + (object InterMessView "" @586 + location (1616, 1616) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @587 + Parent_View @586 + location (1583, 1572) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE4A200067" + anchor_loc 1 + nlines 1 + max_width 242 + justify 0 + label "return servlet" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @557 + supplier @560 + Focus_Src @559 + Focus_Entry @562 + origin (1439, 1616) + terminus (1728, 1616) + ordinal 9) + (object InterMessView "" @588 + location (1936, 1680) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @589 + Parent_View @588 + location (1937, 1636) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE4A29027E" + anchor_loc 1 + nlines 1 + max_width 343 + justify 0 + label "createFilterChain()" + pctDist 0.619377 + height 45 + orientation 0) + line_color 3342489 + client @560 + supplier @564 + Focus_Src @562 + Focus_Entry @565 + origin (1759, 1680) + terminus (2048, 1680) + ordinal 10) + (object InterMessView "" @590 + location (16, 1808) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @591 + Parent_View @590 + location (1902, 1764) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE4A490283" + anchor_loc 1 + nlines 1 + max_width 170 + justify 0 + label "doFilter()" + pctDist 0.498270 + height 45 + orientation 0) + line_color 3342489 + client @560 + supplier @564 + Focus_Src @561 + Focus_Entry @566 + origin (1759, 1808) + terminus (2048, 1808) + ordinal 11) + (object InterObjView "$UNNAMED$0" @592 + location (2240, 368) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline TRUE + strike FALSE + color 0 + default_color TRUE) + label (object ItemLabel + Parent_View @592 + location (2240, 368) + fill_color 13434879 + anchor_loc 1 + nlines 2 + max_width 282 + justify 0 + label "") + stereotype (object ItemLabel + Parent_View @592 + location (2240, 368) + fill_color 13434879 + anchor 10 + anchor_loc 1 + nlines 1 + max_width 222 + justify 0 + label "<>") + icon_style "Icon" + line_color 3342489 + fill_color 13434879 + quidu "3DFE4BAE0056" + width 300 + height 2082 + icon_height 0 + icon_width 0 + icon_y_offset 0 + annotation 1 + Focus_Of_Control (object Focus_Of_Control "" @593 + location (2240, 428) + InterObjView @592 + height 60 + y_coord 0 + Nested FALSE) + Focus_Of_Control (object Focus_Of_Control "" @594 + location (2240, 1984) + line_color 3342489 + InterObjView @592 + height 60 + y_coord 0 + Nested FALSE)) + (object SelfMessView "" @595 + location (16, 1872) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @596 + Parent_View @595 + location (2155, 1828) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE4C2701C3" + anchor_loc 1 + nlines 1 + max_width 308 + justify 0 + label "internalDoFilter()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @564 + supplier @564 + Focus_Src @566 + Focus_Entry @567 + origin (2080, 1872) + terminus (2230, 1872) + ordinal 12) + (object InterMessView "" @597 + location (2144, 1984) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @598 + Parent_View @597 + location (2151, 1940) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE4CA502BF" + anchor_loc 1 + nlines 1 + max_width 162 + justify 0 + label "service()" + pctDist 0.500000 + height 45 + orientation 0) + line_color 3342489 + client @564 + supplier @592 + Focus_Src @566 + Focus_Entry @594 + origin (2079, 1984) + terminus (2224, 1984) + ordinal 13) + (object InterMessView "" @599 + location (16, 2000) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + label (object SegLabel @600 + Parent_View @599 + location (1904, 1956) + font (object Font + size 10 + face "Arial" + bold FALSE + italics FALSE + underline FALSE + strike FALSE + color 0 + default_color TRUE) + quidu "3DFE4CB4025B" + anchor_loc 1 + nlines 1 + max_width 113 + justify 0 + label "return" + pctDist 0.500000 + height 45 + orientation 1) + line_color 3342489 + client @564 + supplier @560 + Focus_Src @566 + Focus_Entry @563 + origin (2048, 2000) + terminus (1760, 2000) + ordinal 14))))) + root_subsystem (object SubSystem "Component View" + quid "3DFDF6CE036A" + physical_models (list unit_reference_list) + physical_presentations (list unit_reference_list + (object Module_Diagram "Main" + quid "3DFDF6D201FD" + title "Main" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 0 + items (list diagram_item_list)))) + process_structure (object Processes + quid "3DFDF6CE0373" + ProcsNDevs (list + (object Process_Diagram "Deployment View" + quid "3DFDF6CE0387" + title "Deployment View" + zoom 100 + max_height 28350 + max_width 21600 + origin_x 0 + origin_y 0 + items (list diagram_item_list)))) + properties (object Properties + attributes (list Attribute_Set + (object Attribute + tool "Data Modeler" + name "propertyId" + value "809135966") + (object Attribute + tool "Data Modeler" + name "default__Project" + value (list Attribute_Set + (object Attribute + tool "Data Modeler" + name "project" + value "") + (object Attribute + tool "Data Modeler" + name "TableCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "ViewCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "DomainCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "SPPackageCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "TriggerCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "IndexCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "ConstraintCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "StoreProcedureCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "PrimaryKeyCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "ForeignKeyCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "JoinCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "TableSpaceCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "cONTAINERCounter" + value 0) + (object Attribute + tool "Data Modeler" + name "TablePrefix" + value "") + (object Attribute + tool "Data Modeler" + name "ViewPrefix" + value "") + (object Attribute + tool "Data Modeler" + name "DomainPrefix" + value "") + (object Attribute + tool "Data Modeler" + name "TriggerPrefix" + value "") + (object Attribute + tool "Data Modeler" + name "IndexPrefix" + value "") + (object Attribute + tool "Data Modeler" + name "ConstraintPrefix" + value "") + (object Attribute + tool "Data Modeler" + name "StoreProcedurePrefix" + value "") + (object Attribute + tool "Data Modeler" + name "PrimaryKeyPrefix" + value "") + (object Attribute + tool "Data Modeler" + name "ForeignKeyPrefix" + value "") + (object Attribute + tool "Data Modeler" + name "TableSpacePrefix" + value ""))) + (object Attribute + tool "Data Modeler" + name "default__Module-Spec" + value (list Attribute_Set + (object Attribute + tool "Data Modeler" + name "dmItem" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DMName" + value "") + (object Attribute + tool "Data Modeler" + name "IsDatabase" + value FALSE) + (object Attribute + tool "Data Modeler" + name "TargetDatabase" + value "") + (object Attribute + tool "Data Modeler" + name "Location" + value "") + (object Attribute + tool "Data Modeler" + name "IsTableSpace" + value FALSE) + (object Attribute + tool "Data Modeler" + name "TableSpaceType" + value "") + (object Attribute + tool "Data Modeler" + name "IsDeault" + value FALSE) + (object Attribute + tool "Data Modeler" + name "BufferPool" + value "") + (object Attribute + tool "Data Modeler" + name "ExtentSize" + value 1) + (object Attribute + tool "Data Modeler" + name "PrefetchSize" + value 1) + (object Attribute + tool "Data Modeler" + name "PageSize" + value 4) + (object Attribute + tool "Data Modeler" + name "ManagedBy" + value "") + (object Attribute + tool "Data Modeler" + name "ContainerList" + value ""))) + (object Attribute + tool "Data Modeler" + name "default__Category" + value (list Attribute_Set + (object Attribute + tool "Data Modeler" + name "dmItem" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DMName" + value "") + (object Attribute + tool "Data Modeler" + name "dmSchema" + value "") + (object Attribute + tool "Data Modeler" + name "dmDomainPackage" + value "") + (object Attribute + tool "Data Modeler" + name "IsSchema" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsDomainPackage" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsRootSchema" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsRootDomainPackage" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsSchemaPackage" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DatabaseID" + value "") + (object Attribute + tool "Data Modeler" + name "DBMS" + value ""))) + (object Attribute + tool "Data Modeler" + name "default__Class" + value (list Attribute_Set + (object Attribute + tool "Data Modeler" + name "dmItem" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DMName" + value "") + (object Attribute + tool "Data Modeler" + name "IsTable" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsView" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsDomain" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsSPPackage" + value FALSE) + (object Attribute + tool "Data Modeler" + name "Synonymns" + value "") + (object Attribute + tool "Data Modeler" + name "TableSpaceID" + value "") + (object Attribute + tool "Data Modeler" + name "SourceId" + value "") + (object Attribute + tool "Data Modeler" + name "SourceType" + value "") + (object Attribute + tool "Data Modeler" + name "CorrelationName" + value "") + (object Attribute + tool "Data Modeler" + name "SelectClause" + value "") + (object Attribute + tool "Data Modeler" + name "IsUpdateable" + value TRUE) + (object Attribute + tool "Data Modeler" + name "CheckOption" + value "None") + (object Attribute + tool "Data Modeler" + name "IsSnapShot" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsDistinct" + value FALSE) + (object Attribute + tool "Data Modeler" + name "PersistToServer" + value "") + (object Attribute + tool "Data Modeler" + name "IsPackage" + value FALSE))) + (object Attribute + tool "Data Modeler" + name "default__Attribute" + value (list Attribute_Set + (object Attribute + tool "Data Modeler" + name "dmItem" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DMName" + value "") + (object Attribute + tool "Data Modeler" + name "Ordinal" + value 0) + (object Attribute + tool "Data Modeler" + name "IsIdentity" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsUnique" + value FALSE) + (object Attribute + tool "Data Modeler" + name "NullsAllowed" + value FALSE) + (object Attribute + tool "Data Modeler" + name "Length" + value 0) + (object Attribute + tool "Data Modeler" + name "Scale" + value 0) + (object Attribute + tool "Data Modeler" + name "ColumnType" + value "Native") + (object Attribute + tool "Data Modeler" + name "ForBitData" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DefaultValueType" + value "") + (object Attribute + tool "Data Modeler" + name "DefaultValue" + value "") + (object Attribute + tool "Data Modeler" + name "SourceId" + value "") + (object Attribute + tool "Data Modeler" + name "SourceType" + value "") + (object Attribute + tool "Data Modeler" + name "OID" + value FALSE))) + (object Attribute + tool "Data Modeler" + name "default__Association" + value (list Attribute_Set + (object Attribute + tool "Data Modeler" + name "dmItem" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DMName" + value "") + (object Attribute + tool "Data Modeler" + name "IsRelationship" + value FALSE) + (object Attribute + tool "Data Modeler" + name "SourceId" + value "") + (object Attribute + tool "Data Modeler" + name "SourceType" + value "") + (object Attribute + tool "Data Modeler" + name "RIMethod" + value "") + (object Attribute + tool "Data Modeler" + name "ParentUpdateRule" + value "") + (object Attribute + tool "Data Modeler" + name "ParentUpdateRuleName" + value "") + (object Attribute + tool "Data Modeler" + name "ParentDeleteRule" + value "") + (object Attribute + tool "Data Modeler" + name "ParentDeleteRuleName" + value "") + (object Attribute + tool "Data Modeler" + name "ChildInsertRestrict" + value FALSE) + (object Attribute + tool "Data Modeler" + name "ChildInsertRestrictName" + value "") + (object Attribute + tool "Data Modeler" + name "ChildMultiplicity" + value FALSE) + (object Attribute + tool "Data Modeler" + name "ChildMultiplicityName" + value ""))) + (object Attribute + tool "Data Modeler" + name "default__Role" + value (list Attribute_Set + (object Attribute + tool "Data Modeler" + name "dmItem" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DMName" + value "") + (object Attribute + tool "Data Modeler" + name "ConstraintName" + value ""))) + (object Attribute + tool "Data Modeler" + name "default__Operation" + value (list Attribute_Set + (object Attribute + tool "Data Modeler" + name "dmItem" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DMName" + value "") + (object Attribute + tool "Data Modeler" + name "IsConstraint" + value FALSE) + (object Attribute + tool "Data Modeler" + name "ConstraintType" + value "") + (object Attribute + tool "Data Modeler" + name "IsIndex" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsTrigger" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsStoredProcedure" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsCluster" + value FALSE) + (object Attribute + tool "Data Modeler" + name "TableSpace" + value "") + (object Attribute + tool "Data Modeler" + name "FillFactor" + value 0) + (object Attribute + tool "Data Modeler" + name "KeyList" + value "") + (object Attribute + tool "Data Modeler" + name "CheckPredicate" + value "") + (object Attribute + tool "Data Modeler" + name "IsUnique" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DeferalMode" + value "") + (object Attribute + tool "Data Modeler" + name "InitialCheckTime" + value "") + (object Attribute + tool "Data Modeler" + name "TriggerType" + value "") + (object Attribute + tool "Data Modeler" + name "IsInsertEvent" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsUpdateEvent" + value FALSE) + (object Attribute + tool "Data Modeler" + name "IsDeleteEvent" + value FALSE) + (object Attribute + tool "Data Modeler" + name "RefOldTable" + value "") + (object Attribute + tool "Data Modeler" + name "RefNewTable" + value "") + (object Attribute + tool "Data Modeler" + name "RefOldRow" + value "") + (object Attribute + tool "Data Modeler" + name "RefNewRow" + value "") + (object Attribute + tool "Data Modeler" + name "IsRow" + value FALSE) + (object Attribute + tool "Data Modeler" + name "WhenClause" + value "") + (object Attribute + tool "Data Modeler" + name "Language" + value "SQL") + (object Attribute + tool "Data Modeler" + name "ProcType" + value "Procedure") + (object Attribute + tool "Data Modeler" + name "IsDeterministic" + value FALSE) + (object Attribute + tool "Data Modeler" + name "ParameterStyle" + value "") + (object Attribute + tool "Data Modeler" + name "ReturnedNull" + value FALSE) + (object Attribute + tool "Data Modeler" + name "ExternalName" + value "") + (object Attribute + tool "Data Modeler" + name "Length" + value "") + (object Attribute + tool "Data Modeler" + name "Scale" + value "") + (object Attribute + tool "Data Modeler" + name "ForBitData" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DefaultValue" + value "") + (object Attribute + tool "Data Modeler" + name "DefaultValueType" + value ""))) + (object Attribute + tool "Data Modeler" + name "default__Parameter" + value (list Attribute_Set + (object Attribute + tool "Data Modeler" + name "dmItem" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DMName" + value "") + (object Attribute + tool "Data Modeler" + name "IsInParameter" + value TRUE) + (object Attribute + tool "Data Modeler" + name "IsOutParameter" + value FALSE) + (object Attribute + tool "Data Modeler" + name "Ordinal" + value "") + (object Attribute + tool "Data Modeler" + name "Length" + value "") + (object Attribute + tool "Data Modeler" + name "Scale" + value "") + (object Attribute + tool "Data Modeler" + name "ForBitData" + value FALSE) + (object Attribute + tool "Data Modeler" + name "DefaultValueType" + value "") + (object Attribute + tool "Data Modeler" + name "DefaultValue" + value "") + (object Attribute + tool "Data Modeler" + name "OperationID" + value ""))) + (object Attribute + tool "Data Modeler" + name "HiddenTool" + value FALSE) + (object Attribute + tool "Data Modeler Communicator" + name "HiddenTool" + value FALSE) + (object Attribute + tool "Deploy" + name "HiddenTool" + value FALSE) + (object Attribute + tool "Rose Model Integrator" + name "HiddenTool" + value FALSE) + (object Attribute + tool "Rose Web Publisher" + name "HiddenTool" + value FALSE) + (object Attribute + tool "Web Modeler" + name "HiddenTool" + value FALSE)) + quid "3DFDF6CE0374")) diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/startup.html b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/startup.html new file mode 100644 index 0000000..33e44e9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/startup.html @@ -0,0 +1,42 @@ +Apache Tomcat Architecture - Startup
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Contents

    Apache Tomcat Architecture

    Startup

    Printer Friendly Version
    print-friendly
    version +
    Server Startup
    + +

    +This page describes how the Tomcat server starts up. There are several +different ways to start tomcat, including: +

      +
    • From the command line.
    • +
    • From a Java program as an embedded server.
    • +
    • Automatically as a Windows service.
    • +
    +

    + +
    description
    +

    +A text description of the startup procedure is available +here. +

    +
    + +
    diagram
    +

    +A UML sequence diagram of the startup procedure is available +here. +

    +
    + +
    comments
    +

    +The startup process can be customized in many ways, both +by modifying Tomcat code and by implementing your own +LifecycleListeners which are then registered in the server.xml +configuration file. +

    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/startup/serverStartup.pdf b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/startup/serverStartup.pdf new file mode 100644 index 0000000..34aa598 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/startup/serverStartup.pdf differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/architecture/startup/serverStartup.txt b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/startup/serverStartup.txt new file mode 100644 index 0000000..69956d9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/architecture/startup/serverStartup.txt @@ -0,0 +1,136 @@ +Tomcat 5 Startup Sequence + +Sequence 1. Start from Command Line +Class: org.apache.catalina.startup.Bootstrap +What it does: + a) Set up classloaders + commonLoader (common)-> System Loader + sharedLoader (shared)-> commonLoader -> System Loader + catalinaLoader(server) -> commonLoader -> System Loader + b) Load startup class (reflection) + org.apache.catalina.startup.Catalina + setParentClassloader -> sharedLoader + Thread.contextClassloader -> catalinaLoader + c) Bootstrap.daemon.init() complete + +Sequence 2. Process command line argument (start, startd, stop, stopd) +Class: org.apache.catalina.startup.Bootstrap (assume command->start) +What it does: + a) Catalina.setAwait(true); + b) Catalina.load() + b1) initDirs() -> set properties like + catalina.home + catalina.base == catalina.home (most cases) + b2) initNaming + setProperty(javax.naming.Context.INITIAL_CONTEXT_FACTORY, + org.apache.naming.java.javaURLContextFactory ->default) + b3) createStartDigester() + Configures a digester for the main server.xml elements like + org.apache.catalina.core.StandardServer (can change of course :) + org.apache.catalina.deploy.NamingResources + Stores naming resources in the J2EE JNDI tree + org.apache.catalina.LifecycleListener + implements events for start/stop of major components + org.apache.catalina.core.StandardService + The single entry for a set of connectors, + so that a container can listen to multiple connectors + ie, single entry + org.apache.coyote.tomcat5.CoyoteConnector + Connectors to listen for incoming requests only + It also adds the following rulesets to the digester + NamingRuleSet + EngineRuleSet + HostRuleSet + ContextRuleSet + b4) Load the server.xml and parse it using the digester + Parsing the server.xml using the digester is an automatic + XML-object mapping tool, that will create the objects defined in server.xml + Startup of the actual container has not started yet. + b5) Assigns System.out and System.err to the SystemLogHandler class + b6) Calls intialize on all components, this makes each object register itself with the + JMX agent. + During the process call the Connectors also initialize the adapters. + The adapters are the components that do the request pre-processing. + Typical adapters are HTTP1.1 (default if no protocol is specified, + org.apache.coyote.http11.Http11Protocol) + AJP1.3 for mod_jk etc. + + c) Catalina.start() + c1) Starts the NamingContext and binds all JNDI references into it + c2) Starts the services under which are: + StandardService -> starts Engine (ContainerBase ->Logger,Loader,Realm,Cluster etc) + c3) StandardHost (started by the service) + Configures a ErrorReportValvem to do proper HTML output for different HTTP + errors codes + Starts the Valves in the pipeline (at least the ErrorReportValve) + Configures the StandardHostValve, + this valves ties the Webapp Class loader to the thread context + it also finds the session for the request + and invokes the context pipeline + Starts the HostConfig component + This component deploys all the webapps + (webapps & conf/Catalina/localhost/*.xml) + Webapps are installed using the deployer (StandardHostDeployer) + The deployer will create a Digester for your context, this digester + will then invoke ContextConfig.start() + The ContextConfig.start() will process the default web.xml (conf/web.xml) + and then process the applications web.xml (WEB-INF/web.xml) + + c4) During the lifetime of the container (StandardEngine) there is a background thread that + keeps checking if the context has changed. If a context changes (timestamp of war file, + context xml file, web.xml) then a reload is issued (stop/remove/deploy/start) + + d) Tomcat receives a request on an HTTP port + d1) The request is received by a separate thread which is waiting in the PoolTcpEndPoint + class. It is waiting for a request in a regular ServerSocket.accept() method. + When a request is received, this thread wakes up. + d2) The PoolTcpEndPoint assigns the a TcpConnection to handle the request. + It also supplies a JMX object name to the catalina container (not used I believe) + d3) The processor to handle the request in this case is Coyote Http11Processor, + and the process method is invoked. + This same processor is also continuing to check the input stream of the socket + until the keep alive point is reached or the connection is disconnected. + d4) The HTTP request is parsed using an internal buffer class (Coyote Http11 Internal Buffer) + The buffer class parses the request line, the headers, etc and store the result in a + Coyote request (not an HTTP request) This request contains all the HTTP info, such + as servername, port, scheme, etc. + d5) The processor contains a reference to an Adapter, in this case it is the + Coyote Tomcat 5 Adapter. Once the request has been parsed, the Http11 processor + invokes service() on the adapter. In the service method, the Request contains a + CoyoteRequest and CoyoteRespons (null for the first time) + The CoyoteRequest(Response) implements HttpRequest(Response) and HttpServletRequest(Response) + The adapter parses and associates everything with the request, cookies, the context through a + Mapper, etc + d6) When the parsing is finished, the CoyoteAdapter invokes its container (StandardEngine) + and invokes the invoke(request,response) method. + This initiates the HTTP request into the Catalina container starting at the engine level + d7) The StandardEngine.invoke() simply invokes the container pipeline.invoke() + d8) By default the engine only has one valve the StandardEngineValve, this valve simply + invokes the invoke() method on the Host pipeline (StandardHost.getPipeLine()) + d9) the StandardHost has two valves by default, the StandardHostValve and the ErrorReportValve + d10) The standard host valve associates the correct class loader with the current thread + It also retrives the Manager and the session associated with the request (if there is one) + If there is a session access() is called to keep the session alive + d11) After that the StandardHostValve invokes the pipeline on the context associated + with the request. + d12) The first valve that gets invoked by the Context pipeline is the FormAuthenticator + valve. Then the StandardContextValve gets invoke. + The StandardContextValve invokes any context listeners associated with the context. + Next it invokes the pipeline on the Wrapper component (StandardWrapperValve) + d13) During the invokation of the StandardWrapperValve, the JSP wrapper (Jasper) gets invoked + This results in the actual compilation of the JSP. + And then invokes the actual servlet. + e) Invokation of the servlet class + + + + + + + + + + + + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/balancer-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/balancer-howto.html new file mode 100644 index 0000000..77d8d56 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/balancer-howto.html @@ -0,0 +1,25 @@ +Apache Tomcat 6.0 - Load Balancer HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Load Balancer HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    Table of Contents
    +

    + +Using the JK native connector
    + +Using Apache HTTP Server 2.x and mod_proxy
    + +

    +
    Using the JK 1.2.x native connector
    + +Please refer to the JK 1.2.x documentation. + +
    Using Apache HTTP Server 2.x with mod_proxy
    + +Please refer to the mod_proxy documentation for Apache HTTP Server 2.2. This supports either +HTTP or AJP load balancing. This new version of mod_proxy is also useable with +Apache HTTP Server 2.0, but mod_proxy will have to be compiled separately using the code +from Apache HTTP Server 2.2. + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/building.html b/P51/apache-tomcat-6.0.14/webapps/docs/building.html new file mode 100644 index 0000000..7e3aa4c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/building.html @@ -0,0 +1,189 @@ +Apache Tomcat 6.0 - Building Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Building Tomcat

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    +Building Apache Tomcat from SVN is very easy, and is the first step to contributing to +Tomcat. The following is a step by step TODO list. +

    + +
    Download a Java Development Kit (JDK) release (version 1.5.x or later)
    + +

    +The Sun JDK can be downloaded here. +

    + +

    +IMPORTANT: Set an environment variable JAVA_HOME to the pathname of the +directory into which you installed the JDK release. +

    + +
    Install Apache Ant 1.6.5 or later
    + +

    +Download a binary distribution of Ant 1.6.5 or later from +here. +

    + +

    +Unpack the binary distribution into a convenient location so that the +Ant release resides in its own directory (conventionally named +"apache-ant-1.6.x"). For the purposes of the remainder of this document, +the symbolic name "${ant.home}" is used to refer to the full pathname of + the release directory. +

    + +

    +Create an ANT_HOME environment variable to point the directory ${ant.home}, +and modify the PATH environment variable to include directory +"${ant.home}/bin" in its list. This makes the "ant" command line script +available, which will be used to actually perform the build. +

    + +
    Checkout or obtain the source code for Tomcat 6.0
    + +

    + Tomcat SVN repository URL: + http://svn.apache.org/repos/asf/tomcat/tc6.0.x/ +

    + +

    + Download a source package from: + http://tomcat.apache.org/download-60.cgi +

    + +

    + Checkout the source using SVN, selecting the desired version or + branch (current development source is at + http://svn.apache.org/repos/asf/tomcat/tc6.0.x/trunk/), or + unpack the source package. The location where the source has been + placed will be referred as ${tomcat.source}. +

    + +
    Building Tomcat
    + +

    +Use the following commands: +
    + cd ${tomcat.source}
    + ant download
    + ant
    +
    +

    + +

    +NOTE: Users accessing the Internet through a proxy must use a properties + file to indicate to Ant the proxy configuration. Read below. +

    + +

    +WARNING: Running this command will download binaries to the + /usr/share/java directory. + Make sure this is appropriate to do so on your computer. On Windows, + this usually corresponds to the C:\usr\share\java directory, + unless Cygwin is used. Read below to customize the directory used + to download the binaries. +

    + +

    +The build can be controlled by creating a ${tomcat.source}/build.properties + file, and adding the following content to it: +
    + # ----- Proxy setup -----
    + # Uncomment if using a proxy server.
    + #proxy.host=proxy.domain
    + #proxy.port=8080
    + #proxy.use=on
    +
    + # ----- Default Base Path for Dependent Packages -----
    + # Replace this path with the directory path where
    + # dependencies binaries should be downloaded.
    + base.path=/usr/share/java
    +
    +

    + +
    Building with Eclipse
    + +

    +Important: +This is not a supported means of building Tomcat; this information is +provided without warranty :-). +The only supported means of building Tomcat is with the "ant build" +described above. +However, some developers like to work on Java code with a Java IDE, +and the following steps have been used by some developers. +

    + +

    +Note that you must complete all the above steps to fetch +the repositories and build some JAR files the first time. +After you have completed the above steps, you can set up a +series of Eclipse 4 projects. +Note that this will not let you build everything under Eclipse; +the build process requires use of Ant for the many stages that aren't +simple Java compilations. +However, it will allow you to view and edit the Java code, +get warnings, reformat code, perform refactorings, run Tomcat +under the IDE, and so on. +

    + +

    +Use Windows->Preferences and then Java->Build Path->Classpath +Variables to add two new Classpath variables: +

    + +

    + + + +
    TOMCAT_LIBS_BASEthe base path where the binary dependencies have been downloaded
    ANT_HOMEthe base path of Ant 1.6.2 or later
    +

    + +

    +Use File->New Project to create a new Java project +for each of the binaries repository (e.g., /usr/share/java), +container, connectors, jasper, servletapi. +Unless you thought ahead to make the ${tomcat.source} directory be under +your Workspace folder, tell Eclipse the external location using "Import/Export...", +General->Existing Project into Workspace. +

    + +

    +Eclipse .project and .classpath files are provided in each of these +directories so Eclipse should find all source trees and jars, and +hopefully compile without problems. Note that these +files assume you are using Eclipse with a 5.0 or later JDK; also, the +connectors module must be built with a compiler compliance level of 5.0. +

    + +

    +To run Tomcat without a special IDE plug-in, you can simply use Run->Run... +enter "org.apache.catalina.startup.Catalina" as the main class, +"start" as program arguments, and +"-Dcatalina.home=..." (with the name of your build directory) +as VM arguments. +

    + +

    +Note also that due to the way the Tomcat source is assembled +from several SVN projects, you may not be able to use the Eclipse +SVN client to update (nor to commit, if you are a committer). +Use the external SVN client of your choice, then use the +Eclipse PackageExplorer or Navigator "Refresh" context menu item +to tell Eclipse that you've updated the files. +

    + +
    Building with other IDEs
    +

    +The same caveats apply as for Eclipse, above. +

    + +

    +The same general idea should work in most IDEs; it has been reported +to work in Idea, for example. +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/cgi-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/cgi-howto.html new file mode 100644 index 0000000..1046b94 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/cgi-howto.html @@ -0,0 +1,55 @@ +Apache Tomcat 6.0 - CGI How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    CGI How To

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The CGI (Common Gateway Interface) defines a way for a web server to +interact with external content-generating programs, which are often +referred to as CGI programs or CGI scripts. +

    + +

    Within Tomcat, CGI support can be added when you are using Tomcat as your +HTTP server and require CGI support. Typically this is done +during development when you don't want to run a web server like +Apache httpd. +Tomcat's CGI support is largely compatible with Apache httpd's, +but there are some limitations (e.g., only one cgi-bin directory). +

    + +

    CGI support is implemented using the servlet class +org.apache.catalina.servlets.CGIServlet. Traditionally, +this servlet is mapped to the URL pattern "/cgi-bin/*".

    + +

    By default CGI support is disabled in Tomcat.

    +
    Installation
    + +

    CAUTION - CGI scripts are used to execute programs +external to the Tomcat JVM. If you are using the Java SecurityManager this +will bypass your security policy configuration in catalina.policy.

    + +

    Remove the XML comments from around the CGI servlet and servlet-mapping +configuration in $CATALINA_BASE/conf/web.xml.

    +
    Configuration
    + +

    There are several servlet init parameters which can be used to +configure the behaviour of the CGI servlet. +

      +
    • cgiPathPrefix - The CGI search path will start at +the web application root directory + File.separator + this prefix. +The default cgiPathPrefix is WEB-INF/cgi
    • +
    • debug - Debugging detail level for messages logged +by this servlet. Default 0.
    • +
    • executable - The of the executable to be used to +run the script. Default is perl.
    • +
    • parameterEncoding - Name of the parameter encoding +to be used with the GCI servlet. Default is +System.getProperty("file.encoding","UTF-8").
    • +
    • passShellEnvironment - Should the shell environment +variables (if any) be passed to the CGI script? Default is +false.
    • +
    +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/changelog.html b/P51/apache-tomcat-6.0.14/webapps/docs/changelog.html new file mode 100644 index 0000000..ad7a932 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/changelog.html @@ -0,0 +1,1004 @@ +Apache Tomcat 6.0 - Changelog
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Changelog

    Printer Friendly Version
    print-friendly
    version +
    Tomcat 6.0.14 (remm)
    +
    General
    + + +
    docs + Correct j.u.l log levels in JULI docs. (rjung) +
    +
    +
    Catalina
    + + + + + + + + + + + + + + + + + +
    fix + Handle special case of ROOT when re-loading webapp after ROOT.xml has + been modified. In some circumstances the reloaded ROOT webapp had no + associated resources. (markt) +
    fix + Remove invalid attribute "encoding" of MBean MemoryUserDatabase, + which lead to errors in the manager webapp JMXProxy output. (rjung) +
    fix + 33774 Retry JNDI authentiction on ServiceUnavailableException + as at least one provider throws this after an idle connection has been + closed. (markt) +
    fix + 39875: Fix BPE in RealmBase.init(). Port of yoavs's fix from + Tomcat 5. (markt) +
    fix + 41722: Make the role-link element optional (as required by + the spec) when using a security-role-ref element. (markt) +
    fix + 42361: Handle multi-part forms when saving requests during + FORM authentication process. Patch provided by Peter Runge. (markt) +
    fix + 42401: Update RUNNING.txt with better JRE/JDK information. + (markt) +
    fix + 42444: prevent NPE for AccessLogValve + Patch provided by Nils Hammar (funkman) +
    fix + 42449: + JNDIRealm does not catch NullPointerException for Sun's + LDAP provider (See bug for details) (funkman) +
    fix + 42497: Ensure ETag header is present in a 304 response. + Patch provided by Len Popp. (markt) +
    fix + Fix XSS security vulnerability (CVE-2007-2450) in the Manager and Host + Manager. Reported by Daiki Fukumori. (markt) +
    fix + 42547: Fix NPE when a ResourceLink in context.xml tries to + override an env-entry in web.xml. (markt) +
    fix + Avoid some casting in ErrorReportValve (remm) +
    fix + Fix persistence API annotation, submitted by Bill Burke (remm) +
    fix + In Comet mode, if bytes are not read, send an error event (otherwise, + fields referring to the connection could remain) (remm) +
    fix + Fix Comet when running Tomcat with the security manager (remm) +
    +
    +
    Jasper
    + + + + +
    fix + 39425 Add additional system property permission to + catalina.policy for pre-compiled JSPs. (markt) +
    fix + 42438 Duplicate temporary variables were created when + jsp:attribute was used in conjunction with custom tags. Patch provided + by Brian Lenz. (markt) +
    fix + 42643 Prevent creation of duplicate JSP function mapper + variables. (markt) +
    +
    +
    Coyote
    + + + +
    fix + Separate sequence increment from getter in ThreadPool to avoid + misleading increments during monitoring via JMX. (rjung) +
    fix + Add back missing socketBuffer attribute in the java.io HTTP connector (remm) +
    +
    +
    Webapps
    + + + + + +
    fix + Don't write error on System.out, use log() instead. (rjung) +
    fix + 39813: Correct handling of new line characters in JMX + attributes. Patch provided by R Bramley. Ported from tc5.5.x r415029. (markt,rjung) +
    fix + 42459: Fix Tomcat Web Application Manager table error. (rjung) +
    fix + Fix XSS security vulnerabilities (CVE-2007-2449) in the examples. + Reported by Toshiharu Sugiyama. (markt) +
    +
    +
    Tomcat 6.0.13 (remm)
    +
    Catalina
    + + + + + + + + + +
    fix + More accurate available() method. (remm) +
    fix + Add recycle check in the event object, since it is a facade like the others. (remm) +
    fix + When processing a read event, enforce that the servlet consumes all available bytes. (remm) +
    update + Add a flag in ContainerBase which could be used in embedded scenarios to avoid a double start + of contexts (this problem generally occurs when adding contexts to a started host). (remm) +
    fix + 42309: Ability to create a connector using a custom protocol specification for embedded. + (fhanik) +
    fix + Add SSL engine flag to AprLifecycleListener. (fhanik) +
    fix + Improve event processing, so that an END event is generated when encountering EOF, and an + ERROR is always generated on client disconnects. (remm) +
    fix + Add declarations for the new XSD files. (remm) +
    +
    +
    Coyote
    + + + + + +
    fix + Add heartbeatBackgroundEnabled flag to SimpleTcpCluster. + Enable this flag don't forget to disable the channel heartbeat thread (pero) +
    fix + Possible memory leak when using comet, caused by adding the socket to the poller before + cleaning up the connection tracking structure. (remm) +
    fix + 42308: nextRequest recycles the request, which caused issues with statistics. (remm) +
    fix + Fix non recycled comet flag in the APR connector. (remm) +
    +
    +
    Cluster
    + + + +
    fix + Add heartbeatBackgroundEnabled flag to SimpleTcpCluster. + Enable this flag don't forget to disable the channel heartbeat thread (pero) +
    fix + Method name cleanup. (fhanik) +
    +
    +
    Webapps
    + + +
    fix + Some examples webapp fixes. Submitted by Frank McCown. (remm) +
    +
    +
    Tomcat 6.0.12 (remm)
    +
    General
    + + +
    fix + License source headers. Submitted by Niall Pemberton. (remm) +
    +
    +
    Catalina
    + + + + + + + + + +
    fix + 42039 Log a stack trace if a servlet throws an + UnavailableException. Patch provided by Kawasima Kazuh. (markt) +
    fix + 41990 Add some additional mime-type mappings. (markt) +
    fix + 41655 Fix message translations. Japanese translations + provided by Suzuki Yuichiro. (markt) +
    add + Add enabled attribute to AccessLogValve (pero) +
    fix + 42085: Avoid adding handlers for the root logger twice when they are explicitly + specified. (remm) +
    fix + Reduce thread local manipulation in the request dispatcher. Submitted by + Arvind Srinivasan. (remm) +
    fix + Avoid keeping references to loggers tied to the webapp classloaders after a reload in + a couple more places. (remm) +
    fix + 42202: Fix container parsing of TLDs in webapps when Tomcat is installed in + a URL encodable path. (remm) +
    +
    +
    Coyote
    + + + + +
    fix + 42119 Fix return value for request.getCharacterEncoding() when + Content-Type headers contain parameters other than charset. Patch by + Leigh L Klotz Jr. (markt) +
    update + Move away from using a thread local processor for the APR and java.io + connectors, as this does not work well when using an executor. (remm) +
    fix + Remove Comet timeout hack in the APR connector. Comet connections will now + use the regular timeout or the keepalive timeout if specified. (remm) +
    +
    +
    Webapps
    + + + + + +
    fix + 42025: Update valve documentation to refer to correct regular + expression implementation. (markt) +
    fix + Fix various paths in the manager webapps (remm) +
    add + Session viewer and editor for the HTML manager. Submitted by Cédrik Lime. (remm) +
    add + Session handling tools for the manager. Submitted by Rainer Jung. (remm) +
    +
    +
    Jasper
    + + + + +
    fix + 41869 TagData.getAttribute() should return + TagData.REQUEST_TIME_VALUE when the attribute value is an EL expression. + (markt) +
    fix + 42071 Fix IllegalStateException on multiple requests to + an unavailable JSP. Patch provided by Kawasima Kazuh. (markt) +
    fix + After a JSP throws an UnavailableException allow it to be accessed once + the unavailable period has expired. (markt) +
    +
    +
    Cluster
    + + +
    fix + Add toString method to better logging session replication message at tribes MESSAGES (pero) +
    +
    +
    Tomcat 6.0.11 (remm)
    +
    General
    + + +
    update + Update DBCP to 1.2.2, pool to 1.3, JDT to 3.2.2 and remove collections + build dependency (pero, remm) +
    +
    +
    Catalina
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    fix + Don't log pattern subtoken at ExtendedAccesLogValve (pero) +
    fix + Add some missing JMX attributes for new AccessLogValve (pero) +
    fix + 41786 Incorrect reference to catalina_home in catalina.sh/bat Patch provided by Mike Hanafey (fhanik) +
    fix + 41703 SingleSignOnMessage invalid setter, patch provided by Nils Hammar (fhanik) +
    fix + 41682 ClassCastException when logging is turned on (fhanik) +
    fix + 41530 Don't log error messages when connector is stopped (fhanik) +
    fix + 41166 Invalid handling when using replicated context (fhanik) +
    add + Added SENDFILE support for the NIO connector. (fhanik)
    +
    add + Added support for shared thread pools by adding in the <Executor> + element as a nested element to the <Service> element. (fhanik) +
    fix + 41666 Correct handling of boundary conditions for + If-Unmodified-Since and If-Modified-Since headers. Patch provided by + Suzuki Yuichiro. (markt) +
    fix + 41739 Correct handling of servlets with a load-on-startup + value of zero. These are now the first servlets to be started. (markt) +
    fix + 41747 Correct example ant script for deploy task. (markt) +
    fix + 41752 Correct error message on exception in MemoryRealm. + (markt) +
    update + 39883 Add documentation warning about using antiResourceLocking + on a webapp outside the Host's appBase. (yoavs) +
    fix + 40150 Ensure user and roll classnames are validated on startup. Patch by + Tom. (yoavs) +
    update + Refactor extend access log valve using the optimized access log valve. Submitted by + Takayuki Kaneko. (remm) +
    fix + Possible deadlock in classloading when defining packages. (remm) +
    fix + Remove excessive syncing from listener support. (remm) +
    add + Web services support. The actual factory implementations are implemented in the + extras. Submitted by Fabien Carrion. (remm) +
    update + Add logging to display APR capabilities on the platform. (remm) +
    fix + Expose executors in JMX. (remm) +
    fix + CRLF inside a URL pattern is always invalid. (remm) +
    fix + Tweak startup time display. (remm) +
    fix + Adjustments to handling exceptions with Comet. (remm) +
    fix + If the event is closed asynchronously, generate an end event for cleanup on the + next event. (remm) +
    fix + Cleanup hello webapp from the docs and fix a XSS issue in the JSP. (remm) +
    fix + Examples webapp cleanup. Submitted by Takayuki Kaneko and Markus Schönhaber. (remm) +
    fix + 41289: Create configBase, since it is no longer created elsewhere. + Submitted by Shiva Kumar H R. (remm) +
    +
    +
    Coyote
    + + + + + + + + + + +
    update + Fixed NIO memory leak caused by the NioChannel cache not working properly. +
    update + Added flag to enable/disable the usage of the pollers selector instead of a Selector pool + when the serviet is reading/writing from the input/output streams + The flag is -Dorg.apache.tomcat.util.net.NioSelectorShared=true +
    fix + Requests with multiple content-length headers are now rejected. (markt) +
    add + 41675 Add a couple of DEBUG-level logging statements to Http11Processors + when sending error responses. Patch by Ralf Hauser. (yoavs) +
    fix + Reuse digester used by the modeler. (remm) +
    update + When the platform does not support deferred accept, put accepted sockets in the + poller. (remm) +
    fix + Fix problem with blocking reads for keepalive when using an executor (the number + of busy threads is always 0). (remm) +
    update + The poller now has good performance, so remove firstReadTimeout. (remm) +
    fix + 42119 Fix return value for request.getCharacterEncoding() when + Content-Type headers contain parameters other than charset. Patch by + Leigh L Klotz Jr. (markt) +
    +
    +
    Webapps
    + + + + +
    fix + Fix previous update to servlet 2.5 xsd to use correct declaration. + (markt) +
    update + Update host configuration document for new behaviour for directories + in appBase. (markt) +
    update + 39540 Add link to httpd 2.2 mod_proxy_ajp docs in AJP connector doc. (yoavs) +
    +
    +
    Jasper
    + + + + + + + + + +
    fix + 41227 Add a bit of DEBUG-level logging to JspC so users know + which file is being compiled. (yoavs) +
    update + Remove some dead utility code, and refactor stream capture as part of the Ant compiler. (remm) +
    fix + Support the trim directive of JSP 2.1 as an equivalent of Jasper's own parameter. (remm) +
    fix + 41790: Close file stream used to read the Java source. (remm) +
    fix + Fix reporting of errors which do not correspond to a portion of the JSP source. (remm) +
    fix + Remove try/catch usage for annotation processing in classic tags. The usage + of the log method might have been questionable as well. (remm) +
    fix + Cleanup of the message that is displayed for compilation errors. (remm) +
    fix + Skip BOM when reading a JSP file. (remm) +
    +
    +
    Tomcat 6.0.10 (remm)
    +
    Catalina
    + + + + + + + + +
    update + Unify usage of security manager flag, submitted by Arvind Srinivasan. (remm) +
    fix + Fix formatting of CGI variable SCRIPT_NAME. (markt) +
    fix + 41521: Support * for servlet-name, submitted by Paul McMahan. (remm) +
    update + Cache getServletContext value, submitted by Arvind Srinivasan. (remm) +
    fix + Add options for handling special URL characters in paths, and disallow '\' and encoded '/' + due to possible differences in behavior between Tomcat and a front end webserver. (remm) +
    fix + Fix bad comparison for FORM processing, submitted by Anil Saldhana. (remm) +
    fix + 41608 Make log levels consistent when Servlet.service() + throws an exception. (markt) +
    +
    +
    Coyote
    + + +
    fix + Reduce usage of MessageBytes.getLength(), submitted by Arvind Srinivasan. (remm) +
    +
    +
    Jasper
    + + + +
    fix + 41558: Don't call synced method on every request, submitted by Arvind Srinivasan. (remm) +
    fix + Switch to a thread local page context pool. (remm) +
    +
    +
    Tomcat 6.0.9 (remm)
    +
    General
    + + + +
    fix + Use 2.5 xsd in Tomcat webapps. (markt) +
    fix + Compression filter improvements, submitted by Eric Hedström. (markt) +
    +
    +
    Catalina
    + + + + + + + + +
    fix + Properly return connector names. (remm) +
    fix + Remove logging of the XML validation flag. (remm) +
    fix + Correct error messages for context.xml. (markt) +
    fix + 41217: Set secure flag correctly on SSO cookie, submitted by + Chris Halstead. (markt) +
    fix + 40524: request.getAuthType() now returns CLIENT_CERT rather + than CLIENT-CERT. (markt) +
    fix + 40526: Return support for JPDA_OPTS to catalina.bat and add + a new option JPDA_SUSPEND, submitted by by Kurt Roy. (markt) +
    fix + 41265: In embedded, remove the code that resets checkInterval + values of zero to 300. (markt) +
    +
    +
    Coyote
    + + + +
    fix + 37869: Fix getting client certificate, submitted by Christophe Pierret. (remm) +
    fix + 40960: Throw a timeout exception when getting a timeout rather than a + generic IOE, submitted by Christophe Pierret. (remm) +
    +
    +
    Jasper
    + + + + +
    fix + EL validation fixes for attributes. (remm) +
    fix + 41327: Show full URI for a 404. (markt) +
    fix + JspException now uses getCause() as the result for getRootCause(). (markt) +
    +
    +
    Cluster
    + + +
    fix + 41466: When using the NioChannel and SecureNioChannel its + important to use the channels buffers. (fhanik) +
    +
    +
    Tomcat 6.0.8 (remm)
    +
    Catalina
    + + + + + + + + +
    fix + Make provided instances of RequestDispatcher thread safe. (markt) +
    add + Optional development oriented loader implementation. (funkman) +
    add + Optimized access log valve, submitted by Takayuki Kaneko. (remm) +
    fix + Fix error messages when parsing context.xml that incorrectly referred to + web.xml. (markt) +
    fix + 41217: Set secure attribute on SSO cookie when cookie is + created during a secure request. Patch provided by Chris Halstead. + (markt) +
    fix + 40524: HttpServletRequest.getAuthType() now returns + CLIENT_CERT rather than CLIENT-CERT for certificate authentication + as per the spec. Note that web.xml continues to use CLIENT-CERT to + specify the certificate authentication should be used. (markt) +
    fix + 41401: Add support for JPDA_OPTS to catalina.bat and add a + JPDA_SUSPEND environment variable to both startup scripts. Patch + provided by Kurt Roy. (markt) +
    +
    +
    Coyote
    + + +
    fix + Use the tomcat-native-1.1.10 as recommended version. + OpenSSL detection on some platforms was broken 1.1.8 will continue to work, + although on some platforms there can be JVM crash if IPV6 is enabled and + platform doesn't support IPV4 mapped addresses on IPV6 sockets. +
    +
    +
    Jasper
    + + + + + + + + +
    fix + When displaying JSP source after an exception, handle included files. + (markt) +
    fix + Display the JSP source when a compilation error occurs and display + the correct line number rather than start of a scriptlet block. (markt) +
    fix + Fix NPE when processing dynamic attributes. (remm) +
    fix + More accurate EL usage validation. (remm) +
    fix + Fix regression for implicit taglib and page data version numbers. (remm) +
    fix + 41265: Allow JspServlet checkInterval init parameter to be + explicitly set to the stated default value of zero by removing the + code that resets it to 300 if explicitly specified as zero. (markt) +
    fix + 41327: Show full URI for a 404. Patch provided by Vijay. + (markt) +
    +
    +
    Webapps
    + + + + +
    docs + Add a virtual hosting how-to contributed by Hassan Schroeder. (markt) +
    update + Update all webapps to use the servlet 2.5 xsd. (markt) +
    fix + 39572: Improvements to CompressionFilter example provided by + Eric Hedström. (markt) +
    +
    +
    Tomcat 6.0.7 (remm)
    +
    General
    + + +
    fix + Fix installer's bitmap (mturk) +
    +
    +
    Catalina
    + + +
    fix + Refactor logging of errors which may occur when reading a post body (remm) +
    +
    +
    Coyote
    + + +
    fix + 37869: Also use the SSL_INFO_CLIENT_CERT field if the chain is empty, + submitted by Grzegorz Grzybek (remm) +
    +
    +
    Tomcat 6.0.6 (remm)
    +
    General
    + + +
    fix + Fix tagging which did not include 6.0.5's changelog (remm) +
    +
    +
    Tomcat 6.0.5 (remm)
    +
    Catalina
    + + + + + +
    fix + 40585: Fix parameterised constructor for o.a.juli.FileHandler + so parameters have an effect. (markt) +
    fix + Escape invalid characters from request.getLocale. (markt, remm) +
    update + Update required version for native to 1.1.8. (remm) +
    fix + Do not log broken pipe errors which can occur when flushing the content of an error page. (remm) +
    +
    +
    Coyote
    + + +
    fix + Fix firstReadTimeout behavior for the AJP connector. (remm) +
    +
    +
    Jasper
    + + +
    fix + 41057: Make jsp:plugin output XHTML compliant. (markt) +
    +
    +
    Cluster
    + + + +
    update + Cluster interface cleanup. (fhanik) +
    update + Refactoring to allow usage of executors. (fhanik) +
    +
    +
    Tomcat 6.0.4 (remm)
    +
    General
    + + + +
    update + Update to NSIS 2.22 (remm) +
    fix + Fix regression in 6.0.3 with Windows wrapper (mturk) +
    +
    +
    Tomcat 6.0.3 (remm)
    +
    General
    + +
    +
    +
    Catalina
    + + + + + + + + + + + + +
    fix + 37509: Do not remove whitespace from the end of values + defined in logging.properties files. (markt) +
    fix + 38198: Add reference to Context documentation from Host + documentation that explains how Context name is obtained from the + Context filename. (markt) +
    fix + 40844 Missing syncs in JDBCRealm. (markt) +
    fix + 40901: Encode directory listing output. Based on a patch + provided by Chris Halstead. (markt) +
    fix + 40929: Correct JavaDoc for StandardClassLoader. (markt) +
    fix + 41008: Allow POST to be used for indexed queries with CGI + Servlet. Patch provided by Chris Halstead. (markt) +
    fix + Fix usage of print on the servlet output stream if the processor never used + a writer (fhanik) +
    fix + Fix logic of sameSameObjects used to determine correct wrapping of request and + response objects (fhanik) +
    fix + Update TLD scan lists, and disable caching for now (remm) +
    update + Add system property to WebappClassLoader to allow disabling setting references + to null when stopping it (remm) +
    add + Add clustered SSO code, submitted by Fabien Carrion (remm) +
    +
    +
    Coyote
    + + + + + + + +
    fix + 40860: Log exceptions and other problems during parameter + processing. (markt) +
    update + Enable JMX for trust store attributes for SSL connector. (markt) +
    update + Port memory usage reduction changes to the java.io HTTP connector. (remm) +
    fix + MessageBytes.setString(null) will remove the String value. (remm) +
    fix + 41057: Caching large strings is not useful and takes too much + memory, so don't cache these (remm) +
    update + Add keepAliveTimeout attribute to most connectors (mturk, remm) +
    +
    +
    Jasper
    + + + + + +
    fix + Relax EL type validation for litterals. (remm) +
    fix + Update some version numbers to 2.1. (funkman, remm) +
    fix + Add xsds for JSP 2.1 (remm) +
    fix + 41106: Update validation checks for EL to also include + legacy 1.2 tags (remm) +
    +
    +
    Webapps
    + + +
    fix + 40677: Update SSL documentation to indicate that PKCS11 + keystores may be used. (markt) +
    +
    +
    Tomcat 6.0.2 (remm)
    +
    General
    + + + + +
    fix + Various tweaks to distribution (remm, funkman) +
    update + Update Tomcat native to 1.1.7 (mturk) +
    update + Update to JDT 3.2.1 (remm) +
    +
    +
    Catalina
    + + +
    fix + Fix EJB annotation interface (remm) +
    +
    +
    Coyote
    + + +
    fix + Fix passing of the keystore password for the NIO connector (fhanik) +
    +
    +
    Tomcat 6.0.1 (remm)
    +
    General
    + + +
    fix + 37439, 40823: Documentation cleanup (markt) +
    +
    +
    Catalina
    + + + + + + +
    update + Refactor exception processing using Throwable.getCause to improve exception chaining (remm) +
    add + Remove dead code involving the Logger (funkman) +
    fix + 37458: Fix some exceptions which could happen during classloading (markt) +
    fix + 40817: Fix CGI path (markt) +
    fix + 34956: Add the possibility to enforce usage of request and response + wrapper objects (markt) +
    +
    +
    Jasper
    + + +
    update + Many fixes for JSP 2.1 compliance, invloving tag files handling, deferred expressions + validation, bom encoding support (remm) +
    +
    +
    Coyote
    + + + + + +
    update + Many HTTP NIO connector fixes and refactorings (fhanik) +
    update + HTTP NIO connector performance improvements (fhanik) +
    update + Add packetSize option for the classic AJP connector (jfclere) +
    update + Implement explicit flushing in AJP (mturk) +
    +
    +
    Tomcat 6.0.0 (remm)
    +
    Catalina
    + + + + +
    add + SSLEngine attribute added to the AprLifecycleListener(fhanik) +
    add + Add API for Comet IO handling (remm, fhanik) +
    add + Servlet 2.5 support (remm) +
    +
    +
    Jasper
    + + + +
    add + JSP 2.1 support (jhook, remm) +
    add + Unifed EL 2.1 support (jhook) +
    +
    +
    Coyote
    + + + + +
    add + SSLEnabled attribute required for SSL to be turned on, on all HTTP connectors (fhanik) +
    update + Memory usage reduction for the HTTP connectors, except java.io (remm) +
    update + Modeler update to use dynamic mbeans rather than model mbeans, which consume more + resources (costin) +
    +
    +
    Cluster
    + + +
    add + New cluster configuration and new documentation (fhanik) +
    +
    +
    Webapps
    + +
    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/class-loader-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/class-loader-howto.html new file mode 100644 index 0000000..c6e0191 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/class-loader-howto.html @@ -0,0 +1,160 @@ +Apache Tomcat 6.0 - Class Loader HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Class Loader HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    Overview
    + +

    Like many server applications, Tomcat 6 installs a variety of class loaders +(that is, classes that implement java.lang.ClassLoader) to allow +different portions of the container, and the web applications running on the +container, to have access to different repositories of available classes and +resources. This mechanism is used to provide the functionality defined in the +Servlet Specification, version 2.4 -- in particular, Sections 9.4 and 9.6.

    + +

    In a J2SE 2 (that is, J2SE 1.2 or later) environment, class loaders are +arranged in a parent-child tree. Normally, when a class loader is asked to +load a particular class or resource, it delegates the request to a parent +class loader first, and then looks in its own repositories only if the parent +class loader(s) cannot find the requested class or resource. The model for +web application class loaders differs slightly from this, as discussed below, +but the main principles are the same.

    + +

    When Tomcat 6 is started, it creates a set of class loaders that are +organized into the following parent-child relationships, where the parent +class loader is above the child class loader:

    + +
    +      Bootstrap
    +          |
    +       System
    +          |
    +       Common
    +       /     \
    +  Webapp1   Webapp2 ... 
    +
    + +

    The characteristics of each of these class loaders, including the source +of classes and resources that they make visible, are discussed in detail in +the following section.

    + +
    Class Loader Definitions
    + +

    As indicated in the diagram above, Tomcat 6 creates the following class +loaders as it is initialized:

    +
      +
    • Bootstrap - This class loader contains the basic runtime + classes provided by the Java Virtual Machine, plus any classes from JAR + files present in the System Extensions directory + ($JAVA_HOME/jre/lib/ext). NOTE - Some JVMs may + implement this as more than one class loader, or it may not be visible + (as a class loader) at all.
    • +
    • System - This class loader is normally initialized from + the contents of the CLASSPATH environment variable. All such + classes are visible to both Tomcat internal classes, and to web + applications. However, the standard Tomcat 5 startup scripts + ($CATALINA_HOME/bin/catalina.sh or + %CATALINA_HOME%\bin\catalina.bat) totally ignore the contents + of the CLASSPATH environment variable itself, and instead + build the System class loader from the following repositories: +
        +
      • $CATALINA_HOME/bin/bootstrap.jar - Contains the main() method + that is used to initialize the Tomcat 6 server, and the class loader + implementation classes it depends on.
      • +
      • $CATALINA_HOME/bin/tomcat-juli.jar - Package renamed Jakarta commons + logging API, and java.util.logging LogManager.
      • +
    • +
    • Common - This class loader contains additional classes + that are made visible to both Tomcat internal classes and to all web + applications. Normally, application classes should NOT + be placed here. All unpacked classes and resources in + $CATALINA_HOME/lib, as well as classes and + resources in JAR files are made visible through this + class loader. By default, that includes the following: +
        +
      • annotations-api.jar - JEE annotations classes.
      • +
      • catalina.jar - Implementation of the Catalina servlet + container portion of Tomcat 6.
      • +
      • catalina-ant.jar - Tomcat Catalina Ant tasks.
      • +
      • catalina-ha.jar - High availability package.
      • +
      • catalina-tribes.jar - Group communication package.
      • +
      • el-api.jar - EL 2.1 API.
      • +
      • jasper.jar - Jasper 2 Compiler and Runtime.
      • +
      • jasper-el.jar - Jasper 2 EL implementation.
      • +
      • jasper-jdt.jar - Eclipse JDT 3.2 Java compiler.
      • +
      • jsp-api.jar - JSP 2.1 API.
      • +
      • servlet-api.jar - Servlet 2.5 API.
      • +
      • tomcat-coyote.jar - Tomcat connectors and utility classes.
      • +
      • tomcat-dbcp.jar - package renamed database connection + pool based on Commons DBCP.
      • +
      • tomcat-i18n-**.jar - Optional JARs containing resource bundles + for other languages. As default bundles are also included in each + individual JAR, they can be safely removed if no internationalization + of messages is needed.
      • +
    • +
    • WebappX - A class loader is created for each web + application that is deployed in a single Tomcat 6 instance. All unpacked + classes and resources in the /WEB-INF/classes directory of + your web application archive, plus classes and resources in JAR files + under the /WEB-INF/lib directory of your web application + archive, are made visible to the containing web application, but to + no others.
    • +
    + +

    As mentioned above, the web application class loader diverges from the +default Java 2 delegation model (in accordance with the recommendations in the +Servlet Specification, version 2.3, section 9.7.2 Web Application Classloader). +When a request to load a +class from the web application's WebappX class loader is processed, +this class loader will look in the local repositories first, +instead of delegating before looking. There are exceptions. Classes which are +part of the JRE base classes cannot be overriden. For some classes (such as +the XML parser components in J2SE 1.4+), the J2SE 1.4 endorsed feature can be +used. +Last, any JAR containing servlet API classes will be ignored by the +classloader. +All other class loaders in Tomcat 6 follow the usual delegation pattern.

    + +

    Therefore, from the perspective of a web application, class or resource +loading looks in the following repositories, in this order:

    +
      +
    • Bootstrap classes of your JVM
    • +
    • System class loader classses (described above)
    • +
    • /WEB-INF/classes of your web application
    • +
    • /WEB-INF/lib/*.jar of your web application
    • +
    • $CATALINA_HOME/lib
    • +
    • $CATALINA_HOME/lib/*.jar
    • +
    + +
    XML Parsers and JSE 5
    + +

    Among many other changes, the JSE 5 release packages the JAXP APIs, and +a version of Xerces, inside the JRE. This has impacts on applications that +wish to use their own XML parser.

    + +

    In previous versions of Tomcat, you could simply replace the XML parser +in the $CATALINA_HOME/common/lib directory to change the parser +used by all web applications. However, this technique will not be effective +when you are running on JSE 5, because the usual class loader delegation +process will always choose the implementation inside the JDK in preference +to this one.

    + +

    JDK 1.5 supports a mechanism called the "Endorsed Standards Override +Mechanism" to allow replacement of APIs created outside of the JCP (i.e. +DOM and SAX from W3C). It can also be used to update the XML parser +implementation. For more information, see: + +http://java.sun.com/j2se/1.5/docs/guide/standards/index.html.

    + +

    Tomcat utilizes this mechanism by including the system property setting +-Djava.endorsed.dirs=$CATALINA_HOME/endorsed in the +command line that starts the container.

    + +
    Running under a security manager
    + +

    When running under a security manager the locations from which classes +are permitted to be loaded will also depend on the contents of your policy +file. See Security Manager HOW-TO +for further information.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/cluster-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/cluster-howto.html new file mode 100644 index 0000000..4ad9dee --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/cluster-howto.html @@ -0,0 +1,644 @@ +Apache Tomcat 6.0 - Clustering/Session Replication HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Clustering/Session Replication HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    Important Note
    +

    You can also check the configuration reference documentation. +

    +
    For the impatient
    +

    + Simply add

    <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
    + to your <Engine> or your <Host> element to enable clustering. +

    +

    + Using the above configuration will enable all-to-all session replication + using the DeltaManager to replicate session deltas. By all-to-all we mean that the session gets replicated to all the other + nodes in the cluster. This works great for smaller cluster but we don't recommend it for larger clusters(a lot of tomcat nodes). + Also when using the delta manager it will replicate to all nodes, even nodes that don't have the application deployed.
    + To get around this problem, you'll want to use the BackupManager. This manager only replicates the session data to one backup + node, and only to nodes that have the application deployed. Downside of the BackupManager: not quite as battle tested as the delta manager. +
    + Here are some of the important default values:
    + 1. Multicast address is 228.0.0.4
    + 2. Multicast port is 45564 (the port and the address together determine cluster membership.
    + 3. The IP broadcasted is java.net.InetAddress.getLocalHost().getHostAddress() (make sure you don't broadcast 127.0.0.1, this is a common error)
    + 4. The TCP port listening for replication messages is the first available server socket in range 4000-4100
    + 5. Two listeners are configured ClusterSessionListener and JvmRouteSessionIDBinderListener
    + 6. Two interceptors are configured TcpFailureDetector and MessageDispatch15Interceptor
    + The following is the default cluster configuration:
    +

    +        <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
    +                 channelSendOptions="8">
    +
    +          <Manager className="org.apache.catalina.ha.session.DeltaManager"
    +                   expireSessionsOnShutdown="false"
    +                   notifyListenersOnReplication="true"/>
    +
    +          <Channel className="org.apache.catalina.tribes.group.GroupChannel">
    +            <Membership className="org.apache.catalina.tribes.membership.McastService"
    +                        address="228.0.0.4"
    +                        port="45564"
    +                        frequency="500"
    +                        dropTime="3000"/>
    +            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
    +                      address="auto"
    +                      port="4000"
    +                      autoBind="100"
    +                      selectorTimeout="5000"
    +                      maxThreads="6"/>
    +
    +            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
    +              <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
    +            </Sender>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
    +          </Channel>
    +
    +          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
    +                 filter=""/>
    +          <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
    +
    +          <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
    +                    tempDir="/tmp/war-temp/"
    +                    deployDir="/tmp/war-deploy/"
    +                    watchDir="/tmp/war-listen/"
    +                    watchEnabled="false"/>
    +
    +          <ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
    +          <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
    +        </Cluster>    
    +    
    +

    +

    Will cover this section in more detail later in this document.

    +
    Cluster Basics
    + +

    To run session replication in your Tomcat 6.0 container, the following steps +should be completed:

    +
      +
    • All your session attributes must implement java.io.Serializable
    • +
    • Uncomment the Cluster element in server.xml
    • +
    • If you have defined custom cluster valves, make sure you have the ReplicationValve defined as well under the Cluster element in server.xml
    • +
    • If your Tomcat instances are running on the same machine, make sure the tcpListenPort + attribute is unique for each instance, in most cases Tomcat is smart enough to resolve this on it's own by autodetecting available ports in the range 4000-4100
    • +
    • Make sure your web.xml has the <distributable/> element + or set at your <Context distributable="true" />
    • +
    • If you are using mod_jk, make sure that jvmRoute attribute is set at your Engine <Engine name="Catalina" jvmRoute="node01" > + and that the jvmRoute attribute value matches your worker name in workers.properties
    • +
    • Make sure that all nodes have the same time and sync with NTP service!
    • +
    • Make sure that your loadbalancer is configured for sticky session mode.
    • +
    +

    Load balancing can be achieved through many techniques, as seen in the +Load Balancing chapter.

    +

    Note: Remember that your session state is tracked by a cookie, so your URL must look the same from the out + side otherwise, a new session will be created.

    +

    Note: Clustering support currently requires the JDK version 1.5 or later.

    +

    The Cluster module uses the Tomcat JULI logging framework, so you can configure logging + through the regular logging.properties file. To track messages, you can enable logging on the key:org.apache.catalina.tribes.MESSAGES

    +
    Overview
    + +

    To enable session replication in Tomcat, three different paths can be followed to achieve the exact same thing:

    +
      +
    1. Using session persistence, and saving the session to a shared file system (PersistenceManager + FileStore)
    2. +
    3. Using session persistence, and saving the session to a shared database (PersistenceManager + JDBCStore)
    4. +
    5. Using in-memory-replication, using the SimpleTcpCluster that ships with Tomcat 6 (lib/catalina-tribes.jar + lib/catalina-ha.jar)
    6. +
    + +

    In this release of session replication, Tomcat can perform an all-to-all replication of session state using the DeltaManager or + perform backup replication to only one node using the BackupManager. + The all-to-all replication is an algorithm that is only efficient when the clusters are small. For larger clusters, to use + a primary-secondary session replication where the session will only be stored at one backup server simply setup the BackupManager.
    + Currently you can use the domain worker attribute (mod_jk > 1.2.8) to build cluster partitions + with the potential of having a more scaleable cluster solution with the DeltaManager(you'll need to configure the domain interceptor for this). + In order to keep the network traffic down in an all-to-all environment, you can split your cluster + into smaller groups. This can be easily achieved by using different multicast addresses for the different groups. + A very simple setup would look like this: +

    + +
    +        DNS Round Robin
    +               |
    +         Load Balancer
    +          /           \
    +      Cluster1      Cluster2
    +      /     \        /     \
    +  Tomcat1 Tomcat2  Tomcat3 Tomcat4
    +
    + +

    What is important to mention here, is that session replication is only the beginning of clustering. + Another popular concept used to implement clusters is farming, ie, you deploy your apps only to one + server, and the cluster will distribute the deployments across the entire cluster. + This is all capabilities that can go into with the FarmWarDeployer (s. cluster example at server.xml)

    +

    In the next section will go deeper into how session replication works and how to configure it.

    + +
    Cluster Information
    +

    Membership is established using multicast heartbeats. + Hence, if you wish to subdivide your clusters, you can do this by + changing the multicast IP address or port in the <Membership> element. +

    +

    + The heartbeat contains the IP address of the Tomcat node and the TCP port that + Tomcat listens to for replication traffic. All data communication happens over TCP. +

    +

    + The ReplicationValve is used to find out when the request has been completed and initiate the + replication, if any. Data is only replicated if the session has changed (by calling setAttribute or removeAttribute + on the session). +

    +

    + One of the most important performance considerations is the synchronous versus asynchronous replication. + In a synchronous replication mode the request doesn't return until the replicated session has been + sent over the wire and reinstantiated on all the other cluster nodes. + Synchronous vs asynchronous is configured using the channelSendOptions + flag and is an integer value. The default value for the SimpleTcpCluster/DeltaManager combo is + 8, which is asynchronous. You can read more on the send flag(overview) or the + send flag(javadoc). + During async replication, the request is returned before the data has been replicated. async replication yields shorter + request times, and synchronous replication guarantees the session to be replicated before the request returns. +

    +
    Bind session after crash to failover node
    +

    + If you are using mod_jk and not using sticky sessions or for some reasons sticky session don't + work, or you are simply failing over, the session id will need to be modified as it previously contained + the worker id of the previous tomcat (as defined by jvmRoute in the Engine element). + To solve this, we will use the JvmRouteBinderValve. +

    +

    + The JvmRouteBinderValve rewrites the session id to ensure that the next request will remain sticky + (and not fall back to go to random nodes since the worker is no longer available) after a fail over. + The valve rewrites the JSESSIONID value in the cookie with the same name. + Not having this valve in place, will make it harder to ensure stickyness in case of a failure for the mod_jk module. +

    +

    + By default, if no valves are configured, the JvmRouteBinderValve is added on. + The cluster message listener called JvmRouteSessionIDBinderListener is also defined by default and is used to actually rewrite the + session id on the other nodes in the cluster once a fail over has occurred. + Remember, if you are adding your own valves or cluster listeners in server.xml then the defaults are no longer valid, + make sure that you add in all the appropriate valves and listeners as defined by the default. +

    +

    + Hint:
    + With attribute sessionIdAttribute you can change the request attribute name that included the old session id. + Default attribuite name is org.apache.catalina.cluster.session.JvmRouteOrignalSessionID. +

    +

    + Trick:
    + You can enable this mod_jk turnover mode via JMX before you drop a node to all backup nodes! + Set enable true on all JvmRouteBinderValve backups, disable worker at mod_jk + and then drop node and restart it! Then enable mod_jk Worker and disable JvmRouteBinderValves again. + This use case means that only requested session are migrated. +

    + + + +
    Configuration Example
    +
    +        <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
    +                 channelSendOptions="6">
    +
    +          <Manager className="org.apache.catalina.ha.session.BackupManager"
    +                   expireSessionsOnShutdown="false"
    +                   notifyListenersOnReplication="true"
    +                   mapSendOptions="6"/>
    +          <!--
    +          <Manager className="org.apache.catalina.ha.session.DeltaManager"
    +                   expireSessionsOnShutdown="false"
    +                   notifyListenersOnReplication="true"/>
    +          -->        
    +          <Channel className="org.apache.catalina.tribes.group.GroupChannel">
    +            <Membership className="org.apache.catalina.tribes.membership.McastService"
    +                        address="228.0.0.4"
    +                        port="45564"
    +                        frequency="500"
    +                        dropTime="3000"/>
    +            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
    +                      address="auto"
    +                      port="5000"
    +                      selectorTimeout="100"
    +                      maxThreads="6"/>
    +
    +            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
    +              <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
    +            </Sender>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
    +          </Channel>
    +
    +          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
    +                 filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
    +
    +          <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
    +                    tempDir="/tmp/war-temp/"
    +                    deployDir="/tmp/war-deploy/"
    +                    watchDir="/tmp/war-listen/"
    +                    watchEnabled="false"/>
    +
    +          <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
    +        </Cluster>
    +    
    +

    + Break it down!! +

    +
    +        <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
    +                 channelSendOptions="6">
    +    
    +

    + The main element, inside this element all cluster details can be configured. + The channelSendOptions is the flag that is attached to each message sent by the + SimpleTcpCluster class or any objects that are invoking the SimpleTcpCluster.send method. + The description of the send flags is available at + our javadoc site + The DeltaManager sends information using the SimpleTcpCluster.send method, while the backup manager + sends it itself directly through the channel. +
    For more info, Please visit the reference documentation +

    +
    +          <Manager className="org.apache.catalina.ha.session.BackupManager"
    +                   expireSessionsOnShutdown="false"
    +                   notifyListenersOnReplication="true"
    +                   mapSendOptions="6"/>
    +          <!--
    +          <Manager className="org.apache.catalina.ha.session.DeltaManager"
    +                   expireSessionsOnShutdown="false"
    +                   notifyListenersOnReplication="true"/>
    +          -->        
    +    
    +

    + This is a template for the manager configuration that will be used if no manager is defined in the <Context> + element. In Tomcat 5.x each webapp marked distributable had to use the same manager, this is no longer the case + since Tomcat 6 you can define a manager class for each webapp, so that you can mix managers in your cluster. + Obviously the managers on one node's application has to correspond with the same manager on the same application on the other node. + If no manager has been specified for the webapp, and the webapp is marked <distributable/> Tomcat will take this manager configuration + and create a manager instance cloning this configuration. +
    For more info, Please visit the reference documentation +

    +
    +          <Channel className="org.apache.catalina.tribes.group.GroupChannel">
    +    
    +

    + The channel element is Tribes, the group communication framework + used inside Tomcat. This element encapsulates everything that has to do with communication and membership logic. +
    For more info, Please visit the reference documentation +

    +
    +            <Membership className="org.apache.catalina.tribes.membership.McastService"
    +                        address="228.0.0.4"
    +                        port="45564"
    +                        frequency="500"
    +                        dropTime="3000"/>
    +    
    +

    + Membership is done using multicasting. Please note that Tribes also supports static memberships using the + StaticMembershipInterceptor if you want to extend your membership to points beyond multicasting. + The address attribute is the multicast address used and the port is the multicast port. These two together + create the cluster separation. If you want a QA cluster and a production cluster, the easiest config is to + have the QA cluster be on a separate multicast address/port combination the the production cluster.
    + The membership component broadcasts TCP adress/port of itselt to the other nodes so that communication between + nodes can be done over TCP. Please note that the address being broadcasted is the one of the + Receiver.address attribute. +
    For more info, Please visit the reference documentation +

    +
    +            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
    +                      address="auto"
    +                      port="5000"
    +                      selectorTimeout="100"
    +                      maxThreads="6"/>
    +    
    +

    + In tribes the logic of sending and receiving data has been broken into two functional components. The Receiver, as the name suggests + is responsible for receiving messages. Since the Tribes stack is thread less, (a popular improvement now adopted by other frameworks as well), + there is a thread pool in this component that has a maxThreads and minThreads setting.
    + The address attribute is the host address that will be broadcasted by the membership component to the other nodes. +
    For more info, Please visit the reference documentation +

    +
    +
    +            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
    +              <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
    +            </Sender>
    +    
    +

    + The sender component, as the name indicates is responsible for sending messages to other nodes. + The sender has a shell component, the ReplicationTransmitter but the real stuff done is done in the + sub component, Transport. + Tribes support having a pool of senders, so that messages can be sent in parallel and if using the NIO sender, + you can send messages concurrently as well.
    + Concurrently means one message to multiple senders at the same time and Parallel means multiple messages to multiple senders + at the same time. +
    For more info, Please visit the reference documentation +

    +
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
    +          </Channel>
    +    
    +

    + Tribes uses a stack to send messages through. Each element in the stack is called an interceptor, and works much like the valves do + in the Tomcat servlet container. + Using interceptors, logic can be broken into more managable pieces of code. The interceptors configured above are:
    + TcpFailureDetector - verifies crashed members through TCP, if multicast packets get dropped, this interceptor protects against false positives, + ie the node marked as crashed even though it still is alive and running.
    + MessageDispatch15Interceptor - dispatches messages to a thread (thread pool) to send message asynchrously.
    + ThroughputInterceptor - prints out simple stats on message traffic.
    + Please note that the order of interceptors is important. the way they are defined in server.xml is the way they are represented in the + channel stack. Think of it as a linked list, with the head being the first most interceptor and the tail the last. +
    For more info, Please visit the reference documentation +

    +
    +          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
    +                 filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
    +    
    +

    + The cluster uses valves to track requests to web applications, we've mentioned the ReplicationValve and the JvmRouteBinderValve above. + The <Cluster> element itself is not part of the pipeline in Tomcat, instead the cluster adds the valve to its parent container. + If the <Cluster> elements is configured in the <Engine> element, the valves get added to the engine and so on. +
    For more info, Please visit the reference documentation +

    +
    +          <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
    +                    tempDir="/tmp/war-temp/"
    +                    deployDir="/tmp/war-deploy/"
    +                    watchDir="/tmp/war-listen/"
    +                    watchEnabled="false"/>
    +    
    +

    + The default tomcat cluster supports farmed deployment, ie, the cluster can deploy and undeploy applications on the other nodes. + The state of this component is currently in flux but will be addressed soon. There was a change in the deployment algorithm + between Tomcat 5.0 and 5.5 and at that point, the logic of this component changed to where the deploy dir has to match the + webapps directory. +
    For more info, Please visit the reference documentation +

    +
    +          <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
    +        </Cluster>
    +    
    +

    + Since the SimpleTcpCluster itself is a sender and receiver of the Channel object, components can register themselves as listeners to + the SimpleTcpCluster. The listener above ClusterSessionListener listens for DeltaManager replication messages + and applies the deltas to the manager that in turn applies it to the session. +
    For more info, Please visit the reference documentation +

    + +
    Cluster Architecture
    + +

    Component Levels: +

    +         Server
    +           |
    +         Service
    +           |
    +         Engine
    +           |  \ 
    +           |  --- Cluster --*
    +           |
    +         Host
    +           |
    +         ------
    +        /      \
    +     Cluster    Context(1-N)                 
    +        |             \
    +        |             -- Manager
    +        |                   \
    +        |                   -- DeltaManager
    +        |                   -- BackupManager
    +        |
    +     ---------------------------
    +        |                       \
    +      Channel                    \
    +    ----------------------------- \
    +        |                          \
    +     Interceptor_1 ..               \
    +        |                            \
    +     Interceptor_N                    \
    +    -----------------------------      \
    +     |          |         |             \
    +   Receiver    Sender   Membership       \
    +                                         -- Valve
    +                                         |      \
    +                                         |       -- ReplicationValve
    +                                         |       -- JvmRouteBinderValve 
    +                                         |
    +                                         -- LifecycleListener 
    +                                         |
    +                                         -- ClusterListener 
    +                                         |      \
    +                                         |       -- ClusterSessionListener
    +                                         |       -- JvmRouteSessionIDBinderListener
    +                                         |
    +                                         -- Deployer 
    +                                                \
    +                                                 -- FarmWarDeployer
    +      
    +      
    +
    +

    + +
    How it Works
    +

    To make it easy to understand how clustering works, We are gonna take you through a series of scenarios. + In the scenario we only plan to use two tomcat instances TomcatA and TomcatB. + We will cover the following sequence of events:

    + +
      +
    1. TomcatA starts up
    2. +
    3. TomcatB starts up (Wait that TomcatA start is complete)
    4. +
    5. TomcatA receives a request, a session S1 is created.
    6. +
    7. TomcatA crashes
    8. +
    9. TomcatB receives a request for session S1
    10. +
    11. TomcatA starts up
    12. +
    13. TomcatA receives a request, invalidate is called on the session (S1)
    14. +
    15. TomcatB receives a request, for a new session (S2)
    16. +
    17. TomcatA The session S2 expires due to inactivity.
    18. +
    + +

    Ok, now that we have a good sequence, we will take you through exactly what happens in the session repliction code

    + +
      +
    1. TomcatA starts up +

      + Tomcat starts up using the standard start up sequence. When the Host object is created, a cluster object is associated with it. + When the contexts are parsed, if the distributable element is in place in web.xml + Tomcat asks the Cluster class (in this case SimpleTcpCluster) to create a manager + for the replicated context. So with clustering enabled, distributable set in web.xml + Tomcat will create a DeltaManager for that context instead of a StandardManager. + The cluster class will start up a membership service (multicast) and a replication service (tcp unicast). + More on the architecture further down in this document. +

      +
    2. +
    3. TomcatB starts up +

      + When TomcatB starts up, it follows the same sequence as TomcatA did with one exception. + The cluster is started and will establish a membership (TomcatA,TomcatB). + TomcatB will now request the session state from a server that already exists in the cluster, + in this case TomcatA. TomcatA responds to the request, and before TomcatB starts listening + for HTTP requests, the state has been transferred from TomcatA to TomcatB. + In case TomcatA doesn't respond, TomcatB will time out after 60 seconds, and issue a log + entry. The session state gets transferred for each web application that has distributable in + its web.xml. Note: To use session replication efficiently, all your tomcat instances should be + configured the same. +

      +
    4. +
    5. TomcatA receives a request, a session S1 is created. +

      + The request coming in to TomcatA is treated exactly the same way as without session replication. + The action happens when the request is completed, the ReplicationValve will intercept + the request before the response is returned to the user. + At this point it finds that the session has been modified, and it uses TCP to replicata the + session to TomcatB. Once the serialized data has been handed off to the operating systems TCP logic, + the request returns to the user, back through the valve pipeline. + For each request the entire session is replicated, this allows code that modifies attributes + in the session without calling setAttribute or removeAttribute to be replicated. + a useDirtyFlag configuration parameter can be used to optimize the number of times + a session is replicated. +

      + +
    6. +
    7. TomcatA crashes +

      + When TomcatA crashes, TomcatB receives a notification that TomcatA has dropped out + of the cluster. TomcatB removes TomcatA from its membership list, and TomcatA will no longer + be notified of any changes that occurs in TomcatB. + The load balancer will redirect the requests from TomcatA to TomcatB and all the sessions + are current. +

      +
    8. +
    9. TomcatB receives a request for session S1 +

      Nothing exciting, TomcatB will process the request as any other request. +

      +
    10. +
    11. TomcatA starts up +

      Upon start up, before TomcatA starts taking new request and making itself + available to it will follow the start up sequence described above 1) 2). + It will join the cluster, contact TomcatB for the current state of all the sessions. + And once it receives the session state, it finishes loading and opens its HTTP/mod_jk ports. + So no requests will make it to TomcatA until it has received the session state from TomcatB. +

      +
    12. +
    13. TomcatA receives a request, invalidate is called on the session (S1) +

      The invalidate is call is intercepted, and the session is queued with invalidated sessions. + When the request is complete, instead of sending out the session that has changed, it sends out + an "expire" message to TomcatB and TomcatB will invalidate the session as well. +

      + +
    14. +
    15. TomcatB receives a request, for a new session (S2) +

      Same scenario as in step 3) +

      + + +
    16. +
    17. TomcatA The session S2 expires due to inactivity. +

      The invalidate is call is intercepted the same was as when a session is invalidated by the user, + and the session is queued with invalidated sessions. + At this point, the invalidet session will not be replicated across until + another request comes through the system and checks the invalid queue. +

      +
    18. +
    + +

    Phuuuhh! :)

    + +

    Membership + Clustering membership is established using very simple multicast pings. + Each Tomcat instance will periodically send out a multicast ping, + in the ping message the instance will broad cast its IP and TCP listen port + for replication. + If an instance has not received such a ping within a given timeframe, the + member is considered dead. Very simple, and very effective! + Of course, you need to enable multicasting on your system. +

    + +

    TCP Replication + Once a multicast ping has been received, the member is added to the cluster + Upon the next replication request, the sending instance will use the host and + port info and establish a TCP socket. Using this socket it sends over the serialized data. + The reason I choose TCP sockets is because it has built in flow control and guaranteed delivery. + So I know, when I send some data, it will make it there :) +

    + +

    Distributed locking and pages using frames + Tomcat does not keep session instances in sync across the cluster. + The implementation of such logic would be to much overhead and cause all + kinds of problems. If your client accesses the same session + simultanously using multiple requests, then the last request + will override the other sessions in the cluster. +

    + +
    Monitoring your Cluster with JMX
    +

    Monitoring is a very important question when you use a cluster. Some of the cluster objects are JMX MBeans

    +

    Add the following parameter to your startup script with Java 5: +

    +set CATALINA_OPTS=\
    +-Dcom.sun.management.jmxremote \
    +-Dcom.sun.management.jmxremote.port=%my.jmx.port% \
    +-Dcom.sun.management.jmxremote.ssl=false \
    +-Dcom.sun.management.jmxremote.authenticate=false
    +
    +

    +

    Activate JMX with JDK 1.4: +

      +
    1. Install the compat package
    2. +
    3. Install the mx4j-tools.jar at common/lib (use the same mx4j version as your tomcat release)
    4. +
    5. Configure a MX4J JMX HTTP Adaptor at your AJP Connector

      +
      +<Connector port="${AJP.PORT}" 
      +   handler.list="mx"
      +   mx.enabled="true" 
      +   mx.httpHost="${JMX.HOST}" 
      +   mx.httpPort="${JMX.PORT}" 
      +   protocol="AJP/1.3" />
      +
      +
    6. +
    7. Start your tomcat and look with your browser to http://${JMX.HOST}:${JMX.PORT}
    8. +
    9. With the connector parameter mx.authMode="basic" mx.authUser="tomcat" mx.authPassword="strange" you can control the access!
    10. +
    +

    +

    +List of Cluster Mbeans
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NameDescriptionMBean ObjectName - EngineMBean ObjectName - Host
    ClusterThe complete cluster elementtype=Clustertype=Cluster,host=${HOST}
    DeltaManagerThis manager control the sessions and handle session replication type=Manager,path=${APP.CONTEXT.PATH}, host=${HOST}type=Manager,path=${APP.CONTEXT.PATH}, host=${HOST}
    ReplicationValveThis valve control the replication to the backup nodestype=Valve,name=ReplicationValvetype=Valve,name=ReplicationValve,host=${HOST}
    JvmRouteBinderValveThis is a cluster fallback valve to change the Session ID to the current tomcat jvmroute.type=Valve,name=JvmRouteBinderValve, + path=${APP.CONTEXT.PATH}type=Valve,name=JvmRouteBinderValve,host=${HOST}, + path=${APP.CONTEXT.PATH}
    +

    +
    FAQ
    +

    Please see the clustering section of the FAQ.

    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/ajp.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/ajp.html new file mode 100644 index 0000000..ecc7219 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/ajp.html @@ -0,0 +1,201 @@ +Apache Tomcat Configuration Reference - The AJP Connector
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The AJP Connector

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The AJP Connector element represents a + Connector component that communicates with a web + connector via the AJP protocol. This is used for cases + where you wish to invisibly integrate Tomcat 6 into an existing (or new) + Apache installation, and you want Apache to handle the static content + contained in the web application, and/or utilize Apache's SSL + processing.

    + +

    This connector supports load balancing when used in conjunction with + the jvmRoute attribute of the + Engine.

    + +

    The native connectors supported with this Tomcat release are: +

      +
    • JK 1.2.x with any of the supported servers
    • +
    • mod_proxy on Apache httpd 2.x (included by default in Apache HTTP Server 2.2), + with AJP enabled: see + the httpd docs + for details.
    • +
    +

    + +

    Other native connectors supporting AJP may work, but are no longer supported.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Connector + support the following attributes:

    + +
    AttributeDescription
    allowTrace +

    A boolean value which can be used to enable or disable the TRACE + HTTP method. If not specified, this attribute is set to false.

    +
    emptySessionPath +

    If set to true, all paths for session cookies will be set + to /. This can be useful for portlet specification implementations, + but will greatly affect performance if many applications are accessed on a given + server by the client. + If not specified, this attribute is set to false.

    +
    enableLookups +

    Set to true if you want calls to + request.getRemoteHost() to perform DNS lookups in + order to return the actual host name of the remote client. Set + to false to skip the DNS lookup and return the IP + address in String form instead (thereby improving performance). + By default, DNS lookups are enabled.

    +
    maxPostSize +

    The maximum size in bytes of the POST which will be handled by + the container FORM URL parameter parsing. The feature can be disabled by + setting this attribute to a value less than or equal to 0. + If not specified, this attribute is set to 2097152 (2 megabytes).

    +
    maxSavePostSize +

    The maximum size in bytes of the POST which will be saved/buffered by + the container during FORM or CLIENT-CERT authentication. For both types + of authentication, the POST will be saved/buffered before the user is + authenticated. For CLIENT-CERT authentication, the POST is buffered for + the duration of the SSL handshake and the buffer emptied when the request + is processed. For FORM authentication the POST is saved whilst the user + is re-directed to the login form and is retained until the user + successfully authenticates or the session associated with the + authentication request expires. The limit can be disabled by setting this + attribute to -1. Setting the attribute to zero will disable the saving of + POST data during authentication. If not specified, this attribute is set + to 4096 (4 kilobytes).

    +
    protocol +

    This attribute value must be AJP/1.3 to use the AJP + handler.

    +
    proxyName +

    If this Connector is being used in a proxy + configuration, configure this attribute to specify the server name + to be returned for calls to request.getServerName(). + See Proxy Support for more + information.

    +
    proxyPort +

    If this Connector is being used in a proxy + configuration, configure this attribute to specify the server port + to be returned for calls to request.getServerPort(). + See Proxy Support for more + information.

    +
    redirectPort +

    If this Connector is supporting non-SSL + requests, and a request is received for which a matching + <security-constraint> requires SSL transport, + Catalina will automatically redirect the request to the port + number specified here.

    +
    request.registerRequests +

    This attribute controls request registration for JMX monitoring + of the Connector. It is enabled by default, but may be turned + it off to save a bit of memory.

    +
    scheme +

    Set this attribute to the name of the protocol you wish to have + returned by calls to request.getScheme(). For + example, you would set this attribute to "https" + for an SSL Connector. The default value is "http". + See SSL Support for more information.

    +
    secure +

    Set this attribute to true if you wish to have + calls to request.isSecure() to return true + for requests received by this Connector (you would want this on an + SSL Connector). The default value is false.

    +
    URIEncoding +

    This specifies the character encoding used to decode the URI bytes, + after %xx decoding the URL. If not specified, ISO-8859-1 will be used. +

    +
    useBodyEncodingForURI +

    This specifies if the encoding specified in contentType should be used + for URI query parameters, instead of using the URIEncoding. This + setting is present for compatibility with Tomcat 4.1.x, where the + encoding specified in the contentType, or explicitely set using + Request.setCharacterEncoding method was also used for the parameters from + the URL. The default value is false. +

    +
    useIPVHosts +

    Set this attribute to true to cause Tomcat to use + the ServerName passed by the native web server to determine the Host + to send the request to. The default value is false.

    +
    xpoweredBy +

    Set this attribute to true to cause Tomcat to advertise + support for the Srevlet specification using the header recommended in the + specification. The default value is false.

    +
    + +
    + +
    Standard Implementation
    + +

    To use AJP, you + must specify the protocol attribute (see above).

    + +

    This implementation supports the AJP 1.3 protocol.

    + +

    It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    address +

    For servers with more than one IP address, this attribute + specifies which address will be used for listening on the specified + port. By default, this port will be used on all IP addresses + associated with the server. A value of 127.0.0.1 + indicates that the Connector will only listen on the loopback + interface.

    +
    backlog +

    The maximum queue length for incoming connection requests when + all possible request processing threads are in use. Any requests + received when the queue is full will be refused. The default + value is 10.

    +
    bufferSize +

    The size of the output buffer to use. If less than or equal to zero, + then output buffering is disabled. The default value is -1 + (i.e. buffering disabled)

    +
    connectionTimeout +

    The number of milliseconds this Connector will wait, + after accepting a connection, for the request URI line to be + presented. The default value is infinite (i.e. no timeout).

    +
    executor +

    A reference to the name in an Executor element. + If this attribute is enabled, and the named executor exists, the connector will + use the executor, and all the other thread attributes will be ignored.

    +
    keepAliveTimeout +

    The number of milliseconds this Connector will wait for + another AJP request before closing the connection. + The default value is to use the value that has been set for the + connectionTimeout attribute.

    +
    maxThreads +

    The maximum number of request processing threads to be created + by this Connector, which therefore determines the + maximum number of simultaneous requests that can be handled. If + not specified, this attribute is set to 40. If an executor is associated + with this connector, this attribute is ignored as the connector will + execute tasks using the executor rather than an internal thread pool.

    +
    port +

    The TCP port number on which this Connector + will create a server socket and await incoming connections. Your + operating system will allow only one server application to listen + to a particular port number on a particular IP address.

    +
    tcpNoDelay +

    If set to true, the TCP_NO_DELAY option will be + set on the server socket, which improves performance under most + circumstances. This is set to true by default.

    +
    tomcatAuthentication +

    If set to true, the authetication will be done in Tomcat. + Otherwise, the authenticated principal will be propagated from the native + webaserver and used for authorization in Tomcat. + The default value is true.

    +
    + +
    + +
    Nested Components
    + +

    None at this time.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-channel.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-channel.html new file mode 100644 index 0000000..1a4fe77 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-channel.html @@ -0,0 +1,61 @@ +Apache Tomcat Configuration Reference - The Cluster Channel object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Cluster Channel object

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + The cluster channel is the main component of a small framework we've nicknamed Apache Tribes.
    + The channel manages a set of sub components and together they create a group communication framework.
    + This framework is then used internally by the components that need to send messages between different Tomcat instances. +
    + A few examples of these components would be the SimpleTcpCluster that does the messaging for the DeltaManager, + or the BackupManager that uses a different replication strategy. The ReplicatedContext object does also + use the channel object to communicate context attribute changes. +
    Nested Components
    +

    Channel/Membership:
    + The Membership component is responsible for auto discovering new nodes in the cluster + and also to provide for notifications for any nodes that have not responded with a heartbeat. + The default implementation uses multicast.
    + In the membership component you configure how your nodes, aka. members, are to be discovered and/or + divided up. + You can always find out more about Apache Tribes +

    +

    Channel/Sender:
    + The Sender component manages all outbound connections and data messages that are sent + over the network from one node to another. + This component allows messages to be sent in parallel. + The default implementation uses TCP client sockets, and socket tuning for outgoing messages are + configured here.
    + You can always find out more about Apache Tribes +

    +

    Channel/Sender/Transport:
    + The Transport component is the bottom IO layer for the sender component. + The default implementation uses non-blocking TCP client sockets.
    + You can always find out more about Apache Tribes +

    +

    Channel/Receiver:
    + The receiver component listens for messages from other nodes. + Here you will configure the cluster thread pool, as it will dispatch incoming + messages to a thread pool for faster processing. + The default implementation uses non-blocking TCP server sockets.
    + You can always find out more about Apache Tribes +

    +

    Channel/Interceptor:
    + The channel will send messages through an interceptor stack. Because of this, you have the ability to + customize the way messages are sent and received, and even how membership is handled.
    + You can always find out more about Apache Tribes +

    +
    Attributes
    + +
    Common Attributes
    + +
    AttributeDescription
    className + The default value here is org.apache.catalina.tribes.group.GroupChannel and is + currently the only implementation available. +
    + + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-deployer.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-deployer.html new file mode 100644 index 0000000..48f867b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-deployer.html @@ -0,0 +1,22 @@ +Apache Tomcat Configuration Reference - The Cluster Deployer object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Cluster Deployer object

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    This goober is currently pretty broken, but we are working hard to fix it

    + + +
    Attributes
    + +
    Common Attributes
    + +
    AttributeDescription
    className + +
    + + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-interceptor.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-interceptor.html new file mode 100644 index 0000000..4f3ea65 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-interceptor.html @@ -0,0 +1,115 @@ +Apache Tomcat Configuration Reference - The Channel Interceptor object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Channel Interceptor object

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    + Apache Tribes supports an interceptor architecture to intercept both messages and membership notifications. + This architecture allows decoupling of logic and opens the way for some very kewl feature add ons. +

    +
    Available Interceptors
    +

    +

      +
    • org.apache.catalina.tribes.group.interceptors.TcpFailureDetector
    • +
    • org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.NonBlockingCoordinator
    • +
    • org.apache.catalina.tribes.group.interceptors.OrderInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.StaticMembershipInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.TwoPhaseCommitInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.DomainFilterInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.FragmentationInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.GzipInterceptor
    • +
    +

    +
    Static Membership
    +

    + In addition to dynamic discovery, Apache Tribes also supports static membership, with membership verification. + To achieve this add the org.apache.catalina.tribes.group.interceptors.StaticMembershipInterceptor + underneath the org.apache.catalina.tribes.group.interceptors.TcpFailureDetector interceptor. + Inside the StaticMembershipInterceptor you can add the static members you wish to have. + The TcpFailureDetector will do a health check on the static members,and also monitor them for crashes + so they will have the same level of notification mechanism as the members that are automatically discovered. +

    +     <Interceptor className="org.apache.catalina.tribes.group.interceptors.StaticMembershipInterceptor">
    +       <Member className="org.apache.catalina.tribes.membership.StaticMember"
    +                  port="5678"
    +                  securePort="-1"
    +                  host="tomcat01.mydomain.com"
    +                  domain="staging-cluster"
    +                  uniqueId="{0,1,2,3,4,5,6,7,8,9}"/>
    +     </Interceptor>
    +   
    +   
    +

    +
    Attributes
    + +
    Common Attributes
    +
    AttributeDescription
    className + Required, as there is no default +
    optionFlag + If you want the interceptor to trigger on certain message depending on the message's option flag, + you can setup the interceptors flag here. + The default value is 0, meaning this interceptor will trigger on all messages. +
    +
    + +
    org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor Attributes
    +
    AttributeDescription
    className + Required, This dispatcher uses JDK 1.5 java.util.concurrent package +
    optionFlag + The default and hard coded value is 8 (org.apache.catalina.tribes.Channel.SEND_OPTIONS_ASYNCHRONOUS). + The dispatcher will trigger on this value only, as it is predefined by Tribes. +
    +
    +
    org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor Attributes
    +
    AttributeDescription
    className + Required, Same implementation as MessageDispatch15Interceptor, but with JDK 1.4 compliance. +
    optionFlag + The default and hard coded value is 8 (org.apache.catalina.tribes.Channel.SEND_OPTIONS_ASYNCHRONOUS). + The dispatcher will trigger on this value only, as it is predefined by Tribes. +
    +
    +
    org.apache.catalina.tribes.group.interceptors.TcpFailureDetector Attributes
    +
    AttributeDescription
    +
    +
    org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor Attributes
    +
    AttributeDescription
    interval + Defines the interval in number of messages when we are to report the throughput statistics. + The report is logged to the org.apache.juli.logging.LogFactory.getLog(ThroughputInterceptor.class) + logger under the INFO level. + Default value is to report every 10000 messages. +
    +
    + +
    Nested element StaticMember Attributes
    +
    AttributeDescription
    className + Only one implementation available:org.apache.catalina.tribes.membership.StaticMember +
    port + The port that this static member listens to for cluster messages +
    securePort + The secure port this static member listens to for encrypted cluster messages + default value is -1, this value means the member is not listening on a secure port +
    host + The host (or network interface) that this static member listens for cluster messages. + Three different type of values are possible:
    + 1. IP address in the form of "216.123.1.23"
    + 2. Hostnames like "tomcat01.mydomain.com" or "tomcat01" as long as they resolve correctly
    + 3. byte array in string form, for example {216,123,12,3}
    +
    domain + The logical cluster domain for this this static member listens for cluster messages. + Two different type of values are possible:
    + 1. Regular string values like "staging-domain" or "tomcat-cluster" will be converted into bytes + using ISO-8859-1 encoding. + 2. byte array in string form, for example {216,123,12,3}
    +
    uniqueId + A universally uniqueId for this static member. + The values must be 16 bytes in the following form:
    + 1. byte array in string form, for example {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}
    +
    +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-listener.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-listener.html new file mode 100644 index 0000000..2f344e1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-listener.html @@ -0,0 +1,36 @@ +Apache Tomcat Configuration Reference - The ClusterListener object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The ClusterListener object

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    + The org.apache.catalina.ha.ClusterListener base class + lets you listen in on messages that are received by the Cluster component. +

    + +
    org.apache.catalina.ha.session.ClusterSessionListener
    +

    + When using the DeltaManager, the messages are received by the Cluster object and are propagated to the + to the manager through this listener. +

    +
    org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener
    +

    + Listens for session Id changes. This listener is only used if you are using mod_jk + along with the jvmRoute attribute where the session Id can change. + In the event of a change, the JvmRouteBinderValve will broadcast the + session change and it will get picked up by this listener. +

    +
    Attributes
    + +
    Common Attributes
    + +
    AttributeDescription
    className + +
    + + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-manager.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-manager.html new file mode 100644 index 0000000..a8ddba8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-manager.html @@ -0,0 +1,67 @@ +Apache Tomcat Configuration Reference - The ClusterManager object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The ClusterManager object

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    + A cluster manager is an extension to Tomcat's session manager interface, + org.apache.catalina.Manager + A cluster manager must implement the org.apache.catalina.ha.ClusterManager and is solely + responsible for how the session is replicated.
    + There are currently two different managers, the org.apache.catalina.ha.session.DeltaManager replicates deltas + of session data to all members in the cluster. This implementation is proven and works very well, but has a limitation + as it requires the cluster members to be homogeneous, all nodes must deploy the same applications and be exact replicas. + The org.apache.catalina.ha.session.BackupManager also replicates deltas but only to one backup node. + The location of the backup node is known to all nodes in the cluster. It also supports heterogeneous deployments, + so the manager knows at what locations the webapp is deployed.
    + We are planning to add more managers with even more sophisticated backup mechanism to support even larger clusters. + Check back soon! +

    +
    The <Manager>
    +

    + The <Manager> element defined inside the <Cluster> element + is the template defined for all web applications that are marked <distributable/> + in their web.xml file. + However, you can still override the manager implementation on a per web application basis, + by putting the <Manager> inside the <Context> element either in the + context.xml file or the server.xml file. +

    +
    Attributes
    +
    Common Attributes
    +
    AttributeDescription
    className +
    name + The name of this cluster manager, the name is used to identify a session manager on a node. + The name might get modified by the Cluster element to make it unique in the container. +
    defaultMode + Deprecated since 6.0.0 +
    notifyListenersOnReplication + Set to true if you wish to have session listeners notified when + session attributes are being replicated or removed across Tomcat nodes in the cluster. +
    expireSessionsOnShutdown + When a webapplication is being shutdown, Tomcat issues an expire call to each session to + notify all the listeners. If you wish for all sessions to expire on all nodes when + a shutdown occurs on one node, set this value to true. + Default value is false. +
    +
    +
    org.apache.catalina.ha.session.DeltaManager Attributes
    +
    AttributeDescription
    domainReplication + Set to true if you wish sessions to be replicated only to members that have the same logical + domain set. If set to false, session replication will ignore the domain setting the + <Membership> + element. +
    expireSessionsOnShutdown + When a webapplication is being shutdown, Tomcat issues an expire call to each session to + notify all the listeners. If you wish for all sessions to expire on all nodes when + a shutdown occurs on one node, set this value to true. + Default value is false. +
    +
    +
    org.apache.catalina.ha.session.BackupManager Attributes
    +
    AttributeDescription
    mapSendOptions + The backup manager uses a replicated map, this map is sending and receiving messages. + You can setup the flag for how this map is sending messages, the default value is 8(asynchronous). +
    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-membership.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-membership.html new file mode 100644 index 0000000..2b892cc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-membership.html @@ -0,0 +1,90 @@ +Apache Tomcat Configuration Reference - The Cluster Membership object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Cluster Membership object

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    + The membership component in the Apache Tribes Channel is responsible + for dynamic discovery of other members(nodes) in the cluster. +

    +
    Default Implementation
    +

    + The default implementation of the cluster group notification is built on top of multicast heartbeats + sent using UDP packets to a multicast IP address. + Cluster members are grouped together by using the same multicast address/port combination. + Each member sends out a heartbeat with a given interval (frequency), and this + heartbeat is used for dynamic discovery. + In a similar fashion, if a heartbeat has not been received in a timeframe specified by dropTime + ms. a member is considered suspect and the channel and any membership listener will be notified. +

    +
    Attributes
    + +
    Multicast Attributes
    + +
    AttributeDescription
    className +

    + The default value is org.apache.catalina.tribes.membership.McastService + and is currently the only implementation. + This implementation uses multicast heartbeats for member discovery. +

    +
    address +

    + The multicast address that the membership will broadcast its presence and listen + for other heartbeats on. The default value is 228.0.0.4 + Make sure your network is enabled for multicast traffic.
    + The multicast address, in conjunction with the port is what + creates a cluster group. To divide up your farm into several different group, or to + split up QA from production, change the port or the address +
    Previously known as mcastAddr. +

    +
    port +

    + The multicast port, the default value is 45564
    + The multicast port, in conjunction with the address is what + creates a cluster group. To divide up your farm into several different group, or to + split up QA from production, change the port or the address +

    +
    frequency +

    + The frequency in milliseconds in which heartbeats are sent out. The default value is 500 ms.
    + In most cases the default value is sufficient. Changing this value, simply changes the interval in between heartbeats. +

    +
    dropTime +

    + The membership component will time out members and notify the Channel if a member fails to send a heartbeat within + a give time. The default value is 3000 ms. This means, that if a heartbeat is not received from a + member in that timeframe, the membership component will notify the cluster of this.
    + On a high latency network you may wish to increase this value, to protect against false positives.
    + Apache Tribes also provides a TcpFailureDetector that will + verify a timeout using a TCP connection when a heartbeat timeout has occurred. This protects against false positives. +

    +
    bind +

    + Use this attribute if you wish to bind your multicast traffic to a specific network interface. + By default, or when this attribute is unset, it tries to bind to 0.0.0.0 and sometimes on multihomed hosts + this becomes a problem. +

    +
    ttl +

    + The time-to-live setting for the multicast heartbeats. + This setting should be a value between 0 and 255. The default value is VM implementation specific. +

    +
    domain +

    + Apache Tribes has the ability to logically group members into domains, by using this domain attribute. + The org.apache.catalina.tribes.Member.getDomain() method returns the value specified here. +

    +
    soTimeout +

    + The sending and receiving of heartbeats is done on a single thread, hence to avoid blocking this thread forever, + you can control the SO_TIMEOUT value on this socket.
    + If a value smaller or equal to 0 is presented, the code will default this value to frequency +

    +
    + + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-receiver.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-receiver.html new file mode 100644 index 0000000..6bac6aa --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-receiver.html @@ -0,0 +1,104 @@ +Apache Tomcat Configuration Reference - The Cluster Receiver object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Cluster Receiver object

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    + The receiver component is responsible for receiving cluster messages. + As you might notice through the configuration, is that the receiving of messages + and sending of messages are two different components, this is different from many other + frameworks, but there is a good reason for it, to decouple the logic for how messages are sent from + how messages are received.
    + The receiver is very much like the Tomcat Connector, its the base of the thread pool + for incoming cluster messages. The receiver is straight forward, but all the socket settings + for incoming traffic are managed here. +

    +
    Blocking vs Non-Blocking Receiver
    +

    + The receiver supports both a non blocking, org.apache.catalina.tribes.transport.nio.NioReceiver, and a + blocking, org.apache.catalina.tribes.transport.bio.BioReceiver. It is preferred to use the non blocking receiver + to be able to grow your cluster without running into thread starvation.
    + Using the non blocking receiver allows you to with a very limited thread count to serve a large number of messages. + Usually the rule is to use 1 thread per node in the cluster for small clusters, and then depending on your message frequency + and your hardware, you'll find an optimal number of threads peak out at a certain number. +

    +
    Attributes
    +
    Common Attributes
    +
    AttributeDescription
    className + The implementation of the receiver component. Two implementations available, + org.apache.catalina.tribes.transport.nio.NioReceiver and + org.apache.catalina.tribes.transport.bio.BioReceiver.
    + The org.apache.catalina.tribes.transport.nio.NioReceiver is the + preferred implementation +
    address + The address (network interface) to listen for incoming traffic. + Same as the bind address. The default value is auto and translates to + java.net.InetAddress.getLocalHost().getHostAddress(). +
    direct + Possible values are true or false. + Set to true if you want the receiver to use direct bytebuffers when reading data + from the sockets. +
    port + The listen port for incoming data. The default value is 4000. + To avoid port conflicts the receiver will automatically bind to a free port within the range of + port <= bindPort <= port+autoBind + So for example, if port is 4000, and autoBind is set to 10, then the receiver will open up + a server socket on the first available port in the range 4000-4100. +
    autoBind + Default value is 100. + Use this value if you wish to automatically avoid port conflicts the cluster receiver will try to open a + server socket on the port attribute port, and then work up autoBind number of times. +
    securePort + The secure listen port. This port is SSL enabled. If this attribute is omitted no SSL port is opened up. + There default value is unset, meaning there is no SSL socket available. +
    selectorTimeout + The value in milliseconds for the polling timeout in the NioReceiver. On older versions of the JDK + there have been bugs, that should all now be cleared out where the selector never woke up. + The default value is a very high 5000 milliseconds. +
    maxThreads + The maximum number of threads in the receiver thread pool. The default value is 6 + Adjust this value relative to the number of nodes in the cluster, the number of messages being exchanged and + the hardware you are running on. A higher value doesn't mean more effiecency, tune this value according to your + own test results. +
    minThreads + Minimum number of threads to be created when the receiver is started up. Default value is 6 +
    ooBInline + Boolean value for the socket OOBINLINE option. Possible values are true or false. +
    rxBufSize + The receiver buffer size on the receiving sockets. Value is in bytes, the default value is 43800 bytes. +
    txBufSize + The sending buffer size on the receiving sockets. Value is in bytes, the default value is 25188 bytes. +
    soKeepAlive + Boolean value for the socket SO_KEEPALIVE option. Possible values are true or false. +
    soLingerOn + Boolean value to determine whether to use the SO_LINGER socket option. + Possible values are true or false. Default value is true. +
    soLingerTime + Sets the SO_LINGER socket option time value. The value is in seconds. + The default value is 3 seconds. +
    soReuseAddress + Boolean value for the socket SO_REUSEADDR option. Possible values are true or false. +
    soTrafficClass + Sets the traffic class level for the socket, the value is between 0 and 255. + Different values are defined in + java.net.Socket#setTrafficClass(int). +
    tcpNoDelay + Boolean value for the socket TCP_NODELAY option. Possible values are true or false. + The default value is true +
    timeout + Sets the SO_TIMEOUT option on the socket. The value is in milliseconds and the default value is 3000 + milliseconds. +
    useBufferPool + Boolean value whether to use a shared buffer pool of cached org.apache.catalina.tribes.io.XByteBuffer + objects. If set to true, the XByteBuffer that is used to pass a message up the channel, will be recycled at the end + of the requests. This means that interceptors in the channel must not maintain a reference to the object + after the org.apache.catalina.tribes.ChannelInterceptor#messageReceived method has exited. +
    +
    +
    NioReceiver
    +
    +
    BioReceiver
    +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-sender.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-sender.html new file mode 100644 index 0000000..58f82cc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-sender.html @@ -0,0 +1,106 @@ +Apache Tomcat Configuration Reference - The Cluster Sender object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Cluster Sender object

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    + The channel sender component is responsible for delivering outgoing cluster messages over the network. + In the default implementation, org.apache.catalina.tribes.transport.ReplicationTransmitter, + the sender is a fairly empty shell with not much logic around a fairly complex <Transport> + component the implements the actual delivery mechanism. +

    +
    Concurrent Parallel Delivery
    +

    + In the default transport implementation, org.apache.catalina.tribes.transport.nio.PooledParallelSender, + Apache Tribes implements what we like to call "Concurrent Parallel Delivery". + This means that we can send a message to more than one destination at the same time(parallel), and + deliver two messages to the same destination at the same time(concurrent). Combine these two and we have + "Concurrent Parallel Delivery". +

    +

    + When is this useful? The simplest example we can think of is when part of your code is sending a 10MB message, + like a war file being deployed, and you need to push through a small 10KB message, say a session being replicated, + you don't have to wait for the 10MB message to finish, as a separate thread will push in the small message + transmission at the same time. Currently there is no interrupt, pause or priority mechanism avaiable, but check back soon. +

    +
    Nested Elements
    +

    + The nested element <Transport> is is not required, by encouraged, as this is where + you would set all the socket options for the outgoing messages. Please see its attributes below. + There are two implementations, in a similar manner to the receiver, one is non-blocking + based and the other is built using blocking IO.
    + org.apache.catalina.tribes.transport.bio.PooledMultiSender is the blocking implemenation and + org.apache.catalina.tribes.transport.nio.PooledParallelSender. + Parallel delivery is not available for the blocking implementation due to the fact that it is blocking a thread on sending data. +

    +
    Attributes
    +
    Common Sender Attributes
    +
    AttributeDescription
    className + Required, only available implementation is org.apache.catalina.tribes.transport.ReplicationTransmitter +
    +
    +
    Common Transport Attributes
    +
    AttributeDescription
    className + Required, an implementation of the org.apache.catalina.tribes.transport.MultiPointSender.
    + Non-blocking implementation is org.apache.catalina.tribes.transport.nio.PooledParallelSender
    + Blocking implementation is org.apache.catalina.tribes.transport.bio.PooledMultiSender +
    rxBufSize + The receive buffer size on the socket. + Default value is 25188 bytes. +
    txBufSize + The send buffer size on the socket. + Default value is 43800 bytes. +
    direct + Possible values are true or false. + Set to true if you want the receiver to use direct bytebuffers when reading data + from the sockets. Default value is false +
    keepAliveCount + The number of requests that can go through the socket before the socket is closed, and reopened + for the next request. The default value is -1, which is unlimited. +
    keepAliveTime + The number of milliseconds a connection is kept open after its been opened. + The default value is -1, which is unlimited. +
    timeout + Sets the SO_TIMEOUT option on the socket. The value is in milliseconds and the default value is 3000 + milliseconds. +
    maxRetryAttempts + How many times do we retry a failed message, that received a IOException at the socket level. + The default value is 1, meaning we will retry a message that has failed once. + In other words, we will attempt a message send no more than twice. One is the original send, and one is the + maxRetryAttempts. +
    ooBInline + Boolean value for the socket OOBINLINE option. Possible values are true or false. +
    soKeepAlive + Boolean value for the socket SO_KEEPALIVE option. Possible values are true or false. +
    soLingerOn + Boolean value to determine whether to use the SO_LINGER socket option. + Possible values are true or false. Default value is true. +
    soLingerTime + Sets the SO_LINGER socket option time value. The value is in seconds. + The default value is 3 seconds. +
    soReuseAddress + Boolean value for the socket SO_REUSEADDR option. Possible values are true or false. +
    soTrafficClass + Sets the traffic class level for the socket, the value is between 0 and 255. + Default value is int soTrafficClass = 0x04 | 0x08 | 0x010; + Different values are defined in + java.net.Socket#setTrafficClass(int). +
    tcpNoDelay + Boolean value for the socket TCP_NODELAY option. Possible values are true or false. + The default value is true +
    throwOnFailedAck + Boolean value, default value is true. + If set to true, the sender will throw a org.apache.catalina.tribes.RemoteProcessException + when we receive a negative ack from the remote member. + Set to false, and Tribes will treat a positive ack the same way as a negative ack, that the message was received. +
    +
    +
    PooledParallelSender Attributes
    +
    AttributeDescription
    poolSize + The maximum number of concurrent connections from A to B. + The value is based on a per-destination count. + The default value is 25 +
    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-valve.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-valve.html new file mode 100644 index 0000000..5abea4c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster-valve.html @@ -0,0 +1,57 @@ +Apache Tomcat Configuration Reference - The Cluster Valve object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Cluster Valve object

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    + A cluster valve is no different from any other Tomcat Valve. + The cluster valves are interceptors in the invokation chain for HTTP requests, and the clustering implementation + uses these valves to make intelligent decision around data and when data should be replicated. +

    +

    + A cluster valve must implement the org.apache.catalina.ha.ClusterValve interface. + This is a simple interface that extends the org.apache.catalina.Valve interface. +

    +
    org.apache.catalina.ha.tcp.ReplicationValve
    + The ReplicationValve will notify the cluster at the end of a HTTP request + so that the cluster can make a decision whether there is data to be replicated or not. +
    Attributes
    +
    AttributeDescription
    className + Set value to org.apache.catalina.ha.tcp.ReplicationValve +
    filter + For known file extensions or urls, you can use a filter to + notify the cluster that the session has not been modified during this + request and the cluster doesn't have to probe the session managers for changes. + If there is a filter match, the cluster assumes there has been no session change. + An example filter would look like filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;" + The filter uses regular expressions and each filter is delimited by a semi colon. + Pattern#compile(java.lang.String) +
    primaryIndicator + Boolean value, so to true, and the replication valve will insert a request attribute with the name + defined by the primaryIndicatorName attribute. + The value inserted into the request attribute is either Boolean.TRUE or + Boolean.FALSE +
    primaryIndicatorName + Default value is org.apache.catalina.ha.tcp.isPrimarySession + The value defined here is the name of the request attribute that contains the boolean value + if the session is primary on this server or not. +
    statistics + Boolean value. Set to true if you want the valve to collect request statistics. + Default value is false +
    +
    +
    org.apache.catalina.ha.session.JvmRouteBinderValve
    + In case of a mod_jk failover, the JvmRouteBinderValve will replace the + jvmWorker attribute in the session Id, to make future requests stick to this + node. If you want failback capability, don't enable this valve, but if you want your failover to stick, + and for mod_jk not to have to keep probing the node that went down, you use this valve. +
    Attributes
    +
    AttributeDescription
    className + org.apache.catalina.ha.session.JvmRouteBinderValve +
    enabled + Default value is true + Runtime attribute to turn on and off turn over of the session's jvmRoute value. +
    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster.html new file mode 100644 index 0000000..86ec55f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/cluster.html @@ -0,0 +1,107 @@ +Apache Tomcat Configuration Reference - The Cluster object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Cluster object

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    + The tomcat cluster implementation provides session replication, context attribute replication and + cluster wide WAR file deployment. + While the Cluster configuration is fairly complex, the default configuration will work + for most people out of the box.

    + The Tomcat Cluster implementation is very extensible, and hence we have exposed a myriad of options, + making the configuration seem like a lot, but don't lose faith, instead you have a tremendous control + over what is going on.

    +
    Engine vs Host placement
    +

    + You can place the <Cluster> element inside either the <Engine> + container or the <Host> container.
    + Placing it in the engine, means that you will support clustering in all virtual hosts of Tomcat, + and share the messaging component. When you place the <Cluster> inside the <Engine> + element, the cluster will append the host name of each session manager to the managers name so that two contexts with + the same name but sitting inside two different hosts will be distinguishable. +

    +
    Context Attribute Replication
    +

    To configure context attribute replication, simply do this by swapping out the context implementation + used for your application context. +

    <Context className="org.apache.catalina.ha.context.ReplicatedContext"/>
    + This context extends the Tomcat StandardContext + so all the options from the base implementation are valid. +

    +
    Nested Components
    +

    Manager:
    + The session manager element identifies what kind of session manager is used in this cluster implementation. + This manager configuration is identical to the one you would use in a regular <Context> configuration. +
    The default value is the org.apache.catalina.ha.session.DeltaManager that is closely coupled with + the SimpleTcpCluster implementation. Other managers like the org.apache.catalina.ha.session.BackupManager + are/could be loosely coupled and don't rely on the SimpleTcpCluster for its data replication. +

    +

    Channel:
    + The Channel and its sub components are all part of the IO layer + for the cluster group, and is a module in it's own that we have nick named "Tribes" +
    + Any configuring and tuning of the network layer, the messaging and the membership logic + will be done in the channel and its nested components. + You can always find out more about Apache Tribes +

    +

    Valve:
    + The Tomcat Cluster implementation uses Tomcat Valves to + track when requests enter and exit the servlet container. It uses these valves to be able to make + intelligent decisions on when to replicate data, which is always at the end of a request. +

    +

    Deployer:
    + The Deployer component is the Tomcat Farm Deployer. It allows you to deploy and undeploy applications + cluster wide. +

    +

    ClusterListener:
    + ClusterListener's are used to track messages sent and received using the SimpleTcpCluster. + If you wish to track messages, you can add a listener here, or you can add a valve to the channel object. +

    +
    Deprecated configuration options
    +

    + Deprecated settings: In the previous version of Tomcat you were able to control session + manager settings using manager.<property>=value. + This has been discontinued, as the way it was written interfers with + the ability to support multiple different manager classes under one cluster implementation, + as the same properties might have the different effect on different managers. +

    +
    Attributes
    +
    SimpleTcpCluster Attributes
    +
    AttributeDescription
    className +

    The main cluster class, currently only one is available, + org.apache.catalina.ha.tcp.SimpleTcpCluster +

    +
    channelSendOptions +

    The Tribes channel send options, default is 11.
    + This option is used to set the flag that all messages sent through the + SimpleTcpCluster uses. The flag decides how the messages are sent, and is a simple logical OR.
    + +

    +        int options= Channel.SEND_OPTIONS_ASYNCHRONOUS | 
    +                     Channel.SEND_OPTIONS_SYNCHRONIZED_ACK | 
    +                     Channel.SEND_OPTIONS_USE_ACK;
    +      
    + Some of the values are:
    + Channel.SEND_OPTIONS_SYNCHRONIZED_ACK = 0x0004
    + Channel.SEND_OPTIONS_ASYNCHRONOUS = 0x0008
    + Channel.SEND_OPTIONS_USE_ACK = 0x0002
    + So to use ACK and ASYNC messaging, the flag would be 10 (8+2) or 0x000B
    +

    +
    heartbeatBackgroundEnabled +

    Enable this flag don't forget to disable the channel heartbeat thread. +

    +
    doClusterLog +

    Deprecated since 6.0.0

    +

    Possible values are true or false
    + Value is inherited from Tomcat 5.5 and has no official meaning. + to configure logging, use the standard tomcat logging configuration. +

    +
    clusterLogName +

    Deprecated since 6.0.0

    +

    + Value is inherited from Tomcat 5.5 and has no official meaning. + to configure logging, use the standard tomcat logging configuration. +

    +
    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/context.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/context.html new file mode 100644 index 0000000..0536270 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/context.html @@ -0,0 +1,666 @@ +Apache Tomcat Configuration Reference - The Context Container
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Context Container

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The Context element represents a web + application, which is run within a particular virtual host. + Each web application is based on a Web Application Archive + (WAR) file, or a corresponding directory containing the corresponding + unpacked contents, as described in the Servlet Specification (version + 2.2 or later). For more information about web application archives, + you can download the + Servlet + Specification, and review the Tomcat + Application Developer's Guide.

    + +

    The web application used to process each HTTP request is selected + by Catalina based on matching the longest possible prefix of the + Request URI against the context path of each defined Context. + Once selected, that Context will select an appropriate servlet to + process the incoming request, according to the servlet mappings defined + in the web application deployment descriptor file (which MUST + be located at /WEB-INF/web.xml within the web app's + directory hierarchy).

    + +

    You may define as many Context elements as you + wish. Each such Context MUST have a unique context path. In + addition, a Context must be present with a context path equal to + a zero-length string. This Context becomes the default + web application for this virtual host, and is used to process all + requests that do not match any other Context's context path.

    + +

    For Tomcat 6, unlike Tomcat 4.x, it is NOT recommended to place + <Context> elements directly in the server.xml file. This + is because it makes modifing the Context configuration + more invasive since the main conf/server.xml file cannot be + reloaded without restarting Tomcat.

    + +

    Context elements may be explicitly defined: +

      +
    • in the $CATALINA_HOME/conf/context.xml file: + the Context element information will be loaded by all webapps
    • +
    • in the + $CATALINA_HOME/conf/[enginename]/[hostname]/context.xml.default + file: the Context element information will be loaded by all webapps of that + host
    • +
    • in individual files (with a ".xml" extension) in the + $CATALINA_HOME/conf/[enginename]/[hostname]/ directory. + The name of the file (less the .xml) extension will be used as the + context path. Multi-level context paths may be defined using #, e.g. + context#path.xml. The default web application may be defined + by using a file called ROOT.xml.
    • +
    • if the previous file was not found for this application, in an individual + file at /META-INF/context.xml inside the application files
    • +
    • inside a Host element in the main + conf/server.xml
    • +
    +

    + +

    In addition to explicitly specified Context elements, there are + several techniques by which Context elements can be created automatically + for you. See + Automatic Application Deployment and + User Web Applications + for more information.

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 5, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 5 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Context + support the following attributes:

    + +
    AttributeDescription
    backgroundProcessorDelay +

    This value represents the delay in seconds between the + invocation of the backgroundProcess method on this context and + its child containers, including all wrappers. + Child containers will not be invoked if their delay value is not + negative (which would mean they are using their own processing + thread). Setting this to a positive value will cause + a thread to be spawn. After waiting the specified amount of time, + the thread will invoke the backgroundProcess method on this host + and all its child containers. A context will use background + processing to perform session expiration and class monitoring for + reloading. If not specified, the default value for this attribute is + -1, which means the context will rely on the background processing + thread of its parent host.

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Context interface. + If not specified, the standard value (defined below) will be used.

    +
    cookies +

    Set to true if you want cookies to be used for + session identifier communication if supported by the client (this + is the default). Set to false if you want to disable + the use of cookies for session identifier communication, and rely + only on URL rewriting by the application.

    +
    crossContext +

    Set to true if you want calls within this application + to ServletContext.getContext() to successfully return a + request dispatcher for other web applications running on this virtual + host. Set to false (the default) in security + conscious environments, to make getContext() always + return null.

    +
    docBase +

    The Document Base (also known as the Context + Root) directory for this web application, or the pathname + to the web application archive file (if this web application is + being executed directly from the WAR file). You may specify + an absolute pathname for this directory or WAR file, or a pathname + that is relative to the appBase directory of the + owning Host.

    +
    override +

    Set to true to have explicit settings in this + Context element override any corresponding settings in the + DefaultContext element associated + with our owning Host. By default, settings + in the DefaultContext element will be used.

    +

    If a symbolic link is used for docBase then changes to the + symbolic link will only be effective after a Tomcat restart or + by undeploying and redeploying the conext. A context reload is not + sufficient.

    +
    privileged +

    Set to true to allow this context to use container + servlets, like the manager servlet.

    +
    path +

    The context path of this web application, which is + matched against the beginning of each request URI to select the + appropriate web application for processing. All of the context paths + within a particular Host must be unique. + If you specify a context path of an empty string (""), you are + defining the default web application for this Host, which + will process all requests not assigned to other Contexts. The value of + this field must not be set except when statically defining a Context in + server.xml, as it will be inferred from the filenames used for either the + .xml context file or the docBase.

    +
    reloadable +

    Set to true if you want Catalina to monitor classes in + /WEB-INF/classes/ and /WEB-INF/lib for + changes, and automatically reload the web application if a change + is detected. This feature is very useful during application + development, but it requires significant runtime overhead and is + not recommended for use on deployed production applications. That's + why the default setting for this attribute is false. You + can use the Manager web + application, however, to trigger reloads of deployed applications + on demand.

    +
    wrapperClass +

    Java class name of the org.apache.catalina.Wrapper + implementation class that will be used for servlets managed by this + Context. If not specified, a standard default value will be used.

    +
    + +
    + + +
    Standard Implementation
    + +

    The standard implementation of Context is + org.apache.catalina.core.StandardContext. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    allowLinking +

    If the value of this flag is true, symlinks will be + allowed inside the web application, pointing to resources outside the + web application base path. If not specified, the default value + of the flag is false.

    +

    NOTE: This flag MUST NOT be set to true on the Windows platform + (or any other OS which does not have a case sensitive filesystem), + as it will disable case sensitivity checks, allowing JSP source code + disclosure, among other security problems.

    +
    antiJARLocking +

    If true, the Tomcat classloader will take extra measures to avoid + JAR file locking when resources are accessed inside JARs through URLs. + This will impact startup time of applications, but could prove to be useful + on platforms or configurations where file locking can occur. + If not specified, the default value is false.

    +
    antiResourceLocking +

    If true, Tomcat will prevent any file locking. + This will significantly impact startup time of applications, + but allows full webapp hot deploy and undeploy on platforms + or configurations where file locking can occur. + If not specified, the default value is false.

    + +

    Please note that setting this to true has some side effects, + including the disabling of JSP reloading in a running server: see + Bugzilla 37668. +

    + +

    + Please note that setting this flag to true in applications that are + outside the appBase for the Host (the webapps directory + by default) will cause the application to be + deleted on Tomcat shutdown. You probably don't want to + do this, so think twice before setting antiResourceLocking=true on a webapp + that's outside the appBase for its Host. +

    +
    cacheMaxSize +

    Maximum size of the static resource cache in kilobytes. + If not specified, the default value is 10240 + (10 megabytes).

    +
    cacheTTL +

    Amount of time in milliseconds between cache entries revalidation. + If not specified, the default value is 5000 + (5 seconds).

    +
    cachingAllowed +

    If the value of this flag is true, the cache for static + resources will be used. If not specified, the default value + of the flag is true.

    +
    caseSensitive +

    If the value of this flag is true, all case sensitivity + checks will be disabled. If not + specified, the default value of the flag is true.

    +

    NOTE: This flag MUST NOT be set to false on the Windows platform + (or any other OS which does not have a case sensitive filesystem), + as it will disable case sensitivity checks, allowing JSP source code + disclosure, among other security problems.

    +
    processTlds +

    Whether the context should process TLDs on startup. The default + is true. The false setting is intended for special cases + that know in advance TLDs are not part of the webapp.

    +
    swallowOutput +

    If the value of this flag is true, the bytes output to + System.out and System.err by the web application will be redirected to + the web application logger. If not specified, the default value + of the flag is false.

    +
    tldNamespaceAware +

    If the value of this flag is true, the TLD files + XML validation will be namespace-aware. If you turn this flag on, + you should probably also turn tldValidation on. The + default value for this flag is false, and setting it + to true will incur a performance penalty. +

    +
    tldValidation +

    If the value of this flag is true, the TLD files + will be XML validated on context startup. The default value for + this flag is false, and setting it to true will incur + a performance penalty.

    +
    unloadDelay +

    Amount of ms that the container will wait for servlets to unload. + If not specified, the default value of the flag is 2000 + ms.

    +
    unpackWAR +

    If true, Tomcat will unpack all compressed web applications before + running them. + If not specified, the default value is true.

    +
    useNaming +

    Set to true (the default) to have Catalina enable a + JNDI InitialContext for this web application that is + compatible with Java2 Enterprise Edition (J2EE) platform + conventions.

    +
    workDir +

    Pathname to a scratch directory to be provided by this Context + for temporary read-write use by servlets within the associated web + application. This directory will be made visible to servlets in the + web application by a servlet context attribute (of type + java.io.File) named + javax.servlet.context.tempdir as described in the + Servlet Specification. If not specified, a suitable directory + underneath $CATALINA_HOME/work will be provided.

    +
    + +
    + + +
    Nested Components
    + +

    You can nest at most one instance of the following utility components + by nesting a corresponding element inside your Context + element:

    +
      +
    • Loader - + Configure the web application class loader that will be used to load + servlet and bean classes for this web application. Normally, the + default configuration of the class loader will be sufficient.
    • +
    • Manager - + Configure the session manager that will be used to create, destroy, + and persist HTTP sessions for this web application. Normally, the + default configuration of the session manager will be sufficient.
    • +
    • Realm - + Configure a realm that will allow its + database of users, and their associated roles, to be utilized solely + for this particular web application. If not specified, this web + application will utilize the Realm associated with the owning + Host or Engine.
    • +
    • Resources - + Configure the resource manager that will be used to access the static + resources associated with this web application. Normally, the + default configuration of the resource manager will be sufficient.
    • +
    • WatchedResource - The auto deployer will monitor the + specified static resource of the web application for updates, and will + reload the web application if is is updated. The content of this element + must be a string.
    • +
    + +
    Special Features
    + + +
    Logging
    + +

    A context is associated with the + org.apache.catalina.core.ContainerBase.[enginename].[hostname].[path] + log category. Note that the brackets are actually part of the name, don't omit them.

    + +
    + + +
    Access Logs
    + +

    When you run a web server, one of the output files normally generated + is an access log, which generates one line of information for + each request processed by the server, in a standard format. Catalina + includes an optional Valve implementation that + can create access logs in the same standard format created by web servers, + or in any number of custom formats.

    + +

    You can ask Catalina to create an access log for all requests + processed by an Engine, + Host, or Context + by nesting a Valve element like this:

    + +
    +<Context path="/examples" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.AccessLogValve"
    +         prefix="localhost_access_log." suffix=".txt"
    +         pattern="common"/>
    +  ...
    +</Context>
    +
    + +

    See Access Log Valve + for more information on the configuration attributes that are + supported.

    + +
    + + +
    Automatic Context Configuration
    + +

    If you use the standard Context implementation, + the following configuration steps occur automtically when Catalina + is started, or whenever this web application is reloaded. No special + configuration is required to enable this feature.

    + +
      +
    • If you have not declared your own Loader + element, a standard web application class loader will be configured. +
    • +
    • If you have not declared your own Manager + element, a standard session manager will be configured.
    • +
    • If you have not declared your own Resources + element, a standard resources manager will be configured.
    • +
    • The web application properties listed in conf/web.xml + will be processed as defaults for this web application. This is used + to establish default mappings (such as mapping the *.jsp + extension to the corresponding JSP servlet), and other standard + features that apply to all web applications.
    • +
    • The web application properties listed in the + /WEB-INF/web.xml resource for this web application + will be processed (if this resource exists).
    • +
    • If your web application has specified security constraints that might + require user authentication, an appropriate Authenticator that + implements the login method you have selected will be configured.
    • +
    + +
    + + +
    Context Parameters
    + +

    You can configure named values that will be made visible to the + web application as servlet context initialization parameters by nesting + <Parameter> elements inside this element. For + example, you can create an initialization parameter like this:

    +
    +<Context ...>
    +  ...
    +  <Parameter name="companyName" value="My Company, Incorporated"
    +         override="false"/>
    +  ...
    +</Context>
    +
    + +

    This is equivalent to the inclusion of the following element in the + web application deployment descriptor (/WEB-INF/web.xml): +

    +
    +<context-param>
    +  <param-name>companyName</param-name>
    +  <param-value>My Company, Incorporated</param-value>
    +</context-param>
    +
    +

    but does not require modification of the deployment descriptor + to customize this value.

    + +

    The valid attributes for a <Parameter> element + are as follows:

    + +
    AttributeDescription
    description +

    Optional, human-readable description of this context + initialization parameter.

    +
    name +

    The name of the context initialization parameter to be created.

    +
    override +

    Set this to false if you do not want + a <context-param> for the same parameter name, + found in the web application deployment descriptor, to override the + value specified here. By default, overrides are allowed.

    +
    value +

    The parameter value that will be presented to the application + when requested by calling + ServletContext.getInitParameter().

    +
    + +
    + + +
    Environment Entries
    + +

    You can configure named values that will be made visible to the + web application as environment entry resources, by nesting + <Environment> entries inside this element. For + example, you can create an environment entry like this:

    +
    +<Context ...>
    +  ...
    +  <Environment name="maxExemptions" value="10"
    +         type="java.lang.Integer" override="false"/>
    +  ...
    +</Context>
    +
    + +

    This is equivalent to the inclusion of the following element in the + web application deployment descriptor (/WEB-INF/web.xml): +

    +
    +<env-entry>
    +  <env-entry-name>maxExemptions</param-name>
    +  <env-entry-value>10</env-entry-value>
    +  <env-entry-type>java.lang.Integer</env-entry-type>
    +</env-entry>
    +
    +

    but does not require modification of the deployment descriptor + to customize this value.

    + +

    The valid attributes for an <Environment> element + are as follows:

    + +
    AttributeDescription
    description +

    Optional, human-readable description of this environment entry.

    +
    name +

    The name of the environment entry to be created, relative to the + java:comp/env context.

    +
    override +

    Set this to false if you do not want + an <env-entry> for the same environment entry name, + found in the web application deployment descriptor, to override the + value specified here. By default, overrides are allowed.

    +
    type +

    The fully qualified Java class name expected by the web application + for this environment entry. Must be one of the legal values for + <env-entry-type> in the web application deployment + descriptor: java.lang.Boolean, + java.lang.Byte, java.lang.Character, + java.lang.Double, java.lang.Float, + java.lang.Integer, java.lang.Long, + java.lang.Short, or java.lang.String.

    +
    value +

    The parameter value that will be presented to the application + when requested from the JNDI context. This value must be convertable + to the Java type defined by the type attribute.

    +
    + +
    + + +
    Lifecycle Listeners
    + +

    If you have implemented a Java object that needs to know when this + Context is started or stopped, you can declare it by + nesting a Listener element inside this element. The + class name you specify must implement the + org.apache.catalina.LifecycleListener interface, and + it will be notified about the occurrence of the coresponding + lifecycle events. Configuration of such a listener looks like this:

    + +
    +<Context path="/examples" ...>
    +  ...
    +  <Listener className="com.mycompany.mypackage.MyListener" ... >
    +  ...
    +</Context>
    +
    + +

    Note that a Listener can have any number of additional properties + that may be configured from this element. Attribute names are matched + to corresponding JavaBean property names using the standard property + method naming patterns.

    + +
    + + +
    Request Filters
    + +

    You can ask Catalina to check the IP address, or host name, on every + incoming request directed to the surrounding + Engine, Host, or + Context element. The remote address or name + will be checked against a configured list of "accept" and/or "deny" + filters, which are defined using the Regular Expression syntax supported + by the Jakarta Regexp + regular expression library. Requests that come from locations that are + not accepted will be rejected with an HTTP "Forbidden" error. + Example filter declarations:

    + +
    +<Context path="/examples" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.RemoteHostValve"
    +         allow="*.mycompany.com,www.yourcompany.com"/>
    +  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    +         deny="192.168.1.*"/>
    +  ...
    +</Context>
    +
    + +

    See Remote Address Filter + and Remote Host Filter for + more information about the configuration options that are supported.

    + +
    + + +
    Resource Definitions
    + +

    You can declare the characteristics of the resource + to be returned for JNDI lookups of <resource-ref> and + <resource-env-ref> elements in the web application + deployment descriptor. You MUST also define + the needed resource parameters as attributes of the Resource + element, to configure the object factory to be used (if not known to Tomcat + already), and the properties used to configure that object factory.

    + +

    For example, you can create a resource definition like this:

    +
    +<Context ...>
    +  ...
    +  <Resource name="jdbc/EmployeeDB" auth="Container"
    +            type="javax.sql.DataSource"
    +     description="Employees Database for HR Applications"/>
    +  ...
    +</Context>
    +
    + +

    This is equivalent to the inclusion of the following element in the + web application deployment descriptor (/WEB-INF/web.xml):

    +
    +<resource-ref>
    +  <description>Employees Database for HR Applications</description>
    +  <res-ref-name>jdbc/EmployeeDB</res-ref-name>
    +  <res-ref-type>javax.sql.DataSource</res-ref-type>
    +  <res-auth>Container</res-auth>
    +</resource-ref>
    +
    + +

    but does not require modification of the deployment + descriptor to customize this value.

    + +

    The valid attributes for a <Resource> element + are as follows:

    + +
    AttributeDescription
    auth +

    Specify whether the web Application code signs on to the + corresponding resource manager programatically, or whether the + Container will sign on to the resource manager on behalf of the + application. The value of this attribute must be + Application or Container. This + attribute is required if the web application + will use a <resource-ref> element in the web + application deployment descriptor, but is optional if the + application uses a <resource-env-ref> instead.

    +
    description +

    Optional, human-readable description of this resource.

    +
    name +

    The name of the resource to be created, relative to the + java:comp/env context.

    +
    scope +

    Specify whether connections obtained through this resource + manager can be shared. The value of this attribute must be + Shareable or Unshareable. By default, + connections are assumed to be shareable.

    +
    type +

    The fully qualified Java class name expected by the web + application when it performs a lookup for this resource.

    +
    + + +
    + + +
    Resource Links
    + +

    This element is used to create a link to a global JNDI resource. Doing + a JNDI lookup on the link name will then return the linked global + resource.

    + +

    For example, you can create a resource link like this:

    +
    +<Context ...>
    +  ...
    +  <ResourceLink name="linkToGlobalResource"
    +            global="simpleValue"
    +            type="java.lang.Integer"
    +  ...
    +</Context>
    +
    + +

    The valid attributes for a <ResourceLink> element + are as follows:

    + +
    AttributeDescription
    global +

    The name of the linked global resource in the + global JNDI context.

    +
    name +

    The name of the resource link to be created, relative to the + java:comp/env context.

    +
    type +

    The fully qualified Java class name expected by the web + application when it performs a lookup for this resource link.

    +
    + +
    + +
    Transaction
    + +

    You can declare the characteristics of the UserTransaction + to be returned for JNDI lookup for java:comp/UserTransaction. + You MUST define an object factory class to instantiate + this object as well as the needed resource parameters as attributes of the + Transaction + element, and the properties used to configure that object factory.

    + +

    The valid attributes for the <Transaction> element + are as follows:

    + +
    AttributeDescription
    factory +

    The class name for the JNDI object factory.

    +
    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/engine.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/engine.html new file mode 100644 index 0000000..1dd05ee --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/engine.html @@ -0,0 +1,203 @@ +Apache Tomcat Configuration Reference - The Engine Container
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Engine Container

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The Engine element represents the entire request + processing machinery associated with a particular Catalina + Service. It receives and processes + all requests from one or more Connectors, + and returns the completed response to the Connector for ultimate + transmission back to the client.

    + +

    Exactly one Engine element MUST be nested inside + a Service element, following all of the + corresponding Connector elements associated with this Service.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Engine + support the following attributes:

    + +
    AttributeDescription
    backgroundProcessorDelay +

    This value represents the delay in seconds between the + invocation of the backgroundProcess method on this engine and + its child containers, including all hosts and contexts. + Child containers will not be invoked if their delay value is not + negative (which would mean they are using their own processing + thread). Setting this to a positive value will cause + a thread to be spawn. After waiting the specified amount of time, + the thread will invoke the backgroundProcess method on this engine + and all its child containers. If not specified, the default value for + this attribute is 10, which represent a 10 seconds delay.

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Engine interface. + If not specified, the standard value (defined below) will be used.

    +
    defaultHost +

    The default host name, which identifies the + Host that will process requests directed + to host names on this server, but which are not configured in + this configuration file. This name MUST match the name + attributes of one of the Host elements + nested immediately inside.

    +
    jvmRoute +

    Identifier which must be used in load balancing scenarios to enable + session affinity. The identifier, which must be unique across all + Tomcat 5 servers which participate in the cluster, will be appended to + the generated session identifier, therefore allowing the front end + proxy to always forward a particular session to the same Tomcat 5 + instance.

    +
    name +

    Logical name of this Engine, used in log and error messages. When + using muliple Service elements in the same + Server, each Engine MUST be assigned a unique + name.

    +
    + +
    + + +
    Standard Implementation
    + +

    The standard implementation of Engine is + org.apache.catalina.core.StandardEngine. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    + +
    + + +
    Nested Components
    + +

    You can nest one or more Host elements inside + this Engine element, each representing a different virtual + host associated with this server. At least one Host + is required, and one of the nested Hosts MUST + have a name that matches the name specified for the + defaultHost attribute, listed above.

    + +

    You can optional nest a DefaultContext + element inside this Engine element, to define the default + characteristics of web applications that are automatically deployed.

    + +

    You can nest at most one instance of the following utility components + by nesting a corresponding element inside your Engine + element:

    +
      +
    • Realm - + Configure a realm that will allow its + database of users, and their associated roles, to be shared across all + Hosts and Contexts + nested inside this Engine, unless overridden by a + Realm configuration at a lower level.
    • +
    + +
    Special Features
    + + +
    Logging
    + +

    An engine is associated with the + org.apache.catalina.core.ContainerBase.[enginename] + log category. Note that the brackets are actually part of the name, + don't omit them.

    + +
    + + +
    Access Logs
    + +

    When you run a web server, one of the output files normally generated + is an access log, which generates one line of information for + each request processed by the server, in a standard format. Catalina + includes an optional Valve implementation that + can create access logs in the same standard format created by web servers, + or in any number of custom formats.

    + +

    You can ask Catalina to create an access log for all requests + processed by an Engine, + Host, or Context + by nesting a Valve element like this:

    + +
    +<Engine name="Standalone" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.AccessLogValve"
    +         prefix="catalina_access_log." suffix=".txt"
    +         pattern="common"/>
    +  ...
    +</Engine>
    +
    + +

    See Access Log Valve + for more information on the configuration attributes that are + supported.

    + +
    + + +
    Lifecycle Listeners
    + +

    If you have implemented a Java object that needs to know when this + Engine is started or stopped, you can declare it by + nesting a Listener element inside this element. The + class name you specify must implement the + org.apache.catalina.LifecycleListener interface, and + it will be notified about the occurrence of the coresponding + lifecycle events. Configuration of such a listener looks like this:

    + +
    +<Engine name="Standalone" ...>
    +  ...
    +  <Listener className="com.mycompany.mypackage.MyListener" ... >
    +  ...
    +</Engine>
    +
    + +

    Note that a Listener can have any number of additional properties + that may be configured from this element. Attribute names are matched + to corresponding JavaBean property names using the standard property + method naming patterns.

    + +
    + + +
    Request Filters
    + +

    You can ask Catalina to check the IP address, or host name, on every + incoming request directed to the surrounding + Engine, Host, or + Context element. The remote address or name + will be checked against a configured list of "accept" and/or "deny" + filters, which are defined using the Regular Expression syntax supported + by the Jakarta Regexp + regular expression library. Requests that come from locations that are + not accepted will be rejected with an HTTP "Forbidden" error. + Example filter declarations:

    + +
    +<Engine name="Standalone" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.RemoteHostValve"
    +         allow="*.mycompany.com,www.yourcompany.com"/>
    +  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    +         deny="192.168.1.*"/>
    +  ...
    +</Engine>
    +
    + +

    See Remote Address Filter + and Remote Host Filter for + more information about the configuration options that are supported.

    + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/executor.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/executor.html new file mode 100644 index 0000000..b81f2fa --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/executor.html @@ -0,0 +1,62 @@ +Apache Tomcat Configuration Reference - The Executor (thread pool)
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Executor (thread pool)

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The Executor represents a thread pool that can be shared + between components in Tomcat. Historically there has been a thread pool per + connector created but this allows you to share a thread pool, between (primarly) connector + but also other components when those get configured to support executors

    + + +

    The executor has to implement the org.apache.catalina.Executor interface.

    + +

    The executor is a nested element to the Service element. + And in order for it to be picked up by the connectors, the Executor element has to appear + prior to the Connector element in server.xml

    +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Executor + support the following attributes:

    + +
    AttributeDescription
    className +

    The class of the implementation. The implementation has to implement the + org.apache.catalina.Executor interface. + This interface ensures that the object can be referenced through its name attribute + and that implements Lifecycle, so that it can be started and stopped with the container. + The default value for the className is org.apache.catalina.core.StandardThreadExecutor

    +
    name +

    The name used to reference this pool in other places in server.xml. + The name is required and must be unique.

    +
    + +
    + +
    Standard Implementation
    + +

    + The default implementation supports the following attributes:

    + +
    AttributeDescription
    threadPriority +

    (int) The thread priority for threads in the executor, the default is Thread.NORM_PRIORITY

    +
    daemon +

    (boolean) Whether the threads should be daemon threads or not, the default is true

    +
    namePrefix +

    (String) The name prefix for each thread created by the executor. + The thread name for an individual thread will be namePrefix+threadNumber

    +
    maxThreads +

    (int) The max number of active threads in this pool, default is 200

    +
    minSpareThreads +

    (int) The minimum number of threads always kept alive, default is 25

    +
    maxIdleTime +

    (int) The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less + or equal to minSpareThreads. Default value is 60000(1 minute)

    +
    + + +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/globalresources.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/globalresources.html new file mode 100644 index 0000000..c941211 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/globalresources.html @@ -0,0 +1,199 @@ +Apache Tomcat Configuration Reference - The GlobalNamingResources Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The GlobalNamingResources Component

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The GlobalNamingResources element defines the global + JNDI resources for the Server.

    + +

    These resources are listed in the server's global JNDI resource context. + This context is distinct from the per-web-application JNDI contexts + described in + the JNDI Resources HOW-TO. + The resources defined in this element are not visible in + the per-web-application contexts unless you explicitly link them with + <ResourceLink> elements. +

    + +
    Attributes
    + +
    Nested Components
    + +
    Special Features
    + + +
    Environment Entries
    + +

    You can configure named values that will be made visible to all + web applications as environment entry resources by nesting + <Environment> entries inside this element. For + example, you can create an environment entry like this:

    +
    +<GlobalNamingResources ...>
    +  ...
    +  <Environment name="maxExemptions" value="10"
    +         type="java.lang.Integer" override="false"/>
    +  ...
    +</GlobalNamingResources>
    +
    + +

    This is equivalent to the inclusion of the following element in the + web application deployment descriptor (/WEB-INF/web.xml): +

    +
    +<env-entry>
    +  <env-entry-name>maxExemptions</env-entry-name>
    +  <env-entry-value>10</env-entry-value>
    +  <env-entry-type>java.lang.Integer</env-entry-type>
    +</env-entry>
    +
    +

    but does not require modification of the deployment descriptor + to customize this value.

    + +

    The valid attributes for an <Environment> element + are as follows:

    + +
    AttributeDescription
    description +

    Optional, human-readable description of this environment entry.

    +
    name +

    The name of the environment entry to be created, relative to the + java:comp/env context.

    +
    override +

    Set this to false if you do not want + an <env-entry> for the same environment entry name, + found in the web application deployment descriptor, to override the + value specified here. By default, overrides are allowed.

    +
    type +

    The fully qualified Java class name expected by the web application + for this environment entry. Must be one of the legal values for + <env-entry-type> in the web application deployment + descriptor: java.lang.Boolean, + java.lang.Byte, java.lang.Character, + java.lang.Double, java.lang.Float, + java.lang.Integer, java.lang.Long, + java.lang.Short, or java.lang.String.

    +
    value +

    The parameter value that will be presented to the application + when requested from the JNDI context. This value must be convertable + to the Java type defined by the type attribute.

    +
    + +
    + + +
    Resource Definitions
    + +

    You can declare the characteristics of resources + to be returned for JNDI lookups of <resource-ref> and + <resource-env-ref> elements in the web application + deployment descriptor by defining them in this element and then linking + them with <ResourceLink> + elements + in the <Context> element. + + You MUST also define any other needed parameters using + attributes on the Resource element, to configure + the object factory to be used (if not known to Tomcat already), and + the properties used to configure that object factory.

    + +

    For example, you can create a resource definition like this:

    +
    +<GlobalNamingResources ...>
    +  ...
    +  <Resource name="jdbc/EmployeeDB" auth="Container"
    +            type="javax.sql.DataSource"
    +     description="Employees Database for HR Applications"/>
    +  ...
    +</GlobalNamingResources>
    +
    + +

    This is equivalent to the inclusion of the following element in the + web application deployment descriptor (/WEB-INF/web.xml):

    +
    +<resource-ref>
    +  <description>Employees Database for HR Applications</description>
    +  <res-ref-name>jdbc/EmployeeDB</res-ref-name>
    +  <res-ref-type>javax.sql.DataSource</res-ref-type>
    +  <res-auth>Container</res-auth>
    +</resource-ref>
    +
    + +

    but does not require modification of the deployment + descriptor to customize this value.

    + +

    The valid attriutes for a <Resource> element + are as follows:

    + +
    AttributeDescription
    auth +

    Specify whether the web Application code signs on to the + corresponding resource manager programatically, or whether the + Container will sign on to the resource manager on behalf of the + application. The value of this attribute must be + Application or Container. This + attribute is required if the web application + will use a <resource-ref> element in the web + application deployment descriptor, but is optional if the + application uses a <resource-env-ref> instead.

    +
    description +

    Optional, human-readable description of this resource.

    +
    name +

    The name of the resource to be created, relative to the + java:comp/env context.

    +
    scope +

    Specify whether connections obtained through this resource + manager can be shared. The value of this attribute must be + Shareable or Unshareable. By default, + connections are assumed to be shareable.

    +
    type +

    The fully qualified Java class name expected by the web + application when it performs a lookup for this resource.

    +
    + + +
    + +
    Resource Links
    +

    Use <ResourceLink> + elements to link resources from the global context into + per-web-application contexts. Here is an example of making a custom + factory available to all applications in the server, based on the example + definition in the + + JNDI Resource HOW-TO: +

    + +
    +      
    +        <DefaultContext>
    +          <ResourceLink 
    +            name="bean/MyBeanFactory"
    +            global="bean/MyBeanFactory"
    +            type="com.mycompany.MyBean"
    +          />
    +        </DefaultContext>
    +      
    +    
    + +
    + +
    Transaction
    + +

    You can declare the characteristics of the UserTransaction + to be returned for JNDI lookup for java:comp/UserTransaction. + You MUST define an object factory class to instantiate + this object as well as the needed resource parameters as attributes of the + Transaction + element, and the properties used to configure that object factory.

    + +

    The valid attributes for the <Transaction> element + are as follows:

    + +
    AttributeDescription
    factory +

    The class name for the JNDI object factory.

    +
    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/host.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/host.html new file mode 100644 index 0000000..34b5675 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/host.html @@ -0,0 +1,483 @@ +Apache Tomcat Configuration Reference - The Host Container
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Host Container

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The Host element represents a virtual host, + which is an association of a network name for a server (such as + "www.mycompany.com" with the particular server on which Catalina is + running. In order to be effective, this name must be registered in the + Domain Name Service (DNS) server that manages the Internet + domain you belong to - contact your Network Administrator for more + information.

    + +

    In many cases, System Administrators wish to associate more than + one network name (such as www.mycompany.com and + company.com) with the same virtual host and applications. + This can be accomplished using the Host + Name Aliases feature discussed below.

    + +

    One or more Host elements are nested inside an + Engine element. Inside the Host element, you + can nest Context elements for the web + applications associated with this virtual host. Exactly one of the Hosts + associated with each Engine MUST have a name matching the + defaultHost attribute of that Engine.

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Host + support the following attributes:

    + +
    AttributeDescription
    appBase +

    The Application Base directory for this virtual host. + This is the pathname of a directory that may contain web applications + to be deployed on this virtual host. You may specify an + absolute pathname for this directory, or a pathname that is relative + to the $CATALINA_BASE directory. See + Automatic Application + Deployment for more information on automatic recognition and + deployment of web applications to be deployed automatically.

    +
    autoDeploy +

    This flag value indicates if new web applications, dropped in to + the appBase directory while Tomcat is running, should + be automatically deployed. The flag's value defaults to true. See + Automatic Application + Deployment for more information.

    +
    backgroundProcessorDelay +

    This value represents the delay in seconds between the + invocation of the backgroundProcess method on this host and + its child containers, including all contexts. + Child containers will not be invoked if their delay value is not + negative (which would mean they are using their own processing + thread). Setting this to a positive value will cause + a thread to be spawn. After waiting the specified amount of time, + the thread will invoke the backgroundProcess method on this host + and all its child containers. A host will use background processing to + perform live web application deployment related tasks. If not + specified, the default value for this attribute is -1, which means + the host will rely on the background processing thread of its parent + engine.

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Host interface. + If not specified, the standard value (defined below) will be used.

    +
    deployOnStartup +

    This flag value indicates if web applications from this host should + be automatically deployed by the host configurator. + The flag's value defaults to true. See + Automatic Application + Deployment for more information.

    +
    name +

    Network name of this virtual host, as registered in your + Domain Name Service server. One of the Hosts nested within + an Engine MUST have a name that matches the + defaultHost setting for that Engine. See + Host Name Aliases for information + on how to assign more than one network name to the same + virtual host.

    +
    + +
    + + +
    Standard Implementation
    + +

    The standard implementation of Host is + org.apache.catalina.core.StandardHost. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    deployXML +

    Set to false if you want to disable parsing the context.xml + file embedded inside the application (located at /META-INF/context.xml). + Security consious environments should set this to false to prevent + applications from interacting with the container's configuration. The + administrator will then be responsible for providing an external context + configuration file, and put it in + $CATALINA_HOME/conf/[enginename]/[hostname]/. + The flag's value defaults to true.

    +
    errorReportValveClass +

    Java class name of the error reporting valve which will be used + by this Host. The responsability of this valve is to output error + reports. Setting this property allows to customize the look of the + error pages which will be generated by Tomcat. This class must + implement the + org.apache.catalina.Valve interface. If none is specified, + the value org.apache.catalina.valves.ErrorReportValve + will be used by default.

    +
    unpackWARs +

    Set to true if you want web applications that are + placed in the appBase directory as web application + archive (WAR) files to be unpacked into a corresponding disk directory + structure, false to run such web applications directly + from a WAR file. See + Automatic Application + Deployment for more information.

    +
    workDir +

    Pathname to a scratch directory to be used by applications for + this Host. Each application will have its own sub directory with + temporary read-write use. Configuring a Context workDir will override + use of the Host workDir configuration. This directory will be made + visible to servlets in the web application by a servlet context + attribute (of type java.io.File) named + javax.servlet.context.tempdir as described in the + Servlet Specification. If not specified, a suitable directory + underneath $CATALINA_HOME/work will be provided.

    +
    + +
    + + +
    Nested Components
    + +

    You can nest one or more Context elements + inside this Host element, each representing a different web + application associated with this virtual host.

    + +

    You can nest at most one instance of the following utility components + by nesting a corresponding element inside your Host + element:

    +
      +
    • Realm - + Configure a realm that will allow its + database of users, and their associated roles, to be shared across all + Contexts nested inside this Host (unless + overridden by a Realm configuration + at a lower level).
    • +
    + +
    Special Features
    + + +
    Logging
    + +

    A host is associated with the + org.apache.catalina.core.ContainerBase.[enginename].[hostname] + log category. Note that the brackets are actuall part of the name, + don't omit them.

    + +
    + + +
    Access Logs
    + +

    When you run a web server, one of the output files normally generated + is an access log, which generates one line of information for + each request processed by the server, in a standard format. Catalina + includes an optional Valve implementation that + can create access logs in the same standard format created by web servers, + or in any number of custom formats.

    + +

    You can ask Catalina to create an access log for all requests + processed by an Engine, + Host, or Context + by nesting a Valve element like this:

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.AccessLogValve"
    +         prefix="localhost_access_log." suffix=".txt"
    +         pattern="common"/>
    +  ...
    +</Host>
    +
    + +

    See Access Log Valve + for more information on the configuration attributes that are + supported.

    + +
    + + +
    Automatic Application Deployment
    + +

    If you are using the standard Host implementation, + the following actions take place automatically when Catalina is first + started, if the deployOnStartup property is set to + true (which is the default value):

    +
      +
    • Any XML file in the + $CATALINA_HOME/conf/[engine_name]/[host_name] directory is + assumed to contain a + Context element (and its associated + subelements) for a single web application. The docBase + attribute of this <Context> element will typically + be the absolute pathname to a web application directory, or the + absolute pathname of a web application archive (WAR) file (which + will not be expanded). The path attribute will be automatically set + as defined in the Context documentation.
    • +
    • Any web application archive file within the application base (appBase) + directory that does not have a corresponding + directory of the same name (without the ".war" extension) will be + automatically expanded, unless the unpackWARs property + is set to false. If you redeploy an updated WAR file, + be sure to delete the expanded directory when restarting Tomcat, so + that the updated WAR file will be re-expanded (note that the auto + deployer, if enabled, will automatically expand the updated WAR file + once the previously expanded directory is removed).
    • +
    • Any subdirectory within the application base directory + will receive an automatically generated + Context element, even if this directory is not mentioned in the + conf/server.xml file. + This generated Context entry will be configured according to the + properties set in any DefaultContext + element nested in this Host element. The context path for this + deployed Context will be a slash character ("/") followed by the + directory name, unless the directory name is ROOT, in which case + the context path will be an empty string ("").
    • +
    + +

    In addition to the automatic deployment that occurs at startup time, + you can also request that new XML configuration files, WAR files, or + subdirectories that are dropped in to the appBase (or + $CATALINA_HOME/conf/[engine_name]/[host_name] in the case of + an XML configuration file) directory while Tomcat is running will be + automatically deployed, according to the rules described above. The + auto deployer will also track web applications for the following changes: +

      +
    • An update to the WEB-INF/web.xml file will trigger a reload of the + web application
    • +
    • An update to a WAR which has been expanded will trigger + an undeploy (with a removal of the expanded webapp), + followed by a deployment
    • +
    • An update to a XML configuration file will trigger an undeploy + (without the removal of any expanded directory), followed by + a deployment of the associated web application
    • +
    +

    + +

    When using automatic deployment, the docBase defined by + an XML Context file should be outside of the + appBase directory. If this is not the case difficulties + may be experienced deploying the web application or the application may + be deployed twice.

    + +

    Finally, note that if you are defining contexts explicitly, you should + probably turn off automatic application deployment. Otherwise, your context + will be deployed twice each, and that may cause problems for your app. +

    + +
    + + +
    Host Name Aliases
    + +

    In many server environments, Network Administrators have configured + more than one network name (in the Domain Name Service (DNS) + server), that resolve to the IP address of the same server. Normally, + each such network name would be configured as a separate + Host element in conf/server.xml, each + with its own set of web applications.

    + +

    However, in some circumstances, it is desireable that two or more + network names should resolve to the same virtual host, + running the same set of applications. A common use case for this + scenario is a corporate web site, where it is desireable that users + be able to utilize either www.mycompany.com or + company.com to access exactly the same content and + applications.

    + +

    This is accomplished by utilizing one or more Alias + elements nested inside your Host element. For + example:

    +
    +<Host name="www.mycompany.com" ...>
    +  ...
    +  <Alias>mycompany.com</Alias>
    +  ...
    +</Host>
    +
    + +

    In order for this strategy to be effective, all of the network names + involved must be registered in your DNS server to resolve to the + same computer that is running this instance of Catalina.

    + +
    + + +
    Lifecycle Listeners
    + +

    If you have implemented a Java object that needs to know when this + Host is started or stopped, you can declare it by + nesting a Listener element inside this element. The + class name you specify must implement the + org.apache.catalina.LifecycleListener interface, and + it will be notified about the occurrence of the coresponding + lifecycle events. Configuration of such a listener looks like this:

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Listener className="com.mycompany.mypackage.MyListener" ... >
    +  ...
    +</Host>
    +
    + +

    Note that a Listener can have any number of additional properties + that may be configured from this element. Attribute names are matched + to corresponding JavaBean property names using the standard property + method naming patterns.

    + +
    + + +
    Request Filters
    + +

    You can ask Catalina to check the IP address, or host name, on every + incoming request directed to the surrounding + Engine, Host, or + Context element. The remote address or name + will be checked against a configured list of "accept" and/or "deny" + filters, which are defined using the Regular Expression syntax supported + by the Jakarta Regexp + regular expression library. Requests that come from locations that are + not accepted will be rejected with an HTTP "Forbidden" error. + Example filter declarations:

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.RemoteHostValve"
    +         allow="*.mycompany.com,www.yourcompany.com"/>
    +  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    +         deny="192.168.1.*"/>
    +  ...
    +</Host>
    +
    + +

    See Remote Address Filter + and Remote Host Filter for + more information about the configuration options that are supported.

    + +
    + + +
    Single Sign On
    + +

    In many environments, but particularly in portal environments, it + is desireable to have a user challenged to authenticate themselves only + once over a set of web applications deployed on a particular virtual + host. This can be accomplished by nesting an element like this inside + the Host element for this virtual host:

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Valve className="org.apache.catalina.authenticator.SingleSignOn"
    +         debug="0"/>
    +  ...
    +</Host>
    +
    + +

    The Single Sign On facility operates according to the following rules: +

    +
      +
    • All web applications configured for this virtual host must share the + same Realm. In practice, that means you can + nest the Realm element inside this Host element (or the surrounding + Engine element), but not inside a + Context element for one of the involved + web applications.
    • +
    • As long as the user accesses only unprotected resources in any of the + web applications on this virtual host, they will not be challenged + to authenticate themselves.
    • +
    • As soon as the user accesses a protected resource in + any web application associated with this virtual + host, the user will be challenged to authenticate himself or herself, + using the login method defined for the web application currently + being accessed.
    • +
    • Once authenticated, the roles associated with this user will be + utilized for access control decisions across all + of the associated web applications, without challenging the user + to authenticate themselves to each application individually.
    • +
    • As soon as the user logs out of one web application (for example, + by invalidating the corresponding session if form + based login is used), the user's sessions in all + web applications will be invalidated. Any subsequent attempt to + access a protected resource in any application will require the + user to authenticate himself or herself again.
    • +
    • The Single Sign On feature utilizes HTTP cookies to transmit a token + that associates each request with the saved user identity, so it can + only be utilized in client environments that support cookies.
    • +
    + +
    + + +
    User Web Applications
    + +

    Many web servers can automatically map a request URI starting with + a tilde character ("~") and a username to a directory (commonly named + public_html) in that user's home directory on the server. + You can accomplish the same thing in Catalina by using a special + Listener element like this (on a Unix system that + uses the /etc/passwd file to identify valid users):

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Listener className="org.apache.catalina.startup.UserConfig"
    +            directoryName="public_html"
    +            userClass="org.apache.catalina.startup.PasswdUserDatabase"/>
    +  ...
    +</Host>
    +
    + +

    On a server where /etc/passwd is not in use, you can + request Catalina to consider all directories found in a specified base + directory (such as c:\Homes in this example) to be + considered "user home" directories for the purposes of this directive:

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Listener className="org.apache.catalina.startup.UserConfig"
    +            directoryName="public_html"
    +            homeBase=c:\Homes"
    +            userClass="org.apache.catalina.startup.HomesUserDatabase"/>
    +  ...
    +</Host>
    +
    + +

    If a user home directory has been set up for a user named + craigmcc, then its contents will be visible from a + client browser by making a request to a URL like:

    + +
    +http://www.mycompany.com:8080/~craigmcc
    +
    + +

    Successful use of this feature requires recognition of the following + considerations:

    +
      +
    • Each user web application will be deployed with characteristics + established by any DefaultContext + element you have configured for this Host.
    • +
    • It is legal to include more than one instance of this Listener + element. This would only be useful, however, in circumstances + where you wanted to configure more than one "homeBase" directory.
    • +
    • The operating system username under which Catalina is executed + MUST have read access to each user's web application directory, + and all of its contents.
    • +
    + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/http.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/http.html new file mode 100644 index 0000000..c0ddcad --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/http.html @@ -0,0 +1,553 @@ +Apache Tomcat Configuration Reference - The HTTP Connector
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The HTTP Connector

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The HTTP Connector element represents a + Connector component that supports the HTTP/1.1 protocol. + It enables Catalina to function as a stand-alone web server, in addition + to its ability to execute servlets and JSP pages. A particular instance + of this component listens for connections on a specific TCP port number + on the server. One or more such Connectors can be + configured as part of a single Service, each + forwarding to the associated Engine to perform + request processing and create the response.

    + +

    If you wish to configure the Connector that is used + for connections to web servers using the AJP protocol (such as the + mod_jk 1.2.x connector for Apache 1.3), see + here instead.

    + +

    Each incoming request requires + a thread for the duration of that request. If more simultaneous requests + are received than can be handled by the currently available request + processing threads, additional threads will be created up to the + configured maximum (the value of the maxThreads attribute). + If still more simultaneous requests are received, they are stacked up + inside the server socket created by the Connector, up to + the configured maximum (the value of the acceptCount + attribute. Any further simultaneous requests will receive "connection + refused" errors, until resources are available to process them.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Connector + support the following attributes:

    + +
    AttributeDescription
    allowTrace +

    A boolean value which can be used to enable or disable the TRACE + HTTP method. If not specified, this attribute is set to false.

    +
    emptySessionPath +

    If set to true, all paths for session cookies will be set + to /. This can be useful for portlet specification implementations, + but will greatly affect performance if many applications are accessed on a given + server by the client. + If not specified, this attribute is set to false.

    +
    enableLookups +

    Set to true if you want calls to + request.getRemoteHost() to perform DNS lookups in + order to return the actual host name of the remote client. Set + to false to skip the DNS lookup and return the IP + address in String form instead (thereby improving performance). + By default, DNS lookups are enabled.

    +
    maxPostSize +

    The maximum size in bytes of the POST which will be handled by + the container FORM URL parameter parsing. The limit can be disabled by + setting this attribute to a value less than or equal to 0. + If not specified, this attribute is set to 2097152 (2 megabytes).

    +
    maxSavePostSize +

    The maximum size in bytes of the POST which will be saved/buffered by + the container during FORM or CLIENT-CERT authentication. For both types + of authentication, the POST will be saved/buffered before the user is + authenticated. For CLIENT-CERT authentication, the POST is buffered for + the duration of + the SSL handshake and the buffer emptied when the request + is processed. For FORM authentication the POST is + saved whilst the user + is re-directed to the login form and is retained until the user + successfully authenticates or the session associated with the + authentication request expires. The limit can be disabled by setting this + attribute to -1. Setting the attribute to + zero will disable the saving of + POST data during authentication +. If not + specified, this attribute is set + to + 4096 (4 kilobytes).

    +
    protocol +

    + Sets the protocol to handle incoming traffic. + The default value is HTTP/1.1 and configures the + org.apache.coyote.http11.Http11Protocol. This is the blocking Java connector.
    + If the PATH(Windows) or LD_LIBRARY_PATH(on most unix system) + environment variables contain the Tomcat native library, the APR connector + will automatically be configured. Please be advised that the APR connector has different + settings for HTTPS than the default Java connector.
    + Other values for this attribute are, but not limited to:
    + org.apache.coyote.http11.Http11Protocol - same as HTTP/1.1
    + org.apache.coyote.http11.Http11NioProtocol - non blocking Java connector
    + org.apache.coyote.http11.Http11AprProtocol - the APR connector.
    + Take a look at our Connector Comparison chart. + The configuration for both Java connectors are identical, both for http and https.
    + For more information on the APR connector and APR specific SSL settings please + visit the APR documentation + +

    +
    proxyName +

    If this Connector is being used in a proxy + configuration, configure this attribute to specify the server name + to be returned for calls to request.getServerName(). + See Proxy Support for more + information.

    +
    proxyPort +

    If this Connector is being used in a proxy + configuration, configure this attribute to specify the server port + to be returned for calls to request.getServerPort(). + See Proxy Support for more + information.

    +
    redirectPort +

    If this Connector is supporting non-SSL + requests, and a request is received for which a matching + <security-constraint> requires SSL transport, + Catalina will automatically redirect the request to the port + number specified here.

    +
    SSLEnabled +

    + Use this attribute to enable SSL traffic on a connector. + To turn on SSL handshake/encryption/decryption on a connector + set this value to true. + The default value is false. + When turning this value true you will want to set the + scheme and the secure attributes as well + to pass the correct request.getScheme() and + request.isSecure() values to the servlets + See SSL Support for more information. +

    +
    scheme +

    Set this attribute to the name of the protocol you wish to have + returned by calls to request.getScheme(). For + example, you would set this attribute to "https" + for an SSL Connector. The default value is "http". +

    +
    secure +

    Set this attribute to true if you wish to have + calls to request.isSecure() to return true + for requests received by this Connector. You would want this on an + SSL Connector or a non SSL connector that is receiving data from a + SSL accelerator, like a crypto card, a SSL appliance or even a webserver. + The default value is false.

    +
    URIEncoding +

    This specifies the character encoding used to decode the URI bytes, + after %xx decoding the URL. If not specified, ISO-8859-1 will be used. +

    +
    useBodyEncodingForURI +

    This specifies if the encoding specified in contentType should be used + for URI query parameters, instead of using the URIEncoding. This + setting is present for compatibility with Tomcat 4.1.x, where the + encoding specified in the contentType, or explicitely set using + Request.setCharacterEncoding method was also used for the parameters from + the URL. The default value is false. +

    +
    useIPVHosts +

    Set this attribute to true to cause Tomcat to use + the IP address that the request was recieved on to determine the Host + to send the request to. The default value is false.

    +
    xpoweredBy +

    Set this attribute to true to cause Tomcat to advertise + support for the Servlet specification using the header recommended in the + specification. The default value is false.

    +
    + +
    + +
    Standard Implementation
    + +

    + HTTP supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    acceptCount +

    The maximum queue length for incoming connection requests when + all possible request processing threads are in use. Any requests + received when the queue is full will be refused. The default + value is 10.

    +
    address +

    For servers with more than one IP address, this attribute + specifies which address will be used for listening on the specified + port. By default, this port will be used on all IP addresses + associated with the server.

    +
    bufferSize +

    The size (in bytes) of the buffer to be provided for input + streams created by this connector. By default, buffers of + 2048 bytes will be provided.

    +
    compressableMimeType +

    The value is a comma separated list of MIME types for which HTTP + compression may be used. + The default value is text/html,text/xml,text/plain.

    +
    compression +

    The Connector may use HTTP/1.1 GZIP compression in + an attempt to save server bandwidth. The acceptable values for the + parameter is "off" (disable compression), "on" (allow compression, which + causes text data to be compressed), "force" (forces compression in all + cases), or a numerical integer value (which is equivalent to "on", but + specifies the minimum amount of data before the output is compressed). If + the content-length is not known and compression is set to "on" or more + aggressive, the output will also be compressed. If not specified, this + attribute is set to "off".

    +
    connectionLinger +

    The number of milliseconds during which the sockets used by this + Connector will linger when they are closed. + The default value is -1 (socket linger is disabled).

    +
    connectionTimeout +

    The number of milliseconds this Connector will wait, + after accepting a connection, for the request URI line to be + presented. The default value is 60000 (i.e. 60 seconds).

    +
    executor +

    A reference to the name in an Executor element. + If this attribute is enabled, and the named executor exists, the connector will + use the executor, and all the other thread attributes will be ignored.

    +
    keepAliveTimeout +

    The number of milliseconds this Connector will wait for + another HTTP request before closing the connection. + The default value is to use the value that has been set for the + connectionTimeout attribute.

    +
    disableUploadTimeout +

    This flag allows the servlet container to use a different, longer + connection timeout while a servlet is being executed, which in the end + allows either the servlet a longer amount of time to complete its + execution, or a longer timeout during data upload. If not specified, + this attribute is set to "true".

    +
    maxHttpHeaderSize +

    The maximum size of the request and response HTTP header, specified + in bytes. + If not specified, this attribute is set to 4096 (4 KB).

    +
    maxKeepAliveRequests +

    The maximum number of HTTP requests which can be pipelined until + the connection is closed by the server. Setting this attribute to 1 will + disable HTTP/1.0 keep-alive, as well as HTTP/1.1 keep-alive and + pipelining. Setting this to -1 will allow an unlimited amount of + pipelined or keep-alive HTTP requests. + If not specified, this attribute is set to 100.

    +
    maxThreads +

    The maximum number of request processing threads to be created + by this Connector, which therefore determines the + maximum number of simultaneous requests that can be handled. If + not specified, this attribute is set to 40. If an executor is associated + with this connector, this attribute is ignored as the connector will + execute tasks using the executor rather than an internal thread pool.

    +
    noCompressionUserAgents +

    The value is a comma separated list of regular expressions matching + user-agents of HTTP clients for which compression should not be used, + because these clients, although they do advertise support for the + feature, have a broken implementation. + The default value is an empty String (regexp matching disabled).

    +
    port +

    The TCP port number on which this Connector + will create a server socket and await incoming connections. Your + operating system will allow only one server application to listen + to a particular port number on a particular IP address.

    +
    restrictedUserAgents +

    The value is a comma separated list of regular expressions matching + user-agents of HTTP clients for which HTTP/1.1 or HTTP/1.0 keep alive + should not be used, even if the clients advertise support for these + features. + The default value is an empty String (regexp matching disabled).

    +
    server +

    The Server header for the http response. + Unless you are paranoid, you won't need this feature. +

    +
    socketBuffer +

    The size (in bytes) of the buffer to be provided for socket + output buffering. -1 can be specified to disable the use of a buffer. + By default, a buffers of 9000 bytes will be used.

    +
    tcpNoDelay +

    If set to true, the TCP_NO_DELAY option will be + set on the server socket, which improves performance under most + circumstances. This is set to true by default.

    +
    threadPriority +

    The priority of the request processing threads within the JVM. + The default value is java.lang.Thread#NORM_PRIORITY. + See the JavaDoc for the java.lang.Thread class for more details on + what this priority means. +

    +
    + +
    + +
    Nio Implementation
    + +

    The NIO connector exposes all the low level socket properties that can be used to tune the connector. + Most of these attributes are directly linked to the socket implementation in the JDK so you can find out + about the actual meaning in the JDK API documentation.
    + NoteOn some JDK versions, setTrafficClass causes a problem, a work around for this is to add + the -Djava.net.preferIPv4Stack=true value to your command line

    + +
    AttributeDescription
    useSendfile +

    (bool)Use this attribute to enable or disable sendfile capability. + The default value is true +

    +
    useExecutor +

    (bool)Set to true to use the NIO thread pool executor. The default value is true. + If set to false, it uses a thread pool based on a stack for its execution. + Generally, using the executor yields a little bit slower performance, but yields a better + fairness for processing connections in a high load environment as the traffic gets queued through a + FIFO queue. If set to true(default) then the max pool size is the maxThreads attribute + and the core pool size is the minSpareThreads. + This value is ignored if the executor attribute is present and points to a valid shared thread pool. +

    +
    acceptorThreadCount +

    (int)The number of threads to be used to accept connections. Increase this value on a multi CPU machine, + although you would never really need more than 2. Also, with a lot of non keep alive connections, + you might want to increase this value as well. Default value is 1.

    +
    pollerThreadCount +

    (int)The number of threads to be used to run for the polling events. Default value is 1. + Can't see a reason to go above that. But experiment and find your own results.

    +
    pollerThreadPriority +

    (int)The priority of the poller threads. + The default value is java.lang.Thread#NORM_PRIORITY. + See the JavaDoc for the java.lang.Thread class for more details on + what this priority means. +

    +
    acceptorThreadPriority +

    (int)The priority of the acceptor threads. The threads used to accept new connections. + The default value is java.lang.Thread#NORM_PRIORITY. + See the JavaDoc for the java.lang.Thread class for more details on + what this priority means. +

    +
    selectorTimeout +

    (int)The time in milliseconds to timeout on a select() for the poller. + This value is important, since connection clean up is done on the same thread, so dont set this + value to an extremely high one. The default value is 1000 milliseconds.

    +
    useComet +

    (bool)Whether to allow comet servlets or not, Default value is true.

    +
    processCache +

    (int)The protocol handler caches Http11NioProcessor objects to speed up performance. + This setting dictates how many of these objects get cached. + -1 means unlimited, default is 200. Set this value somewhere close to your maxThreads value. +

    +
    socket.directBuffer +

    (bool)Boolean value, whether to use direct ByteBuffers or java mapped ByteBuffers. Default is false +
    When you are using direct buffers, make sure you allocate the appropriate amount of memory for the + direct memory space. On Sun's JDK that would be something like -XX:MaxDirectMemorySize=256m

    +
    socket.rxBufSize +

    (int)The socket receive buffer (SO_RCVBUF) size in bytes. Default value is 25188

    +
    socket.txBufSize +

    (int)The socket send buffer (SO_SNDBUF) size in bytes. Default value is 43800

    +
    socket.appReadBufSize +

    (int)Each connection that is opened up in Tomcat get associated with a read and a write ByteBuffer + This attribute controls the size of these buffers. By default this read buffer is sized at 8192 bytes. + For lower concurrency, you can increase this to buffer more data. + For an extreme amount of keep alive connections, decrease this number or increase your heap size.

    +
    socket.appWriteBufSize +

    (int)Each connection that is opened up in Tomcat get associated with a read and a write ByteBuffer + This attribute controls the size of these buffers. By default this write buffer is sized at 8192 bytes. + For low concurrency you can increase this to buffer more response data. + For an extreme amount of keep alive connections, decrease this number or increase your heap size. +
    + The default value here is pretty low, you should up it if you are not dealing with tens of thousands + concurrent connections.

    +
    socket.bufferPool +

    (int)The Nio connector uses a class called NioChannel that holds elements linked to a socket. + To reduce garbage collection, the Nio connector caches these channel objects. + This value specifies the size of this cache. + The default value is 500, and represents that the cache will hold 500 NioChannel objects. + Other values are -1. unlimited cache, and 0, no cache.

    +
    socket.bufferPoolSize +

    (int)The NioChannel pool can also be size based, not used object based. The size is calculated as follows:
    + NioChannel buffer size = read buffer size + write buffer size
    + SecureNioChannel buffer size = application read buffer size + application write buffer size + network read buffer size + network write buffer size
    + The value is in bytes, the default value is 1024*1024*100 (100MB) +

    +
    socket.processorCache +

    (int)Tomcat will cache SocketProcessor objects to reduce garbage collection. + The integer value specifies how many objects to keep in the cache at most. + The default is 500. + Other values are -1. unlimited cache, and 0, no cache.

    +
    socket.keyCache +

    (int)Tomcat will cache KeyAttachment objects to reduce garbage collection. + The integer value specifies how many objects to keep in the cache at most. + The default is 500. + Other values are -1. unlimited cache, and 0, no cache.

    +
    socket.eventCache +

    (int)Tomcat will cache PollerEvent objects to reduce garbage collection. + The integer value specifies how many objects to keep in the cache at most. + The default is 500. + Other values are -1. unlimited cache, and 0, no cache.

    +
    socket.tcpNoDelay +

    (bool)same as the standard setting tcpNoDelay. Default value is false

    +
    socket.soKeepAlive +

    (bool)Boolean value for the socket's keep alive setting (SO_KEEPALIVE). Default is false.

    +
    socket.ooBInline +

    (bool)Boolean value for the socket OOBINLINE setting. Default value is true

    +
    socket.soReuseAddress +

    (bool)Boolean value for the sockets reuse address option (SO_REUSEADDR). Default value is true

    +
    socket.soLingerOn +

    (bool)Boolean value for the sockets so linger option (SO_LINGER). Default value is true. + This option is paired with the soLingerTime value.

    +
    socket.soLingerTime +

    (bool)Value in seconds for the sockets so linger option (SO_LINGER). Default value is 25 seconds. + This option is paired with the soLinger value.

    +
    socket.soTimeout +

    (int)Value in milliseconds for the sockets read timeout (SO_TIMEOUT). Default value is 5000 milliseconds.

    +
    socket.soTrafficClass +

    (byte)Value between 0 and 255 for the traffic class on the socket, 0x04 | 0x08 | 0x010

    +
    socket.performanceConnectionTime +

    (int)The first value for the performance settings. Default is 1, see Socket Performance Options

    +
    socket.performanceLatency +

    (int)The second value for the performance settings. Default is 0, see Socket Performance Options

    +
    socket.performanceBandwidth +

    (int)The third value for the performance settings. Default is 1, see Socket Performance Options

    +
    selectorPool.maxSelectors +

    (int)The max selectors to be used in the pool, to reduce selector contention. + Use this option when the command line org.apache.tomcat.util.net.NioSelectorShared value is set to false. + Default value is 200.

    +
    selectorPool.maxSpareSelectors +

    (int)The max spare selectors to be used in the pool, to reduce selector contention. + When a selector is returned to the pool, the system can decide to keep it or let it be GC:ed. + Use this option when the command line org.apache.tomcat.util.net.NioSelectorShared value is set to false. + Default value is -1 (unlimited)

    +
    command-line-options +

    The following command line options are available for the NIO connector:
    + -Dorg.apache.tomcat.util.net.NioSelectorShared=true|false - default is true. + Set this value to false if you wish to use a selector for each thread. + the property. If you do set it to false, you can control the size of the pool of selectors by using the + selectorPool.maxSelectors attribute

    +
    oomParachute +

    (int)The NIO connector implements an OutOfMemoryError strategy called parachute. + It holds a chunk of data as a byte array. In case of an OOM, + this chunk of data is released and the error is reported. This will give the VM enough room + to clean up. The oomParachute represent the size in bytes of the parachute(the byte array). + The default value is 1024*1024(1MB). + Please note, this only works for OOM errors regarding the Java Heap space, and there is absolutely no + guarantee that you will be able to recover at all. + If you have an OOM outside of the Java Heap, then this parachute trick will not help. +

    +
    +
    + +
    Nested Components
    + +

    None at this time.

    + +
    Special Features
    + + +
    HTTP/1.1 and HTTP/1.0 Support
    + +

    This Connector supports all of the required features + of the HTTP/1.1 protocol, as described in RFC 2616, including persistent + connections, pipelining, expectations and chunked encoding. If the client + (typically a browser) supports only HTTP/1.0, the + Connector will gracefully fall back to supporting this + protocol as well. No special configuration is required to enable this + support. The Connector also supports HTTP/1.0 + keep-alive.

    + +

    RFC 2616 requires that HTTP servers always begin their responses with + the highest HTTP version that they claim to support. Therefore, this + Connector will always return HTTP/1.1 at + the beginning of its responses.

    + +
    + + +
    Proxy Support
    + +

    The proxyName and proxyPort attributes can + be used when Tomcat is run behind a proxy server. These attributes + modify the values returned to web applications that call the + request.getServerName() and request.getServerPort() + methods, which are often used to construct absolute URLs for redirects. + Without configuring these attributes, the values returned would reflect + the server name and port on which the connection from the proxy server + was received, rather than the server name and port to whom the client + directed the original request.

    + +

    For more information, see the + Proxy Support HOW-TO.

    + +
    + + + +
    SSL Support
    + +

    You can enable SSL support for a particular instance of this + Connector by setting the secure attribute to + true. In addition, you may need to configure the following + attributes:

    + +
    AttributeDescription
    algorithm +

    The certificate encoding algorithm to be used. This defaults to the Sun + implementation (SunX509). For IBM JVMs you should use the + value IbmX509. For other vendors, consult the JVM + documentation for the correct value.

    +
    clientAuth +

    Set to true if you want the SSL stack to require a + valid certificate chain from the client before accepting a connection. + Set to want if you want the SSL stack to request a client + Certificate, but not fail if one isn't presented. A false + value (which is the default) will not require a certificate chain + unless the client requests a resource protected by a security + constraint that uses CLIENT-CERT authentication. See the + SSL HowTo for an example.

    +
    keystoreFile +

    The pathname of the keystore file where you have stored the + server certificate to be loaded. By default, the pathname is + the file ".keystore" in the operating system home + directory of the user that is running Tomcat.

    +
    keystorePass +

    The password used to access the server certificate from the + specified keystore file. The default value is "changeit". +

    +
    keystoreType +

    The type of keystore file to be used for the server certificate. + If not specified, the default value is "JKS".

    +
    sslProtocol +

    The version of the SSL protocol to use. If not specified, + the default is "TLS".

    +
    ciphers +

    A comma seperated list of the encryption ciphers that may be used. + If not specified, then any available cipher may be used.

    +
    keyAlias +

    The alias used to for the server certificate in the keystore. If not + specified the first key read in the keystore will be used.

    +
    truststoreFile +

    The TrustStore file to use to validate client certificates.

    +
    truststorePass +

    The password to access the TrustStore. This defaults to the value + of keystorePass.

    +
    truststoreType +

    Add this element if your are using a different format for the + TrustStore then you are using for the KeyStore.

    +
    + +

    For more information, see the + SSL Configuration HOW-TO.

    + +
    +
    Connector Comparison
    + +

    Below is a small chart that shows how the connectors differentiate.

    +
    +                  Java Blocking Connector       Java Nio Blocking Connector       APR Connector
    +    Classname         Http11Protocol                  Http11NioProtocol         Http11AprProtocol
    +    Tomcat Version   3.x 4.x 5.x 6.x                       6.x                     5.5.x 6.x
    +    Support Polling         NO                             YES                        YES
    +    Polling Size           N/A                   Unlimited - Restricted by mem        Unlimited
    +    Read HTTP Request     Blocking                     Blocking                       Blocking
    +    Read HTTP Body        Blocking                     Blocking                       Blocking
    +    Write HTTP Response   Blocking                     Blocking                       Blocking
    +    SSL Support           Java SSL                     Java SSL                       OpenSSL
    +    SSL Handshake         Blocking                     Non blocking                   Blocking
    +    Max Connections       maxThreads                   See polling size               See polling size
    +    
    +    
    +    
    + +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/index.html new file mode 100644 index 0000000..122da43 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/index.html @@ -0,0 +1,56 @@ +Apache Tomcat Configuration Reference - Overview
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    Overview

    Printer Friendly Version
    print-friendly
    version +
    Overview
    + +

    This manual contains reference information about all of the configuration +directives that can be included in a conf/server.xml file to +configure the behavior of the Tomcat 6 Servlet/JSP container. It does not +attempt to describe which configuration directives should be used to perform +specific tasks - for that, see the various HOW-TO documents on the +main index page.

    + +

    The configuration element descriptions are organized into the following +major categories:

    +
      +
    • Top Level Elements - <Server> is the + root element of the entire configuration file, while + <Service> represents a group of Connectors that is + associated with an Engine.
    • +
    • Connectors - Represent the interface between external + clients sending requests to (and receiving responses from) a particular + Service.
    • +
    • Containers - Represent components whose function is to + process incoming requests, and create the corresponding responses. + An Engine handles all requests for a Service, a Host handles all requests + for a particular virtual host, and a Context handles all requests for a + specific web application.
    • +
    • Nested Components - Represent elements that can be + nested inside the element for a Container. Some elements can be nested + inside any Container, while others can only be nested inside a + Context.
    • +
    + +

    For each element, the corresponding documentation follows this general +outline:

    +
      +
    • Introduction - Overall description of this particular + component. There will be a corresponding Java interface (in + the org.apache.catalina pacakge) that is implemented by one + or more standard implementations.
    • +
    • Attributes - The set of attributes that are legal for + this element. Generally, this will be subdivided into Common + attributes that are supported by all implementations of the corresponding + Java interface, and Standard Implementation attributes that are + specific to a particular Java class that implements this interface. + The names of required attributes are bolded.
    • +
    • Nested Components - Enumerates which of the Nested + Components can be legally nested within this element.
    • +
    • Special Features - Describes the configuration of a large + variety of special features (specific to each element type) that are + supported by the standard implementation of this interface.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/loader.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/loader.html new file mode 100644 index 0000000..1f2d7f2 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/loader.html @@ -0,0 +1,105 @@ +Apache Tomcat Configuration Reference - The Loader Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Loader Component

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The Loader element represents the web + application class loader that will be used to load Java + classes and resources for your web application. Such + a class loader must follow the requirements of the Servlet + Specification, and load classes from the following locations:

    +
      +
    • From the /WEB-INF/classes directory inside your + web application.
    • +
    • From JAR files in the /WEB-INF/lib directory + inside your web application.
    • +
    • From resources made available by Catalina to all web + applications globally.
    • +
    + +

    A Loader element MAY be nested inside a Context + component. If it is not included, a default Loader configuration will be + created automatically, which is sufficient for most requirements.

    + +

    For a more in-depth description of the class loader hierarchy + that is implemented by Catalina, see the ClassLoader HowTo.

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Loader + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Loader interface. + If not specified, the standard value (defined below) will be used.

    +
    delegate +

    Set to true if you want the class loader to follow + the standard Java2 delegation model, and attempt to load classes from + parent class loaders before looking inside the web + application. Set to false (the default) to have the + class loader look inside the web application first, before asking + parent class loaders to find requested classes or resources.

    +
    reloadable +

    Set to true if you want Catalina to monitor classes in + /WEB-INF/classes/ and /WEB-INF/lib for + changes, and automatically reload the web application if a change + is detected. This feature is very useful during application + development, but it requires significant runtime overhead and is + not recommended for use on deployed production applications. You + can use the Manager web + application, however, to trigger reloads of deployed applications + on demand.

    + +

    NOTE - The value for this property will be + inherited from the reloadable attribute you set on + the surrounding Context component, + and any value you explicitly set here will be replaced.

    +
    + +
    + + +
    Standard Implementation
    + +

    The standard implementation of Loader is + org.apache.catalina.loader.WebappLoader. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    loaderClass +

    Java class name of the java.lang.ClassLoader + implementation class to use. If not specified, the default value is + org.apache.catalina.loader.WebappClassLoader.

    +
    + +
    + + +
    Nested Components
    + +

    No components may be nested inside a Loader element.

    + +
    Special Features
    + +
    Logging
    + +

    A loader is associated with the log category based on its classname.

    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/manager.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/manager.html new file mode 100644 index 0000000..ddeb53f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/manager.html @@ -0,0 +1,352 @@ +Apache Tomcat Configuration Reference - The Manager Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Manager Component

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The Manager element represents the session + manager that will be used to create and maintain HTTP sessions + as requested by the associated web application.

    + +

    A Manager element MAY be nested inside a + Context component. If it is not included, + a default Manager configuration will be created automatically, which + is sufficient for most requirements.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Manager + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Manager interface. + If not specified, the standard value (defined below) will be used.

    +
    distributable +

    Set to true to ask the session manager to enforce + the restrictions described in the Servlet Specification on + distributable applications (primarily, this would mean that all + session attributes must implement java.io.Serializable). + Set to false (the default) to not enforce these + restrictions.

    + +

    NOTE - The value for this property is inherited + automatically based on the presence or absence of the + <distributable> element in the web application + deployment descriptor (/WEB-INF/web.xml).

    +
    + +
    + + +
    Standard Implementation
    + +

    Tomcat provides two standard implementations of Manager + for use - the default one stores active sessions, while the optional one + stores active sessions that have been swapped out (in addition to saving + sessions across a restart of Tomcat) in a storage location that is selected + via the use of an appropriate Store nested element.

    + +

    Standard Manager Implementation

    + +

    The standard implementation of Manager is + org.apache.catalina.session.StandardManager. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    algorithm +

    Name of the Message Digest algorithm used to calculate + session identifiers produced by this Manager. This value must + be supported by the java.security.MessageDigest class. + If not specified, the default value is "MD5".

    +
    entropy +

    A String value that is utilized when seeding the random number + generator used to create session identifiers for this Manager. + If not specified, a semi-useful value is calculated, but a long + String value should be specified in security-conscious + environments.

    +
    maxActiveSessions +

    The maximum number of active sessions that will be created by + this Manager, or -1 (the default) for no limit.

    +
    maxInactiveInterval +

    The initial maximum time interval, in seconds, + between client requests before a session is invalidated. A negative value + will result in sessions never timing out. If the attribute is not provided, + a default of 60 seconds is used.

    + +

    This attribute provides the initial value whenever a + new session is created, but the interval may be dynamically + varied by a servlet via the + setMaxInactiveInterval method of the HttpSession object.

    +
    pathname +

    Absolute or relative (to the work directory for this Context) + pathname of the file in which session state will be preserved + across application restarts, if possible. The default is + "SESSIONS.ser". See Restart + Persistence for more information. Restart persistence may be + disabled by setting this attribute to an empty string.

    +
    processExpiresFrequency +

    Frequency of the session expiration, and related manager operations. + Manager operations will be done once for the specified amount of + backgrondProcess calls (ie, the lower the amount, the more often the + checks will occur). The minimum value is 1, and the default value is 6. +

    +
    randomClass +

    Java class name of the java.util.Random + implementation class to use. If not specified, the default value is + java.security.SecureRandom.

    +
    sessionIdLength +

    The length of session ids created by this Manager, excluding any + JVM route information used for load balancing. + The default is 16.

    +
    + +

    Persistent Manager Implementation

    + +

    WARNING - Use of this Manager implementation + has not been thoroughly tested, and should be considered experimental! +

    + +

    The persistent implementation of Manager is + org.apache.catalina.session.PersistentManager. In + addition to the usual operations of creating and deleting sessions, a + PersistentManager has the capability to swap active (but + idle) sessions out to a persistent storage mechanism, as well as to save + all sessions across a normal restart of Tomcat. The actual persistent + storage mechanism used is selected by your choice of a + Store element nested inside the Manager + element - this is required for use of PersistentManager.

    + +

    This implementation of Manager supports the following attributes in + addition to the Common Attributes + described earlier.

    + +
    AttributeDescription
    algorithm +

    Name of the Message Digest algorithm used to calculate + session identifiers produced by this Manager. This value must + be supported by the java.security.MessageDigest class. + If not specified, the default value is "MD5".

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Manager interface. + You must specify + org.apache.catalina.session.PersistentManager to use + this manager implementation.

    +
    entropy +

    A String value that is utilized when seeding the random number + generator used to create session identifiers for this Manager. + If not specified, a semi-useful value is calculated, but a long + String value should be specified in security-conscious + environments.

    +
    maxActiveSessions +

    The maximum number of active sessions that will be created by + this Manager, or -1 (the default) for no limit.

    +
    maxIdleBackup +

    The time interval (in seconds) since the last access to a session + before it is eligible for being persisted to the session store, or + -1 to disable this feature. By default, this feature is + disabled.

    +
    maxIdleSwap +

    The time interval (in seconds) since the last access to a session + before it should be persisted to the session store, and + passivated out of the server's memory, or -1 to disable + this feature. If this feature is enabled, the time interval specified + here should be equal to or longer than the value specified for + maxIdleBackup. By default, this feature is disabled.

    +
    minIdleSwap +

    The time interval (in seconds) since the last access to a session + before it will be eligible to be persisted to the session store, and + passivated out of the server's memory, or -1 for this + swapping to be available at any time. If specified, this value should + be less than that specified by maxIdleSwap. By default, + this value is set to -1.

    +
    maxInactiveInterval +

    The initial maximum time interval, in seconds, + between client requests before a session is invalidated. A negative value + will result in sessions never timing out. If the attribute is not provided, + a default of 60 seconds is used.

    + +

    This attribute provides the initial value whenever a + new session is created, but the interval may be dynamically + varied by a servlet via the + setMaxInactiveIntervalmethod of the HttpSession object.

    +
    randomClass +

    Java class name of the java.util.Random + implementation class to use. If not specified, the default value is + java.security.SecureRandom.

    +
    saveOnRestart +

    Should all sessions be persisted and reloaded when Tomcat is shut + down and restarted (or when this application is reloaded)? By default, + this attribute is set to true.

    +
    sessionIdLength +

    The length of session ids created by this Manager, excluding any + JVM route information used for load balancing. + The default is 16.

    +
    + +

    In order to successfully use a PersistentManager, you must nest inside + it a <Store> element, as described below.

    + +
    + + +
    Nested Components
    + +

    Standard Manager Implementation

    + +

    If you are using the Standard Manager Implementation + as described above, no elements may be nested inside your + <Manager> element.

    + +

    Persistent Manager Implementation

    + +

    If you are using the Persistent Manager Implementation + as described above, you MUST nest a + <Store> element inside, which defines the + characteristics of the persistent data storage. Two implementations + of the <Store> element are currently available, + with different characteristics, as described belowl

    + +
    File Based Store
    + +

    The File Based Store implementation saves swapped out + sessions in individual files (named based on the session identifier) + in a configurable directory. Therefore, you are likely to encounter + scalability problems as the number of active sessions increases, and + this should primarily be considered a means to easily experiment.

    + +

    To configure this, add a <Store> nested inside + your <Manager> element with the following attributes: +

    + +
    AttributeDescription
    checkInterval +

    The interval (in seconds) between checks for expired sessions + among those sessions that are currently swapped out. By default, + this interval is set to 60 seconds (one minute).

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Store interface. You + must specify + org.apache.catalina.session.FileStore + to use this implementation.

    +
    directory +

    Absolute or relative (to the temporary work directory for this web + application) pathname of the directory into which individual session + files are written. If not specified, the temporary work directory + assigned by the container is utilized.

    +
    + + +
    JDBC Based Store
    + +

    The JDBC Based Store implementation saves swapped out + sessions in individual rows of a preconfigured table in a database + that is accessed via a JDBC driver. With large numbers of swapped out + sessions, this implementation will exhibit improved performance over + the File Based Store described above.

    + +

    To configure this, add a <Store> nested inside + your <Manager> element with the following attributes: +

    + +
    AttributeDescription
    checkInterval +

    The interval (in seconds) between checks for expired sessions + among those sessions that are currently swapped out. By default, + this interval is set to 60 seconds (one minute).

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Store interface. You + must specify + org.apache.catalina.session.JDBCStore + to use this implementation.

    +
    connectionURL +

    The connection URL that will be handed to the configured JDBC + driver to establish a connection to the database containing our + session table.

    +
    driverName +

    Java class name of the JDBC driver to be used.

    +
    sessionAppCol +

    Name of the database column, contained in the specified session + table, that contains the Engine, Host, and Web Application Context + name in the format /Engine/Host/Context.

    +
    sessionDataCol +

    Name of the database column, contained in the specified + session table, that contains the serialized form of all session + attributes for a swapped out session. The column type must accept + a binary object (typically called a BLOB).

    +
    sessionIdCol +

    Name of the database column, contained in the specified + session table, that contains the session identifier of the + swapped out session. The column type must accept character + string data of at least as many characters as are contained + in session identifiers created by Tomcat (typically 32).

    +
    sessionLastAccessedCol +

    Name of the database column, contained in the specified + session table, that contains the lastAccessedTime + property of this session. The column type must accept a + Java long (64 bits).

    +
    sessionMaxInactiveCol +

    Name of the database column, contained in the specified + session table, that contains the maxInactiveInterval + property of this session. The column type must accept a + Java integer (32 bits).

    +
    sessionTable +

    Name of the database table to be used for storing swapped out + sessions. This table must contain (at least) the database columns + that are configured by the other attributes of this element.

    +
    sessionValidCol +

    Name of the database column, contained in the specified + session table, that contains a flag indicating whether this + swapped out session is still valid or not. The column type + must accept a single character.

    +
    + +

    Before attempting to use the JDBC Based Store for the first time, + you must create the table that will be used to store swapped out sessions. + Detailed SQL commands vary depending on the database you are using, but + a script like this will generally be required:

    + +
    +create table tomcat_sessions (
    +  session_id     varchar(100) not null primary key,
    +  valid_session  char(1) not null,
    +  max_inactive   int not null,
    +  last_access    bigint not null,
    +  app_name       varchar(255),
    +  session_data   mediumblob,
    +  KEY kapp_name(app_name)
    +);
    +
    + +

    In order for the JDBC Based Store to successfully connect to your + database, the JDBC driver you configure must be visible to Tomcat's + internal class loader. Generally, that means you must place the JAR + file containing this driver into the $CATALINA_HOME/server/lib + directory (if your applications do not also need it) or into the + $CATALINA_HOME/common/lib directory (if you wish to share + this driver with your web applications.

    + +
    Special Features
    + + +
    Restart Persistence
    + +

    Whenver Catalina is shut down normally and restarted, or when an + application reload is triggered, the standard Manager implementation + will attempt to serialize all currently active sessions to a disk + file located via the pathname attribute. All such saved + sessions will then be deserialized and activated (assuming they have + not expired in the mean time) when the application reload is completed.

    + +

    In order to successfully restore the state of session attributes, + all such attributes MUST implement the java.io.Serializable + interface. You MAY cause the Manager to enforce this restriction by + including the <distributable> element in your web + application deployment descriptor (/WEB-INF/web.xml).

    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/ajp.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/ajp.html new file mode 100644 index 0000000..61bb22e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/ajp.html @@ -0,0 +1,200 @@ +Apache Tomcat Configuration Reference - The AJP Connector
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The AJP Connector

    Introduction
    + +

    The AJP Connector element represents a + Connector component that communicates with a web + connector via the AJP protocol. This is used for cases + where you wish to invisibly integrate Tomcat 6 into an existing (or new) + Apache installation, and you want Apache to handle the static content + contained in the web application, and/or utilize Apache's SSL + processing.

    + +

    This connector supports load balancing when used in conjunction with + the jvmRoute attribute of the + Engine.

    + +

    The native connectors supported with this Tomcat release are: +

      +
    • JK 1.2.x with any of the supported servers
    • +
    • mod_proxy on Apache httpd 2.x (included by default in Apache HTTP Server 2.2), + with AJP enabled: see + the httpd docs + for details.
    • +
    +

    + +

    Other native connectors supporting AJP may work, but are no longer supported.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Connector + support the following attributes:

    + +
    AttributeDescription
    allowTrace +

    A boolean value which can be used to enable or disable the TRACE + HTTP method. If not specified, this attribute is set to false.

    +
    emptySessionPath +

    If set to true, all paths for session cookies will be set + to /. This can be useful for portlet specification implementations, + but will greatly affect performance if many applications are accessed on a given + server by the client. + If not specified, this attribute is set to false.

    +
    enableLookups +

    Set to true if you want calls to + request.getRemoteHost() to perform DNS lookups in + order to return the actual host name of the remote client. Set + to false to skip the DNS lookup and return the IP + address in String form instead (thereby improving performance). + By default, DNS lookups are enabled.

    +
    maxPostSize +

    The maximum size in bytes of the POST which will be handled by + the container FORM URL parameter parsing. The feature can be disabled by + setting this attribute to a value less than or equal to 0. + If not specified, this attribute is set to 2097152 (2 megabytes).

    +
    maxSavePostSize +

    The maximum size in bytes of the POST which will be saved/buffered by + the container during FORM or CLIENT-CERT authentication. For both types + of authentication, the POST will be saved/buffered before the user is + authenticated. For CLIENT-CERT authentication, the POST is buffered for + the duration of the SSL handshake and the buffer emptied when the request + is processed. For FORM authentication the POST is saved whilst the user + is re-directed to the login form and is retained until the user + successfully authenticates or the session associated with the + authentication request expires. The limit can be disabled by setting this + attribute to -1. Setting the attribute to zero will disable the saving of + POST data during authentication. If not specified, this attribute is set + to 4096 (4 kilobytes).

    +
    protocol +

    This attribute value must be AJP/1.3 to use the AJP + handler.

    +
    proxyName +

    If this Connector is being used in a proxy + configuration, configure this attribute to specify the server name + to be returned for calls to request.getServerName(). + See Proxy Support for more + information.

    +
    proxyPort +

    If this Connector is being used in a proxy + configuration, configure this attribute to specify the server port + to be returned for calls to request.getServerPort(). + See Proxy Support for more + information.

    +
    redirectPort +

    If this Connector is supporting non-SSL + requests, and a request is received for which a matching + <security-constraint> requires SSL transport, + Catalina will automatically redirect the request to the port + number specified here.

    +
    request.registerRequests +

    This attribute controls request registration for JMX monitoring + of the Connector. It is enabled by default, but may be turned + it off to save a bit of memory.

    +
    scheme +

    Set this attribute to the name of the protocol you wish to have + returned by calls to request.getScheme(). For + example, you would set this attribute to "https" + for an SSL Connector. The default value is "http". + See SSL Support for more information.

    +
    secure +

    Set this attribute to true if you wish to have + calls to request.isSecure() to return true + for requests received by this Connector (you would want this on an + SSL Connector). The default value is false.

    +
    URIEncoding +

    This specifies the character encoding used to decode the URI bytes, + after %xx decoding the URL. If not specified, ISO-8859-1 will be used. +

    +
    useBodyEncodingForURI +

    This specifies if the encoding specified in contentType should be used + for URI query parameters, instead of using the URIEncoding. This + setting is present for compatibility with Tomcat 4.1.x, where the + encoding specified in the contentType, or explicitely set using + Request.setCharacterEncoding method was also used for the parameters from + the URL. The default value is false. +

    +
    useIPVHosts +

    Set this attribute to true to cause Tomcat to use + the ServerName passed by the native web server to determine the Host + to send the request to. The default value is false.

    +
    xpoweredBy +

    Set this attribute to true to cause Tomcat to advertise + support for the Srevlet specification using the header recommended in the + specification. The default value is false.

    +
    + +
    + +
    Standard Implementation
    + +

    To use AJP, you + must specify the protocol attribute (see above).

    + +

    This implementation supports the AJP 1.3 protocol.

    + +

    It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    address +

    For servers with more than one IP address, this attribute + specifies which address will be used for listening on the specified + port. By default, this port will be used on all IP addresses + associated with the server. A value of 127.0.0.1 + indicates that the Connector will only listen on the loopback + interface.

    +
    backlog +

    The maximum queue length for incoming connection requests when + all possible request processing threads are in use. Any requests + received when the queue is full will be refused. The default + value is 10.

    +
    bufferSize +

    The size of the output buffer to use. If less than or equal to zero, + then output buffering is disabled. The default value is -1 + (i.e. buffering disabled)

    +
    connectionTimeout +

    The number of milliseconds this Connector will wait, + after accepting a connection, for the request URI line to be + presented. The default value is infinite (i.e. no timeout).

    +
    executor +

    A reference to the name in an Executor element. + If this attribute is enabled, and the named executor exists, the connector will + use the executor, and all the other thread attributes will be ignored.

    +
    keepAliveTimeout +

    The number of milliseconds this Connector will wait for + another AJP request before closing the connection. + The default value is to use the value that has been set for the + connectionTimeout attribute.

    +
    maxThreads +

    The maximum number of request processing threads to be created + by this Connector, which therefore determines the + maximum number of simultaneous requests that can be handled. If + not specified, this attribute is set to 40. If an executor is associated + with this connector, this attribute is ignored as the connector will + execute tasks using the executor rather than an internal thread pool.

    +
    port +

    The TCP port number on which this Connector + will create a server socket and await incoming connections. Your + operating system will allow only one server application to listen + to a particular port number on a particular IP address.

    +
    tcpNoDelay +

    If set to true, the TCP_NO_DELAY option will be + set on the server socket, which improves performance under most + circumstances. This is set to true by default.

    +
    tomcatAuthentication +

    If set to true, the authetication will be done in Tomcat. + Otherwise, the authenticated principal will be propagated from the native + webaserver and used for authorization in Tomcat. + The default value is true.

    +
    + +
    + +
    Nested Components
    + +

    None at this time.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-channel.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-channel.html new file mode 100644 index 0000000..1714821 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-channel.html @@ -0,0 +1,60 @@ +Apache Tomcat Configuration Reference - The Cluster Channel object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Cluster Channel object

    Introduction
    + The cluster channel is the main component of a small framework we've nicknamed Apache Tribes.
    + The channel manages a set of sub components and together they create a group communication framework.
    + This framework is then used internally by the components that need to send messages between different Tomcat instances. +
    + A few examples of these components would be the SimpleTcpCluster that does the messaging for the DeltaManager, + or the BackupManager that uses a different replication strategy. The ReplicatedContext object does also + use the channel object to communicate context attribute changes. +
    Nested Components
    +

    Channel/Membership:
    + The Membership component is responsible for auto discovering new nodes in the cluster + and also to provide for notifications for any nodes that have not responded with a heartbeat. + The default implementation uses multicast.
    + In the membership component you configure how your nodes, aka. members, are to be discovered and/or + divided up. + You can always find out more about Apache Tribes +

    +

    Channel/Sender:
    + The Sender component manages all outbound connections and data messages that are sent + over the network from one node to another. + This component allows messages to be sent in parallel. + The default implementation uses TCP client sockets, and socket tuning for outgoing messages are + configured here.
    + You can always find out more about Apache Tribes +

    +

    Channel/Sender/Transport:
    + The Transport component is the bottom IO layer for the sender component. + The default implementation uses non-blocking TCP client sockets.
    + You can always find out more about Apache Tribes +

    +

    Channel/Receiver:
    + The receiver component listens for messages from other nodes. + Here you will configure the cluster thread pool, as it will dispatch incoming + messages to a thread pool for faster processing. + The default implementation uses non-blocking TCP server sockets.
    + You can always find out more about Apache Tribes +

    +

    Channel/Interceptor:
    + The channel will send messages through an interceptor stack. Because of this, you have the ability to + customize the way messages are sent and received, and even how membership is handled.
    + You can always find out more about Apache Tribes +

    +
    Attributes
    + +
    Common Attributes
    + +
    AttributeDescription
    className + The default value here is org.apache.catalina.tribes.group.GroupChannel and is + currently the only implementation available. +
    + + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-deployer.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-deployer.html new file mode 100644 index 0000000..caf37cf --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-deployer.html @@ -0,0 +1,21 @@ +Apache Tomcat Configuration Reference - The Cluster Deployer object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Cluster Deployer object

    Introduction
    +

    This goober is currently pretty broken, but we are working hard to fix it

    + + +
    Attributes
    + +
    Common Attributes
    + +
    AttributeDescription
    className + +
    + + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-interceptor.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-interceptor.html new file mode 100644 index 0000000..f10deb3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-interceptor.html @@ -0,0 +1,114 @@ +Apache Tomcat Configuration Reference - The Channel Interceptor object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Channel Interceptor object

    Introduction
    +

    + Apache Tribes supports an interceptor architecture to intercept both messages and membership notifications. + This architecture allows decoupling of logic and opens the way for some very kewl feature add ons. +

    +
    Available Interceptors
    +

    +

      +
    • org.apache.catalina.tribes.group.interceptors.TcpFailureDetector
    • +
    • org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.NonBlockingCoordinator
    • +
    • org.apache.catalina.tribes.group.interceptors.OrderInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.StaticMembershipInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.TwoPhaseCommitInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.DomainFilterInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.FragmentationInterceptor
    • +
    • org.apache.catalina.tribes.group.interceptors.GzipInterceptor
    • +
    +

    +
    Static Membership
    +

    + In addition to dynamic discovery, Apache Tribes also supports static membership, with membership verification. + To achieve this add the org.apache.catalina.tribes.group.interceptors.StaticMembershipInterceptor + underneath the org.apache.catalina.tribes.group.interceptors.TcpFailureDetector interceptor. + Inside the StaticMembershipInterceptor you can add the static members you wish to have. + The TcpFailureDetector will do a health check on the static members,and also monitor them for crashes + so they will have the same level of notification mechanism as the members that are automatically discovered. +

    +     <Interceptor className="org.apache.catalina.tribes.group.interceptors.StaticMembershipInterceptor">
    +       <Member className="org.apache.catalina.tribes.membership.StaticMember"
    +                  port="5678"
    +                  securePort="-1"
    +                  host="tomcat01.mydomain.com"
    +                  domain="staging-cluster"
    +                  uniqueId="{0,1,2,3,4,5,6,7,8,9}"/>
    +     </Interceptor>
    +   
    +   
    +

    +
    Attributes
    + +
    Common Attributes
    +
    AttributeDescription
    className + Required, as there is no default +
    optionFlag + If you want the interceptor to trigger on certain message depending on the message's option flag, + you can setup the interceptors flag here. + The default value is 0, meaning this interceptor will trigger on all messages. +
    +
    + +
    org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor Attributes
    +
    AttributeDescription
    className + Required, This dispatcher uses JDK 1.5 java.util.concurrent package +
    optionFlag + The default and hard coded value is 8 (org.apache.catalina.tribes.Channel.SEND_OPTIONS_ASYNCHRONOUS). + The dispatcher will trigger on this value only, as it is predefined by Tribes. +
    +
    +
    org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor Attributes
    +
    AttributeDescription
    className + Required, Same implementation as MessageDispatch15Interceptor, but with JDK 1.4 compliance. +
    optionFlag + The default and hard coded value is 8 (org.apache.catalina.tribes.Channel.SEND_OPTIONS_ASYNCHRONOUS). + The dispatcher will trigger on this value only, as it is predefined by Tribes. +
    +
    +
    org.apache.catalina.tribes.group.interceptors.TcpFailureDetector Attributes
    +
    AttributeDescription
    +
    +
    org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor Attributes
    +
    AttributeDescription
    interval + Defines the interval in number of messages when we are to report the throughput statistics. + The report is logged to the org.apache.juli.logging.LogFactory.getLog(ThroughputInterceptor.class) + logger under the INFO level. + Default value is to report every 10000 messages. +
    +
    + +
    Nested element StaticMember Attributes
    +
    AttributeDescription
    className + Only one implementation available:org.apache.catalina.tribes.membership.StaticMember +
    port + The port that this static member listens to for cluster messages +
    securePort + The secure port this static member listens to for encrypted cluster messages + default value is -1, this value means the member is not listening on a secure port +
    host + The host (or network interface) that this static member listens for cluster messages. + Three different type of values are possible:
    + 1. IP address in the form of "216.123.1.23"
    + 2. Hostnames like "tomcat01.mydomain.com" or "tomcat01" as long as they resolve correctly
    + 3. byte array in string form, for example {216,123,12,3}
    +
    domain + The logical cluster domain for this this static member listens for cluster messages. + Two different type of values are possible:
    + 1. Regular string values like "staging-domain" or "tomcat-cluster" will be converted into bytes + using ISO-8859-1 encoding. + 2. byte array in string form, for example {216,123,12,3}
    +
    uniqueId + A universally uniqueId for this static member. + The values must be 16 bytes in the following form:
    + 1. byte array in string form, for example {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}
    +
    +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-listener.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-listener.html new file mode 100644 index 0000000..0229748 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-listener.html @@ -0,0 +1,35 @@ +Apache Tomcat Configuration Reference - The ClusterListener object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The ClusterListener object

    Introduction
    +

    + The org.apache.catalina.ha.ClusterListener base class + lets you listen in on messages that are received by the Cluster component. +

    + +
    org.apache.catalina.ha.session.ClusterSessionListener
    +

    + When using the DeltaManager, the messages are received by the Cluster object and are propagated to the + to the manager through this listener. +

    +
    org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener
    +

    + Listens for session Id changes. This listener is only used if you are using mod_jk + along with the jvmRoute attribute where the session Id can change. + In the event of a change, the JvmRouteBinderValve will broadcast the + session change and it will get picked up by this listener. +

    +
    Attributes
    + +
    Common Attributes
    + +
    AttributeDescription
    className + +
    + + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-manager.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-manager.html new file mode 100644 index 0000000..49c6267 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-manager.html @@ -0,0 +1,66 @@ +Apache Tomcat Configuration Reference - The ClusterManager object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The ClusterManager object

    Introduction
    +

    + A cluster manager is an extension to Tomcat's session manager interface, + org.apache.catalina.Manager + A cluster manager must implement the org.apache.catalina.ha.ClusterManager and is solely + responsible for how the session is replicated.
    + There are currently two different managers, the org.apache.catalina.ha.session.DeltaManager replicates deltas + of session data to all members in the cluster. This implementation is proven and works very well, but has a limitation + as it requires the cluster members to be homogeneous, all nodes must deploy the same applications and be exact replicas. + The org.apache.catalina.ha.session.BackupManager also replicates deltas but only to one backup node. + The location of the backup node is known to all nodes in the cluster. It also supports heterogeneous deployments, + so the manager knows at what locations the webapp is deployed.
    + We are planning to add more managers with even more sophisticated backup mechanism to support even larger clusters. + Check back soon! +

    +
    The <Manager>
    +

    + The <Manager> element defined inside the <Cluster> element + is the template defined for all web applications that are marked <distributable/> + in their web.xml file. + However, you can still override the manager implementation on a per web application basis, + by putting the <Manager> inside the <Context> element either in the + context.xml file or the server.xml file. +

    +
    Attributes
    +
    Common Attributes
    +
    AttributeDescription
    className +
    name + The name of this cluster manager, the name is used to identify a session manager on a node. + The name might get modified by the Cluster element to make it unique in the container. +
    defaultMode + Deprecated since 6.0.0 +
    notifyListenersOnReplication + Set to true if you wish to have session listeners notified when + session attributes are being replicated or removed across Tomcat nodes in the cluster. +
    expireSessionsOnShutdown + When a webapplication is being shutdown, Tomcat issues an expire call to each session to + notify all the listeners. If you wish for all sessions to expire on all nodes when + a shutdown occurs on one node, set this value to true. + Default value is false. +
    +
    +
    org.apache.catalina.ha.session.DeltaManager Attributes
    +
    AttributeDescription
    domainReplication + Set to true if you wish sessions to be replicated only to members that have the same logical + domain set. If set to false, session replication will ignore the domain setting the + <Membership> + element. +
    expireSessionsOnShutdown + When a webapplication is being shutdown, Tomcat issues an expire call to each session to + notify all the listeners. If you wish for all sessions to expire on all nodes when + a shutdown occurs on one node, set this value to true. + Default value is false. +
    +
    +
    org.apache.catalina.ha.session.BackupManager Attributes
    +
    AttributeDescription
    mapSendOptions + The backup manager uses a replicated map, this map is sending and receiving messages. + You can setup the flag for how this map is sending messages, the default value is 8(asynchronous). +
    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-membership.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-membership.html new file mode 100644 index 0000000..a51c025 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-membership.html @@ -0,0 +1,89 @@ +Apache Tomcat Configuration Reference - The Cluster Membership object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Cluster Membership object

    Introduction
    +

    + The membership component in the Apache Tribes Channel is responsible + for dynamic discovery of other members(nodes) in the cluster. +

    +
    Default Implementation
    +

    + The default implementation of the cluster group notification is built on top of multicast heartbeats + sent using UDP packets to a multicast IP address. + Cluster members are grouped together by using the same multicast address/port combination. + Each member sends out a heartbeat with a given interval (frequency), and this + heartbeat is used for dynamic discovery. + In a similar fashion, if a heartbeat has not been received in a timeframe specified by dropTime + ms. a member is considered suspect and the channel and any membership listener will be notified. +

    +
    Attributes
    + +
    Multicast Attributes
    + +
    AttributeDescription
    className +

    + The default value is org.apache.catalina.tribes.membership.McastService + and is currently the only implementation. + This implementation uses multicast heartbeats for member discovery. +

    +
    address +

    + The multicast address that the membership will broadcast its presence and listen + for other heartbeats on. The default value is 228.0.0.4 + Make sure your network is enabled for multicast traffic.
    + The multicast address, in conjunction with the port is what + creates a cluster group. To divide up your farm into several different group, or to + split up QA from production, change the port or the address +
    Previously known as mcastAddr. +

    +
    port +

    + The multicast port, the default value is 45564
    + The multicast port, in conjunction with the address is what + creates a cluster group. To divide up your farm into several different group, or to + split up QA from production, change the port or the address +

    +
    frequency +

    + The frequency in milliseconds in which heartbeats are sent out. The default value is 500 ms.
    + In most cases the default value is sufficient. Changing this value, simply changes the interval in between heartbeats. +

    +
    dropTime +

    + The membership component will time out members and notify the Channel if a member fails to send a heartbeat within + a give time. The default value is 3000 ms. This means, that if a heartbeat is not received from a + member in that timeframe, the membership component will notify the cluster of this.
    + On a high latency network you may wish to increase this value, to protect against false positives.
    + Apache Tribes also provides a TcpFailureDetector that will + verify a timeout using a TCP connection when a heartbeat timeout has occurred. This protects against false positives. +

    +
    bind +

    + Use this attribute if you wish to bind your multicast traffic to a specific network interface. + By default, or when this attribute is unset, it tries to bind to 0.0.0.0 and sometimes on multihomed hosts + this becomes a problem. +

    +
    ttl +

    + The time-to-live setting for the multicast heartbeats. + This setting should be a value between 0 and 255. The default value is VM implementation specific. +

    +
    domain +

    + Apache Tribes has the ability to logically group members into domains, by using this domain attribute. + The org.apache.catalina.tribes.Member.getDomain() method returns the value specified here. +

    +
    soTimeout +

    + The sending and receiving of heartbeats is done on a single thread, hence to avoid blocking this thread forever, + you can control the SO_TIMEOUT value on this socket.
    + If a value smaller or equal to 0 is presented, the code will default this value to frequency +

    +
    + + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-receiver.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-receiver.html new file mode 100644 index 0000000..a25d546 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-receiver.html @@ -0,0 +1,103 @@ +Apache Tomcat Configuration Reference - The Cluster Receiver object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Cluster Receiver object

    Introduction
    +

    + The receiver component is responsible for receiving cluster messages. + As you might notice through the configuration, is that the receiving of messages + and sending of messages are two different components, this is different from many other + frameworks, but there is a good reason for it, to decouple the logic for how messages are sent from + how messages are received.
    + The receiver is very much like the Tomcat Connector, its the base of the thread pool + for incoming cluster messages. The receiver is straight forward, but all the socket settings + for incoming traffic are managed here. +

    +
    Blocking vs Non-Blocking Receiver
    +

    + The receiver supports both a non blocking, org.apache.catalina.tribes.transport.nio.NioReceiver, and a + blocking, org.apache.catalina.tribes.transport.bio.BioReceiver. It is preferred to use the non blocking receiver + to be able to grow your cluster without running into thread starvation.
    + Using the non blocking receiver allows you to with a very limited thread count to serve a large number of messages. + Usually the rule is to use 1 thread per node in the cluster for small clusters, and then depending on your message frequency + and your hardware, you'll find an optimal number of threads peak out at a certain number. +

    +
    Attributes
    +
    Common Attributes
    +
    AttributeDescription
    className + The implementation of the receiver component. Two implementations available, + org.apache.catalina.tribes.transport.nio.NioReceiver and + org.apache.catalina.tribes.transport.bio.BioReceiver.
    + The org.apache.catalina.tribes.transport.nio.NioReceiver is the + preferred implementation +
    address + The address (network interface) to listen for incoming traffic. + Same as the bind address. The default value is auto and translates to + java.net.InetAddress.getLocalHost().getHostAddress(). +
    direct + Possible values are true or false. + Set to true if you want the receiver to use direct bytebuffers when reading data + from the sockets. +
    port + The listen port for incoming data. The default value is 4000. + To avoid port conflicts the receiver will automatically bind to a free port within the range of + port <= bindPort <= port+autoBind + So for example, if port is 4000, and autoBind is set to 10, then the receiver will open up + a server socket on the first available port in the range 4000-4100. +
    autoBind + Default value is 100. + Use this value if you wish to automatically avoid port conflicts the cluster receiver will try to open a + server socket on the port attribute port, and then work up autoBind number of times. +
    securePort + The secure listen port. This port is SSL enabled. If this attribute is omitted no SSL port is opened up. + There default value is unset, meaning there is no SSL socket available. +
    selectorTimeout + The value in milliseconds for the polling timeout in the NioReceiver. On older versions of the JDK + there have been bugs, that should all now be cleared out where the selector never woke up. + The default value is a very high 5000 milliseconds. +
    maxThreads + The maximum number of threads in the receiver thread pool. The default value is 6 + Adjust this value relative to the number of nodes in the cluster, the number of messages being exchanged and + the hardware you are running on. A higher value doesn't mean more effiecency, tune this value according to your + own test results. +
    minThreads + Minimum number of threads to be created when the receiver is started up. Default value is 6 +
    ooBInline + Boolean value for the socket OOBINLINE option. Possible values are true or false. +
    rxBufSize + The receiver buffer size on the receiving sockets. Value is in bytes, the default value is 43800 bytes. +
    txBufSize + The sending buffer size on the receiving sockets. Value is in bytes, the default value is 25188 bytes. +
    soKeepAlive + Boolean value for the socket SO_KEEPALIVE option. Possible values are true or false. +
    soLingerOn + Boolean value to determine whether to use the SO_LINGER socket option. + Possible values are true or false. Default value is true. +
    soLingerTime + Sets the SO_LINGER socket option time value. The value is in seconds. + The default value is 3 seconds. +
    soReuseAddress + Boolean value for the socket SO_REUSEADDR option. Possible values are true or false. +
    soTrafficClass + Sets the traffic class level for the socket, the value is between 0 and 255. + Different values are defined in + java.net.Socket#setTrafficClass(int). +
    tcpNoDelay + Boolean value for the socket TCP_NODELAY option. Possible values are true or false. + The default value is true +
    timeout + Sets the SO_TIMEOUT option on the socket. The value is in milliseconds and the default value is 3000 + milliseconds. +
    useBufferPool + Boolean value whether to use a shared buffer pool of cached org.apache.catalina.tribes.io.XByteBuffer + objects. If set to true, the XByteBuffer that is used to pass a message up the channel, will be recycled at the end + of the requests. This means that interceptors in the channel must not maintain a reference to the object + after the org.apache.catalina.tribes.ChannelInterceptor#messageReceived method has exited. +
    +
    +
    NioReceiver
    +
    +
    BioReceiver
    +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-sender.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-sender.html new file mode 100644 index 0000000..a39ca59 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-sender.html @@ -0,0 +1,105 @@ +Apache Tomcat Configuration Reference - The Cluster Sender object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Cluster Sender object

    Introduction
    +

    + The channel sender component is responsible for delivering outgoing cluster messages over the network. + In the default implementation, org.apache.catalina.tribes.transport.ReplicationTransmitter, + the sender is a fairly empty shell with not much logic around a fairly complex <Transport> + component the implements the actual delivery mechanism. +

    +
    Concurrent Parallel Delivery
    +

    + In the default transport implementation, org.apache.catalina.tribes.transport.nio.PooledParallelSender, + Apache Tribes implements what we like to call "Concurrent Parallel Delivery". + This means that we can send a message to more than one destination at the same time(parallel), and + deliver two messages to the same destination at the same time(concurrent). Combine these two and we have + "Concurrent Parallel Delivery". +

    +

    + When is this useful? The simplest example we can think of is when part of your code is sending a 10MB message, + like a war file being deployed, and you need to push through a small 10KB message, say a session being replicated, + you don't have to wait for the 10MB message to finish, as a separate thread will push in the small message + transmission at the same time. Currently there is no interrupt, pause or priority mechanism avaiable, but check back soon. +

    +
    Nested Elements
    +

    + The nested element <Transport> is is not required, by encouraged, as this is where + you would set all the socket options for the outgoing messages. Please see its attributes below. + There are two implementations, in a similar manner to the receiver, one is non-blocking + based and the other is built using blocking IO.
    + org.apache.catalina.tribes.transport.bio.PooledMultiSender is the blocking implemenation and + org.apache.catalina.tribes.transport.nio.PooledParallelSender. + Parallel delivery is not available for the blocking implementation due to the fact that it is blocking a thread on sending data. +

    +
    Attributes
    +
    Common Sender Attributes
    +
    AttributeDescription
    className + Required, only available implementation is org.apache.catalina.tribes.transport.ReplicationTransmitter +
    +
    +
    Common Transport Attributes
    +
    AttributeDescription
    className + Required, an implementation of the org.apache.catalina.tribes.transport.MultiPointSender.
    + Non-blocking implementation is org.apache.catalina.tribes.transport.nio.PooledParallelSender
    + Blocking implementation is org.apache.catalina.tribes.transport.bio.PooledMultiSender +
    rxBufSize + The receive buffer size on the socket. + Default value is 25188 bytes. +
    txBufSize + The send buffer size on the socket. + Default value is 43800 bytes. +
    direct + Possible values are true or false. + Set to true if you want the receiver to use direct bytebuffers when reading data + from the sockets. Default value is false +
    keepAliveCount + The number of requests that can go through the socket before the socket is closed, and reopened + for the next request. The default value is -1, which is unlimited. +
    keepAliveTime + The number of milliseconds a connection is kept open after its been opened. + The default value is -1, which is unlimited. +
    timeout + Sets the SO_TIMEOUT option on the socket. The value is in milliseconds and the default value is 3000 + milliseconds. +
    maxRetryAttempts + How many times do we retry a failed message, that received a IOException at the socket level. + The default value is 1, meaning we will retry a message that has failed once. + In other words, we will attempt a message send no more than twice. One is the original send, and one is the + maxRetryAttempts. +
    ooBInline + Boolean value for the socket OOBINLINE option. Possible values are true or false. +
    soKeepAlive + Boolean value for the socket SO_KEEPALIVE option. Possible values are true or false. +
    soLingerOn + Boolean value to determine whether to use the SO_LINGER socket option. + Possible values are true or false. Default value is true. +
    soLingerTime + Sets the SO_LINGER socket option time value. The value is in seconds. + The default value is 3 seconds. +
    soReuseAddress + Boolean value for the socket SO_REUSEADDR option. Possible values are true or false. +
    soTrafficClass + Sets the traffic class level for the socket, the value is between 0 and 255. + Default value is int soTrafficClass = 0x04 | 0x08 | 0x010; + Different values are defined in + java.net.Socket#setTrafficClass(int). +
    tcpNoDelay + Boolean value for the socket TCP_NODELAY option. Possible values are true or false. + The default value is true +
    throwOnFailedAck + Boolean value, default value is true. + If set to true, the sender will throw a org.apache.catalina.tribes.RemoteProcessException + when we receive a negative ack from the remote member. + Set to false, and Tribes will treat a positive ack the same way as a negative ack, that the message was received. +
    +
    +
    PooledParallelSender Attributes
    +
    AttributeDescription
    poolSize + The maximum number of concurrent connections from A to B. + The value is based on a per-destination count. + The default value is 25 +
    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-valve.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-valve.html new file mode 100644 index 0000000..2a11c7d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster-valve.html @@ -0,0 +1,56 @@ +Apache Tomcat Configuration Reference - The Cluster Valve object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Cluster Valve object

    Introduction
    +

    + A cluster valve is no different from any other Tomcat Valve. + The cluster valves are interceptors in the invokation chain for HTTP requests, and the clustering implementation + uses these valves to make intelligent decision around data and when data should be replicated. +

    +

    + A cluster valve must implement the org.apache.catalina.ha.ClusterValve interface. + This is a simple interface that extends the org.apache.catalina.Valve interface. +

    +
    org.apache.catalina.ha.tcp.ReplicationValve
    + The ReplicationValve will notify the cluster at the end of a HTTP request + so that the cluster can make a decision whether there is data to be replicated or not. +
    Attributes
    +
    AttributeDescription
    className + Set value to org.apache.catalina.ha.tcp.ReplicationValve +
    filter + For known file extensions or urls, you can use a filter to + notify the cluster that the session has not been modified during this + request and the cluster doesn't have to probe the session managers for changes. + If there is a filter match, the cluster assumes there has been no session change. + An example filter would look like filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;" + The filter uses regular expressions and each filter is delimited by a semi colon. + Pattern#compile(java.lang.String) +
    primaryIndicator + Boolean value, so to true, and the replication valve will insert a request attribute with the name + defined by the primaryIndicatorName attribute. + The value inserted into the request attribute is either Boolean.TRUE or + Boolean.FALSE +
    primaryIndicatorName + Default value is org.apache.catalina.ha.tcp.isPrimarySession + The value defined here is the name of the request attribute that contains the boolean value + if the session is primary on this server or not. +
    statistics + Boolean value. Set to true if you want the valve to collect request statistics. + Default value is false +
    +
    +
    org.apache.catalina.ha.session.JvmRouteBinderValve
    + In case of a mod_jk failover, the JvmRouteBinderValve will replace the + jvmWorker attribute in the session Id, to make future requests stick to this + node. If you want failback capability, don't enable this valve, but if you want your failover to stick, + and for mod_jk not to have to keep probing the node that went down, you use this valve. +
    Attributes
    +
    AttributeDescription
    className + org.apache.catalina.ha.session.JvmRouteBinderValve +
    enabled + Default value is true + Runtime attribute to turn on and off turn over of the session's jvmRoute value. +
    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster.html new file mode 100644 index 0000000..557a8a6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/cluster.html @@ -0,0 +1,106 @@ +Apache Tomcat Configuration Reference - The Cluster object
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Cluster object

    Introduction
    +

    + The tomcat cluster implementation provides session replication, context attribute replication and + cluster wide WAR file deployment. + While the Cluster configuration is fairly complex, the default configuration will work + for most people out of the box.

    + The Tomcat Cluster implementation is very extensible, and hence we have exposed a myriad of options, + making the configuration seem like a lot, but don't lose faith, instead you have a tremendous control + over what is going on.

    +
    Engine vs Host placement
    +

    + You can place the <Cluster> element inside either the <Engine> + container or the <Host> container.
    + Placing it in the engine, means that you will support clustering in all virtual hosts of Tomcat, + and share the messaging component. When you place the <Cluster> inside the <Engine> + element, the cluster will append the host name of each session manager to the managers name so that two contexts with + the same name but sitting inside two different hosts will be distinguishable. +

    +
    Context Attribute Replication
    +

    To configure context attribute replication, simply do this by swapping out the context implementation + used for your application context. +

    <Context className="org.apache.catalina.ha.context.ReplicatedContext"/>
    + This context extends the Tomcat StandardContext + so all the options from the base implementation are valid. +

    +
    Nested Components
    +

    Manager:
    + The session manager element identifies what kind of session manager is used in this cluster implementation. + This manager configuration is identical to the one you would use in a regular <Context> configuration. +
    The default value is the org.apache.catalina.ha.session.DeltaManager that is closely coupled with + the SimpleTcpCluster implementation. Other managers like the org.apache.catalina.ha.session.BackupManager + are/could be loosely coupled and don't rely on the SimpleTcpCluster for its data replication. +

    +

    Channel:
    + The Channel and its sub components are all part of the IO layer + for the cluster group, and is a module in it's own that we have nick named "Tribes" +
    + Any configuring and tuning of the network layer, the messaging and the membership logic + will be done in the channel and its nested components. + You can always find out more about Apache Tribes +

    +

    Valve:
    + The Tomcat Cluster implementation uses Tomcat Valves to + track when requests enter and exit the servlet container. It uses these valves to be able to make + intelligent decisions on when to replicate data, which is always at the end of a request. +

    +

    Deployer:
    + The Deployer component is the Tomcat Farm Deployer. It allows you to deploy and undeploy applications + cluster wide. +

    +

    ClusterListener:
    + ClusterListener's are used to track messages sent and received using the SimpleTcpCluster. + If you wish to track messages, you can add a listener here, or you can add a valve to the channel object. +

    +
    Deprecated configuration options
    +

    + Deprecated settings: In the previous version of Tomcat you were able to control session + manager settings using manager.<property>=value. + This has been discontinued, as the way it was written interfers with + the ability to support multiple different manager classes under one cluster implementation, + as the same properties might have the different effect on different managers. +

    +
    Attributes
    +
    SimpleTcpCluster Attributes
    +
    AttributeDescription
    className +

    The main cluster class, currently only one is available, + org.apache.catalina.ha.tcp.SimpleTcpCluster +

    +
    channelSendOptions +

    The Tribes channel send options, default is 11.
    + This option is used to set the flag that all messages sent through the + SimpleTcpCluster uses. The flag decides how the messages are sent, and is a simple logical OR.
    + +

    +        int options= Channel.SEND_OPTIONS_ASYNCHRONOUS | 
    +                     Channel.SEND_OPTIONS_SYNCHRONIZED_ACK | 
    +                     Channel.SEND_OPTIONS_USE_ACK;
    +      
    + Some of the values are:
    + Channel.SEND_OPTIONS_SYNCHRONIZED_ACK = 0x0004
    + Channel.SEND_OPTIONS_ASYNCHRONOUS = 0x0008
    + Channel.SEND_OPTIONS_USE_ACK = 0x0002
    + So to use ACK and ASYNC messaging, the flag would be 10 (8+2) or 0x000B
    +

    +
    heartbeatBackgroundEnabled +

    Enable this flag don't forget to disable the channel heartbeat thread. +

    +
    doClusterLog +

    Deprecated since 6.0.0

    +

    Possible values are true or false
    + Value is inherited from Tomcat 5.5 and has no official meaning. + to configure logging, use the standard tomcat logging configuration. +

    +
    clusterLogName +

    Deprecated since 6.0.0

    +

    + Value is inherited from Tomcat 5.5 and has no official meaning. + to configure logging, use the standard tomcat logging configuration. +

    +
    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/context.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/context.html new file mode 100644 index 0000000..991d2d6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/context.html @@ -0,0 +1,665 @@ +Apache Tomcat Configuration Reference - The Context Container
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Context Container

    Introduction
    + +

    The Context element represents a web + application, which is run within a particular virtual host. + Each web application is based on a Web Application Archive + (WAR) file, or a corresponding directory containing the corresponding + unpacked contents, as described in the Servlet Specification (version + 2.2 or later). For more information about web application archives, + you can download the + Servlet + Specification, and review the Tomcat + Application Developer's Guide.

    + +

    The web application used to process each HTTP request is selected + by Catalina based on matching the longest possible prefix of the + Request URI against the context path of each defined Context. + Once selected, that Context will select an appropriate servlet to + process the incoming request, according to the servlet mappings defined + in the web application deployment descriptor file (which MUST + be located at /WEB-INF/web.xml within the web app's + directory hierarchy).

    + +

    You may define as many Context elements as you + wish. Each such Context MUST have a unique context path. In + addition, a Context must be present with a context path equal to + a zero-length string. This Context becomes the default + web application for this virtual host, and is used to process all + requests that do not match any other Context's context path.

    + +

    For Tomcat 6, unlike Tomcat 4.x, it is NOT recommended to place + <Context> elements directly in the server.xml file. This + is because it makes modifing the Context configuration + more invasive since the main conf/server.xml file cannot be + reloaded without restarting Tomcat.

    + +

    Context elements may be explicitly defined: +

      +
    • in the $CATALINA_HOME/conf/context.xml file: + the Context element information will be loaded by all webapps
    • +
    • in the + $CATALINA_HOME/conf/[enginename]/[hostname]/context.xml.default + file: the Context element information will be loaded by all webapps of that + host
    • +
    • in individual files (with a ".xml" extension) in the + $CATALINA_HOME/conf/[enginename]/[hostname]/ directory. + The name of the file (less the .xml) extension will be used as the + context path. Multi-level context paths may be defined using #, e.g. + context#path.xml. The default web application may be defined + by using a file called ROOT.xml.
    • +
    • if the previous file was not found for this application, in an individual + file at /META-INF/context.xml inside the application files
    • +
    • inside a Host element in the main + conf/server.xml
    • +
    +

    + +

    In addition to explicitly specified Context elements, there are + several techniques by which Context elements can be created automatically + for you. See + Automatic Application Deployment and + User Web Applications + for more information.

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 5, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 5 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Context + support the following attributes:

    + +
    AttributeDescription
    backgroundProcessorDelay +

    This value represents the delay in seconds between the + invocation of the backgroundProcess method on this context and + its child containers, including all wrappers. + Child containers will not be invoked if their delay value is not + negative (which would mean they are using their own processing + thread). Setting this to a positive value will cause + a thread to be spawn. After waiting the specified amount of time, + the thread will invoke the backgroundProcess method on this host + and all its child containers. A context will use background + processing to perform session expiration and class monitoring for + reloading. If not specified, the default value for this attribute is + -1, which means the context will rely on the background processing + thread of its parent host.

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Context interface. + If not specified, the standard value (defined below) will be used.

    +
    cookies +

    Set to true if you want cookies to be used for + session identifier communication if supported by the client (this + is the default). Set to false if you want to disable + the use of cookies for session identifier communication, and rely + only on URL rewriting by the application.

    +
    crossContext +

    Set to true if you want calls within this application + to ServletContext.getContext() to successfully return a + request dispatcher for other web applications running on this virtual + host. Set to false (the default) in security + conscious environments, to make getContext() always + return null.

    +
    docBase +

    The Document Base (also known as the Context + Root) directory for this web application, or the pathname + to the web application archive file (if this web application is + being executed directly from the WAR file). You may specify + an absolute pathname for this directory or WAR file, or a pathname + that is relative to the appBase directory of the + owning Host.

    +
    override +

    Set to true to have explicit settings in this + Context element override any corresponding settings in the + DefaultContext element associated + with our owning Host. By default, settings + in the DefaultContext element will be used.

    +

    If a symbolic link is used for docBase then changes to the + symbolic link will only be effective after a Tomcat restart or + by undeploying and redeploying the conext. A context reload is not + sufficient.

    +
    privileged +

    Set to true to allow this context to use container + servlets, like the manager servlet.

    +
    path +

    The context path of this web application, which is + matched against the beginning of each request URI to select the + appropriate web application for processing. All of the context paths + within a particular Host must be unique. + If you specify a context path of an empty string (""), you are + defining the default web application for this Host, which + will process all requests not assigned to other Contexts. The value of + this field must not be set except when statically defining a Context in + server.xml, as it will be inferred from the filenames used for either the + .xml context file or the docBase.

    +
    reloadable +

    Set to true if you want Catalina to monitor classes in + /WEB-INF/classes/ and /WEB-INF/lib for + changes, and automatically reload the web application if a change + is detected. This feature is very useful during application + development, but it requires significant runtime overhead and is + not recommended for use on deployed production applications. That's + why the default setting for this attribute is false. You + can use the Manager web + application, however, to trigger reloads of deployed applications + on demand.

    +
    wrapperClass +

    Java class name of the org.apache.catalina.Wrapper + implementation class that will be used for servlets managed by this + Context. If not specified, a standard default value will be used.

    +
    + +
    + + +
    Standard Implementation
    + +

    The standard implementation of Context is + org.apache.catalina.core.StandardContext. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    allowLinking +

    If the value of this flag is true, symlinks will be + allowed inside the web application, pointing to resources outside the + web application base path. If not specified, the default value + of the flag is false.

    +

    NOTE: This flag MUST NOT be set to true on the Windows platform + (or any other OS which does not have a case sensitive filesystem), + as it will disable case sensitivity checks, allowing JSP source code + disclosure, among other security problems.

    +
    antiJARLocking +

    If true, the Tomcat classloader will take extra measures to avoid + JAR file locking when resources are accessed inside JARs through URLs. + This will impact startup time of applications, but could prove to be useful + on platforms or configurations where file locking can occur. + If not specified, the default value is false.

    +
    antiResourceLocking +

    If true, Tomcat will prevent any file locking. + This will significantly impact startup time of applications, + but allows full webapp hot deploy and undeploy on platforms + or configurations where file locking can occur. + If not specified, the default value is false.

    + +

    Please note that setting this to true has some side effects, + including the disabling of JSP reloading in a running server: see + Bugzilla 37668. +

    + +

    + Please note that setting this flag to true in applications that are + outside the appBase for the Host (the webapps directory + by default) will cause the application to be + deleted on Tomcat shutdown. You probably don't want to + do this, so think twice before setting antiResourceLocking=true on a webapp + that's outside the appBase for its Host. +

    +
    cacheMaxSize +

    Maximum size of the static resource cache in kilobytes. + If not specified, the default value is 10240 + (10 megabytes).

    +
    cacheTTL +

    Amount of time in milliseconds between cache entries revalidation. + If not specified, the default value is 5000 + (5 seconds).

    +
    cachingAllowed +

    If the value of this flag is true, the cache for static + resources will be used. If not specified, the default value + of the flag is true.

    +
    caseSensitive +

    If the value of this flag is true, all case sensitivity + checks will be disabled. If not + specified, the default value of the flag is true.

    +

    NOTE: This flag MUST NOT be set to false on the Windows platform + (or any other OS which does not have a case sensitive filesystem), + as it will disable case sensitivity checks, allowing JSP source code + disclosure, among other security problems.

    +
    processTlds +

    Whether the context should process TLDs on startup. The default + is true. The false setting is intended for special cases + that know in advance TLDs are not part of the webapp.

    +
    swallowOutput +

    If the value of this flag is true, the bytes output to + System.out and System.err by the web application will be redirected to + the web application logger. If not specified, the default value + of the flag is false.

    +
    tldNamespaceAware +

    If the value of this flag is true, the TLD files + XML validation will be namespace-aware. If you turn this flag on, + you should probably also turn tldValidation on. The + default value for this flag is false, and setting it + to true will incur a performance penalty. +

    +
    tldValidation +

    If the value of this flag is true, the TLD files + will be XML validated on context startup. The default value for + this flag is false, and setting it to true will incur + a performance penalty.

    +
    unloadDelay +

    Amount of ms that the container will wait for servlets to unload. + If not specified, the default value of the flag is 2000 + ms.

    +
    unpackWAR +

    If true, Tomcat will unpack all compressed web applications before + running them. + If not specified, the default value is true.

    +
    useNaming +

    Set to true (the default) to have Catalina enable a + JNDI InitialContext for this web application that is + compatible with Java2 Enterprise Edition (J2EE) platform + conventions.

    +
    workDir +

    Pathname to a scratch directory to be provided by this Context + for temporary read-write use by servlets within the associated web + application. This directory will be made visible to servlets in the + web application by a servlet context attribute (of type + java.io.File) named + javax.servlet.context.tempdir as described in the + Servlet Specification. If not specified, a suitable directory + underneath $CATALINA_HOME/work will be provided.

    +
    + +
    + + +
    Nested Components
    + +

    You can nest at most one instance of the following utility components + by nesting a corresponding element inside your Context + element:

    +
      +
    • Loader - + Configure the web application class loader that will be used to load + servlet and bean classes for this web application. Normally, the + default configuration of the class loader will be sufficient.
    • +
    • Manager - + Configure the session manager that will be used to create, destroy, + and persist HTTP sessions for this web application. Normally, the + default configuration of the session manager will be sufficient.
    • +
    • Realm - + Configure a realm that will allow its + database of users, and their associated roles, to be utilized solely + for this particular web application. If not specified, this web + application will utilize the Realm associated with the owning + Host or Engine.
    • +
    • Resources - + Configure the resource manager that will be used to access the static + resources associated with this web application. Normally, the + default configuration of the resource manager will be sufficient.
    • +
    • WatchedResource - The auto deployer will monitor the + specified static resource of the web application for updates, and will + reload the web application if is is updated. The content of this element + must be a string.
    • +
    + +
    Special Features
    + + +
    Logging
    + +

    A context is associated with the + org.apache.catalina.core.ContainerBase.[enginename].[hostname].[path] + log category. Note that the brackets are actually part of the name, don't omit them.

    + +
    + + +
    Access Logs
    + +

    When you run a web server, one of the output files normally generated + is an access log, which generates one line of information for + each request processed by the server, in a standard format. Catalina + includes an optional Valve implementation that + can create access logs in the same standard format created by web servers, + or in any number of custom formats.

    + +

    You can ask Catalina to create an access log for all requests + processed by an Engine, + Host, or Context + by nesting a Valve element like this:

    + +
    +<Context path="/examples" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.AccessLogValve"
    +         prefix="localhost_access_log." suffix=".txt"
    +         pattern="common"/>
    +  ...
    +</Context>
    +
    + +

    See Access Log Valve + for more information on the configuration attributes that are + supported.

    + +
    + + +
    Automatic Context Configuration
    + +

    If you use the standard Context implementation, + the following configuration steps occur automtically when Catalina + is started, or whenever this web application is reloaded. No special + configuration is required to enable this feature.

    + +
      +
    • If you have not declared your own Loader + element, a standard web application class loader will be configured. +
    • +
    • If you have not declared your own Manager + element, a standard session manager will be configured.
    • +
    • If you have not declared your own Resources + element, a standard resources manager will be configured.
    • +
    • The web application properties listed in conf/web.xml + will be processed as defaults for this web application. This is used + to establish default mappings (such as mapping the *.jsp + extension to the corresponding JSP servlet), and other standard + features that apply to all web applications.
    • +
    • The web application properties listed in the + /WEB-INF/web.xml resource for this web application + will be processed (if this resource exists).
    • +
    • If your web application has specified security constraints that might + require user authentication, an appropriate Authenticator that + implements the login method you have selected will be configured.
    • +
    + +
    + + +
    Context Parameters
    + +

    You can configure named values that will be made visible to the + web application as servlet context initialization parameters by nesting + <Parameter> elements inside this element. For + example, you can create an initialization parameter like this:

    +
    +<Context ...>
    +  ...
    +  <Parameter name="companyName" value="My Company, Incorporated"
    +         override="false"/>
    +  ...
    +</Context>
    +
    + +

    This is equivalent to the inclusion of the following element in the + web application deployment descriptor (/WEB-INF/web.xml): +

    +
    +<context-param>
    +  <param-name>companyName</param-name>
    +  <param-value>My Company, Incorporated</param-value>
    +</context-param>
    +
    +

    but does not require modification of the deployment descriptor + to customize this value.

    + +

    The valid attributes for a <Parameter> element + are as follows:

    + +
    AttributeDescription
    description +

    Optional, human-readable description of this context + initialization parameter.

    +
    name +

    The name of the context initialization parameter to be created.

    +
    override +

    Set this to false if you do not want + a <context-param> for the same parameter name, + found in the web application deployment descriptor, to override the + value specified here. By default, overrides are allowed.

    +
    value +

    The parameter value that will be presented to the application + when requested by calling + ServletContext.getInitParameter().

    +
    + +
    + + +
    Environment Entries
    + +

    You can configure named values that will be made visible to the + web application as environment entry resources, by nesting + <Environment> entries inside this element. For + example, you can create an environment entry like this:

    +
    +<Context ...>
    +  ...
    +  <Environment name="maxExemptions" value="10"
    +         type="java.lang.Integer" override="false"/>
    +  ...
    +</Context>
    +
    + +

    This is equivalent to the inclusion of the following element in the + web application deployment descriptor (/WEB-INF/web.xml): +

    +
    +<env-entry>
    +  <env-entry-name>maxExemptions</param-name>
    +  <env-entry-value>10</env-entry-value>
    +  <env-entry-type>java.lang.Integer</env-entry-type>
    +</env-entry>
    +
    +

    but does not require modification of the deployment descriptor + to customize this value.

    + +

    The valid attributes for an <Environment> element + are as follows:

    + +
    AttributeDescription
    description +

    Optional, human-readable description of this environment entry.

    +
    name +

    The name of the environment entry to be created, relative to the + java:comp/env context.

    +
    override +

    Set this to false if you do not want + an <env-entry> for the same environment entry name, + found in the web application deployment descriptor, to override the + value specified here. By default, overrides are allowed.

    +
    type +

    The fully qualified Java class name expected by the web application + for this environment entry. Must be one of the legal values for + <env-entry-type> in the web application deployment + descriptor: java.lang.Boolean, + java.lang.Byte, java.lang.Character, + java.lang.Double, java.lang.Float, + java.lang.Integer, java.lang.Long, + java.lang.Short, or java.lang.String.

    +
    value +

    The parameter value that will be presented to the application + when requested from the JNDI context. This value must be convertable + to the Java type defined by the type attribute.

    +
    + +
    + + +
    Lifecycle Listeners
    + +

    If you have implemented a Java object that needs to know when this + Context is started or stopped, you can declare it by + nesting a Listener element inside this element. The + class name you specify must implement the + org.apache.catalina.LifecycleListener interface, and + it will be notified about the occurrence of the coresponding + lifecycle events. Configuration of such a listener looks like this:

    + +
    +<Context path="/examples" ...>
    +  ...
    +  <Listener className="com.mycompany.mypackage.MyListener" ... >
    +  ...
    +</Context>
    +
    + +

    Note that a Listener can have any number of additional properties + that may be configured from this element. Attribute names are matched + to corresponding JavaBean property names using the standard property + method naming patterns.

    + +
    + + +
    Request Filters
    + +

    You can ask Catalina to check the IP address, or host name, on every + incoming request directed to the surrounding + Engine, Host, or + Context element. The remote address or name + will be checked against a configured list of "accept" and/or "deny" + filters, which are defined using the Regular Expression syntax supported + by the Jakarta Regexp + regular expression library. Requests that come from locations that are + not accepted will be rejected with an HTTP "Forbidden" error. + Example filter declarations:

    + +
    +<Context path="/examples" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.RemoteHostValve"
    +         allow="*.mycompany.com,www.yourcompany.com"/>
    +  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    +         deny="192.168.1.*"/>
    +  ...
    +</Context>
    +
    + +

    See Remote Address Filter + and Remote Host Filter for + more information about the configuration options that are supported.

    + +
    + + +
    Resource Definitions
    + +

    You can declare the characteristics of the resource + to be returned for JNDI lookups of <resource-ref> and + <resource-env-ref> elements in the web application + deployment descriptor. You MUST also define + the needed resource parameters as attributes of the Resource + element, to configure the object factory to be used (if not known to Tomcat + already), and the properties used to configure that object factory.

    + +

    For example, you can create a resource definition like this:

    +
    +<Context ...>
    +  ...
    +  <Resource name="jdbc/EmployeeDB" auth="Container"
    +            type="javax.sql.DataSource"
    +     description="Employees Database for HR Applications"/>
    +  ...
    +</Context>
    +
    + +

    This is equivalent to the inclusion of the following element in the + web application deployment descriptor (/WEB-INF/web.xml):

    +
    +<resource-ref>
    +  <description>Employees Database for HR Applications</description>
    +  <res-ref-name>jdbc/EmployeeDB</res-ref-name>
    +  <res-ref-type>javax.sql.DataSource</res-ref-type>
    +  <res-auth>Container</res-auth>
    +</resource-ref>
    +
    + +

    but does not require modification of the deployment + descriptor to customize this value.

    + +

    The valid attributes for a <Resource> element + are as follows:

    + +
    AttributeDescription
    auth +

    Specify whether the web Application code signs on to the + corresponding resource manager programatically, or whether the + Container will sign on to the resource manager on behalf of the + application. The value of this attribute must be + Application or Container. This + attribute is required if the web application + will use a <resource-ref> element in the web + application deployment descriptor, but is optional if the + application uses a <resource-env-ref> instead.

    +
    description +

    Optional, human-readable description of this resource.

    +
    name +

    The name of the resource to be created, relative to the + java:comp/env context.

    +
    scope +

    Specify whether connections obtained through this resource + manager can be shared. The value of this attribute must be + Shareable or Unshareable. By default, + connections are assumed to be shareable.

    +
    type +

    The fully qualified Java class name expected by the web + application when it performs a lookup for this resource.

    +
    + + +
    + + +
    Resource Links
    + +

    This element is used to create a link to a global JNDI resource. Doing + a JNDI lookup on the link name will then return the linked global + resource.

    + +

    For example, you can create a resource link like this:

    +
    +<Context ...>
    +  ...
    +  <ResourceLink name="linkToGlobalResource"
    +            global="simpleValue"
    +            type="java.lang.Integer"
    +  ...
    +</Context>
    +
    + +

    The valid attributes for a <ResourceLink> element + are as follows:

    + +
    AttributeDescription
    global +

    The name of the linked global resource in the + global JNDI context.

    +
    name +

    The name of the resource link to be created, relative to the + java:comp/env context.

    +
    type +

    The fully qualified Java class name expected by the web + application when it performs a lookup for this resource link.

    +
    + +
    + +
    Transaction
    + +

    You can declare the characteristics of the UserTransaction + to be returned for JNDI lookup for java:comp/UserTransaction. + You MUST define an object factory class to instantiate + this object as well as the needed resource parameters as attributes of the + Transaction + element, and the properties used to configure that object factory.

    + +

    The valid attributes for the <Transaction> element + are as follows:

    + +
    AttributeDescription
    factory +

    The class name for the JNDI object factory.

    +
    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/engine.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/engine.html new file mode 100644 index 0000000..e53a61a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/engine.html @@ -0,0 +1,202 @@ +Apache Tomcat Configuration Reference - The Engine Container
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Engine Container

    Introduction
    + +

    The Engine element represents the entire request + processing machinery associated with a particular Catalina + Service. It receives and processes + all requests from one or more Connectors, + and returns the completed response to the Connector for ultimate + transmission back to the client.

    + +

    Exactly one Engine element MUST be nested inside + a Service element, following all of the + corresponding Connector elements associated with this Service.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Engine + support the following attributes:

    + +
    AttributeDescription
    backgroundProcessorDelay +

    This value represents the delay in seconds between the + invocation of the backgroundProcess method on this engine and + its child containers, including all hosts and contexts. + Child containers will not be invoked if their delay value is not + negative (which would mean they are using their own processing + thread). Setting this to a positive value will cause + a thread to be spawn. After waiting the specified amount of time, + the thread will invoke the backgroundProcess method on this engine + and all its child containers. If not specified, the default value for + this attribute is 10, which represent a 10 seconds delay.

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Engine interface. + If not specified, the standard value (defined below) will be used.

    +
    defaultHost +

    The default host name, which identifies the + Host that will process requests directed + to host names on this server, but which are not configured in + this configuration file. This name MUST match the name + attributes of one of the Host elements + nested immediately inside.

    +
    jvmRoute +

    Identifier which must be used in load balancing scenarios to enable + session affinity. The identifier, which must be unique across all + Tomcat 5 servers which participate in the cluster, will be appended to + the generated session identifier, therefore allowing the front end + proxy to always forward a particular session to the same Tomcat 5 + instance.

    +
    name +

    Logical name of this Engine, used in log and error messages. When + using muliple Service elements in the same + Server, each Engine MUST be assigned a unique + name.

    +
    + +
    + + +
    Standard Implementation
    + +

    The standard implementation of Engine is + org.apache.catalina.core.StandardEngine. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    + +
    + + +
    Nested Components
    + +

    You can nest one or more Host elements inside + this Engine element, each representing a different virtual + host associated with this server. At least one Host + is required, and one of the nested Hosts MUST + have a name that matches the name specified for the + defaultHost attribute, listed above.

    + +

    You can optional nest a DefaultContext + element inside this Engine element, to define the default + characteristics of web applications that are automatically deployed.

    + +

    You can nest at most one instance of the following utility components + by nesting a corresponding element inside your Engine + element:

    +
      +
    • Realm - + Configure a realm that will allow its + database of users, and their associated roles, to be shared across all + Hosts and Contexts + nested inside this Engine, unless overridden by a + Realm configuration at a lower level.
    • +
    + +
    Special Features
    + + +
    Logging
    + +

    An engine is associated with the + org.apache.catalina.core.ContainerBase.[enginename] + log category. Note that the brackets are actually part of the name, + don't omit them.

    + +
    + + +
    Access Logs
    + +

    When you run a web server, one of the output files normally generated + is an access log, which generates one line of information for + each request processed by the server, in a standard format. Catalina + includes an optional Valve implementation that + can create access logs in the same standard format created by web servers, + or in any number of custom formats.

    + +

    You can ask Catalina to create an access log for all requests + processed by an Engine, + Host, or Context + by nesting a Valve element like this:

    + +
    +<Engine name="Standalone" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.AccessLogValve"
    +         prefix="catalina_access_log." suffix=".txt"
    +         pattern="common"/>
    +  ...
    +</Engine>
    +
    + +

    See Access Log Valve + for more information on the configuration attributes that are + supported.

    + +
    + + +
    Lifecycle Listeners
    + +

    If you have implemented a Java object that needs to know when this + Engine is started or stopped, you can declare it by + nesting a Listener element inside this element. The + class name you specify must implement the + org.apache.catalina.LifecycleListener interface, and + it will be notified about the occurrence of the coresponding + lifecycle events. Configuration of such a listener looks like this:

    + +
    +<Engine name="Standalone" ...>
    +  ...
    +  <Listener className="com.mycompany.mypackage.MyListener" ... >
    +  ...
    +</Engine>
    +
    + +

    Note that a Listener can have any number of additional properties + that may be configured from this element. Attribute names are matched + to corresponding JavaBean property names using the standard property + method naming patterns.

    + +
    + + +
    Request Filters
    + +

    You can ask Catalina to check the IP address, or host name, on every + incoming request directed to the surrounding + Engine, Host, or + Context element. The remote address or name + will be checked against a configured list of "accept" and/or "deny" + filters, which are defined using the Regular Expression syntax supported + by the Jakarta Regexp + regular expression library. Requests that come from locations that are + not accepted will be rejected with an HTTP "Forbidden" error. + Example filter declarations:

    + +
    +<Engine name="Standalone" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.RemoteHostValve"
    +         allow="*.mycompany.com,www.yourcompany.com"/>
    +  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    +         deny="192.168.1.*"/>
    +  ...
    +</Engine>
    +
    + +

    See Remote Address Filter + and Remote Host Filter for + more information about the configuration options that are supported.

    + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/executor.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/executor.html new file mode 100644 index 0000000..b4e4bcc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/executor.html @@ -0,0 +1,61 @@ +Apache Tomcat Configuration Reference - The Executor (thread pool)
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Executor (thread pool)

    Introduction
    + +

    The Executor represents a thread pool that can be shared + between components in Tomcat. Historically there has been a thread pool per + connector created but this allows you to share a thread pool, between (primarly) connector + but also other components when those get configured to support executors

    + + +

    The executor has to implement the org.apache.catalina.Executor interface.

    + +

    The executor is a nested element to the Service element. + And in order for it to be picked up by the connectors, the Executor element has to appear + prior to the Connector element in server.xml

    +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Executor + support the following attributes:

    + +
    AttributeDescription
    className +

    The class of the implementation. The implementation has to implement the + org.apache.catalina.Executor interface. + This interface ensures that the object can be referenced through its name attribute + and that implements Lifecycle, so that it can be started and stopped with the container. + The default value for the className is org.apache.catalina.core.StandardThreadExecutor

    +
    name +

    The name used to reference this pool in other places in server.xml. + The name is required and must be unique.

    +
    + +
    + +
    Standard Implementation
    + +

    + The default implementation supports the following attributes:

    + +
    AttributeDescription
    threadPriority +

    (int) The thread priority for threads in the executor, the default is Thread.NORM_PRIORITY

    +
    daemon +

    (boolean) Whether the threads should be daemon threads or not, the default is true

    +
    namePrefix +

    (String) The name prefix for each thread created by the executor. + The thread name for an individual thread will be namePrefix+threadNumber

    +
    maxThreads +

    (int) The max number of active threads in this pool, default is 200

    +
    minSpareThreads +

    (int) The minimum number of threads always kept alive, default is 25

    +
    maxIdleTime +

    (int) The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less + or equal to minSpareThreads. Default value is 60000(1 minute)

    +
    + + +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/globalresources.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/globalresources.html new file mode 100644 index 0000000..7d3269d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/globalresources.html @@ -0,0 +1,198 @@ +Apache Tomcat Configuration Reference - The GlobalNamingResources Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The GlobalNamingResources Component

    Introduction
    + +

    The GlobalNamingResources element defines the global + JNDI resources for the Server.

    + +

    These resources are listed in the server's global JNDI resource context. + This context is distinct from the per-web-application JNDI contexts + described in + the JNDI Resources HOW-TO. + The resources defined in this element are not visible in + the per-web-application contexts unless you explicitly link them with + <ResourceLink> elements. +

    + +
    Attributes
    + +
    Nested Components
    + +
    Special Features
    + + +
    Environment Entries
    + +

    You can configure named values that will be made visible to all + web applications as environment entry resources by nesting + <Environment> entries inside this element. For + example, you can create an environment entry like this:

    +
    +<GlobalNamingResources ...>
    +  ...
    +  <Environment name="maxExemptions" value="10"
    +         type="java.lang.Integer" override="false"/>
    +  ...
    +</GlobalNamingResources>
    +
    + +

    This is equivalent to the inclusion of the following element in the + web application deployment descriptor (/WEB-INF/web.xml): +

    +
    +<env-entry>
    +  <env-entry-name>maxExemptions</env-entry-name>
    +  <env-entry-value>10</env-entry-value>
    +  <env-entry-type>java.lang.Integer</env-entry-type>
    +</env-entry>
    +
    +

    but does not require modification of the deployment descriptor + to customize this value.

    + +

    The valid attributes for an <Environment> element + are as follows:

    + +
    AttributeDescription
    description +

    Optional, human-readable description of this environment entry.

    +
    name +

    The name of the environment entry to be created, relative to the + java:comp/env context.

    +
    override +

    Set this to false if you do not want + an <env-entry> for the same environment entry name, + found in the web application deployment descriptor, to override the + value specified here. By default, overrides are allowed.

    +
    type +

    The fully qualified Java class name expected by the web application + for this environment entry. Must be one of the legal values for + <env-entry-type> in the web application deployment + descriptor: java.lang.Boolean, + java.lang.Byte, java.lang.Character, + java.lang.Double, java.lang.Float, + java.lang.Integer, java.lang.Long, + java.lang.Short, or java.lang.String.

    +
    value +

    The parameter value that will be presented to the application + when requested from the JNDI context. This value must be convertable + to the Java type defined by the type attribute.

    +
    + +
    + + +
    Resource Definitions
    + +

    You can declare the characteristics of resources + to be returned for JNDI lookups of <resource-ref> and + <resource-env-ref> elements in the web application + deployment descriptor by defining them in this element and then linking + them with <ResourceLink> + elements + in the <Context> element. + + You MUST also define any other needed parameters using + attributes on the Resource element, to configure + the object factory to be used (if not known to Tomcat already), and + the properties used to configure that object factory.

    + +

    For example, you can create a resource definition like this:

    +
    +<GlobalNamingResources ...>
    +  ...
    +  <Resource name="jdbc/EmployeeDB" auth="Container"
    +            type="javax.sql.DataSource"
    +     description="Employees Database for HR Applications"/>
    +  ...
    +</GlobalNamingResources>
    +
    + +

    This is equivalent to the inclusion of the following element in the + web application deployment descriptor (/WEB-INF/web.xml):

    +
    +<resource-ref>
    +  <description>Employees Database for HR Applications</description>
    +  <res-ref-name>jdbc/EmployeeDB</res-ref-name>
    +  <res-ref-type>javax.sql.DataSource</res-ref-type>
    +  <res-auth>Container</res-auth>
    +</resource-ref>
    +
    + +

    but does not require modification of the deployment + descriptor to customize this value.

    + +

    The valid attriutes for a <Resource> element + are as follows:

    + +
    AttributeDescription
    auth +

    Specify whether the web Application code signs on to the + corresponding resource manager programatically, or whether the + Container will sign on to the resource manager on behalf of the + application. The value of this attribute must be + Application or Container. This + attribute is required if the web application + will use a <resource-ref> element in the web + application deployment descriptor, but is optional if the + application uses a <resource-env-ref> instead.

    +
    description +

    Optional, human-readable description of this resource.

    +
    name +

    The name of the resource to be created, relative to the + java:comp/env context.

    +
    scope +

    Specify whether connections obtained through this resource + manager can be shared. The value of this attribute must be + Shareable or Unshareable. By default, + connections are assumed to be shareable.

    +
    type +

    The fully qualified Java class name expected by the web + application when it performs a lookup for this resource.

    +
    + + +
    + +
    Resource Links
    +

    Use <ResourceLink> + elements to link resources from the global context into + per-web-application contexts. Here is an example of making a custom + factory available to all applications in the server, based on the example + definition in the + + JNDI Resource HOW-TO: +

    + +
    +      
    +        <DefaultContext>
    +          <ResourceLink 
    +            name="bean/MyBeanFactory"
    +            global="bean/MyBeanFactory"
    +            type="com.mycompany.MyBean"
    +          />
    +        </DefaultContext>
    +      
    +    
    + +
    + +
    Transaction
    + +

    You can declare the characteristics of the UserTransaction + to be returned for JNDI lookup for java:comp/UserTransaction. + You MUST define an object factory class to instantiate + this object as well as the needed resource parameters as attributes of the + Transaction + element, and the properties used to configure that object factory.

    + +

    The valid attributes for the <Transaction> element + are as follows:

    + +
    AttributeDescription
    factory +

    The class name for the JNDI object factory.

    +
    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/host.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/host.html new file mode 100644 index 0000000..11c2bb8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/host.html @@ -0,0 +1,482 @@ +Apache Tomcat Configuration Reference - The Host Container
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Host Container

    Introduction
    + +

    The Host element represents a virtual host, + which is an association of a network name for a server (such as + "www.mycompany.com" with the particular server on which Catalina is + running. In order to be effective, this name must be registered in the + Domain Name Service (DNS) server that manages the Internet + domain you belong to - contact your Network Administrator for more + information.

    + +

    In many cases, System Administrators wish to associate more than + one network name (such as www.mycompany.com and + company.com) with the same virtual host and applications. + This can be accomplished using the Host + Name Aliases feature discussed below.

    + +

    One or more Host elements are nested inside an + Engine element. Inside the Host element, you + can nest Context elements for the web + applications associated with this virtual host. Exactly one of the Hosts + associated with each Engine MUST have a name matching the + defaultHost attribute of that Engine.

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Host + support the following attributes:

    + +
    AttributeDescription
    appBase +

    The Application Base directory for this virtual host. + This is the pathname of a directory that may contain web applications + to be deployed on this virtual host. You may specify an + absolute pathname for this directory, or a pathname that is relative + to the $CATALINA_BASE directory. See + Automatic Application + Deployment for more information on automatic recognition and + deployment of web applications to be deployed automatically.

    +
    autoDeploy +

    This flag value indicates if new web applications, dropped in to + the appBase directory while Tomcat is running, should + be automatically deployed. The flag's value defaults to true. See + Automatic Application + Deployment for more information.

    +
    backgroundProcessorDelay +

    This value represents the delay in seconds between the + invocation of the backgroundProcess method on this host and + its child containers, including all contexts. + Child containers will not be invoked if their delay value is not + negative (which would mean they are using their own processing + thread). Setting this to a positive value will cause + a thread to be spawn. After waiting the specified amount of time, + the thread will invoke the backgroundProcess method on this host + and all its child containers. A host will use background processing to + perform live web application deployment related tasks. If not + specified, the default value for this attribute is -1, which means + the host will rely on the background processing thread of its parent + engine.

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Host interface. + If not specified, the standard value (defined below) will be used.

    +
    deployOnStartup +

    This flag value indicates if web applications from this host should + be automatically deployed by the host configurator. + The flag's value defaults to true. See + Automatic Application + Deployment for more information.

    +
    name +

    Network name of this virtual host, as registered in your + Domain Name Service server. One of the Hosts nested within + an Engine MUST have a name that matches the + defaultHost setting for that Engine. See + Host Name Aliases for information + on how to assign more than one network name to the same + virtual host.

    +
    + +
    + + +
    Standard Implementation
    + +

    The standard implementation of Host is + org.apache.catalina.core.StandardHost. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    deployXML +

    Set to false if you want to disable parsing the context.xml + file embedded inside the application (located at /META-INF/context.xml). + Security consious environments should set this to false to prevent + applications from interacting with the container's configuration. The + administrator will then be responsible for providing an external context + configuration file, and put it in + $CATALINA_HOME/conf/[enginename]/[hostname]/. + The flag's value defaults to true.

    +
    errorReportValveClass +

    Java class name of the error reporting valve which will be used + by this Host. The responsability of this valve is to output error + reports. Setting this property allows to customize the look of the + error pages which will be generated by Tomcat. This class must + implement the + org.apache.catalina.Valve interface. If none is specified, + the value org.apache.catalina.valves.ErrorReportValve + will be used by default.

    +
    unpackWARs +

    Set to true if you want web applications that are + placed in the appBase directory as web application + archive (WAR) files to be unpacked into a corresponding disk directory + structure, false to run such web applications directly + from a WAR file. See + Automatic Application + Deployment for more information.

    +
    workDir +

    Pathname to a scratch directory to be used by applications for + this Host. Each application will have its own sub directory with + temporary read-write use. Configuring a Context workDir will override + use of the Host workDir configuration. This directory will be made + visible to servlets in the web application by a servlet context + attribute (of type java.io.File) named + javax.servlet.context.tempdir as described in the + Servlet Specification. If not specified, a suitable directory + underneath $CATALINA_HOME/work will be provided.

    +
    + +
    + + +
    Nested Components
    + +

    You can nest one or more Context elements + inside this Host element, each representing a different web + application associated with this virtual host.

    + +

    You can nest at most one instance of the following utility components + by nesting a corresponding element inside your Host + element:

    +
      +
    • Realm - + Configure a realm that will allow its + database of users, and their associated roles, to be shared across all + Contexts nested inside this Host (unless + overridden by a Realm configuration + at a lower level).
    • +
    + +
    Special Features
    + + +
    Logging
    + +

    A host is associated with the + org.apache.catalina.core.ContainerBase.[enginename].[hostname] + log category. Note that the brackets are actuall part of the name, + don't omit them.

    + +
    + + +
    Access Logs
    + +

    When you run a web server, one of the output files normally generated + is an access log, which generates one line of information for + each request processed by the server, in a standard format. Catalina + includes an optional Valve implementation that + can create access logs in the same standard format created by web servers, + or in any number of custom formats.

    + +

    You can ask Catalina to create an access log for all requests + processed by an Engine, + Host, or Context + by nesting a Valve element like this:

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.AccessLogValve"
    +         prefix="localhost_access_log." suffix=".txt"
    +         pattern="common"/>
    +  ...
    +</Host>
    +
    + +

    See Access Log Valve + for more information on the configuration attributes that are + supported.

    + +
    + + +
    Automatic Application Deployment
    + +

    If you are using the standard Host implementation, + the following actions take place automatically when Catalina is first + started, if the deployOnStartup property is set to + true (which is the default value):

    +
      +
    • Any XML file in the + $CATALINA_HOME/conf/[engine_name]/[host_name] directory is + assumed to contain a + Context element (and its associated + subelements) for a single web application. The docBase + attribute of this <Context> element will typically + be the absolute pathname to a web application directory, or the + absolute pathname of a web application archive (WAR) file (which + will not be expanded). The path attribute will be automatically set + as defined in the Context documentation.
    • +
    • Any web application archive file within the application base (appBase) + directory that does not have a corresponding + directory of the same name (without the ".war" extension) will be + automatically expanded, unless the unpackWARs property + is set to false. If you redeploy an updated WAR file, + be sure to delete the expanded directory when restarting Tomcat, so + that the updated WAR file will be re-expanded (note that the auto + deployer, if enabled, will automatically expand the updated WAR file + once the previously expanded directory is removed).
    • +
    • Any subdirectory within the application base directory + will receive an automatically generated + Context element, even if this directory is not mentioned in the + conf/server.xml file. + This generated Context entry will be configured according to the + properties set in any DefaultContext + element nested in this Host element. The context path for this + deployed Context will be a slash character ("/") followed by the + directory name, unless the directory name is ROOT, in which case + the context path will be an empty string ("").
    • +
    + +

    In addition to the automatic deployment that occurs at startup time, + you can also request that new XML configuration files, WAR files, or + subdirectories that are dropped in to the appBase (or + $CATALINA_HOME/conf/[engine_name]/[host_name] in the case of + an XML configuration file) directory while Tomcat is running will be + automatically deployed, according to the rules described above. The + auto deployer will also track web applications for the following changes: +

      +
    • An update to the WEB-INF/web.xml file will trigger a reload of the + web application
    • +
    • An update to a WAR which has been expanded will trigger + an undeploy (with a removal of the expanded webapp), + followed by a deployment
    • +
    • An update to a XML configuration file will trigger an undeploy + (without the removal of any expanded directory), followed by + a deployment of the associated web application
    • +
    +

    + +

    When using automatic deployment, the docBase defined by + an XML Context file should be outside of the + appBase directory. If this is not the case difficulties + may be experienced deploying the web application or the application may + be deployed twice.

    + +

    Finally, note that if you are defining contexts explicitly, you should + probably turn off automatic application deployment. Otherwise, your context + will be deployed twice each, and that may cause problems for your app. +

    + +
    + + +
    Host Name Aliases
    + +

    In many server environments, Network Administrators have configured + more than one network name (in the Domain Name Service (DNS) + server), that resolve to the IP address of the same server. Normally, + each such network name would be configured as a separate + Host element in conf/server.xml, each + with its own set of web applications.

    + +

    However, in some circumstances, it is desireable that two or more + network names should resolve to the same virtual host, + running the same set of applications. A common use case for this + scenario is a corporate web site, where it is desireable that users + be able to utilize either www.mycompany.com or + company.com to access exactly the same content and + applications.

    + +

    This is accomplished by utilizing one or more Alias + elements nested inside your Host element. For + example:

    +
    +<Host name="www.mycompany.com" ...>
    +  ...
    +  <Alias>mycompany.com</Alias>
    +  ...
    +</Host>
    +
    + +

    In order for this strategy to be effective, all of the network names + involved must be registered in your DNS server to resolve to the + same computer that is running this instance of Catalina.

    + +
    + + +
    Lifecycle Listeners
    + +

    If you have implemented a Java object that needs to know when this + Host is started or stopped, you can declare it by + nesting a Listener element inside this element. The + class name you specify must implement the + org.apache.catalina.LifecycleListener interface, and + it will be notified about the occurrence of the coresponding + lifecycle events. Configuration of such a listener looks like this:

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Listener className="com.mycompany.mypackage.MyListener" ... >
    +  ...
    +</Host>
    +
    + +

    Note that a Listener can have any number of additional properties + that may be configured from this element. Attribute names are matched + to corresponding JavaBean property names using the standard property + method naming patterns.

    + +
    + + +
    Request Filters
    + +

    You can ask Catalina to check the IP address, or host name, on every + incoming request directed to the surrounding + Engine, Host, or + Context element. The remote address or name + will be checked against a configured list of "accept" and/or "deny" + filters, which are defined using the Regular Expression syntax supported + by the Jakarta Regexp + regular expression library. Requests that come from locations that are + not accepted will be rejected with an HTTP "Forbidden" error. + Example filter declarations:

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Valve className="org.apache.catalina.valves.RemoteHostValve"
    +         allow="*.mycompany.com,www.yourcompany.com"/>
    +  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    +         deny="192.168.1.*"/>
    +  ...
    +</Host>
    +
    + +

    See Remote Address Filter + and Remote Host Filter for + more information about the configuration options that are supported.

    + +
    + + +
    Single Sign On
    + +

    In many environments, but particularly in portal environments, it + is desireable to have a user challenged to authenticate themselves only + once over a set of web applications deployed on a particular virtual + host. This can be accomplished by nesting an element like this inside + the Host element for this virtual host:

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Valve className="org.apache.catalina.authenticator.SingleSignOn"
    +         debug="0"/>
    +  ...
    +</Host>
    +
    + +

    The Single Sign On facility operates according to the following rules: +

    +
      +
    • All web applications configured for this virtual host must share the + same Realm. In practice, that means you can + nest the Realm element inside this Host element (or the surrounding + Engine element), but not inside a + Context element for one of the involved + web applications.
    • +
    • As long as the user accesses only unprotected resources in any of the + web applications on this virtual host, they will not be challenged + to authenticate themselves.
    • +
    • As soon as the user accesses a protected resource in + any web application associated with this virtual + host, the user will be challenged to authenticate himself or herself, + using the login method defined for the web application currently + being accessed.
    • +
    • Once authenticated, the roles associated with this user will be + utilized for access control decisions across all + of the associated web applications, without challenging the user + to authenticate themselves to each application individually.
    • +
    • As soon as the user logs out of one web application (for example, + by invalidating the corresponding session if form + based login is used), the user's sessions in all + web applications will be invalidated. Any subsequent attempt to + access a protected resource in any application will require the + user to authenticate himself or herself again.
    • +
    • The Single Sign On feature utilizes HTTP cookies to transmit a token + that associates each request with the saved user identity, so it can + only be utilized in client environments that support cookies.
    • +
    + +
    + + +
    User Web Applications
    + +

    Many web servers can automatically map a request URI starting with + a tilde character ("~") and a username to a directory (commonly named + public_html) in that user's home directory on the server. + You can accomplish the same thing in Catalina by using a special + Listener element like this (on a Unix system that + uses the /etc/passwd file to identify valid users):

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Listener className="org.apache.catalina.startup.UserConfig"
    +            directoryName="public_html"
    +            userClass="org.apache.catalina.startup.PasswdUserDatabase"/>
    +  ...
    +</Host>
    +
    + +

    On a server where /etc/passwd is not in use, you can + request Catalina to consider all directories found in a specified base + directory (such as c:\Homes in this example) to be + considered "user home" directories for the purposes of this directive:

    + +
    +<Host name="localhost" ...>
    +  ...
    +  <Listener className="org.apache.catalina.startup.UserConfig"
    +            directoryName="public_html"
    +            homeBase=c:\Homes"
    +            userClass="org.apache.catalina.startup.HomesUserDatabase"/>
    +  ...
    +</Host>
    +
    + +

    If a user home directory has been set up for a user named + craigmcc, then its contents will be visible from a + client browser by making a request to a URL like:

    + +
    +http://www.mycompany.com:8080/~craigmcc
    +
    + +

    Successful use of this feature requires recognition of the following + considerations:

    +
      +
    • Each user web application will be deployed with characteristics + established by any DefaultContext + element you have configured for this Host.
    • +
    • It is legal to include more than one instance of this Listener + element. This would only be useful, however, in circumstances + where you wanted to configure more than one "homeBase" directory.
    • +
    • The operating system username under which Catalina is executed + MUST have read access to each user's web application directory, + and all of its contents.
    • +
    + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/http.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/http.html new file mode 100644 index 0000000..1c90d90 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/http.html @@ -0,0 +1,552 @@ +Apache Tomcat Configuration Reference - The HTTP Connector
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The HTTP Connector

    Introduction
    + +

    The HTTP Connector element represents a + Connector component that supports the HTTP/1.1 protocol. + It enables Catalina to function as a stand-alone web server, in addition + to its ability to execute servlets and JSP pages. A particular instance + of this component listens for connections on a specific TCP port number + on the server. One or more such Connectors can be + configured as part of a single Service, each + forwarding to the associated Engine to perform + request processing and create the response.

    + +

    If you wish to configure the Connector that is used + for connections to web servers using the AJP protocol (such as the + mod_jk 1.2.x connector for Apache 1.3), see + here instead.

    + +

    Each incoming request requires + a thread for the duration of that request. If more simultaneous requests + are received than can be handled by the currently available request + processing threads, additional threads will be created up to the + configured maximum (the value of the maxThreads attribute). + If still more simultaneous requests are received, they are stacked up + inside the server socket created by the Connector, up to + the configured maximum (the value of the acceptCount + attribute. Any further simultaneous requests will receive "connection + refused" errors, until resources are available to process them.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Connector + support the following attributes:

    + +
    AttributeDescription
    allowTrace +

    A boolean value which can be used to enable or disable the TRACE + HTTP method. If not specified, this attribute is set to false.

    +
    emptySessionPath +

    If set to true, all paths for session cookies will be set + to /. This can be useful for portlet specification implementations, + but will greatly affect performance if many applications are accessed on a given + server by the client. + If not specified, this attribute is set to false.

    +
    enableLookups +

    Set to true if you want calls to + request.getRemoteHost() to perform DNS lookups in + order to return the actual host name of the remote client. Set + to false to skip the DNS lookup and return the IP + address in String form instead (thereby improving performance). + By default, DNS lookups are enabled.

    +
    maxPostSize +

    The maximum size in bytes of the POST which will be handled by + the container FORM URL parameter parsing. The limit can be disabled by + setting this attribute to a value less than or equal to 0. + If not specified, this attribute is set to 2097152 (2 megabytes).

    +
    maxSavePostSize +

    The maximum size in bytes of the POST which will be saved/buffered by + the container during FORM or CLIENT-CERT authentication. For both types + of authentication, the POST will be saved/buffered before the user is + authenticated. For CLIENT-CERT authentication, the POST is buffered for + the duration of + the SSL handshake and the buffer emptied when the request + is processed. For FORM authentication the POST is + saved whilst the user + is re-directed to the login form and is retained until the user + successfully authenticates or the session associated with the + authentication request expires. The limit can be disabled by setting this + attribute to -1. Setting the attribute to + zero will disable the saving of + POST data during authentication +. If not + specified, this attribute is set + to + 4096 (4 kilobytes).

    +
    protocol +

    + Sets the protocol to handle incoming traffic. + The default value is HTTP/1.1 and configures the + org.apache.coyote.http11.Http11Protocol. This is the blocking Java connector.
    + If the PATH(Windows) or LD_LIBRARY_PATH(on most unix system) + environment variables contain the Tomcat native library, the APR connector + will automatically be configured. Please be advised that the APR connector has different + settings for HTTPS than the default Java connector.
    + Other values for this attribute are, but not limited to:
    + org.apache.coyote.http11.Http11Protocol - same as HTTP/1.1
    + org.apache.coyote.http11.Http11NioProtocol - non blocking Java connector
    + org.apache.coyote.http11.Http11AprProtocol - the APR connector.
    + Take a look at our Connector Comparison chart. + The configuration for both Java connectors are identical, both for http and https.
    + For more information on the APR connector and APR specific SSL settings please + visit the APR documentation + +

    +
    proxyName +

    If this Connector is being used in a proxy + configuration, configure this attribute to specify the server name + to be returned for calls to request.getServerName(). + See Proxy Support for more + information.

    +
    proxyPort +

    If this Connector is being used in a proxy + configuration, configure this attribute to specify the server port + to be returned for calls to request.getServerPort(). + See Proxy Support for more + information.

    +
    redirectPort +

    If this Connector is supporting non-SSL + requests, and a request is received for which a matching + <security-constraint> requires SSL transport, + Catalina will automatically redirect the request to the port + number specified here.

    +
    SSLEnabled +

    + Use this attribute to enable SSL traffic on a connector. + To turn on SSL handshake/encryption/decryption on a connector + set this value to true. + The default value is false. + When turning this value true you will want to set the + scheme and the secure attributes as well + to pass the correct request.getScheme() and + request.isSecure() values to the servlets + See SSL Support for more information. +

    +
    scheme +

    Set this attribute to the name of the protocol you wish to have + returned by calls to request.getScheme(). For + example, you would set this attribute to "https" + for an SSL Connector. The default value is "http". +

    +
    secure +

    Set this attribute to true if you wish to have + calls to request.isSecure() to return true + for requests received by this Connector. You would want this on an + SSL Connector or a non SSL connector that is receiving data from a + SSL accelerator, like a crypto card, a SSL appliance or even a webserver. + The default value is false.

    +
    URIEncoding +

    This specifies the character encoding used to decode the URI bytes, + after %xx decoding the URL. If not specified, ISO-8859-1 will be used. +

    +
    useBodyEncodingForURI +

    This specifies if the encoding specified in contentType should be used + for URI query parameters, instead of using the URIEncoding. This + setting is present for compatibility with Tomcat 4.1.x, where the + encoding specified in the contentType, or explicitely set using + Request.setCharacterEncoding method was also used for the parameters from + the URL. The default value is false. +

    +
    useIPVHosts +

    Set this attribute to true to cause Tomcat to use + the IP address that the request was recieved on to determine the Host + to send the request to. The default value is false.

    +
    xpoweredBy +

    Set this attribute to true to cause Tomcat to advertise + support for the Servlet specification using the header recommended in the + specification. The default value is false.

    +
    + +
    + +
    Standard Implementation
    + +

    + HTTP supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    acceptCount +

    The maximum queue length for incoming connection requests when + all possible request processing threads are in use. Any requests + received when the queue is full will be refused. The default + value is 10.

    +
    address +

    For servers with more than one IP address, this attribute + specifies which address will be used for listening on the specified + port. By default, this port will be used on all IP addresses + associated with the server.

    +
    bufferSize +

    The size (in bytes) of the buffer to be provided for input + streams created by this connector. By default, buffers of + 2048 bytes will be provided.

    +
    compressableMimeType +

    The value is a comma separated list of MIME types for which HTTP + compression may be used. + The default value is text/html,text/xml,text/plain.

    +
    compression +

    The Connector may use HTTP/1.1 GZIP compression in + an attempt to save server bandwidth. The acceptable values for the + parameter is "off" (disable compression), "on" (allow compression, which + causes text data to be compressed), "force" (forces compression in all + cases), or a numerical integer value (which is equivalent to "on", but + specifies the minimum amount of data before the output is compressed). If + the content-length is not known and compression is set to "on" or more + aggressive, the output will also be compressed. If not specified, this + attribute is set to "off".

    +
    connectionLinger +

    The number of milliseconds during which the sockets used by this + Connector will linger when they are closed. + The default value is -1 (socket linger is disabled).

    +
    connectionTimeout +

    The number of milliseconds this Connector will wait, + after accepting a connection, for the request URI line to be + presented. The default value is 60000 (i.e. 60 seconds).

    +
    executor +

    A reference to the name in an Executor element. + If this attribute is enabled, and the named executor exists, the connector will + use the executor, and all the other thread attributes will be ignored.

    +
    keepAliveTimeout +

    The number of milliseconds this Connector will wait for + another HTTP request before closing the connection. + The default value is to use the value that has been set for the + connectionTimeout attribute.

    +
    disableUploadTimeout +

    This flag allows the servlet container to use a different, longer + connection timeout while a servlet is being executed, which in the end + allows either the servlet a longer amount of time to complete its + execution, or a longer timeout during data upload. If not specified, + this attribute is set to "true".

    +
    maxHttpHeaderSize +

    The maximum size of the request and response HTTP header, specified + in bytes. + If not specified, this attribute is set to 4096 (4 KB).

    +
    maxKeepAliveRequests +

    The maximum number of HTTP requests which can be pipelined until + the connection is closed by the server. Setting this attribute to 1 will + disable HTTP/1.0 keep-alive, as well as HTTP/1.1 keep-alive and + pipelining. Setting this to -1 will allow an unlimited amount of + pipelined or keep-alive HTTP requests. + If not specified, this attribute is set to 100.

    +
    maxThreads +

    The maximum number of request processing threads to be created + by this Connector, which therefore determines the + maximum number of simultaneous requests that can be handled. If + not specified, this attribute is set to 40. If an executor is associated + with this connector, this attribute is ignored as the connector will + execute tasks using the executor rather than an internal thread pool.

    +
    noCompressionUserAgents +

    The value is a comma separated list of regular expressions matching + user-agents of HTTP clients for which compression should not be used, + because these clients, although they do advertise support for the + feature, have a broken implementation. + The default value is an empty String (regexp matching disabled).

    +
    port +

    The TCP port number on which this Connector + will create a server socket and await incoming connections. Your + operating system will allow only one server application to listen + to a particular port number on a particular IP address.

    +
    restrictedUserAgents +

    The value is a comma separated list of regular expressions matching + user-agents of HTTP clients for which HTTP/1.1 or HTTP/1.0 keep alive + should not be used, even if the clients advertise support for these + features. + The default value is an empty String (regexp matching disabled).

    +
    server +

    The Server header for the http response. + Unless you are paranoid, you won't need this feature. +

    +
    socketBuffer +

    The size (in bytes) of the buffer to be provided for socket + output buffering. -1 can be specified to disable the use of a buffer. + By default, a buffers of 9000 bytes will be used.

    +
    tcpNoDelay +

    If set to true, the TCP_NO_DELAY option will be + set on the server socket, which improves performance under most + circumstances. This is set to true by default.

    +
    threadPriority +

    The priority of the request processing threads within the JVM. + The default value is java.lang.Thread#NORM_PRIORITY. + See the JavaDoc for the java.lang.Thread class for more details on + what this priority means. +

    +
    + +
    + +
    Nio Implementation
    + +

    The NIO connector exposes all the low level socket properties that can be used to tune the connector. + Most of these attributes are directly linked to the socket implementation in the JDK so you can find out + about the actual meaning in the JDK API documentation.
    + NoteOn some JDK versions, setTrafficClass causes a problem, a work around for this is to add + the -Djava.net.preferIPv4Stack=true value to your command line

    + +
    AttributeDescription
    useSendfile +

    (bool)Use this attribute to enable or disable sendfile capability. + The default value is true +

    +
    useExecutor +

    (bool)Set to true to use the NIO thread pool executor. The default value is true. + If set to false, it uses a thread pool based on a stack for its execution. + Generally, using the executor yields a little bit slower performance, but yields a better + fairness for processing connections in a high load environment as the traffic gets queued through a + FIFO queue. If set to true(default) then the max pool size is the maxThreads attribute + and the core pool size is the minSpareThreads. + This value is ignored if the executor attribute is present and points to a valid shared thread pool. +

    +
    acceptorThreadCount +

    (int)The number of threads to be used to accept connections. Increase this value on a multi CPU machine, + although you would never really need more than 2. Also, with a lot of non keep alive connections, + you might want to increase this value as well. Default value is 1.

    +
    pollerThreadCount +

    (int)The number of threads to be used to run for the polling events. Default value is 1. + Can't see a reason to go above that. But experiment and find your own results.

    +
    pollerThreadPriority +

    (int)The priority of the poller threads. + The default value is java.lang.Thread#NORM_PRIORITY. + See the JavaDoc for the java.lang.Thread class for more details on + what this priority means. +

    +
    acceptorThreadPriority +

    (int)The priority of the acceptor threads. The threads used to accept new connections. + The default value is java.lang.Thread#NORM_PRIORITY. + See the JavaDoc for the java.lang.Thread class for more details on + what this priority means. +

    +
    selectorTimeout +

    (int)The time in milliseconds to timeout on a select() for the poller. + This value is important, since connection clean up is done on the same thread, so dont set this + value to an extremely high one. The default value is 1000 milliseconds.

    +
    useComet +

    (bool)Whether to allow comet servlets or not, Default value is true.

    +
    processCache +

    (int)The protocol handler caches Http11NioProcessor objects to speed up performance. + This setting dictates how many of these objects get cached. + -1 means unlimited, default is 200. Set this value somewhere close to your maxThreads value. +

    +
    socket.directBuffer +

    (bool)Boolean value, whether to use direct ByteBuffers or java mapped ByteBuffers. Default is false +
    When you are using direct buffers, make sure you allocate the appropriate amount of memory for the + direct memory space. On Sun's JDK that would be something like -XX:MaxDirectMemorySize=256m

    +
    socket.rxBufSize +

    (int)The socket receive buffer (SO_RCVBUF) size in bytes. Default value is 25188

    +
    socket.txBufSize +

    (int)The socket send buffer (SO_SNDBUF) size in bytes. Default value is 43800

    +
    socket.appReadBufSize +

    (int)Each connection that is opened up in Tomcat get associated with a read and a write ByteBuffer + This attribute controls the size of these buffers. By default this read buffer is sized at 8192 bytes. + For lower concurrency, you can increase this to buffer more data. + For an extreme amount of keep alive connections, decrease this number or increase your heap size.

    +
    socket.appWriteBufSize +

    (int)Each connection that is opened up in Tomcat get associated with a read and a write ByteBuffer + This attribute controls the size of these buffers. By default this write buffer is sized at 8192 bytes. + For low concurrency you can increase this to buffer more response data. + For an extreme amount of keep alive connections, decrease this number or increase your heap size. +
    + The default value here is pretty low, you should up it if you are not dealing with tens of thousands + concurrent connections.

    +
    socket.bufferPool +

    (int)The Nio connector uses a class called NioChannel that holds elements linked to a socket. + To reduce garbage collection, the Nio connector caches these channel objects. + This value specifies the size of this cache. + The default value is 500, and represents that the cache will hold 500 NioChannel objects. + Other values are -1. unlimited cache, and 0, no cache.

    +
    socket.bufferPoolSize +

    (int)The NioChannel pool can also be size based, not used object based. The size is calculated as follows:
    + NioChannel buffer size = read buffer size + write buffer size
    + SecureNioChannel buffer size = application read buffer size + application write buffer size + network read buffer size + network write buffer size
    + The value is in bytes, the default value is 1024*1024*100 (100MB) +

    +
    socket.processorCache +

    (int)Tomcat will cache SocketProcessor objects to reduce garbage collection. + The integer value specifies how many objects to keep in the cache at most. + The default is 500. + Other values are -1. unlimited cache, and 0, no cache.

    +
    socket.keyCache +

    (int)Tomcat will cache KeyAttachment objects to reduce garbage collection. + The integer value specifies how many objects to keep in the cache at most. + The default is 500. + Other values are -1. unlimited cache, and 0, no cache.

    +
    socket.eventCache +

    (int)Tomcat will cache PollerEvent objects to reduce garbage collection. + The integer value specifies how many objects to keep in the cache at most. + The default is 500. + Other values are -1. unlimited cache, and 0, no cache.

    +
    socket.tcpNoDelay +

    (bool)same as the standard setting tcpNoDelay. Default value is false

    +
    socket.soKeepAlive +

    (bool)Boolean value for the socket's keep alive setting (SO_KEEPALIVE). Default is false.

    +
    socket.ooBInline +

    (bool)Boolean value for the socket OOBINLINE setting. Default value is true

    +
    socket.soReuseAddress +

    (bool)Boolean value for the sockets reuse address option (SO_REUSEADDR). Default value is true

    +
    socket.soLingerOn +

    (bool)Boolean value for the sockets so linger option (SO_LINGER). Default value is true. + This option is paired with the soLingerTime value.

    +
    socket.soLingerTime +

    (bool)Value in seconds for the sockets so linger option (SO_LINGER). Default value is 25 seconds. + This option is paired with the soLinger value.

    +
    socket.soTimeout +

    (int)Value in milliseconds for the sockets read timeout (SO_TIMEOUT). Default value is 5000 milliseconds.

    +
    socket.soTrafficClass +

    (byte)Value between 0 and 255 for the traffic class on the socket, 0x04 | 0x08 | 0x010

    +
    socket.performanceConnectionTime +

    (int)The first value for the performance settings. Default is 1, see Socket Performance Options

    +
    socket.performanceLatency +

    (int)The second value for the performance settings. Default is 0, see Socket Performance Options

    +
    socket.performanceBandwidth +

    (int)The third value for the performance settings. Default is 1, see Socket Performance Options

    +
    selectorPool.maxSelectors +

    (int)The max selectors to be used in the pool, to reduce selector contention. + Use this option when the command line org.apache.tomcat.util.net.NioSelectorShared value is set to false. + Default value is 200.

    +
    selectorPool.maxSpareSelectors +

    (int)The max spare selectors to be used in the pool, to reduce selector contention. + When a selector is returned to the pool, the system can decide to keep it or let it be GC:ed. + Use this option when the command line org.apache.tomcat.util.net.NioSelectorShared value is set to false. + Default value is -1 (unlimited)

    +
    command-line-options +

    The following command line options are available for the NIO connector:
    + -Dorg.apache.tomcat.util.net.NioSelectorShared=true|false - default is true. + Set this value to false if you wish to use a selector for each thread. + the property. If you do set it to false, you can control the size of the pool of selectors by using the + selectorPool.maxSelectors attribute

    +
    oomParachute +

    (int)The NIO connector implements an OutOfMemoryError strategy called parachute. + It holds a chunk of data as a byte array. In case of an OOM, + this chunk of data is released and the error is reported. This will give the VM enough room + to clean up. The oomParachute represent the size in bytes of the parachute(the byte array). + The default value is 1024*1024(1MB). + Please note, this only works for OOM errors regarding the Java Heap space, and there is absolutely no + guarantee that you will be able to recover at all. + If you have an OOM outside of the Java Heap, then this parachute trick will not help. +

    +
    +
    + +
    Nested Components
    + +

    None at this time.

    + +
    Special Features
    + + +
    HTTP/1.1 and HTTP/1.0 Support
    + +

    This Connector supports all of the required features + of the HTTP/1.1 protocol, as described in RFC 2616, including persistent + connections, pipelining, expectations and chunked encoding. If the client + (typically a browser) supports only HTTP/1.0, the + Connector will gracefully fall back to supporting this + protocol as well. No special configuration is required to enable this + support. The Connector also supports HTTP/1.0 + keep-alive.

    + +

    RFC 2616 requires that HTTP servers always begin their responses with + the highest HTTP version that they claim to support. Therefore, this + Connector will always return HTTP/1.1 at + the beginning of its responses.

    + +
    + + +
    Proxy Support
    + +

    The proxyName and proxyPort attributes can + be used when Tomcat is run behind a proxy server. These attributes + modify the values returned to web applications that call the + request.getServerName() and request.getServerPort() + methods, which are often used to construct absolute URLs for redirects. + Without configuring these attributes, the values returned would reflect + the server name and port on which the connection from the proxy server + was received, rather than the server name and port to whom the client + directed the original request.

    + +

    For more information, see the + Proxy Support HOW-TO.

    + +
    + + + +
    SSL Support
    + +

    You can enable SSL support for a particular instance of this + Connector by setting the secure attribute to + true. In addition, you may need to configure the following + attributes:

    + +
    AttributeDescription
    algorithm +

    The certificate encoding algorithm to be used. This defaults to the Sun + implementation (SunX509). For IBM JVMs you should use the + value IbmX509. For other vendors, consult the JVM + documentation for the correct value.

    +
    clientAuth +

    Set to true if you want the SSL stack to require a + valid certificate chain from the client before accepting a connection. + Set to want if you want the SSL stack to request a client + Certificate, but not fail if one isn't presented. A false + value (which is the default) will not require a certificate chain + unless the client requests a resource protected by a security + constraint that uses CLIENT-CERT authentication. See the + SSL HowTo for an example.

    +
    keystoreFile +

    The pathname of the keystore file where you have stored the + server certificate to be loaded. By default, the pathname is + the file ".keystore" in the operating system home + directory of the user that is running Tomcat.

    +
    keystorePass +

    The password used to access the server certificate from the + specified keystore file. The default value is "changeit". +

    +
    keystoreType +

    The type of keystore file to be used for the server certificate. + If not specified, the default value is "JKS".

    +
    sslProtocol +

    The version of the SSL protocol to use. If not specified, + the default is "TLS".

    +
    ciphers +

    A comma seperated list of the encryption ciphers that may be used. + If not specified, then any available cipher may be used.

    +
    keyAlias +

    The alias used to for the server certificate in the keystore. If not + specified the first key read in the keystore will be used.

    +
    truststoreFile +

    The TrustStore file to use to validate client certificates.

    +
    truststorePass +

    The password to access the TrustStore. This defaults to the value + of keystorePass.

    +
    truststoreType +

    Add this element if your are using a different format for the + TrustStore then you are using for the KeyStore.

    +
    + +

    For more information, see the + SSL Configuration HOW-TO.

    + +
    +
    Connector Comparison
    + +

    Below is a small chart that shows how the connectors differentiate.

    +
    +                  Java Blocking Connector       Java Nio Blocking Connector       APR Connector
    +    Classname         Http11Protocol                  Http11NioProtocol         Http11AprProtocol
    +    Tomcat Version   3.x 4.x 5.x 6.x                       6.x                     5.5.x 6.x
    +    Support Polling         NO                             YES                        YES
    +    Polling Size           N/A                   Unlimited - Restricted by mem        Unlimited
    +    Read HTTP Request     Blocking                     Blocking                       Blocking
    +    Read HTTP Body        Blocking                     Blocking                       Blocking
    +    Write HTTP Response   Blocking                     Blocking                       Blocking
    +    SSL Support           Java SSL                     Java SSL                       OpenSSL
    +    SSL Handshake         Blocking                     Non blocking                   Blocking
    +    Max Connections       maxThreads                   See polling size               See polling size
    +    
    +    
    +    
    + +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/index.html new file mode 100644 index 0000000..22d3396 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/index.html @@ -0,0 +1,55 @@ +Apache Tomcat Configuration Reference - Overview
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    Overview

    Overview
    + +

    This manual contains reference information about all of the configuration +directives that can be included in a conf/server.xml file to +configure the behavior of the Tomcat 6 Servlet/JSP container. It does not +attempt to describe which configuration directives should be used to perform +specific tasks - for that, see the various HOW-TO documents on the +main index page.

    + +

    The configuration element descriptions are organized into the following +major categories:

    +
      +
    • Top Level Elements - <Server> is the + root element of the entire configuration file, while + <Service> represents a group of Connectors that is + associated with an Engine.
    • +
    • Connectors - Represent the interface between external + clients sending requests to (and receiving responses from) a particular + Service.
    • +
    • Containers - Represent components whose function is to + process incoming requests, and create the corresponding responses. + An Engine handles all requests for a Service, a Host handles all requests + for a particular virtual host, and a Context handles all requests for a + specific web application.
    • +
    • Nested Components - Represent elements that can be + nested inside the element for a Container. Some elements can be nested + inside any Container, while others can only be nested inside a + Context.
    • +
    + +

    For each element, the corresponding documentation follows this general +outline:

    +
      +
    • Introduction - Overall description of this particular + component. There will be a corresponding Java interface (in + the org.apache.catalina pacakge) that is implemented by one + or more standard implementations.
    • +
    • Attributes - The set of attributes that are legal for + this element. Generally, this will be subdivided into Common + attributes that are supported by all implementations of the corresponding + Java interface, and Standard Implementation attributes that are + specific to a particular Java class that implements this interface. + The names of required attributes are bolded.
    • +
    • Nested Components - Enumerates which of the Nested + Components can be legally nested within this element.
    • +
    • Special Features - Describes the configuration of a large + variety of special features (specific to each element type) that are + supported by the standard implementation of this interface.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/loader.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/loader.html new file mode 100644 index 0000000..d279280 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/loader.html @@ -0,0 +1,104 @@ +Apache Tomcat Configuration Reference - The Loader Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Loader Component

    Introduction
    + +

    The Loader element represents the web + application class loader that will be used to load Java + classes and resources for your web application. Such + a class loader must follow the requirements of the Servlet + Specification, and load classes from the following locations:

    +
      +
    • From the /WEB-INF/classes directory inside your + web application.
    • +
    • From JAR files in the /WEB-INF/lib directory + inside your web application.
    • +
    • From resources made available by Catalina to all web + applications globally.
    • +
    + +

    A Loader element MAY be nested inside a Context + component. If it is not included, a default Loader configuration will be + created automatically, which is sufficient for most requirements.

    + +

    For a more in-depth description of the class loader hierarchy + that is implemented by Catalina, see the ClassLoader HowTo.

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Loader + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Loader interface. + If not specified, the standard value (defined below) will be used.

    +
    delegate +

    Set to true if you want the class loader to follow + the standard Java2 delegation model, and attempt to load classes from + parent class loaders before looking inside the web + application. Set to false (the default) to have the + class loader look inside the web application first, before asking + parent class loaders to find requested classes or resources.

    +
    reloadable +

    Set to true if you want Catalina to monitor classes in + /WEB-INF/classes/ and /WEB-INF/lib for + changes, and automatically reload the web application if a change + is detected. This feature is very useful during application + development, but it requires significant runtime overhead and is + not recommended for use on deployed production applications. You + can use the Manager web + application, however, to trigger reloads of deployed applications + on demand.

    + +

    NOTE - The value for this property will be + inherited from the reloadable attribute you set on + the surrounding Context component, + and any value you explicitly set here will be replaced.

    +
    + +
    + + +
    Standard Implementation
    + +

    The standard implementation of Loader is + org.apache.catalina.loader.WebappLoader. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    loaderClass +

    Java class name of the java.lang.ClassLoader + implementation class to use. If not specified, the default value is + org.apache.catalina.loader.WebappClassLoader.

    +
    + +
    + + +
    Nested Components
    + +

    No components may be nested inside a Loader element.

    + +
    Special Features
    + +
    Logging
    + +

    A loader is associated with the log category based on its classname.

    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/manager.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/manager.html new file mode 100644 index 0000000..7957d19 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/manager.html @@ -0,0 +1,351 @@ +Apache Tomcat Configuration Reference - The Manager Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Manager Component

    Introduction
    + +

    The Manager element represents the session + manager that will be used to create and maintain HTTP sessions + as requested by the associated web application.

    + +

    A Manager element MAY be nested inside a + Context component. If it is not included, + a default Manager configuration will be created automatically, which + is sufficient for most requirements.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Manager + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Manager interface. + If not specified, the standard value (defined below) will be used.

    +
    distributable +

    Set to true to ask the session manager to enforce + the restrictions described in the Servlet Specification on + distributable applications (primarily, this would mean that all + session attributes must implement java.io.Serializable). + Set to false (the default) to not enforce these + restrictions.

    + +

    NOTE - The value for this property is inherited + automatically based on the presence or absence of the + <distributable> element in the web application + deployment descriptor (/WEB-INF/web.xml).

    +
    + +
    + + +
    Standard Implementation
    + +

    Tomcat provides two standard implementations of Manager + for use - the default one stores active sessions, while the optional one + stores active sessions that have been swapped out (in addition to saving + sessions across a restart of Tomcat) in a storage location that is selected + via the use of an appropriate Store nested element.

    + +

    Standard Manager Implementation

    + +

    The standard implementation of Manager is + org.apache.catalina.session.StandardManager. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    algorithm +

    Name of the Message Digest algorithm used to calculate + session identifiers produced by this Manager. This value must + be supported by the java.security.MessageDigest class. + If not specified, the default value is "MD5".

    +
    entropy +

    A String value that is utilized when seeding the random number + generator used to create session identifiers for this Manager. + If not specified, a semi-useful value is calculated, but a long + String value should be specified in security-conscious + environments.

    +
    maxActiveSessions +

    The maximum number of active sessions that will be created by + this Manager, or -1 (the default) for no limit.

    +
    maxInactiveInterval +

    The initial maximum time interval, in seconds, + between client requests before a session is invalidated. A negative value + will result in sessions never timing out. If the attribute is not provided, + a default of 60 seconds is used.

    + +

    This attribute provides the initial value whenever a + new session is created, but the interval may be dynamically + varied by a servlet via the + setMaxInactiveInterval method of the HttpSession object.

    +
    pathname +

    Absolute or relative (to the work directory for this Context) + pathname of the file in which session state will be preserved + across application restarts, if possible. The default is + "SESSIONS.ser". See Restart + Persistence for more information. Restart persistence may be + disabled by setting this attribute to an empty string.

    +
    processExpiresFrequency +

    Frequency of the session expiration, and related manager operations. + Manager operations will be done once for the specified amount of + backgrondProcess calls (ie, the lower the amount, the more often the + checks will occur). The minimum value is 1, and the default value is 6. +

    +
    randomClass +

    Java class name of the java.util.Random + implementation class to use. If not specified, the default value is + java.security.SecureRandom.

    +
    sessionIdLength +

    The length of session ids created by this Manager, excluding any + JVM route information used for load balancing. + The default is 16.

    +
    + +

    Persistent Manager Implementation

    + +

    WARNING - Use of this Manager implementation + has not been thoroughly tested, and should be considered experimental! +

    + +

    The persistent implementation of Manager is + org.apache.catalina.session.PersistentManager. In + addition to the usual operations of creating and deleting sessions, a + PersistentManager has the capability to swap active (but + idle) sessions out to a persistent storage mechanism, as well as to save + all sessions across a normal restart of Tomcat. The actual persistent + storage mechanism used is selected by your choice of a + Store element nested inside the Manager + element - this is required for use of PersistentManager.

    + +

    This implementation of Manager supports the following attributes in + addition to the Common Attributes + described earlier.

    + +
    AttributeDescription
    algorithm +

    Name of the Message Digest algorithm used to calculate + session identifiers produced by this Manager. This value must + be supported by the java.security.MessageDigest class. + If not specified, the default value is "MD5".

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Manager interface. + You must specify + org.apache.catalina.session.PersistentManager to use + this manager implementation.

    +
    entropy +

    A String value that is utilized when seeding the random number + generator used to create session identifiers for this Manager. + If not specified, a semi-useful value is calculated, but a long + String value should be specified in security-conscious + environments.

    +
    maxActiveSessions +

    The maximum number of active sessions that will be created by + this Manager, or -1 (the default) for no limit.

    +
    maxIdleBackup +

    The time interval (in seconds) since the last access to a session + before it is eligible for being persisted to the session store, or + -1 to disable this feature. By default, this feature is + disabled.

    +
    maxIdleSwap +

    The time interval (in seconds) since the last access to a session + before it should be persisted to the session store, and + passivated out of the server's memory, or -1 to disable + this feature. If this feature is enabled, the time interval specified + here should be equal to or longer than the value specified for + maxIdleBackup. By default, this feature is disabled.

    +
    minIdleSwap +

    The time interval (in seconds) since the last access to a session + before it will be eligible to be persisted to the session store, and + passivated out of the server's memory, or -1 for this + swapping to be available at any time. If specified, this value should + be less than that specified by maxIdleSwap. By default, + this value is set to -1.

    +
    maxInactiveInterval +

    The initial maximum time interval, in seconds, + between client requests before a session is invalidated. A negative value + will result in sessions never timing out. If the attribute is not provided, + a default of 60 seconds is used.

    + +

    This attribute provides the initial value whenever a + new session is created, but the interval may be dynamically + varied by a servlet via the + setMaxInactiveIntervalmethod of the HttpSession object.

    +
    randomClass +

    Java class name of the java.util.Random + implementation class to use. If not specified, the default value is + java.security.SecureRandom.

    +
    saveOnRestart +

    Should all sessions be persisted and reloaded when Tomcat is shut + down and restarted (or when this application is reloaded)? By default, + this attribute is set to true.

    +
    sessionIdLength +

    The length of session ids created by this Manager, excluding any + JVM route information used for load balancing. + The default is 16.

    +
    + +

    In order to successfully use a PersistentManager, you must nest inside + it a <Store> element, as described below.

    + +
    + + +
    Nested Components
    + +

    Standard Manager Implementation

    + +

    If you are using the Standard Manager Implementation + as described above, no elements may be nested inside your + <Manager> element.

    + +

    Persistent Manager Implementation

    + +

    If you are using the Persistent Manager Implementation + as described above, you MUST nest a + <Store> element inside, which defines the + characteristics of the persistent data storage. Two implementations + of the <Store> element are currently available, + with different characteristics, as described belowl

    + +
    File Based Store
    + +

    The File Based Store implementation saves swapped out + sessions in individual files (named based on the session identifier) + in a configurable directory. Therefore, you are likely to encounter + scalability problems as the number of active sessions increases, and + this should primarily be considered a means to easily experiment.

    + +

    To configure this, add a <Store> nested inside + your <Manager> element with the following attributes: +

    + +
    AttributeDescription
    checkInterval +

    The interval (in seconds) between checks for expired sessions + among those sessions that are currently swapped out. By default, + this interval is set to 60 seconds (one minute).

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Store interface. You + must specify + org.apache.catalina.session.FileStore + to use this implementation.

    +
    directory +

    Absolute or relative (to the temporary work directory for this web + application) pathname of the directory into which individual session + files are written. If not specified, the temporary work directory + assigned by the container is utilized.

    +
    + + +
    JDBC Based Store
    + +

    The JDBC Based Store implementation saves swapped out + sessions in individual rows of a preconfigured table in a database + that is accessed via a JDBC driver. With large numbers of swapped out + sessions, this implementation will exhibit improved performance over + the File Based Store described above.

    + +

    To configure this, add a <Store> nested inside + your <Manager> element with the following attributes: +

    + +
    AttributeDescription
    checkInterval +

    The interval (in seconds) between checks for expired sessions + among those sessions that are currently swapped out. By default, + this interval is set to 60 seconds (one minute).

    +
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Store interface. You + must specify + org.apache.catalina.session.JDBCStore + to use this implementation.

    +
    connectionURL +

    The connection URL that will be handed to the configured JDBC + driver to establish a connection to the database containing our + session table.

    +
    driverName +

    Java class name of the JDBC driver to be used.

    +
    sessionAppCol +

    Name of the database column, contained in the specified session + table, that contains the Engine, Host, and Web Application Context + name in the format /Engine/Host/Context.

    +
    sessionDataCol +

    Name of the database column, contained in the specified + session table, that contains the serialized form of all session + attributes for a swapped out session. The column type must accept + a binary object (typically called a BLOB).

    +
    sessionIdCol +

    Name of the database column, contained in the specified + session table, that contains the session identifier of the + swapped out session. The column type must accept character + string data of at least as many characters as are contained + in session identifiers created by Tomcat (typically 32).

    +
    sessionLastAccessedCol +

    Name of the database column, contained in the specified + session table, that contains the lastAccessedTime + property of this session. The column type must accept a + Java long (64 bits).

    +
    sessionMaxInactiveCol +

    Name of the database column, contained in the specified + session table, that contains the maxInactiveInterval + property of this session. The column type must accept a + Java integer (32 bits).

    +
    sessionTable +

    Name of the database table to be used for storing swapped out + sessions. This table must contain (at least) the database columns + that are configured by the other attributes of this element.

    +
    sessionValidCol +

    Name of the database column, contained in the specified + session table, that contains a flag indicating whether this + swapped out session is still valid or not. The column type + must accept a single character.

    +
    + +

    Before attempting to use the JDBC Based Store for the first time, + you must create the table that will be used to store swapped out sessions. + Detailed SQL commands vary depending on the database you are using, but + a script like this will generally be required:

    + +
    +create table tomcat_sessions (
    +  session_id     varchar(100) not null primary key,
    +  valid_session  char(1) not null,
    +  max_inactive   int not null,
    +  last_access    bigint not null,
    +  app_name       varchar(255),
    +  session_data   mediumblob,
    +  KEY kapp_name(app_name)
    +);
    +
    + +

    In order for the JDBC Based Store to successfully connect to your + database, the JDBC driver you configure must be visible to Tomcat's + internal class loader. Generally, that means you must place the JAR + file containing this driver into the $CATALINA_HOME/server/lib + directory (if your applications do not also need it) or into the + $CATALINA_HOME/common/lib directory (if you wish to share + this driver with your web applications.

    + +
    Special Features
    + + +
    Restart Persistence
    + +

    Whenver Catalina is shut down normally and restarted, or when an + application reload is triggered, the standard Manager implementation + will attempt to serialize all currently active sessions to a disk + file located via the pathname attribute. All such saved + sessions will then be deserialized and activated (assuming they have + not expired in the mean time) when the application reload is completed.

    + +

    In order to successfully restore the state of session attributes, + all such attributes MUST implement the java.io.Serializable + interface. You MAY cause the Manager to enforce this restriction by + including the <distributable> element in your web + application deployment descriptor (/WEB-INF/web.xml).

    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/realm.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/realm.html new file mode 100644 index 0000000..3bc24a8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/realm.html @@ -0,0 +1,385 @@ +Apache Tomcat Configuration Reference - The Realm Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Realm Component

    Introduction
    + +

    A Realm element represents a "database" of usernames, + passwords, and roles (similar to Unix groups) assigned + to those users. Different implementations of Realm allow Catalina to be + integrated into environments where such authentication information is already + being created and maintained, and then utilize that information to implement + Container Managed Security as described in the Servlet + Specification.

    + +

    You may nest a Realm inside any Catalina container + Engine, Host, or + Context). In addition, Realms associated with + an Engine or a Host are automatically inherited by lower-level + containers, unless explicitly overridden.

    + +

    For more in-depth information about container managed security in web + applications, as well as more information on configuring and using the + standard realm component implementations, please see the + Container-Managed Security Guide. +

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Realm + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Realm interface.

    +
    + +
    + + +
    Standard Implementation
    + +

    Unlike most Catalina components, there are several standard + Realm implementations available. As a result, + the className attribute MUST be used to select the + implementation you wish to use.

    + +

    JDBC Database Realm (org.apache.catalina.realm.JDBCRealm)

    + +

    The JDBC Database Realm connects Catalina to + a relational database, accessed through an appropriate JDBC driver, + to perform lookups of usernames, passwords, and their associated + roles. Because the lookup is done each time that it is required, + changes to the database will be immediately reflected in the + information used to authenticate new logins.

    + +

    A rich set of additional attributes lets you configure the required + connection to the underlying database, as well as the table and + column names used to retrieve the required information:

    + +
    AttributeDescription
    connectionName +

    The database username to use when establishing the JDBC + connection.

    +
    connectionPassword +

    The database password to use when establishing the JDBC + connection.

    +
    connectionURL +

    The connection URL to be passed to the JDBC driver when + establishing a database connection.

    +
    digest +

    The name of the MessageDigest algorithm used + to encode user passwords stored in the database. If not specified, + user passwords are assumed to be stored in clear-text.

    +
    digestEncoding +

    The charset for encoding digests. If not specified, the platform + default will be used.

    +
    driverName +

    Fully qualified Java class name of the JDBC driver to be + used to connect to the authentication database.

    +
    roleNameCol +

    Name of the column, in the "user roles" table, which contains + a role name assigned to the corresponding user.

    +
    userCredCol +

    Name of the column, in the "users" table, which contains + the user's credentials (i.e. password(. If a value for the + digest attribute is specified, this component + will assume that the passwords have been encoded with the + specified algorithm. Otherwise, they will be assumed to be + in clear text.

    +
    userNameCol +

    Name of the column, in the "users" and "user roles" table, + that contains the user's username.

    +
    userRoleTable +

    Name of the "user roles" table, which must contain columns + named by the userNameCol and roleNameCol + attributes.

    +
    userTable +

    Name of the "users" table, which must contain columns named + by the userNameCol and userCredCol + attributes.

    +
    + +

    See the Container-Managed Security Guide for more + information on setting up container managed security using the + JDBC Database Realm component.

    + + +

    + DataSource Database Realm (org.apache.catalina.realm.DataSourceRealm) +

    + +

    The DataSource Database Realm connects Catalina to + a relational database, accessed through a JNDI named JDBC DataSource + to perform lookups of usernames, passwords, and their associated + roles. Because the lookup is done each time that it is required, + changes to the database will be immediately reflected in the + information used to authenticate new logins.

    + +

    The JDBC Realm uses a single db connection. This requires that + realm based authentication be synchronized, i.e. only one authentication + can be done at a time. This could be a bottleneck for applications + with high volumes of realm based authentications.

    + +

    The DataSource Database Realm supports simultaneous realm based + authentications and allows the underlying JDBC DataSource to + handle optimizations like database connection pooling.

    + +

    A rich set of additional attributes lets you configure the name + of the JNDI JDBC DataSource, as well as the table and + column names used to retrieve the required information:

    + +
    AttributeDescription
    dataSourceName +

    The name of the JNDI JDBC DataSource for this Realm.

    +
    digest +

    The name of the MessageDigest algorithm used + to encode user passwords stored in the database. If not specified, + user passwords are assumed to be stored in clear-text.

    +
    roleNameCol +

    Name of the column, in the "user roles" table, which contains + a role name assigned to the corresponding user.

    +
    userCredCol +

    Name of the column, in the "users" table, which contains + the user's credentials (i.e. password(. If a value for the + digest attribute is specified, this component + will assume that the passwords have been encoded with the + specified algorithm. Otherwise, they will be assumed to be + in clear text.

    +
    userNameCol +

    Name of the column, in the "users" and "user roles" table, + that contains the user's username.

    +
    userRoleTable +

    Name of the "user roles" table, which must contain columns + named by the userNameCol and roleNameCol + attributes.

    +
    userTable +

    Name of the "users" table, which must contain columns named + by the userNameCol and userCredCol + attributes.

    +
    + +

    See the + DataSource Realm HOW-TO for more information on setting up container + managed security using the DataSource Database Realm component.

    + + +

    JNDI Directory Realm (org.apache.catalina.realm.JNDIRealm)

    + + +

    The JNDI Directory Realm connects Catalina to + an LDAP Directory, accessed through an appropriate JNDI driver, + that stores usernames, passwords, and their associated + roles. Changes to the directory are immediately reflected in the + information used to authenticate new logins.

    + + +

    The directory realm supports a variety of approaches to using + LDAP for authentication:

    + +
      +
    • The realm can either use a pattern to determine the + distinguished name (DN) of the user's directory entry, or search + the directory to locate that entry. +
    • + +
    • The realm can authenticate the user either by binding to the + directory with the DN of the user's entry and the password + presented by the user, or by retrieving the password from the + user's entry and performing a comparison locally. +
    • + +
    • Roles may be represented in the directory as explicit entries + found by a directory search (e.g. group entries of which the user + is a member), as the values of an attribute in the user's entry, + or both. +
    • +
    + +

    A rich set of additional attributes lets you configure the + required behaviour as well as the connection to the underlying + directory and the element and attribute names used to retrieve + information from the directory:

    + +
    AttributeDescription
    alternateURL +

    If a socket connection can not be made to the provider at + the connectionURL an attempt will be made to use the + alternateURL.

    +
    authentication +

    A string specifying the type of authentication to use. + "none", "simple", "strong" or a provider specific definition + can be used. If no value is given the providers default is used.

    +
    connectionName +

    The directory username to use when establishing a + connection to the directory for LDAP search operations. If not + specified an anonymous connection is made, which is often + sufficient unless you specify the userPassword + property.

    +
    connectionPassword +

    The directory password to use when establishing a + connection to the directory for LDAP search operations. If not + specified an anonymous connection is made, which is often + sufficient unless you specify the userPassword + property.

    +
    connectionURL +

    The connection URL to be passed to the JNDI driver when + establishing a connection to the directory.

    +
    contextFactory +

    Fully qualified Java class name of the factory class used + to acquire our JNDI InitialContext. By default, + assumes that the standard JNDI LDAP provider will be utilized.

    +
    derefAliases +

    A string specifying how aliases are to be dereferenced during + search operations. The allowed values are "always", "never", + "finding" and "searching". If not specified, "always" is used.

    +
    protocol +

    A string specifying the security protocol to use. If not given + the providers default is used.

    +
    roleBase +

    The base directory entry for performing role searches. If + not specified the top-level element in the directory context + will be used.

    +
    roleName +

    The name of the attribute that contains role names in the + directory entries found by a role search. In addition you can + use the userRoleName property to specify the name + of an attribute, in the user's entry, containing additional + role names. If roleName is not specified a role + search does not take place, and roles are taken only from the + user's entry.

    +
    roleSearch +

    The LDAP filter expression used for performing role + searches. Use {0} to substitute the + distinguished name (DN) of the user, and/or {1} to + substitute the username. If not specified a role search does + not take place and roles are taken only from the attribute in + the user's entry specified by the userRoleName + property.

    +
    roleSubtree +

    Set to true if you want to search the entire + subtree of the element specified by the roleBase + property for role entries associated with the user. The + default value of false causes only the top level + to be searched.

    +
    userBase +

    The base element for user searches performed using the + userSearch expression. Not used if you are using + the userPattern expression.

    +
    userPassword +

    Name of the attribute in the user's entry containing the + user's password. If you specify this value, JNDIRealm will + bind to the directory using the values specified by + connectionName and + connectionPassword properties, and retrieve the + corresponding attribute for comparison to the value specified + by the user being authenticated. If you do + not specify this value, JNDIRealm will + attempt a simple bind to the directory using the DN of the + user's entry and the password presented by the user, with a + successful bind being interpreted as an authenticated + user.

    +
    userPattern +

    Pattern for the distinguished name (DN) of the user's + directory entry, with {0} marking where the + actual username should be inserted. You can use this property + instead of userSearch, userSubtree + and userBase when the distinguished name contains + the username and is otherwise the same for all users.

    +
    userRoleName +

    The name of an attribute in the user's directory entry + containing zero or more values for the names of roles assigned + to this user. In addition you can use the + roleName property to specify the name of an + attribute to be retrieved from individual role entries found + by searching the directory. If userRoleName is + not specified all the roles for a user derive from the role + search.

    +
    userSearch +

    The LDAP filter expression to use when searching for a + user's directory entry, with {0} marking where + the actual username should be inserted. Use this property + (along with the userBase and + userSubtree properties) instead of + userPattern to search the directory for the + user's entry.

    +
    userSubtree +

    Set to true if you want to search the entire + subtree of the element specified by the userBase + property for the user's entry. The default value of + false causes only the top level to be searched. + Not used if you are using the userPattern + expression.

    +
    + +

    See the Container-Managed Security Guide for more + information on setting up container managed security using the + JNDI Directory Realm component.

    + + +

    Memory Based Realm (org.apache.catalina.realm.MemoryRealm)

    + +

    The Memory Based Realm is a simple Realm implementation + that reads user information from an XML format, and represents it as a + collection of Java objects in memory. This implementation is intended + solely to get up and running with container managed security - it is NOT + intended for production use. As such, there are no mechanisms for + updating the in-memory collection of users when the content of the + underlying data file is changed.

    + +

    The Memory Based Realm implementation supports the following + additional attributes:

    + +
    AttributeDescription
    pathname +

    Absolute or relative (to $CATALINA_HOME) pathname to the XML file + containing our user information. See below for details on the + XML element format required. If no pathname is specified, the + default value is conf/tomcat-users.xml.

    +
    + +

    The XML document referenced by the pathname attribute must + conform to the following requirements:

    +
      +
    • The root (outer) element must be <tomcat-users>. +
    • +
    • Each authorized user must be represented by a single XML element + <user>, nested inside the root element.
    • +
    • Each <user> element must have the following + attributes: +
        +
      • name - Username of this user (must be unique + within this file).
      • +
      • password - Password of this user (in + clear text).
      • +
      • roles - Comma-delimited list of the role names + assigned to this user.
      • +
    • +
    + +

    See the Container-Managed Security Guide for more + information on setting up container managed security using the + Memory Based Realm component.

    + + +
    + + +
    Nested Components
    + +

    No components may be nested inside a Realm element.

    + +
    Special Features
    + +

    See Single Sign On for information about + configuring Single Sign On support for a virtual host.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/resources.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/resources.html new file mode 100644 index 0000000..6f6403e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/resources.html @@ -0,0 +1,69 @@ +Apache Tomcat Configuration Reference - The Resources Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Resources Component

    Introduction
    + +

    The Resources element represents the web + application static resources, from which classes will be loaded, + HTML, JSP and the other static files will be served. This allows the webapp + to reside on various mediums other than the filesystem, like compressed + in a WAR file, in a JDBC database, or in a more advanced versioning + repository.

    + +

    A unified caching engine is provided for all accesses to the webapp + resources made by the servlet container and web applications which use the + container provided mechanisms to access such resources, such as class laoder + access, access through the ServletContext interface, or native + access through the DirectoryContext interface.

    + +

    Note: Running a webapp with non-filesystem based + Resources implementations is only possible when the webapp does not + rely on direct filesystem access to its own resources, and uses the methods + in the ServletContext interface to access them.

    + +

    A Resources element MAY be nested inside a + Context component. If it is not included, + a default filesystem based Resources will be created automatically, + which is sufficient for most requirements.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Resources + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the javax.naming.directory.DirContext interface. + It is recommended for optimal functionality and performance, + but not mandatory, that the class extend + org.apache.naming.resources.BaseDirContext, as well as + use the special object types provided in the + org.apache.naming.resources for returned objects. + If not specified, the standard value (defined below) will be used.

    +
    + +
    + + +
    Standard Implementation
    + +

    The standard implementation of Resources is + org.apache.naming.resources.FileDirContext, and + is configured by its parent Context element.

    + +
    + + +
    Nested Components
    + +

    No components may be nested inside a Resources element.

    + +
    Special Features
    + +

    No special features are associated with a Resources + element.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/server.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/server.html new file mode 100644 index 0000000..bfdcf78 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/server.html @@ -0,0 +1,62 @@ +Apache Tomcat Configuration Reference - The Server Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Server Component

    Introduction
    + +

    A Server element represents the entire Catalina + servlet container. Therefore, it must be the single outermost element + in the conf/server.xml configuration file. Its attributes + represent the characteristics of the servlet container as a whole.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Server + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Server interface. + If no class name is specified, the standard implementation will + be used.

    +
    port +

    The TCP/IP port number on which this server waits for a shutdown + command. This connection must be initiated from the same server + computer that is running this instance of Tomcat.

    +
    shutdown +

    The command string that must be received via a TCP/IP connection + to the specified port number, in order to shut down Tomcat.

    +
    + +
    + +
    Standard Implementation
    + +

    The standard implementation of Server is + org.apache.catalina.core.StandardServer. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    + +
    + +
    Nested Components
    + +

    The following components may be nested inside a Server + element:

    + + +
    Special Features
    + +

    There are no special features associated with a Server. +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/service.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/service.html new file mode 100644 index 0000000..9b05fe1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/service.html @@ -0,0 +1,57 @@ +Apache Tomcat Configuration Reference - The Service Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Service Component

    Introduction
    + +

    A Service element represents the combination of one or + more Connector components that share a single + Engine component for processing incoming + requests. One or more Service elements may be nested + inside a Server element.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Service + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Service interface. + If no class name is specified, the standard implementation will + be used.

    +
    name +

    The display name of this Service, which will + be included in log messages if you utilize standard Catalina + components. The name of each Service that is + associated with a particular Server + must be unique.

    +
    + +
    + +
    Standard Implementation
    + +

    The standard implementation of Service is + org.apache.catalina.core.StandardService. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    + +
    + +
    Nested Components
    + +

    The only components that may be nested inside a Service + element are one or more Connector elements, + followed by exactly one Engine element.

    + +
    Special Features
    + +

    There are no special features associated with a Service. +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/valve.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/valve.html new file mode 100644 index 0000000..00b1a68 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/printer/valve.html @@ -0,0 +1,344 @@ +Apache Tomcat Configuration Reference - The Valve Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat Configuration Reference

    The Valve Component

    Introduction
    + +

    A Valve element represents a component that will be + inserted into the request processing pipeline for the associated + Catalina container (Engine, + Host, or Context). + Individual Valves have distinct processing capabilities, and are + described individually below.

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +
    Access Log Valve
    + +
    Introduction
    + +

    The Access Log Valve creates log files in the same + format as those created by standard web servers. These logs can later + be analyzed by standard log analysis tools to track page hit counts, + user session activity, and so on. The files produces by this Valve + are rolled over nightly at midnight. This Valve + may be associated with any Catalina container (Context, + Host, or Engine), and + will record ALL requests processed by that container.

    + +
    + +
    Attributes
    + +

    The Access Log Valve supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.valves.AccessLogValve to use the + default access log valve.

    +
    directory +

    Absolute or relative pathname of a directory in which log files + created by this valve will be placed. If a relative path is + specified, it is interpreted as relative to $CATALINA_HOME. If + no directory attribute is specified, the default value is "logs" + (relative to $CATALINA_HOME).

    +
    pattern +

    A formatting layout identifying the various information fields + from the request and response to be logged, or the word + common or combined to select a + standard format. See below for more information on configuring + this attribute. Note that the optimized access does only support + common and combined as the value for this + attribute.

    +
    prefix +

    The prefix added to the start of each log file's name. If not + specified, the default value is "access_log.". To specify no prefix, + use a zero-length string.

    +
    resolveHosts +

    Set to true to convert the IP address of the remote + host into the corresponding host name via a DNS lookup. Set to + false to skip this lookup, and report the remote IP + address instead.

    +
    suffix +

    The suffix added to the end of each log file's name. If not + specified, the default value is "". To specify no suffix, + use a zero-length string.

    +
    rotatable +

    Deafult true. Flag to determine if log rotation should occur. + If set to false, then this file is never rotated and + fileDateFormat is ignored. Use with caution! +

    +
    condition +

    Turns on conditional logging. If set, requests will be + logged only if ServletRequest.getAttribute() is + null. For example, if this value is set to + junk, then a particular request will only be logged + if ServletRequest.getAttribute("junk") == null. + The use of Filters is an easy way to set/unset the attribute + in the ServletRequest on many different requests. +

    +
    fileDateFormat +

    Allows a customized date format in the access log file name. + The date format also decides how often the file is rotated. + If you wish to rotate every hour, then set this value + to: yyyy-MM-dd.HH +

    +
    buffered +

    Deafult true. Flag to determine if logging will be buffered. + If set to false, then access logging will be written after each + request. +

    +
    + +

    Values for the pattern attribute are made up of literal + text strings, combined with pattern identifiers prefixed by the "%" + character to cause replacement by the corresponding variable value from + the current request and response. The following pattern codes are + supported:

    +
      +
    • %a - Remote IP address
    • +
    • %A - Local IP address
    • +
    • %b - Bytes sent, excluding HTTP headers, or '-' if zero
    • +
    • %B - Bytes sent, excluding HTTP headers
    • +
    • %h - Remote host name (or IP address if + resolveHosts is false)
    • +
    • %H - Request protocol
    • +
    • %l - Remote logical username from identd (always returns + '-')
    • +
    • %m - Request method (GET, POST, etc.)
    • +
    • %p - Local port on which this request was received
    • +
    • %q - Query string (prepended with a '?' if it exists)
    • +
    • %r - First line of the request (method and request URI)
    • +
    • %s - HTTP status code of the response
    • +
    • %S - User session ID
    • +
    • %t - Date and time, in Common Log Format
    • +
    • %u - Remote user that was authenticated (if any), else '-'
    • +
    • %U - Requested URL path
    • +
    • %v - Local server name
    • +
    • %D - Time taken to process the request, in millis
    • +
    • %T - Time taken to process the request, in seconds
    • +
    + +

    + There is also support to write information from the cookie, incoming + header, the Session or something else in the ServletRequest. + It is modeled after the apache syntax: +

      +
    • %{xxx}i for incoming headers
    • +
    • %{xxx}c for a specific cookie
    • +
    • %{xxx}r xxx is an attribute in the ServletRequest
    • +
    • %{xxx}s xxx is an attribute in the HttpSession
    • +
    +

    + + +

    The shorthand pattern name common (which is also the + default) corresponds to '%h %l %u %t "%r" %s %b'.

    + +

    The shorthand pattern name combined appends the + values of the Referer and User-Agent headers, + each in double quotes, to the common pattern + described in the previous paragraph.

    + +
    + +
    Remote Address Filter
    + +
    Introduction
    + +

    The Remote Address Filter allows you to compare the + IP address of the client that submitted this request against one or more + regular expressions, and either allow the request to continue + or refuse to process the request from this client. A Remote Address + Filter can be associated with any Catalina container + (Engine, Host, or + Context), and must accept any request + presented to this container for processing before it will be passed on.

    + +

    The syntax for regular expressions is different than that for + 'standard' wildcard matching. Tomcat uses the java.util.regex + package. Please consult the Java documentation for details of the + expressions supported.

    + +
    + +
    Attributes
    + +

    The Remote Address Filter supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.valves.RemoteAddrValve.

    +
    allow +

    A comma-separated list of regular expression patterns + that the remote client's IP address is compared to. If this attribute + is specified, the remote address MUST match for this request to be + accepted. If this attribute is not specified, all requests will be + accepted UNLESS the remote address matches a deny + pattern.

    +
    deny +

    A comma-separated list of regular expression patterns + that the remote client's IP address is compared to. If this attribute + is specified, the remote address MUST NOT match for this request to be + accepted. If this attribute is not specified, request acceptance is + governed solely by the accept attribute.

    +
    + +
    + +
    Remote Host Filter
    + +
    Introduction
    + +

    The Remote Host Filter allows you to compare the + hostname of the client that submitted this request against one or more + regular expressions, and either allow the request to continue + or refuse to process the request from this client. A Remote Host + Filter can be associated with any Catalina container + (Engine, Host, or + Context), and must accept any request + presented to this container for processing before it will be passed on.

    + +

    The syntax for regular expressions is different than that for + 'standard' wildcard matching. Tomcat uses the java.util.regex + package. Please consult the Java documentation for details of the + expressions supported.

    + +
    + +
    Attributes
    + +

    The Remote Host Filter supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.valves.RemoteHostValve.

    +
    allow +

    A comma-separated list of regular expression patterns + that the remote client's hostname is compared to. If this attribute + is specified, the remote hostname MUST match for this request to be + accepted. If this attribute is not specified, all requests will be + accepted UNLESS the remote hostname matches a deny + pattern.

    +
    deny +

    A comma-separated list of regular expression patterns + that the remote client's hostname is compared to. If this attribute + is specified, the remote hostname MUST NOT match for this request to be + accepted. If this attribute is not specified, request acceptance is + governed solely by the accept attribute.

    +
    + +
    + +
    Request Dumper Valve
    + + +
    Introduction
    + +

    The Request Dumper Valve is a useful tool in debugging + interactions with a client application (or browser) that is sending + HTTP requests to your Tomcat-based server. When configured, it causes + details about each request processed by its associated Engine, + Host, or Context to be logged according to + the logging configuration for that container.

    + +

    WARNING: Using this valve has side-effects. The + output from this valve includes any parameters included with the request. + The parameters will be decoded using the default platform encoding. Any + subsequent calls to request.setCharacterEncoding() within + the web application will have no effect.

    + +
    + + +
    Attributes
    + +

    The Request Dumper Valve supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.valves.RequestDumperValve.

    +
    + +
    + + +
    Single Sign On Valve
    + +
    Introduction
    + +

    The Single Sign On Vale is utilized when you wish to give users + the ability to sign on to any one of the web applications associated with + your virtual host, and then have their identity recognized by all other + web applications on the same virtual host.

    + +

    See the Single Sign On special + feature on the Host element for more information.

    + +
    + + +
    Attributes
    + +

    The Single Sign On Valve supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.authenticator.SingleSignOn.

    +
    requireReauthentication +

    Default false. Flag to determine whether each request needs to be + reauthenticated to the security Realm. If "true", this + Valve uses cached security credentials (username and password) to + reauthenticate to the Realm each request associated + with an SSO session. If "false", the Valve can itself authenticate + requests based on the presence of a valid SSO cookie, without + rechecking with the Realm.

    +
    + +
    + + +
    Form Authenticator Valve
    + +
    Introduction
    + +

    The Form Authenticator Valve is automatically added to + any Context that is configured to use FORM + authentication.

    + +

    If any non-default settings are required, the valve may be configured + within Context element with the required + values.

    + +
    + +
    Attributes
    + +

    The Form Authenticator Valve supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.authenticator.FormAuthenticator.

    +
    characterEncoding +

    Character encoding to use to read the username and password parameters + from the request. If not set, the encoding of the request body will be + used.

    +
    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/realm.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/realm.html new file mode 100644 index 0000000..55eb61a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/realm.html @@ -0,0 +1,386 @@ +Apache Tomcat Configuration Reference - The Realm Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Realm Component

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    A Realm element represents a "database" of usernames, + passwords, and roles (similar to Unix groups) assigned + to those users. Different implementations of Realm allow Catalina to be + integrated into environments where such authentication information is already + being created and maintained, and then utilize that information to implement + Container Managed Security as described in the Servlet + Specification.

    + +

    You may nest a Realm inside any Catalina container + Engine, Host, or + Context). In addition, Realms associated with + an Engine or a Host are automatically inherited by lower-level + containers, unless explicitly overridden.

    + +

    For more in-depth information about container managed security in web + applications, as well as more information on configuring and using the + standard realm component implementations, please see the + Container-Managed Security Guide. +

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Realm + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Realm interface.

    +
    + +
    + + +
    Standard Implementation
    + +

    Unlike most Catalina components, there are several standard + Realm implementations available. As a result, + the className attribute MUST be used to select the + implementation you wish to use.

    + +

    JDBC Database Realm (org.apache.catalina.realm.JDBCRealm)

    + +

    The JDBC Database Realm connects Catalina to + a relational database, accessed through an appropriate JDBC driver, + to perform lookups of usernames, passwords, and their associated + roles. Because the lookup is done each time that it is required, + changes to the database will be immediately reflected in the + information used to authenticate new logins.

    + +

    A rich set of additional attributes lets you configure the required + connection to the underlying database, as well as the table and + column names used to retrieve the required information:

    + +
    AttributeDescription
    connectionName +

    The database username to use when establishing the JDBC + connection.

    +
    connectionPassword +

    The database password to use when establishing the JDBC + connection.

    +
    connectionURL +

    The connection URL to be passed to the JDBC driver when + establishing a database connection.

    +
    digest +

    The name of the MessageDigest algorithm used + to encode user passwords stored in the database. If not specified, + user passwords are assumed to be stored in clear-text.

    +
    digestEncoding +

    The charset for encoding digests. If not specified, the platform + default will be used.

    +
    driverName +

    Fully qualified Java class name of the JDBC driver to be + used to connect to the authentication database.

    +
    roleNameCol +

    Name of the column, in the "user roles" table, which contains + a role name assigned to the corresponding user.

    +
    userCredCol +

    Name of the column, in the "users" table, which contains + the user's credentials (i.e. password(. If a value for the + digest attribute is specified, this component + will assume that the passwords have been encoded with the + specified algorithm. Otherwise, they will be assumed to be + in clear text.

    +
    userNameCol +

    Name of the column, in the "users" and "user roles" table, + that contains the user's username.

    +
    userRoleTable +

    Name of the "user roles" table, which must contain columns + named by the userNameCol and roleNameCol + attributes.

    +
    userTable +

    Name of the "users" table, which must contain columns named + by the userNameCol and userCredCol + attributes.

    +
    + +

    See the Container-Managed Security Guide for more + information on setting up container managed security using the + JDBC Database Realm component.

    + + +

    + DataSource Database Realm (org.apache.catalina.realm.DataSourceRealm) +

    + +

    The DataSource Database Realm connects Catalina to + a relational database, accessed through a JNDI named JDBC DataSource + to perform lookups of usernames, passwords, and their associated + roles. Because the lookup is done each time that it is required, + changes to the database will be immediately reflected in the + information used to authenticate new logins.

    + +

    The JDBC Realm uses a single db connection. This requires that + realm based authentication be synchronized, i.e. only one authentication + can be done at a time. This could be a bottleneck for applications + with high volumes of realm based authentications.

    + +

    The DataSource Database Realm supports simultaneous realm based + authentications and allows the underlying JDBC DataSource to + handle optimizations like database connection pooling.

    + +

    A rich set of additional attributes lets you configure the name + of the JNDI JDBC DataSource, as well as the table and + column names used to retrieve the required information:

    + +
    AttributeDescription
    dataSourceName +

    The name of the JNDI JDBC DataSource for this Realm.

    +
    digest +

    The name of the MessageDigest algorithm used + to encode user passwords stored in the database. If not specified, + user passwords are assumed to be stored in clear-text.

    +
    roleNameCol +

    Name of the column, in the "user roles" table, which contains + a role name assigned to the corresponding user.

    +
    userCredCol +

    Name of the column, in the "users" table, which contains + the user's credentials (i.e. password(. If a value for the + digest attribute is specified, this component + will assume that the passwords have been encoded with the + specified algorithm. Otherwise, they will be assumed to be + in clear text.

    +
    userNameCol +

    Name of the column, in the "users" and "user roles" table, + that contains the user's username.

    +
    userRoleTable +

    Name of the "user roles" table, which must contain columns + named by the userNameCol and roleNameCol + attributes.

    +
    userTable +

    Name of the "users" table, which must contain columns named + by the userNameCol and userCredCol + attributes.

    +
    + +

    See the + DataSource Realm HOW-TO for more information on setting up container + managed security using the DataSource Database Realm component.

    + + +

    JNDI Directory Realm (org.apache.catalina.realm.JNDIRealm)

    + + +

    The JNDI Directory Realm connects Catalina to + an LDAP Directory, accessed through an appropriate JNDI driver, + that stores usernames, passwords, and their associated + roles. Changes to the directory are immediately reflected in the + information used to authenticate new logins.

    + + +

    The directory realm supports a variety of approaches to using + LDAP for authentication:

    + +
      +
    • The realm can either use a pattern to determine the + distinguished name (DN) of the user's directory entry, or search + the directory to locate that entry. +
    • + +
    • The realm can authenticate the user either by binding to the + directory with the DN of the user's entry and the password + presented by the user, or by retrieving the password from the + user's entry and performing a comparison locally. +
    • + +
    • Roles may be represented in the directory as explicit entries + found by a directory search (e.g. group entries of which the user + is a member), as the values of an attribute in the user's entry, + or both. +
    • +
    + +

    A rich set of additional attributes lets you configure the + required behaviour as well as the connection to the underlying + directory and the element and attribute names used to retrieve + information from the directory:

    + +
    AttributeDescription
    alternateURL +

    If a socket connection can not be made to the provider at + the connectionURL an attempt will be made to use the + alternateURL.

    +
    authentication +

    A string specifying the type of authentication to use. + "none", "simple", "strong" or a provider specific definition + can be used. If no value is given the providers default is used.

    +
    connectionName +

    The directory username to use when establishing a + connection to the directory for LDAP search operations. If not + specified an anonymous connection is made, which is often + sufficient unless you specify the userPassword + property.

    +
    connectionPassword +

    The directory password to use when establishing a + connection to the directory for LDAP search operations. If not + specified an anonymous connection is made, which is often + sufficient unless you specify the userPassword + property.

    +
    connectionURL +

    The connection URL to be passed to the JNDI driver when + establishing a connection to the directory.

    +
    contextFactory +

    Fully qualified Java class name of the factory class used + to acquire our JNDI InitialContext. By default, + assumes that the standard JNDI LDAP provider will be utilized.

    +
    derefAliases +

    A string specifying how aliases are to be dereferenced during + search operations. The allowed values are "always", "never", + "finding" and "searching". If not specified, "always" is used.

    +
    protocol +

    A string specifying the security protocol to use. If not given + the providers default is used.

    +
    roleBase +

    The base directory entry for performing role searches. If + not specified the top-level element in the directory context + will be used.

    +
    roleName +

    The name of the attribute that contains role names in the + directory entries found by a role search. In addition you can + use the userRoleName property to specify the name + of an attribute, in the user's entry, containing additional + role names. If roleName is not specified a role + search does not take place, and roles are taken only from the + user's entry.

    +
    roleSearch +

    The LDAP filter expression used for performing role + searches. Use {0} to substitute the + distinguished name (DN) of the user, and/or {1} to + substitute the username. If not specified a role search does + not take place and roles are taken only from the attribute in + the user's entry specified by the userRoleName + property.

    +
    roleSubtree +

    Set to true if you want to search the entire + subtree of the element specified by the roleBase + property for role entries associated with the user. The + default value of false causes only the top level + to be searched.

    +
    userBase +

    The base element for user searches performed using the + userSearch expression. Not used if you are using + the userPattern expression.

    +
    userPassword +

    Name of the attribute in the user's entry containing the + user's password. If you specify this value, JNDIRealm will + bind to the directory using the values specified by + connectionName and + connectionPassword properties, and retrieve the + corresponding attribute for comparison to the value specified + by the user being authenticated. If you do + not specify this value, JNDIRealm will + attempt a simple bind to the directory using the DN of the + user's entry and the password presented by the user, with a + successful bind being interpreted as an authenticated + user.

    +
    userPattern +

    Pattern for the distinguished name (DN) of the user's + directory entry, with {0} marking where the + actual username should be inserted. You can use this property + instead of userSearch, userSubtree + and userBase when the distinguished name contains + the username and is otherwise the same for all users.

    +
    userRoleName +

    The name of an attribute in the user's directory entry + containing zero or more values for the names of roles assigned + to this user. In addition you can use the + roleName property to specify the name of an + attribute to be retrieved from individual role entries found + by searching the directory. If userRoleName is + not specified all the roles for a user derive from the role + search.

    +
    userSearch +

    The LDAP filter expression to use when searching for a + user's directory entry, with {0} marking where + the actual username should be inserted. Use this property + (along with the userBase and + userSubtree properties) instead of + userPattern to search the directory for the + user's entry.

    +
    userSubtree +

    Set to true if you want to search the entire + subtree of the element specified by the userBase + property for the user's entry. The default value of + false causes only the top level to be searched. + Not used if you are using the userPattern + expression.

    +
    + +

    See the Container-Managed Security Guide for more + information on setting up container managed security using the + JNDI Directory Realm component.

    + + +

    Memory Based Realm (org.apache.catalina.realm.MemoryRealm)

    + +

    The Memory Based Realm is a simple Realm implementation + that reads user information from an XML format, and represents it as a + collection of Java objects in memory. This implementation is intended + solely to get up and running with container managed security - it is NOT + intended for production use. As such, there are no mechanisms for + updating the in-memory collection of users when the content of the + underlying data file is changed.

    + +

    The Memory Based Realm implementation supports the following + additional attributes:

    + +
    AttributeDescription
    pathname +

    Absolute or relative (to $CATALINA_HOME) pathname to the XML file + containing our user information. See below for details on the + XML element format required. If no pathname is specified, the + default value is conf/tomcat-users.xml.

    +
    + +

    The XML document referenced by the pathname attribute must + conform to the following requirements:

    +
      +
    • The root (outer) element must be <tomcat-users>. +
    • +
    • Each authorized user must be represented by a single XML element + <user>, nested inside the root element.
    • +
    • Each <user> element must have the following + attributes: +
        +
      • name - Username of this user (must be unique + within this file).
      • +
      • password - Password of this user (in + clear text).
      • +
      • roles - Comma-delimited list of the role names + assigned to this user.
      • +
    • +
    + +

    See the Container-Managed Security Guide for more + information on setting up container managed security using the + Memory Based Realm component.

    + + +
    + + +
    Nested Components
    + +

    No components may be nested inside a Realm element.

    + +
    Special Features
    + +

    See Single Sign On for information about + configuring Single Sign On support for a virtual host.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/resources.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/resources.html new file mode 100644 index 0000000..fb48229 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/resources.html @@ -0,0 +1,70 @@ +Apache Tomcat Configuration Reference - The Resources Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Resources Component

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    The Resources element represents the web + application static resources, from which classes will be loaded, + HTML, JSP and the other static files will be served. This allows the webapp + to reside on various mediums other than the filesystem, like compressed + in a WAR file, in a JDBC database, or in a more advanced versioning + repository.

    + +

    A unified caching engine is provided for all accesses to the webapp + resources made by the servlet container and web applications which use the + container provided mechanisms to access such resources, such as class laoder + access, access through the ServletContext interface, or native + access through the DirectoryContext interface.

    + +

    Note: Running a webapp with non-filesystem based + Resources implementations is only possible when the webapp does not + rely on direct filesystem access to its own resources, and uses the methods + in the ServletContext interface to access them.

    + +

    A Resources element MAY be nested inside a + Context component. If it is not included, + a default filesystem based Resources will be created automatically, + which is sufficient for most requirements.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Resources + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the javax.naming.directory.DirContext interface. + It is recommended for optimal functionality and performance, + but not mandatory, that the class extend + org.apache.naming.resources.BaseDirContext, as well as + use the special object types provided in the + org.apache.naming.resources for returned objects. + If not specified, the standard value (defined below) will be used.

    +
    + +
    + + +
    Standard Implementation
    + +

    The standard implementation of Resources is + org.apache.naming.resources.FileDirContext, and + is configured by its parent Context element.

    + +
    + + +
    Nested Components
    + +

    No components may be nested inside a Resources element.

    + +
    Special Features
    + +

    No special features are associated with a Resources + element.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/server.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/server.html new file mode 100644 index 0000000..5ac3f17 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/server.html @@ -0,0 +1,63 @@ +Apache Tomcat Configuration Reference - The Server Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Server Component

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    A Server element represents the entire Catalina + servlet container. Therefore, it must be the single outermost element + in the conf/server.xml configuration file. Its attributes + represent the characteristics of the servlet container as a whole.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Server + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Server interface. + If no class name is specified, the standard implementation will + be used.

    +
    port +

    The TCP/IP port number on which this server waits for a shutdown + command. This connection must be initiated from the same server + computer that is running this instance of Tomcat.

    +
    shutdown +

    The command string that must be received via a TCP/IP connection + to the specified port number, in order to shut down Tomcat.

    +
    + +
    + +
    Standard Implementation
    + +

    The standard implementation of Server is + org.apache.catalina.core.StandardServer. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    + +
    + +
    Nested Components
    + +

    The following components may be nested inside a Server + element:

    + + +
    Special Features
    + +

    There are no special features associated with a Server. +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/service.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/service.html new file mode 100644 index 0000000..63eb5f3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/service.html @@ -0,0 +1,58 @@ +Apache Tomcat Configuration Reference - The Service Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Service Component

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    A Service element represents the combination of one or + more Connector components that share a single + Engine component for processing incoming + requests. One or more Service elements may be nested + inside a Server element.

    + +
    Attributes
    + +
    Common Attributes
    + +

    All implementations of Service + support the following attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This class must + implement the org.apache.catalina.Service interface. + If no class name is specified, the standard implementation will + be used.

    +
    name +

    The display name of this Service, which will + be included in log messages if you utilize standard Catalina + components. The name of each Service that is + associated with a particular Server + must be unique.

    +
    + +
    + +
    Standard Implementation
    + +

    The standard implementation of Service is + org.apache.catalina.core.StandardService. + It supports the following additional attributes (in addition to the + common attributes listed above):

    + +
    AttributeDescription
    + +
    + +
    Nested Components
    + +

    The only components that may be nested inside a Service + element are one or more Connector elements, + followed by exactly one Engine element.

    + +
    Special Features
    + +

    There are no special features associated with a Service. +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/config/valve.html b/P51/apache-tomcat-6.0.14/webapps/docs/config/valve.html new file mode 100644 index 0000000..3150616 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/config/valve.html @@ -0,0 +1,345 @@ +Apache Tomcat Configuration Reference - The Valve Component
    
+    The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Top Level Elements

    Executors

    Connectors

    Containers

    Nested Components

    Cluster Elements

    Apache Tomcat Configuration Reference

    The Valve Component

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    A Valve element represents a component that will be + inserted into the request processing pipeline for the associated + Catalina container (Engine, + Host, or Context). + Individual Valves have distinct processing capabilities, and are + described individually below.

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +
    Access Log Valve
    + +
    Introduction
    + +

    The Access Log Valve creates log files in the same + format as those created by standard web servers. These logs can later + be analyzed by standard log analysis tools to track page hit counts, + user session activity, and so on. The files produces by this Valve + are rolled over nightly at midnight. This Valve + may be associated with any Catalina container (Context, + Host, or Engine), and + will record ALL requests processed by that container.

    + +
    + +
    Attributes
    + +

    The Access Log Valve supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.valves.AccessLogValve to use the + default access log valve.

    +
    directory +

    Absolute or relative pathname of a directory in which log files + created by this valve will be placed. If a relative path is + specified, it is interpreted as relative to $CATALINA_HOME. If + no directory attribute is specified, the default value is "logs" + (relative to $CATALINA_HOME).

    +
    pattern +

    A formatting layout identifying the various information fields + from the request and response to be logged, or the word + common or combined to select a + standard format. See below for more information on configuring + this attribute. Note that the optimized access does only support + common and combined as the value for this + attribute.

    +
    prefix +

    The prefix added to the start of each log file's name. If not + specified, the default value is "access_log.". To specify no prefix, + use a zero-length string.

    +
    resolveHosts +

    Set to true to convert the IP address of the remote + host into the corresponding host name via a DNS lookup. Set to + false to skip this lookup, and report the remote IP + address instead.

    +
    suffix +

    The suffix added to the end of each log file's name. If not + specified, the default value is "". To specify no suffix, + use a zero-length string.

    +
    rotatable +

    Deafult true. Flag to determine if log rotation should occur. + If set to false, then this file is never rotated and + fileDateFormat is ignored. Use with caution! +

    +
    condition +

    Turns on conditional logging. If set, requests will be + logged only if ServletRequest.getAttribute() is + null. For example, if this value is set to + junk, then a particular request will only be logged + if ServletRequest.getAttribute("junk") == null. + The use of Filters is an easy way to set/unset the attribute + in the ServletRequest on many different requests. +

    +
    fileDateFormat +

    Allows a customized date format in the access log file name. + The date format also decides how often the file is rotated. + If you wish to rotate every hour, then set this value + to: yyyy-MM-dd.HH +

    +
    buffered +

    Deafult true. Flag to determine if logging will be buffered. + If set to false, then access logging will be written after each + request. +

    +
    + +

    Values for the pattern attribute are made up of literal + text strings, combined with pattern identifiers prefixed by the "%" + character to cause replacement by the corresponding variable value from + the current request and response. The following pattern codes are + supported:

    +
      +
    • %a - Remote IP address
    • +
    • %A - Local IP address
    • +
    • %b - Bytes sent, excluding HTTP headers, or '-' if zero
    • +
    • %B - Bytes sent, excluding HTTP headers
    • +
    • %h - Remote host name (or IP address if + resolveHosts is false)
    • +
    • %H - Request protocol
    • +
    • %l - Remote logical username from identd (always returns + '-')
    • +
    • %m - Request method (GET, POST, etc.)
    • +
    • %p - Local port on which this request was received
    • +
    • %q - Query string (prepended with a '?' if it exists)
    • +
    • %r - First line of the request (method and request URI)
    • +
    • %s - HTTP status code of the response
    • +
    • %S - User session ID
    • +
    • %t - Date and time, in Common Log Format
    • +
    • %u - Remote user that was authenticated (if any), else '-'
    • +
    • %U - Requested URL path
    • +
    • %v - Local server name
    • +
    • %D - Time taken to process the request, in millis
    • +
    • %T - Time taken to process the request, in seconds
    • +
    + +

    + There is also support to write information from the cookie, incoming + header, the Session or something else in the ServletRequest. + It is modeled after the apache syntax: +

      +
    • %{xxx}i for incoming headers
    • +
    • %{xxx}c for a specific cookie
    • +
    • %{xxx}r xxx is an attribute in the ServletRequest
    • +
    • %{xxx}s xxx is an attribute in the HttpSession
    • +
    +

    + + +

    The shorthand pattern name common (which is also the + default) corresponds to '%h %l %u %t "%r" %s %b'.

    + +

    The shorthand pattern name combined appends the + values of the Referer and User-Agent headers, + each in double quotes, to the common pattern + described in the previous paragraph.

    + +
    + +
    Remote Address Filter
    + +
    Introduction
    + +

    The Remote Address Filter allows you to compare the + IP address of the client that submitted this request against one or more + regular expressions, and either allow the request to continue + or refuse to process the request from this client. A Remote Address + Filter can be associated with any Catalina container + (Engine, Host, or + Context), and must accept any request + presented to this container for processing before it will be passed on.

    + +

    The syntax for regular expressions is different than that for + 'standard' wildcard matching. Tomcat uses the java.util.regex + package. Please consult the Java documentation for details of the + expressions supported.

    + +
    + +
    Attributes
    + +

    The Remote Address Filter supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.valves.RemoteAddrValve.

    +
    allow +

    A comma-separated list of regular expression patterns + that the remote client's IP address is compared to. If this attribute + is specified, the remote address MUST match for this request to be + accepted. If this attribute is not specified, all requests will be + accepted UNLESS the remote address matches a deny + pattern.

    +
    deny +

    A comma-separated list of regular expression patterns + that the remote client's IP address is compared to. If this attribute + is specified, the remote address MUST NOT match for this request to be + accepted. If this attribute is not specified, request acceptance is + governed solely by the accept attribute.

    +
    + +
    + +
    Remote Host Filter
    + +
    Introduction
    + +

    The Remote Host Filter allows you to compare the + hostname of the client that submitted this request against one or more + regular expressions, and either allow the request to continue + or refuse to process the request from this client. A Remote Host + Filter can be associated with any Catalina container + (Engine, Host, or + Context), and must accept any request + presented to this container for processing before it will be passed on.

    + +

    The syntax for regular expressions is different than that for + 'standard' wildcard matching. Tomcat uses the java.util.regex + package. Please consult the Java documentation for details of the + expressions supported.

    + +
    + +
    Attributes
    + +

    The Remote Host Filter supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.valves.RemoteHostValve.

    +
    allow +

    A comma-separated list of regular expression patterns + that the remote client's hostname is compared to. If this attribute + is specified, the remote hostname MUST match for this request to be + accepted. If this attribute is not specified, all requests will be + accepted UNLESS the remote hostname matches a deny + pattern.

    +
    deny +

    A comma-separated list of regular expression patterns + that the remote client's hostname is compared to. If this attribute + is specified, the remote hostname MUST NOT match for this request to be + accepted. If this attribute is not specified, request acceptance is + governed solely by the accept attribute.

    +
    + +
    + +
    Request Dumper Valve
    + + +
    Introduction
    + +

    The Request Dumper Valve is a useful tool in debugging + interactions with a client application (or browser) that is sending + HTTP requests to your Tomcat-based server. When configured, it causes + details about each request processed by its associated Engine, + Host, or Context to be logged according to + the logging configuration for that container.

    + +

    WARNING: Using this valve has side-effects. The + output from this valve includes any parameters included with the request. + The parameters will be decoded using the default platform encoding. Any + subsequent calls to request.setCharacterEncoding() within + the web application will have no effect.

    + +
    + + +
    Attributes
    + +

    The Request Dumper Valve supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.valves.RequestDumperValve.

    +
    + +
    + + +
    Single Sign On Valve
    + +
    Introduction
    + +

    The Single Sign On Vale is utilized when you wish to give users + the ability to sign on to any one of the web applications associated with + your virtual host, and then have their identity recognized by all other + web applications on the same virtual host.

    + +

    See the Single Sign On special + feature on the Host element for more information.

    + +
    + + +
    Attributes
    + +

    The Single Sign On Valve supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.authenticator.SingleSignOn.

    +
    requireReauthentication +

    Default false. Flag to determine whether each request needs to be + reauthenticated to the security Realm. If "true", this + Valve uses cached security credentials (username and password) to + reauthenticate to the Realm each request associated + with an SSO session. If "false", the Valve can itself authenticate + requests based on the presence of a valid SSO cookie, without + rechecking with the Realm.

    +
    + +
    + + +
    Form Authenticator Valve
    + +
    Introduction
    + +

    The Form Authenticator Valve is automatically added to + any Context that is configured to use FORM + authentication.

    + +

    If any non-default settings are required, the valve may be configured + within Context element with the required + values.

    + +
    + +
    Attributes
    + +

    The Form Authenticator Valve supports the following + configuration attributes:

    + +
    AttributeDescription
    className +

    Java class name of the implementation to use. This MUST be set to + org.apache.catalina.authenticator.FormAuthenticator.

    +
    characterEncoding +

    Character encoding to use to read the username and password parameters + from the request. If not set, the encoding of the request body will be + used.

    +
    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/connectors.html b/P51/apache-tomcat-6.0.14/webapps/docs/connectors.html new file mode 100644 index 0000000..bfef84c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/connectors.html @@ -0,0 +1,43 @@ +Apache Tomcat 6.0 - Connectors How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Connectors How To

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    Choosing a connector to use with Tomcat can be difficult. This page will +list the connectors which are supported with this Tomcat release, and will +hopefully help you make the right choice according to your needs.

    + +
    HTTP
    + +

    The HTTP connector is setup by default with Tomcat, and is ready to use. This +connector features the lowest latency and best overall performance.

    + +

    For clustering, a HTTP load balancer with support for web sessions stickiness +must be installed to direct the traffic to the Tomcat servers. Tomcat supports mod_proxy +(on Apache HTTP Server 2.x, and included by default in Apache HTTP Server 2.2) as the load balancer. +It should be noted that the performance of HTTP proxying is usually lower than the +performance of AJP, so AJP clustering is often preferable.

    + +
    AJP
    + +

    When using a single server, the performance when using a native webserver in +front of the Tomcat instance is most of the time significantly worse than a +standalone Tomcat with its default HTTP connector, even if a large part of the web +application is made of static files. If integration with the native webserver is +needed for any reason, an AJP connector will provide faster performance than +proxied HTTP. AJP clustering is the most efficient from the Tomcat perspective. +It is otherwise functionally equivalent to HTTP clustering.

    + +

    The native connectors supported with this Tomcat release are: +

      +
    • JK 1.2.x with any of the supported servers
    • +
    • mod_proxy on Apache HTTP Server 2.x (included by default in Apache HTTP Server 2.2), +with AJP enabled
    • +
    +

    + +

    Other native connectors supporting AJP may work, but are no longer supported.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/default-servlet.html b/P51/apache-tomcat-6.0.14/webapps/docs/default-servlet.html new file mode 100644 index 0000000..4e34793 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/default-servlet.html @@ -0,0 +1,274 @@ +Apache Tomcat 6.0 - Default Servlet Reference
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Default Servlet Reference

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +This discusses different ways to manipulate the default servlet. Topics are + + +
    What is the DefaultServlet
    + +The default servlet is the servlet which serves static resources as well +as serves the directory listings (if directory listings are enabled). + +
    Where is it declared?
    + +It is declared globally in $CATALINA_HOME/conf/web.xml. +By default here is it's declaration: +
    +    <servlet>
    +        <servlet-name>default</servlet-name>
    +        <servlet-class>
    +          org.apache.catalina.servlets.DefaultServlet
    +        </servlet-class>
    +        <init-param>
    +            <param-name>debug</param-name>
    +            <param-value>0</param-value>
    +        </init-param>
    +        <init-param>
    +            <param-name>listings</param-name>
    +            <param-value>true</param-value>
    +        </init-param>
    +        <load-on-startup>1</load-on-startup>
    +    </servlet>
    +
    +...
    +
    +    <servlet-mapping>
    +        <servlet-name>default</servlet-name>
    +        <url-pattern>/</url-pattern>
    +    </servlet-mapping>
    +
    +
    + +So by default, the default servlet is loaded at webapp startup and +directory listings are enabled and debugging is turned off. +
    What can I change?
    + +The DefaultServlet allows the following initParamters: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    debug + Debugging level. It is not very useful unless you are a tomcat + developer. As + of this writing, useful values are 0, 1, 11, 1000. +
    listings + If no welcome file is present, can a directory listing be + shown? + value may be true or false +
    + Welcome files are part of the servlet api. +
    + WARNING: Listings of directories containing many entries are + expensive. Multiple requests for large directory listings can consume + significant proportions of server resources. +
    readmeFile + If a directory listing is presented, a readme file may also + be presented with the listing. This file is inserted as is + so it may contain HTML. default value is null +
    globalXsltFile + If you wish to customize your directory listing, you + can use an XSL transformation. This value is an absolute + file name which be used for all direcotory listings. + This can be disabled by per webapp by also declaring the + default servlet in your local webapp's web.xml. The format + of the xml is shown below. +
    localXsltFile + You may also customize your directory listing by directory by + configuring localXsltFile. This should be a relative + file name in the directory where the listing will take place. + This overrides globalXsltFile. If this value + is present but a file does not exist, then + globalXsltFile will be used. If + globalXsltFile does not exist, then the default + directory listing will be shown. +
    input + Input buffer size (in bytes) when reading + resources to be served. [2048] +
    output + Output buffer size (in bytes) when writing + resources to be served. [2048] +
    readonly + Is this context "read only", so HTTP commands like PUT and + DELETE are rejected? [true] +
    fileEncoding + File encoding to be used when reading static resources. + [platform default] +
    sendfileSize + If the connector used supports sendfile, this represents the minimal + file size in KB for which sendfile will be used. Use a negative value + to always disable sendfile. [48] +
    +
    How do I customize directory listings?
    + +

    You can override DefaultServlet with you own implementation and use that +in your web.xml declaration. If you +can undertand what was just said, we will assume yo can read the code +to DefaultServlet servlet and make the appropriate adjustments. (If not, +then that method isn't for you) +

    +

    +You can use either localXsltFile or +globalXsltFile and DefaultServlet will create +an xml document and run it through an xsl transformation based +on the values provided in localXsltFile and +globalXsltFile. localXsltFile is first +checked, followed by globalXsltFile, then default +behaviors takes place. +

    + +

    +Format: +

    +    <listing>
    +     <entries>
    +      <entry type='file|dir' urlPath='aPath' size='###' date='gmt date'>
    +        fileName1
    +      </entry>
    +      <entry type='file|dir' urlPath='aPath' size='###' date='gmt date'>
    +        fileName2
    +      </entry>
    +      ...
    +     </entries>
    +     <readme></readme>
    +    </listing>
    +
    +
      +
    • size will be missing if type='dir'
    • +
    • Readme is a CDATA entry
    • +
    +

    +The following is a sample xsl file which mimics the default tomcat behavior: +
    +<?xml version="1.0"?>
    +
    +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    +  version="1.0">
    +
    +  <xsl:output method="xhtml" encoding="iso-8859-1" indent="no"/>
    +
    +  <xsl:template match="listing">
    +   <html>
    +    <head>
    +      <title>
    +        Sample Directory Listing For
    +        <xsl:value-of select="@directory"/>
    +      </title>
    +      <style>
    +        h1{color : white;background-color : #0086b2;}
    +        h3{color : white;background-color : #0086b2;}
    +        body{font-family : sans-serif,Arial,Tahoma;
    +             color : black;background-color : white;}
    +        b{color : white;background-color : #0086b2;}
    +        a{color : black;} HR{color : #0086b2;}
    +      </style>
    +    </head>
    +    <body>
    +      <h1>Sample Directory Listing For
    +            <xsl:value-of select="@directory"/>
    +      </h1>
    +      <hr size="1" />
    +      <table cellspacing="0"
    +                  width="100%"
    +            cellpadding="5"
    +                  align="center">
    +        <tr>
    +          <th align="left">Filename</th>
    +          <th align="center">Size</th>
    +          <th align="right">Last Modified</th>
    +        </tr>
    +        <xsl:apply-templates select="entries"/>
    +        </table>
    +      <xsl:apply-templates select="readme"/>
    +      <hr size="1" />
    +      <h3>Apache Tomcat/6.0</h3>
    +    </body>
    +   </html>
    +  </xsl:template>
    +
    +
    +  <xsl:template match="entries">
    +    <xsl:apply-templates select="entry"/>
    +  </xsl:template>
    +
    +  <xsl:template match="readme">
    +    <hr size="1" />
    +    <pre><xsl:apply-templates/></pre>
    +  </xsl:template>
    +
    +  <xsl:template match="entry">
    +    <tr>
    +      <td align="left">
    +        <xsl:variable name="urlPath" select="@urlPath"/>
    +        <a href="{$urlPath}">
    +          <tt><xsl:apply-templates/></tt>
    +        </a>
    +      </td>
    +      <td align="right">
    +        <tt><xsl:value-of select="@size"/></tt>
    +      </td>
    +      <td align="right">
    +        <tt><xsl:value-of select="@date"/></tt>
    +      </td>
    +    </tr>
    +  </xsl:template>
    +
    +</xsl:stylesheet>
    +
    + +
    How do I secure directory listings?
    + +Use web.xml in each individual webapp. See the security section of the +Servlet specification. + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/deployer-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/deployer-howto.html new file mode 100644 index 0000000..19ddd0e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/deployer-howto.html @@ -0,0 +1,300 @@ +Apache Tomcat 6.0 - Tomcat Web Application Deployment
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Tomcat Web Application Deployment

    Printer Friendly Version
    print-friendly
    version +
    Table of Contents
    + + +
    Introduction
    +

    + Deployment is the term used for the process of installing a web + application (either a 3rd party WAR or your own custom web application) + into the Tomcat server. +

    +

    + Web application deployment may be accomplished in a number of ways + within the Tomcat server. +

      +
    • Statically; the web application is setup before Tomcat is started
    • +
    • + Dynamically; in conjunction with the Tomcat Manager web application or + manipulating already deployed web applications +
    • +
    +

    +

    + The Tomcat Manager is a tool that allows URL-based web application + deployment features. There is also a tool called the Client Deployer, + which is a command shell based script that interacts with the Tomcat + Manager but provides additional functionality such as compiling and + validating web applications as well as packaging web application into + web application resource (WAR) files. +

    +
    Installation
    +

    + There is no installation required for static deployment of web + applications as this is provided out of the box by Tomcat. Nor is any + installation required for deployment functions with the Tomcat Manager, + although some configuration is required as detailed in the + Tomcat Manager manual. An installation is however required if you wish + to use the Tomcat Client Deployer (TCD). +

    +

    + The TCD is not packaged with the Tomcat core + distribution, and must therefore be downloaded separately from + the Downloads area. The download is usually labelled + apache-tomcat-6.0.x-deployer. +

    +

    + TCD has prerequisites of Apache Ant 1.6.2+ and a Java installation. + Your environment should define an ANT_HOME environment value pointing to + the root of your Ant installation, and a JAVA_HOME value pointing to + your Java installation. Additionally, you should ensure Ant's ant + command, and the Java javac compiler command run from the command shell + that your operating system provides. +

    +
      +
    1. Download the TCD distribution
    2. +
    3. + The TCD package need not be extracted into any existing Tomcat + installation, it can be extracted to any location. +
    4. +
    5. Read Using the + Tomcat Client Deployer
    6. +
    +
    A word on Contexts
    +

    + In talking about deployment of web applications, the concept of a + Context is required to be understood. A Context is what Tomcat + calls a web application. +

    +

    + In order to configure a Context within Tomcat a Context Descriptor + is required. A Context Descriptor is simply an XML file that contains + Tomcat related configuration for a Context, e.g naming resources or + session manager configuration. In earlier versions of + Tomcat the content of a Context Descriptor configuration was often stored within + Tomcat's primary configuration file server.xml but this is now + discouraged (although it currently still works). +

    +

    + Context Descriptors not only help Tomcat to know how to configure + Contexts but other tools such as the Tomcat Manager and TDC often use + these Context Descriptors to perform their roles properly. +

    +

    + The locations for Context Descriptors are; +

      +
    1. $CATALINA_HOME/conf/[enginename]/[hostname]/context.xml
    2. +
    3. $CATALINA_HOME/webapps/[webappname]/META-INF/context.xml
    4. +
    + Files in (1) are named [webappname].xml but files in (2) are named + context.xml. If a Context Descriptor is not provided for a Context, + Tomcat configures the Context using default values. +

    +
    Deployment on Tomcat startup
    +

    + If you are not interested in using the Tomcat Manager, or TCD, + then you'll need to deploy your web applications + statically to Tomcat, followed by a Tomcat startup. The location you + deploy web applications to for this type of deployment is called the + appBase which is specified per Host. You either copy a + so-called exploded web application, i.e non-compressed, to this + location, or a compressed web application resource .WAR file. +

    +

    + The web applications present in the location specified by the Host's + (default Host is "localhost") appBase attribute (default + appBase is "$CATALINA_HOME/webapps") will be deployed on Tomcat startup + only if the Host's deployOnStartup attribute is "true". +

    +

    + The following deployment sequence will occur on Tomcat startup in that + case: +

    +
      +
    1. Any Context Descriptors will be deployed first.
    2. +
    3. + Exploded web applications not referenced by any Context + Descriptor will then be deployed. If they have an associated + .WAR file in the appBase and it is newer than the exploded web application, + the exploded directory will be removed and the webapp will be + redeployed from the .WAR +
    4. +
    5. .WAR files will be deployed
    6. +
    +

    + Note again that for each deployed web application, a + Context Descriptor will be created unless one exists already. +

    +
    Deploying on a running Tomcat server
    +

    + It is possible to deploy web applications to a running Tomcat server. +

    +

    + If the Host autoDeploy attribute is "true", the Host will + attempt to deploy and update web applications dynamically, as needed, + for example if a new .WAR is dropped into the appBase. + For this to work, the Host needs to have background processing + enabled which is the default configuration. +

    + +

    + autoDeploy set to "true" and a running Tomcat allows for: +

    +
      +
    • Deployment of .WAR files copied into the Host appBase.
    • +
    • + Deployment of exploded web applications which are + copied into the Host appBase. +
    • +
    • + Re-deployment of a web application which has already been deployed from + a .WAR when the new .WAR is provided. In this case the exploded + web application is removed, and the .WAR is expanded again. + Note that the explosion will not occur if the Host is configured + so that .WARs are not exploded with a unpackWARs + attribute set to "false", in which case the web application + will be simply redeployed as a compressed archive. +
    • +
    • + Re-deployment of a web application if the /WEB-INF/web.xml file (or any + other resource defined as a WatchedResource) is updated. +
    • +
    • + Re-deployment of a web application if the Context Descriptor file from which + the web application has been deployed is updated. +
    • +
    • + Re-deployment of a web application if a Context Descriptor file (with a + filename corresponding to the Context path of the previously deployed + web application) is added to the + $CATALINA_HOME/conf/[enginename]/[hostname]/ + directory. +
    • +
    • + Undeployment of a web application if its document base (docBase) + is deleted. Note that on Windows, this assumes that anti-locking + features (see Context configuration) are enabled, otherwise it is not + possible to delete the resources of a running web application. +
    • +
    +

    + Note that web application reloading can also be configured in the loader, in which + case loaded classes will be tracked for changes. +

    +
    Deploying using the Tomcat Manager
    +

    + The Tomcat Manager is covered in its own manual page. +

    +
    Deploying using the Client Deployer Package
    +

    + Finally, deployment of web application may be achieved using the + Tomcat Client Deployer. This is a package which can be used to + validate, compile, compress to .WAR, and deploy web applications to + production or development Tomcat servers. It should be noted that this feature + uses the Tomcat Manager and as such the target Tomcat server should be + running. +

    + +

    + It is assumed the user will be familar with Apache Ant for using the TCD. + Apache Ant is a scripted build tool. The TCD comes pre-packaged with a + build script to use. Only a modest understanding of Apache Ant is + required (installation as listed earlier in this page, and familiarity + with using the operating system command shell and configuring + environment variables). +

    + +

    + The TCD includes Ant tasks, the Jasper page compiler for JSP compilation + before deployment, as well as a task which + validates the web application Context Descriptor. The validator task (class + org.apache.catalina.ant.ValidatorTask) allows only one parameter: + the base path of an exploded web application. +

    + +

    + The TCD uses an exploded web application as input (see the list of the + properties used below). A web application that is programatically + deployed with the deployer may include a Context Desciptor in + /META-INF/context.xml. +

    + +

    + The TCD includes a ready-to-use Ant script, with the following targets: +

    +
      +
    • + compile (default): Compile and validate the web + application. This can be used standalone, and does not need a running + Tomcat server. The compiled application will only run on the associated + Tomcat 5.5.x server release, and is not guaranteed to work on another + Tomcat release, as the code generated by Jasper depends on its runtime + component. It should also be noted that this target will also compile + automatically any Java source file located in the + /WEB-INF/classes folder of the web application.
    • +
    • + deploy: Deploy a web application (compiled or not) to + a Tomcat server. +
    • +
    • undeploy: Undeploy a web application
    • +
    • start: Start web application
    • +
    • reload: Reload web application
    • +
    • stop: Stop web application
    • +
    + +

    + In order for the deployment to be configured, create a file + called deployer.properties in the TCD installation + directory root. In this file, add the following name=value pairs per + line: +

    + +

    + Additionally, you will need to ensure that a user has been + setup for the target Tomcat Manager (which TCD uses) otherwise the TCD + will not authenticate with the Tomcat Manager and the deployment will + fail. To do this, see the Tomcat Manager page. +

    + +
      +
    • + build: The build folder used will be, by default, + ${build}/webapp/${path}. After the end of the execution + of the compile target, the web application .WAR will be + located at ${build}/webapp/${path}.war. +
    • +
    • + webapp: The directory containing the exploded web application + which will be compiled and validated. By default, the folder is + myapp. +
    • +
    • + path: Deployed context path of the web application, + by default /myapp. +
    • +
    • + url: Absolute URL to the Tomcat Manager web application of a + running Tomcat server, which will be used to deploy and undeploy the + web application. By default, the deployer will attempt to access + a Tomcat instance running on localhost, at + http://localhost:8080/manager. +
    • +
    • + username: Tomcat Manager username (user should have a role of + manager) +
    • +
    • password: Tomcat Manager password.
    • +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/developers.html b/P51/apache-tomcat-6.0.14/webapps/docs/developers.html new file mode 100644 index 0000000..d0d2020 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/developers.html @@ -0,0 +1,43 @@ +Apache Tomcat 6.0 - Tomcat Developers
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Tomcat Developers

    Printer Friendly Version
    print-friendly
    version +
    Active Developers
    + +

    + The list indicates the developers' main areas of interest. Feel free to + add to the list :) The developers email addresses are + [login]@apache.org. Please do not contact + developers directly for any support issues (please post to the + tomcat-users mailing list instead, or one of the other support + resources; some organizations and individual consultants also offer + for pay Tomcat support, as listed on the + vendors page + on the Jakarta website). +

    + +
      +
    • Amy Roh (amyroh): Catalina, Admin webapp
    • +
    • Bill Barker (billbarker): Connectors
    • +
    • Costin Manolache (costin): Catalina, Connectors
    • +
    • Filip Hanik (fhanik): Clustering
    • +
    • Glenn Nielsen (glenn): Catalina, Connectors
    • +
    • Henri Gomez (hgomez): Connectors
    • +
    • Jan Luehe (luehe): Jasper
    • +
    • Jean-Francois Arcand (jfarcand): Catalina
    • +
    • Jean-Frederic Clere (jfclere): Connectors
    • +
    • Jim Jagielski (jim): Connectors
    • +
    • Kin-Man Chung (kinman): Jasper
    • +
    • Mladen Turk (mturk): Connectors
    • +
    • Peter Rossbach (pero): Catalina, Clustering, JMX
    • +
    • Remy Maucherat (remm): Catalina, Connectors, Docs
    • +
    • Tim Funk (funkman): Catalina, Docs
    • +
    • Yoav Shapira (yoavs): Docs, JMX, Catalina, balancer, Release Manager
    • +
    + +
    Retired Developers
    + + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/extras.html b/P51/apache-tomcat-6.0.14/webapps/docs/extras.html new file mode 100644 index 0000000..393ef76 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/extras.html @@ -0,0 +1,54 @@ +Apache Tomcat 6.0 - Additional Components
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Additional Components

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    + A number of additional third party components may be used with Apache Tomcat, but are not + provided directly in the downlad bundle for a variety of reasons. These may be built by + users should they need it. +

    + +
    Building
    + +

    + The additional components are built using the extras.xml Ant script which is + present in the source bundle of Tomcat. +

    + +

    The build process is the following:

    + +
      +
    • Follow the build instructions to build a Tomcat binary from + the source bundle (note: it will be used by the build process of the additional components, but + does not need to be actually used later on)
    • +
    • Execute the command ant -f extras.xml to run the build script
    • +
    • The additional components JARs will be placed in the output/extras folder
    • +
    • Refer to the documentation below about the usage of these JARs
    • +
    + +
    Components list
    + +
    Full commons-logging implementation
    + +

    + Tomcat uses a package renamed commons-logging API implementation which is hardcoded to use + the java.util.logging API. The commons-logging additional component builds a full fledged + package renames commons-logging implementation which can be used to replace the implementation + provided with Tomcat. See the logging page for usage instructions. +

    + +
    + +
    Web Services support (JSR 109)
    + +

    + Tomcat provides factories for JSR 109 which may be used to resolve web services references. + Place the generated catalina-ws.jar as well as jaxrpc.jar and wsdl4j.jar (or another implementation + of JSR 109) in the Tomcat lib folder. +

    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-admin-apps.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-admin-apps.html new file mode 100644 index 0000000..932b094 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-admin-apps.html @@ -0,0 +1,252 @@ +Catalina Functional Specifications - Administrative Apps - Overall Requirements
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Administrative Apps

    Internal Servlets

    Realm Implementations

    Catalina Functional Specifications

    Administrative Apps - Overall Requirements

    Printer Friendly Version
    print-friendly
    version +
    Overview
    + + +
    Introduction
    + +

    The purpose of this specification is to define high level requirements + for administrative applications that can be used to manage the operation + of a running Tomcat 5 container. A variety of Access Methods + to the supported administrative functionality shall be supported, to + meet varying requirements:

    +
      +
    • As A Scriptable Web Application - The existing + Manager web application provides a simple HTTP-based + interface for managing Tomcat through commands that are expressed + entirely through a request URI. This is useful in environments + where you wish to script administrative commands with tools that + can generate HTTP transactions.
    • +
    • As An HTML-Based Web Application - Use an HTML presentation + to provide a GUI-like user interface for humans to interact with the + administrative capabilities.
    • +
    • As SOAP-Based Web Services - The operational commands to + administer Tomcat are made available as web services that utilize + SOAP message formats.
    • +
    • As Java Management Extensions (JMX) Commands - The operational + commands to administer Tomcat are made available through JMX APIs, + for integration into management consoles that utilize them.
    • +
    • Other Remote Access APIs - Other remote access APIs, such + as JINI, RMI, and CORBA can also be utilized to access administrative + capabilities.
    • +
    + +

    Underlying all of the access methods described above, it is assumed + that the actual operations are performed either directly on the + corresponding Catalina components (such as calling the + Deployer.deploy() method to deploy a new web application), + or through a "business logic" layer that can be shared across all of the + access methods. This approach minimizes the cost of adding new + administrative capabilities later -- it is only necessary to add the + corresponding business logic function, and then write adapters to it for + all desired access methods.

    + +

    The current status of this functional specification is + PROPOSED. It has not yet been discussed and + agreed to on the TOMCAT-DEV mailing list.

    + +
    + + +
    External Specifications
    + +

    The implementation of this functionality depends on the following + external specifications:

    + + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • To the maximum extent feasible, all administrative functions, + and the access methods that support them, shall run portably + on all platforms where Tomcat 5 itself runs.
    • +
    • In a default Tomcat distribution, all administrative capabilities + shall be disabled. It shall be necessary for a system + administrator to specifically enable the desired access methods + (such as by adding a username/password with a specific role to + the Tomcat user's database.
    • +
    • Administrative functions shall be realized as direct calls to + corresponding Catalina APIs, or through a business logic layer + that is independent of the access method used to initiate it.
    • +
    • The common business logic components shall be implemented in + package org.apache.catalina.admin.
    • +
    • The common business logic components shall be built as part of the + standard Catalina build process, and made visible in the + Catalina class loader.
    • +
    • The Java components required for each access method shall be + implemented in subpackages of org.apache.catalina.admin. +
    • +
    • The build scripts should treat each access method as optional, + so that it will be built only if the corresponding required + APIs are present at build time.
    • +
    • It shall be possible to save the configured state of the running + Tomcat container such that this state can be reproduced when the + container is shut down and restarted.
    • +
    • Adminstrative commands to start up and shut down the overall + Tomcat container are out of scope for the + purposes of these applications. It is assumed that other + (usually platform-specific) mechanisms will be used for container + startup and shutdown.
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + administrative applications to operate correctly:

    +
      +
    • For access methods that require creation of server sockets, the + appropriate ports must be configured and available.
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of administrative applications depends on the + following specific features of the surrounding container:

    +
      +
    • To the maximum extent feasible, Catalina components that offer + direct administrative APIs and property setters shall support + "live" changes to their operation, without requiring a container + restart.
    • +
    + +
    + + +
    External Technologies
    + +

    The availability of the following technologies can be assumed + for the implementation and operation of the various access methods + and the corresponding administrative business logic:

    + + +
    + + +
    Functionality
    + + +
    Properties of Administered Objects
    + +

    Functional requirements for administrative applications are specified + in terms of Administered Objects, whose definitions and detailed + properties are listed here. In general, + Administered Objects correspond to components in the Catalina architecture, + but these objects are defined separately here for the following reasons:

    +
      +
    • It is possible that the administrative applications do not expose + every possible configurable facet of the underlying components.
    • +
    • In some cases, an Administered Object (from the perspective of an + administrative operation) is realized by more than one Catalina + component, at a finer-grained level of detail.
    • +
    • It is necessary to represent the configuration information for a + component separately from the component itself (for instance, in + order to store that configuration information for later use).
    • +
    • It is necessary to represent configuration information (such as + a Default Context) when there is no corresponding component instance. +
    • +
    • Administered Objects, when realized as Java classes, will include + methods for administrative operations that have no correspondence + to operations performed by the corresponding actual components.
    • +
    + +

    It is assumed that the reader is familiar with the overall component + architecture of Catalina. For further information, see the corresponding + Developer Documentation. To distinguish names that are used as both + Administered Objects and Components, different + font presentations are utilized. Default values for many properties + are listed in [square brackets].

    + +
    + + +
    Supported Administrative Operations
    + +

    The administrative operations that are available are described in terms + of the corresponding Administered Objects (as defined above), in a manner + that is independent of the access method by which these operations are + requested. In general, such operations are relevant only in the context + of a particular Administered Object (and will most likely be realized as + method calls on the corresponding Administered Object classes), so they + are organized based on the currently "focused" administered object. + The available Supported Operations are documented + here.

    + +
    + + +
    Access Method Specific Requirements
    + +
    Scriptable Web Application
    + +

    An appropriate subset of the administrative operations described above + shall be implemented as commands that can be performed by the "Manager" + web application. FIXME - Enumerate them.

    + +

    In addition, this web application shall conform to the following + requirements:

    +
      +
    • All request URIs shall be protected by a security constraint that + requires security role manager for processing.
    • +
    • The default user database shall not contain any + user that has been assigned the role manager.
    • +
    + +
    HTML-Based Web Application
    + +

    The entire suite of administrative operations described above shall be + made available through a web application designed for human interaction. + In addition, this web application shall conform to the following + requirements:

    +
      +
    • Must be implemented using servlet, JSP, and MVC framework technologies + described under "External Technologies", above.
    • +
    • Prompts and error messages must be internationalizable to multiple + languages.
    • +
    • Rendered HTML must be compatible with Netscape Navigator (verson 4.7 + or later) and Internet Explorer (version 5.0 or later).
    • +
    + +
    + + +
    Testable Assertions
    + +

    FIXME - Complete this section.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-admin-objects.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-admin-objects.html new file mode 100644 index 0000000..5d33f2d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-admin-objects.html @@ -0,0 +1,420 @@ +Catalina Functional Specifications - Administrative Apps - Administered Objects
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Administrative Apps

    Internal Servlets

    Realm Implementations

    Catalina Functional Specifications

    Administrative Apps - Administered Objects

    Printer Friendly Version
    print-friendly
    version +
    Administered Objects Overview
    + +

    This document defines the Administered Objects that represent +the internal architectural components of the Catalina servlet container. +Associated with each is a set of Supported +Operations that can be performed when the administrative application is +"focused" on a particular configurable object.

    + +

    The following Administered Objects are defined:

    + + +
    Access Logger
    + +

    An Access Logger is an optional Valve that can + create request access logs in the same formats as those provided by + web servers. Such access logs are useful input to hit count and user + access tracking analysis programs. An Access Logger can be attached to + an Engine, a Host, a Context, or a Default + Context.

    + +

    The standard component implementing an Access Logger is + org.apache.catalina.valves.AccessLogValve. It supports the + following configurable properties:

    +
      +
    • debug - Debugging detail level. [0]
    • +
    • directory - Absolute or relative (to $CATALINA_HOME) path + of the directory into which access log files are created. + [logs].
    • +
    • pattern - Pattern string defining the fields to be + included in the access log output, or "common" for the standard + access log pattern. See + org.apache.catalina.valves.AccessLogValve for more + information. [common]
    • +
    • prefix - Prefix added to the beginning of each log file + name created by this access logger.
    • +
    • resolveHosts - Should IP addresses be resolved to host + names in the log? [false]
    • +
    • suffix - Suffix added to the end of each log file name + created by this access logger.
    • +
    + +
    Connector
    + +

    A Connector is the representation of a communications endpoint + by which requests are received from (and responses returned to) a Tomcat + client. The administrative applications shall support those connectors + that are commonly utilized in Tomcat installations, as described in detail + below.

    + +

    For standalone use, the standard connector supporting the HTTP/1.1 + protocol is org.apache.catalina.connectors.http.HttpConnector. + It supports the following configurable properties:

    +
      +
    • acceptCount - The maximum queue length of incoming + connections that have not yet been accepted. [10]
    • +
    • address - For servers with more than one IP address, the + address upon which this connector should listen. [All Addresses]
    • +
    • bufferSize - Default input buffer size (in bytes) for + requests created by this Connector. [2048]
    • +
    • debug - Debugging detail level. [0]
    • +
    • enableLookups - Should we perform DNS lookups on remote + IP addresses when request.getRemoteHost() is called? + [true]
    • +
    • maxProcessors - The maximum number of processor threads + supported by this connector. [20]
    • +
    • minProcessors - The minimum number of processor threads + to be created at container startup. [5]
    • +
    • port - TCP/IP port number on which this Connector should + listen for incoming requests. [8080]
    • +
    • proxyName - Host name to be returned when an application + calls request.getServerName(). [Value of Host: header]
    • +
    • proxyPort - Port number to be returned when an application + calls request.getServerPort(). [Same as port] +
    • +
    + +
    Context
    + +

    A Context is the representation of an individual web application, + which is associated with a corresponding Host. Note that the + administrable properties of a Context do not + include any settings from inside the web application deployment descriptor + for that application.

    + +

    The standard component implementing a Context is + org.apache.catalina.core.StandardContext. It supports the + following configurable properties:

    +
      +
    • cookies - Should be use cookies for session identifier + communication? [true]
    • +
    • crossContext - Should calls to + ServletContext.getServletContext() return the actual + context responsible for the specified path? [false]
    • +
    • debug - Debugging detail level. [0]
    • +
    • docBase - The absolute or relative (to the + appBase of our owning Host) pathname of a + directory containing an unpacked web application, or of a web + application archive (WAR) file.
    • +
    • override - Should settings in this Context + override corresponding settings in the Default Context? + [false]
    • +
    • path - Context path for this web application, or an empty + string for the root application of a Host. [Inferred from + directory or WAR file name]
    • +
    • reloadable - Should Tomcat monitor classes in the + /WEB-INF/classes directory for changes, and reload the + application if they occur? [false]
    • +
    • useNaming - Should Tomcat provide a JNDI naming context, + containing preconfigured entries and resources, corresponding to the + requirements of the Java2 Enterprise Edition specification? [true]
    • +
    • workDir - Absolute pathname of a scratch directory that is + provided to this web application. [Automatically assigned relative to + $CATALINA_HOME/work]
    • +
    + +

    Each Context is owned by a parent Host, and is + associated with:

    +
      +
    • An optional Access Logger that logs all requests processed + by this web application.
    • +
    • Zero or more Environment Entries representing environment + entries for the JNDI naming context associated with a web + application.
    • +
    • Zero or more JDBC Resources representing database connection + pools associated with a web application.
    • +
    • A Loader representing the web application class loader used + by this web application.
    • +
    • A Manager representing the session manager used by this + web application.
    • +
    • An optional Realm used to provide authentication and access + control information for this web application.
    • +
    • Zero or more Request Filters used to limit access to this + web application based on remote host name or IP address.
    • +
    + +
    Default Context
    + +

    A Default Context represents a subset of the configurable + properties of a Context, and is used to set defaults for those + properties when web applications are automatically deployed. A Default + Context object can be associated with an Engine or a + Host. The following configurable properties are supported:

    +
      +
    • cookies - Should be use cookies for session identifier + communication? [true]
    • +
    • crossContext - Should calls to + ServletContext.getServletContext() return the actual + context responsible for the specified path? [false]
    • +
    • reloadable - Should Tomcat monitor classes in the + /WEB-INF/classes directory for changes, and reload the + application if they occur? [false]
    • +
    • useNaming - Should Tomcat provide a JNDI naming context, + containing preconfigured entries and resources, corresponding to the + requirements of the Java2 Enterprise Edition specification? [true]
    • +
    + +

    Each Default Context is owned by a parent Engine or + Host, and is associated with:

    +
      +
    • Zero or more Environment Entries representing environment + entries for the JNDI naming context associated with a web + application.
    • +
    • Zero or more JDBC Resources representing database connection + pools associated with a web application.
    • +
    • An optional Loader representing default configuration + properties for the Loader component of deployed web applications.
    • +
    • An optional Manager representing default configuration + properties for the Manager component fo deployed web applications.
    • +
    + +
    Default Deployment Descriptor
    + +

    Default web application characteristics are configured in a special + deployment descriptor named $CATALINA_HOME/conf/web.xml. This + section describes the configurable components that may be stored there.

    + +

    FIXME - Complete the description of default servlets, + default mappings, default MIME types, and so on.

    + +
    Engine
    + +

    An Engine is the representation of the entire Catalina + servlet container, and processes all requests for all of the associated + virtual hosts and web applications.

    + +

    The standard component implementing an Engine is + org.apache.catalina.core.StandardEngine. It supports the + following configurable properties:

    +
      +
    • debug - Debugging detail level. [0]
    • +
    • defaultHost - Name of the Host to which requests + will be directed if the requested host is unknown. [localhost]
    • +
    • name - Logical name of this engine. [Tomcat Stand-Alone] +
    • +
    + +

    Each Engine is owned by a parent Service, and is + associated with:

    +
      +
    • An optional Access Logger that logs all requests processed + by the entire container.
    • +
    • A Default Context, representing default properties of a + Context for automatically deployed applications for all + associated Hosts (unless overridden by a subordinate + component).
    • +
    • One or more Hosts representing individual virtual hosts + supported by this container.
    • +
    • A Realm used to provide authentication and access control + information for all virtual hosts and web applications (unless + overridden by a subordinate component).
    • +
    • Zero or more Request Filters used to limit access to the + entire container based on remote host name or IP address.
    • +
    + +
    Environment Entry
    + +

    An Environment Entry is the representation of a + <env-entry> element from a web application deployment + descriptor. It will cause the creation of a corresponding entry in the + JNDI naming context provided to the corresponding Context. The + following configurable properties are supported:

    +
      +
    • description - Description of this environment entry.
    • +
    • name - Environment entry name (relative to the + java:comp/env context)
    • +
    • type - Environment entry type (must be one of the fully + qualified Java classes listed in the servlet spec).
    • +
    • value - Environment entry value (must be convertible from + String to the specified type.
    • +
    + +
    Host
    + +

    A Host is the representation of an individual virtual host, + which has a unique set of associated web applications.

    + +

    The standard component implementing a Host is + org.apache.catalina.core.StandardHost. It supports the + following configurable properties:

    +
      +
    • aliases - Zero or more DNS names that are also associated + with this host (for example, a particular host might be named + www.mycompany.com with an alias company.com). +
    • +
    • appBase - Absolute or relative (to $CATALINA_HOME) path + to a directory from which web applications will be automatically + deployed.
    • +
    • debug - Debugging detail level. [0]
    • +
    • name - DNS Name of the virtual host represented by this + object.
    • +
    • unpackWARs - Should web application archive files + deployed by this virtual host be unpacked first? [true]
    • +
    + +

    Each Host is owned by a parent Engine, and is + associated with:

    +
      +
    • An optional Access Logger that logs all requests processed + by this virtual host.
    • +
    • One or more Contexts representing the web applications + operating on this Host.
    • +
    • A Default Context representing default Context + properties for web applications that are automatically deployed + by this Host.
    • +
    • A optional Realm used to provide authentication and access + control information for all web applications associated with this + virtual host (unless overridden by a subordinate component).
    • +
    + +

    FIXME - Should we support configuration of the + User Web Applications functionality?

    + +
    JDBC Resource
    + +

    A JDBC Resources represents a database connection pool (i.e. + an implementation of javax.sql.DataSource that will be + configured and made available in the JNDI naming context associated with + a web application.

    + +

    FIXME - properties of this administered object

    + +
    Loader
    + +

    A Loader represents a web application class loader that will + be utilized to provide class loading services for a particular + Context.

    + +

    The standard component implementing a Loader is + org.apache.catalina.loader.StandardLoader. It supports + the following configurable properties:

    +
      +
    • checkInterval - Number of seconds between checks for + modified classes, if automatic reloading is enabled. [15]
    • +
    • debug - Debugging detail level. [0]
    • +
    • reloadable - Should this class loader check for modified + classes and initiate automatic reloads? [Set automatically from the + reloadable property of the corresponding Context] +
    • +
    + +

    Each Loader is owned by a parent Context.

    + +
    Manager
    + +

    A Manager represents a session manager that will be associated + with a particular web application. FIXME - Add support + for advanced session managers and their associated Stores.

    + +

    The standard component implementing a Manager is + org.apache.catalina.session.StandardManager. It supports + the following configurable properties:

    +
      +
    • checkInterval - Number of seconds between checks for + expired sessions. [60]
    • +
    • debug - Debugging detail level. [0]
    • +
    • entropy - String initialization parameter used to increase + the entropy (initial randomness) of the random number generator used to + create session identifiers. [Inferred from engine, host, and context] +
    • +
    • maxActiveSessions - The maximum number of active sessions + that are allowed, or -1 for no limit. [-1]
    • +
    + +

    Each Manager is owned by a parent Context.

    + +
    Realm
    + +

    A Realm represents a "database" of information about authorized + users, their passwords, and the security roles assigned to them. This will + be used by the container in the implementation of container-managed security + in accordance with the Servlet Specification. Several alternative + implementations are supported.

    + +

    org.apache.catalina.realm.MemoryRealm initializes its user + information from a simple XML file at startup time. If changes are made + to the information in this file, the corresponding web applications using + it must be restarted for the changes to take effect. It supports the + following configurable properties:

    +
      +
    • debug - Debugging detail level. [0]
    • +
    • pathname - Absolute or relative (to $CATALINA_HOME) path to + the XML file containing our user information. [conf/tomcat-users.xml] +
    • +
    + +

    org.apache.catalina.realm.JDBCRealm uses a relational + database (accessed via JDBC APIs) to contain the user information. Changes + in the contents of this database take effect immediately; however, the roles + assigned to a particular user are calculated only when the user initially + logs on (and not per request). The following configurable properties + are supported:

    +
      +
    • connectionName - Database username to use when establishing + a JDBC connection.
    • +
    • connectionPassword - Database password to use when + establishing a JDBC connection.
    • +
    • connectionURL - Connection URL to use when establishing + a JDBC connection.
    • +
    • debug - Debugging detail level. [0]
    • +
    • digest - Name of the MessageDigest algorithm + used to encode passwords in the database, or a zero-length string for + no encoding. [Zero-length String]
    • +
    • driverName - Fully qualified Java class name of the JDBC + driver to be utilized.
    • +
    • roleNameCol - Name of the column, in the User Roles table, + which contains the role name.
    • +
    • userCredCol - Name of the column, in the Users table, + which contains the password (encrypted or unencrypted).
    • +
    • userNameCol - Name of the column, in both the Users and + User Roles tables, that contains the username.
    • +
    • userRoleTable - Name of the User Roles table, which contains + one row per security role assigned to a particular user. This table must + contain the columns specified by the userNameCol and + roleNameCol properties.
    • +
    • userTable - Name of the Users table, which contains one row + per authorized user. This table must contain the columns specified by + the userNameCol and userCredCol properties. +
    • +
    + +

    FIXME - Should we provide mechanisms to edit the contents + of a "tomcat-users.xml" file through the admin applications?

    + +

    Each Realm is owned by a parent Engine, Host, + or Context.

    + +
    Request Filter
    + +

    FIXME - complete this entry

    + +
    Server
    + +

    FIXME - complete this entry

    + +
    Service
    + +

    FIXME - complete this entry

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-admin-opers.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-admin-opers.html new file mode 100644 index 0000000..b96948e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-admin-opers.html @@ -0,0 +1,265 @@ +Catalina Functional Specifications - Administrative Apps - Supported Operations
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Administrative Apps

    Internal Servlets

    Realm Implementations

    Catalina Functional Specifications

    Administrative Apps - Supported Operations

    Printer Friendly Version
    print-friendly
    version +
    Supported Operations Overview
    + +

    This document defines the Supported Operations that may +be performed against the Administered +Objects that are supported by Tomcat 5 administrative applications. +Not all operations are required to be available through every administrative +application that is implemented. However, if a given operation is available, +it should operate consistently with the descriptions found here.

    + +

    Supported Operations are described for the following Administered +Objects:

    + + +
    Access Logger
    + +

    From the perspective of a particular Access Logger, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Engine, Host, or + Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Connector
    + +

    From the perspective of a particular Connector, it shall be + possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Service.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Context
    + +

    From the perspective of a particular Context, it shall be + possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Host.
    • +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Access Logger associated + with this object.
    • +
    • Edit the configurable properties of the associated Access + Logger.
    • +
    • Remove the associated Access Logger.
    • +
    • Create and configure a new Environment Entry associated + with this object.
    • +
    • Select and edit the configurable properties of an associated + Environment Entry.
    • +
    • Remove an associated Environment Entry.
    • +
    • Create and configure a new JDBC Resource associated + with this object.
    • +
    • Select and edit the configurable properties of an associated + JDBC Resource.
    • +
    • Remove an associated JDBC Resource.
    • +
    • Create and configure a new Loader associated with + this object.
    • +
    • Edit the configurable properties of the associated Loader.
    • +
    • Remove the associated Loader.
    • +
    • Create and configure a new Manager associated with + this object.
    • +
    • Edit the configurable properties of the associated Manager.
    • +
    • Remove the associated Manager.
    • +
    • Create and configure a new Realm associated with + this object.
    • +
    • Edit the configurable properties of the associated Realm.
    • +
    • Remove the associated Realm.
    • +
    • Create and configure a new Request Filter associated with + this object.
    • +
    • Select and edit the configurable properties of an + associated Request Filter
    • +
    • Remove an associated Request Filter.
    • +
    + +
    Default Context
    + +

    From the perspective of a particular Default Context, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Engine or Host.
    • +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Environment Entry associated + with this object.
    • +
    • Select and edit the configurable properties of an associated + Environment Entry.
    • +
    • Remove an associated Environment Entry.
    • +
    • Create and configure a new JDBC Resource associated + with this object.
    • +
    • Select and edit the configurable properties of an associated + JDBC Resource.
    • +
    • Remove an associated JDBC Resource.
    • +
    + +
    Engine
    + +

    From the perspective of a particular Engine, it shall be + possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Service.
    • +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Access Logger associated + with this object.
    • +
    • Edit the configurable properties of the associated Access + Logger.
    • +
    • Remove the associated Access Logger.
    • +
    • Create and configure a new Default Context associated + with this object.
    • +
    • Edit the configurable properties of the associated Default + Context.
    • +
    • Remove the associated Default Context.
    • +
    • Create and configure a new Host associated with + this object.
    • +
    • Select and edit the configurable properties of an + associated Host.
    • +
    • Remove an associated Host.
    • +
    • Create and configure a new Realm associated with + this object.
    • +
    • Edit the configurable properties of the associated Realm.
    • +
    • Remove the associated Realm.
    • +
    • Create and configure a new Request Filter associated with + this object.
    • +
    • Select and edit the configurable properties of an + associated Request Filter
    • +
    • Remove an associated Request Filter.
    • +
    + +
    Environment Entry
    + +

    From the perspective of a particular Environment Entry, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Context or Default Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Host
    + +

    From the perspective of a particular Host, it shall be + possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Engine.
    • +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Access Logger associated + with this object.
    • +
    • Edit the configurable properties of the associated Access + Logger.
    • +
    • Remove the associated Access Logger.
    • +
    • Create and configure a new Context associated with + this object.
    • +
    • Select and edit the configurable properties of an associated + Context.
    • +
    • Remove an associated Context.
    • +
    • Create and configure a new Default Context associated + with this object.
    • +
    • Edit the configurable properties of the associated Default + Context.
    • +
    • Remove the associated Default Context.
    • +
    • Create and configure a new Realm associated with + this object.
    • +
    • Edit the configurable properties of the associated Realm.
    • +
    • Remove the associated Realm.
    • +
    • Create and configure a new Request Filter associated with + this object.
    • +
    • Select and edit the configurable properties of an + associated Request Filter
    • +
    • Remove an associated Request Filter.
    • +
    + +
    JDBC Resource
    + +

    From the perspective of a particular JDBC Resource, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Context or Default Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Loader
    + +

    From the perspective of a particular Loader, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Manager
    + +

    From the perspective of a particular Manager, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Realm
    + +

    From the perspective of a particular Realm, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Engine, Host, or + Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Request Filter
    + +

    From the perspective of a particular Request Filter, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Engine, Host, or + Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Server
    + +

    From the perspective of the overall Server, it shall be + possible to perform the following administrative operations:

    +
      +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Service associated with + this object.
    • +
    • Select and edit the configurable properties of an associated + Service.
    • +
    + +
    Service
    + +

    From the perspective of a particular Service, it shall be + possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Server.
    • +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Connector associated with + this object.
    • +
    • Select and edit the configurable properties of an associated + Connector.
    • +
    • Remove an associated Connector.
    • +
    • Create and configure a new Engine associated with + this object.
    • +
    • Edit the configurable properties of the associated Engine.
    • +
    • Remove the associated Engine.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-default.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-default.html new file mode 100644 index 0000000..77de8be --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-default.html @@ -0,0 +1,226 @@ +Catalina Functional Specifications - Default Servlet
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Administrative Apps

    Internal Servlets

    Realm Implementations

    Catalina Functional Specifications

    Default Servlet

    Printer Friendly Version
    print-friendly
    version +
    Overview
    + + +
    Introduction
    + +

    The purpose of the Default Servlet is to serve + static resources of a web application in response to client requests. + As the name implies, it is generally configured as the "default" + servlet for a web application, by being mapped to a URL pattern "/".

    + +
    + + +
    External Specifications
    + +

    The following external specifications have provisions which + partially define the correct behavior of the default servlet:

    + + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • Must be implemented as a servlet.
    • +
    • Must support configurable parameters for debugging detail level, + input buffer size, output buffer size, whether or not to produce + directory listings when no welcome file is present, and whether or not + modifications are supported via DELETE and PUT.
    • +
    • Log debugging and operational messages (suitably internationalized) + via the getServletContext().log() method.
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + the default servlet to operate correctly:

    +
      +
    • The default servlet must be registered in the application deployment + descriptor (or the default deployment descriptor in file + $CATALINA_HOME/conf/web.xml) using a "default servlet" + servlet mapping, signified by URL pattern "/".
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of the default servlet depends on the following + specific features of the surrounding container:

    +
      +
    • The container shall provide a servlet context attribute that + lists the welcome file names that have been defined for this + web application.
    • +
    • The container shall provide a servlet context attribute that + contains a javax.naming.directory.DirContext + implementation representing the static resources of this + web application.
    • +
    + +
    + + +
    Functionality
    + + +
    Initialization Functionality
    + +

    The following processing must be performed when the init() + method of the invoker servlet is called:

    +
      +
    • Process and sanity check configuration parameters.
    • +
    + +
    + + +
    Per-Request Functionality
    + + +

    For all HTTP request methods, the resource path is determined from + the path information provided to this request, either as request attribute + javax.servlet.include.path_info (for a request dispatcher + access to a static resource) or by calling + request.getPathInfo() directly.

    + +

    On each HTTP DELETE request processed by this servlet, the following + processing shall be performed:

    +
      +
    • If modifications to the static resources are not allowed (set by a + configuration parameter), return HTTP status 403 (forbidden).
    • +
    • If an attempt is made to delete a resource from /META-INF + or /WEB-INF, return HTTP status 403 (forbidden).
    • +
    • If the requested resource does not exist, return HTTP status 404 + (not found)
    • +
    • Unbind the resource from the directory context containing the + static resources for this web application. If successful, return + HTTP status 204 (no content). Otherwise, return HTTP status 405 + (method not allowed).
    • +
    + + +

    On each HTTP GET request processed by this servlet, the following + processing shall be performed:

    +
      +
    • If the request is for a resource under /META-INF or + /WEB-INF, return HTTP status 404 (not found).
    • +
    • If the requested resource does not exist, return HTTP status 404 + (not found).
    • +
    • If the requested resource is not a directory, but the resource + path ends in "/" or "\", return HTTP status 404 (not found).
    • +
    • If the requested resource is a directory: +
        +
      • If the request path does not end with "/", redirect to a + corresponding path with "/" appended so that relative references + in welcome files are resolved correctly.
      • +
      • If one of the specified welcome files exists, redirect to the + path for that welcome file so that it will be served explicitly. +
      • +
    • +
    • If the request being processed contains an If-Range + header, perform the processing described in the HTTP/1.1 specification + to determine whether the client's information is up to date.
    • +
    • Determine the content type of the response, by looking up the + corresponding MIME type in our servlet context.
    • +
    • If the requested resource is a directory: +
        +
      • If directory listings are suppressed, return HTTP status 404 + (not found).
      • +
      • Set the content type to text/html.
      • +
    • +
    • Determine the range(s) to be returned, based on the existence of + any If-Range and Range headers.
    • +
    • If the requested resource is a directory, include an ETag + header in the response, with the value calculated based on the content + of the directory.
    • +
    • Include a Last-Modified header in the response documenting + the date/time that the resource was last modified.
    • +
    • Unless we are processing a HEAD request, include the appropriate + content (or content ranges) in the response.
    • +
    + +

    On each HTTP HEAD request processed by this servlet, the following + processing shall be performed:

    +
      +
    • Processed identically to an HTTP GET request, except that the data + content is not transmitted after the headers.
    • +
    + +

    On each HTTP POST request processed by this servlet, the following + processing shall be performed:

    +
      +
    • Processed identically to an HTTP GET request.
    • +
    + + +

    On each HTTP PUT request processed by this servlet, the following + processing shall be perfomred:

    +
      +
    • If modifications to the static resources are not allowed (set by a + configuration parameter), return HTTP status 403 (forbidden).
    • +
    • If an attempt is made to delete a resource from /META-INF + or /WEB-INF, return HTTP status 403 (forbidden).
    • +
    • Create a new resource from the body of this request.
    • +
    • Bind or rebind the specified path to the new resource (depending on + whether it currently exists or not). Return HTTP status as follows: +
        +
      • If binding was unsuccessful, return HTTP status 409 (conflict). +
      • +
      • If binding was successful and the resource did not previously + exist, return HTTP status 201 (created).
      • +
      • If binding was successful and the resource previously existed, + return HTTP status 204 (no content).
      • +
    • +
    + +
    + + +
    Finalization Functionality
    + +

    No specific processing is required when the destroy() + method is called:

    + +
    + + +
    Testable Assertions
    + +

    In addition the the assertions implied by the functionality requirements + listed above, the following additional assertions shall be tested to + validate the behavior of the invoker servlet:

    +
      +
    • Requests for resources that do not exist in the web application must + return HTTP status 404 (not found).
    • +
    • The default servlet must operate identically for web applications that + are run out of a WAR file directly, or from an unpacked directory + structure.
    • +
    • If the web application is running out of an unpacked directory + structure, the default servlet must recognize cases where the resource + has been updated through external means.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-invoker.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-invoker.html new file mode 100644 index 0000000..0502bbc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-invoker.html @@ -0,0 +1,221 @@ +Catalina Functional Specifications - Invoker Servlet
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Administrative Apps

    Internal Servlets

    Realm Implementations

    Catalina Functional Specifications

    Invoker Servlet

    Printer Friendly Version
    print-friendly
    version +
    Overview
    + + +
    Introduction
    + +

    The purpose of the Invoker Servlet is to allow a + web application to dynamically register new servlet definitions + that correspond with a <servlet> element in the + /WEB-INF/web.xml deployment descriptor, and execute + requests utilizing the new servlet definitions. From the perspective + of the newly registered servlets, all servlet lifecycle requirements + of the Servlet Specification (such as calling init() and + destroy() at the correct times) will be respected.

    + +
    + + +
    External Specifications
    + +

    I do not know of any formal specification of the behavior of an + invoker servlet that is publicly available. Anyone know of one?

    + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • Implemented as a servlet.
    • +
    • Exist in the org.apache.catalina.servlets package + so that it can be loaded by the Catalina class loader.
    • +
    • Implement the org.apache.catalina.ContainerServlet + interface, so that it gains knowledge of the Wrapper + that is responsible for itself and, therefore, access to other + internal Catalina components.
    • +
    • Support a configurable debugging detail level.
    • +
    • Log debugging and operational messages (suitably internationalized) + via the getServletContext().log() method.
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + the Invoker servlet to operate correctly:

    +
      +
    • The invoker servlet must be registered in the application deployment + descriptor (or the default deployment descriptor in file + $CATALINA_HOME/conf/web.xml) using a "path mapped" + servlet mapping. The historical default mapping is to URL pattern + "/servlet/*", although the invoker servlet must operate + correctly with an arbitrary mapping.
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of the invoker servlet depends on the following + specific features of the surrounding container:

    +
      +
    • Correct support for the ContainerServlet interface, + including calling setWrapper() before + the init() method of the invoker servlet is called.
    • +
    • The web application class loader must be stored as the context + class loader of the request processing thread.
    • +
    + +
    + + +
    Functionality
    + + +
    Initialization Functionality
    + +

    The following processing must be performed when the init() + method of the invoker servlet is called:

    +
      +
    • Ensure that the container has called setWrapper(). If + not, throw a permanent UnavailableException.
    • +
    • Look up and cache the Context that corresponds to our + Wrapper. This is the component with which new servlet + definitions and mappings will be registered.
    • +
    + +
    + + +
    Per-Request Functionality
    + +

    On each request, the following processing shall be performed:

    +
      +
    1. Calculate the {ServletPath} for this request, either from + request attribute javax.servlet.include.servlet_path or + by calling request.getServletPath().
    2. +
    3. Calculate the {PathInfo} for this request, either from + request attribute javax.servlet.include.path_info or + by calling request.getPathInfo(). If the calculated + {PathInfo} is null, return HTTP status 400 + (bad request).
    4. +
    5. Parse the calculated {PathInfo} value as follows: +
        +
      1. Ignore the leading slash character.
      2. +
      3. Accumulate characters up to the next '/' (if any) as the + {ServletSelector}.
      4. +
      5. If a '/' was encountered, accumulate all characters from that + slash (inclusive) to the end of the string as + {PathRemainder}. If no slash was encountered, + set {PathRemainder} to a zero-length string.
      6. +
    6. +
    7. Determine whether {ServletSelector} is the name of an + existing servlet definition, and process it as follows: +
        +
      1. Ask our associated Context to find and return a + child Wrapper named {ServletSelector}. +
      2. +
      3. If there is no such child, skip to the next major step.
      4. +
      5. Register a new servlet mapping for this Wrapper, + using a URL pattern calculated as follows: + {ServletPath} + "/" + {ServletSelector} + + "/*"
      6. +
      7. Create a request dispatcher using a path calculated as follows: + {ServletPath} + "/" + {ServletSelector} + + {PathRemainder}
      8. +
      9. Forward this request to the created request dispatcher, and + exit from this request.
      10. +
    8. +
    9. Assume that {ServletSelector} is the fully qualified + name of a Java class that implements javax.servlet.Servlet + and process it as follows: +
        +
      1. Synthesize a new {ServletName} for the servlet + definition that will be created.
      2. +
      3. If there is already a child Wrapper associated with + this name, return HTTP status 500 (internal server error), because + a mapping should have already been created for this servlet.
      4. +
      5. Attempt to load a class named {ServletSelector} from + the web application class loader (i.e. the context class loader + for our current thread). If this fails, return HTTP status 404 + (not found).
      6. +
      7. Instantiate an instance of this class. If an error occurs, + return HTTP status 404 (not found).
      8. +
      9. If this class does not implement the + javax.servlet.Servlet interface, return HTTP status + 404 (not found).
      10. +
      11. Create and register a new Wrapper child with our + Context, under name {ServletName}.
      12. +
      13. Register a new servlet mapping for this Wrapper, + using a URL pattern calculated as follows: + {ServletPath} + "/" + {ServletSelector} + + "/*"
      14. +
      15. Create a request dispatcher using a path calculated as follows: + {ServletPath} + "/" + {ServletSelector} + + {PathRemainder}
      16. +
      17. Forward this request to the created request dispatcher, and + exit from this request.
      18. +
    10. +
    + +
    + + +
    Finalization Functionality
    + +

    No specific processing is required when the destroy() + method is called:

    + +
    + + +
    Testable Assertions
    + +

    In addition the the assertions implied by the functionality requirements + listed above, the following additional assertions shall be tested to + validate the behavior of the invoker servlet:

    +
      +
    • It is possible to access an existing servlet definition by name + through the invoker. The existing servlet definition can include + either a <servlet-class> or + <jsp-file> subelement.
    • +
    • When an existing servlet definition is accessed by name, the request + will be ultimately processed by the same servlet instance that would + have processed it had a mapping to that servlet definition been used + on the request directly.
    • +
    • It is possible to access an anonymous servlet by class name + through the invoker.
    • +
    • When an anonymous servlet is accessed, the servlet instance is processed + according to the lifecycle requirements of the Servlet Specification. +
    • +
    • When an anonymous servlet is accessed, the servlet instance receives + a ServletConfig instance with no servlet initialization + parameters.
    • +
    • It is possible to utilize the invoker servlet via a direct request.
    • +
    • It is possible to utilize the invoker servlet via a call to + RequestDispatcher.forward(), or the corresponding + <jsp:forward> tag in a JSP page.
    • +
    • It is possible to utilize the invoker servlet via a call to + RequestDispatcher.include(), or the corresponding + <jsp:include> tag in a JSP page.
    • +
    • It is possible to use any HTTP method (including GET and POST) that + is supported by the Servlet class that is ultimately executed.
    • +
    • The invoker servlet should never be asked to process a second or + subsequent request for the same {ServletSelector} (because + it will have registered an appropriate servlet mapping.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-jdbc-realm.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-jdbc-realm.html new file mode 100644 index 0000000..2c73ad6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-jdbc-realm.html @@ -0,0 +1,222 @@ +Catalina Functional Specifications - JDBCRealm
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Administrative Apps

    Internal Servlets

    Realm Implementations

    Catalina Functional Specifications

    JDBCRealm

    Printer Friendly Version
    print-friendly
    version +
    Overview
    + + +
    Introduction
    + +

    The purpose of the JDBCRealm implementation is to + provide a mechanism by which Tomcat 5 can acquire information needed + to authenticate web application users, and define their security roles, + from a relational database accessed via JDBC APIs. For integration + with Catalina, the resulting class(es) must implement the + org.apache.catalina.Realm interface.

    + +

    This specification reflects a combination of functionality that is + already present in the org.apache.catalina.realm.JDBCRealm + class, as well as requirements for enhancements that have been + discussed. Where appropriate, requirements statements are marked + [Current] and [Requested] to distinguish them.

    + +

    The current status of this functional specification is + PROPOSED. It has not yet been discussed and + agreed to on the TOMCAT-DEV mailing list.

    + +
    + + +
    External Specifications
    + +

    The implementation of this functionality depends on the following + external specifications:

    + + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • Be realized in one or more implementation classes.
    • +
    • Implement the org.apache.catalina.Realm interface. + [Current]
    • +
    • Implement the org.apache.catalina.Lifecycle + interface. [Current]
    • +
    • Subclass the org.apache.catalina.realm.RealmBase + base class.
    • +
    • Live in the org.apache.catalina.realm package. + [Current]
    • +
    • Support a configurable debugging detail level. [Current]
    • +
    • Log debugging and operational messages (suitably internationalized) + via the getContainer().log() method. [Current]
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + JDBCRealm to operate correctly:

    +
      +
    • The desire to utilize JDBCRealm must be registered in + $CATALINA_HOME/conf/server.xml, in a + <Realm> element that is nested inside a + corresponding <Engine>, <Host>, + or <Context> element.
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of JDBCRealm depends on the following + specific features of the surrounding container:

    +
      +
    • Interactions with JDBCRealm will be initiated by + the appropriate Authenticator implementation, based + on the login method that is selected.
    • +
    • JDBCRealm must have the JDBC standard API classes + available to it. For a JDK 1.2 or later container, these APIs + are included in the standard platform.
    • +
    • When connection pooling is implemented, JDBCRealm + must have the JDBC Optional Package (version 2.0 or later) APIs + available to it. This library is available as a separate + download (and will be included in Tomcat binary distributions).
    • +
    + +
    + + +
    Functionality
    + + +
    Overview of Operation
    + +

    The main purpose of JDBCRealm is to allow Catalina to + authenticate users, and look up the corresponding security roles, from + the information found in a relational database accessed via JDBC APIs. + For maximum flexibility, the details of how this is done (for example, + the names of the required tables and columns) should be configurable.

    + +

    Each time that Catalina needs to authenticate a user, it will call + the authenticate() method of this Realm implementation, + passing the username and password that were specified by the user. If + we find the user in the database (and match on the password), we accumulate + all of the security roles that are defined for this user, and create a + new GenericPrincipal object to be returned. If the user + is not authenticated, we return null instead. The + GenericUser object caches the set of security roles that + were owned by this user at the time of authentication, so that calls to + isUserInRole() can be answered without going back to the + database every time.

    + +
    + + +
    Detailed Functional Requirements
    + + +

    Configurable Properties

    + +

    The implementation shall support the following properties + that can be configured with JavaBeans property setters:

    +
      +
    • Configuration parameters defining the JDBC driver to use, the + database connection URL to be accessed, and the username/password + to use for logging in. [Current]
    • +
    • Configuration parameters describing the connection pool to be + created to support simultaneous authentications. [Requested]
    • +
    • Name of the tables to be searched for users and roles. [Current]
    • +
    • Name of the columns to be used for usernames, passwords, and + role names. [Current]
    • +
    + +

    Lifecycle Functionality

    + +

    The following processing must be performed when the start() + method is called:

    +
      +
    • Establish a connection to the configured database, using the + configured username and password. [Current]
    • +
    • Configure and establish a connection pool of connections to the + database. [Requested]
    • +
    + +

    The following processing must be performed when the stop() + method is called:

    +
      +
    • Close any opened connections to the database.
    • +
    + + +

    Method authenticate() Functionality

    + +

    When authenticate() is called, the following processing + is required:

    +
      +
    • Acquire the one and only connection [Current] or acquire a connection + from the connection pool [Requested].
    • +
    • Select the one and only row from the user's table for this user, + and retrieve the corresponding password column. If zero rows (or + more than one row) are found, return null.
    • +
    • Authenticate the user by comparing the (possibly encrypted) password + value that was received against the password presented by the user. + If there is no match, return null.
    • +
    • Acquire a List of the security roles assigned to the + authenticated user by selecting from the roles table.
    • +
    • Construct a new instance of class + org.apache.catalina.realm.GenericPrincipal, passing as + constructor arguments: this realm instance, the authenticated + username, and a List of the security roles associated + with this user.
    • +
    • WARNING - Do not attempt to cache and reuse previous + GenericPrincipal objects for a particular user, because + the information in the directory server might have changed since the + last time this user was authenticated.
    • +
    • Return the newly constructed GenericPrincipal.
    • +
    + + +

    Method hasRole() Functionality

    + +

    When hasRole() is called, the following processing + is required:

    +
      +
    • The principal that is passed as an argument SHOULD + be one that we returned (instanceof class + org.apache.catalina.realm.GenericPrincipal, with a + realm property that is equal to our instance.
    • +
    • If the passed principal meets these criteria, check + the specified role against the list returned by + getRoles(), and return true if the + specified role is included; otherwise, return false.
    • +
    • If the passed principal does not meet these criteria, + return false.
    • +
    + +
    + +
    Testable Assertions
    + +

    In addition the the assertions implied by the functionality requirements + listed above, the following additional assertions shall be tested to + validate the behavior of JDBCRealm:

    +
      +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-jndi-realm.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-jndi-realm.html new file mode 100644 index 0000000..cad65c7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-jndi-realm.html @@ -0,0 +1,377 @@ +Catalina Functional Specifications - JNDIRealm
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Administrative Apps

    Internal Servlets

    Realm Implementations

    Catalina Functional Specifications

    JNDIRealm

    Printer Friendly Version
    print-friendly
    version +
    Overview
    + + +
    Introduction
    + +

    The purpose of the JNDIRealm implementation is to + provide a mechanism by which Tomcat 5 can acquire information needed + to authenticate web application users, and define their security roles, + from a directory server or other service accessed via JNDI APIs. For + integration with Catalina, this class must implement the + org.apache.catalina.Realm interface.

    + +

    This specification reflects a combination of functionality that is + already present in the org.apache.catalina.realm.JNDIRealm + class, as well as requirements for enhancements that have been + discussed. Where appropriate, requirements statements are marked + [Current] and [Requested] to distinguish them.

    + +

    The current status of this functional specification is + PROPOSED. It has not yet been discussed and + agreed to on the TOMCAT-DEV mailing list.

    + +

    The code in the current version of JNDIRealm, and the + ideas expressed in this functional specification, are the results of + contributions from many individuals, including (alphabetically):

    +
      +
    • Holman, John <j.g.holman@qmw.ac.uk>
    • +
    • Lockhart, Ellen <elockhart@home.com>
    • +
    • McClanahan, Craig <craigmcc@apache.org>
    • +
    + +
    + + +
    External Specifications
    + +

    The implementation of this functionality depends on the following + external specifications:

    + + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • Be realized in one or more implementation classes.
    • +
    • Implement the org.apache.catalina.Realm interface. + [Current]
    • +
    • Implement the org.apache.catalina.Lifecycle + interface. [Current]
    • +
    • Subclass the org.apache.catalina.realm.RealmBase + base class.
    • +
    • Live in the org.apache.catalina.realm package. + [Current]
    • +
    • Support a configurable debugging detail level. [Current]
    • +
    • Log debugging and operational messages (suitably internationalized) + via the getContainer().log() method. [Current]
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + JNDIRealm to operate correctly:

    +
      +
    • The desire to utilize JNDIRealm must be registered in + $CATALINA_HOME/conf/server.xml, in a + <Realm> element that is nested inside a + corresponding <Engine>, <Host>, + or <Context> element.
    • +
    • If the Administrator Login operational mode is selected, + the configured administrator username and password must be configured + in the corresponding directory server.
    • +
    • If the Username Login operational mode is selected, + the corresponding directory server must be configured to accept + logins with the username and password that will be passed to + JNDIRealm by the appropriate Authenticator. +
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of JNDIRealm depends on the following + specific features of the surrounding container:

    +
      +
    • Interactions with JNDIRealm will be initiated by + the appropriate Authenticator implementation, based + on the login method that is selected.
    • +
    • JNDIRealm must have the JNDI API classes available + to it. For a JDK 1.2 container, that means jndi.jar + and the appropriate implementation (such as ldap.jar) + must be placed in the server/lib directory.
    • +
    + +
    + + +
    Functionality
    + + +
    Operational Modes
    + +

    The completed JNDIRealm must support two major operational + modes in order to support all of the required use cases. For the purposes + of this document, the modes are called administrator login and + Username Login. They are described further in the following + paragraphs.

    + +

    For Administrator Login mode, JNDIRealm will be + configured to establish one or more connections (using a connection pool) + to an appropriate directory server, using JNDI APIs, under a "system + administrator" username and password. This is similar to the approach + normally used to configure JDBCRealm to access authentication + and access control information in a database. It is assumed that the + system administrator username and password that are configured provide + sufficient privileges within the directory server to read (but not modify) + the username, password, and assigned roles for each valid user of the + web application associated with this Realm. The password + can be stored in cleartext, or in one of the digested modes supported by + the org.apache.catalina.realm.RealmBase base class.

    + +

    For Username Login mode, JNDIRealm does not + normally remain connected to the directory server. Instead, whenever a + user is to be authenticated, a connection to the directory server + (using the username and password received from the authenticator) is + attempted. If this connection is successful, the user is assumed to be + successfully authenticated. This connection is then utilized to read + the corresponding security roles associated with this user, and the + connection is then broken.

    + +

    NOTE - Username Login mode cannot be used + if you have selected login method DIGEST in your web + application deployment descriptor (web.xml) file. This + restriction exists because the cleartext password is never available + to the container, so it is not possible to bind to the directory server + using the user's username and password.

    + +

    Because these operational modes work so differently, the functionality + for each mode will be described separately. Whether or not both modes + are actually supported by a single class (versus a class per mode) is + an implementation detail left to the designer.

    + +

    NOTE - The current implementation only implements + part of the Administrator Lookup mode requirements. It does + not support the Username Lookup mode at all, at this point.

    + +
    + + +
    Administrator Login Mode Functionality
    + + +

    Configurable Properties

    + +

    The implementation shall support the following properties + that can be configured with JavaBeans property setters:

    +
      +
    • connectionURL - URL of the directory server we will + be contacting.
    • +
    • contextFactory - Fully qualified class name of the JNDI + context factory used to retrieve our InitialContext. + [com.sun.jndi.ldap.LdapCtxFactory]
    • +
    • Additional configuration properties required to establish the + appropriate connection. [Requested]
    • +
    • Connection pool configuration properties. [Requested]
    • +
    • Configuration properties defining how a particular user is + authenticated. The following capabilities should be supported: +
        +
      • Substitute the specified username into a string. [Requested]
      • +
      • Retrieve the distinguished name (DN) of an authorized user via an + LDAP search string with a replacement placeholder for the + username, and comparison of the password to a configurable + attribute retrieved from the search result. [Current]
      • +
    • +
    • Configuration properties defining how the roles associated with a + particular authenticated user can be retrieved. The following + approaches should be supported: +
        +
      • Retrieve a specified attribute (possibly multi-valued) + from an LDAP search expression, + with a replacement placeholder for the DN of the user. + [Current]
      • +
      • Retrieve a set of role names that are defined implicitly (by + selecting principals that match a search pattern) rather than + explicitly (by finding a particular attribute value). + [Requested]
      • +
    • +
    + +

    Lifecycle Functionality

    + +

    The following processing must be performed when the start() + method is called:

    +
      +
    • Establish a connection to the configured directory server, using the + configured system administrator username and password. [Current]
    • +
    • Configure and establish a connection pool of connections to the + directory server. [Requested]
    • +
    + +

    The following processing must be performed when the stop() + method is called:

    +
      +
    • Close any opened connections to the directory server.
    • +
    + + +

    Method authenticate() Functionality

    + +

    When authenticate() is called, the following processing + is required:

    +
      +
    • Acquire the one and only connection [Current] or acquire a connection + from the connection pool [Requested].
    • +
    • Authenticate the user by retrieving the user's Distinguished Name, + based on the specified username and password.
    • +
    • If the user was not authenticated, release the allocated connection + and return null.
    • +
    • Acquire a List of the security roles assigned to the + authenticated user.
    • +
    • Construct a new instance of class + org.apache.catalina.realm.GenericPrincipal, passing as + constructor arguments: this realm instance, the authenticated + username, and a List of the security roles associated + with this user.
    • +
    • WARNING - Do not attempt to cache and reuse previous + GenericPrincipal objects for a particular user, because + the information in the directory server might have changed since the + last time this user was authenticated.
    • +
    • Return the newly constructed GenericPrincipal.
    • +
    + + +

    Method hasRole() Functionality

    + +

    When hasRole() is called, the following processing + is required:

    +
      +
    • The principal that is passed as an argument SHOULD + be one that we returned (instanceof class + org.apache.catalina.realm.GenericPrincipal, with a + realm property that is equal to our instance.
    • +
    • If the passed principal meets these criteria, check + the specified role against the list returned by + getRoles(), and return true if the + specified role is included; otherwise, return false.
    • +
    • If the passed principal does not meet these criteria, + return false.
    • +
    + +
    + + +
    Username Login Mode Functionality
    + +

    Configurable Properties

    + +

    The implementation shall support the following properties + that can be configured with JavaBeans property setters:

    +
      +
    • connectionURL - URL of the directory server we will + be contacting.
    • +
    • contextFactory - Fully qualified class name of the JNDI + context factory used to retrieve our InitialContext. + [com.sun.jndi.ldap.LdapCtxFactory]
    • +
    • Additional configuration properties required to establish the + appropriate connection. [Requested]
    • +
    • Connection pool configuration properties. [Requested]
    • +
    • Configuration properties defining if and how a user might be looked + up before binding to the directory server. The following approaches + should be supported: +
        +
      • No previous lookup is required - username specified by the user + is the same as that used to authenticate to the directory + server.
      • +
      • Substitute the specified username into a string.
      • +
      • Search the directory server based on configured criteria to + retrieve the distinguished name of the user, then attempt to + bind with that distinguished name.
      • +
    • +
    • Configuration properties defining how the roles associated with a + particular authenticated user can be retrieved. The following + approaches should be supported: +
        +
      • Retrieve a specified attribute (possibly multi-valued) + from an LDAP search expression, + with a replacement placeholder for the DN of the user. + [Current]
      • +
    • +
    + +

    Lifecycle Functionality

    + +

    The following processing must be performed when the start() + method is called:

    +
      +
    • None required.
    • +
    + +

    The following processing must be performed when the stop() + method is called:

    +
      +
    • None required.
    • +
    + + +

    Method authenticate() Functionality

    + +

    When authenticate() is called, the following processing + is required:

    +
      +
    • Attempt to bind to the directory server, using the username and + password provided by the user.
    • +
    • If the user was not authenticated, release the allocated connection + and return null.
    • +
    • Acquire a List of the security roles assigned to the + authenticated user.
    • +
    • Construct a new instance of class + org.apache.catalina.realm.GenericPrincipal, passing as + constructor arguments: this realm instance, the authenticated + username, and a List of the security roles associated + with this user.
    • +
    • WARNING - Do not attempt to cache and reuse previous + GenericPrincipal objects for a particular user, because + the information in the directory server might have changed since the + last time this user was authenticated.
    • +
    • Return the newly constructed GenericPrincipal.
    • +
    + + +

    Method hasRole() Functionality

    + +

    When hasRole() is called, the following processing + is required:

    +
      +
    • The principal that is passed as an argument SHOULD + be one that we returned (instanceof class + org.apache.catalina.realm.GenericPrincipal, with a + realm property that is equal to our instance.
    • +
    • If the passed principal meets these criteria, check + the specified role against the list returned by + getRoles(), and return true if the + specified role is included; otherwise, return false.
    • +
    • If the passed principal does not meet these criteria, + return false.
    • +
    + +
    + +
    Testable Assertions
    + +

    In addition the the assertions implied by the functionality requirements + listed above, the following additional assertions shall be tested to + validate the behavior of JNDIRealm:

    +
      +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-memory-realm.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-memory-realm.html new file mode 100644 index 0000000..95274b7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/fs-memory-realm.html @@ -0,0 +1,213 @@ +Catalina Functional Specifications - MemoryRealm
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Administrative Apps

    Internal Servlets

    Realm Implementations

    Catalina Functional Specifications

    MemoryRealm

    Printer Friendly Version
    print-friendly
    version +
    Overview
    + + +
    Introduction
    + +

    The purpose of the MemoryRealm implementation is to + provide a mechanism by which Tomcat 5 can acquire information needed + to authenticate web application users, and define their security roles, + from a simple text-based configuration file in XML format. This is + intended to simplify the initial installation and operation of Tomcat 5, + without the complexity of configuring a database or directory server + based Realm. It is not intended for production use.

    + +

    This specification reflects a combination of functionality that is + already present in the org.apache.catalina.realm.MemoryRealm + class, as well as requirements for enhancements that have been + discussed. Where appropriate, requirements statements are marked + [Current] and [Requested] to distinguish them.

    + +

    The current status of this functional specification is + PROPOSED. It has not yet been discussed and + agreed to on the TOMCAT-DEV mailing list.

    + +
    + + +
    External Specifications
    + +

    The implementation of this functionality depends on the following + external specifications:

    +
      +
    • None
    • +
    + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • Be realized in one or more implementation classes.
    • +
    • Implement the org.apache.catalina.Realm interface. + [Current]
    • +
    • Implement the org.apache.catalina.Lifecycle + interface. [Current]
    • +
    • Subclass the org.apache.catalina.realm.RealmBase + base class.
    • +
    • Live in the org.apache.catalina.realm package. + [Current]
    • +
    • Support a configurable debugging detail level. [Current]
    • +
    • Log debugging and operational messages (suitably internationalized) + via the getContainer().log() method. [Current]
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + MemoryRealm to operate correctly:

    +
      +
    • The desire to utilize MemoryRealm must be registered in + $CATALINA_HOME/conf/server.xml, in a + <Realm> element that is nested inside a + corresponding <Engine>, <Host>, + or <Context> element. (This is already + included in the default server.xml file.)
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of MemoryRealm depends on the following + specific features of the surrounding container:

    +
      +
    • Interactions with MemoryRealm will be initiated by + the appropriate Authenticator implementation, based + on the login method that is selected.
    • +
    • MemoryRealm must have an XML parser compatible with + the JAXP/1.1 APIs available to it. This is normally accomplished + by placing the corresponding JAR files in directory + $CATALINA_HOME/server/lib (to make them visible only + to internal Catalina classes) or in directory + $CATALINA_HOME/common/lib (to make them visible to + Catalina internal classes and installed web + applications).
    • +
    + +
    + + +
    Functionality
    + + +
    Overview of Operation
    + +

    The main purpose of MemoryRealm is to allow Catalina to + authenticate users, and look up the corresponding security roles, from + the information found in an XML-format configuration file. The format + of this file is described below. When a MemoryRealm + instance is started, it will read the contents of this XML file and create + an "in memory database" of all the valid users and their associated + security roles.

    + +

    Each time that Catalina needs to authenticate a user, it will call + the authenticate() method of this Realm implementation, + passing the username and password that were specified by the user. If + we find the user in the database (and match on the password), we accumulate + all of the security roles that are defined for this user, and create a + new GenericPrincipal object to be returned. If the user + is not authenticated, we return null instead. The + GenericUser object caches the set of security roles that + were owned by this user at the time of authentication, so that calls to + isUserInRole() can be answered without going back to the + database every time.

    + +
    + + +
    Detailed Functional Requirements
    + + +

    Configurable Properties

    + +

    The implementation shall support the following properties + that can be configured with JavaBeans property setters:

    +
      +
    • Configurable debugging detail level.
    • +
    • Configurable file pathname (absolute or relative to + $CATALINA_HOME of the XML file containing our + defined users. [conf/tomcat-users.xml].
    • +
    + +

    Lifecycle Functionality

    + +

    The following processing must be performed when the start() + method is called:

    +
      +
    • Open and parse the specified XML file.
    • +
    • Create an in-memory database representation of the XML file + contents.
    • +
    • NOTE - There is no requirement to recognize + subsequent changes to the contents of the XML file.
    • +
    + +

    The following processing must be performed when the stop() + method is called:

    +
      +
    • Release object references to the in-memory database representation.
    • +
    + + +

    Method authenticate() Functionality

    + +

    When authenticate() is called, the following processing + is required:

    +
      +
    • Select the one and only "user" instance from the in-memory database, + based on matching the specified username. If there is no such + instance, return null.
    • +
    • Authenticate the user by comparing the (possibly encrypted) password + value that was received against the password presented by the user. + If there is no match, return null.
    • +
    • Construct a new instance of class + org.apache.catalina.realm.GenericPrincipal (if not + already using this as the internal database representation) that + contains the authenticated username and a List of the + security roles associated with this user.
    • +
    • Return the newly constructed GenericPrincipal.
    • +
    + + +

    Method hasRole() Functionality

    + +

    When hasRole() is called, the following processing + is required:

    +
      +
    • The principal that is passed as an argument SHOULD + be one that we returned (instanceof class + org.apache.catalina.realm.GenericPrincipal, with a + realm property that is equal to our instance.
    • +
    • If the passed principal meets these criteria, check + the specified role against the list returned by + getRoles(), and return true if the + specified role is included; otherwise, return false.
    • +
    • If the passed principal does not meet these criteria, + return false.
    • +
    + +
    + +
    Testable Assertions
    + +

    In addition the the assertions implied by the functionality requirements + listed above, the following additional assertions shall be tested to + validate the behavior of MemoryRealm:

    +
      +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/index.html new file mode 100644 index 0000000..f818c18 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/index.html @@ -0,0 +1,38 @@ +Catalina Functional Specifications - Table of Contents
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Administrative Apps

    Internal Servlets

    Realm Implementations

    Catalina Functional Specifications

    Table of Contents

    Printer Friendly Version
    print-friendly
    version +
    Catalina Functional Specifications
    + +

    This documentation area includes functional specifications for +many features supported by the Catalina servlet container +portion of Tomcat 5. In most cases, these features are not documented in the +underlying Servlet or JSP specifications, so a definition of the expected +correct behavior is important both to implementors of those features, and to +test writers trying to decide what to test.

    + +

    The functional specifications are divided into the following categories +in the menu (to the left):

    +
      +
    • Administrative Apps - Overall requirements for supporting an + ability to configure and operate a Tomcat 5 installation through tools, + as well as detailed requirements for the tools themselves.
    • +
    • Internal Servlets - Requirements for Catalina features that are + implemented as internal, container-managed, servlets.
    • +
    • Realm Implementations - Requirements for the implementations of + the org.apache.catalina.Realm interface (providing access to + collections of users, passwords and roles) that are included in the + standard Tomcat 5 distribution.
    • +
    + +

    NOTE - In some cases, the contents of these functional specs has +been "reverse engineered" from existing implementations. This exercise is +stil useful, because it provides an introduction to what +Catalina does, without being as concerned with how this is +accomplished.

    + +

    TODO - Obviously, this area has a long ways to go before +it is complete. Contributions are welcome!

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/mbean-names.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/mbean-names.html new file mode 100644 index 0000000..ad42483 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/mbean-names.html @@ -0,0 +1,709 @@ +Catalina Functional Specifications - Tomcat MBean Names
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    Administrative Apps

    Internal Servlets

    Realm Implementations

    Catalina Functional Specifications

    Tomcat MBean Names

    Printer Friendly Version
    print-friendly
    version +
    Background
    + +

    We will be using JMX MBeans as the technology for + implementing manageability of Tomcat.

    + +

    One of the key concepts of JMX (and JSR-77) is that each management + bean has a unique name in the MBeanServer's registry, and that + management applications can utilize these names to retrieve the MBean + of interest to them for a particular management operation. + This document proposes a naming convention for MBeans that allows easy + calculation of the name for a particular MBean. For background + information on JMX MBean names, see the Java Management Extensions + Instrumentation and Agent Specification, version 1.0, section 6. + In particular, we will be discussing the String Representation of + ObjectName instances.

    + +
    Catalina Object Hierarchy
    + +

    Tomcat's servlet container implementation, called Catalina, can be +represented as a hierarchy of objects that contain references to each other. +The object hierarchy can be represented as a tree, or (isomorphically) based +on the nesting of configuration elements in the conf/server.xml +file that is traditionally used to configure Tomcat stand-alone.

    + +

    The valid component nestings for Catalina are depicted in the following +table, with columns that contain the following values:

    +
      +
    • Pattern - Nesting pattern of XML elements (in the + conf/server.xml file) used to configure this component.
    • +
    • Cardinality - Minimum and maximum number of occurrences of + this element at this nesting position, which also corresponds to the + minimum and maximum number of Catalina components.
    • +
    • Identifier - Name of the JavaBeans property of this component + that represents the unique identifier (within the nested hierarchy), + if any.
    • +
    • MBean ObjectName - The portion of the MBean object name that + appears after the domain name. For now, it should be + assumed that all of these MBeans appear in the default JMX domain.
    • +
    + +

    In the MBean ObjectName descriptions, several types of symbolic +expressions are utilized to define variable text that is replaced by +corresponding values:

    +
      +
    • ${GROUP} - One of the standard MBean names of the specified + "group" category. For example, the expression ${REALM} + represents the values like JDBCRealm and JAASRealm + that identify the various MBeans for possible Realm components.
    • +
    • ${name} - Replaced by the value of property name + from the current component.
    • +
    • ${parent.name} - Replaced by the value of property + name from a parent of the current component, with the + parent's type identified by parent.
    • +
    • ${###} - An arbitrary numeric identifier that preserves + order but has no other particular meaning. In general, the server will + assign numeric values to existing instances with large gaps into which + new items can be configured if desired.
    • +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    PatternCardinalityIdentifierMBean ObjectName
    Server1..1(none)type=${SERVER}
    Server / Listener0..n(none)type=${LISTENER}, sequence=${###}
    Server / Service1..nnametype=${SERVICE}, name=${name}
    Server / Service / Connector1..naddress, porttype=${CONNECTOR}, service=${service}, port=${port}, + address=${address}
    Server / Service / Connector / Factory0..1(none)(Only defined explicitly for an SSL connector, but can be treated + as part of the connector component)
    Server / Service / Connector / Listener0..n(none)type=${LISTENER}, sequence=${###}, service=${service}, + port=${connector.port}, address=${connector.address}
    Server / Service / Engine1..1(none)type=${ENGINE}, service=${service.name}
    Server / Service / Engine / Host1..nnametype=${HOST}, host=${name}, + service=${service.name}
    Server / Service / Engine / Host / Context1..npathtype=${CONTEXT}, path=${path}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Context / InstanceListener0..n(none)type=${INSTANCE-LISTENER}, sequence=${###}, path=${context.path}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Host / Context / Listener0..n(none)type=${LISTENER}, sequence=${###}, path=${context.path}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Host / Context / Loader0..1(none)type=${LOADER}, path=${context.path}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Context / Manager0..1(none)type=${MANAGER}, path=${context.path}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Context / Realm0..1(none)type=${REALM}, path=${context.path}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Context / Resources0..1(none)type=${RESOURCES}, path=${context.path}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Context / Valve0..n(none)type=${VALVE}, sequence=${###}, path=${context.path}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Host / Context / Wrapper0..n(none)j2eeType=Servlet,name=${name}, + WebModule=//${host.name}/${context.name}, + J2EEApplication=${context.J2EEApplication}, + J2EEServer=${context.J2EEServer}
    Server / Service / Engine / Host / Context / WrapperLifecycle0..n(none)type=${WRAPPER-LIFECYCLE}, sequence=${###}, path=${context.path}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Host / Context / WrapperListener0..n(none)type=${WRAPPER-LISTENER}, sequence=${###}, path=${context.path}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Host / Listener0..n(none)type=${LISTENER}, sequence=${###}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Realm0..1(none)type=${REALM}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Valve0..n(none)type=${VALVE}, sequence=${###}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Listener0..n(none)type=${LISTENER}, sequence=${###} + (FIXME - disambiguate from Server / Service / + Listener)
    Server / Service / Engine / Realm0..1(none)type=${REALM}, service=${service.name}
    Server / Service / Engine / Valve0..n(none)type=${VALVE}, sequence=${###}, + service=${service.name}
    Server / Service / Listener0..n(none)type=${LISTENER}, sequence=${###} + (FIXME - disambiguate from Server / Service / + Engine / Listener)
    + +
    MBean Groups and Names
    + +

    The following MBean names shall be defined in the resource file +/org/apache/catalina/mbeans/mbeans-descriptors.xml (and +therefore available for use within the Administration/Configuration +web application for Tomcat):

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    MBean NameGroup NameCatalina InterfaceImplementation Class
    AccessLogValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.AccessLogValve
    BasicAuthenticatorVALVEorg.apache.catalina.Valveorg.apache.catalina.authenticator.BasicAuthenticator
    CertificatesValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.CertificatesValve
    ContextConfigLISTENERorg.apache.catalina.LifecycleListenerorg.apache.catalina.startup.ContextConfig
    ContextEnvironmentRESOURCESorg.apache.catalina.deploy.ContextEnvironmentorg.apache.catalina.deploy.ContextEnvironment
    ContextResourceRESOURCESorg.apache.catalina.deploy.ContextResourceorg.apache.catalina.deploy.ContextResource
    ContextResourceLinkRESOURCESorg.apache.catalina.deploy.ContextResourceLinkorg.apache.catalina.deploy.ContextResourceLink
    CoyoteConnectorCONNECTORorg.apache.catalina.Connectororg.apache.coyote.tomcat4.CoyoteConnector
    DigestAuthenticatorVALVEorg.apache.catalina.Valveorg.apache.catalina.authenticator.DigestAuthenticator
    EngineConfigLISTENERorg.apache.catalina.LifecycleListenerorg.apache.catalina.startup.EngineConfig
    ErrorReportValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.ErrorReportValve
    ErrorDispatcherValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.ErrorDispatcherValve
    FormAuthenticatorVALVEorg.apache.catalina.Valveorg.apache.catalina.authenticator.FormAuthenticator
    GroupGROUPorg.apache.catalina.Grouporg.apache.catalina.Group
    HostConfigLISTENERorg.apache.catalina.LifecycleListenerorg.apache.catalina.startup.HostConfig
    HttpConnector10CONNECTORorg.apache.catalina.Connectororg.apache.catalina.connector.http10.HttpConnector
    HttpConnector11CONNECTORorg.apache.catalina.Connectororg.apache.catalina.connector.http.HttpConnector
    JAASRealmREALMorg.apache.catalina.Realmorg.apache.catalina.realm.JAASRealm
    JDBCRealmREALMorg.apache.catalina.Realmorg.apache.catalina.realm.JDBCRealm
    JDBCUserDatabaseUSERDATABASEorg.apache.catalina.users.JDBCUserDatabaseorg.apache.catalina.users.JDBCUserDatabase
    JNDIRealmREALMorg.apache.catalina.Realmorg.apache.catalina.realm.JNDIRealm
    MBeanFactoryorg.apache.catalina.mbeans.MBeanFactory
    MemoryRealmREALMorg.apache.catalina.Realmorg.apache.catalina.realm.MemoryRealm
    MemoryUserDatabaseUSERDATABASEorg.apache.catalina.users.MemoryUserDatabaseorg.apache.catalina.users.MemoryUserDatabase
    NamingContextListenerLISTENERorg.apache.catalina.LifecycleListenerorg.apache.catalina.core.NamingContextListener
    NamingResourcesRESOURCESorg.apache.catalina.deploy.NamingResourcesorg.apache.catalina.deploy.NamingResources
    NonLoginAuthenticatorVALVEorg.apache.catalina.Valveorg.apache.catalina.authenticator.NonLoginAuthenticator
    PersistentManagerMANAGERorg.apache.catalina.Managerorg.apache.catalina.session.PersistentManager
    RemoteAddrValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.RemoteAddrValve
    RemoteHostValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.RemoteHostValve
    RequestDumperValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.RequestDumperValve
    RoleROLEorg.apache.catalina.Roleorg.apache.catalina.Role
    SingleSignOnVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.SingleSignOn
    SSLAuthenticatorVALVEorg.apache.catalina.Valveorg.apache.catalina.authenticator.SSLAuthenticator
    StandardContextCONTEXTorg.apache.catalina.Contextorg.apache.catalina.core.StandardContext
    StandardContextValveVALVEorg.apache.catalina.Valveorg.apache.catalina.core.StandardContextValve
    StandardEngineENGINEorg.apache.catalina.Engineorg.apache.catalina.core.StandardEngine
    StandardEngineValveVALVEorg.apache.catalina.Valveorg.apache.catalina.core.StandardEngineValve
    StandardHostHOSTorg.apache.catalina.Hostorg.apache.catalina.core.StandardHost
    StandardHostValveVALVEorg.apache.catalina.Valveorg.apache.catalina.core.StandardHostValve
    StandardManagerMANAGERorg.apache.catalina.Managerorg.apache.catalina.session.StandardManager
    StandardServerSERVERorg.apache.catalina.Serverorg.apache.catalina.core.StandardServer
    StandardServiceSERVICEorg.apache.catalina.Serviceorg.apache.catalina.core.StandardService
    StandardWrapperWRAPPERorg.apache.catalina.Wrapperorg.apache.catalina.core.StandardWrapper
    StandardWrapperValveVALVEorg.apache.catalina.Valveorg.apache.catalina.core.StandardWrapperValve
    UserUSERorg.apache.catalina.Userorg.apache.catalina.User
    UserDatabaseRealmREALMorg.apache.catalina.Realmorg.apache.catalina.realm.UserDatabaseRealm
    WebappLoaderLOADERorg.apache.catalina.Loaderorg.apache.catalina.loader.WebappLoader
    + +
    JSR-77 Cross Reference
    + +

    The managed objects in the JSR-77 object hierarchy correspond +to the specified MBean names or groups as follows:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    JSR-77 Managed ObjectMBean Name or GroupComments
    J2EEServer${SERVICE}
    Node${SERVICE}Tomcat supports a single node only.
    Port${CONNECTOR}
    Servlet${WRAPPER}
    WebModule${CONTEXT}
    + +
    JSR-88 Cross Reference
    + +

    The deployment objects in the JSR-88 API object hierarchy correspond +to the specified MBean names or groups as follows:

    + + + + + + + + + + + + + + + + + + + + + +
    JSR-88 API ObjectMBean Name or GroupComments
    DeployableObject${CONTEXT}Context deployment info plus the corresponding WAR file
    Target${HOST}
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-admin-apps.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-admin-apps.html new file mode 100644 index 0000000..366ee0f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-admin-apps.html @@ -0,0 +1,251 @@ +Catalina Functional Specifications - Administrative Apps - Overall Requirements
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Catalina Functional Specifications

    Administrative Apps - Overall Requirements

    Overview
    + + +
    Introduction
    + +

    The purpose of this specification is to define high level requirements + for administrative applications that can be used to manage the operation + of a running Tomcat 5 container. A variety of Access Methods + to the supported administrative functionality shall be supported, to + meet varying requirements:

    +
      +
    • As A Scriptable Web Application - The existing + Manager web application provides a simple HTTP-based + interface for managing Tomcat through commands that are expressed + entirely through a request URI. This is useful in environments + where you wish to script administrative commands with tools that + can generate HTTP transactions.
    • +
    • As An HTML-Based Web Application - Use an HTML presentation + to provide a GUI-like user interface for humans to interact with the + administrative capabilities.
    • +
    • As SOAP-Based Web Services - The operational commands to + administer Tomcat are made available as web services that utilize + SOAP message formats.
    • +
    • As Java Management Extensions (JMX) Commands - The operational + commands to administer Tomcat are made available through JMX APIs, + for integration into management consoles that utilize them.
    • +
    • Other Remote Access APIs - Other remote access APIs, such + as JINI, RMI, and CORBA can also be utilized to access administrative + capabilities.
    • +
    + +

    Underlying all of the access methods described above, it is assumed + that the actual operations are performed either directly on the + corresponding Catalina components (such as calling the + Deployer.deploy() method to deploy a new web application), + or through a "business logic" layer that can be shared across all of the + access methods. This approach minimizes the cost of adding new + administrative capabilities later -- it is only necessary to add the + corresponding business logic function, and then write adapters to it for + all desired access methods.

    + +

    The current status of this functional specification is + PROPOSED. It has not yet been discussed and + agreed to on the TOMCAT-DEV mailing list.

    + +
    + + +
    External Specifications
    + +

    The implementation of this functionality depends on the following + external specifications:

    + + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • To the maximum extent feasible, all administrative functions, + and the access methods that support them, shall run portably + on all platforms where Tomcat 5 itself runs.
    • +
    • In a default Tomcat distribution, all administrative capabilities + shall be disabled. It shall be necessary for a system + administrator to specifically enable the desired access methods + (such as by adding a username/password with a specific role to + the Tomcat user's database.
    • +
    • Administrative functions shall be realized as direct calls to + corresponding Catalina APIs, or through a business logic layer + that is independent of the access method used to initiate it.
    • +
    • The common business logic components shall be implemented in + package org.apache.catalina.admin.
    • +
    • The common business logic components shall be built as part of the + standard Catalina build process, and made visible in the + Catalina class loader.
    • +
    • The Java components required for each access method shall be + implemented in subpackages of org.apache.catalina.admin. +
    • +
    • The build scripts should treat each access method as optional, + so that it will be built only if the corresponding required + APIs are present at build time.
    • +
    • It shall be possible to save the configured state of the running + Tomcat container such that this state can be reproduced when the + container is shut down and restarted.
    • +
    • Adminstrative commands to start up and shut down the overall + Tomcat container are out of scope for the + purposes of these applications. It is assumed that other + (usually platform-specific) mechanisms will be used for container + startup and shutdown.
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + administrative applications to operate correctly:

    +
      +
    • For access methods that require creation of server sockets, the + appropriate ports must be configured and available.
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of administrative applications depends on the + following specific features of the surrounding container:

    +
      +
    • To the maximum extent feasible, Catalina components that offer + direct administrative APIs and property setters shall support + "live" changes to their operation, without requiring a container + restart.
    • +
    + +
    + + +
    External Technologies
    + +

    The availability of the following technologies can be assumed + for the implementation and operation of the various access methods + and the corresponding administrative business logic:

    + + +
    + + +
    Functionality
    + + +
    Properties of Administered Objects
    + +

    Functional requirements for administrative applications are specified + in terms of Administered Objects, whose definitions and detailed + properties are listed here. In general, + Administered Objects correspond to components in the Catalina architecture, + but these objects are defined separately here for the following reasons:

    +
      +
    • It is possible that the administrative applications do not expose + every possible configurable facet of the underlying components.
    • +
    • In some cases, an Administered Object (from the perspective of an + administrative operation) is realized by more than one Catalina + component, at a finer-grained level of detail.
    • +
    • It is necessary to represent the configuration information for a + component separately from the component itself (for instance, in + order to store that configuration information for later use).
    • +
    • It is necessary to represent configuration information (such as + a Default Context) when there is no corresponding component instance. +
    • +
    • Administered Objects, when realized as Java classes, will include + methods for administrative operations that have no correspondence + to operations performed by the corresponding actual components.
    • +
    + +

    It is assumed that the reader is familiar with the overall component + architecture of Catalina. For further information, see the corresponding + Developer Documentation. To distinguish names that are used as both + Administered Objects and Components, different + font presentations are utilized. Default values for many properties + are listed in [square brackets].

    + +
    + + +
    Supported Administrative Operations
    + +

    The administrative operations that are available are described in terms + of the corresponding Administered Objects (as defined above), in a manner + that is independent of the access method by which these operations are + requested. In general, such operations are relevant only in the context + of a particular Administered Object (and will most likely be realized as + method calls on the corresponding Administered Object classes), so they + are organized based on the currently "focused" administered object. + The available Supported Operations are documented + here.

    + +
    + + +
    Access Method Specific Requirements
    + +
    Scriptable Web Application
    + +

    An appropriate subset of the administrative operations described above + shall be implemented as commands that can be performed by the "Manager" + web application. FIXME - Enumerate them.

    + +

    In addition, this web application shall conform to the following + requirements:

    +
      +
    • All request URIs shall be protected by a security constraint that + requires security role manager for processing.
    • +
    • The default user database shall not contain any + user that has been assigned the role manager.
    • +
    + +
    HTML-Based Web Application
    + +

    The entire suite of administrative operations described above shall be + made available through a web application designed for human interaction. + In addition, this web application shall conform to the following + requirements:

    +
      +
    • Must be implemented using servlet, JSP, and MVC framework technologies + described under "External Technologies", above.
    • +
    • Prompts and error messages must be internationalizable to multiple + languages.
    • +
    • Rendered HTML must be compatible with Netscape Navigator (verson 4.7 + or later) and Internet Explorer (version 5.0 or later).
    • +
    + +
    + + +
    Testable Assertions
    + +

    FIXME - Complete this section.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-admin-objects.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-admin-objects.html new file mode 100644 index 0000000..7f54b55 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-admin-objects.html @@ -0,0 +1,419 @@ +Catalina Functional Specifications - Administrative Apps - Administered Objects
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Catalina Functional Specifications

    Administrative Apps - Administered Objects

    Administered Objects Overview
    + +

    This document defines the Administered Objects that represent +the internal architectural components of the Catalina servlet container. +Associated with each is a set of Supported +Operations that can be performed when the administrative application is +"focused" on a particular configurable object.

    + +

    The following Administered Objects are defined:

    + + +
    Access Logger
    + +

    An Access Logger is an optional Valve that can + create request access logs in the same formats as those provided by + web servers. Such access logs are useful input to hit count and user + access tracking analysis programs. An Access Logger can be attached to + an Engine, a Host, a Context, or a Default + Context.

    + +

    The standard component implementing an Access Logger is + org.apache.catalina.valves.AccessLogValve. It supports the + following configurable properties:

    +
      +
    • debug - Debugging detail level. [0]
    • +
    • directory - Absolute or relative (to $CATALINA_HOME) path + of the directory into which access log files are created. + [logs].
    • +
    • pattern - Pattern string defining the fields to be + included in the access log output, or "common" for the standard + access log pattern. See + org.apache.catalina.valves.AccessLogValve for more + information. [common]
    • +
    • prefix - Prefix added to the beginning of each log file + name created by this access logger.
    • +
    • resolveHosts - Should IP addresses be resolved to host + names in the log? [false]
    • +
    • suffix - Suffix added to the end of each log file name + created by this access logger.
    • +
    + +
    Connector
    + +

    A Connector is the representation of a communications endpoint + by which requests are received from (and responses returned to) a Tomcat + client. The administrative applications shall support those connectors + that are commonly utilized in Tomcat installations, as described in detail + below.

    + +

    For standalone use, the standard connector supporting the HTTP/1.1 + protocol is org.apache.catalina.connectors.http.HttpConnector. + It supports the following configurable properties:

    +
      +
    • acceptCount - The maximum queue length of incoming + connections that have not yet been accepted. [10]
    • +
    • address - For servers with more than one IP address, the + address upon which this connector should listen. [All Addresses]
    • +
    • bufferSize - Default input buffer size (in bytes) for + requests created by this Connector. [2048]
    • +
    • debug - Debugging detail level. [0]
    • +
    • enableLookups - Should we perform DNS lookups on remote + IP addresses when request.getRemoteHost() is called? + [true]
    • +
    • maxProcessors - The maximum number of processor threads + supported by this connector. [20]
    • +
    • minProcessors - The minimum number of processor threads + to be created at container startup. [5]
    • +
    • port - TCP/IP port number on which this Connector should + listen for incoming requests. [8080]
    • +
    • proxyName - Host name to be returned when an application + calls request.getServerName(). [Value of Host: header]
    • +
    • proxyPort - Port number to be returned when an application + calls request.getServerPort(). [Same as port] +
    • +
    + +
    Context
    + +

    A Context is the representation of an individual web application, + which is associated with a corresponding Host. Note that the + administrable properties of a Context do not + include any settings from inside the web application deployment descriptor + for that application.

    + +

    The standard component implementing a Context is + org.apache.catalina.core.StandardContext. It supports the + following configurable properties:

    +
      +
    • cookies - Should be use cookies for session identifier + communication? [true]
    • +
    • crossContext - Should calls to + ServletContext.getServletContext() return the actual + context responsible for the specified path? [false]
    • +
    • debug - Debugging detail level. [0]
    • +
    • docBase - The absolute or relative (to the + appBase of our owning Host) pathname of a + directory containing an unpacked web application, or of a web + application archive (WAR) file.
    • +
    • override - Should settings in this Context + override corresponding settings in the Default Context? + [false]
    • +
    • path - Context path for this web application, or an empty + string for the root application of a Host. [Inferred from + directory or WAR file name]
    • +
    • reloadable - Should Tomcat monitor classes in the + /WEB-INF/classes directory for changes, and reload the + application if they occur? [false]
    • +
    • useNaming - Should Tomcat provide a JNDI naming context, + containing preconfigured entries and resources, corresponding to the + requirements of the Java2 Enterprise Edition specification? [true]
    • +
    • workDir - Absolute pathname of a scratch directory that is + provided to this web application. [Automatically assigned relative to + $CATALINA_HOME/work]
    • +
    + +

    Each Context is owned by a parent Host, and is + associated with:

    +
      +
    • An optional Access Logger that logs all requests processed + by this web application.
    • +
    • Zero or more Environment Entries representing environment + entries for the JNDI naming context associated with a web + application.
    • +
    • Zero or more JDBC Resources representing database connection + pools associated with a web application.
    • +
    • A Loader representing the web application class loader used + by this web application.
    • +
    • A Manager representing the session manager used by this + web application.
    • +
    • An optional Realm used to provide authentication and access + control information for this web application.
    • +
    • Zero or more Request Filters used to limit access to this + web application based on remote host name or IP address.
    • +
    + +
    Default Context
    + +

    A Default Context represents a subset of the configurable + properties of a Context, and is used to set defaults for those + properties when web applications are automatically deployed. A Default + Context object can be associated with an Engine or a + Host. The following configurable properties are supported:

    +
      +
    • cookies - Should be use cookies for session identifier + communication? [true]
    • +
    • crossContext - Should calls to + ServletContext.getServletContext() return the actual + context responsible for the specified path? [false]
    • +
    • reloadable - Should Tomcat monitor classes in the + /WEB-INF/classes directory for changes, and reload the + application if they occur? [false]
    • +
    • useNaming - Should Tomcat provide a JNDI naming context, + containing preconfigured entries and resources, corresponding to the + requirements of the Java2 Enterprise Edition specification? [true]
    • +
    + +

    Each Default Context is owned by a parent Engine or + Host, and is associated with:

    +
      +
    • Zero or more Environment Entries representing environment + entries for the JNDI naming context associated with a web + application.
    • +
    • Zero or more JDBC Resources representing database connection + pools associated with a web application.
    • +
    • An optional Loader representing default configuration + properties for the Loader component of deployed web applications.
    • +
    • An optional Manager representing default configuration + properties for the Manager component fo deployed web applications.
    • +
    + +
    Default Deployment Descriptor
    + +

    Default web application characteristics are configured in a special + deployment descriptor named $CATALINA_HOME/conf/web.xml. This + section describes the configurable components that may be stored there.

    + +

    FIXME - Complete the description of default servlets, + default mappings, default MIME types, and so on.

    + +
    Engine
    + +

    An Engine is the representation of the entire Catalina + servlet container, and processes all requests for all of the associated + virtual hosts and web applications.

    + +

    The standard component implementing an Engine is + org.apache.catalina.core.StandardEngine. It supports the + following configurable properties:

    +
      +
    • debug - Debugging detail level. [0]
    • +
    • defaultHost - Name of the Host to which requests + will be directed if the requested host is unknown. [localhost]
    • +
    • name - Logical name of this engine. [Tomcat Stand-Alone] +
    • +
    + +

    Each Engine is owned by a parent Service, and is + associated with:

    +
      +
    • An optional Access Logger that logs all requests processed + by the entire container.
    • +
    • A Default Context, representing default properties of a + Context for automatically deployed applications for all + associated Hosts (unless overridden by a subordinate + component).
    • +
    • One or more Hosts representing individual virtual hosts + supported by this container.
    • +
    • A Realm used to provide authentication and access control + information for all virtual hosts and web applications (unless + overridden by a subordinate component).
    • +
    • Zero or more Request Filters used to limit access to the + entire container based on remote host name or IP address.
    • +
    + +
    Environment Entry
    + +

    An Environment Entry is the representation of a + <env-entry> element from a web application deployment + descriptor. It will cause the creation of a corresponding entry in the + JNDI naming context provided to the corresponding Context. The + following configurable properties are supported:

    +
      +
    • description - Description of this environment entry.
    • +
    • name - Environment entry name (relative to the + java:comp/env context)
    • +
    • type - Environment entry type (must be one of the fully + qualified Java classes listed in the servlet spec).
    • +
    • value - Environment entry value (must be convertible from + String to the specified type.
    • +
    + +
    Host
    + +

    A Host is the representation of an individual virtual host, + which has a unique set of associated web applications.

    + +

    The standard component implementing a Host is + org.apache.catalina.core.StandardHost. It supports the + following configurable properties:

    +
      +
    • aliases - Zero or more DNS names that are also associated + with this host (for example, a particular host might be named + www.mycompany.com with an alias company.com). +
    • +
    • appBase - Absolute or relative (to $CATALINA_HOME) path + to a directory from which web applications will be automatically + deployed.
    • +
    • debug - Debugging detail level. [0]
    • +
    • name - DNS Name of the virtual host represented by this + object.
    • +
    • unpackWARs - Should web application archive files + deployed by this virtual host be unpacked first? [true]
    • +
    + +

    Each Host is owned by a parent Engine, and is + associated with:

    +
      +
    • An optional Access Logger that logs all requests processed + by this virtual host.
    • +
    • One or more Contexts representing the web applications + operating on this Host.
    • +
    • A Default Context representing default Context + properties for web applications that are automatically deployed + by this Host.
    • +
    • A optional Realm used to provide authentication and access + control information for all web applications associated with this + virtual host (unless overridden by a subordinate component).
    • +
    + +

    FIXME - Should we support configuration of the + User Web Applications functionality?

    + +
    JDBC Resource
    + +

    A JDBC Resources represents a database connection pool (i.e. + an implementation of javax.sql.DataSource that will be + configured and made available in the JNDI naming context associated with + a web application.

    + +

    FIXME - properties of this administered object

    + +
    Loader
    + +

    A Loader represents a web application class loader that will + be utilized to provide class loading services for a particular + Context.

    + +

    The standard component implementing a Loader is + org.apache.catalina.loader.StandardLoader. It supports + the following configurable properties:

    +
      +
    • checkInterval - Number of seconds between checks for + modified classes, if automatic reloading is enabled. [15]
    • +
    • debug - Debugging detail level. [0]
    • +
    • reloadable - Should this class loader check for modified + classes and initiate automatic reloads? [Set automatically from the + reloadable property of the corresponding Context] +
    • +
    + +

    Each Loader is owned by a parent Context.

    + +
    Manager
    + +

    A Manager represents a session manager that will be associated + with a particular web application. FIXME - Add support + for advanced session managers and their associated Stores.

    + +

    The standard component implementing a Manager is + org.apache.catalina.session.StandardManager. It supports + the following configurable properties:

    +
      +
    • checkInterval - Number of seconds between checks for + expired sessions. [60]
    • +
    • debug - Debugging detail level. [0]
    • +
    • entropy - String initialization parameter used to increase + the entropy (initial randomness) of the random number generator used to + create session identifiers. [Inferred from engine, host, and context] +
    • +
    • maxActiveSessions - The maximum number of active sessions + that are allowed, or -1 for no limit. [-1]
    • +
    + +

    Each Manager is owned by a parent Context.

    + +
    Realm
    + +

    A Realm represents a "database" of information about authorized + users, their passwords, and the security roles assigned to them. This will + be used by the container in the implementation of container-managed security + in accordance with the Servlet Specification. Several alternative + implementations are supported.

    + +

    org.apache.catalina.realm.MemoryRealm initializes its user + information from a simple XML file at startup time. If changes are made + to the information in this file, the corresponding web applications using + it must be restarted for the changes to take effect. It supports the + following configurable properties:

    +
      +
    • debug - Debugging detail level. [0]
    • +
    • pathname - Absolute or relative (to $CATALINA_HOME) path to + the XML file containing our user information. [conf/tomcat-users.xml] +
    • +
    + +

    org.apache.catalina.realm.JDBCRealm uses a relational + database (accessed via JDBC APIs) to contain the user information. Changes + in the contents of this database take effect immediately; however, the roles + assigned to a particular user are calculated only when the user initially + logs on (and not per request). The following configurable properties + are supported:

    +
      +
    • connectionName - Database username to use when establishing + a JDBC connection.
    • +
    • connectionPassword - Database password to use when + establishing a JDBC connection.
    • +
    • connectionURL - Connection URL to use when establishing + a JDBC connection.
    • +
    • debug - Debugging detail level. [0]
    • +
    • digest - Name of the MessageDigest algorithm + used to encode passwords in the database, or a zero-length string for + no encoding. [Zero-length String]
    • +
    • driverName - Fully qualified Java class name of the JDBC + driver to be utilized.
    • +
    • roleNameCol - Name of the column, in the User Roles table, + which contains the role name.
    • +
    • userCredCol - Name of the column, in the Users table, + which contains the password (encrypted or unencrypted).
    • +
    • userNameCol - Name of the column, in both the Users and + User Roles tables, that contains the username.
    • +
    • userRoleTable - Name of the User Roles table, which contains + one row per security role assigned to a particular user. This table must + contain the columns specified by the userNameCol and + roleNameCol properties.
    • +
    • userTable - Name of the Users table, which contains one row + per authorized user. This table must contain the columns specified by + the userNameCol and userCredCol properties. +
    • +
    + +

    FIXME - Should we provide mechanisms to edit the contents + of a "tomcat-users.xml" file through the admin applications?

    + +

    Each Realm is owned by a parent Engine, Host, + or Context.

    + +
    Request Filter
    + +

    FIXME - complete this entry

    + +
    Server
    + +

    FIXME - complete this entry

    + +
    Service
    + +

    FIXME - complete this entry

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-admin-opers.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-admin-opers.html new file mode 100644 index 0000000..16908e9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-admin-opers.html @@ -0,0 +1,264 @@ +Catalina Functional Specifications - Administrative Apps - Supported Operations
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Catalina Functional Specifications

    Administrative Apps - Supported Operations

    Supported Operations Overview
    + +

    This document defines the Supported Operations that may +be performed against the Administered +Objects that are supported by Tomcat 5 administrative applications. +Not all operations are required to be available through every administrative +application that is implemented. However, if a given operation is available, +it should operate consistently with the descriptions found here.

    + +

    Supported Operations are described for the following Administered +Objects:

    + + +
    Access Logger
    + +

    From the perspective of a particular Access Logger, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Engine, Host, or + Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Connector
    + +

    From the perspective of a particular Connector, it shall be + possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Service.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Context
    + +

    From the perspective of a particular Context, it shall be + possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Host.
    • +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Access Logger associated + with this object.
    • +
    • Edit the configurable properties of the associated Access + Logger.
    • +
    • Remove the associated Access Logger.
    • +
    • Create and configure a new Environment Entry associated + with this object.
    • +
    • Select and edit the configurable properties of an associated + Environment Entry.
    • +
    • Remove an associated Environment Entry.
    • +
    • Create and configure a new JDBC Resource associated + with this object.
    • +
    • Select and edit the configurable properties of an associated + JDBC Resource.
    • +
    • Remove an associated JDBC Resource.
    • +
    • Create and configure a new Loader associated with + this object.
    • +
    • Edit the configurable properties of the associated Loader.
    • +
    • Remove the associated Loader.
    • +
    • Create and configure a new Manager associated with + this object.
    • +
    • Edit the configurable properties of the associated Manager.
    • +
    • Remove the associated Manager.
    • +
    • Create and configure a new Realm associated with + this object.
    • +
    • Edit the configurable properties of the associated Realm.
    • +
    • Remove the associated Realm.
    • +
    • Create and configure a new Request Filter associated with + this object.
    • +
    • Select and edit the configurable properties of an + associated Request Filter
    • +
    • Remove an associated Request Filter.
    • +
    + +
    Default Context
    + +

    From the perspective of a particular Default Context, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Engine or Host.
    • +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Environment Entry associated + with this object.
    • +
    • Select and edit the configurable properties of an associated + Environment Entry.
    • +
    • Remove an associated Environment Entry.
    • +
    • Create and configure a new JDBC Resource associated + with this object.
    • +
    • Select and edit the configurable properties of an associated + JDBC Resource.
    • +
    • Remove an associated JDBC Resource.
    • +
    + +
    Engine
    + +

    From the perspective of a particular Engine, it shall be + possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Service.
    • +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Access Logger associated + with this object.
    • +
    • Edit the configurable properties of the associated Access + Logger.
    • +
    • Remove the associated Access Logger.
    • +
    • Create and configure a new Default Context associated + with this object.
    • +
    • Edit the configurable properties of the associated Default + Context.
    • +
    • Remove the associated Default Context.
    • +
    • Create and configure a new Host associated with + this object.
    • +
    • Select and edit the configurable properties of an + associated Host.
    • +
    • Remove an associated Host.
    • +
    • Create and configure a new Realm associated with + this object.
    • +
    • Edit the configurable properties of the associated Realm.
    • +
    • Remove the associated Realm.
    • +
    • Create and configure a new Request Filter associated with + this object.
    • +
    • Select and edit the configurable properties of an + associated Request Filter
    • +
    • Remove an associated Request Filter.
    • +
    + +
    Environment Entry
    + +

    From the perspective of a particular Environment Entry, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Context or Default Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Host
    + +

    From the perspective of a particular Host, it shall be + possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Engine.
    • +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Access Logger associated + with this object.
    • +
    • Edit the configurable properties of the associated Access + Logger.
    • +
    • Remove the associated Access Logger.
    • +
    • Create and configure a new Context associated with + this object.
    • +
    • Select and edit the configurable properties of an associated + Context.
    • +
    • Remove an associated Context.
    • +
    • Create and configure a new Default Context associated + with this object.
    • +
    • Edit the configurable properties of the associated Default + Context.
    • +
    • Remove the associated Default Context.
    • +
    • Create and configure a new Realm associated with + this object.
    • +
    • Edit the configurable properties of the associated Realm.
    • +
    • Remove the associated Realm.
    • +
    • Create and configure a new Request Filter associated with + this object.
    • +
    • Select and edit the configurable properties of an + associated Request Filter
    • +
    • Remove an associated Request Filter.
    • +
    + +
    JDBC Resource
    + +

    From the perspective of a particular JDBC Resource, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Context or Default Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Loader
    + +

    From the perspective of a particular Loader, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Manager
    + +

    From the perspective of a particular Manager, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Realm
    + +

    From the perspective of a particular Realm, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Engine, Host, or + Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Request Filter
    + +

    From the perspective of a particular Request Filter, it shall + be possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Engine, Host, or + Context.
    • +
    • Edit the configurable properties of this object.
    • +
    + +
    Server
    + +

    From the perspective of the overall Server, it shall be + possible to perform the following administrative operations:

    +
      +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Service associated with + this object.
    • +
    • Select and edit the configurable properties of an associated + Service.
    • +
    + +
    Service
    + +

    From the perspective of a particular Service, it shall be + possible to perform the following administrative operations:

    +
      +
    • Navigate to the owning Server.
    • +
    • Edit the configurable properties of this object.
    • +
    • Create and configure a new Connector associated with + this object.
    • +
    • Select and edit the configurable properties of an associated + Connector.
    • +
    • Remove an associated Connector.
    • +
    • Create and configure a new Engine associated with + this object.
    • +
    • Edit the configurable properties of the associated Engine.
    • +
    • Remove the associated Engine.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-default.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-default.html new file mode 100644 index 0000000..fc8b530 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-default.html @@ -0,0 +1,225 @@ +Catalina Functional Specifications - Default Servlet
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Catalina Functional Specifications

    Default Servlet

    Overview
    + + +
    Introduction
    + +

    The purpose of the Default Servlet is to serve + static resources of a web application in response to client requests. + As the name implies, it is generally configured as the "default" + servlet for a web application, by being mapped to a URL pattern "/".

    + +
    + + +
    External Specifications
    + +

    The following external specifications have provisions which + partially define the correct behavior of the default servlet:

    + + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • Must be implemented as a servlet.
    • +
    • Must support configurable parameters for debugging detail level, + input buffer size, output buffer size, whether or not to produce + directory listings when no welcome file is present, and whether or not + modifications are supported via DELETE and PUT.
    • +
    • Log debugging and operational messages (suitably internationalized) + via the getServletContext().log() method.
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + the default servlet to operate correctly:

    +
      +
    • The default servlet must be registered in the application deployment + descriptor (or the default deployment descriptor in file + $CATALINA_HOME/conf/web.xml) using a "default servlet" + servlet mapping, signified by URL pattern "/".
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of the default servlet depends on the following + specific features of the surrounding container:

    +
      +
    • The container shall provide a servlet context attribute that + lists the welcome file names that have been defined for this + web application.
    • +
    • The container shall provide a servlet context attribute that + contains a javax.naming.directory.DirContext + implementation representing the static resources of this + web application.
    • +
    + +
    + + +
    Functionality
    + + +
    Initialization Functionality
    + +

    The following processing must be performed when the init() + method of the invoker servlet is called:

    +
      +
    • Process and sanity check configuration parameters.
    • +
    + +
    + + +
    Per-Request Functionality
    + + +

    For all HTTP request methods, the resource path is determined from + the path information provided to this request, either as request attribute + javax.servlet.include.path_info (for a request dispatcher + access to a static resource) or by calling + request.getPathInfo() directly.

    + +

    On each HTTP DELETE request processed by this servlet, the following + processing shall be performed:

    +
      +
    • If modifications to the static resources are not allowed (set by a + configuration parameter), return HTTP status 403 (forbidden).
    • +
    • If an attempt is made to delete a resource from /META-INF + or /WEB-INF, return HTTP status 403 (forbidden).
    • +
    • If the requested resource does not exist, return HTTP status 404 + (not found)
    • +
    • Unbind the resource from the directory context containing the + static resources for this web application. If successful, return + HTTP status 204 (no content). Otherwise, return HTTP status 405 + (method not allowed).
    • +
    + + +

    On each HTTP GET request processed by this servlet, the following + processing shall be performed:

    +
      +
    • If the request is for a resource under /META-INF or + /WEB-INF, return HTTP status 404 (not found).
    • +
    • If the requested resource does not exist, return HTTP status 404 + (not found).
    • +
    • If the requested resource is not a directory, but the resource + path ends in "/" or "\", return HTTP status 404 (not found).
    • +
    • If the requested resource is a directory: +
        +
      • If the request path does not end with "/", redirect to a + corresponding path with "/" appended so that relative references + in welcome files are resolved correctly.
      • +
      • If one of the specified welcome files exists, redirect to the + path for that welcome file so that it will be served explicitly. +
      • +
    • +
    • If the request being processed contains an If-Range + header, perform the processing described in the HTTP/1.1 specification + to determine whether the client's information is up to date.
    • +
    • Determine the content type of the response, by looking up the + corresponding MIME type in our servlet context.
    • +
    • If the requested resource is a directory: +
        +
      • If directory listings are suppressed, return HTTP status 404 + (not found).
      • +
      • Set the content type to text/html.
      • +
    • +
    • Determine the range(s) to be returned, based on the existence of + any If-Range and Range headers.
    • +
    • If the requested resource is a directory, include an ETag + header in the response, with the value calculated based on the content + of the directory.
    • +
    • Include a Last-Modified header in the response documenting + the date/time that the resource was last modified.
    • +
    • Unless we are processing a HEAD request, include the appropriate + content (or content ranges) in the response.
    • +
    + +

    On each HTTP HEAD request processed by this servlet, the following + processing shall be performed:

    +
      +
    • Processed identically to an HTTP GET request, except that the data + content is not transmitted after the headers.
    • +
    + +

    On each HTTP POST request processed by this servlet, the following + processing shall be performed:

    +
      +
    • Processed identically to an HTTP GET request.
    • +
    + + +

    On each HTTP PUT request processed by this servlet, the following + processing shall be perfomred:

    +
      +
    • If modifications to the static resources are not allowed (set by a + configuration parameter), return HTTP status 403 (forbidden).
    • +
    • If an attempt is made to delete a resource from /META-INF + or /WEB-INF, return HTTP status 403 (forbidden).
    • +
    • Create a new resource from the body of this request.
    • +
    • Bind or rebind the specified path to the new resource (depending on + whether it currently exists or not). Return HTTP status as follows: +
        +
      • If binding was unsuccessful, return HTTP status 409 (conflict). +
      • +
      • If binding was successful and the resource did not previously + exist, return HTTP status 201 (created).
      • +
      • If binding was successful and the resource previously existed, + return HTTP status 204 (no content).
      • +
    • +
    + +
    + + +
    Finalization Functionality
    + +

    No specific processing is required when the destroy() + method is called:

    + +
    + + +
    Testable Assertions
    + +

    In addition the the assertions implied by the functionality requirements + listed above, the following additional assertions shall be tested to + validate the behavior of the invoker servlet:

    +
      +
    • Requests for resources that do not exist in the web application must + return HTTP status 404 (not found).
    • +
    • The default servlet must operate identically for web applications that + are run out of a WAR file directly, or from an unpacked directory + structure.
    • +
    • If the web application is running out of an unpacked directory + structure, the default servlet must recognize cases where the resource + has been updated through external means.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-invoker.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-invoker.html new file mode 100644 index 0000000..543bb37 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-invoker.html @@ -0,0 +1,220 @@ +Catalina Functional Specifications - Invoker Servlet
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Catalina Functional Specifications

    Invoker Servlet

    Overview
    + + +
    Introduction
    + +

    The purpose of the Invoker Servlet is to allow a + web application to dynamically register new servlet definitions + that correspond with a <servlet> element in the + /WEB-INF/web.xml deployment descriptor, and execute + requests utilizing the new servlet definitions. From the perspective + of the newly registered servlets, all servlet lifecycle requirements + of the Servlet Specification (such as calling init() and + destroy() at the correct times) will be respected.

    + +
    + + +
    External Specifications
    + +

    I do not know of any formal specification of the behavior of an + invoker servlet that is publicly available. Anyone know of one?

    + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • Implemented as a servlet.
    • +
    • Exist in the org.apache.catalina.servlets package + so that it can be loaded by the Catalina class loader.
    • +
    • Implement the org.apache.catalina.ContainerServlet + interface, so that it gains knowledge of the Wrapper + that is responsible for itself and, therefore, access to other + internal Catalina components.
    • +
    • Support a configurable debugging detail level.
    • +
    • Log debugging and operational messages (suitably internationalized) + via the getServletContext().log() method.
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + the Invoker servlet to operate correctly:

    +
      +
    • The invoker servlet must be registered in the application deployment + descriptor (or the default deployment descriptor in file + $CATALINA_HOME/conf/web.xml) using a "path mapped" + servlet mapping. The historical default mapping is to URL pattern + "/servlet/*", although the invoker servlet must operate + correctly with an arbitrary mapping.
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of the invoker servlet depends on the following + specific features of the surrounding container:

    +
      +
    • Correct support for the ContainerServlet interface, + including calling setWrapper() before + the init() method of the invoker servlet is called.
    • +
    • The web application class loader must be stored as the context + class loader of the request processing thread.
    • +
    + +
    + + +
    Functionality
    + + +
    Initialization Functionality
    + +

    The following processing must be performed when the init() + method of the invoker servlet is called:

    +
      +
    • Ensure that the container has called setWrapper(). If + not, throw a permanent UnavailableException.
    • +
    • Look up and cache the Context that corresponds to our + Wrapper. This is the component with which new servlet + definitions and mappings will be registered.
    • +
    + +
    + + +
    Per-Request Functionality
    + +

    On each request, the following processing shall be performed:

    +
      +
    1. Calculate the {ServletPath} for this request, either from + request attribute javax.servlet.include.servlet_path or + by calling request.getServletPath().
    2. +
    3. Calculate the {PathInfo} for this request, either from + request attribute javax.servlet.include.path_info or + by calling request.getPathInfo(). If the calculated + {PathInfo} is null, return HTTP status 400 + (bad request).
    4. +
    5. Parse the calculated {PathInfo} value as follows: +
        +
      1. Ignore the leading slash character.
      2. +
      3. Accumulate characters up to the next '/' (if any) as the + {ServletSelector}.
      4. +
      5. If a '/' was encountered, accumulate all characters from that + slash (inclusive) to the end of the string as + {PathRemainder}. If no slash was encountered, + set {PathRemainder} to a zero-length string.
      6. +
    6. +
    7. Determine whether {ServletSelector} is the name of an + existing servlet definition, and process it as follows: +
        +
      1. Ask our associated Context to find and return a + child Wrapper named {ServletSelector}. +
      2. +
      3. If there is no such child, skip to the next major step.
      4. +
      5. Register a new servlet mapping for this Wrapper, + using a URL pattern calculated as follows: + {ServletPath} + "/" + {ServletSelector} + + "/*"
      6. +
      7. Create a request dispatcher using a path calculated as follows: + {ServletPath} + "/" + {ServletSelector} + + {PathRemainder}
      8. +
      9. Forward this request to the created request dispatcher, and + exit from this request.
      10. +
    8. +
    9. Assume that {ServletSelector} is the fully qualified + name of a Java class that implements javax.servlet.Servlet + and process it as follows: +
        +
      1. Synthesize a new {ServletName} for the servlet + definition that will be created.
      2. +
      3. If there is already a child Wrapper associated with + this name, return HTTP status 500 (internal server error), because + a mapping should have already been created for this servlet.
      4. +
      5. Attempt to load a class named {ServletSelector} from + the web application class loader (i.e. the context class loader + for our current thread). If this fails, return HTTP status 404 + (not found).
      6. +
      7. Instantiate an instance of this class. If an error occurs, + return HTTP status 404 (not found).
      8. +
      9. If this class does not implement the + javax.servlet.Servlet interface, return HTTP status + 404 (not found).
      10. +
      11. Create and register a new Wrapper child with our + Context, under name {ServletName}.
      12. +
      13. Register a new servlet mapping for this Wrapper, + using a URL pattern calculated as follows: + {ServletPath} + "/" + {ServletSelector} + + "/*"
      14. +
      15. Create a request dispatcher using a path calculated as follows: + {ServletPath} + "/" + {ServletSelector} + + {PathRemainder}
      16. +
      17. Forward this request to the created request dispatcher, and + exit from this request.
      18. +
    10. +
    + +
    + + +
    Finalization Functionality
    + +

    No specific processing is required when the destroy() + method is called:

    + +
    + + +
    Testable Assertions
    + +

    In addition the the assertions implied by the functionality requirements + listed above, the following additional assertions shall be tested to + validate the behavior of the invoker servlet:

    +
      +
    • It is possible to access an existing servlet definition by name + through the invoker. The existing servlet definition can include + either a <servlet-class> or + <jsp-file> subelement.
    • +
    • When an existing servlet definition is accessed by name, the request + will be ultimately processed by the same servlet instance that would + have processed it had a mapping to that servlet definition been used + on the request directly.
    • +
    • It is possible to access an anonymous servlet by class name + through the invoker.
    • +
    • When an anonymous servlet is accessed, the servlet instance is processed + according to the lifecycle requirements of the Servlet Specification. +
    • +
    • When an anonymous servlet is accessed, the servlet instance receives + a ServletConfig instance with no servlet initialization + parameters.
    • +
    • It is possible to utilize the invoker servlet via a direct request.
    • +
    • It is possible to utilize the invoker servlet via a call to + RequestDispatcher.forward(), or the corresponding + <jsp:forward> tag in a JSP page.
    • +
    • It is possible to utilize the invoker servlet via a call to + RequestDispatcher.include(), or the corresponding + <jsp:include> tag in a JSP page.
    • +
    • It is possible to use any HTTP method (including GET and POST) that + is supported by the Servlet class that is ultimately executed.
    • +
    • The invoker servlet should never be asked to process a second or + subsequent request for the same {ServletSelector} (because + it will have registered an appropriate servlet mapping.
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-jdbc-realm.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-jdbc-realm.html new file mode 100644 index 0000000..0aa7ca9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-jdbc-realm.html @@ -0,0 +1,221 @@ +Catalina Functional Specifications - JDBCRealm
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Catalina Functional Specifications

    JDBCRealm

    Overview
    + + +
    Introduction
    + +

    The purpose of the JDBCRealm implementation is to + provide a mechanism by which Tomcat 5 can acquire information needed + to authenticate web application users, and define their security roles, + from a relational database accessed via JDBC APIs. For integration + with Catalina, the resulting class(es) must implement the + org.apache.catalina.Realm interface.

    + +

    This specification reflects a combination of functionality that is + already present in the org.apache.catalina.realm.JDBCRealm + class, as well as requirements for enhancements that have been + discussed. Where appropriate, requirements statements are marked + [Current] and [Requested] to distinguish them.

    + +

    The current status of this functional specification is + PROPOSED. It has not yet been discussed and + agreed to on the TOMCAT-DEV mailing list.

    + +
    + + +
    External Specifications
    + +

    The implementation of this functionality depends on the following + external specifications:

    + + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • Be realized in one or more implementation classes.
    • +
    • Implement the org.apache.catalina.Realm interface. + [Current]
    • +
    • Implement the org.apache.catalina.Lifecycle + interface. [Current]
    • +
    • Subclass the org.apache.catalina.realm.RealmBase + base class.
    • +
    • Live in the org.apache.catalina.realm package. + [Current]
    • +
    • Support a configurable debugging detail level. [Current]
    • +
    • Log debugging and operational messages (suitably internationalized) + via the getContainer().log() method. [Current]
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + JDBCRealm to operate correctly:

    +
      +
    • The desire to utilize JDBCRealm must be registered in + $CATALINA_HOME/conf/server.xml, in a + <Realm> element that is nested inside a + corresponding <Engine>, <Host>, + or <Context> element.
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of JDBCRealm depends on the following + specific features of the surrounding container:

    +
      +
    • Interactions with JDBCRealm will be initiated by + the appropriate Authenticator implementation, based + on the login method that is selected.
    • +
    • JDBCRealm must have the JDBC standard API classes + available to it. For a JDK 1.2 or later container, these APIs + are included in the standard platform.
    • +
    • When connection pooling is implemented, JDBCRealm + must have the JDBC Optional Package (version 2.0 or later) APIs + available to it. This library is available as a separate + download (and will be included in Tomcat binary distributions).
    • +
    + +
    + + +
    Functionality
    + + +
    Overview of Operation
    + +

    The main purpose of JDBCRealm is to allow Catalina to + authenticate users, and look up the corresponding security roles, from + the information found in a relational database accessed via JDBC APIs. + For maximum flexibility, the details of how this is done (for example, + the names of the required tables and columns) should be configurable.

    + +

    Each time that Catalina needs to authenticate a user, it will call + the authenticate() method of this Realm implementation, + passing the username and password that were specified by the user. If + we find the user in the database (and match on the password), we accumulate + all of the security roles that are defined for this user, and create a + new GenericPrincipal object to be returned. If the user + is not authenticated, we return null instead. The + GenericUser object caches the set of security roles that + were owned by this user at the time of authentication, so that calls to + isUserInRole() can be answered without going back to the + database every time.

    + +
    + + +
    Detailed Functional Requirements
    + + +

    Configurable Properties

    + +

    The implementation shall support the following properties + that can be configured with JavaBeans property setters:

    +
      +
    • Configuration parameters defining the JDBC driver to use, the + database connection URL to be accessed, and the username/password + to use for logging in. [Current]
    • +
    • Configuration parameters describing the connection pool to be + created to support simultaneous authentications. [Requested]
    • +
    • Name of the tables to be searched for users and roles. [Current]
    • +
    • Name of the columns to be used for usernames, passwords, and + role names. [Current]
    • +
    + +

    Lifecycle Functionality

    + +

    The following processing must be performed when the start() + method is called:

    +
      +
    • Establish a connection to the configured database, using the + configured username and password. [Current]
    • +
    • Configure and establish a connection pool of connections to the + database. [Requested]
    • +
    + +

    The following processing must be performed when the stop() + method is called:

    +
      +
    • Close any opened connections to the database.
    • +
    + + +

    Method authenticate() Functionality

    + +

    When authenticate() is called, the following processing + is required:

    +
      +
    • Acquire the one and only connection [Current] or acquire a connection + from the connection pool [Requested].
    • +
    • Select the one and only row from the user's table for this user, + and retrieve the corresponding password column. If zero rows (or + more than one row) are found, return null.
    • +
    • Authenticate the user by comparing the (possibly encrypted) password + value that was received against the password presented by the user. + If there is no match, return null.
    • +
    • Acquire a List of the security roles assigned to the + authenticated user by selecting from the roles table.
    • +
    • Construct a new instance of class + org.apache.catalina.realm.GenericPrincipal, passing as + constructor arguments: this realm instance, the authenticated + username, and a List of the security roles associated + with this user.
    • +
    • WARNING - Do not attempt to cache and reuse previous + GenericPrincipal objects for a particular user, because + the information in the directory server might have changed since the + last time this user was authenticated.
    • +
    • Return the newly constructed GenericPrincipal.
    • +
    + + +

    Method hasRole() Functionality

    + +

    When hasRole() is called, the following processing + is required:

    +
      +
    • The principal that is passed as an argument SHOULD + be one that we returned (instanceof class + org.apache.catalina.realm.GenericPrincipal, with a + realm property that is equal to our instance.
    • +
    • If the passed principal meets these criteria, check + the specified role against the list returned by + getRoles(), and return true if the + specified role is included; otherwise, return false.
    • +
    • If the passed principal does not meet these criteria, + return false.
    • +
    + +
    + +
    Testable Assertions
    + +

    In addition the the assertions implied by the functionality requirements + listed above, the following additional assertions shall be tested to + validate the behavior of JDBCRealm:

    +
      +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-jndi-realm.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-jndi-realm.html new file mode 100644 index 0000000..90f0129 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-jndi-realm.html @@ -0,0 +1,376 @@ +Catalina Functional Specifications - JNDIRealm
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Catalina Functional Specifications

    JNDIRealm

    Overview
    + + +
    Introduction
    + +

    The purpose of the JNDIRealm implementation is to + provide a mechanism by which Tomcat 5 can acquire information needed + to authenticate web application users, and define their security roles, + from a directory server or other service accessed via JNDI APIs. For + integration with Catalina, this class must implement the + org.apache.catalina.Realm interface.

    + +

    This specification reflects a combination of functionality that is + already present in the org.apache.catalina.realm.JNDIRealm + class, as well as requirements for enhancements that have been + discussed. Where appropriate, requirements statements are marked + [Current] and [Requested] to distinguish them.

    + +

    The current status of this functional specification is + PROPOSED. It has not yet been discussed and + agreed to on the TOMCAT-DEV mailing list.

    + +

    The code in the current version of JNDIRealm, and the + ideas expressed in this functional specification, are the results of + contributions from many individuals, including (alphabetically):

    +
      +
    • Holman, John <j.g.holman@qmw.ac.uk>
    • +
    • Lockhart, Ellen <elockhart@home.com>
    • +
    • McClanahan, Craig <craigmcc@apache.org>
    • +
    + +
    + + +
    External Specifications
    + +

    The implementation of this functionality depends on the following + external specifications:

    + + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • Be realized in one or more implementation classes.
    • +
    • Implement the org.apache.catalina.Realm interface. + [Current]
    • +
    • Implement the org.apache.catalina.Lifecycle + interface. [Current]
    • +
    • Subclass the org.apache.catalina.realm.RealmBase + base class.
    • +
    • Live in the org.apache.catalina.realm package. + [Current]
    • +
    • Support a configurable debugging detail level. [Current]
    • +
    • Log debugging and operational messages (suitably internationalized) + via the getContainer().log() method. [Current]
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + JNDIRealm to operate correctly:

    +
      +
    • The desire to utilize JNDIRealm must be registered in + $CATALINA_HOME/conf/server.xml, in a + <Realm> element that is nested inside a + corresponding <Engine>, <Host>, + or <Context> element.
    • +
    • If the Administrator Login operational mode is selected, + the configured administrator username and password must be configured + in the corresponding directory server.
    • +
    • If the Username Login operational mode is selected, + the corresponding directory server must be configured to accept + logins with the username and password that will be passed to + JNDIRealm by the appropriate Authenticator. +
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of JNDIRealm depends on the following + specific features of the surrounding container:

    +
      +
    • Interactions with JNDIRealm will be initiated by + the appropriate Authenticator implementation, based + on the login method that is selected.
    • +
    • JNDIRealm must have the JNDI API classes available + to it. For a JDK 1.2 container, that means jndi.jar + and the appropriate implementation (such as ldap.jar) + must be placed in the server/lib directory.
    • +
    + +
    + + +
    Functionality
    + + +
    Operational Modes
    + +

    The completed JNDIRealm must support two major operational + modes in order to support all of the required use cases. For the purposes + of this document, the modes are called administrator login and + Username Login. They are described further in the following + paragraphs.

    + +

    For Administrator Login mode, JNDIRealm will be + configured to establish one or more connections (using a connection pool) + to an appropriate directory server, using JNDI APIs, under a "system + administrator" username and password. This is similar to the approach + normally used to configure JDBCRealm to access authentication + and access control information in a database. It is assumed that the + system administrator username and password that are configured provide + sufficient privileges within the directory server to read (but not modify) + the username, password, and assigned roles for each valid user of the + web application associated with this Realm. The password + can be stored in cleartext, or in one of the digested modes supported by + the org.apache.catalina.realm.RealmBase base class.

    + +

    For Username Login mode, JNDIRealm does not + normally remain connected to the directory server. Instead, whenever a + user is to be authenticated, a connection to the directory server + (using the username and password received from the authenticator) is + attempted. If this connection is successful, the user is assumed to be + successfully authenticated. This connection is then utilized to read + the corresponding security roles associated with this user, and the + connection is then broken.

    + +

    NOTE - Username Login mode cannot be used + if you have selected login method DIGEST in your web + application deployment descriptor (web.xml) file. This + restriction exists because the cleartext password is never available + to the container, so it is not possible to bind to the directory server + using the user's username and password.

    + +

    Because these operational modes work so differently, the functionality + for each mode will be described separately. Whether or not both modes + are actually supported by a single class (versus a class per mode) is + an implementation detail left to the designer.

    + +

    NOTE - The current implementation only implements + part of the Administrator Lookup mode requirements. It does + not support the Username Lookup mode at all, at this point.

    + +
    + + +
    Administrator Login Mode Functionality
    + + +

    Configurable Properties

    + +

    The implementation shall support the following properties + that can be configured with JavaBeans property setters:

    +
      +
    • connectionURL - URL of the directory server we will + be contacting.
    • +
    • contextFactory - Fully qualified class name of the JNDI + context factory used to retrieve our InitialContext. + [com.sun.jndi.ldap.LdapCtxFactory]
    • +
    • Additional configuration properties required to establish the + appropriate connection. [Requested]
    • +
    • Connection pool configuration properties. [Requested]
    • +
    • Configuration properties defining how a particular user is + authenticated. The following capabilities should be supported: +
        +
      • Substitute the specified username into a string. [Requested]
      • +
      • Retrieve the distinguished name (DN) of an authorized user via an + LDAP search string with a replacement placeholder for the + username, and comparison of the password to a configurable + attribute retrieved from the search result. [Current]
      • +
    • +
    • Configuration properties defining how the roles associated with a + particular authenticated user can be retrieved. The following + approaches should be supported: +
        +
      • Retrieve a specified attribute (possibly multi-valued) + from an LDAP search expression, + with a replacement placeholder for the DN of the user. + [Current]
      • +
      • Retrieve a set of role names that are defined implicitly (by + selecting principals that match a search pattern) rather than + explicitly (by finding a particular attribute value). + [Requested]
      • +
    • +
    + +

    Lifecycle Functionality

    + +

    The following processing must be performed when the start() + method is called:

    +
      +
    • Establish a connection to the configured directory server, using the + configured system administrator username and password. [Current]
    • +
    • Configure and establish a connection pool of connections to the + directory server. [Requested]
    • +
    + +

    The following processing must be performed when the stop() + method is called:

    +
      +
    • Close any opened connections to the directory server.
    • +
    + + +

    Method authenticate() Functionality

    + +

    When authenticate() is called, the following processing + is required:

    +
      +
    • Acquire the one and only connection [Current] or acquire a connection + from the connection pool [Requested].
    • +
    • Authenticate the user by retrieving the user's Distinguished Name, + based on the specified username and password.
    • +
    • If the user was not authenticated, release the allocated connection + and return null.
    • +
    • Acquire a List of the security roles assigned to the + authenticated user.
    • +
    • Construct a new instance of class + org.apache.catalina.realm.GenericPrincipal, passing as + constructor arguments: this realm instance, the authenticated + username, and a List of the security roles associated + with this user.
    • +
    • WARNING - Do not attempt to cache and reuse previous + GenericPrincipal objects for a particular user, because + the information in the directory server might have changed since the + last time this user was authenticated.
    • +
    • Return the newly constructed GenericPrincipal.
    • +
    + + +

    Method hasRole() Functionality

    + +

    When hasRole() is called, the following processing + is required:

    +
      +
    • The principal that is passed as an argument SHOULD + be one that we returned (instanceof class + org.apache.catalina.realm.GenericPrincipal, with a + realm property that is equal to our instance.
    • +
    • If the passed principal meets these criteria, check + the specified role against the list returned by + getRoles(), and return true if the + specified role is included; otherwise, return false.
    • +
    • If the passed principal does not meet these criteria, + return false.
    • +
    + +
    + + +
    Username Login Mode Functionality
    + +

    Configurable Properties

    + +

    The implementation shall support the following properties + that can be configured with JavaBeans property setters:

    +
      +
    • connectionURL - URL of the directory server we will + be contacting.
    • +
    • contextFactory - Fully qualified class name of the JNDI + context factory used to retrieve our InitialContext. + [com.sun.jndi.ldap.LdapCtxFactory]
    • +
    • Additional configuration properties required to establish the + appropriate connection. [Requested]
    • +
    • Connection pool configuration properties. [Requested]
    • +
    • Configuration properties defining if and how a user might be looked + up before binding to the directory server. The following approaches + should be supported: +
        +
      • No previous lookup is required - username specified by the user + is the same as that used to authenticate to the directory + server.
      • +
      • Substitute the specified username into a string.
      • +
      • Search the directory server based on configured criteria to + retrieve the distinguished name of the user, then attempt to + bind with that distinguished name.
      • +
    • +
    • Configuration properties defining how the roles associated with a + particular authenticated user can be retrieved. The following + approaches should be supported: +
        +
      • Retrieve a specified attribute (possibly multi-valued) + from an LDAP search expression, + with a replacement placeholder for the DN of the user. + [Current]
      • +
    • +
    + +

    Lifecycle Functionality

    + +

    The following processing must be performed when the start() + method is called:

    +
      +
    • None required.
    • +
    + +

    The following processing must be performed when the stop() + method is called:

    +
      +
    • None required.
    • +
    + + +

    Method authenticate() Functionality

    + +

    When authenticate() is called, the following processing + is required:

    +
      +
    • Attempt to bind to the directory server, using the username and + password provided by the user.
    • +
    • If the user was not authenticated, release the allocated connection + and return null.
    • +
    • Acquire a List of the security roles assigned to the + authenticated user.
    • +
    • Construct a new instance of class + org.apache.catalina.realm.GenericPrincipal, passing as + constructor arguments: this realm instance, the authenticated + username, and a List of the security roles associated + with this user.
    • +
    • WARNING - Do not attempt to cache and reuse previous + GenericPrincipal objects for a particular user, because + the information in the directory server might have changed since the + last time this user was authenticated.
    • +
    • Return the newly constructed GenericPrincipal.
    • +
    + + +

    Method hasRole() Functionality

    + +

    When hasRole() is called, the following processing + is required:

    +
      +
    • The principal that is passed as an argument SHOULD + be one that we returned (instanceof class + org.apache.catalina.realm.GenericPrincipal, with a + realm property that is equal to our instance.
    • +
    • If the passed principal meets these criteria, check + the specified role against the list returned by + getRoles(), and return true if the + specified role is included; otherwise, return false.
    • +
    • If the passed principal does not meet these criteria, + return false.
    • +
    + +
    + +
    Testable Assertions
    + +

    In addition the the assertions implied by the functionality requirements + listed above, the following additional assertions shall be tested to + validate the behavior of JNDIRealm:

    +
      +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-memory-realm.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-memory-realm.html new file mode 100644 index 0000000..b9bde27 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/fs-memory-realm.html @@ -0,0 +1,212 @@ +Catalina Functional Specifications - MemoryRealm
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Catalina Functional Specifications

    MemoryRealm

    Overview
    + + +
    Introduction
    + +

    The purpose of the MemoryRealm implementation is to + provide a mechanism by which Tomcat 5 can acquire information needed + to authenticate web application users, and define their security roles, + from a simple text-based configuration file in XML format. This is + intended to simplify the initial installation and operation of Tomcat 5, + without the complexity of configuring a database or directory server + based Realm. It is not intended for production use.

    + +

    This specification reflects a combination of functionality that is + already present in the org.apache.catalina.realm.MemoryRealm + class, as well as requirements for enhancements that have been + discussed. Where appropriate, requirements statements are marked + [Current] and [Requested] to distinguish them.

    + +

    The current status of this functional specification is + PROPOSED. It has not yet been discussed and + agreed to on the TOMCAT-DEV mailing list.

    + +
    + + +
    External Specifications
    + +

    The implementation of this functionality depends on the following + external specifications:

    +
      +
    • None
    • +
    + +
    + + +
    Implementation Requirements
    + +

    The implementation of this functionality shall conform to the + following requirements:

    +
      +
    • Be realized in one or more implementation classes.
    • +
    • Implement the org.apache.catalina.Realm interface. + [Current]
    • +
    • Implement the org.apache.catalina.Lifecycle + interface. [Current]
    • +
    • Subclass the org.apache.catalina.realm.RealmBase + base class.
    • +
    • Live in the org.apache.catalina.realm package. + [Current]
    • +
    • Support a configurable debugging detail level. [Current]
    • +
    • Log debugging and operational messages (suitably internationalized) + via the getContainer().log() method. [Current]
    • +
    + +
    + + +
    Dependencies
    + + +
    Environmental Dependencies
    + +

    The following environmental dependencies must be met in order for + MemoryRealm to operate correctly:

    +
      +
    • The desire to utilize MemoryRealm must be registered in + $CATALINA_HOME/conf/server.xml, in a + <Realm> element that is nested inside a + corresponding <Engine>, <Host>, + or <Context> element. (This is already + included in the default server.xml file.)
    • +
    + +
    + + +
    Container Dependencies
    + +

    Correct operation of MemoryRealm depends on the following + specific features of the surrounding container:

    +
      +
    • Interactions with MemoryRealm will be initiated by + the appropriate Authenticator implementation, based + on the login method that is selected.
    • +
    • MemoryRealm must have an XML parser compatible with + the JAXP/1.1 APIs available to it. This is normally accomplished + by placing the corresponding JAR files in directory + $CATALINA_HOME/server/lib (to make them visible only + to internal Catalina classes) or in directory + $CATALINA_HOME/common/lib (to make them visible to + Catalina internal classes and installed web + applications).
    • +
    + +
    + + +
    Functionality
    + + +
    Overview of Operation
    + +

    The main purpose of MemoryRealm is to allow Catalina to + authenticate users, and look up the corresponding security roles, from + the information found in an XML-format configuration file. The format + of this file is described below. When a MemoryRealm + instance is started, it will read the contents of this XML file and create + an "in memory database" of all the valid users and their associated + security roles.

    + +

    Each time that Catalina needs to authenticate a user, it will call + the authenticate() method of this Realm implementation, + passing the username and password that were specified by the user. If + we find the user in the database (and match on the password), we accumulate + all of the security roles that are defined for this user, and create a + new GenericPrincipal object to be returned. If the user + is not authenticated, we return null instead. The + GenericUser object caches the set of security roles that + were owned by this user at the time of authentication, so that calls to + isUserInRole() can be answered without going back to the + database every time.

    + +
    + + +
    Detailed Functional Requirements
    + + +

    Configurable Properties

    + +

    The implementation shall support the following properties + that can be configured with JavaBeans property setters:

    +
      +
    • Configurable debugging detail level.
    • +
    • Configurable file pathname (absolute or relative to + $CATALINA_HOME of the XML file containing our + defined users. [conf/tomcat-users.xml].
    • +
    + +

    Lifecycle Functionality

    + +

    The following processing must be performed when the start() + method is called:

    +
      +
    • Open and parse the specified XML file.
    • +
    • Create an in-memory database representation of the XML file + contents.
    • +
    • NOTE - There is no requirement to recognize + subsequent changes to the contents of the XML file.
    • +
    + +

    The following processing must be performed when the stop() + method is called:

    +
      +
    • Release object references to the in-memory database representation.
    • +
    + + +

    Method authenticate() Functionality

    + +

    When authenticate() is called, the following processing + is required:

    +
      +
    • Select the one and only "user" instance from the in-memory database, + based on matching the specified username. If there is no such + instance, return null.
    • +
    • Authenticate the user by comparing the (possibly encrypted) password + value that was received against the password presented by the user. + If there is no match, return null.
    • +
    • Construct a new instance of class + org.apache.catalina.realm.GenericPrincipal (if not + already using this as the internal database representation) that + contains the authenticated username and a List of the + security roles associated with this user.
    • +
    • Return the newly constructed GenericPrincipal.
    • +
    + + +

    Method hasRole() Functionality

    + +

    When hasRole() is called, the following processing + is required:

    +
      +
    • The principal that is passed as an argument SHOULD + be one that we returned (instanceof class + org.apache.catalina.realm.GenericPrincipal, with a + realm property that is equal to our instance.
    • +
    • If the passed principal meets these criteria, check + the specified role against the list returned by + getRoles(), and return true if the + specified role is included; otherwise, return false.
    • +
    • If the passed principal does not meet these criteria, + return false.
    • +
    + +
    + +
    Testable Assertions
    + +

    In addition the the assertions implied by the functionality requirements + listed above, the following additional assertions shall be tested to + validate the behavior of MemoryRealm:

    +
      +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/index.html new file mode 100644 index 0000000..3c36287 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/index.html @@ -0,0 +1,37 @@ +Catalina Functional Specifications - Table of Contents
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Catalina Functional Specifications

    Table of Contents

    Catalina Functional Specifications
    + +

    This documentation area includes functional specifications for +many features supported by the Catalina servlet container +portion of Tomcat 5. In most cases, these features are not documented in the +underlying Servlet or JSP specifications, so a definition of the expected +correct behavior is important both to implementors of those features, and to +test writers trying to decide what to test.

    + +

    The functional specifications are divided into the following categories +in the menu (to the left):

    +
      +
    • Administrative Apps - Overall requirements for supporting an + ability to configure and operate a Tomcat 5 installation through tools, + as well as detailed requirements for the tools themselves.
    • +
    • Internal Servlets - Requirements for Catalina features that are + implemented as internal, container-managed, servlets.
    • +
    • Realm Implementations - Requirements for the implementations of + the org.apache.catalina.Realm interface (providing access to + collections of users, passwords and roles) that are included in the + standard Tomcat 5 distribution.
    • +
    + +

    NOTE - In some cases, the contents of these functional specs has +been "reverse engineered" from existing implementations. This exercise is +stil useful, because it provides an introduction to what +Catalina does, without being as concerned with how this is +accomplished.

    + +

    TODO - Obviously, this area has a long ways to go before +it is complete. Contributions are welcome!

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/mbean-names.html b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/mbean-names.html new file mode 100644 index 0000000..da00c96 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/funcspecs/printer/mbean-names.html @@ -0,0 +1,708 @@ +Catalina Functional Specifications - Tomcat MBean Names
    
+      Catalina Functional Specifications
+

    Apache Tomcat 6.0

    Apache Logo

    Catalina Functional Specifications

    Tomcat MBean Names

    Background
    + +

    We will be using JMX MBeans as the technology for + implementing manageability of Tomcat.

    + +

    One of the key concepts of JMX (and JSR-77) is that each management + bean has a unique name in the MBeanServer's registry, and that + management applications can utilize these names to retrieve the MBean + of interest to them for a particular management operation. + This document proposes a naming convention for MBeans that allows easy + calculation of the name for a particular MBean. For background + information on JMX MBean names, see the Java Management Extensions + Instrumentation and Agent Specification, version 1.0, section 6. + In particular, we will be discussing the String Representation of + ObjectName instances.

    + +
    Catalina Object Hierarchy
    + +

    Tomcat's servlet container implementation, called Catalina, can be +represented as a hierarchy of objects that contain references to each other. +The object hierarchy can be represented as a tree, or (isomorphically) based +on the nesting of configuration elements in the conf/server.xml +file that is traditionally used to configure Tomcat stand-alone.

    + +

    The valid component nestings for Catalina are depicted in the following +table, with columns that contain the following values:

    +
      +
    • Pattern - Nesting pattern of XML elements (in the + conf/server.xml file) used to configure this component.
    • +
    • Cardinality - Minimum and maximum number of occurrences of + this element at this nesting position, which also corresponds to the + minimum and maximum number of Catalina components.
    • +
    • Identifier - Name of the JavaBeans property of this component + that represents the unique identifier (within the nested hierarchy), + if any.
    • +
    • MBean ObjectName - The portion of the MBean object name that + appears after the domain name. For now, it should be + assumed that all of these MBeans appear in the default JMX domain.
    • +
    + +

    In the MBean ObjectName descriptions, several types of symbolic +expressions are utilized to define variable text that is replaced by +corresponding values:

    +
      +
    • ${GROUP} - One of the standard MBean names of the specified + "group" category. For example, the expression ${REALM} + represents the values like JDBCRealm and JAASRealm + that identify the various MBeans for possible Realm components.
    • +
    • ${name} - Replaced by the value of property name + from the current component.
    • +
    • ${parent.name} - Replaced by the value of property + name from a parent of the current component, with the + parent's type identified by parent.
    • +
    • ${###} - An arbitrary numeric identifier that preserves + order but has no other particular meaning. In general, the server will + assign numeric values to existing instances with large gaps into which + new items can be configured if desired.
    • +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    PatternCardinalityIdentifierMBean ObjectName
    Server1..1(none)type=${SERVER}
    Server / Listener0..n(none)type=${LISTENER}, sequence=${###}
    Server / Service1..nnametype=${SERVICE}, name=${name}
    Server / Service / Connector1..naddress, porttype=${CONNECTOR}, service=${service}, port=${port}, + address=${address}
    Server / Service / Connector / Factory0..1(none)(Only defined explicitly for an SSL connector, but can be treated + as part of the connector component)
    Server / Service / Connector / Listener0..n(none)type=${LISTENER}, sequence=${###}, service=${service}, + port=${connector.port}, address=${connector.address}
    Server / Service / Engine1..1(none)type=${ENGINE}, service=${service.name}
    Server / Service / Engine / Host1..nnametype=${HOST}, host=${name}, + service=${service.name}
    Server / Service / Engine / Host / Context1..npathtype=${CONTEXT}, path=${path}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Context / InstanceListener0..n(none)type=${INSTANCE-LISTENER}, sequence=${###}, path=${context.path}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Host / Context / Listener0..n(none)type=${LISTENER}, sequence=${###}, path=${context.path}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Host / Context / Loader0..1(none)type=${LOADER}, path=${context.path}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Context / Manager0..1(none)type=${MANAGER}, path=${context.path}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Context / Realm0..1(none)type=${REALM}, path=${context.path}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Context / Resources0..1(none)type=${RESOURCES}, path=${context.path}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Context / Valve0..n(none)type=${VALVE}, sequence=${###}, path=${context.path}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Host / Context / Wrapper0..n(none)j2eeType=Servlet,name=${name}, + WebModule=//${host.name}/${context.name}, + J2EEApplication=${context.J2EEApplication}, + J2EEServer=${context.J2EEServer}
    Server / Service / Engine / Host / Context / WrapperLifecycle0..n(none)type=${WRAPPER-LIFECYCLE}, sequence=${###}, path=${context.path}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Host / Context / WrapperListener0..n(none)type=${WRAPPER-LISTENER}, sequence=${###}, path=${context.path}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Host / Listener0..n(none)type=${LISTENER}, sequence=${###}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Realm0..1(none)type=${REALM}, host=${host.name}, + service=${service.name}
    Server / Service / Engine / Host / Valve0..n(none)type=${VALVE}, sequence=${###}, + host=${host.name}, service=${service.name}
    Server / Service / Engine / Listener0..n(none)type=${LISTENER}, sequence=${###} + (FIXME - disambiguate from Server / Service / + Listener)
    Server / Service / Engine / Realm0..1(none)type=${REALM}, service=${service.name}
    Server / Service / Engine / Valve0..n(none)type=${VALVE}, sequence=${###}, + service=${service.name}
    Server / Service / Listener0..n(none)type=${LISTENER}, sequence=${###} + (FIXME - disambiguate from Server / Service / + Engine / Listener)
    + +
    MBean Groups and Names
    + +

    The following MBean names shall be defined in the resource file +/org/apache/catalina/mbeans/mbeans-descriptors.xml (and +therefore available for use within the Administration/Configuration +web application for Tomcat):

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    MBean NameGroup NameCatalina InterfaceImplementation Class
    AccessLogValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.AccessLogValve
    BasicAuthenticatorVALVEorg.apache.catalina.Valveorg.apache.catalina.authenticator.BasicAuthenticator
    CertificatesValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.CertificatesValve
    ContextConfigLISTENERorg.apache.catalina.LifecycleListenerorg.apache.catalina.startup.ContextConfig
    ContextEnvironmentRESOURCESorg.apache.catalina.deploy.ContextEnvironmentorg.apache.catalina.deploy.ContextEnvironment
    ContextResourceRESOURCESorg.apache.catalina.deploy.ContextResourceorg.apache.catalina.deploy.ContextResource
    ContextResourceLinkRESOURCESorg.apache.catalina.deploy.ContextResourceLinkorg.apache.catalina.deploy.ContextResourceLink
    CoyoteConnectorCONNECTORorg.apache.catalina.Connectororg.apache.coyote.tomcat4.CoyoteConnector
    DigestAuthenticatorVALVEorg.apache.catalina.Valveorg.apache.catalina.authenticator.DigestAuthenticator
    EngineConfigLISTENERorg.apache.catalina.LifecycleListenerorg.apache.catalina.startup.EngineConfig
    ErrorReportValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.ErrorReportValve
    ErrorDispatcherValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.ErrorDispatcherValve
    FormAuthenticatorVALVEorg.apache.catalina.Valveorg.apache.catalina.authenticator.FormAuthenticator
    GroupGROUPorg.apache.catalina.Grouporg.apache.catalina.Group
    HostConfigLISTENERorg.apache.catalina.LifecycleListenerorg.apache.catalina.startup.HostConfig
    HttpConnector10CONNECTORorg.apache.catalina.Connectororg.apache.catalina.connector.http10.HttpConnector
    HttpConnector11CONNECTORorg.apache.catalina.Connectororg.apache.catalina.connector.http.HttpConnector
    JAASRealmREALMorg.apache.catalina.Realmorg.apache.catalina.realm.JAASRealm
    JDBCRealmREALMorg.apache.catalina.Realmorg.apache.catalina.realm.JDBCRealm
    JDBCUserDatabaseUSERDATABASEorg.apache.catalina.users.JDBCUserDatabaseorg.apache.catalina.users.JDBCUserDatabase
    JNDIRealmREALMorg.apache.catalina.Realmorg.apache.catalina.realm.JNDIRealm
    MBeanFactoryorg.apache.catalina.mbeans.MBeanFactory
    MemoryRealmREALMorg.apache.catalina.Realmorg.apache.catalina.realm.MemoryRealm
    MemoryUserDatabaseUSERDATABASEorg.apache.catalina.users.MemoryUserDatabaseorg.apache.catalina.users.MemoryUserDatabase
    NamingContextListenerLISTENERorg.apache.catalina.LifecycleListenerorg.apache.catalina.core.NamingContextListener
    NamingResourcesRESOURCESorg.apache.catalina.deploy.NamingResourcesorg.apache.catalina.deploy.NamingResources
    NonLoginAuthenticatorVALVEorg.apache.catalina.Valveorg.apache.catalina.authenticator.NonLoginAuthenticator
    PersistentManagerMANAGERorg.apache.catalina.Managerorg.apache.catalina.session.PersistentManager
    RemoteAddrValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.RemoteAddrValve
    RemoteHostValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.RemoteHostValve
    RequestDumperValveVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.RequestDumperValve
    RoleROLEorg.apache.catalina.Roleorg.apache.catalina.Role
    SingleSignOnVALVEorg.apache.catalina.Valveorg.apache.catalina.valves.SingleSignOn
    SSLAuthenticatorVALVEorg.apache.catalina.Valveorg.apache.catalina.authenticator.SSLAuthenticator
    StandardContextCONTEXTorg.apache.catalina.Contextorg.apache.catalina.core.StandardContext
    StandardContextValveVALVEorg.apache.catalina.Valveorg.apache.catalina.core.StandardContextValve
    StandardEngineENGINEorg.apache.catalina.Engineorg.apache.catalina.core.StandardEngine
    StandardEngineValveVALVEorg.apache.catalina.Valveorg.apache.catalina.core.StandardEngineValve
    StandardHostHOSTorg.apache.catalina.Hostorg.apache.catalina.core.StandardHost
    StandardHostValveVALVEorg.apache.catalina.Valveorg.apache.catalina.core.StandardHostValve
    StandardManagerMANAGERorg.apache.catalina.Managerorg.apache.catalina.session.StandardManager
    StandardServerSERVERorg.apache.catalina.Serverorg.apache.catalina.core.StandardServer
    StandardServiceSERVICEorg.apache.catalina.Serviceorg.apache.catalina.core.StandardService
    StandardWrapperWRAPPERorg.apache.catalina.Wrapperorg.apache.catalina.core.StandardWrapper
    StandardWrapperValveVALVEorg.apache.catalina.Valveorg.apache.catalina.core.StandardWrapperValve
    UserUSERorg.apache.catalina.Userorg.apache.catalina.User
    UserDatabaseRealmREALMorg.apache.catalina.Realmorg.apache.catalina.realm.UserDatabaseRealm
    WebappLoaderLOADERorg.apache.catalina.Loaderorg.apache.catalina.loader.WebappLoader
    + +
    JSR-77 Cross Reference
    + +

    The managed objects in the JSR-77 object hierarchy correspond +to the specified MBean names or groups as follows:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    JSR-77 Managed ObjectMBean Name or GroupComments
    J2EEServer${SERVICE}
    Node${SERVICE}Tomcat supports a single node only.
    Port${CONNECTOR}
    Servlet${WRAPPER}
    WebModule${CONTEXT}
    + +
    JSR-88 Cross Reference
    + +

    The deployment objects in the JSR-88 API object hierarchy correspond +to the specified MBean names or groups as follows:

    + + + + + + + + + + + + + + + + + + + + + +
    JSR-88 API ObjectMBean Name or GroupComments
    DeployableObject${CONTEXT}Context deployment info plus the corresponding WAR file
    Target${HOST}
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/html-manager-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/html-manager-howto.html new file mode 100644 index 0000000..5d78073 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/html-manager-howto.html @@ -0,0 +1,519 @@ +Apache Tomcat 6.0 - Tomcat Web Application Manager How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Tomcat Web Application Manager How To

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    In many production environments it is very useful to have the capability +to manage your web applications without having to shut down and restart +Tomcat. This document is for the HTML web interface to the web application +manager.

    + +

    The interface is divided into five sections: +

      +
    • Message - Displays success and failure messages.
    • +
    • Manager - General manager operations like list and + help.
    • +
    • Applications - List of web applications and + commands.
    • +
    • Deploy - Deploying web applications.
    • +
    • Server Information - Information about the Tomcat + server.
    • +
    +

    + +
    Message
    + +

    +Displays information about the success or failure of the last web application +manager command you performed. If it succeeded OK is displayed +and may be followed by a success message. If it failed FAIL +is displayed followed by an error message. Common failure messages are +documented below for each command. The complete list of failure messages for +each command can be found in the manager web +application documentation. +

    + +
    Manager
    + +

    The Manager section has three links: +

      +
    • List Applications - Redisplay a list of web + applications.
    • +
    • HTML Manager Help - A link to this document.
    • +
    • Manager Help - A link to the comprehensive Manager + App HOW TO.
    • +
    +

    + +
    Applications
    + +

    The Applications section lists information about all the installed web +applications and provides links for managing them. For each web application +the following is displayed: +

      +
    • Path - The web applicaton context path.
    • +
    • Display Name - The display name for the web application + if it has one configured in its "web.xml" file.
    • +
    • Running - Whether the web application is running and + available (true), or not running and unavailable (false).
    • +
    • Sessions - The number of active sessions for remote + users of this web application. The number of sessions is a link which + when submitted displays more details about session usage by the web + application in the Message box.
    • +
    • Commands - Lists all commands which can be performed on + the web application. Only those commands which can be performed will be + listed as a link which can be submitted. No commands can be performed on + the manager web application itself. The following commands can be + performed: +
        +
      • Start - Start a web application which had been + stopped.
      • +
      • Stop - Stop a web application which is currently + running and make it unavailable.
      • +
      • Reload - Reload the web application so that new + ".jar" files in /WEB-INF/lib/ or new classes in + /WEB-INF/classes/ can be used.
      • +
      • Undeploy - Stop and then remove this web + application from the server.
      • +
      +
    • +
    +

    + +
    Start
    + +

    Signal a stopped application to restart, and make itself available again. +Stopping and starting is useful, for example, if the database required by +your application becomes temporarily unavailable. It is usually better to +stop the web application that relies on this database rather than letting +users continuously encounter database exceptions.

    + +

    If this command succeeds, you will see a Message like this:

    +
    +OK - Started application at context path /examples
    +
    + +

    Otherwise, the Message will start with FAIL and include an +error message. Possible causes for problems include: +

      +
    • Encountered exception +
      +

      An exception was encountered trying to start the web application. + Check the Tomcat 5 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character, unless you are + referencing the ROOT web application -- in which case the context path + must be a zero-length string.

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    +

    + +
    + +
    Stop
    + +

    Signal an existing application to make itself unavailable, but leave it +deployed. Any request that comes in while an application is +stopped will see an HTTP error 404, and this application will show as +"stopped" on a list applications command.

    + +

    If this command succeeds, you will see a Message like this:

    +
    +OK - Stopped application at context path /examples
    +
    + +

    Otherwise, the Message will start with FAIL and include an +error message. Possible causes for problems include: +

      +
    • Encountered exception +
      +

      An exception was encountered trying to stop the web application. + Check the Tomcat 5 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character, unless you are + referencing the ROOT web application -- in which case the context path + must be a zero-length string.

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    +

    + +
    + +
    Reload
    + +

    Signal an existing application to shut itself down and reload. This can +be useful when the web application context is not reloadable and you have +updated classes or property files in the /WEB-INF/classes +directory or when you have added or updated jar files in the +/WEB-INF/lib directory. +

    +

    NOTE: The /WEB-INF/web.xml +web application configuration file is not checked on a reload; +the previous web.xml configuration is used. +If you have made changes to your web.xml file you must stop +then start the web application. +

    + +

    If this command succeeds, you will see a Message like this:

    +
    +OK - Reloaded application at context path /examples
    +
    + +

    Otherwise, the Message will start with FAIL and include an +error message. Possible causes for problems include: +

      +
    • Encountered exception +
      +

      An exception was encountered trying to restart the web application. + Check the Tomcat 5 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character, unless you are + referencing the ROOT web application -- in which case the context path + must be a zero-length string.

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    • Reload not supported on WAR deployed at path /foo +
      + Currently, application reloading (to pick up changes to the classes or + web.xml file) is not supported when a web application is + installed directly from a WAR file, which happens when the host is + configured to not unpack WAR files. As it only works when the web + application is installed from an unpacked directory, if you are using + a WAR file, you should undeploy and then deploy + the application again to pick up your changes. +
    • +
    +

    + +
    + +
    Undeploy
    + +

    WARNING - This command will delete the +contents of the web application directory and/or ".war" file if it exists within +the appBase directory (typically "webapps") for this virtual host +. The web application temporary work directory is also deleted. If +you simply want to take an application out of service, you should use the +/stop command instead.

    + +

    Signal an existing application to gracefully shut itself down, and then +remove it from Tomcat (which also makes this context path available for +reuse later). This command is the logical opposite of the +/deploy Ant command, and the related deploy features available +in the HTML manager.

    + +

    If this command succeeds, you will see a Message like this:

    +
    +OK - Undeployed application at context path /examples
    +
    + +

    Otherwise, the Message will start with FAIL and include an +error message. Possible causes for problems include: +

      +
    • Encountered exception +
      +

      An exception was encountered trying to undeploy the web application. + Check the Tomcat logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character, unless you are + referencing the ROOT web application -- in which case the context path + must be a zero-length string.

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    +

    + +
    + +
    Deploy
    + +

    Web applications can be deployed using files or directories located +on the Tomcat server or you can upload a web application archive (WAR) +file to the server.

    + +

    To install an application, fill in the appropriate fields for the type +of install you want to do and then submit it using the Install +button.

    + +
    Deploy directory or WAR file located on server
    + +

    Deploy and start a new web application, attached to the specified Context +Path: (which must not be in use by any other web application). +This command is the logical opposite of the Undeploy command.

    + +

    There are a number of different ways the deploy command can be used.

    + +

    Deploy a Directory or WAR by URL

    + +

    Install a web application directory or ".war" file located on the Tomcat +server. If no Context Path is specified, the directory name or the +war file name without the ".war" extension is used as the path. The +WAR or Directory URL specifies a URL (including the file: +scheme) for either a directory or a web application archive (WAR) file. The +supported syntax for a URL referring to a WAR file is described on the Javadocs +page for the java.net.JarURLConnection class. Use only URLs that +refer to the entire WAR file.

    + +

    In this example the web application located in the directory +C:\path\to\foo on the Tomcat server (running on Windows) +is deployed as the web application context named /footoo. +

    +Context Path: /footoo
    +WAR or Directory URL: file:C:/path/to/foo
    +
    +

    + +

    In this example the ".war" file /path/to/bar.war on the +Tomcat server (running on Unix) is deployed as the web application +context named /bar. Notice that there is no path +parameter so the context path defaults to the name of the web application +archive file without the ".war" extension. +

    +WAR or Directory URL: jar:file:/path/to/bar.war!/
    +
    +

    + +

    Deploy a Directory or War from the Host appBase

    + +

    Install a web application directory or ".war" file located in your Host +appBase directory. If no Context Path is specified the directory name +or the war file name without the ".war" extension is used as the path.

    + +

    In this example the web application located in a subdirectory named +foo in the Host appBase directory of the Tomcat server is +deployed as the web application context named /foo. Notice +that there is no path parameter so the context path defaults +to the name of the web application directory. +

    +WAR or Directory URL: foo
    +
    +

    + +

    In this example the ".war" file bar.war located in your +Host appBase directory on the Tomcat server is deployed as the web +application context named /bartoo. +

    +Context Path: /bartoo
    +WAR or Directory URL: bar.war
    +
    +

    + +

    Deploy using a Context configuration ".xml" file

    + +

    If the Host deployXML flag is set to true, you can install a web +application using a Context configuration ".xml" file and an optional +".war" file or web application directory. The Context Path +is not used when installing a web application using a context ".xml" +configuration file.

    + +

    A Context configuration ".xml" file can contain valid XML for a +web application Context just as if it were configured in your +Tomcat server.xml configuration file. Here is an +example for Tomcat running on Windows: +

    +<Context path="/foobar" docBase="C:\path\to\application\foobar"
    +         debug="0">
    +
    +  <!-- Link to the user database we will get roles from -->
    +  <ResourceLink name="users" global="UserDatabase"
    +                type="org.apache.catalina.UserDatabase"/>
    +
    +</Context>
    +
    +

    + +

    Use of the WAR or Directory URL is optional. When used +to select a web application ".war" file or directory it overrides any +docBase configured in the context configuration ".xml" file.

    + +

    Here is an example of installing an application using a Context +configuration ".xml" file for Tomcat running on Windows. +

    +XML Configuration file URL: file:C:/path/to/context.xml
    +
    +

    + +

    Here is an example of installing an application using a Context +configuration ".xml" file and a web application ".war" file located +on the server (Tomcat running on Unix). +

    +XML Configuration file URL: file:/path/to/context.xml
    +WAR or Directory URL: jar:file:/path/to/bar.war!/
    +
    +

    + +
    + +
    Upload a WAR file to install
    + +

    Upload a WAR file from your local system and install it into the +appBase for your Host. The name of the WAR file without the ".war" +extension is used as the context path name.

    + +

    Use the Browse button to select a WAR file to upload to the +server from your local desktop system.

    + +

    The .WAR file may include Tomcat specific deployment configuration, by +including a Context configuration XML file in +/META-INF/context.xml.

    + +

    Upload of a WAR file could fail for the following reasons:

    +
      +
    • File uploaded must be a .war +
      +

      The upload install will only accept files which have the filename + extension of ".war".

      +
    • +
    • War file already exists on server +
      +

      If a war file of the same name already exists in your Host's + appBase the upload will fail. Either undeploy the existing war file + from your Host's appBase or upload the new war file using a different + name.

      +
    • +
    • File upload failed, no file +
      +

      The file upload failed, no file was received by the server.

      +
    • +
    • Install Upload Failed, Exception: +
      +

      The war file upload or install failed with a Java Exception. + The exception message will be listed.

      +
    • +
    + +
    + +
    Deployment Notes
    + +

    If the Host is configured with unpackWARs=true and you install a war +file, the war will be unpacked into a directory in your Host appBase +directory.

    + +

    If the application war or directory is deployed in your Host appBase +directory and either the Host is configured with autoDeploy=true or +liveDeploy=true, the Context path must match the directory name or +war file name without the ".war" extension.

    + +

    For security when untrusted users can manage web applications, the +Host deployXML flag can be set to false. This prevents untrusted users +from installing web applications using a configuration XML file and +also prevents them from installing application directories or ".war" +files located outside of their Host appBase.

    + +
    + +
    Deploy Message
    + +

    If deployment and startup is successful, you will receive a Message +like this:

    +
    +OK - Deployed application at context path /foo
    +
    + +

    Otherwise, the Message will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Application already exists at path /foo +
      +

      The context paths for all currently running web applications must be + unique. Therefore, you must either undeploy the existing web + application using this context path, or choose a different context path + for the new one.

      +
    • +
    • Document base does not exist or is not a readable directory +
      +

      The URL specified by the WAR or Directory URL: field must + identify a directory on this server that contains the "unpacked" version + of a web application, or the absolute URL of a web application archive + (WAR) file that contains this application. Correct the value entered for + the WAR or Directory URL: field.

      +
    • +
    • Encountered exception +
      +

      An exception was encountered trying to start the new web application. + Check the Tomcat 5 logs for the details, but likely explanations include + problems parsing your /WEB-INF/web.xml file, or missing + classes encountered when initializing application event listeners and + filters.

      +
    • +
    • Invalid application URL was specified +
      +

      The URL for the WAR or Directory URL: field that you specified + was not valid. Such URLs must start with file:, and URLs + for a WAR file must end in ".war".

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character, unless you are + referencing the ROOT web application -- in which case the context path + must be a "/" string.

      +
    • +
    • Context path must match the directory or WAR file name: +
      + If the application war or directory is deployed in your Host appBase + directory and either the Host is configured with autoDeploy=true or + liveDeploy=true, the Context path must match the directory name or + war file name without the ".war" extension. +
    • +
    • Only web applications in the Host web application directory can + be deployed +
      + If the Host deployXML flag is set to false this error will happen + if an attempt is made to install a web application directory or + ".war" file outside of the Host appBase directory. +
    • +
    + +
    +
    Server Information
    + +

    This section displays information about Tomcat, the operating system of +the server Tomcat is hosted on, and the Java Virtual Machine Tomcat is +running in.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/add.gif b/P51/apache-tomcat-6.0.14/webapps/docs/images/add.gif new file mode 100644 index 0000000..0774d07 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/images/add.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/asf-logo.gif b/P51/apache-tomcat-6.0.14/webapps/docs/images/asf-logo.gif new file mode 100644 index 0000000..22eb9d7 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/images/asf-logo.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/code.gif b/P51/apache-tomcat-6.0.14/webapps/docs/images/code.gif new file mode 100644 index 0000000..d27307b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/images/code.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/design.gif b/P51/apache-tomcat-6.0.14/webapps/docs/images/design.gif new file mode 100644 index 0000000..f5db0a9 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/images/design.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/docs.gif b/P51/apache-tomcat-6.0.14/webapps/docs/images/docs.gif new file mode 100644 index 0000000..d64a4a1 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/images/docs.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/fix.gif b/P51/apache-tomcat-6.0.14/webapps/docs/images/fix.gif new file mode 100644 index 0000000..d59ad64 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/images/fix.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/printer.gif b/P51/apache-tomcat-6.0.14/webapps/docs/images/printer.gif new file mode 100644 index 0000000..5021187 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/images/printer.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/tomcat.gif b/P51/apache-tomcat-6.0.14/webapps/docs/images/tomcat.gif new file mode 100644 index 0000000..6175673 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/images/tomcat.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/tomcat.svg b/P51/apache-tomcat-6.0.14/webapps/docs/images/tomcat.svg new file mode 100644 index 0000000..12bee08 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/images/tomcat.svg @@ -0,0 +1,573 @@ + + + + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + 2006-05-09T08:17:21Z + 2006-05-09T08:37:38Z + Illustrator + + + + JPEG + 256 + 184 + /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgAuAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYq7FXYq7 FXYq7FXYq7FXYq7FXYq7FXhH/OYHnWfQ/wAurfRLSUxXXmK49GQqaN9VtwJJqH3cxqfYnFXhP5Y/ 85O+f/JU0enaw769okbBJLS8ZvrUKg0IhnarDj/I9R2HHFX2F+Xn5neT/P8ApP6R8u3glKAfW7KS iXNuzdFljqaezCqnsTirK8VdirsVdirsVdirsVdirC/zM/Nvyd+XemC71255Xcqk2WmQUa5nI2+F CRxUd3ag+nbFXx1+Zf8Azkn+YvneaW1tLh9C0NgwXTrB2V3Sm/rzji8m3UDitP2cVfV//OOfmabz D+T3l+6uHMl1aRPYTsxqSbVzEhJ7kxKhxV6VirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVd irsVfHn/ADlxdSa7+bvlvyvGx4RW0EVARtNfXJVqf7BY+uRlKgT3JAt5r/zkD5ZGgfmfqSRR+nZ6 gsd9agdOMq0f/ksj5h9nZvEwgnmNi2Z4cMiw/wAqebPMHlTXLfW9BvHstQtjVZEPwstQWjkXo6NT 4lOxzOan3v8Akl+cel/mX5a+tAJa69ZcU1fTlJojGvGWLluYpKbV6GqmtKlV6NirsVdirsVdirsV eWfnr+eGl/lroywwBLzzPfox02wJqqL0+sT03EanoOrnYdyFXwh5i8x655j1i41jW7yS+1K6blNc SmpPgABQKo6BVFB2xVnf5Q+SjrWh+d9Yli5w6XolylsadbqSNnTj8kiYf7IZg6zUeHKERzlIfL8U 3YoWCe4Pff8AnCfVTN5D1zTCamz1P11HcLcQIAPlWE5nNL6KxV2KuxV2KuxV2KuxV2KuxV2KuxV2 KuxV2KuxV2KuxV2KvjD8wm/Sv/OX8UTGsdrqGnCMNUU+rW0Mp6f5ammY2sNYZ/1T9zZi+oe9m/8A zkx+Xc/mPytFrunRepqehc3ljUVeS0cAyAU6mMqHA8OXfNB2PqhCfAeUvv8A2uZqcdix0fIedQ69 m35OefrryN+YOla2kpjsjKttqqDo9nMwEoI78ftr/lKMVfaeqf8AOSH5KaaSs3meCZx0W1inuanf YNDG69vHFWM3v/OYn5QW5YQ/pK8ArQwWqitPD1pIuvviqVT/APObH5cKR6GjaxIP2i8dqhB9qTvi qmP+c2fIFd9C1Wnfa2/6q4qmFv8A85n/AJUSvxksdZtx/NJb25H/ACTuHOKp3bf85XfkpPBI7avN BIisywS2lwGcqCeIZUdKmm1WGKvijzz5x1bzl5q1HzFqjlrm+lLrHWqxRDaOFP8AJjSij7+uKpNb W1xdXMVtbRtNcTuscMKAszu54qqgbkkmgwE1uVfbHkL8uk8o/lTPoMiK+o3drPNqZHRrieIhlr4I tEB9q5yWo1fi6gS/hBFfN2UMfDAjqwT/AJwdvyt/5usC20sVlOq77em0yMR2/wB2Cudc619ZYq7F XYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXxZKTJ/zmFc+oedNTmA5b/ZtG49fCgpmH2h/ cS9zbh+sPqDrsc4t2r57/Nf/AJxkGo3c+teSTFb3ExMlxo0hEcTMdybd/spU/sN8PgQNs3+i7Xoc OX5/rcLLpusWIaF/zif56vFWTVr6y0pG6xgtczL81QLH90mZWTtnFH6bk1x0sjz2Z1pf/OIvlOIL +lNbvrthSv1dYrZSe+zC4ND88wp9uTP0xA9+/wCptGkHUsms/wDnGf8AKS3AEunT3dOpmupxXam/ pNFmPPtjOeRA+H67bBpoPDv+ch/yt03yXrdjeaFbG30HUouCQ8pJBFcQ0DqXkZ2+NSrCrfzeGbns vWHNAiX1BxdRi4TtySH8jfJdn5u/MOy07UIfrGl28ct3fw1IDRxrxUEqQaGV0By7X6g4sRkOfRhh hxSp9N3X/OO/5P3FSdBETGnxRXN0nT/JEvH8M50dq6gfxfYHOOnh3JDqP/OKn5a3NTazajYt+yIp 0dfpEsbn/hsvj21lHMRP497A6SPmwzW/+cQr9A76H5himO/CG9haL5AyxGT/AIhmXj7cifqiR7t/ 1NUtIehZh+S3/OP8Xk+5GveYXivNfTkLSKIloLYGqlwzBecjL3p8P45i9odqeIOCH09fNtw6fh3P N7DfIz2VwijkzRuFA6klTmpxmpD3uRLk+bf+cJrrj+Yet2tT+90hpeP7J9O5hWp9/wB5tneunfZm KuxV2KuxV2KuxV2KuxVZLNFDG0srrHGu7O5CqB7k4qks3nzyNC5jm8xaZHIOqPeW6nf2L4qmFhrW j6iK6ff294KVrbypLt1r8BPjirAvzb/Pnyf+WrW9rqKS6hq90vqRaba8eaxVp6krMQEUkEL1JPbq cVYFof8Azmp5BupVj1fR9Q0wNsZo/SuY1/1qGN6fJDir2Xyf+Yfkrzjam48taxb6iqgGSKNisyA9 PUhcLKn+yXFWRYq7FXYq7FXxRrBNj/zl/NVwC+rL8XtcWw+Hf/jJTMXXC8M/6pbMP1h9SZxLtnYq 7FWG+afzg/LnyvdNZ6vrUSXqGj2sKvcSofB1hV+B/wBamZmHs/NkFxjt8mqWaMeZRPk78zvI/nF5 ItA1RLm5hHKS1dXhmC1pyEcoRmXputRkdRosuLeQ2TDLGXJCfm/5JXzj5D1HSo05X8a/WtNPcXMI JUD/AFxVP9lk+z9R4WUE8jsWOaHFGnl3/OI/lpodN1zzFMlGuJUsLcsKELCPUlpXsWkQfNc2Xbmb eMPj+r9LRpI8y+hc0DmuxV2KuxV2Kvl//nClHP5oas4B4Lok6luwLXdqQPpoc9AdK+08VdirsVdi rsVdiqXeYPMOi+XtIudY1q7jsdNtF5z3EpooHQAd2ZjsqjcnYYq+VfPf/OV3nXzNqp0D8stPlto5 mMcF0IfrGoT+8UIDrGD8mbvVcVSqz/5xn/Pjzs66h5t1RbUueX+5W7kurgA/yxx+sq/6pZaeGKsj h/5wanMYM3nNUk7qmml1/wCCN0n6sVQt7/zhDr8B56Z5stppEIMZntZLfcb1qkk9KHFXzr5mtdUs tfv9O1S5a7vtOuJbKaZndwWt3MZ4mSjcartUDFUsxVFabqeo6XfQ3+m3UtlfW7c4Lq3dopUbxV1I IxV9Sfkr/wA5aNcT2+gfmG6K8hWO18wqAi1OwF2q0Vf+Mi0H8w6tir6lVlZQykMrCqsNwQe4xVvF XYq+Kfzzro3/ADlLa6oxKJLdaReFiaApGsMLeG1ISMqzw4sco94LKBogvqPOEdw7FXkf55/mBrlj Jp3kbykX/wAVeYSFE0Zo8FuzFOSt+wzlW+P9lQx2NDm27N0sZXlyfRFxs+Qj0jmUd5B/IHyP5bsI 31Oyh1zWnAa6vb1BMnqHciKKSqKAehI5e+Q1XamTIfSeGPlzTj08YjfcsJ/PDy5pXkHX/LH5geW7 WPTGhvlt9Rt7RBFHKpBk+wgCjnGkiPQbg5m9m5jnhLFM3s1Z4iBEg+hOu4zn3NQOkaLpuj20ltp8 IghlnnunRe8tzK0sh/4JzQdhtlmXLKZuXdXyYxiByR2VsnYqxjV/zO/L3SJWh1DzDYQzoaPD66PI p/ykQsw+kZlY9Dmnyifu+9qOWI6pvoOvaRr+kwato9yt3p1zz9C4UMob03MbbMFOzoR0ynLiljkY yFEM4yBFhV1WVYdLvJWJCxwSOxHWioTjhFzA8wsuRfPn/OEVoX83eZLzekOnxQnpSsswb/mVneOn fYOKuxV2KuxV2KqF9e2lhZT315KsFpaxtNcTuaKkcYLMzHwAFcVfFHnPzR50/wCchPzJi8veXlaH y7aO5sYnqsUUCkK97dU/bYdB2qFXcklV9U/lj+UnlH8u9IWz0a2WS+dQL7VpVBuLhh1q37KV+yg2 Huakqs1xV2KuxV8v/nf/AM4patrnmG+80eSp4Xn1GR7m/wBIuW9ImdyWd4JSOH7xjUq9KGvxb0Cr 5/1j8mPzX0iRkvfKepgL9qSC3e5jG9P7yASJ1PjiqRjyb5vMvpDQ9QMtePpi1m5culKca1xVPtG/ JT82dYdUsvKepUf7MlxA1rGe395cekn44q+zf+cffKv5m+VvJ50bzvPbzRwFf0RFHK01xbxU+KCV 6cCqmnDizU3FaUAVeo4q7FXx5/zmxpD2vnTy7rcdUN5YPbh12POzmL1qO4FyuKsl/Lz/AJyc8ra2 sNj5mUaHqZAU3TGtnI3Qnn1ir1o/wj+bOY1XY8474/UO7r+1z8epB2Oz2iKWKaJJYnWSKQBkkQhl ZTuCCNiDmnIINFygVGXTNOmvYb6W1hkvbbkLe6eNWljDgq3ByOS1UkGhwjJIDhs0ei0LtE5FLxD/ AJyycP5F0ezQcp59WjaNdt+NvMp/GQZuuxI/vJH+j+lxNWfSPe9rgiEMEcQNRGoQE9+IpmmlKyS5 QCpgSsllihieWVxHFGpeR2NFVVFSST0AGEAk0EEvn2fVfOv5269e6foN9Jof5e6fIYbm9QMst2af ZIBUtyG4QkKqkFqmgzfiGLRQBkOLKfx+C4ZMspobRZzof/OOv5U6VCiyaUdSnUUa4vZZJGb5opSL 7kzBydrZ5HY8PuDbHTQDP9G0XStE02HTNJtks9Pt+Xo20Qoi83LtQe7MTmBkyynLikbJboxAFBJv zO1Aaf8Al35lu60ZNNuljP8AlvEyJ/wzDL9FDizQH9IfYxymol59/wA4P6S0eg+adXI+G6ura0Vv e2jeRgP+kkZ2zqX01irsVdirsVdir50/5zJ/MGbSfK1j5PspOFxrrGa/KmhFpAwon/PWWn0KR3xV mf8Azjd+WEPkj8vrae5iA17XES91KQijorrWG333HpI24/mLYq9YxV2KuxV2KuxV2KuxV2KuxV2K obUdT03TbR7zUbuGytI/7y4uJFijX5u5VRir5U/5yz/MX8tfNfl7S7DQtZh1LW9NvS5W2V3iFvJG yyUnC+kfjVPsscVSv8i/yi/LTzn5Ij1XVLSafU4J5rW9C3EkaFlIdCFQrT926980XaOuy4cnDGqI vk5eDDGQsvdvKXkby35StXtdBgmtrZ6Vge6uZ4wf5ljmkkRCe5UCuaPPqp5Tc9/gHLhjEeSN8x3+ o6foGoX2m2hv9QtoJJbWyFazSKpKxjjv8R22yOCEZTAkaBZTJAsPHv8AlcP53/8Altpv+BuP+ac3 H8n6X/VPti4vjZP5rzz8wfPP5i+bfNvluw1Dyq1rqWjzG+g0ROZmuRVZDVGHPjxgbcDpXNhpdNiw wkYy9Mutj8dWnJOUiAQ9D/5XD+d//ltpv+BuP+ac1/8AJ+l/1T7Yt3jZP5rv+Vw/nf8A+W2m/wCB uP8AmnH+T9L/AKp9sV8bJ/NYp+ZX5v8A5qXnli40LVfKbaCutAWkdyxlWRwWXnHGrheRdfhI8DmV pNBgE+KMuLh9zXkzTIoirR/kbzf+bvlHy1Y+XtO/LedobYENM6zK0kjtyeRzxoOTH6BtkNTp9Plm ZyyfaEwnOIoRej+RPO35o6xr62fmPyf+hdNMTub71C1HWnFaV/azX6rS4IQuE+KXds348kyaIZ7q jaqthKdKSCS/pSBbp3jhr4uY1kbbwA38Rmux8PF6r4fJuldbPlv8+YvzstdPS483apafoO7nEEVh pcjJbl6NIA0bKkjgenWsnKhpnTdnHTH+7HqHfz+f6nAz8f8AFyfQ3/OLHl06N+TWkyOnCfVpJ9Rm Hj6r+nEfphiQ5t3GeuYq7FXYq7FXYq+MfzQhXzz/AM5YWmgz1lsLe7sbB4zvW3gRbi5TvSrNLir7 OxV2KuxV2KuxV2KuxV2KuxV5j59/5yM/K7yb6kFxqQ1TU0qP0dpvG4cMO0kgIij36hn5e2KvAvMv /OWP5p+arl9P8laWukxtXiYIzfXvHpUuy+mg+UdR/NkJ5IwFyIA80xiSaDF/+VT/AJo+b7sah5w1 h1kavx3sz3k617KgYoo9uYp4ZptR7QYIbRuZ8uXzP7XMx6GcuezJYf8AnH3yrBptwjXFxd6g8LrB NIwSNJSpCOEQA7NvRmOak+0eQzGwjCxfU11/FOT/ACfEDnZYH+S+sfmZZeajoHlC8htrq6ZnubC/ K/VnMAPLkrAtyUdfT+Kg8BnSa7HhMOLINg6/CZA1F9k6KdbOmw/pxbZdTp/pH1IyNAW8U9UK9Pnn I5eDi9F8PnzdlG63R2VsmndUUu5CooJZiaAAdSTiBaHhP5N8/On5r+bPzEkBbT7dv0do7EGhWgUM tRswgjUsP+LM3vaH7nBDCOZ5/j3/AHOJh9UzJ7vmicx2KvEf+clQLS78i63cEjT9O1cC6O3H4mjl FR/qwPm77G3GSPUj9f63E1XQvbQQQCDUHoc0jlN4pSXzN5z8q+V7ZLjX9Tg0+OSvpLK37x+PXhGv J3pXfiMuw6bJlNQFsJ5BHmXzJ+dn5haf+Z/mby75e8qtLPbLN6EbyI0YluruRI0oh+KigChIHU50 /ZmilhieL6i4GoyiZ2fbWh6Ra6Noun6PaClpp1tFaW4/4rgQRr+C5s3HR2KuxV2KuxV2KvjfymCP +c0p/rdK/pTU+POlKfUp/S/4144q+yMVdirsVdirsVdirsVeQfmX/wA5Ofl55MaaxtZv0/rcdVNl ZMDEj+E1x8SL4ELyYdxir5W/Mf8A5yD/ADJ88GSC6vjpmjyVC6VYFoYmQ1FJXr6kte/I8fADFXme Kvpj8jdTtb3yJBFFGkdxYyyW9zwVU5MDzRzTqSjipPU1zhvaDHKOosk8Mht5d/6/i7rQSBh5h6Fm ic12Kvnvz6l35B/Nqz8z2CEQyzLqMSqeIY143UVf8upr7Pnedl5RqdLwS5gcJ/R9n2uj1MPDyWPe +wdL1Ky1TTbXUrGQTWd5Ek9vKOjJIoZT9xznMkDCRieYc2JsWisgyYZ+b1p5vvfIGqWPlSFZ9Tu0 9F1LiN/q77TelXYuV+EAkddt6A5vZ8sccoMzsPv6NOYSMdnzl+Wn5m/mVoKR+RtEtNLsrmGWSsOp q1vM87t8Su8ssS+p0UKaGgAGdDqtHhyfvJ2fd3fBwseWUfSHq36V/wCcqf8AqzaN/wAGn/ZRms4N B/OP2/qci83c79K/85U/9WbRv+DT/sox4NB/OP2/qW83c8o/Mj8z/wAy/MAm8i6zaaZfXU0sY9HT Ea4lSdGqqxvFLKvqbFSBXqQc2el0eHH+8jY2693xcfJllL0l9KflXb+bbXyJpVp5riWLV7aIQsqu JGMSbRGUio9ThQNQnx70znNccZyk4+R+9zsIkIi2W5iNqB1xdH/RF2+sxQy6XFE8t4tyiyRelGpZ i6uCpAAyzFxcQ4D6ixlVb8nzj/zjB5UtfNn5xal5tisltNE0Rpbu1tEUCOOa6ZktYgBt+7j5tt3U Z3UIkRAJt1BO77PySHYq7FXYq7FXYq+M/wAyX/wb/wA5b2WsP+7s7q90+7Zz8NILlEt7htqV3EmK vszFXYq7FXYq7FWGfmR+bnkn8vrD6xr16PrkilrXS4KPdTdacY6jitRTmxC++Kvjz80/+clPPvnk TWVq50Py45KfULRj6kqntcTjiz1H7K8V8QeuKsQ/KyLyvP5wtbTzFbC4trn91bc2IjW4JBj9QAjk G+zQ7VIrmB2mcowE4jUh93Vv0wiZgS5Po7zD5J8ta/pa6bf2UfoQrxtWiAjeDbb0io+Hp06eIzht N2jmwz4oyu+d7373dZNPCYoh8/effyj17yuZLu3B1DRgSRdRr8cS9f3yD7P+sPh+XTOz7P7Wxajb 6Z936u90+fSyx78wnP8Azj5r4s/M11o8jUi1OHlED/v63qwA+cbP92YvtDp+PCJjnA/Ydv1NugyV Ou99C5xDuWDeefKvnzV9WiufL+v/AKKskt1jkt+Ui8pQ7sX+AEbqyj6M3XZ2t02LGRlhxyvnQO23 e4eow5JSuJoe8sD81/lL+ZF9pj3Go65Hq7WKPLBbMZGc7VZY+S9WC9O+bnSdsaQTEYQ4OLyAHxou Jl0mWrJuvel/5Q/8rK80ySeXdA85S6P9Qh9W2spZ51RouXx+kEDD4CwqPfbvmz1pw4xxzhxX5Bxc XFLYGnv35Y+RfzR0DXri881+af03p0lq8MVp6s0nGZpI2WSkiqNkRh9OaLW6rBkgBjjwm+4D7nMx Y5g7m3p2axyGGfmF+U3k/wA82pGq23paii8bfVIAFuEpWgLU+NN/st9FDvmZpddkwnbePc1ZMMZ+ 95R/iv8AMz8lbm20/wAzMPMvk2Z/Ssr5XpcIBvxXmSwKr/ut6r2Vxm28HDrAZQ9OTr+P0uNxzxbH cNSeb/zJ/Om9uNM8pk+XPJ0Lelf6g7D13DD7L8DyJZf91oafzNTEYMOjAlP1ZOn7P1qZyymhsHrH 5d/lN5R8i2gXS7f1tRdaXGqTgNcPXqAeiJ/kr9NTvmq1euyZjvtHucjHhEPezPMJuePedvy3/OXV fNF/qGg+c/0ZpM7KbWx9a4X0wI1VhxRSoqwJ2zc6fWaaMAJQuXuDizxZCbB2eNfm7F+Z3lQQaDr3 nKXV21SJmm0+GedgIQwCmVXC7OwIUd6HNtopYcvrhDhrrQcbKJR2JeieSv8AnHD8+9H0SJtG83Q+ XlvlS5udPinuonSR0Hwy+nHxLqPhO5zYtD2r8mvJH5m+V/0x/jjzN/iL659W/R/76eb0PS9X1f75 Vpz5p08MVel4q7FXYq7FXYq+Xv8AnNjya81joXnG3Sv1Vm0y/YCp4SEy25PgquJB82GKva/yY87J 5z/LXRNbaTneNALfUfEXVv8Au5SR25leY9mGKs2xV2KrZJI4o2kkYJGgLO7EBVUCpJJ6AYq+aPzm /wCctrTTWn0L8vmjvL1ax3GvOA9vEehFsh2lYH9tvg8A1cVeMfl95AvPzCvLrzP5l1SW6iNwUueT tJdTyqqsQ7tXgvFgPGmwp1zS9rdrflqjEXMj4OZpdL4m5Oz3O18seXrXSP0PDp0C6ZSjWhjVkb3c NXk3ud842etzSyeIZHi73bDDAR4a2eaeb/yBsLlmvPK9x9QuQeX1OYs0JPX4JN3j/EfLN9ovaIj0 5hfmP0j9XycLNoBzh8noHku+1y50OKLXrV7XWLT9xeB6FZGUCkyOvwsHG549DUds03aOLHHJxYiD jluPLy8v1OXp5SMakPUE9IBBBFQdiDmCDTe841/8pLaHW7bzL5U42OqWkyzvYfZt5+JqyrT+6LrV f5fl1zoNL21xQOLPvGQri6j39/3+9wMujo8UOY6PSB06U9s54uewnzt5H8z69qsV5pXme60W3jgW F7WAyhWcO7GQ+nLGKkMB07Zt9BrsGGBjkxiZvnt5d7iZ8M5m4ypj/wDyqbz9/wBT/f8A/BXP/ZRm d/K+k/1CPyj+pp/K5f55+15z518keZ/y91G01W01SZ2nLiPVrYyW8qTMDzQurFgXQnfl8Qrm90Pa GLVxIrl/CXCz4JYiHv8A+Qeia/NDH5tufO155k0u+s3gGm3Tzt9XufUjZuQkmlUPHwZdh0NQaHfV 9qTgP3YgIyB57bhv04PO7eyZp3KYZ+afm/zN5Z0KGby5okmtanezC1gVAXSF3UlXkRPjYbdqDxYd 83Q6eGWR45cIG7TmmYjYMC8p/kVrGu6ovmj81b1tV1Njyi0YODBEOoWQp8FB/vuP4fEtXM7P2nGE eDAKHf8Aj7y1QwEm5orzX+Rd9pepP5n/ACuvm0HWlq0mlhqWc46lFBqqV/kYFP8AVyODtMSHBnHF Hv8Ax9/NM8BBuGxZB+VP5j+ZPMs9/ovmbQJ9J13R1Q3s3ErbPzNEoGPJWehIA5KQKhu2Ua7RwxgT hK4yZYcplsRuHo2a1yHh35u+SvN1nNrXnD/lYl/omiIFli0yB7gBSEVFiiC3EacpHGwAG5zd6HPi lw4/DEpd+3z5OJmhIXLi2eW/lJ+UXnn829Svtdl1ue0XTjGo127MtzM9ytDHHG5dXrGg5E8vh+Hx zo4QERQFBwSSeb2z/oXX86P/AC8Gq/8AI2+/7Kskh6L+UP5dedPJv6W/xN5wu/Nf1/6v9U+tvO/1 f0fV9Th68s3956i1pT7OKvRcVdirsVdirsVY/wCf/J9l5x8nar5bvKLFqMDRpKRX05R8UUlP8iRV b6MVfLf/ADiz50vvJX5han+XXmGtsmoztDHE/SLU4Dw4jt++Qca9yEpir7ExVK/MnmbQvLOjXGs6 5eR2Om2q8pZ5TT5KoG7M3RVUVJ6Yq+M/zS/PHzr+bWrnyv5Vt5rPy67fDZoaS3CqaerduDRU/wAi vEd+RplWbNDFEymaiGUIGRoc0Nc/846uugI1vqXPX1BaRGFLVtv7tTTmtP5z18BnOw9pInLRj+77 +vv/AB9rsD2eeHY+pV/Io6rofmDWPK2rwSWlzJEl3FBIKCsbem5UjZuYddxUHjke34xy4YZYGwDW 3n/YuhJjMxL2rOSdq7FXYq7FXYq7FXYq7FUt8w6Bp2v6Pc6VqCc7a5XiSPtIw3V0J6Mp3GZGl1M8 GQTjzH2+TXlxicaLxryB5w1r8nPPM+i63yl8v3rKbrgCVKE0ju4V8R0ZR13HUDO3ywx67CJw59P1 H8ebpgZYZ0X1xZXlpfWkN5ZyrPa3CLLBNGQyOjiqspHUEZzE4mJo8w54N7q2RS7FXYq73xVTuLi3 treS4uJFht4VMk00hCoiKKszMdgAOpwxiSaHNBNPlfzv5j8wfnh+Yll5O8qBhoVtKTFKwIQqvwzX 047IgNEB33p9p6Z13Z2iGGNn6zz/AFOtz5eM+T7B8j+TdG8m+V7Hy7o8fCzso+Jc/blkO8ksh7s7 bn7htTNi0J9irsVdirsVdirsVdirsVfLP/OXf5WXENxb/mXoKNHNCY4tbMNVdWQhbe7BG9RtGx/1 PfFWefl3/wA5I+VdQ/KqTzN5mu0ttV0YLbavarT1Z7gqfSaCPbl9YCkgdFIb9la4q+cvNPm3z/8A nr5uCUNnolo1YLRSxtrOIkgSSdPUmYd+p7cV6Yms1mPTw4pn3DqW3FhlkNB695O8l6J5U00Wemx/ vHAN1duB6szDux8B2XoM4LXdoZNTK5cug7vx3u7w4I4xQT/MFvUJbGzluYbqSFGubfl6ExA5oHFG AbrQjqMsjmkImIPplzDEwBIPUNahew2Nhc3s54wWsTzSt4JGpZj9wxw4zOYiP4iB81nLhBPc8w/J Tzn5v8y3mqHV7oXFlaIhjHpojLJKxIAZQtQFQ9a50XbujwYYRMI8MifsH4DgaLNOZNmwHq+cy7F2 KuxV2KuxV2KuxVjXnzyLpnm/SDZ3P7m7hq9leAVaJyO/ijftL/EDNj2d2jLTTsbxPMfjq4+o04yD zeb/AJZ/mj5g/KrXZPKnmyKSTQS9QFq5t+Z/v7c/txP1ZR8x8VQet1Gmx6vGMmM+r8bF1UJyxS4Z PqrTNT0/VLCDUNOuI7qyuVDwXETBkZT3BGczkxygeGQohzgQRYRWRZOxVSurq2tLaW6upUgtoVLz TSMEREUVLMxoABhjEyNDcoJp8v8A5n/mrr/5n65D5E8hQTTadcy+kxQcZL1lNeTV+xbpTl8VNvia nTOp7O7OGL1S+v7v2uvz5+LYcn0j+SX5N6V+Wvlv6uCl1r96FfV9RUGjMKlYoq7iKOu38x+I+A2z jPR8VdirsVdirsVdirsVdirsVSDz3rvlfQ/KWp6h5oaMaGsDx3kUgDCZJFK+iqEjm0leIXvir81d SfTpdTupdPhkt9MedzawyMJJI4WYmNGeihmCbV74q+q/y8tfLEHlOyPlsV06VefqGnqvJ0czH/fl RQ+HQbUzzrtWeY5z4v1D5V5eTv8ATCAgOFkma5yHYq7FWIfm3qBsfy81mRftSxLbge08ixN/wrHN r2Jj4tVHys/Z+txdZKsZSD/nH3TRb+S5rwj4767kYH/IjVYwP+CDZm+0mQnNGPQR+/8AAauz4+gn zenZzrnuxV2KuxV2KuxV2KuxVjnnbyLovm3Tfqt+np3MYJtL1APUiY+Feqn9pe/zocz9B2jk00rj vHqPx1aM+njkG/N4/ovmf8xfyX1w2rr9b0W4fkbVyxtLgDq8T0Jikp12r4gimdkPA12PiHP7R7/x 7nUETwyovpX8vvzc8m+eLZf0ZdCDUgKzaVcEJcKR1KitJF/ykr70O2aHVaDJhO4uPf8Ajk5ePNGX vTXzl578seTtMOoa9eLboa+hAPimmYfsxRjdj+A7kZVp9LPMaiP1Mp5BEbvmXzJ54/Mb87vMcflj y1ZyQ6SzhksENFCKf96L2YbcV60+yDQAM1Cep0eghgF85d/6nX5cxn7n1H+S35IaB+Wmkkxlb3zD eIo1LVGHyJhgrukQbfxbqewGe0vSsVdirsVdirsVdirsVdirsVQup6np+l6fc6jqNwlrY2kbTXNx KeKJGgqzMfYYq+HfzQ/MTzL+dvnmHSNFR4PLtm7fo+2eoUIKh7y5pX42BoB+yPhG5JajU6mGGBnM 7BnjxmZoPQ4Pyv8AK8fk1vK5i5W8g5yXVAJjcU2nr/MO3am3TOGl2xmOfxfs6V3ft73dDSQ4OH7X kehaz5g/KfzbLpWqK0+jXLB5VQfDJGaqlxDU7MKfEv0HsR0uowYu0MAlA+ocvI9x/HmHXY5ywTo8 n0Fp2o2OpWMN9YzLcWlwoeGZDUEH/Pcds4jNhljkYyFSDuYTEhY5KzTQoaPIqnwJAOCOOR3AKmQH VyzQueKyKx8AQTiccgLIKiQPV5t/zkDctD5FijHS5voYm37BJJP1x5vPZwf4Qf6h+8OH2h/dj3p3 +UNt9X/LnRkoQXjklNRQ/vJnf9TbZjdtyvVT+H3Bs0Y/dBmOalynYq7FXYq7FXYq7FXYq7FUHq+j 6ZrFhLYanbJdWkwo8Tjb2II3Vh2I3GXYNRPFLigaLCeMSFF4R50/JTXdCnOq+VpJby1ib1FjjJF5 ARuCvGhenYr8Xt3zstB25jzenJ6Z/Yf1fF1OfRShvHcJFJ5F/M7zRY3PmTUI7m8eKMFHvZHa6mRe 0SvV2CjcdK/s1OZsu0NNimMVgHy5D39zQMGSQ4qfTP8AziV518hXnlX/AA3p1lBpPmi0XnqUIr6l 6F2+sq7lnfr8SV+A9AFIzYtD6BxV2KuxV2KuxV2KuxV2KuxV2KvjX/nI7847/wA+eYk/L/ye7XGj QTiO4kgNRfXSnswNDBEeh6Egt0CnIZMkYRMpGgExiSaDJvy88h2PlDRRbJxl1G4o9/dAfbcDZVPX gn7P3988/wC0+0Zamd8oDkP0+93um04xx82vOP5meVvKoMV7OZ7+lVsLejy+3PcKg/1j8q4dF2Tm 1G4HDDvP6O9c2qhj25l47r/mfzt+ak6aXovlxrmO3f1I47SF7meOuxLzAURT32UZ1/Z/ZcNNdEkn n3fJ1OfUnJzDFvNXl7z35Lu/8P8AmCG60uQoLhbNpaxMsg+2nps0TVpQkHqKHcZseEXdbtFsbySH Yqu9ST0/T5H068uFTx5UpWnjir2HyZ+T/wCfGr+U9O1/yreSS6VdKzWkEOo+iQI5HRlMcjxoPjjI pXKMmmxT+qMT7wGcckhyJCOudA/5yq0IfvtM1G4VDuscNvqFadqwidj07HMXJ2Tpp84D4bfc2x1W QdUvl/Oj8y9CmEPmHQ0iPQpc209pKT1/aNP+FzCyezunly4o/H9bbHX5Bzop1pv/ADkboslBqWkX FsfG3dJx8/j9HNfl9mZfwTB94r9bkR7RHUMv0r82/wAvtSoserx28ndLoNb0/wBlIFT7mzWZuxdT D+HiHlv9nP7HIhrMcutMst7i3uIlmt5Umib7MkbBlPyIqM1s8coGpAg+bkxkDuFTIJdirsVdirsV dirH/PXm608q+XZ9Umo8391ZwH/dk7A8V+Qpyb2GZ/Z2iOoyiP8AD19zRqMwxxvq+cfL9n+Yf19/ Omi29ytzYytfnU41CgPyLOyhqCTqeSqDt1FM7+WoxYyIGQBOwDoxjlIE0+1/yK/O7S/zJ0IpP6dp 5nsVA1LT1OzrsPrEAO5jYncdVOx/ZJyGt6jirsVdirsVdirsVdirsVfO/wDzlT+dh8vaa/kfQJ6a 7qUf+5S4jPxWtrINoxTpJMD8wm/7SnFWA/k3+W48v6eNZ1OL/c1ep8EbDe3hbfhQ9Hbq3h08a8V2 52n4svCgfRHn5n9Q/HR3Gi03COI8yl/5qfm5LYTt5d8sP6mqM3pXd3GOZiY7elFStZa9T+z0+10v 7I7G4gMmUbdI/pP6mGr1demPzZX+UH/OJcl6I/MP5lNKZJj6sehB2EjV35XkoPKp68FNfFuq51wF OqfT2j6Jo+i2Een6RZQafYxf3dtbRrFGPfigAqe5xVj35mflh5Y/MLy++k61CBKgLWGoIB69tKf2 o2PY0HJejD6CFXwV+Z35WeaPy715tL1qHlbyFmsNRjB9C4jBoGU/st/Mh3X5UJVYdirsVfb3/OHX mKPUfyrfSS9Z9EvpovTrUiK4/wBIRvYM7yD6MVe7YqsmhhniaKaNZYnFHjcBlI8CDtirDde/JX8q Ne5HUvK1g0j15zQRC1lJPcyW/pOT9OKvMfMn/OF/5eXwZ9D1K+0aY/ZRit3AP9g/CT/krirzTVv+ cTvzh8tSPdeVNVh1EDoLS4exuWp4rIVj/wCSpyGTHGYqQBHmmMiNwxq58/fnT5ImW382aVMYgeIO oWzRch0pHcRhUfp1+LNVn7C02TcDhPl+rk5UNbkj1tlGgf8AOQHlS94x6rBNpUx6uR68P/BIOf8A wmaPUezmWO+MiX2H9X2uZj7QifqFPRNK1vR9Wg9fTL2G9iHVoHV6V7NQ7H2OaTPpsmI1OJi5sMkZ cjaNyhm7FXYqlGq+VNC1fULe91S2F69opW2hn+OFCxqzekfhLGg3avTbMzDrsuKBhA8N8yOfz/U0 zwRlKzumyqqqFUAKBQKNgAO2YhJJttp84edta0nyl+Y0Gu+Qr/0NQtH9W4WAfuI5wfiRSDxdJBUO lOPUd6D0PsqWc4R4w36d5Hm6HUiAn6H2P+TH5xaN+ZXlwXcIW11u0ATVdM5VMbnpJHXcxP8Asnt0 PTNk470PFXYq7FXYq7FXYqwf84fzP078uvJtxrU/GXUJawaTZMf765YbVA34IPic+G3UjFXyR+U/ lPUvNnmK589+ZXa65XDzRPKB/pF2Wq0h7cIz0AFK7D7NM5/tztLwo+HA+uXPyH6z+OjnaLT8R4jy DOPzf89t5Y8v+hZScdX1HlHbEdY0A/eS/MVovufbNJ2J2f4+TikPRD7T3fr/AGubrM/BGhzKf/8A OK/5HQWtjb/mF5ltxLqV3+90K2mBPoxHpdMD1kk6x+C/F1O3dukfTGKuxV2KpL5v8neXfN+hz6J5 gs0vLCffi2zxuPsyROPiR17EfqxV8N/nR/zj/wCZfy5umvYeep+VpXpb6mq/FFyPwx3Kj7Ddg32W 7UO2KvKcVeu/84z/AJoQeRvPwi1KX0tC11Vs7+RjRIpA1YJ29kZipJ6KxPbFX3sCCKjcHocVbxV2 KuxV2Kqc9vBcQvBcRrNDIOMkUihlYHsVNQcVeX+cP+cZ/wAovM3OQ6QNIvH/AOPrSmFsQf8AjDRo D/yLrirw/wA0f84fef8AQZ21DyRrKal6dTHEWNhejwVH5GJvmXT5ZGURIURYSCRyYf8A8rL/ADW8 jXo03zjpUslK8Y7+JreVlXasU6rxdf8AKo3zzT6rsHBk3j6D5cvl+qnLx62cee7P/LX5zeSdbKxS XJ0y7bb0byiKT/kygmP5VIPtnO6rsLPi3iOOPlz+X6rc/HrYS57FnSsrKGUhlIqCNwRmmIINFywW 8CWLebfLnmTzCG0+PVV0jRm2n+rK0lzOpG6s7FFjXtRa17nembXRavBp/VwmeTz2A93P5uLmxTnt dRSjR/yO8g6cVea2l1GVTUPdyEiv+pH6aEfMHL83tBqJ/TUfcP12whocY57sS80+XfMH5YeaLfz3 5JdorSKStxbAExxBz8UUigjlbydP8n58Tm97H7WGccE/7wf7L9vf8/dhavS8BsfT9z6x/Kf81NB/ MbyzHq2nEQXsVI9U0xmDSW03genJHpVHpuPAggb1wmbYq7FXYq7FVK6ure0tprq5lWG2gRpZ5nIV ERByZmJ2AAFTir4W89eZtV/PD81xHas8Xlyw5RWXb0bJGHqTsDt6s7U/4Vei1zE12rjp8Rmfh5lt w4jOVB7Zp2n2enWMFjZxiG1tkWKGMdAqig655xmyyyTM5G5F6CEREUOTxPS9Gb81/wA/YNJlLNo1 tMUuKbUsrEky0I6es9QD25jPQ+zNL4OCMevM+8/inQ6nJxzJfdcUUUUSRRIscUahY41AVVVRQAAb AAZntC/FXYq7FXYqo3dnaXtrLaXkKXFrOpjnglUOjowoVZWqCD74q+T/AM7f+cTri0a48wfl7E09 pvJdeX6lpY+5NqTu6/8AFZ+Ifs16BV8xyRyRSNHIpSRCVdGBDBgaEEHoRiqLv9b1nUEjS/v7m7SF VjhWeV5QiIOKqocmgUbADFU/8k/mp588l38N1oOrzwxREcrCR2ktJFH7MkDHgRTaoow7EYq/Qb8v POFv5y8laR5mt4/RXUoBI8NeXpyqxjlQNtULIjCuKsixV2KuxV2KuxVB6rpGlavZSWGq2cF/ZS7S W1zGssbfNHBGKvD/AD5/zh75B1r1Lny1PL5cvmqREtbizY/8YnYOlT/K9B/LirxDWPy7/Pr8pmea GKW90OI8nuLOt5ZcQakvERzhHixVfnmJqdDhzj1xvz6/Ntx5pw5FNvKv/OQWi3fCDzDbNp0/Q3UI aWAmnUqKyJv2+L55zWr9nJDfEeLyPP58vudhi7QB2kKepWGo6fqNst1YXMd1bP8AZmhcOp+lSc57 LhnjPDMGJ83YRmJCwbROVMlk0MU8LwzIJIZVKSRsKqysKEEHqCMlCZiQRsQggEUXiepWHmf8m/OM PnDyiS+jSH07i3erxhHYFrafuY2oOD9QadwCe77J7UGojwy2yD7fN0mq0xxmx9L7C/Lr8wvL/n3y zBr+iyExSfBc2z/3tvOAC8Ug8RXY9CNxm5cRk+KuxV2Kvm7/AJzA/NOTTNHg8haVKRf6ugn1ZkJ5 JacqJDt3mdTyH8op0bFUg/KjyOvlfy2n1iMDVr8LNfsaVXb4Ia/8Vg7/AOVXOB7Z1/j5aH0R5fpL vNJg4I2eZZRr1/8Ao/Q9Rv8A/lktZp/+RUZf+Ga7SwE8sInkZAfa35ZVEnyYp/zg/o0Ump+atccV mghtbKJu/Gd3ll/GBM9PecfWeKuxV2KuxV2KuxV2KvOfPf5Aflj521UatrGmtHqRFJ7m0kMDTdKG Xjs7CmzUr+GKsb/6FD/Jv/lmvv8ApLb+mKu/6FD/ACb/AOWa+/6S2/pir0/yZ5Q0byf5as/LmirI mmWPqfV1lcyOPWleZ6sevxyHFU7xV2KuxV2KuxV2KuxV2KvMfzC/5x1/LLzr6lzcaf8AovVn3/Se ncYJGbrWSOhikr3LLy9xir5080f846/nH+XVzJqnlK6k1nT1NTLpwYXHFenrWR58/kvMZTmwQyx4 ZgSDKEzE2DSH8r/85ABZRZea7IwSoeD3lup+FgaH1YT8Qp34/wDA5zes9nBzwn4H9B/X83Y4u0Ok w9b0nWdK1e0W80y7iu7ZukkTBgD4Hup9jvnM59PkxS4ZgxLsYZIyFg2q31jaX9pNZ3kKz2s6lJoX FVZT2ORxZZY5CUTUgmURIUeTxy2svzN/KLzbcaj5Eil1DS9RRkNuIZLqMqDVUnij35Rk/A+3z3YZ 3Wg7YxZYXOQhMc7NfK/wHS59JKMthYZVB/zlL+eWlMZNc8owTWiEmRzaXlsaClaS83jp/sTmxx6r FM1GUZe4guPLHIcwQ9C8jf8AOYH5ea7NFaa9bzeW7uUhRLMwns+RNADOgVl+bxhR3OXsHulvcW9z BHcW0qTW8yh4Zo2Do6MKqysKggjoRir849U/MZtX/M6688azZnUTNdNcxWTSekFVPhtk5cZPhhVV FKb0yjU4pZMZjE8JPVnjkIyBItnP/Qyn/fuf9Pv/AF4zm/8AQx/tn+x/487D+Uv6P2/sQWuf85A/ pXRNQ0z9A+j9etprb1vrfLh60ZTlx9Fa05VpXLcHs74eSM+O+Eg/T3f5zGev4okcPPz/AGPU/wDn B7UUbTvNmmkgPFNaXCjuRIsqH7vTH350zrn1DirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsV dirsVdirsVdirBPzB/JP8uvPivJremKmpFaJqtofQul2oKuopJTsJFYYq+afOP8AzjN+afkK7fWP JF7LrNjGeX+iVjvVUb0ktqlZh/qcq/yjK8uKGSPDIAjzZRkYmwl/lf8AP1opf0f5vsmgnjb05LyB CCrA0PqwH4lI78f+BzmtZ7OA74T8D+g/r+bsMPaHSfzet6TrOlavZreaZdR3ds3SSJgwB8D3B9jv nMZ9PkxS4ZgxLsoZIyFg2jMpZsJ87flR5Z8zxSTLCthqxBKX0Kgcm/4uQUEg9/te+bjQds5cBAke KHcf0H8BxM+kjPlsWPfkJ+aPmL8t/PS+QfNEjHQbycWyo7FktbiZh6U8LH/dMpYcxsN+WxBr3OHN HLATibiXSzgYmjzfWP8AyrzyB/1LOlf9INt/zRlrF3/KvPIH/Us6V/0g23/NGKu/5V55A/6lnSv+ kG2/5oxVHaV5Z8uaRJJJpOlWenySgLK9rbxQMyg1AYxqtRiqZYq7FXYq7FXYq7FXYq7FXYq7FXYq 7FXYq7FXYq7FXYq7FXYq7FXYq7FXYqwT8xvyU/L/AM/xFtbsBHqQXjFq1pSG6XsKuARIB2EisB2x V856t/ziZ+bHl/VpT5M1qO4sZhtcpcPYT0B2SVFJBp4hj8hleTFCYqQEh5i2UZGPI0of9C+f85Nf 9XeT/uLS/wDNWUfkNP8A6nD/AEo/Uz8ef84/N3/Qvn/OTX/V3k/7i0v/ADVj+Q0/+pw/0o/Uvjz/ AJx+aX3n/OK/576ldpcalLBdTgKguLi/MzqoNQAzVagqTTMjHijAVECI8tmEpEmybf/Z + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eJzdffle8sqy6H0B3gFUFGQwEyEBB2YHUEFwwJlJRJlkWGuv88d59lvVSUgICWmQ75x1716/7aed +Tnd1dXXN1fF6iuVQsjmot0J8mHG7vN70qFWbDEYxN2l1n3e70/FkhE2+G7+bZcMMdEqeS29qx7vW +aNwZ9GPkEXmYw7d951e565vTrN/t80NbpTPptqB1Mug1apPw+K+2X5sLXs7UJvAwciAfMKKbZWJ8 +1J28hOepwbTf7PTbqcF/YPyo6OYZzi3AU0GKwuOzzk1rbO4TjrK8jB3DnAy/CLwYluBNQYInDL6V +GTSmvVZ/UhwNGq3xOD3oDkbjmDv9T63vvqy14UnNXW11u4O/3alurfHtgtVG3nKdbgsW1qtN3FFc +ZfKcfyOv3o7hHXgdf8fm6Nt5D1rKrckEoIKBESXpy2reOB9Aqv7ne7pptTsEw4CIF78ycqXVG3YB +KWRRPCCFl0XtX7UHwEOehqJsmJdlGfAmhiMy9BMlPiwwjAC/RMgj5Q193a2/Oq2/Y+6rQb+lLC45 +mpQ7/9XCqRg3xzBK68202xrd9jsTWASHTbKy4stBs9VVm8i7uW6NLJT8x+o/lQ6V2qjdmsBODbrT +CaEUSZvhator1P5pjfQJroetfmVwR+ALiUJYFMWIWxQY5Rc2HHFLouyOMoA6ScEgC8tUp2TJtKwy +No6E42gTRHHvi7Az16NOu9OPsYLoDnHYint2Ouo09S2Lcm5J+UHWEZYM/5e1/ysAw9onk1Zf2eZs +v5ke9BDJY6Re2Ng+7Hp30FaezX4nT2C66VCBlfz9BvtRHHX6CIPrijyR3ordKTw6HQ2mw/P+x8Dl +U05lEScd9a/78MunOzWajj/dlcGgC6dtroP6SBkFH44mxt5L54C+9uPrA601drrW7Xbao9rws9Ow +Gt7i+Wweu3eXTgjbNGrpY5A/Z/8ufbPcIKi0gnL+0WxwizeWz/BPrz7odsY9fWBDi/67E0XARnVb +/eZ4Nozypw5YofOX1rh8sEzrA1idYWtJa7b/V6s7GBrQOGup9Zvu+9poaDcsQvfR6TcBK+VpZ9LS +N3rQGyIDd5c/a0NsXuipnBA4PcbzEQotPzgrvyArT5ARTv7ptsaug3x/8Hef/OGOuXxPgJLatDt5 +8bsPrmq9ljvoOih3gEm3tC6M+9rFqDzwG367cWn8MO/SuCLjfvgH/riAX76g6W+34L50P70w7ia0 +Pty4kIE9NF0HxRoA54673AcwLfxLAIQV6eA5rrFY6wI7axEginWXnbhBkMauhdZiY/bGt+XTYmoG +gjbTKvgtwHBGpC6skHRYZyNZRnmkHBsc5v+ozTCQqdFmcBVWTV6CclJzed8OtL9hr/GvTgOxURv9 +o/z9cFm4ArlI/vBtN9W+QC3lCQzedvv+0+v2oUMIf/SBgvxAQt436+d/1bpTtYPsPjiHOeceT/4Z +qk8PkqNRzQqCXmtSawLgvweAXQ+Av2qjTq3eRT1o/G8A4n8dhv9JLMT1Po3PTrc5avXVPiayNXQE +mTXq1KcTBDRIHgUX1xIb15Dn4ZH4H95Y6iXNQ4zvOIPp2+2P3xpg5wx6cZvOBpi5/9lt0NawuB3k +QewvuuUBHY7/rYvDNQRpyHFNKoC1A7leEYQ44areIeYk++9DlXEVi8TQHTS+W03n9fXB6vv3rU2D +/k9SwQq84N98WCiRNL/28cff/2sScNztNP6/EH9kIeXBdNRoEa/Tv3JN8yD/4wjizFN2cNOqdf81 +pP6PpcBzXM3MAfjvWs1/rFbzd6c5+XRcEScyYVbk2H/ZilTgF1f12eq0P53VbVYSwgLL/9uWpUG/ +uK76YALqYaH1MVEciM4rdB+kBoN/z9IWF/AvEbYgm/4fl7WbEzgbAt7ggMAWRsVd8pxl3TM/BnFA +uwu1fntaa7fcxcFwOjSRLnmhOGqNW6O/Wu5K6z8Td7bZmdTqnW5norJoMRLhI7MJZHdtNKkPaqOm +u4HBAjfrHmmKnWPP9qilrdexb31GGRFO4CT7rpwOgGNPAwCOfesLQnyx2zzp4vPJqNYfD2uwr41/ +YLpO0z3u/Fdrtk0a2mX3sDZsjeBhb9olfjdNWjMax8RO19PJcDpx39TGk9ao81+ko1sPtajgRebe +uWyNPx3eYOb2X6Mldwd61SYtWHmL2EhLO3/3QaUfAHBtdAOrx/3pstXsTHuGCV8MJ9+KPNX4CqCC +kOHEbbB/TEdCIxfAvIr4qIb55rATNkFb63bGpqZebfytolnUMDasNXWzJHnuTk4ngxn2tP1nDAeM +cX/MQB6RfqG/Wo0JkEy91q31G4t7PfcKYKzb6bfcEzhrdD3Hk9HgWzv7rE3nRrczBJJE581/4Dy0 +AW0Obwy1Uz/4qzUaooN0xl4ANY3BqNlqLm6D++BqMJl7vCrvcRhOp5YDne8djJqjcVhx4JgV74Vu +tX5/MJmtXdnlhU4aHsbjeQ662HHabzh0AXkHJ6ZJdQSML/9nGNYlpdXo0GEwbE4dOoydRmgM5tmY +qQOSzvIOgz6QyEShw6VzqT112iasyaonMOJ5lsQzNj1H5p7RiHXHueNnufNDZd+X7zp0AjY038/A +lc1dP2vN1qi1fLwuiyezNlnaCXA3Ia6bpX16eGzHRkZu1a/fagPj/2v5YPUOnsF5CWYGvPVXq2s/ +yEd/Eh5P6+MlC8Muze5w9DGY8RcrKlO69UDbUbUDS3S3e9/hXm30PR58fIQVdZe6+0jX+yl6TwZD +6r5d0LhnCLDpDPyh1TRDTdHdADVF7xnUFH3noF7ce+xLNJx6bbSMuLHfyBA9dOg6BGHQ6X8MnGYe +GVZi3YUsRO0T5iK2C262PlCKGsxZa2ZMOn8N6hNMZHLsqIiij0532RHDjmMMdjr0mZMfVr0ao2Z4 +Ahq5ppFZnSDsM240+ssOo9Jn2G38Y9BrFvGmdKt1W+G/KPt9LiE77DUYtbWxlvZRx7Fi8NhlOBh3 +lhMZ9oL9Hn4ORv+lcraoXb/BqIO5YA4DdkfhmYJUx3Sx5X01WTkcTJYcG+ypMztrOgNadFAPsEe9 +M+nVhmYRadebrKI2Vl6i6DpYTuGzfnXVW7qsY7M17rT7TugeDkdhYkItoxbs9AlMbNxaxhtJt7/p +uhndQksGc2Qi0Enfs2iUDwuWjAm6dTCJcE4cROSIU3eDOGClsLVsmnWeSQNWdOqqC4OozNl1NeJI +ZG27GZBkxaewS1NJC1nCFqGTs7Y/nnTVXsNh035G7KbOOOtnPyB0wZPZtfLxL/RF2m+N5lyCS6dX ++muGgiHlyGoGEL/dFjGVdJM4PnPZYAJRUuvsRpuKyryyO504WW3icNZHoA6Oxi0cbWS/YOw5/u4M +gVv2v504HCoEcNzbluu7GNQxvcywOt0TA52yxbL72mS8zvlP1D4FtKIxexGz2IiPa6kHRX3rdFRr +ooAgbyk+FTtDZPaO4jc4uFP8ASk7f4AKumrfV3RrybZP2c4HoHRLo/WfVq3/G6P1T+ORwRGWuGFY +o9eqP9D9Be5On7gcUCpbuWwWqc/3ZEg3d69B/1Z2Cq6hmMm9pYmN1TG6Lq3IU+uueT0NEKHrE8BI +14aKA7TTWmKyaOOcItbg6FQ+p716v9bpLpGD2juYtwz/5pZKV61zDojqvlXHd5yhIQncmcHffSWR +J9/pNw0kTvuamdI5zkols3mZpMcn64O/dFtu+atp3arV4V2+0/NvlaY1fc+5iOOEmFtf1r17yzZ3 +VPtndWzOv7UaMuffXQWX+ObKqDS9tAIm8U16RF4O+oPG52jQa1mh09r5s+xdM1KFpRuCI9gjVaCa +2xK1y4+i8gJIHudDXhl1epfoUXDuCvydsich9tRSA37GDQEl50sNc51vEiUGQajMwnN2Jrh5efct +BzeM9sI1UdtzgHhA39+D0XdhpqKu9l7KyU1k++bNuqBWlrphtNdS6MAoLPcdzfW9cTBR5jqvAIMR +Q8voWQG4019iAWtds716q3meThdHxILUpOjSU16e1hGNg/7kBo1EZ3hmqh+FCFW0m4ohNkelHi0Z +C54rmtKVIdNmKbLNL17W/rNED6UaodO31Ulp3lf01JTJb079OmqdqtKp6JyrD6Hqt2WH0ILD6xVj +LM1R4Us2RoN6baLUjc3MDuihrmqmdppNDtkc3hrW+pp7XJOx5btTJGGFmCcLHjv1cWHQqC3OAA/J +wVGsCJWm9GcAXqOju/4NM2b7jYEerxX0B6TUQufSM00eHpHyHKRdOBANi+daheLik2L7Y7HxoWZO +LcDpu53GDKz4ojmgF77M12Lgjik1Griz2jMX2UljC5oYyXL6/FyKZGDcJlbteAPHYmgnMfY/bGXy +F42PnL/EJRM/qVefcHL9fhy955lmvBXz9smf8fPx4CP3Xpju5TyBJ8bUFji5qx8wXHcSSd5UcpVE +bPgii49i79HlPQy95wZkMJgvPk6Wp7e+ZL/eHqvvHP/0kvn77PZodFzrn3bvvuqp98tSMhnssy/x +E/ZOymw3p9lM+uz5hQwVOD4aeoUxv1MKnHxOeAKIy0sBygqAHNWTweHVRSIvj4+ls8P7cG7wKNy5 +vNnR8yOTecxVK7mj5FHDCp7jof9wCBOchdLcztF7JjxN3Cajz29VsTpki7nd0kNXna+R3M18DP1s +snIxmeptLq/Smn/wT2Cci2kmfP15OBoJmQ7DiVvDxN1eeUfpzjLFWs4/2a1lgy9XBykxyG2p47wP +EqNRfFwBeIPnDBv6iunIiqdu0i2XdyzlJnfc6+B7Vyy19gMRT9p/LRyWYpXA0Y34OXphxodhviBz +geNTz64w5saXAM2dFD4YS6eC9BP/gj/9fqa5W83MT/o8erl8LpFJgcbmp4V3o6+R2Plr2HLS152r +gu2kYid/6rWa1OUdjQ49vtGY9Y6s1jqWiuyzsMXF9q0mHe8FL0M2k0Y+fbW9apZM6vIurFXwPwcO +uXbJctKt3KuwfTvsFqwmZXKpfMJqUpcXphW3d/oj/5E1goXqK5P7uCpbT3rqOdxlL94qlpOennEV +Mime/UUEc4/HlXcyKbufrGfnd/V+9Dw9LuCk8cU99VX5py7rh0lDQX1SmEUhpQKTUtda3NszTRqJ +9N6GdpO+jV4++xWbSRM1MZrbYV1e07QqKZ2839hNerbD++LP1pMeel7G25+tG9OkwGGUaUtp//HP +Tq9gNWkg3o0d20wa+dw/eUxcW08qVKtMTmaugMas1rqVa0d3bnrctdWkTO7lJWczqbjt/e5fpk2T +wizatDXmNPh+Zz3pKZPca/miVUv0TraDJ+qk1ZDPhN6TK+Ho2aWcVTb7/J2bW+vjIVOIhlic9HBh +0rPWQLyphTiYlAmZV1p4eqyZJiWzqGuNfjdzr3aTZpjL/RfZetLzn1jia3R1YzlpOb7Hw6m0Xqu4 +nW+VecZm0qcQU37zb1lPmj9rXT09+n36pC6vYdq7vX7bdtLyZ+m9bjfpKXOXHx5aTw== + + + WuC9Lu9tLnF4ZLnWu+HFlu2kd2+nWxO7Sa+Z+5N8Rp8U1mKY9vI4+/ZaenmxnPTl+vvcdtKvaqSZ +s5n0Gbgl8zLuhqzXevU17F3LEm856dt5qG876chbDnj0SVGKGc/qLZPt9C4sJ5WuQluexEsoC5Py +YfOhmb5F39RJ67zfdGhcXv9jobZPpuX2jn1n82stMO/7sSROemyaFIb9+tGYvnhgnnQ82D1SJ52c +BGBf5tfqea49+ZVJU1X2fJ4VBkfj22MPTppY5EnnIW2lh6xpUsBY/GxLVKY9YfMhEysMDoUrRdLw +O7F0fn7SndGoVu/jpCnzSkfJ1kCj3hTQmFmUR75iqqQ5iZXCJgRvDVrvFUWmtmpv4jxIZ7e7r4OY +1VMikSNn1RLbu7N7+5M5e/dObZ8C683s2jyFHdgNpL0qt2RaX62o6bkosW8a3ONvyfy0/7n1YPs0 +WjyPPetPF3Zf4vZv3m3flj5rr3u2T5Pc7mPD6qmqwxQC/RPO9u1C/fojbvv0eqtRP7N5Kp3tnh3e +jjWMfez9yKa3bwMdTT39YLdi5qf1i3Lf9uldJvA90p8uYOzeWz/w2L59/5yJHdk+ffe+RnesnqoY ++5oUh2e2b3/fcamS7dPed+741e4poKoUj8wwtvj8ghOOH2yfNvr1csHu6a5n9/x53x5ju9nkZb1l ++/YFd7LF2j1Nergdf8wWY5EzJnu0r6065oubznSgUhqfqE/T4UPT08r76X7S+FQI3iBDKSnGXDq0 +nwbdcjJ8fUm3Pyvo1EseHctnO0hZ9z7VWj5pxGzMvvFD4u7jtpysVLz3hEUlK5dNIVsbPXkDqcH4 +Sm8Du7I2etwjfC7GSp4rwsw8+/k46wlmbu49wbvXsif41qx4fE/+Kf5WBBL8TntC+bfIolFYbSdL +fFkCqNMBsE4H3+JOVP5AS3yf82h25YuUe5s81xLxIbuVuQhsR7Sl7faSg8wrkOm2vMXtHRWPM639 +rJecOzRnnjQsWvdzKT3R2pKX9yT9jmPpp6pjPzDD6js333o/l9e257730DNwHFHcpl0L2GLRG/8L +xYg7fT7+RtHPe925rFGsRdxGod6gGHHvvB5ua/22e7n0x4V0cHnRisKf+9vJ6GOXV2xkPwjHj0OF +Tpgx101Wkv0ccxER9hWyQfcHWMsRThe84lZVuMw+Nn4+DjpHdb/4KBbOVLs5ujuaCeB0cvBz60cO +s7glft/JU3c5eGhLv9AAt5WrhY1eBVvwmFz+sGgCz3I3hKvMuxVwhFvq4FXfqMA73RFpgDstbT8a +dH478KSzOWKxxV31ZjlwQGPK1l7l72jAy2ZvczPcZZLl4PcODFCqHnS2Y8G5CQKHZhqLGUBh9yKv +mY9KhkeQBVzaob5SNnjLhvRJR1M+zVBMCjr//LREO15z0kBsMMnipEOCFoabJj7Tn8Kbui+gah4P +M9lGsSJqbsX2NNuoth6UNo2P5zPnzSPQlHLTbjReui6ib5GbPb3B38AI/5bPAergdy59EiuTbTdY +FuPA8XF2D6At7yOMYbLq46GvOVZdNfMORmWlbW83ebt9hFoBs5Usdz2jXFa6OVAHvWr8BI6LuwOY +BYWZOPGxp+qLO82MojYDZKmDz1bGq/wAOriHwYqiam3BfLMtIcvIoJMhN7+MjMGrQJbhNfzAmWPv +P8WYQbTOgfezEnDkVC4Fr86fWYFnAdy+LXC4FhW8MQ14hEIJVaojXkh2y53q42m7b7tg+HGjLFfx +3VgsF4yrwvLlulbZjb2tNUlF5ckLu3Fa7CERt/EgbStcR7wgauyddCyf3hbBctr1kh/c3glzjoCc +z4YqaZyvKELnpwzsCxhId5T7S0F8A3Y/9ZVjWDnyleATj6jB7fpmvosK04Rd9Xq1H8K+eiCJy2Au +AhF7H43rsE3xEC0CXXSn7fT55zcI1LVxFYWoJz/++oDoCORSj/IF+i3nULgSAi042o0VR5udympw +aMYyM3xNr8fRsgjNqY4RVSJb4+Q0v4sz31jufvb5emLaq8jwQC6a9oqwd5fXlsHPjXjnoRhR/VF7 +yCCCzmx3/zXL78Tzhbm92t6z3KtWMbyr7osFxk5ipcvNYCwToNzJXZfKD615w2sWHQX3Jvm6Okgu +LwIVpgXKASSwWatWIFnISic8MU4gDQJHugpBWIFyXi6WgJcOPy3F2K6uihhPL3FeamC6vBbnt7xE +I6lzCyLf+fSSfbE8vzkrxcpi43Xd6omMqAbW5sZzeZURT3zZPBUpGYTMpWzNI2G5CmOenTqiw5jO +nU+yVv3mUG2giNrWJbcci3he5mhCXzq8PTmdLX2ojy1VdvcuTyvPX02GTT23M+Gb26Ae7iczw1C3 +I50nqbLSSiYtV2PnRnwYL5dxLu8cITrrWd/SZHW9zeVdOuJ0M5rgTIp9yx6qEY/q+/o5sKJa7HyK +3v0LM082SXYa82JuXz63N70v8s6m90Wmsm5W2RdppMhSJ5UGjVCCVFXtOrXhtM1TXWt1eZeqXTRM +St3u07uB7eYAT17nGN4tCJmlqHR5nY/hiK3t7J39BpUmHQaQSafBroLK+hilmKOWvbJhfmsSgzN7 +n2BnckxlXNKpsWe6GutAY7pqb6lscKmHT7PSaYUMl8HosN79yQmVNbn0aJowdkLFPuiM5zPdeP4t +xqpbu5vB2PGYjvXMrKlFDV3RYYAcTsv9lSxHW5BWtpGtzQYEqTpcCSQlwmsNFBVfoQDpbUR19uct +bDulun1moVQv8Y/NLOxyfD70dKMNe+hLRl89Ye5lXE+lP6Nnw0w+/5PSgjVk0q9zprlXyxJkuLz0 +RjjJFrIg55dx34EBuLwWODmzwcnX+Yp7pQHnMqd5auBNHNSSleSey8u9TLzUJGBlZpuWu2hk0/iU +bHdjEtijBc5FsxuYg3C7qgfIaN3M8eQTX2ZixSDWJ75PbhZ7XUUu2nD58+UuNKOmREvOq7vQiAZr +YyAiAokT7TcIJAxu5k9WtY97eyP8hL1YMGcoXWiWnt4LkxNtTe8LvxPz7ZC9Aj7m7ESjON0wYtgs +m/XxFnbf8XT3LlZ3odlgbN6JtjbG5B9m8bys46/qXVC40Fy0QPG/caGpUR4FKDsn2sp4iphAAilG +QfNzvpI5igezgcI561qmOqgpJ9eGIOJJrDixCyLmkc6zlB5FZ/89UOD2SttkoOR52hnmTT4um2NB +ZTKTUwkjvkxTeZqDhj+WSxX+5DbmM+0V6JbWrnT/LuECdhjzbwpjFnJ4HcI+ufXyixHedRgAgPSx +9/NgC9JcJNERKPNpowXJZO8jUAvi1tYba61Pz+2fxypiZUtZ1j5vC1MfyWc7btLQdT72ULY9uusE +3k6LPTb7Mj416fxrBHPSALdg1o+s+RitzEXCPqDWLubtdEtZiTAe0YTWHE4voo0/uatc0u2+E9r8 +PmcPPM25I7Sx4M2jXd+8hwRWuPwQ0x5h3ES/brj9msb8C4FxC4pw0UpfMiJtlM48noHGLGIfrz9L +Ylen5T6toHN5KUQd7n7lN+GmmY08B+MqLNPrwDJxPDgvjrFCpxEtnBqob/p1Xcflndd20sARYpTH +giJ95OGWGCmEJ//2bIy/HRjcjJJpIyPAAFZXeHAtNioPwugQIaTkTrd4XjZhqyBIgUX/prpIrLBb +gaVgrk1w9fXNPIomwlj0TK4lX+4GxFzZEI0FFnmN0S9AMiHnA8eOfBPR5hjlmQsbu+hNF8SibeAY +xZL9hilnf6WIRxoenI9W2jU7fzLAvWn75eFuo1kEAKHJ8WCVRUB3crLPz2YHqi3aXN5l5A7bvREj +BuULUMeiH3HN9Vkn8Gj1lSvwvjsr7+HaNLZW7p21WCYV3DiiTbThN7EGZGEBIpZdXqtMZmAuBUqc +0IhlktO7Ce8hws3ScRh6sfz8s5JYdjl4IhBG4ddiWeEw9xsSywBSyEos28Qslh++2tblatlzth4S +WN+mxPLzD3KYTfgRCbJsxbKuw6wqlq3yuezEMkpkLcePTiy/jZaI5ZiPnlvSiGUA7snJWG9Nbg8s +rSS7wOrDg0Vm/9JsRf1sl+O2PPlttHG5/7BZuf82WkHu2/mr5rdb3KgljnlDNLa9YTw7Xx9usrMj +ZEY7NA4/Jb7vfPZpMl2tvH5c6qGaJF4/l3cxMv9Q3azXD/OUdL+fDcGumEqKKoSZ9VhERqhSSY1k +kXr43lq+k2pkhNqtCIDSOpUNbkXAmE1oGGGcmAP/zoqMJYtSzn6VXiLTkG59bFKvl2baL0tRQtwd +OKrXKuXMPL3OZz/18OboZFhMTCdYnJf7qtjSdYpUrPMafEiWgw+D5E2/nk+FpMH1Ap5md2iZb8vi +xm1PqF96c3mxejrrCSX5V0/oQs6qhdMXctUT/Pyq4I8wtuWw1DpN6q3xBonDZPm795Ft3J80cC1Z +rMisZmrl40LOPzpD9+rOXi7zHdrCKmpB1ZSUAuviWaWYDYz5XV3Sikdf9fNsPZRYLLa9OrnR92pJ +v+IBM1f3at+zFCtS9BtN38Mhq34u72LPGEsz81bu1XLExX7NA7q1bOW+KGce8lRrwQuyIlQjnoZk +Qz+7StnROBYYG+4hsS/kFR4+C7P7CewKeQ+3fLaFvBizMGwJG6YAL3AY7904Aidub/+I02c98m5f +Z/xEV6PdcyggV28GY3KDSoUCvN1C67PpXATdMgEH1qtlfftV6YECd0z26umUYmNd3rnCf3vwSmsX +Ru8fHRhojLoeG6ux4ytN6vIa1o/3Da0zqeAvKpOqroXCQyKW89ZUGJRYktgflhOHnckDjn2bDew3 +w8lr9uQe2qZbJhVrSTgmNx052vu6OWCvwVsZTcXdnl0aRkbX6hwyh/cpyygX6hnnbT9DJNEYMLWv +Gl1wp9AAZ2clFXcXsOxcqGILHHKYhYKt3yTwZywMroy5sn4Fk6u4R12XQ1fDu6gTrkYq8xHe4u6A +LkccmB5dyXJghXxLGuKjrUyZVwjtq74tAtoOCCT5lsuqvqkSkp0QiLOoKFyIBv7igJgSy5ZU2C1B +oBVHqwb7dhwtq9wISmGp0nG0atCSMa/ugX/Nru6gUSq57OLtMOJGEsu03c8+Vx3sXCofZTVkmYq3 +DsZWj8lYZ9pjIIXWs+NYCQ1HeANRUQSJMvJOA5RTloS9V8geY/YRiOX2sNXpVXZfO791bmB3fnO/ +Ob0WOSR1jio9nDqMUue3qHMUKUq3csSvZ3Xq1PtgLTyFzj7mWo62It5lsXTHCh7QtxM2FTzNU72C +Z3nNCH3NqWNRhjqUGk2gKpSkUist9TbLvL5Tytt6qEs5qXXL+XNgX1tsWcA4x5NpzIu5fVmUPr/e +F+dLgFbdFzqVdaV9obsJaJVqZXPYCj0kv7mcCauVnSuZXKsdQ0rl1YzK2W3zVoeG7k4gClSqOgwi +0zH6uCoq9Zqm5TWJKxvmk+MfKzGo172aBeH6hvnk2CwG7Whsptpb00H7bCWTY3anyg== + + + wu6fUTK4oKJdvHOv77ZHU8OYhfm8tvE8OTGL+bUxRjK1N4IxOtaj62N2xDDGU7kop5dYjvYgrWwj +2wK1GBCkAsngUZwBRcVXKEDSbbblZ3/ewrYJUGKQaSFlxto/ZrKwna65GX7YX3PzMm6bkxhcXmcj +fEkRNOU2uSjLZH/MVudKwJki71/ny1NNV1U/YTxUc2jvhXOq3+JeJj77GxbsfUpLarRXYS5OudZY +tLyOB8jCulF48vlyBrH6ck1aiOXtQBZycUnJMoU8cy0e8SUIdDjitgi01GDPraozV0TgnO7h8qrV +mezF2M4Iv/i1C22+sp7NL5gf69X1Utw/ttLphhGdXWgu+urMnRhrvuJgreonwJhDSRZ9JTR93oVT +2TF1FcbyGw6xEnoThV0uLwL1+xxUFSQbF9oKt50Y9+9iungVwpJct1m2rVOe1oN9EBFLQilreaj8 +9/k1k5mNGRFaES1Lk51EfRXCyW10b+Gum5XuEzVV5tpehbBaLU9+zTxmK4x5Hd2vlJXQs6sQDBHe +Ncuzac6ai648+5cpzKq9j0DRJIFSpoDmrSNWK2bSWSYuF3u2GjreBV17o6rGpzu4WFMaNitda90S +gHCvFLYy1FjZlomWf51XvFApvJHbgBFtiSnt7juhjTZ25aIqX/5tPZGijZNiY+p7ih0rvReM7LVp +bKWbEVzOhb44In2Zr6U0V2ZZLPT9avlsv4zANHePaOr4dEE3k/u2NxB8tRwvTHYMNyla3wxGjr7e +XB/Rtn4dxjugvrfHdkSr+vWRla4zu90US1QXfFhWx4IqfQTFpCFErHGY9eqMaS9ypo6MYLVrYbqm +wmNTKbwYa1mzuJffzK1NpHh5wb9pnWlPU77sfAWU7fpUzq+XLzuWKlBXeoc3R2M2gWNT2NgQ5XHO +08eqb6c6TMtUApRijiUmoK8cH9sEjkmBqpPPwbVCxOO0Olxz18z+5PRK30Ogqv/Y++E2mUWQts3d +mcsioDo51eGiR3Gte+HSK30UwbF4+W5Aa/E5rW9Td0Mpld4L3sO1acz5ywj0lgwZj13re0mOYnkS +WHYXNGiFmxTLYCjSaxfLqeieQizPqjgpxXJt640yZ84olpdVCm9GLAPaIpu5S40ULy8Ry6abJ53K +l9cUywseElK+vCGxXNu63NDNkwRZTmIZ7f3VKj8BbSuLZWqPYnFZPhcpZF0ill1GK4pKLL+NVq/7 +tF7LfC3watmKVnWfCzwZetZpvlpEL/djPmGjch8g/N6hlfsUt35jzfcKdZ8UlvjbiD6J16buU/X1 +kfp+2spP6rrPvaM71vnsr5DpOuf1q49NXr85ywJLWTfo9eNSD82p453DK6aSYuG3zXUFhsiI/YUF +NmRRH9O6Falvn6tu+va5+pjarUhzXUE6HF3h7NOVLK9834X9Jq96XQHF2Qfq/+11BarcV8SWzhuO +xRKfvBkkaqluNN87DDCZV4tjMftQ9eInqX03O1GsmC5jxXTB5fWEpNCb5Yeq9ytJcc0PVZs+U+3y +/pEPVZs+U004/+Y/VG3q5/L+kQ9Vmz5TvXwta3+o2nYtG/1Qtekz1XgTxR/4ULXVl743/6FqE3Au +7x/5UHVg/jPVsJY/8aFqE3DEB7v5D1WbPlOt1b5t+EPVps9UY5baH/hQtWlS/Dr2H/hQNcJg+Ez1 +zKuw2Q9Vz0sfowd+kx+qXjVz2KGM0uZD1RaRRINm88sPVdsBZ7aSaD9UTVtAPqar4V3vQ9Wm8Rbv +6nQ0uWg+VL1SDS/dh6qdSUVZC/WHqqlLluc/U22fb0lLfJYfqnbOt/zth6otEGj7pe8Vk8eXIxDv +7KK6LJP2gAysvrFjVWFHjcAF14nTLQEOZu+y8uwNR3lsyrMp/HYLX5Te4P15enE27dcZnDJLlxdn +r+KDtSnPXgdjm7ky11Sc/ZuoqFqevYGsG4rybAqQyL78rjybojjbDmNrOq1sirO1L0pv8nKFxeJs +my8ZrVKeTZ2j+KvybAqPmm2Uh748m6I4Wz+Va5dnU3A527XQl2dTf7X8V+XZFptoLs6212FWGNGx +dtFKiq1Ynm2gWrvi7CX7QluevcK+/KI82xKL87GGjeyLo/a74l2dVuXZv/8CO015NoWyoX+Vae3y +bIribGM04beV7vbF2evdaj5Xnk2BSrv85BXKsymKs1eOii6WZ1OUGlvl9a1Ynk1RnO1wLxxNeTZF +cfZ81s1a5dlrY2zFCkrH4myn80JRdkwhpV2UQK1YfWkCaZZtu3559iJIFnnjvy7Ppqys/2V5tnNx +tjHXGtfaMicOUq/U6uad2bezre7oNn49m75Wfdm3s6m+J05dNm7HmEw1VrTgrfjtbKdM+818O1uX +yNZfz157N+a+nU19k96vvp1tpcEuq6OmUmkWlmv7bfRPuotcHAvRSRU1sffX8Out9u1sy7s6qRFI +p8jQ36vwuVAZR319CahDBj9//s9VjNvc1LrhinEKL9wGKsYXa0X/RMW4PcY2WTG+gRsOKSrGaW84 +/F3FuDHn6s9VjNN80eD3FeMuh4SjzVSML2YQ/YmK8VmFnWWx8aYqxvVK4SjlQVunYnzdb9itVjG+ +HGObqhjH/OT1a6doK8bNsdc/UzFuWVm/8Ypx+rsIflMxPl+V9qcqxpfljm6uYnyluwfXrhi3/VrW +RivGN1OX5FQxvkJd0i8qxhdy4P9IxfgGaIyiYtxFL31/UTE+R2N/rGJ8lW/Wr18xbvPN+g1XjJMb +QTna6Oq6FeMu7+I3zzdfMb6hGiuHinEDJdOXpq1cMa74+uxUnk1VjCvaBb8ptNmUpq1e97pOxbi1 +72LTFeObo7HFWPbi3YMrlqatWDHuWsl0Wbdi3Hxn15+pGLe/qXWTFeOz6qc96vvX1qgY/81dN/QV +4y6KD17/XtnQvlpOUdLyi4pxu+/ybLZifDmNLVaMr1rfPXc7kOVHHzZXMY7f4LbKl95sxbjyjdTf +524trxg3c5g/UzHucvZEbKBifMZh2C3ar5KuUTG+5t1QK1aML/GQbLBiHLTxWc34H6kYJ2LZ/gsg +m6wY178AssK3gleuGKeIjGygYtzCSvoDFeNk923LiTdVMW6oeqZ1WK9RMb7eDYerVoyvZImvXTFu +cUfEH6gYJxVDd5v8NtKc10+tGHd5rT9xv9mKcVjLrGb8z1WMW0ZGNl4xrkdGqN2Ka1SMk7w+20/c +b6pifHb20+Hon6sYd8i031DF+Er3j61dMW5z/9jyivFFPC2pGMfacPwG95+qDtdrw+Hs/7HqcL0f +YuxPVYfr/VzeP1cdvnwtm6oO1/u5vH+uOlwvtl380vfmqsP12nC9amDz1eE6cHNfYd5wdThdZf1v +q8NNlfV/qDrcsbJ+I9Xhepk26Px/rDpcrw3X5MufqA5XRUK3PQWM/bHqcF0xVK2kP1IdbpcDv9nq +cJMO84eqw80+pT9THb65L+Utqw5fo15sjerwpV8v3Vh1uF4bvkZOL3V1uL5cy69mbKg63CKj+w9U +h1tmdG+8OlwPYzvUWfyqOtzKStpYdbiGO6s6iz9QHa4jw+VIT+tXhy/U8P6R6nC6/LHfVocbswj+ +XHX4YtXzn6gOX5ajuLnqcKcI72aqw/XacIds219Vh9thbLPV4XptOE3m8LrV4TbZgxuuDtdlvVrN +8Ueqw3VEm+5V2Gh1uJ6M5PL+uepw27VstDpcrw0309gmq8PtdZhNVodbSbHNV4cv2ZcNVofrteGb +3Re7T3f/Yl9W+HT3Eovv19Xh+mZb6Pwbqw7XNxtj4n+qOtypinMz1eFzttgfqw6nuleB+SgIz0tR +afAbqAs3xpENCRIur5Yi0WvZf8A39fC6+gdAz23PfvtsU4W8lLdq6NLeUsOD9X1TfQH4nXtFz1Wn ++MA6kFLq4cd8K/ZKpZwLGFuxlNMOY7T3XThjbPHm3xXu7Jpbmq0JvxJIJJL4RpWO5Py9dFtmZZ/X +Z4unFYtI56xXE1Br3OJmF+giX2Cnrfek0PlxpQu5O7jSOZ3fwlK31/RPfJmRnaZ/brLTf/0V5uxC +GZoN56er9l3L6Wh7EziAt2AU/8bpCON5V/gyi6PT8dzW6bg8D9Z+N/ZWOjQOVtL5eldSLqust0gJ ++90nwGcC0eXdxM0Jnwvp7fMItPkO7xIELknctkWgrQ6DxetOyWHUCMRZsHjdyZ5QcWchIS0yRsft +JbVv/I48pKlsoPPB9i6sdn+NrMCLjX/172KzXzQALrFwsNcrfdbzvX+LMccP/tH5LbF6ekPfSL0g +Gd+/zxsnIFmkelvd1EqBJ0c/03zKnlLLY5eihcXrv/w86sw7Olfsxp9UJhkb79Iwv2aWt7UPlj+5 +DZhvgFlnm2IlLSrqlFNHK95jJftjtsaN0/nVE7xtMXbk3wjGPFq92C8TqfMUSWR0X/xEoH6T222I +8eWtfBtr4skUNVoe5XFS8rF0nSYd0LV6gcZwScIClsZaHNy1b5zGuBB1kY/L61RTTCdzl0vcue8j +n73HzO6W9S+KwNJ17fQaIrxrfWm39kZzwYOLshSbSvDakrj+FWasW9/EbRFK1fr8EV73Vg1StR7c +HI2tKn2tZK9uv5AR69Q0tkLyeLmPPNnGj4iOHqoybmdBp+9+uW97HdLqYWyEcF9nmY66pWFEuzIP +MuLSa3VcXooRLWtT95ORI7simFtLD8n6sVAQkxTizUVzNgDuHA3x2TruF+ssgAHQ3j1DVZu6nywu +3j24VvnY3WB5berc7juWYu+vaT6Z/MmEOjZTm4rl15qz9LfyBavWnWtTaWksvpAgYXYiLctAsPlm +vQXfNDtCKArlZoFxwpO1ezoAj/u2yaJs9jlNYxRa+Rws13K30lVZSyuKKb9dSx01A/N3o3fcIYyr +3fdg/33ku5Xuy1peiK1V1/76kga7FCVLi8/5S+freB+svl+JdetrXZplhSyrexStXKSUH8PEEe3C +H1Y0tsKVEbWt0xM7sXyvi2UHbkkplp9/lovlFeRLbeuBxqtpJZZt7iGB3ac9dzRimdS91jfgc0G0 +2Yrlxd13/Hg3taavHz1Lnny/MbGM5dcgljdwi6ZStb5ULK9EY5eOFzzYiOVl36zfnFhe8Chi2DVo +K5YBxlsa08wklu3X8uAslqkrV3Ur6W3kqFgtfPPcuX6d27TcfxttWO7HfLQXSnjnIolLyuv7v7xq +cd4Sf1jBEaKOaIs7kxuEourZWUxi/brz2aepYLfw+r15lnn96oaPECy3xOm8fh/psIONiH4YmysX +lpU0fzpduDCfgeuiuNOg+mu34sI9ilY5Sb9wK1Yt8y3Xvn2YlK7TS2S6z50fUKvXWi2PjdiyTC1a +48KF+bNfpfHzr2JN6kIL8y0LQthebL2M2w7Xg6nLWPZdiHnr9TZ2YDsfRcTcdr7ZjTqqxxHxWKhk +6weNXrLfCA2Ske700iQDyFSpbktkEoff18+5/d1rjbk0kruZj6GfTebvHwuzfQYrSQ== + + + r7xXT5G5+/uV3l3vrNRqqTgpXKe6kodNX92XWrnD7HMY1nfvy/lLXDLxk3r1YWWKYg7MWk8aORyx +mIhXSlOsjz6TQp7dafY+de+ZP1zFTCNWa2Yb79niaMSNk5799qh0EPLGdvn7y0gyIgbGn+cHg2nN +5d07a0ny/snTzuOW53zi9yRzNwdb1VcxtlO+3854v/vlwl7rcxgSy4Wft+h3s9BOfL9ffeZbZVm+ +ej77uSuzw/xH+bPU6d6eHlxO795O/b63t3TA/1WNfF33ioH4h8s7DDwmJiNv2bc3GvE7nq1Ba3Dg +ZXY+4/7HQuMuIAcufcc/O71CjHu/OUoyh4dbo9FJrOjZfzm99HCp624g3hASTI45OWZylfscc7o9 +uGJOr68+R6POSWg0/TwGbjneC17Vw3xBjiXL2+09UkIO63vOhqKF3S8pepLOp7rRUoAUb8NKKxWA +odUMWFy4YJHnoOyky2t55YK/05U9ga5Qwul5nXRjXG2vlDgMnQlKQfte6ufGGsddVih/3u78jBJ9 +8crl9dxf5QMOKJq+h3f2d70PxR0p3k15i+XTi7338vmRIO9eirCqlCdZOaifYIF8JXB0ELpH4KKJ ++MtrN3Ph852Qr2NXS0z2Lvo2Grcvthmu9LydjL4kWpnz3slDIjZ8OTR58oFHXv5kg9I4LBcvSp3Z +6TXQOciFYlo/FC6vdixeLnXxznDdyWH6U7yuwl6NX5OwF/dz4zx5rcY2433/JTf1BD+/HvC+i7vX +rCd4ef/g8YVqW3jLxQX+iHtCSb7oCR3svuI2HXtC/dKzJ9AIy4iOSPKm8ryXrTPxKBk7es8zTXLz +Bfkt3notfgL3vffBqrYP8Tbgs4+XTGs0CiZ7g8IYVnX/g23NXDrl2Up8bSe76U7tgGWY8ftupn79 +dpWUgsNBIHv3cAadH7ZgvsA7ov+ceztrBhn2ddub6l2/SLl0clpLDMdsXfvi57HYCGYbje39RPzi +G459Pj8hRhPDTSfbidF2c5QKSd0rht3zt5Plxt40WdqX7pKDQbiAiuqOWM3384nYdfor+x5qTxKH +J4I3kyrcNXAtUZc39/52PUxWMo8ckHvwKPPBVPFaD5kla8U/3xOHomeEx8I/a+sd+hOFcqrb3wvh +YLe4k5HU90/Mmyold8SUMAk85XyDdzbzEXq6Jpz/XQCiak5wnGrm4+U+muomujyOSOJBnvTnU2Ma +uwzwT0gHeQI8kFfoIpe9vJNynuBNLvfmf8qLk+FrEfbqJAiAeHynk7dhHVb1ICBPvpgGEvGCB+/V +3d/O5PNnUXh7Ozw3jm9P25zMCBc+zqVboaeUEOn7CQloe/rgTX+Gzptn22FvVN9nPPvv51sAfI8N +ZILeac53dn4eu0pNnzLn54ldvS3e5qrfqbPb/o8yHzethmCRzS29i/gofj0lbz7ao8zHwc5btrH9 +fUKmgrUAAP5c9uc5ltv3BwPiduyhnG0ED0Nzi7ziYNJUn7iOdBhT35c3B0AHzyO8iyBNeFvmI3Uv +5TKRRw4IqVrIZTk/6DAGdHDbb98JPnXwpfzJtqMDgDa9bVhQ/vF0YAD+KPdzRnYNtuSplBhNc3tA +DNU7hvdsSZnw9WeGbCLoYx+9+E6y5Km2YRnRi8zF+3gX5N3RC8MFW92UmLj/IfKVYQfVLrCmh0ny +mg2V1c1pDktkf9UuqXorcfdxew8Mda+QKlVPGYIMQmMfsIM3vXLu+azQSl6nU9VM/txzt/CgzVyQ +033kCwXfxWrhNpF7be1UM+fdwFXmYzA6VhgXHy/vptqPpbv4x7SYRsJ9hrOPh1PRrggLm3U68k25 +99PDoa+We/fHMhhuu1ZhfNr/zgY6jxNxO339tgCS2JzAvpzswMjnfTwvd2Qtzy9HL/nsQaYd8tWT +khgN5zLVShDQFn1iuEk8KRe97Yf4RapxnzsZnxZz73fVJChTFQGPVCpZDu1cpi+P+mmVWzQK41Sp +dH2bavSnr+q+SP32M5+tlx5QF8yHxRPx4TSdvREmKgnkq9108z54n/kojd+QCd/msuxoJxOs/eAK +HkOZg9rhbqzd37sFuCK+TGt8Iqi48wgyUYJAt+S5wiT3FryLoRpbMpoNVr4prnAPxBmXcP+KtDOD +fLGYe+WZc+nPaF710CJHAz6dq6AElMXbI7wVMHm7G38nnfAukXt85yLV9VYq6XZ77AG4LyUET8o2 +Iu/+6F23cKqfl+hd6akCP3q13OHp0ylhZqQtdtWOd2KdV+kDHrCwFvVAAgCZVmfwdOo9ff7K1ivZ +iD4YcLTUrfhQG96R7UbiLGdaD35+9ud76ps78mhC5GwPr35pprrhmwBYQS9+QmPZXaB5IZvztU5e +koPP633VAtMfNL+esrVaRD6Wz7mBgtnLs7vvxOi0B/qD/7WUCd80OPJ0XudPI59+gbW0PytvoFsn +jyx02ZjBLQ5MagtY6+1OIj7oVVPXk9o43op5+4oFdj4efOTeC9M9PUtAb5vd1nj80yNX1YDiGN2L +7Q44ARTjn7vEwWQ/E5AjwiH8dniROBgPT+DB5UVmWitew4Ojk5y8c9NMv1xsnxEFK3oX2rrMvV/u +RlWn4zAJVtL8Mb0GkLlptvF4RITjDUixwxGezw7uwTnoAjxPfBd44ivkyEXjjYeQqV82sC9+iEdf +9fNsPZQ4V7I7duIfZweV5DUzvERCO1dE+bTH12HPfyrkphhyKxdwgYc0UWjhnAs+YKg/DaJsHIbe +cwP99i5JHhx8JMuT4TSZf/RLsBYkP0PrTf/7OVvf3X87O3rm7xV1+PrH30hdT/d8yMzOMh+vW99n +2zenYeDyz/d4MdBPznfx5QO0DBh1qGmJUCAcXCZ44PKysOXHMJjMAQNsbwMf37uA/f3ZBUWm6kve +dIf72cb3jwwaUDKEU3WIiILDEHwE9p/YIlRCrhc68t8HOgQtZLnECsTPI4XVbFv29DWMBS/ZrVw2 +44+aepqdFWyl4wOQmE9QjbY+U6FYZkdhlLMfYBS2PDDAzVaydNX6grMvtKeNeRLA+wKkQeZi/2kH +hmgNDVpfIwVSG9EvC29PN4fBx8xzLhMUAwb5eXJzeJ/z7b50svVyfpoNFMJKpXDKm8mn3vncc3On +TXYf21hgAPEJKMHXHrmbazzHW7f+TqrxszVSucXO1jjnL3ZigePo3Vn6/Tu1n2m9Tx9zb5PPbiKW +89ZmD7ZcXmApL8cKD3kU28+gj+UN2gxYP2I0l+kGFUGIBzslTvKTo9xb98CTiGXjxaQcz4e03Q0O +QPdoT3PJXiyo3X7Uvp73Wq9iNhivwQvtJMb+h61M/uLxPc3e9sY5z345pD/AL0tefLRhzyPRlBhk +H3DEi9Q3W2tkcs+X7Wzg8/URT+A78TilO1/iAehM99PoiD/rpAqPgwc4i7FnEOSfO8Ajr4RE7Opb +Tl0Xhx1QaWK78tfI8+TyqqSksLAPJtXtDUPK0dUV7MdGixmNjg6wyzZoLh95llC8PphisOxGBvr1 +WFWQcjdbOX+1OAEau06HjomCiRufRMM9hBYKo8O9ON8ooHuzjnzdeAfw2fYkfpLbicRhsNkkl34R +X8H2jzi9dHkNyuTifEXDDVx2OFHuvkrvnGRtVwq7r6z1kbuwWqvFzNuOKx3sm1ZK/DBWawXb3pva +ySxdaYl2pWBX8udPPaPF0GyXTLhlcw+n7MztlIpx9YMO2mw1NCC+iDwj/EB7UM+bpB2efXgeb3u8 +X9lG9Z1LdS8OemAWHkfQ45jCjwsUcu+xgZDzyaI/GwoMhrqNddAJxvAsPsqJ+5J3y/Ld1w+s5AJG +ko/GOunMJ+G1KPJ9yDyD8Y/g6DHdvLu/VC3e42wQDTcZTIlTwGKd2cl8fJT4mR3rz4TD58E4c/Lh +gS4Hr7psdnnl67v2de71eaAIodgV030Tpzf8Pdj7500Ypxgh3hC8bxF08OHTa/K6cPaIqn0p984l +IwqNHcZ7Nwx3dj3NnE6irVQkE7rTnwLG4o3rS5BExQFIIrkGnLgxVuAhasD0nTXc9mcECeSnPUhP +I5CzM5BA5zcDlRmXbYEKxLu3V6uDhLtf3O3ZAKXcI3lli6f52wqvwIZ6207ExqEBbvxZNnA1qIBh +cwUWX7LYK7dz6cZNGv0+j3jkuHTnKBWwnPSmx71qzuLMOHMR2N9OCfdcCk1PJlke98tAVAfTufUl +eCLF/FOQKhcPZNq5Sf3PhnNnNAA7JQWpuWSmYYlyBanntQcyKdiVxmljrPVOT45/aHd6YVKuXTJE +RgxoxS8bF3S0Lq7PFqkwaeJ+v0ZAgmMWfCVP0T+mPce7Sp8VoEr78Wcr8rICCXSh70s7kF4JSGhZ +2AGFmDABpT/FOzhfaEGC86IDdVKZXC0Hak2QXN6VgNJBwrinn5YdWZz9ZQxpTXZEfH3V4UrUbzpy +6oGc5J4tJ8XjiDT2ctFWVNq5jajaHMiX2rJzDgfO4pRjnpI6LF7IKh/j7jcsJn3Qd9+O5LoWrOcE +bwS6ACm2ucNne/RA66Mlqo90OLQmm4Hd/xMCBUjqc6qTlI0UW0JUR5z1sMVne0rV1rJkWDs+XXz7 +oT0AQGP00LbGtsMyuZR4bQuryzveyrUZm2EHnvWPK8A6O654e7bNgV31uL63bY8rruX0LLVMLFf7 +NsM23myHBQR9GbgAcpiFYV/smMuLDdWW+9YnrCAc6XFkI0fgT24LBQt0vNpsXXVgqSkFC4G4znDI +rebKBAkuVWXPLSZozaLHX9n6wQfGNkqvROlW3kD/fOr7MjQBdf/5PtvYFncUV/j1q3hMwhHogVfM +WX6XuInU3y4+vtEPc8MGvqN7DJtP9k4fTo7qSeb4oqc5Z6Gtuu9ppD+fUt6Z77+L8ZwfLb7kF4l3 +BTO7NL8QrL8bRhfNceajUsJgzuN++uPos4iGu+KwP6yL8X7q23fzEW/tiUXcqyd84wIMlrO+4myC +P6VZXOgZzDrf9uyrGaL/Z2YbfQEXzDJKqIfkTighsVz1VQkVsPnvSS7BXNwCHsKP6p97mXsllKV4 +/LEtefotkKgRWuJq3OgcgxhcsnJ3GwC6ewkYbRowOQ5Pu8fVbH1wFkoWm/GmIVjF+/vbYMfd7mTO +u7e3JscnCQShlcTEo5pDNzhGk8urhE8OQ/et1Hfha6T4B+eCObXk7e7hMWz33fViQOm+q9u2JCKF +33ycj0lxZ+mhQiL5armv7fTkSwmu5E9+BD3yg9vZSXde3zit7TEOW7LvnwWw9mHNzD5Sss/vM8TF +Lr62f8haovf8Yc04PYnHPo2F1PfeaU4z631eY6ArffyilmvNXmPzVZT775feLkasRMXi67xe9IHG +RiLG6bbk72QW0ObnZzHTBw8cvvxohp2JEj0ddRp+DdZ7KfHA+MPan7tg7+d8ecaLzulLOHK1XYUY +mrvBfG6fO+a0bXyU0Oru5N738i9wAo+2SWQE3ZgZA0sBGkqA/f3QS1Yus3l9c1xezQ== + + + /+uVsVMcWj1fydIVaJkY6tHRMYsgyXgOCkrwCO24+QfFRLx3nDYEfV74bBdsZOKA04JCxEFV1UJG +4ihRTudvQA/xn5MoHjpBJQw4PGldUl9JqfH4kDl4KEWVcNosGAXblPlIxJ+TF4Qnm4GKYrToKNmv +196V84K35xzujVvtrG/rrp3JeT8u5gNKF+J9zz9IDobDekqYpkqmiJTCYT5zJ+Pnu8Dx9uE2vnMG +mA/siNssc39wWf5GHfVkB/Sj/SfVEfJ+fgyc6mRsiFx2vZWSIZQzH4QBi6/16v8A7SqHmTPbEvqg +B7MY0d3Z9s1RHInhEihmb0LcEYpD15wHqmVuzYIs1/qkuJa5aTc+Kbt3gRbfee27uBjb8l9IJVk6 +BS7YqpDAuPoOCcaNIoVUKB6PEe89MArvNF0YTK4RzKF2Srhp+nN6U8HARA45jMLCSGvvK1lJ336Q +ZcyOoV8JtxWfLp6zb8PmF9DiVkQbjASC2Ex2J/R5z3Ah3yRZDHUraswf/yxdle8wMuJvXish++/W +C4xTYGup7vd5WQvjA51PfOHLxfi++kDc/vGUT4c7hyL63bcQqYVovHF7Q4QWSfZAWQm41aJFC6I1 +1u6nSing0lupwmMpqbJWRbqeMBhFD6NQ68/kx2Gq+yzHCAx6nGYWf+metnOJduJZOQJkG9lU/dMU +0VHjNPL4hHwyQOmH9/wnfhKjQ+IdVN+VO57sXn+3BCCxTy6vOTfk+DTvI9GLROzB10lxX2E1Jq70 +C4Z7Sngk3SjHzCGTdGtag+mTLVX3eKgWsvVws4VWUqe9rTiWQDiO1SDN6O5UTZBIpTygMBwntFCP +b5cczePdcqwTOK4OFE1BCfoQl+xD7eeC8Omzo9c7hhAX0cf0AI/gzZxWE/Vk/8QzyJw/idtKyi1/ +6BOSkebpbeLno91XL/h6mISVQodOMBZAPWqQrNzv7GffxWHD0M/iTntxB4DK/aAH/gsTaUZqoHP2 +A0OQmon31MzWvc26iQQQTxktEUqVj2QtO3u5zHfw9Oj+I51guO3vj6z/tdYGPaMyzj62Jruq0Nv7 +8CYOI18dZMcvChcAZCW1lL5sH/NdSMpQEiQJxyditUI/9fl+iXZlJ/n8nq2XqjPZpgV97t+PK6nu +Vj9HojyyeOpvYDgGtbCHDHkQPbwX3zDtpYMh8lI2WPk4MMCFn6AA6v0Za7qlwj7k5Hvi8CwdxsHi +amhY3d9YshxMgLLRqUxIsgtqzJdaduT4v49dAsMKbiHKiu6Dm2m3NboeddqdvjvoirsOkucse9tv +DnKjVqvS+s8kM2hMe63+xB1zHyTL6fNzCfhrY9BsQXfvXDyn8aFnOuppV7QxX8sg/aPYe3R5SehT +zeES42PMMPWBrGuPF6LEx7X+affuq556vywlk8E++xI/Ye+kzHZzms2kz55ftCjq0FyxBKLIGZQV +AAHdPji8ukjk5fGxdHZ4H84NHgVgrNnR8yOTecxVK7mj5FHDCh6NISo6z9dKkfOZwFseORfqB6ks +d5YgQfPEx23lKnkmvl9RRc5Re1dVBEWT7/a30KR4UyLit6+5GvD8pytDogS2SZXn1H3qe1eaaCcE +j+VXp6bwx5kQ1APgbLDdPlaYkS9br3QOM/n84d68CVMAtb8XxByeoprIo6RHvEQTsWtfCznJKVE0 +NTWz9pT6zpwxKg9nMi8khIRhp/RTCxihvK9EX0h8ngTkhffQi/IlF9x4NVyvpRLqOVN6WyzPHhzo +gRwlf6ReOdxGsRp8ieTejpM1+4w5e6PncXAJyziVVaEU8vWUPKrKxVRWRYh8+ePyJkaNMFGkJ9lm +7LhnYbj00UwMn748+2LpVrl4OxtnlohmCAKWrYwjlzd2WSudKOaBvtP3l8NzAvycDXSHcfeTH2Nb +z7eX8zWeZ+zyBZTP4uOBIeqO6QioVPWOMDmvWwWB+CIbktfQqkp1Wyk20bseltQw3selrKf7YZxw +V8lHNybtFB7A0mC+CWtE5OfwEz6RgYRZmSJIxZNbEA3j4JzhkhxlznOPW9qfhwB3/uHDuKDGjxfU +ndeQJky07M3rglgiGYGouIeeMOVd+diaoOkWJGW20Mrkdv2lVOSuNNEyygw+EYwEHqN0vP/J+c4f +bmabc6mmuoYS6J5gdmD3MTdAswwq9Rk6QpqZ4XlDFfBmMauNPDg6U3TDxWS5C80weQ7PJeeh7UOU +Lu1oPj5ye8e+M2OXe/kj0w7kaxa2y2G2cfyyDasPPphAArFaehx2zGL+ZVwvgfWSDYPpIbfErdxb +CbpIrOZveX45er5KH+WSjXYDU+Su0vxR5ZjYuEoCByba6VYMWct9kFhBhgQ7dvBzBiRXJCSSydQu +Lm4T8ZPpZE4rP79Pd46OYwoTBu39OxEvT4qpkPQVSHXD7f1ksfFRQLjK5FNkzcfsY/MCY7Avx5ge +gihq+NKd8SFL6iTmy2FN18KkNPPg+9p2UnSmzE3760nF41vhKskcTscqHzt4BEpW0unZg+3xYeA2 +PlI6oXZE3lET4zBZbhZZVlMAX/NZ4xFXbKDgI1ZonKksDNtaA6EBp3LBelET8UwJduoJROvlOtXL +qZuMVsDgIvui/4kZna3UWWX7Ffc0jSkfQWK0n2DKSLo3S7W7RLfLQ7J/tv8zy+vSH1zMvvU10JBa +64FmXPlBsVVNxCs3Y+Xp3AUcqyfMcIUK+t0+QUQNt+OtyvsNCNtaz1yaUrmYTGdyXy9YUT7seDHF +xN3D0Yib7Hr8h1eCJ3Swd4cp9BnPTkY6nGXUn+CDC0/wZ3iND04wwb7pCV4+nHn2f7ZHsC+XLyYX +J70RtroJhqkzqxphq5tgcF5WNsJWN8HURJCVjLDVTTDtoodVjLDVTTDislnRCFvdBMOSjFWNsNVN +MCUpfzUjbHUTzOVdNMK0mljiifZXR6TqoZ87zDVZs0Kv2AbG4rezTMszDOIZaiTuKue1XFYqtZRy +39zsURv3PEw+5KoU3UrcbS5ZnmyVcZObWPNxrBTKGzKq2qXXWXrdrVVaHGoXmL71Vpm8ZANjfnfG +wpZngiUcM8Eau0ZbbHnWG36is7Q0E+yOIhNMS2jzTHzj5ZlgzPlzMKxFkpalCk7rxR/TSkHuO2e9 +2a50a+v45HTpSm/nPnW5NOuNyR5eZx1W2tqKHNiuVNt9ZRmpg0untMiz3TNjcdjJaSATDouPxGhQ +5JlS/aA+uCfSjhTkaPJOed7bAuMk86Vkus1y2fb53fgTO59e92Wwqy4i4bieJ2d61+VV3gbl9gvs +pdhuLlnqjWcxpQZ7+tpmQOa8jlDNO8/6b8/HimoL6ucNBu5bWAHYIlFivZgJU+7ec8kn1gPyI/WK +7lq9sH2+NsY+2sy1S7TRZhJrNiVOhUNrRZtfLpcHwNHe/2XGCgVIJPBgCMlerRnsXxLqrwZBVm48 +L6+2dXpuymExpM44pUYZP1JtMPvSy/PyDGlAq+TldW9WT3UgsnJZvgdGnH6dFApr2VwWFl6BPbYC +yeWlShb8ZQ6P8ZpCI1Cx4mTt/MVFkDBM+/vEorvBcna0/OwvMKQ12ZHp7L+8U1C/He2/2uaqkQJp +Mu062WpW59wqVw3k/m+z1Shy1VAik1yamC/4RzKyydGb7f5qRFW3T9SiSP/dlECZJ6kW8fasS1R2 +qU/vZkq1Wsvq+dPvS9M1HdOybaFtLMv/ah6YBjWnmD/ZDfvxG8wCT16WXLrmcU2Y8pXNa+ktT5dH +dvxjMWwSTbysDReoPitrsR8W7Zd31SF06x0ky4+eSYp7v/wislmpNrlKH7wSp/l83cmLfrOBegH6 +8rsNfn2zAWDM+W6DX99soAbpl99t8OubDVxeirsNAr+92YAU4TvdbfDrmw3UhLbldxv8+mYDl5fi +boNf32wANOZ8t8GvbzZweSnuNvj1zQbouXK82yDw25sNMC7meLfBr282wFJMx7sNAr+92QB23/lu +g1/fbABrcbrbAAxgh/sFHC81QHt/tQsVVptUuc9gVh6/eKPBBu8zUEvKrW402OB9Bvq1OAs3GgQ2 +d58BXryl3mhgIVoNlZsF081B0jDIjVPfmb3PmTC6RWob5fZ9/g7AkL4HWVHdJnC5lExV9Au9zF8K +EM+cN47u9J7Yj/jopGQ5+L1DHEuGywO2qsJl9rHpbRNXMuxVXxV0IPck5YqfWUq47+ygs1XcnaVN +vM2c5kRg9vQwgybU78d6W1LknzvJSJNrq36B0vM2iWjgqVRiGiUmt783muphDxQE7yAIvv2pXmC3 +qgyWPxmWofMgljn/+jnjMqGngDGW0mxfZAPj7G7685kPJpnjaZQQl8ur31iAQraRhR0ZAPqDUzWO +fFS8IUEYY1TiOBuaRSXUT3ZwwZEHyed7vp93ti/aB8qUKvGr3e/qLBSSnt3Nu6uFQuDgoslBrihY +JIHPJ4Z9ufxMRfziyJgRQfJFMOuWI/EJvK/sKdPKPuwBEvQ06fte7r0w4MFw2/pMdfKJseoO1Or9 +UUDf4+5Xoe00DIpKqJ3zfUivWP5fx5i4d7hvOGiRA7meaX1dHDKRev4ED1Ioze0cvWfC0/EDSJ/K +VHvABJOV7G5HzWzeO+NzvnxSVyH2E7HsAXDQVP1E0S0vSbRBi2Tc1xOVG6mMmaEldX+1AIia4Y4R +R/2GgMF/H7viQEbnLPuW7TeNuWQurxdayq3JdIgdIm+pVrvTL9T+aY1crFv5j4H/WDfnjspuLhLB +fxg3D/8v1F2+xqA7GI397kLf5X07SI4mmU5j0hn0a6N/3DFsergs3J5n3DH3rGvc7QNImDfoDE/8 +mLz2BtC9uRh3Ev7/8LdrfwpzZ+D3axcTZjg+4mbCLCcL8E+EkSWY+tvFqIDBC//AHxfwyxc0/e0W +3JfupxfG3cSxblwCK4R5GcAWInyYkeDtntIWjUKTFGZFRnRjQ1SGhQnRaDgiwUwCy4Yl8prEhwWZ +4dxpl8AIAI0IDyUAxM3LXDjKiCym74UlkHxuXpLDgihIbkFkw5gCBC/xUT4s8xzMIQphjmOjbj4i +hAWOg8lEeCREeTfPywCaQF7jZFguvMaL4QjHRsjgcoQX3TwnhMWIDFBH5TDLsvAaQC1HRAXGKBPF +11gmLIk8QBAVwxLDYCc2zETgF5wtKokiaYmwLC6fA0AkjrzHwioFVmljYd2kJRpRWxgYkrREohHS +wsusSN7jw1wEloC4EWVWgLXwAGaUcwOCw7LMwS+48IgIA0RkpQXekyPhKC/xSi+JgUHZCKBHgl8Y +QIYgSWRT+EhUIDsHC5ZwC8jOMazSxghKJwkXjNsr46YubHja9QETQn+YXMGxBLvWI22wgIjSJsJa +sUXgcBBsEQSlJSLwSgP8z91wKZ0krRMfdSsDCbOBRPfidA0AggGiBsTBS6zyROQEAgduiCiSpoiE +hAQtUVmQlRYetxGIjYmyCiCw3wIBZLEXjiSpI0UlZaS56RCO/Vvrw0pOoXb4wiyMzA== + + + IPBw1sNSVMLjx8Ay4fBxoFlGOaQlwDEflWRcBeCdY4AKeUEGJCBa4HiJER7pmwHqwpPCSHBSgKp5 +IBegdDwgAg/HgQFUzdoKpC0aZZR+oN5ESFtEwSTPiGExipvEc2FJ4pAykT/g8YWJGFw/0iXP424J +XAQQF4XXWJhbJCQjKQTCs3Bco4h3eJ8nYEELJ/HaYQfCBrA4EagPVyHKYZ6JwuBwklgBtrvqQtqO +EMKOIow8TAa/8BKLrUDRPJwVNxx2RAgH/Tl8EoFfkUphRs7NCZEwnGGBkIyMZMVxeKwFmCfKAb9D +YIBvhCWYi8DAsTATxwHIwK2gJRoWETwOliUzEraIsE+AKGA2wEMAoQilIMEpbbhYOHiiRHYJUCVE +ZDcL7AQISybwwiRzLSpXSLv0Njie5GQADAycDQ4OmKmN4QSln8wqsDLALqMRmBMQIUUA8xwTBUaJ +x59H/gHUzOGGMQJH4OJkgKLhQvgJqQMWYbGMRFCj8KIIo5x2DqkCuQ3wpGiEENQicRacaL6QUoQf +iEIi+kKhtYThZNBr1CZUwlDrSiUMiSB0t1eQeVGNBQq6zIuqMk/WZF5ElXkozRSZx2kyT9RlXkST +eTyReYwm83hN5kU1mcfrMo/VZJ64IPMiZpnHW8g8XpN5vCrzJE6Tebwm80RN5gGlqTJPVmUesBmT +zIOWBZkHbSaZhy3zMg9bFmQeYy/zhAWZJ1rIPEGTeZIq81hGk3lRTeYJusyLajJPUGVeVJN5gibz +zBuuyDxWE0K8LvNYTebxmsxjNZnHazKPVWUer8s8VpN5vCbzWE3m8ZrMM083k3mSrAkhXpN50KTK +PF6VedCiSjNek2aMJvP4mcxb7EVGktSRiMwzT4dwIHELMuKMCYtAKeRI8ApDR/TLEYmwYCaCHB4o +CTghS/YxCoyHsHxRIrsv4mmRCOETKQBDANkCBxeEqCInkZNGeZacLAGJFV8DkmR5RCD8AhySMEMg +OlwdSC+ZQTICBHKIUiAaEJ4CvofgImkRlVKAo4AaUwQXIIiEJHG/kGgiynuyQtx4bkVCLNBL5nBX +NNkrgFgBquHIsiMRWSRwskyUSGNAU1RAARVl8OiwbgVxiE0CCse7F1CZduKvU3K2EYG8DP/KcHh6 +5NzKHApWra1gbOPIlhQMby62zN77mDXCsQ3LUZCehglmbQVjG6yPFwTDeJZNszfxPAE9inxkBgqS +kKjqBDPoDE36svQ3rdq0Vw1TzGAxzGGAz9CmL01/16pt9u4HbgfsuETYAHBYVuIJa4jgaRH1poJC +fUwkMtfGAwELeAIt20D3kGUydQQYRASp2dgGS5WRunhU6YncRtUZGR7IA4kTUFSwirAXBGQ/ArIR +hANoH4hRAJYbxbMCSiacF2xRtSzQhsKiGNUb4DXUcfA8651gX4Fjw2t8FMSOzJOWqERAEhXJogii +qBTR2mSi2oFKysC5I2/KyIyUNo5lUO+UUF7gaHjM4QVBANYuskaw1AZlNaAyCoZOEdT0WMJBQNuV +CVok5ABkwShj8DUQpiIyOgHPLbK+CAhTCTkPoJOXREXOwmAGpKM0jhJJqTaR/cLtZ/Dko/rECgo3 +4ySJJfsQAWUayBKMYxaPu9aCImzWBlwQeQiOBaQYlWW9DWQTTITyiVdsDpwO6JHVQUgrVpQEG2Ak +D2xTCVCWOA3QOTolupxiovCgFER5lKPA2qISCKqe0oaESJoiZAxg5qh5ALeXJNRCo7AIGeUbil8B +dWHoIQqMYWbEGlgZojxP5lFgqjzqOmAnSBLuN/RiCC9EWxwsFTJ6RJYUoSICTnAs2GdgOpLephyt +KIeUgnZTBAWKonQocImipFDB3IlMW59INLhA8qmWTZTQHEgunqwZ9CeOaNDA9QRiXcvAEQhUAop5 +BVeirFC0iDJc5MnuE9JWDrLEsaoNilZVgfAK2DhJkb6oguC7qABGFH4eYSKyijGOVfuBbCNNomrb +oZohs4Sjo56IG4jTMqgN4NaDwBNV8ECdB4YqabIJNxctzDuVBiReaSPDkhY8FKQFjaYFOklrigmA +LEWJwQ1oifJEakTQRANyB8qAHZIi2sZzgtrEaaudf1W1Mm5dstvndz/cu5ZJRK0Ph4pVhKiAcGii +HApGMKlQj5VUHQtW0HVxUcQpSm+wfjng5Ni28G4XQLCfkxMRUlRv0XCLAP5gLmAOIOUVNUqG0wHD +ossCSJNsBuEqXYtXHaYCWgazQVaEG2jvOFUE7UtBUa4icNpgWCBB0CZEhf3wUVzB4qvLp0IHGyIB +2WOEiaJURnKKsGhBC7hvcIi7hAswHE6vyZfu4qsOM0mCIkN5kEwysapwBKJO88hIQVTgqBJaNsjE +gXEC5ZAm05sOExGjAfmliLiAXcc1RZQTh2IRrG6ewI/ePpRT0I8YUV2Ldx3mQncZw0pEFBDeDHNx +ILPwBHBwGkEq4LCg0ooiylt4xrEcWejCq05TgeYqEi0BmJhEDhs6TDhUldHW59RhkVsSLhuBbZTJ +qsyvLp9J0WKRXDkZLVFclMAAGxNR7YU5QQ1EaJEfS0TX4HhFu+5avOswF4NMl0eGDxKDEYkvDHkC +4V3o5kEGDOPCwY2KaIKybDjKsjJpM7+7fC5V8KG4n3Nzwepwq2zcXBxrdnNxrIWbS1LdXGC8L7q5 +ZDRaoIlRLCvQQBn0I6C1CFsDz4jbDu0oBjUAaGPRVIA2dF2xqGihBSSJskpVHDrIOFSyZYJpURkL +IOTRT4WePEmUOGKBy+iDRGUClKYosbeiRNxBi4xuCvQIRlVvInE7RfQmlFUo/1nF18QSrzlxcxG5 +xqMfh7jQ0JeG+pQiHBUnEqpmcIyEKJxiOHthiZhbyAtZ0c0BouDoKwoFx0RY8hpOi2tDJicR4cYR +7xu6xMhxBV7LEZNZVjGM/jD8BRBEOBF6z2CkCApgVlaYUxQ9hRFeUxRgEjTUOaI/otNMa2kQlspw +6GDRezEKmnliVgLj5UBTg8MkkwWjcgrT8cAtRBRnuMXoSOOQIEgngB+1EHS+SRySmIiCNYLmKScg +USP5yKjqwUpA1spIh3iMiJwiXEIhSPTTRKNq2EB1jQqKaxTQBBhTXaOi5hrlFlyj7IJrFOYBjosi +JIKyBNaLvh5CKKCHMKiHKO5GpBiM4PACKuEcg5qbdkRBhSDvCSIwaWQGQjQCK4ZHgog8F6hRBnMD +34OHircJoBPRaObQlGAjCmcGUgYwQUkDBRNb0KJnRLKfwLii2AtMBOLcIr1ERlGcJVDHoQU1LZkl +DJUokQ0iNVEnBgg4Hl7n0HkUVZkzUfU5UMBFDq0HHmMVMiHfqKS4YdHyAWQAMmFfRRZ1woga2MGR +0Y0gYDhJIjhBB5PMysQw4XmwylAYK6cPNlpGjxi2sCKgXiAqJfH3gdmGDjTSiZFYluxcFIQPaYmi +3sfxsuo0gxYRthIxGVUIDJvIatHhSxyR8DqPh59DhiKyioEDFEe8wgxhqVGVj+PSgLMD61HCeBLL +oH8ZGST6LOAXYLKc+l6EHAwZNw5sKw4dh1FB8dezHJIOMk+Dnz1NfNBmP3tkwc8uWPjZuQU/u6h5 +1XnNzy7qPvWZn33WFtV96hHNzz7Xtuhn51H9jxBWSyw2JHJRwBYOYzLYMvOzEwPY7GfnzH52IAST +n52Z+dmB04DOAfwAqJwHBgK0gfChps6rMoSLomcN0QAnV0RhAu/JnGKdzNoKxjYeScDUJoaBAGA0 +9DAyRKRhZAnIEpQTVbrA+WAjxE7mkBGAugRtOABuGViRsEkCacHzzEWRVyBeAFCGJxYBgioJguIj +YDmF4cObPEGLwn70yAKrRBbSxrBX1Bz24qSFsBenh71ELezF6WEv0SLsFV0Ie0UWwl68Oeyl2DeE +wnlZIFSIZlhPDdDwircRaE5ws6CskOOD+8FEyYFCZiMpwWMiQ4AwgbEz6GuYtRWgDf2caCkAaxcx +ukDeRCUHcSZE8HDAoMSYAP01wiiEg5FscoCA3eHZQk4gS0TWgcxB1zOHngMGhS0GDnji58eRMPSA +yFdpGTkB8E0SH4oi3zGv1zHaaRX58RZr7VZlVOt0WyNXe1z7q+Wu9fuDSW3SGsITd3vUGk8Go5Z7 +/Dn4G1vgFa2715u9zrn+L1T7Dxc= + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/update.gif b/P51/apache-tomcat-6.0.14/webapps/docs/images/update.gif new file mode 100644 index 0000000..31e22ab Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/images/update.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/images/void.gif b/P51/apache-tomcat-6.0.14/webapps/docs/images/void.gif new file mode 100644 index 0000000..e565824 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/docs/images/void.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/index.html new file mode 100644 index 0000000..736f9ae --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/index.html @@ -0,0 +1,157 @@ +Apache Tomcat 6.0 - Documentation Index
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Documentation Index

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    This is the top-level entry point of the documentation bundle for the +Apache Tomcat Servlet/JSP container. Apache Tomcat version 6.0 +implements the +Servlet 2.5 and JavaServer Pages 2.1 specifications from the +Java Community Process, and includes many +additional features that make it a useful platform for developing and deploying +web applications and web services.

    + +

    Select one of the links from the navigation menu (to the left) to drill +down to the more detailed documentation that is available. Each available +manual is described in more detail below.

    + +
    Apache Tomcat User Guide
    + +

    The following documents will assist you in downloading, installing +Apache Tomcat 6, and using many of the Apache Tomcat features.

    + +
      +
    1. Introduction - A + brief, high level, overview of Apache Tomcat.
    2. +
    3. Setup - How to install and run + Apache Tomcat on a variety of platforms.
    4. +
    5. First web application + - An introduction to the concepts of a web application as defined + in the Servlet + 2.4 Specification. Covers basic organization of your web application + source tree, the structure of a web application archive, and an + introduction to the web application deployment descriptor + (/WEB-INF/web.xml).
    6. +
    7. Deployer - + Operating the Apache Tomcat Deployer to deploy, precompile, and validate web + applications.
    8. +
    9. Manager - + Operating the Manager web app to deploy, undeploy, and + redeploy applications while Apache Tomcat is running.
    10. +
    11. Realms and Access Control + - Description of how to configure Realms (databases of users, + passwords, and their associated roles) for use in web applications that + utilize Container Managed Security.
    12. +
    13. Security Manager + - Configuring and using a Java Security Manager to + support fine-grained control over the behavior of your web applications. +
    14. +
    15. JNDI Resources + - Configuring standard and custom resources in the JNDI naming context + that is provided to each web application.
    16. +
    17. + JDBC DataSource + - Configuring a JNDI DataSoure with a DB connection pool. + Examples for many popular databases.
    18. +
    19. Classloading + - Information about class loading in Apache Tomcat 5, including where to place + your application classes so that they are visible.
    20. +
    21. JSPs + - Information about Jasper configuration, as well as the JSP compiler + usage.
    22. +
    23. SSL - + Installing and + configuring SSL support so that your Apache Tomcat will serve requests using + the https protocol.
    24. +
    25. SSI - + Using Server Side Includes in Apache Tomcat.
    26. +
    27. CGI - + Using CGIs with Apache Tomcat.
    28. +
    29. Proxy Support - + Configuring Apache Tomcat 5 to run behind a proxy server (or a web server + functioning as a proxy server).
    30. +
    31. MBean Descriptor - + Configuring MBean descriptors files for custom components.
    32. +
    33. Default Servlet - + Configuring the default servlet and customizing directory listings.
    34. +
    35. Apache Tomcat Clustering - + Enable session replication in a Apache Tomcat environment.
    36. +
    37. Balancer - + Configuring, using, and extending the load balancer application.
    38. +
    39. Connectors - + Connectors available in Apache Tomcat, and native web server integration.
    40. +
    41. Monitoring and Management - + Enabling JMX Remote support, and using tools to monitor and manage Apache Tomcat.
    42. +
    43. Logging - + Configuring logging in Apache Tomcat.
    44. +
    45. Apache Portable Runtime - + Using APR to provide superior performance, scalability and better + integration with native server technologies.
    46. +
    47. Virtual Hosting - + Configuring vitual hosting in Apache Tomcat.
    48. +
    49. Advanced IO - + Extensions available over regular, blocking IO.
    50. +
    51. Additional Components - + Obtaining additional, optional components.
    52. + +
    + +
    Reference
    + +

    The following documents are aimed at System Administrators who +are responsible for installing, configuring, and operating a Apache Tomcat 6 server. +

    + + +
    Apache Tomcat Developers
    + +

    The following documents are for Java developers who wish to contribute to +the development of the Apache Tomcat project.

    +
      +
    • Building from Source - + Details the steps necessary to download Apache Tomcat 6 source code (and the + other packages that it depends on), and build a binary distribution from + those sources. +
    • +
    • Changelog - Details the + changes made to Apache Tomcat. +
    • +
    • Status - Apache Tomcat development + status. +
    • +
    • Developers - List of active + Apache Tomcat contributors. +
    • +
    • Functional Specifications + - Requirements specifications for features of the Catalina servlet + container portion of Apache Tomcat 6.
    • +
    • Catalina Javadocs + - Javadoc API documentation for the Catalina servlet + container and its dependencies.
    • +
    • Jasper Javadocs + - Javadoc API documentation for the Jasper JSP container + portion of Apache Tomcat 6.
    • +
    • Apache Tomcat Architecture + - Documentation of the Apache Tomcat Server Architecture.
    • + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/introduction.html b/P51/apache-tomcat-6.0.14/webapps/docs/introduction.html new file mode 100644 index 0000000..1566223 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/introduction.html @@ -0,0 +1,103 @@ +Apache Tomcat 6.0 - Introduction
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Introduction

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    For administrators and web developers alike, there are some important bits +of information you should familiarize yourself with before starting out. This +document serves as a brief introduction to some of the concepts and +terminology behind the Tomcat container. As well, where to go when you need +help.

    + +
    Terminology
    + +

    In the course of reading these documents, you'll run across a number of +terms; some specific to Tomcat, and others defined by the +Servlet or +JSP specifications.

    + +
      +
    • Context - In a nutshell, a Context is a + web application.
    • +
    • Term2 - This is it.
    • +
    • Term3 - This is it!
    • +
    + +
    Directories and Files
    + +

    Throughout the docs, you'll notice there are numerous references to +$CATALINA_HOME. This represents the root of your Tomcat +installation. When we say, "This information can be found in your +$CATALINA_HOME/README.txt file" we mean to look at the README.txt file at the +root of your Tomcat install.

    + +

    These are some of the key tomcat directories, all relative +to $CATALINA_HOME:

    + +
      +
    • /bin - Startup, shutdown, and other scripts. The + *.sh files (for Unix systems) are functional duplicates of + the *.bat files (for Windows systems). Since the Win32 + command-line lacks certain functionality, there are some additional + files in here.
    • +
    • /conf - Configuration files and related DTDs. The most + important file in here is server.xml. It is the main configuration file + for the container.
    • +
    • /logs - Log files are here by default.
    • +
    • /webapps - This is where your webapps go.
    • +
    + +
    Configuring Tomcat
    + +

    This section will acquaint you with the basic information used during +the configuration of the container.

    + +

    All of the information in the configuration files is read at startup, +meaning that any change to the files necessitates a restart of the container. +

    + +
    Where to Go for Help
    + +

    While we've done our best to ensure that these documents are clearly +written and easy to understand, we may have missed something. Provided +below are various web sites and mailing lists in case you get stuck.

    + +

    As Tomcat 6 is a new release of Tomcat, keep in mind that some of the +issues and solutions vary between the major versions of Tomcat (4.x versus +5). As you search around the web, there will be some documentation that +is not relevant to Tomcat 6, but 3.x, 4.x and 5.x. Doing 3.x or 4.x things to 6 +will probably not work in most cases as the server.xml files are very +different.

    + +
      +
    • Current document - most documents will list potential hangups. Be sure + to fully read the relevant documentation as it will save you much time + and effort. There's nothing like scouring the web only to find out that + the answer was right in front of you all along!
    • +
    • Tomcat FAQ as maintained by the developers.
    • +
    • Tomcat WIKI
    • +
    • Tomcat FAQ at jGuru
    • +
    • Tomcat mailing list archives - numerous sites archive the Tomcat mailing + lists. Since the links change over time, clicking here will search + Google. +
    • +
    • The TOMCAT-USER mailing list, which you can subscribe to + here. If you don't + get a reply, then there's a good chance that your question was probably + answered in the list archives or one of the FAQs. Although questions + about web application development in general are sometimes asked and + answered, please focus your questions on Tomcat-specific issues.
    • +
    • The TOMCAT-DEV mailing list, which you can subscribe to + here. This list is + reserved for discussions about the development of Tomcat + itself. Questions about Tomcat configuration, and the problems you run + into while developing and running applications, will normally be more + appropriate on the TOMCAT-USER list instead.
    • +
    + +

    And, if you think something should be in the docs, by all means let us know +on the TOMCAT-DEV list, or send one of the doc authors email.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/jasper-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/jasper-howto.html new file mode 100644 index 0000000..1836258 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/jasper-howto.html @@ -0,0 +1,305 @@ +Apache Tomcat 6.0 - Jasper 2 JSP Engine How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Jasper 2 JSP Engine How To

    Printer Friendly Version
    print-friendly
    version +
    Table of Contents
    +

    +Introduction
    +Configuration
    +Production Configuration
    +Web Application Compilation
    +Using Jikes
    +

    +
    Introduction
    + +

    Tomcat 6.0 uses the Jasper 2 JSP Engine to implement +the JavaServer Pages 2.0 +specification.

    + +

    Jasper 2 has been redesigned to significantly improve performance over +the orignal Jasper. In addition to general code improvements the following +changes were made: +

      +
    • JSP Custom Tag Pooling - The java objects instantiated +for JSP Custom Tags can now be pooled and reused. This significantly boosts +the performance of JSP pages which use custom tags.
    • +
    • Background JSP compilation - If you make a change to +a JSP page which had already been compiled Jasper 2 can recompile that +page in the background. The previously compiled JSP page will still be +available to serve requests. Once the new page has been compiled +successfully it will replace the old page. This helps improve availablity +of your JSP pages on a production server.
    • +
    • Recompile JSP when included page changes - Jasper 2 +can now detect when a page included at compile time from a JSP has changed +and then recompile the parent JSP.
    • +
    • JDT used to compile JSP pages - The +Eclipse JDT Java compiler is now used to perform JSP java source code +compilation. This compiler loads source dependencies from the container +classloader. Ant and javac can still be used.
    • +
    +

    + +

    Jasper is implemented using the servlet class +org.apache.jasper.servlet.JspServlet.

    + +
    Configuration
    + +

    By default Jasper is configured for use when doing web application +development. See the section +Production Configuration for information on configuring Jasper +for use on a production Tomcat server.

    + +

    The servlet which implements Jasper is configured using init parameters +in your global $CATALINA_BASE/conf/web.xml. + +

      +
    • checkInterval - If development is false and reloading is +true, background compiles are enabled. checkInterval is the time in seconds +between checks to see if a JSP page needs to be recompiled. Default +300 seconds.
    • + +
    • compiler - Which compiler Ant should use to compile JSP +pages. See the Ant documentation for more information. If the value is not set, +then the default Eclipse JDT Java compiler will be used instead of using Ant. +No default value.
    • + +
    • classdebuginfo - Should the class file be compiled with +debugging information? true or false, default +true. +
    • + +
    • classpath - Defines the class path to be used to compile +the generated servlets. This parameter only has an effect if the ServletContext +attribute org.apache.jasper.Constants.SERVLET_CLASSPATH is not set. This +attribute is always set when Jasper is used within Tomcat. By default the +classpath is created dynamically based on the current web application.
    • + +
    • compilerSourceVM - What JDK version are the source files compatible with? (Default JDK 1.4)
    • + +
    • compilerTargetVM - What JDK version are the generated files compatible with? (Default JDK 1.4)
    • + +
    • development - Is Jasper used in development mode (will +check for JSP modification on every access)? true or +false, default true.
    • + +
    • enablePooling - Determines whether tag handler pooling is +enabled. true or false, default true. +
    • + +
    • engineOptionsClass - Allows specifying the Options class +used to configure Jasper. If not present, the default EmbeddedServletOptions +will be used. +
    • + +
    • ieClassId - The class-id value to be sent to Internet +Explorer when using <jsp:plugin> tags. Default +clsid:8AD9C840-044E-11D1-B3E9-00805F499D93.
    • + +
    • fork - Have Ant fork JSP page compiles so they are +performed in a seperate JVM from Tomcat? true or +false, default true.
    • + +
    • javaEncoding - Java file encoding to use for generating +java source files. Default UTF8.
    • + +
    • genStringAsCharArray - Should text strings be generated as char +arrays, to improve performance in some cases? Default false.
    • + +
    • keepgenerated - Should we keep the generated Java source +code for each page instead of deleting it? true or +false, default true.
    • + +
    • mappedfile - Should we generate static content with one +print statement per input line, to ease debugging? +true or false, default true.
    • + +
    • modificationTestInterval - Checks for modification for a given +JSP file (and all its dependent files) will be performed only once every specified amount +of seconds. Setting this to 0 will cause the JSP to be checked on every access. +Default is 4 seconds.
    • + +
    • reloading - Should Jasper check for modified JSPs? +true or false, default false.
    • + +
    • scratchdir - What scratch directory should we use when +compiling JSP pages? Default is the work directory for the current web +application.
    • + +
    • trimSpaces - Should white spaces in template text between +actions or directives be trimmed ?, default false.
    • +
    +

    + +

    The Java compiler from Eclipse JDT in included as the default compiler. It is an +advanced Java compiler which will load all dependencies from the Tomcat class loader, +which will help tremendously when compiling on large installations with tens of JARs. +On fast servers, this will allow sub-second recompilation cycles for even large JSP +pages.

    + +

    Apache Ant, which was used in previous Tomcat releases, can be used instead instead of +the new compiler by simply removing the lib/jasper-jdt.jar file, +and placing the ant.jar file from the latest Ant distribution in the +lib folder. If you do this, you also need to use the "javac" +argument to catalina.sh.

    + +
    Production Configuration
    + +

    The main JSP optimization which can be done is precompilation of JSPs. However, +this might not be possible (for example, when using the jsp-property-group feature) +or practical, in which case the configuration of the Jasper servlet becomes critical.

    + +

    When using Jasper 2 in a production Tomcat server you should consider +making the following changes from the default configuration. +

      +
    • development - To disable on access checks for JSP +pages compilation set this to false.
    • +
    • genStringAsCharArray - To generate slightly more efficient +char arrays, set this to true.
    • +
    • modificationTestInterval - If development has to be set to +true for any reason (such as dynamic generation of JSPs), setting +this to a high value will improve performance a lot.
    • +
    • trimSpaces - To remove useless bytes from the response, +set this to true.
    • +
    +

    + +
    Web Application Compilation
    + +

    Using Ant is the preferred way to compile web applications using JSPC. +Use the script given below (a similar script is included in the "deployer" +download) to precompile a webapp: +

    + +

    +

    +<project name="Webapp Precompilation" default="all" basedir="."> 
    +
    +   <import file="${tomcat.home}/bin/catalina-tasks.xml"/>
    +  
    +   <target name="jspc"> 
    +
    +    <jasper 
    +             validateXml="false" 
    +             uriroot="${webapp.path}" 
    +             webXmlFragment="${webapp.path}/WEB-INF/generated_web.xml" 
    +             outputDir="${webapp.path}/WEB-INF/src" /> 
    +
    +  </target> 
    +
    +  <target name="compile">
    +
    +    <mkdir dir="${webapp.path}/WEB-INF/classes"/>
    +    <mkdir dir="${webapp.path}/WEB-INF/lib"/>
    +
    +    <javac destdir="${webapp.path}/WEB-INF/classes"
    +           optimize="off"
    +           debug="on" failonerror="false"
    +           srcdir="${webapp.path}/WEB-INF/src" 
    +	   excludes="**/*.smap">
    +      <classpath>
    +        <pathelement location="${webapp.path}/WEB-INF/classes"/>
    +        <fileset dir="${webapp.path}/WEB-INF/lib">
    +          <include name="*.jar"/>
    +        </fileset>
    +        <pathelement location="${tomcat.home}/lib"/>
    +        <fileset dir="${tomcat.home}/common/lib">
    +          <include name="*.jar"/>
    +        </fileset>
    +        <fileset dir="${tomcat.home}/bin"> 
    +          <include name="*.jar"/> 
    +        </fileset> 
    +      </classpath>
    +      <include name="**" />
    +      <exclude name="tags/**" />
    +    </javac>
    +
    +  </target>
    +
    +  <target name="all" depends="jspc,compile">
    +  </target>
    +
    +  <target name="cleanup">
    +  	<delete>
    +        <fileset dir="${webapp.path}/WEB-INF/src"/>
    +        <fileset dir="${webapp.path}/WEB-INF/classes/org/apache/jsp"/>
    +  	</delete>
    +  </target>
    +
    +</project>
    +
    +

    + +

    +The following command line can be used to run the script +(replacing the tokens with the Tomcat base path and the path to the webapp +which should be precompiled):
    +

    +$ANT_HOME/bin/ant -Dtomcat.home=<$TOMCAT_HOME> -Dwebapp.path=<$WEBAPP_PATH>
    +
    +

    + +

    +Then, the declarations and mappings for the servlets which were generated +during the precompilation must be added to the web application deployment +descriptor. Insert the ${webapp.path}/WEB-INF/generated_web.xml +at the right place inside the ${webapp.path}/WEB-INF/web.xml file. +Restart the web application (using the manager) and test it to verify it is +running fine with precompiled servlets. An appropriate token placed in the +web application deployment descriptor may also be used to automatically +insert the generated servlet declarations and mappings using Ant filtering +capabilities. This is actually how all the webapps distributed with Tomcat +are automatically compiled as part of the build process. +

    + +

    +At the jasper2 task you can use the option addWebXmlMappings for +automatic merge the ${webapp.path}/WEB-INF/generated_web.xml +with the current web application deployment descriptor at ${webapp.path}/WEB-INF/web.xml. +When you want to use Java 5 feature inside your jsp's, add the following javac compiler task +attributes: source="1.5" target="1.5". For live application +you can also compile with optimize="on" and without debug info +debug="off". +

    + +

    +When you don't want to stop the jsp generation at first jsp syntax error, use +failOnError="false"and with showSuccess="true" +all successfull jsp to java generation are printed out. Sometimes it is +very helpfull, when you cleanup the generate java source files at ${webapp.path}/WEB-INF/src +and the compile jsp servlet classes at ${webapp.path}/WEB-INF/classes/org/apache/jsp. +

    + +

    Hints: +

      +
    • When you switch to another tomcat release, then regenerate and recompile +your jsp's with this version again!
    • +
    • Use java system property at server runtime to disable tag pooling org.apache.jasper.runtime.JspFactoryImpl.USE_POOL=false. +and limit the buffering with org.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true. Note that changing +from the defaults may affect performance, but depending on the application.
    • +
    +

    +
    Using Jikes
    + +

    If you wish to use + +Jikes to compile JSP pages: +

      +
    • From your Ant installation, copy ant.jar +and (if it's available: Ant 1.5 and later) ant-launcher.jar to +$CATALINA_BASE/lib.
    • +
    • Download and install jikes. jikes must support the -encoding option. +Execute jikes -help to verify that it was built with support +for -encoding.
    • +
    • Set the init parameter compiler to jikes.
    • +
    • Define the property -Dbuild.compiler.emacs=true when starting +Tomcat by adding it to your CATALINA_OPTS environment variable. +This changes how jikes outputs error messages so that it is compatible with +Jasper.
    • +
    • If you get an error reporting that jikes can't use UTF8 encoding, try +setting the init parameter javaEncoding to +ISO-8859-1.
    • +
    +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/jndi-datasource-examples-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/jndi-datasource-examples-howto.html new file mode 100644 index 0000000..a44a90b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/jndi-datasource-examples-howto.html @@ -0,0 +1,619 @@ +Apache Tomcat 6.0 - JNDI Datasource HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    JNDI Datasource HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    Table of Contents
    +

    +Introduction
    + +Database Connection Pool (DBCP) Configurations
    +Non DBCP Solutions
    +Oracle 8i with OCI client
    +Common Problems
    +

    +
    Introduction
    + +

    JNDI Datasource configuration is covered extensively in the +JNDI-Resources-HOWTO. However, feedback from tomcat-user has +shown that specifics for individual configurations can be rather tricky.

    + +

    Here then are some example configurations that have been posted to +tomcat-user for popular databases and some general tips for db useage.

    + +

    You should be aware that since these notes are derived from configuration +and/or feedback posted to tomcat-user YMMV :-). Please let us +know if you have any other tested configurations that you feel may be of use +to the wider audience, or if you feel we can improve this section in anyway.

    + +

    +Please note that JNDI resource configuration changed somewhat between +Tomcat 5.0.x and Tomcat 5.5.x. You will most likely need to modify older +JNDI resource configurations to match the syntax in the example below in order +to make them work in Tomcat 6.x.x. +

    + +

    +Also, please note that JNDI DataSource configuration in general, and this +tutorial in particular, assumes that you have read and understood the +Context and +Host configuration references, including +the section about Automatic Application Deployment in the latter reference. +

    +
    Database Connection Pool (DBCP) Configurations
    + +

    DBCP provides support for JDBC 2.0. On systems using a 1.4 JVM DBCP +will support JDBC 3.0. Please let us know if you have used DBCP and its +JDBC 3.0 features with a 1.4 JVM. +

    + +

    See the +DBCP documentation for a complete list of configuration parameters. +

    + +
    Installation
    +

    DBCP uses the Jakarta-Commons Database Connection Pool. It relies on +number of Jakarta-Commons components: +

      +
    • Jakarta-Commons DBCP
    • +
    • Jakarta-Commons Collections
    • +
    • Jakarta-Commons Pool
    • +
    +These libraries are located in a single JAR at +$CATALINA_HOME/lib/tomcat-dbcp.jar. However, +only the classes needed for connection pooling have been included, and the +packages have been renamed to avoid interfering with applications. +

    + +
    + +
    Preventing dB connection pool leaks
    + +

    +A database connection pool creates and manages a pool of connections +to a database. Recycling and reusing already existing connections +to a dB is more efficient than opening a new connection. +

    + +

    +There is one problem with connection pooling. A web application has +to explicetely close ResultSet's, Statement's, and Connection's. +Failure of a web application to close these resources can result in +them never being available again for reuse, a db connection pool "leak". +This can eventually result in your web application db connections failing +if there are no more available connections.

    + +

    +There is a solution to this problem. The Jakarta-Commons DBCP can be +configured to track and recover these abandoned dB connections. Not +only can it recover them, but also generate a stack trace for the code +which opened these resources and never closed them.

    + +

    +To configure a DBCP DataSource so that abandoned dB connections are +removed and recycled add the following attribute to the +Resource configuration for your DBCP DataSource: +

    +            removeAbandoned="true"
    +
    +When available db connections run low DBCP will recover and recyle +any abandoned dB connections it finds. The default is false. +

    + +

    +Use the removeAbandonedTimeout attribute to set the number +of seconds a dB connection has been idle before it is considered abandoned. +

    +            removeAbandonedTimeout="60"
    +
    +The default timeout for removing abandoned connections is 300 seconds. +

    + +

    +The logAbandoned attribute can be set to true +if you want DBCP to log a stack trace of the code which abandoned the +dB connection resources. +

    +            logAbandoned="true"
    +
    +The default is false. +

    + +
    + +
    MySQL DBCP Example
    + +

    0. Introduction

    +

    Versions of MySQL and JDBC drivers that have been reported to work: +

      +
    • MySQL 3.23.47, MySQL 3.23.47 using InnoDB,, MySQL 3.23.58, MySQL 4.0.1alpha
    • +
    • Connector/J 3.0.11-stable (the official JDBC Driver)
    • +
    • mm.mysql 2.0.14 (an old 3rd party JDBC Driver)
    • +
    +

    + +

    Before you proceed, don't forget to copy the JDBC Driver's jar into $CATALINA_HOME/lib.

    + +

    1. MySQL configuration

    +

    +Ensure that you follow these instructions as variations can cause problems. +

    + +

    Create a new test user, a new database and a single test table. +Your MySQL user must have a password assigned. The driver +will fail if you try to connect with an empty password. +

    +mysql> GRANT ALL PRIVILEGES ON *.* TO javauser@localhost 
    +    ->   IDENTIFIED BY 'javadude' WITH GRANT OPTION;
    +mysql> create database javatest;
    +mysql> use javatest;
    +mysql> create table testdata (
    +    ->   id int not null auto_increment primary key,
    +    ->   foo varchar(25), 
    +    ->   bar int);
    +
    +
    +Note: the above user should be removed once testing is +complete! +
    +

    + +

    Next insert some test data into the testdata table. +

    +mysql> insert into testdata values(null, 'hello', 12345);
    +Query OK, 1 row affected (0.00 sec)
    +
    +mysql> select * from testdata;
    ++----+-------+-------+
    +| ID | FOO   | BAR   |
    ++----+-------+-------+
    +|  1 | hello | 12345 |
    ++----+-------+-------+
    +1 row in set (0.00 sec)
    +
    +mysql>
    +
    +

    + +

    2. Context configuration

    +

    Configure the JNDI DataSource in Tomcat by adding a declaration for your +resource to your Context.

    +

    For example: + +

    +<Context path="/DBTest" docBase="DBTest"
    +        debug="5" reloadable="true" crossContext="true">
    +
    +    <!-- maxActive: Maximum number of dB connections in pool. Make sure you
    +         configure your mysqld max_connections large enough to handle
    +         all of your db connections. Set to 0 for no limit.
    +         -->
    +
    +    <!-- maxIdle: Maximum number of idle dB connections to retain in pool.
    +         Set to -1 for no limit.  See also the DBCP documentation on this
    +         and the minEvictableIdleTimeMillis configuration parameter.
    +         -->
    +
    +    <!-- maxWait: Maximum time to wait for a dB connection to become available
    +         in ms, in this example 10 seconds. An Exception is thrown if
    +         this timeout is exceeded.  Set to -1 to wait indefinitely.
    +         -->
    +
    +    <!-- username and password: MySQL dB username and password for dB connections  -->
    +
    +    <!-- driverClassName: Class name for the old mm.mysql JDBC driver is
    +         org.gjt.mm.mysql.Driver - we recommend using Connector/J though.
    +         Class name for the official MySQL Connector/J driver is com.mysql.jdbc.Driver.
    +         -->
    +    
    +    <!-- url: The JDBC connection url for connecting to your MySQL dB.
    +         The autoReconnect=true argument to the url makes sure that the
    +         mm.mysql JDBC Driver will automatically reconnect if mysqld closed the
    +         connection.  mysqld by default closes idle connections after 8 hours.
    +         -->
    +
    +  <Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
    +               maxActive="100" maxIdle="30" maxWait="10000"
    +               username="javauser" password="javadude" driverClassName="com.mysql.jdbc.Driver"
    +               url="jdbc:mysql://localhost:3306/javatest?autoReconnect=true"/>
    +
    +</Context>
    +
    +

    + +

    3. web.xml configuration

    + +

    Now create a WEB-INF/web.xml for this test application. +

    +<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    +    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    +    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    +http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    +    version="2.4">
    +  <description>MySQL Test App</description>
    +  <resource-ref>
    +      <description>DB Connection</description>
    +      <res-ref-name>jdbc/TestDB</res-ref-name>
    +      <res-type>javax.sql.DataSource</res-type>
    +      <res-auth>Container</res-auth>
    +  </resource-ref>
    +</web-app>
    +
    +

    + +

    4. Test code

    +

    Now create a simple test.jsp page for use later. +

    +<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
    +<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    +
    +<sql:query var="rs" dataSource="jdbc/TestDB">
    +select id, foo, bar from testdata
    +</sql:query>
    +
    +<html>
    +  <head>
    +    <title>DB Test</title>
    +  </head>
    +  <body>
    +
    +  <h2>Results</h2>
    +  
    +<c:forEach var="row" items="${rs.rows}">
    +    Foo ${row.foo}<br/>
    +    Bar ${row.bar}<br/>
    +</c:forEach>
    +
    +  </body>
    +</html>
    +
    +

    + +

    That JSP page makes use of JSTL's SQL and Core taglibs. You can get it from Sun's Java Web Services Developer Pack or Jakarta Taglib Standard 1.1 project - just make sure you get a 1.1.x release. Once you have JSTL, copy jstl.jar and standard.jar to your web app's WEB-INF/lib directory. + +

    + +

    Finally deploy your web app into $CATALINA_HOME/webapps either +as a warfile called DBTest.war or into a sub-directory called +DBTest

    +

    Once deployed, point a browser at +http://localhost:8080/DBTest/test.jsp to view the fruits of +your hard work.

    + +
    + +
    Oracle 8i, 9i & 10g
    +

    0. Introduction

    + +

    Oracle requires minimal changes from the MySQL configuration except for the +usual gotchas :-)

    +

    Drivers for older Oracle versions may be distributed as *.zip files rather +than *.jar files. Tomcat will only use *.jar files installed in +$CATALINA_HOME/lib. Therefore classes111.zip +or classes12.zip will need to be renamed with a .jar +extension. Since jarfiles are zipfiles, there is no need to unzip and jar these +files - a simple rename will suffice.

    + +

    For Oracle 9i onwards you should use oracle.jdbc.OracleDriver +rather than oracle.jdbc.driver.OracleDriver as Oracle have stated +that oracle.jdbc.driver.OracleDriver is deprecated and support +for this driver class will be discontinued in the next major release. +

    + +

    1. Context configuration

    +

    In a similar manner to the mysql config above, you will need to define your +Datasource in your Context. Here we define a +Datasource called myoracle using the thin driver to connect as user scott, +password tiger to the sid called mysid. (Note: with the thin driver this sid is +not the same as the tnsname). The schema used will be the default schema for the +user scott.

    + +

    Use of the OCI driver should simply involve a changing thin to oci in the URL string. +

    +<Resource name="jdbc/myoracle" auth="Container"
    +              type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver"
    +              url="jdbc:oracle:thin:@127.0.0.1:1521:mysid"
    +              username="scott" password="tiger" maxActive="20" maxIdle="10"
    +              maxWait="-1"/> 
    +
    +

    + +

    2. web.xml configuration

    +

    You should ensure that you respect the element ordering defined by the DTD when you +create you applications web.xml file.

    +
    +<resource-ref>
    + <description>Oracle Datasource example</description>
    + <res-ref-name>jdbc/myoracle</res-ref-name>
    + <res-type>javax.sql.DataSource</res-type>
    + <res-auth>Container</res-auth>
    +</resource-ref>
    +
    +

    3. Code example

    +

    You can use the same example application as above (asuming you create the required DB +instance, tables etc.) replacing the Datasource code with something like

    +
    +Context initContext = new InitialContext();
    +Context envContext  = (Context)initContext.lookup("java:/comp/env");
    +DataSource ds = (DataSource)envContext.lookup("jdbc/myoracle");
    +Connection conn = ds.getConnection();
    +//etc.
    +
    +
    + + +
    PostgreSQL
    +

    0. Introduction

    +

    PostgreSQL is configured in a similar manner to Oracle.

    + +

    1. Required files

    +

    +Copy the Postgres JDBC jar to $CATALINA_HOME/lib. As with Oracle, the +jars need to be in this directory in order for DBCP's Classloader to find +them. This has to be done regardless of which configuration step you take next. +

    + +

    2. Resource configuration

    + +

    +You have two choices here: define a datasource that is shared across all Tomcat +applications, or define a datasource specifically for one application. +

    + +

    2a. Shared resource configuration

    +

    +Use this option if you wish to define a datasource that is shared across +multiple Tomcat applications, or if you just prefer defining your datasource +in this file. +

    +

    This author has not had success here, although others have reported so. +Clarification would be appreciated here.

    + +
    +<Resource name="jdbc/postgres" auth="Container"
    +          type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"
    +          url="jdbc:postgresql://127.0.0.1:5432/mydb"
    +          username="myuser" password="mypasswd" maxActive="20" maxIdle="10" maxWait="-1"/>
    +
    +

    2b. Application-specific resource configuration

    + +

    +Use this option if you wish to define a datasource specific to your application, +not visible to other Tomcat applications. This method is less invasive to your +Tomcat installation. +

    + +

    +Create a resource definition for your Context. +The Context element should look something like the following. +

    + +
    +<Context path="/someApp" docBase="someApp"
    +   crossContext="true" reloadable="true" debug="1">
    +
    +<Resource name="jdbc/postgres" auth="Container"
    +          type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"
    +          url="jdbc:postgresql://127.0.0.1:5432/mydb"
    +          username="myuser" password="mypasswd" maxActive="20" maxIdle="10"
    +maxWait="-1"/>
    +</Context>
    +
    + +

    3. web.xml configuration

    +
    +<resource-ref>
    + <description>postgreSQL Datasource example</description>
    + <res-ref-name>jdbc/postgres</res-ref-name>
    + <res-type>javax.sql.DataSource</res-type>
    + <res-auth>Container</res-auth>
    +</resource-ref>
    +
    + +

    4. Accessing the datasource

    +

    +When accessing the datasource programmatically, remember to prepend +java:/comp/env to your JNDI lookup, as in the following snippet of +code. Note also that "jdbc/postgres" can be replaced with any value you prefer, provided +you change it in the above resource definition file as well. +

    + +
    +InitialContext cxt = new InitialContext();
    +if ( cxt == null ) {
    +   throw new Exception("Uh oh -- no context!");
    +}
    +
    +DataSource ds = (DataSource) cxt.lookup( "java:/comp/env/jdbc/postgres" );
    +
    +if ( ds == null ) {
    +   throw new Exception("Data source not found!");
    +}
    +
    + +
    +
    Non-DBCP Solutions
    +

    +These solutions either utilise a single connection to the database (not recommended for anything other +than testing!) or some other pooling technology. +

    +
    Oracle 8i with OCI client
    +
    Introduction
    +

    Whilst not strictly addressing the creation of a JNDI DataSource using the OCI client, these notes can be combined with the +Oracle and DBCP solution above.

    +

    +In order to use OCI driver, you should have an Oracle client installed. You should have installed +Oracle8i(8.1.7) client from cd, and download the suitable JDBC/OCI +driver(Oracle8i 8.1.7.1 JDBC/OCI Driver) from otn.oracle.com. +

    +

    +After renaming classes12.zip file to classes12.jar +for Tomcat, copy it into $CATALINA_HOME/lib. +You may also have to remove the javax.sql.* classes +from this file depending upon the version of Tomcat and JDK you are using. +

    +
    + +
    Putting it all together
    +

    +Ensure that you have the ocijdbc8.dll or .so in your $PATH or LD_LIBRARY_PATH + (possibly in $ORAHOME\bin) and also confirm that the native library can be loaded by a simple test program +using System.loadLibrary("ocijdbc8"); +

    +

    +You should next create a simple test servlet or jsp that has these +critical lines: +

    +
    +DriverManager.registerDriver(new
    +oracle.jdbc.driver.OracleDriver());
    +conn =
    +DriverManager.getConnection("jdbc:oracle:oci8:@database","username","password");
    +
    +

    +where database is of the form host:port:SID Now if you try to access the URL of your +test servlet/jsp and what you get is a +ServletException with a root cause of java.lang.UnsatisfiedLinkError:get_env_handle. +

    +

    +First, the UnsatisfiedLinkError indicates that you have +

      +
    • a mismatch between your JDBC classes file and +your Oracle client version. The giveaway here is the message stating that a needed library file cannot be +found. For example, you may be using a classes12.zip file from Oracle Version 8.1.6 with a Version 8.1.5 +Oracle client. The classeXXXs.zip file and Oracle client software versions must match. +
    • +
    • A $PATH, LD_LIBRARY_PATH problem.
    • +
    • It has been reported that ignoring the driver you have downloded from otn and using +the classes12.zip file from the directory $ORAHOME\jdbc\lib will also work. +
    • +
    +

    +

    +Next you may experience the error ORA-06401 NETCMN: invalid driver designator +

    +

    +The Oracle documentation says : "Cause: The login (connect) string contains an invalid +driver designator. Action: Correct the string and re-submit." + +Change the database connect string (of the form host:port:SID) with this one: +(description=(address=(host=myhost)(protocol=tcp)(port=1521))(connect_data=(sid=orcl))) +

    +

    +Ed. Hmm, I don't think this is really needed if you sort out your TNSNames - but I'm not an Oracle DBA :-) +

    +
    +
    Common Problems
    +

    Here are some common problems encountered with a web application which +uses a database and tips for how to solve them.

    + +
    Intermittent dB Connection Failures
    +

    +Tomcat runs within a JVM. The JVM periodically performs garbage collection +(GC) to remove java objects which are no longer being used. When the JVM +performs GC execution of code within Tomcat freezes. If the maximum time +configured for establishment of a dB connection is less than the amount +of time garbage collection took you can get a db conneciton failure. +

    + +

    To collect data on how long garbage collection is taking add the +-verbose:gc argument to your CATALINA_OPTS +environment variable when starting Tomcat. When verbose gc is enabled +your $CATALINA_BASE/logs/catalina.out log file will include +data for every garbage collection including how long it took.

    + +

    When your JVM is tuned correctly 99% of the time a GC will take less +than one second. The remainder will only take a few seconds. Rarely, +if ever should a GC take more than 10 seconds.

    + +

    Make sure that the db connection timeout is set to 10-15 seconds. +For the DBCP you set this using the parameter maxWait.

    + +
    + +
    Random Connection Closed Exceptions
    +

    +These can occur when one request gets a db connection from the connection +pool and closes it twice. When using a connection pool, closing the +connection just returns it to the pool for reuse by another request, +it doesn't close the connection. And Tomcat uses multiple threads to +handle concurrent requests. Here is an example of the sequence +of events which could cause this error in Tomcat: +

    +  Request 1 running in Thread 1 gets a db connection.
    +
    +  Request 1 closes the db connection.
    +
    +  The JVM switches the running thread to Thread 2
    +
    +  Request 2 running in Thread 2 gets a db connection
    +  (the same db connection just closed by Request 1).
    +
    +  The JVM switches the running thread back to Thread 1
    +
    +  Request 1 closes the db connection a second time in a finally block.
    +
    +  The JVM switches the running thread back to Thread 2
    +
    +  Request 2 Thread 2 tries to use the db connection but fails
    +  because Request 1 closed it.
    +
    +Here is an example of properly written code to use a db connection +obtained from a connection pool: +
    +  Connection conn = null;
    +  Statement stmt = null;  // Or PreparedStatement if needed
    +  ResultSet rs = null;
    +  try {
    +    conn = ... get connection from connection pool ...
    +    stmt = conn.createStatement("select ...");
    +    rs = stmt.executeQuery();
    +    ... iterate through the result set ...
    +    rs.close();
    +    rs = null;
    +    stmt.close();
    +    stmt = null;
    +    conn.close(); // Return to connection pool
    +    conn = null;  // Make sure we don't close it twice
    +  } catch (SQLException e) {
    +    ... deal with errors ...
    +  } finally {
    +    // Always make sure result sets and statements are closed,
    +    // and the connection is returned to the pool
    +    if (rs != null) {
    +      try { rs.close(); } catch (SQLException e) { ; }
    +      rs = null;
    +    }
    +    if (stmt != null) {
    +      try { stmt.close(); } catch (SQLException e) { ; }
    +      stmt = null;
    +    }
    +    if (conn != null) {
    +      try { conn.close(); } catch (SQLException e) { ; }
    +      conn = null;
    +    }
    +  }
    +
    +

    + +
    + +
    Context versus GlobalNamingResources
    +

    + Please note that although the above instructions place the JNDI declarations in a Context + element, it is possible and sometimes desirable to place these declarations in the + GlobalNamingResources section of the server + configuration file. A resource placed in the GlobalNamingResources section will be shared + among the Contexts of the server. +

    +
    + +
    JNDI Resource Naming and Realm Interaction
    +

    + In order to get Realms to work, the realm must refer to the datasource as + defined in the <GlobalNamingResources> or <Context> section, not a datasource as renamed + using <ResourceLink>. +

    +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/jndi-resources-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/jndi-resources-howto.html new file mode 100644 index 0000000..0ef5bc0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/jndi-resources-howto.html @@ -0,0 +1,737 @@ +Apache Tomcat 6.0 - JNDI Resources HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    JNDI Resources HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    Tomcat 6 provides a JNDI InitialContext implementation +instance for each web application running under it, in a manner that is +compatible with those provided by a +Java2 Enterprise Edition application +server. + +The J2EE standard provides a standard set of elements in +the /WEB-INF/web.xml file to reference resources; resources +referenced in these elements must be defined in an application-server-specific configuration. +

    + +

    For Tomcat 6, these entries in per-web-application +InitialContext are configured in the +<Context> elements that can be specified +in either $CATALINA_HOME/conf/server.xml or, preferably, +the per-web-application context XML file (either META-INF/context.xml). +

    + +

    Tomcat 6 maintains a separate namespace of global resources for the +entire server. These are configured in the + +<GlobalNameingResources> element of +$CATALINA_HOME/conf/server.xml. You may expose these resources to +web applications by using +<ResourceLink> elements. +

    + +

    The resources defined in these elements +may be referenced by the following elements in the web application deployment +descriptor (/WEB-INF/web.xml) of your web application:

    +
      +
    • <env-entry> - Environment entry, a + single-value parameter that can be used to configure how the application + will operate.
    • +
    • <resource-ref> - Resource reference, + which is typically to an object factory for resources such as a JDBC + DataSource, a JavaMail Session, or custom + object factories configured into Tomcat 6.
    • +
    • <resource-env-ref> - Resource + environment reference, a new variation of resource-ref + added in Servlet 2.4 that is simpler to configure for resources + that do not require authentication information.
    • +
    + +

    The InitialContext is configured as a web application is +initially deployed, and is made available to web application components (for +read-only access). All configured entries and resources are placed in +the java:comp/env portion of the JNDI namespace, so a typical +access to a resource - in this case, to a JDBC DataSource - +would look something like this:

    + +
    +// Obtain our environment naming context
    +Context initCtx = new InitialContext();
    +Context envCtx = (Context) initCtx.lookup("java:comp/env");
    +
    +// Look up our data source
    +DataSource ds = (DataSource)
    +  envCtx.lookup("jdbc/EmployeeDB");
    +
    +// Allocate and use a connection from the pool
    +Connection conn = ds.getConnection();
    +... use this connection to access the database ...
    +conn.close();
    +
    + +

    See the following Specifications for more information about programming APIs +for JNDI, and for the features supported by Java2 Enterprise Edition (J2EE) +servers, which Tomcat emulates for the services that it provides:

    + + +
    Configuring JNDI Resources
    + +

    Each available JNDI Resource is configured based on inclusion of the +following elements in the <Context> or +<DefaultContext> elements:

    + +
      +
    • <Environment> - + Configure names and values for scalar environment entries that will be + exposed to the web application through the JNDI + InitialContext (equivalent to the inclusion of an + <env-entry> element in the web application + deployment descriptor).
    • +
    • <Resource> - + Configure the name and data type of a resource made available to the + application (equivalent to the inclusion of a + <resource-ref> element in the web application + deployment descriptor).
    • +
    • <ResourceLink> - + Add a link to a resource defined in the global JNDI context. Use resource + links to give a web application access to a resource defined in + the<GlobalNamingResources> + child element of the <Server> + element.
    • +
    • <Transaction> - + Add a resource factory for instantiating the UserTransaction object + instance that is available at java:comp/UserTransaction.
    • + +
    + +

    Any number of these elements may be nested inside a +<Context> element (to be associated +only with that particular web application).

    + +

    In addition, the names and values of all <env-entry> +elements included in the web application deployment descriptor +(/WEB-INF/web.xml) are configured into the initial context as +well, overriding corresponding values from conf/server.xml +only if allowed by the corresponding +<Environment> element (by setting the +override attribute to "true").

    + +

    Global resources can be defined in the server-wide JNDI context, by adding +the resource elements described above to the +<GlobalNamingResources> +child element of the <Server> +element and using a +<ResourceLink> to +include it in the per-web-application context.

    + +
    Tomcat Standard Resource Factories
    + +

    Tomcat 6 includes a series of standard resource factories that can + provide services to your web applications, but give you configuration + flexibility (in $CATALINA_HOME/conf/server.xml) without + modifying the web application or the deployment descriptor. Each + subsection below details the configuration and usage of the standard + resource factories.

    + +

    See Adding Custom + Resource Factories for information about how to create, install, + configure, and use your own custom resource factory classes with + Tomcat 6.

    + +

    NOTE - Of the standard resource factories, only the + "JDBC Data Source" and "User Transaction" factories are mandated to + be available on other platforms, and then they are required only if + the platform implements the Java2 Enterprise Edition (J2EE) specs. + All other standard resource factories, plus custom resource factories + that you write yourself, are specific to Tomcat and cannot be assumed + to be available on other containers.

    + +
    Generic JavaBean Resources
    + +

    0. Introduction

    + +

    This resource factory can be used to create objects of any + Java class that conforms to standard JavaBeans naming conventions (i.e. + it has a zero-arguments constructor, and has property setters that + conform to the setFoo() naming pattern. The resource factory will + create a new instance of the appropriate bean class every time a + lookup() for this entry is made.

    + +

    The steps required to use this facility are described below.

    + +

    1. Create Your JavaBean Class

    + +

    Create the JavaBean class which will be instantiated each time + that the resource factory is looked up. For this example, assume + you create a class com.mycompany.MyBean, which looks + like this:

    + +
    +package com.mycompany;
    +
    +public class MyBean {
    +
    +  private String foo = "Default Foo";
    +
    +  public String getFoo() {
    +    return (this.foo);
    +  }
    +
    +  public void setFoo(String foo) {
    +    this.foo = foo;
    +  }
    +
    +  private int bar = 0;
    +
    +  public int getBar() {
    +    return (this.bar);
    +  }
    +
    +  public void setBar(int bar) {
    +    this.bar = bar;
    +  }
    +
    +
    +}
    +
    + +

    2. Declare Your Resource Requirements

    + +

    Next, modify your web application deployment descriptor + (/WEB-INF/web.xml) to declare the JNDI name under which + you will request new instances of this bean. The simplest approach is + to use a <resource-env-ref> element, like this:

    + +
    +<resource-env-ref>
    +  <description>
    +    Object factory for MyBean instances.
    +  </description>
    +  <resource-env-ref-name>
    +    bean/MyBeanFactory
    +  </resource-env-ref-name>
    +  <resource-env-ref-type>
    +    com.mycompany.MyBean
    +  </resource-env-ref-type>
    +</resource-env-ref>
    +
    + +

    WARNING - Be sure you respect the element ordering + that is required by the DTD for web application deployment descriptors! + See the + Servlet + Specification for details.

    + +

    3. Code Your Application's Use Of This Resource

    + +

    A typical use of this resource environment reference might look + like this:

    + +
    +Context initCtx = new InitialContext();
    +Context envCtx = (Context) initCtx.lookup("java:comp/env");
    +MyBean bean = (MyBean) envCtx.lookup("bean/MyBeanFactory");
    +
    +writer.println("foo = " + bean.getFoo() + ", bar = " +
    +               bean.getBar());
    +
    + +

    4. Configure Tomcat's Resource Factory

    + +

    To configure Tomcat's resource factory, add an elements like this to the + $CATALINA_HOME/conf/server.xml file, nested inside the + Context element for this web application.

    +
    +<Context ...>
    +  ...
    +  <Resource name="bean/MyBeanFactory" auth="Container"
    +            type="com.mycompany.MyBean"
    +            factory="org.apache.naming.factory.BeanFactory"
    +            bar="23"/>
    +  ...
    +</Context>
    +
    + +

    Note that the resource name (here, bean/MyBeanFactory + must match the value specified in the web application deployment + descriptor. We are also initializing the value of the bar + property, which will cause setBar(23) to be called before + the new bean is returned. Because we are not initializing the + foo property (although we could have), the bean will + contain whatever default value is set up by its constructor.

    + +
    + + +
    JavaMail Sessions
    + +

    0. Introduction

    + +

    In many web applications, sending electronic mail messages is a + required part of the system's functionality. The + Java Mail API + makes this process relatively straightforward, but requires many + configuration details that the client application must be aware of + (including the name of the SMTP host to be used for message sending).

    + +

    Tomcat 6 includes a standard resource factory that will create + javax.mail.Session session instances for you, already + connected to the SMTP server that is configured in server.xml. + In this way, the application is totally insulated from changes in the + email server configuration environment - it simply asks for, and receives, + a preconfigured session whenever needed.

    + +

    The steps required for this are outlined below.

    + +

    1. Declare Your Resource Requirements

    + +

    The first thing you should do is modify the web application deployment + descriptor (/WEB-INF/web.xml) to declare the JNDI name under + which you will look up preconfigured sessions. By convention, all such + names should resolve to the mail subcontext (relative to the + standard java:comp/env naming context that is the root of + all provided resource factories. A typical web.xml entry + might look like this:

    +
    +<resource-ref>
    +  <description>
    +    Resource reference to a factory for javax.mail.Session
    +    instances that may be used for sending electronic mail
    +    messages, preconfigured to connect to the appropriate
    +    SMTP server.
    +  </description>
    +  <res-ref-name>
    +    mail/Session
    +  </res-ref-name>
    +  <res-type>
    +    javax.mail.Session
    +  </res-type>
    +  <res-auth>
    +    Container
    +  </res-auth>
    +</resource-ref>
    +
    + +

    WARNING - Be sure you respect the element ordering + that is required by the DTD for web application deployment descriptors! + See the + Servlet + Specification for details.

    + +

    2. Code Your Application's Use Of This Resource

    + +

    A typical use of this resource reference might look like this:

    +
    +Context initCtx = new InitialContext();
    +Context envCtx = (Context) initCtx.lookup("java:comp/env");
    +Session session = (Session) envCtx.lookup("mail/Session");
    +
    +Message message = new MimeMessage(session);
    +message.setFrom(new InternetAddress(request.getParameter("from"));
    +InternetAddress to[] = new InternetAddress[1];
    +to[0] = new InternetAddress(request.getParameter("to"));
    +message.setRecipients(Message.RecipientType.TO, to);
    +message.setSubject(request.getParameter("subject"));
    +message.setContent(request.getParameter("content"), "text/plain");
    +Transport.send(message);
    +
    + +

    Note that the application uses the same resource reference name + that was declared in the web application deployment descriptor. This + is matched up against the resource factory that is configured in + $CATALINA_HOME/conf/server.xml, as described below.

    + +

    3. Configure Tomcat's Resource Factory

    + +

    To configure Tomcat's resource factory, add an elements like this to the + $CATALINA_HOME/conf/server.xml file, nested inside the + Context element for this web application.

    +
    +<Context ...>
    +  ...
    +  <Resource name="mail/Session" auth="Container"
    +            type="javax.mail.Session"
    +            mail.smtp.host="localhost"/>
    +  ...
    +</Context>
    +
    + +

    Note that the resource name (here, mail/Session) must + match the value specified in the web application deployment descriptor. + Customize the value of the mail.smtp.host parameter to + point at the server that provides SMTP service for your network.

    + +

    4. Install the JavaMail libraries

    + +

    + Download the JavaMail API. The JavaMail API requires the Java Activation + Framework (JAF) API as well. The Java Activation Framework can be downloaded + from Sun's site. +

    + +

    This download includes 2 vital libraries for the configuration; + activation.jar and mail.jar. Unpackage both distributions and place + them into $CATALINA_HOME/lib so that they are available to + Tomcat during the initialization of the mail Session Resource. + Note: placing these jars in both common/lib and a + web application's lib folder will cause an error, so ensure you have + them in the $CATALINA_HOME/lib location only. +

    + +

    Example Application

    + +

    The /examples application included with Tomcat contains + an example of utilizing this resource factory. It is accessed via the + "JSP Examples" link. The source code for the servlet that actually + sends the mail message is in + /WEB-INF/classes/SendMailServlet.java.

    + +

    WARNING - The default configuration assumes that + there is an SMTP server listing on port 25 on localhost. + If this is not the case, edit the + $CATALINA_HOME/conf/server.xml file, and modify the + parameter value for the mail.smtp.host parameter to be + the host name of an SMTP server on your network.

    + +
    + +
    JDBC Data Sources
    + +

    0. Introduction

    + +

    Many web applications need to access a database via a JDBC driver, + to support the functionality required by that application. The J2EE + Platform Specification requires J2EE Application Servers to make + available a DataSource implementation (that is, a connection + pool for JDBC connections) for this purpose. Tomcat 6 offers exactly + the same support, so that database-based applications you develop on + Tomcat using this service will run unchanged on any J2EE server.

    + +

    For information about JDBC, you should consult the following:

    + + +

    NOTE - The default data source support in Tomcat + is based on the DBCP connection pool from the + Jakarta Commons + subproject. However, it is possible to use any other connection pool + that implements javax.sql.DataSource, by writing your + own custom resource factory, as described + below.

    + +

    1. Install Your JDBC Driver

    + +

    Use of the JDBC Data Sources JNDI Resource Factory requires + that you make an appropriate JDBC driver available to both Tomcat internal + classes and to your web application. This is most easily accomplished by + installing the driver's JAR file(s) into the + $CATALINA_HOME/lib directory, which makes the driver + available both to the resource factory and to your application.

    + +

    2. Declare Your Resource Requirements

    + +

    Next, modify the web application deployment descriptor + (/WEB-INF/web.xml) to declare the JNDI name under + which you will look up preconfigured data source. By convention, all such + names should resolve to the jdbc subcontext (relative to the + standard java:comp/env naming context that is the root of + all provided resource factories. A typical web.xml entry + might look like this:

    +
    +<resource-ref>
    +  <description>
    +    Resource reference to a factory for java.sql.Connection
    +    instances that may be used for talking to a particular
    +    database that is configured in the server.xml file.
    +  </description>
    +  <res-ref-name>
    +    jdbc/EmployeeDB
    +  </res-ref-name>
    +  <res-type>
    +    javax.sql.DataSource
    +  </res-type>
    +  <res-auth>
    +    Container
    +  </res-auth>
    +</resource-ref>
    +
    + +

    WARNING - Be sure you respect the element ordering + that is required by the DTD for web application deployment descriptors! + See the + Servlet + Specification for details.

    + +

    3. Code Your Application's Use Of This Resource

    + +

    A typical use of this resource reference might look like this:

    +
    +Context initCtx = new InitialContext();
    +Context envCtx = (Context) initCtx.lookup("java:comp/env");
    +DataSource ds = (DataSource)
    +  envCtx.lookup("jdbc/EmployeeDB");
    +
    +Connection conn = ds.getConnection();
    +... use this connection to access the database ...
    +conn.close();
    +
    + +

    Note that the application uses the same resource reference name + that was declared in the web application deployment descriptor. This + is matched up against the resource factory that is configured in + $CATALINA_HOME/conf/server.xml, as described below.

    + +

    4. Configure Tomcat's Resource Factory

    + +

    To configure Tomcat's resource factory, add an element like this to the + /META-INF/context.xml file in the web application.

    +
    +<Context ...>
    +  ...
    +  <Resource name="jdbc/EmployeeDB" auth="Container"
    +            type="javax.sql.DataSource" username="dbusername" password="dbpassword"
    +            driverClassName="org.hsql.jdbcDriver" url="jdbc:HypersonicSQL:database"
    +            maxActive="8" maxIdle="4"/>
    +  ...
    +</Context>
    +
    + +

    Note that the resource name (here, jdbc/EmployeeDB) must + match the value specified in the web application deployment descriptor.

    + +

    This example assumes that you are using the HypersonicSQL database + JDBC driver. Customize the driverClassName and + driverName parameters to match your actual database's + JDBC driver and connection URL.

    + +

    The configuration properties for Tomcat's standard data source + resource factory + (org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory) are + as follows:

    +
      +
    • driverClassName - Fully qualified Java class name + of the JDBC driver to be used.
    • +
    • maxActive - The maximum number of active instances + that can be allocated from this pool at the same time.
    • +
    • maxIdle - The maximum number of connections that + can sit idle in this pool at the same time.
    • +
    • maxWait - The maximum number of milliseconds that the + pool will wait (when there are no available connections) for a + connection to be returned before throwing an exception.
    • +
    • password - Database password to be passed to our + JDBC driver.
    • +
    • url - Connection URL to be passed to our JDBC driver. + (For backwards compatibility, the property driverName + is also recognized.)
    • +
    • user - Database username to be passed to our + JDBC driver.
    • +
    • validationQuery - SQL query that can be used by the + pool to validate connections before they are returned to the + application. If specified, this query MUST be an SQL SELECT + statement that returns at least one row.
    • +
    +

    For more details, please refer to the commons-dbcp documentation.

    + +
    + +
    Adding Custom Resource Factories
    + +

    If none of the standard resource factories meet your needs, you can + write your own factory and integrate it into Tomcat 6, and then configure + the use of this factory in the conf/server.xml configuration + file. In the example below, we will create a factory that only knows how + to create com.mycompany.MyBean beans, from the + Generic JavaBean Resources + example, above.

    + +

    1. Write A Resource Factory Class

    + +

    You must write a class that implements the JNDI service provider + javax.naming.spi.ObjectFactory inteface. Every time your + web application calls lookup() on a context entry that is + bound to this factory, the getObjectInstance() method is + called, with the following arguments:

    +
      +
    • Object obj - The (possibly null) object containing + location or reference information that can be used in creating an + object. For Tomcat, this will always be an object of type + javax.naming.Reference, which contains the class name + of this factory class, as well as the configuration properties + (from conf/server.xml) to use in creating objects + to be returned.
    • +
    • Name name - The name to which this factory is bound + relative to nameCtx, or null if no name + is specified.
    • +
    • Context nameCtx - The context relative to which the + name parameter is specified, or null if + name is relative to the default initial context.
    • +
    • Hashtable environment - The (possibly null) + environment that is used in creating this object. This is generally + ignored in Tomcat object factories.
    • +
    + +

    To create a resource factory that knows how to produce MyBean + instances, you might create a class like this:

    + +
    +package com.mycompany;
    +
    +import java.util.Enumeration;
    +import java.util.Hashtable;
    +import javax.naming.Context;
    +import javax.naming.Name;
    +import javax.naming.NamingException;
    +import javax.naming.RefAddr;
    +import javax.naming.Reference;
    +import javax.naming.spi.ObjectFactory;
    +
    +public class MyBeanFactory implements ObjectFactory {
    +
    +  public Object getObjectInstance(Object obj,
    +      Name name, Context nameCtx, Hashtable environment)
    +      throws NamingException {
    +
    +      // Acquire an instance of our specified bean class
    +      MyBean bean = new MyBean();
    +
    +      // Customize the bean properties from our attributes
    +      Reference ref = (Reference) obj;
    +      Enumeration addrs = ref.getAll();
    +      while (addrs.hasMoreElements()) {
    +          RefAddr addr = (RefAddr) addrs.nextElement();
    +          String name = addr.getType();
    +          String value = (String) addr.getContent();
    +          if (name.equals("foo")) {
    +              bean.setFoo(value);
    +          } else if (name.equals("bar")) {
    +              try {
    +                  bean.setBar(Integer.parseInt(value));
    +              } catch (NumberFormatException e) {
    +                  throw new NamingException("Invalid 'bar' value " + value);
    +              }
    +          }
    +      }
    +
    +      // Return the customized instance
    +      return (bean);
    +
    +  }
    +
    +}
    +
    + +

    In this example, we are unconditionally creating a new instance of + the com.mycompany.MyBean class, and populating its properties + based on the parameters included in the <ResourceParams> + element that configures this factory (see below). You should note that any + parameter named factory should be skipped - that parameter is + used to specify the name of the factory class itself (in this case, + com.mycompany.MyBeanFactory) rather than a property of the + bean being configured.

    + +

    For more information about ObjectFactory, see the + JNDI 1.2 Service + Provider Interface (SPI) Specification.

    + +

    You will need to compile this class against a class path that includes + all of the JAR files in the $CATALINA_HOME/lib directory. When you are through, + place the factory class (and the corresponding bean class) unpacked under + $CATALINA_HOME/lib, or in a JAR file inside + $CATALINA_HOME/lib. In this way, the required class + files are visible to both Catalina internal resources and your web + application.

    + +

    2. Declare Your Resource Requirements

    + +

    Next, modify your web application deployment descriptor + (/WEB-INF/web.xml) to declare the JNDI name under which + you will request new instances of this bean. The simplest approach is + to use a <resource-env-ref> element, like this:

    + +
    +<resource-env-ref>
    +  <description>
    +    Object factory for MyBean instances.
    +  </description>
    +  <resource-env-ref-name>
    +    bean/MyBeanFactory
    +  </resource-env-ref-name>
    +  <resource-env-ref-type>
    +    com.mycompany.MyBean
    +  </resource-env-ref-type>
    +<resource-env-ref>
    +
    + +

    WARNING - Be sure you respect the element ordering + that is required by the DTD for web application deployment descriptors! + See the + Servlet + Specification for details.

    + +

    3. Code Your Application's Use Of This Resource

    + +

    A typical use of this resource environment reference might look + like this:

    + +
    +Context initCtx = new InitialContext();
    +Context envCtx = (Context) initCtx.lookup("java:comp/env");
    +MyBean bean = (MyBean) envCtx.lookup("bean/MyBeanFactory");
    +
    +writer.println("foo = " + bean.getFoo() + ", bar = " +
    +               bean.getBar());
    +
    + +

    4. Configure Tomcat's Resource Factory

    + +

    To configure Tomcat's resource factory, add an elements like this to the + $CATALINA_HOME/conf/server.xml file, nested inside the + Context element for this web application.

    +
    +<Context ...>
    +  ...
    +  <Resource name="bean/MyBeanFactory" auth="Container"
    +            type="com.mycompany.MyBean"
    +            factory="com.mycompany.MyBeanFactory"
    +            bar="23"/>
    +  ...
    +</Context>
    +
    + +

    Note that the resource name (here, bean/MyBeanFactory + must match the value specified in the web application deployment + descriptor. We are also initializing the value of the bar + property, which will cause setBar(23) to be called before + the new bean is returned. Because we are not initializing the + foo property (although we could have), the bean will + contain whatever default value is set up by its constructor.

    + +

    You will also note that, from the application developer's perspective, + the declaration of the resource environment reference, and the programming + used to request new instances, is identical to the approach used for the + Generic JavaBean Resources example. This illustrates one of the + advantages of using JNDI resources to encapsulate functionality - you can + change the underlying implementation without necessarily having to + modify applications using the resources, as long as you maintain + compatible APIs.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/logging.html b/P51/apache-tomcat-6.0.14/webapps/docs/logging.html new file mode 100644 index 0000000..4770eed --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/logging.html @@ -0,0 +1,262 @@ +Apache Tomcat 6.0 - Logging in Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Logging in Tomcat

    Printer Friendly Version
    print-friendly
    version +
    Important note
    +

    + By default, only java.util.logging is available for the core Tomcat, as Tomcat uses + a package renamed logging implementation which is hardcoded for that logger. Usage of + alternate loggers is available after building the extra components (see + the extras components documentation), which includes + a full commons-logging implementation. +

    +
    Introduction
    +

    + Tomcat 6.0 uses + Commons Logging + throughout its internal code allowing the + developer to choose a logging configuration that suits their needs, e.g + java.util.logging or + Log4J. + Commons Logging provides Tomcat the ability to log + hierarchially across various log levels without needing to rely on a particular + logging implementation. +

    +

    + An important consequence for Tomcat 6.0 is that the <Logger> element found in + previous versions to create a localhost_log is no longer a valid nested element + of <Context>. Instead, the default Tomcat configuration will use java.util.logging. + If the developer wishes to collect detailed internal Tomcat logging (i.e what is happening + within the Tomcat engine), then they should configure a logging system such as java.util.logging + or log4j as detailed next. +

    + +
    log4j
    +

    + Tomcat 6.0 has done away with localhost_log which you may be familiar with + as the runtime exception/stack trace log. These types of error are usually thrown + by uncaught exceptions, but are still valuable to the developer. They can now be + found in the stdout log. +

    + +

    + If you need to setup cross-context detailed logging from within Tomcat's code, + then you can use a simple log4j configuration. Note that this logging van be very + verbose depending on the log level you chose to use. Note also that a log4j logging + configuration is not going to produce stack trace type logging: those stack traces + are output to stdout as discussed above. +

    + +

    + Follow the following steps to setup a file named tomcat.log that has internal + Tomcat logging output to it: +

    + +

    +

      +
    1. Create a file called log4j.properties with the following content + and save it into $CATALINA_HOME/lib. +
      +            log4j.rootLogger=debug, R 
      +            log4j.appender.R=org.apache.log4j.RollingFileAppender 
      +            log4j.appender.R.File=${catalina.home}/logs/tomcat.log 
      +            log4j.appender.R.MaxFileSize=10MB 
      +            log4j.appender.R.MaxBackupIndex=10 
      +            log4j.appender.R.layout=org.apache.log4j.PatternLayout 
      +            log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n 
      +            log4j.logger.org.apache.catalina=DEBUG, R
      +          
      +
    2. + +
    3. Download Log4J + (v1.2 or later) and place the log4j jar in $CATALINA_HOME/lib.
    4. + +
    5. Build the commons-logging additional component using the extras.xml + Ant build script which is part of teh Tomcat source bundle.
    6. + +
    7. Replace $CATALINA_HOME/bin/tomcat-juli.jar with + output/extras/tomcat-juli.jar.
    8. + +
    9. Place output/extras/tomcat-juli-adapters.jar in + $CATALINA_HOME/lib.
    10. + +
    11. Start Tomcat
    12. +
    +

    + +

    + This log4j configuration sets up a file called tomcat.log in your + Tomcat logs folder with a maximum file size of 10MB and + up to 10 backups. DEBUG level is specified which will result in the + most verbose output from Tomcat. +

    + +

    + You can (and should) be more picky about which packages to include + in the logging. Tomcat 6 uses defines loggers by Engine and Host names. + For example, for a default Catalina localhost log, add this to the + end of the log4j.properties above. Note that there are known issues with + using this naming convention (with square brackets) in log4j XML based + configuration files, so we recommend you use a properties file as described + until a future version of log4j allows this convention. + +

      +
    • log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=DEBUG, R
    • +
    • log4j.logger.org.apache.catalina.core=DEBUG, R
    • +
    • log4j.logger.org.apache.catalina.session=DEBUG, R
    • +
    + + Be warned a level of DEBUG will produce megabytes of logging and slow startup + of Tomcat. This level should be used sparingly when debugging of internal Tomcat + operations is required. +

    + +

    + Your web applications should certainly use their own log4j configuration. + This is valid with the above configuration. You would place a similar log4j.properties + file in your web application's WEB-INF/classes folder, and log4j1.2.8.jar into + WEB-INF/lib. Then specify your package level logging. This is a basic setup of log4j + which does *not* require Commons-Logging, + and you should consult the + log4j documentation + for more options. This page is intended only as a bootstrapping guide. +

    + +
    java.util.logging
    + +

    + The default implemenatation of java.util.logging provided in the JDK is too limited to be + useful. A limitation of JDK Logging appears to be the inability to have per-web application logging, + as the configuration is per-VM. As a result, Tomcat will, in the default configuration, + replace the default LogManager implementation with a container friendly implementation + called JULI, which addresses these shortcomings. It supports the same configuration mechanisms + as the standard JDK java.util.logging, using either a programmatic approach, or properties + files. The main difference is that per-classloader properties files can be set (which enables easy + redeployment friendly webapp configuration), and the properties files support slightly extended + constructs which allows more freedom for defining handlers and assigning them to loggers. +

    +

    + JULI is enabled by default in Tomcat 6.0, and supports per classloader configuration, in addition to + the regular global java.util.logging configuration. This means that logging can be configured at + the following layers: +

      +
    • In the JDK's logging.properties file. Check + your JAVA_HOME environment setting to see which JDK Tomcat is using. The file will be in + $JAVA_HOME/jre/lib. + Alternately, it can also use a global configuration file located elsewhere by using the + system property java.util.logging.config.file, or programmatic configuration using + java.util.logging.config.class.
    • +
    • In each classloader using a logging.properties file. This means that it is possible to have a + configuration for the Tomcat core, as well as separate configurations for each webapps which will + have the same lifecycle as the webapps.
    • +
    +

    +

    + The default logging.properties specifies a ConsoleHandler for routing logging to stdout and + also a FileHandler. A handler's log level threshold can be set using SEVERE, WARNING, INFO, + CONFIG, FINE, FINER, FINEST or ALL. The logging.properties shipped with JDK is set to INFO. You + can also target specific packages to collect logging from and specify a level. Here is how + you would set debugging from Tomcat. You would need to ensure the ConsoleHandler's level is also + set to collect this threshold, so FINEST or ALL should be set. Please refer to Sun's java.util.logging + documentation for the complete details. +

    +

    +

    org.apache.catalina.level=FINEST
    +

    +

    + The configuration used by JULI is extremely similar, but uses a few extensions to allow better + flexibility in assigning loggers. The main differences are: +

      +
    • A prefix may be added to handler names, so that multiple handlers of a single class may be + instantiated. A prefix is a String which starts with a digit, and ends with '.'. For example, + 22foobar. is a valid prefix.
    • +
    • As in Java 5.0, loggers can define a list of handlers using the loggerName.handlers + property.
    • +
    • By default, loggers will not delegate to their parent if they have associated handlers. This + may be changed per logger using the loggerName.useParentHandlers property, which accepts + a boolean value.
    • +
    • The root logger can define its set of handlers using a .handlers property.
    • +
    • System property replacement for property values which start with ${sytstemPropertyName}.
    • +
    +

    +

    + Example logging.properties file to be placed in common/classes: +

    +handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, \
    +           3manager.org.apache.juli.FileHandler, 4admin.org.apache.juli.FileHandler, \
    +           java.util.logging.ConsoleHandler
    +
    +.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
    +
    +############################################################
    +# Handler specific properties.
    +# Describes specific configuration info for Handlers.
    +############################################################
    +
    +1catalina.org.apache.juli.FileHandler.level = FINE
    +1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
    +1catalina.org.apache.juli.FileHandler.prefix = catalina.
    +
    +2localhost.org.apache.juli.FileHandler.level = FINE
    +2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
    +2localhost.org.apache.juli.FileHandler.prefix = localhost.
    +
    +3manager.org.apache.juli.FileHandler.level = FINE
    +3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
    +3manager.org.apache.juli.FileHandler.prefix = manager.
    +
    +4admin.org.apache.juli.FileHandler.level = FINE
    +4admin.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
    +4admin.org.apache.juli.FileHandler.prefix = admin.
    +
    +java.util.logging.ConsoleHandler.level = FINE
    +java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
    +
    +
    +############################################################
    +# Facility specific properties.
    +# Provides extra control for each logger.
    +############################################################
    +
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = \
    +   2localhost.org.apache.juli.FileHandler
    +
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = \
    +   3manager.org.apache.juli.FileHandler
    +
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/admin].level = INFO
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/admin].handlers = \
    +   4admin.org.apache.juli.FileHandler
    +
    +# For example, set the com.xyz.foo logger to only log SEVERE
    +# messages:
    +#org.apache.catalina.startup.ContextConfig.level = FINE
    +#org.apache.catalina.startup.HostConfig.level = FINE
    +#org.apache.catalina.session.ManagerBase.level = FINE
    +    
    +

    + +

    + Example logging.properties for the servlet-examples web application to be placed + in WEB-INF/classes inside the web application: +

    +handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
    +
    +############################################################
    +# Handler specific properties.
    +# Describes specific configuration info for Handlers.
    +############################################################
    +
    +org.apache.juli.FileHandler.level = FINE
    +org.apache.juli.FileHandler.directory = ${catalina.base}/logs
    +org.apache.juli.FileHandler.prefix = servlet-examples.
    +
    +java.util.logging.ConsoleHandler.level = FINE
    +java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
    +      
    +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/manager-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/manager-howto.html new file mode 100644 index 0000000..1b5b8c0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/manager-howto.html @@ -0,0 +1,1238 @@ +Apache Tomcat 6.0 - Manager App HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Manager App HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    Table of Contents
    + +

    +Introduction
    + +Configuring Manager Application Access
    +Supported Manager Commands
    +

    +Deploy A New Application Remotely
    +Deploy A New Application from a Local Path
    + +List Currently Deployed Applications
    +Reload An Existing Application
    +List OS and JVM Properties
    + +List Available Global JNDI Resources
    +List Available Security Roles
    +Session Statistics
    +Start an Existing Application
    +Stop an Existing Application
    + +Undeploy an Existing Application
    +
    + +Executing Manager Commands With Ant
    + +Using the JMX Proxy Servlet
    +
    +What is JMX Proxy Servlet?
    +Query command
    +Set command
    +
    +

    + +
    Introduction
    + +

    In many production environments, it is very useful to have the capability +to deploy a new web application, or undeploy an existing one, without having +to shut down and restart the entire container. In addition, you can request +an existing application to reload itself, even if you have not declared it +to be reloadable in the Tomcat 6 server +configuration file.

    + +

    To support these capabilities, Tomcat 6 includes a web application +(installed by default on context path /manager) that supports +the following functions:

    +
      +
    • Deploy a new web application from the uploaded contents of a WAR file.
    • +
    • Deploy a new web application, on a specified context path, from the + server file system.
    • +
    • List the currently deployed web applications, as well as the + sessions that are currently active for those web apps.
    • +
    • Reload an existing web application, to reflect changes in the + contents of /WEB-INF/classes or /WEB-INF/lib. +
    • +
    • List the OS and JVM property values.
    • +
    • List the available global JNDI resources, for use in deployment + tools that are preparing <ResourceLink> elements + nested in a <Context> deployment description.
    • +
    • List the available security roles defined in the user database.
    • +
    • Start a stopped application (thus making it available again).
    • +
    • Stop an existing application (so that it becomes unavailable), but + do not undeploy it.
    • +
    • Undeploy a deployed web application and delete its document base + directory (unless it was deployed from file system).
    • +
    + +

    A default Tomcat installation includes the manager. To add an instance of the +Manager web application Context to a new host install the +manager.xml context configuration file in the +$CATALINA_HOME/conf/[enginename]/[hostname] folder. Here is an +example: +

    +<Context path="/manager" debug="0" privileged="true"
    +         docBase="/usr/local/kinetic/tomcat6/server/webapps/manager">
    +</Context>
    +
    +

    + +

    If you have Tomcat configured to support multiple virtual hosts +(websites) you would need to configure a Manager for each.

    + +

    There are three ways to use the Manager web application. +

      +
    • As an application with a user interface you use in your browser. +Here is an example URL where you can replace localhost with +your website host name: http://localhost/manager/html/ .
    • +
    • A minimal version using HTTP requests only which is suitable for use +by scripts setup by system administrators. Commands are given as part of the +request URI, and responses are in the form of simple text that can be easily +parsed and processed. See +Supported Manager Commands for more information.
    • +
    • A convenient set of task definitions for the Ant +(version 1.4 or later) build tool. See +Executing Manager Commands +With Ant for more information.
    • +
    +

    + +
    Configuring Manager Application Access
    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +

    It would be quite unsafe to ship Tomcat with default settings that allowed +anyone on the Internet to execute the Manager application on your server. +Therefore, the Manager application is shipped with the requirement that anyone +who attempts to use it must authenticate themselves, using a username and +password that have the role manager associated with them. +Further, there is no username in the default users file +($CATALINA_HOME/conf/tomcat-users.xml) that is assigned this +role. Therefore, access to the Manager application is completely disabled +by default.

    + +

    To enable access to the Manager web application, you must either create +a new username/password combination and associate the role name +manager with it, or add the manager role +to some existing username/password combination. Exactly where this is done +depends on which Realm implementation you are using:

    +
      +
    • MemoryRealm - If you have not customized your + $CATALINA_HOME/conf/server.xml to select a different one, + Tomcat 6 defaults to an XML-format file stored at + $CATALINA_HOME/conf/tomcat-users.xml, which can be + edited with any text editor. This file contains an XML + <user> for each individual user, which might + look something like this: +
      +<user name="craigmcc" password="secret" roles="standard,manager" />
      +
      + which defines the username and password used by this individual to + log on, and the role names he or she is associated with. You can + add the manager role to the comma-delimited + roles attribute for one or more existing users, and/or + create new users with that assigned role.
    • +
    • JDBCRealm - Your user and role information is stored in + a database accessed via JDBC. Add the manager role + to one or more existing users, and/or create one or more new users + with this role assigned, following the standard procedures for your + environment.
    • +
    • JNDIRealm - Your user and role information is stored in + a directory server accessed via LDAP. Add the manager + role to one or more existing users, and/or create one or more new users + with this role assigned, following the standard procedures for your + environment.
    • +
    + +

    The first time you attempt to issue one of the Manager commands +described in the next section, you will be challenged to log on using +BASIC authentication. The username and password you enter do not matter, +as long as they identify a valid user in the users database who possesses +the role manager.

    + +

    In addition to the password restrictions the manager web application +could be restricted by the remote IP address or host by adding a +RemoteAddrValve or RemoteHostValve. Here is +an example of restricting access to the localhost by IP address: +

    +<Context path="/manager" privileged="true"
    +         docBase="/usr/local/kinetic/tomcat6/server/webapps/manager">
    +         <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    +                allow="127\.0\.0\.1"/>
    +</Context>
    +
    +

    +
    Supported Manager Commands
    + +

    All commands that the Manager application knows how to process are +specified in a single request URI like this:

    +
    +http://{host}:{port}/manager/{command}?{parameters}
    +
    +

    where {host} and {port} represent the hostname +and port number on which Tomcat is running, {command} +represents the Manager command you wish to execute, and +{parameters} represents the query parameters +that are specific to that command. In the illustrations below, customize +the host and port appropriately for your installation.

    + +

    Most commands accept one or more of the following query parameters:

    +
      +
    • path - The context path (including the leading slash) + of the web application you are dealing with. To select the ROOT web + application, specify "/". NOTE - + It is not possible to perform administrative commands on the + Manager application itself.
    • +
    • war - URL of a web application archive (WAR) file, + pathname of a directory which contains the web application, or a + Context configuration ".xml" file. You can use URLs in any of the + following formats: +
        +
      • file:/absolute/path/to/a/directory - The absolute + path of a directory that contains the unpacked version of a web + application. This directory will be attached to the context path + you specify without any changes.
      • +
      • file:/absolute/path/to/a/webapp.war - The absolute + path of a web application archive (WAR) file. This is valid + only for the /deploy command, and is + the only acceptable format to that command.
      • +
      • jar:file:/absolute/path/to/a/warfile.war!/ - The + URL to a local web application archive (WAR) file. You can use any + syntax that is valid for the JarURLConnection class + for reference to an entire JAR file.
      • +
      • file:/absolute/path/to/a/context.xml - The + absolute path of a web application Context configuration ".xml" + file which contains the Context configuration element.
      • +
      • directory - The directory name for the web + applciation context in the Host's application base directory.
      • +
      • webapp.war - The name of a web application war file + located in the Host's application base directory.
      • +
    • +
    + +

    Each command will return a response in text/plain format +(i.e. plain ASCII with no HTML markup), making it easy for both humans and +programs to read). The first line of the response wil begin with either +OK or FAIL, indicating whether the requested +command was successful or not. In the case of failure, the rest of the first +line will contain a description of the problem that was encountered. Some +commands include additional lines of information as described below.

    + +

    Internationalization Note - The Manager application looks up +its message strings in resource bundles, so it is possible that the strings +have been translated for your platform. The examples below show the English +version of the messages.

    + +
    +

    WARNING: the legacy commands /install and +/remove are deprecated. +They are presently equivalent to /deploy and /undeploy, +but could be removed in a future release.

    +
    + +
    Deploy A New Application Remotely
    + +
    +http://localhost:8080/manager/deploy?path=/foo
    +
    + +

    Upload the web application archive (WAR) file that is specified as the +request data in this HTTP PUT request, install it into the appBase +directory of our corresponding virtual host, and start , using the directory +name or the war file name without the .war extension as the path. The +application can later be undeployed (and the corresponding application directory +removed) by use of the /undeploy command.

    + +

    The .WAR file may include Tomcat specific deployment configuration, by +including a Context configuration XML file in +/META-INF/context.xml.

    + +

    URL parameters include: +

      +
    • update: When set to true, any existing update will be + undeployed first. The default value is set to false.
    • +
    • tag: Specifying a tag name, this allows associating the + deployed webapp with a version number. The application version can + be later redeployed when needed using only the tag.
    • +
    +

    + +

    NOTE - This command is the logical +opposite of the /undeploy command.

    + +

    If installation and startup is successful, you will receive a response +like this:

    +
    +OK - Deployed application at context path /foo
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Application already exists at path /foo +
      +

      The context paths for all currently running web applications must be + unique. Therefore, you must undeploy the existing web + application using this context path, or choose a different context path + for the new one. The update parameter may be specified as + a parameter on the URL, with a value of true to avoid this + error. In that case, an undeploy will be performed on an existing + application before performing the deployment.

      +
    • +
    • Encountered exception +
      +

      An exception was encountered trying to start the new web application. + Check the Tomcat 6 logs for the details, but likely explanations include + problems parsing your /WEB-INF/web.xml file, or missing + classes encountered when initializing application event listeners and + filters.

      +
    • +
    + +
    + +
    Deploy A New Application from a Local Path
    + +

    Deploy and start a new web application, attached to the specified context +path (which must not be in use by any other web application). +This command is the logical opposite of the /undeploy command.

    + +

    There are a number of different ways the deploy command can be used.

    + +

    Deploy a version of a previously deployed webapp

    + +

    This can be used to deploy a previous version of a web application, which +has been deployed using the tag attribute. Note that the work +directory for the manager webapp will contain the previously deployed WARs; +removing it would make the deployment fail. +

    +http://localhost:8080/manager/deploy?path=/footoo&tag=footag
    +
    +

    + +

    Deploy a Directory or WAR by URL

    + +

    Deploy a web application directory or ".war" file located on the Tomcat +server. If no path is specified, the directory name or the war file +name without the ".war" extension is used as the path. The war +parameter specifies a URL (including the file: scheme) for either +a directory or a web application archive (WAR) file. The supported syntax for +a URL referring to a WAR file is described on the Javadocs page for the +java.net.JarURLConnection class. Use only URLs that refer to +the entire WAR file.

    + +

    In this example the web application located in the directory +/path/to/foo on the Tomcat server is deployed as the +web application context named /footoo. +

    +http://localhost:8080/manager/deploy?path=/footoo&war=file:/path/to/foo
    +
    +

    + +

    In this example the ".war" file /path/to/bar.war on the +Tomcat server is deployed as the web application context named +/bar. Notice that there is no path parameter +so the context path defaults to the name of the web application archive +file without the ".war" extension. +

    +http://localhost:8080/manager/deploy?war=jar:file:/path/to/bar.war!/
    +
    +

    + +

    Deploy a Directory or War from the Host appBase

    + +

    Deploy a web application directory or ".war" file located in your Host +appBase directory. The directory name or the war file name without the ".war" +extension is used as the path.

    + +

    In this example the web application located in a sub directory named +foo in the Host appBase directory of the Tomcat server is +deployed as the web application context named /foo. Notice +that the context path used is the name of the web application directory. +

    +http://localhost:8080/manager/deploy?war=foo
    +
    +

    + +

    In this example the ".war" file bar.war located in your +Host appBase directory on the Tomcat server is deployed as the web +application context named /bar. +

    +http://localhost:8080/manager/deploy?war=bar.war
    +
    +

    + +

    Deploy using a Context configuration ".xml" file

    + +

    If the Host deployXML flag is set to true you can deploy a web +application using a Context configuration ".xml" file and an optional +".war" file or web application directory. The context path +is not used when deploying a web application using a context ".xml" +configuration file.

    + +

    A Context configuration ".xml" file can contain valid XML for a +web application Context just as if it were configured in your +Tomcat server.xml configuration file. Here is an +example: +

    +<Context path="/foobar" docBase="/path/to/application/foobar"
    +         debug="0">
    +
    +  <!-- Link to the user database we will get roles from -->
    +  <ResourceLink name="users" global="UserDatabase"
    +                type="org.apache.catalina.UserDatabase"/>
    +
    +</Context>
    +
    +

    + +

    When the optional war parameter is set to the URL +for a web application ".war" file or directory it overrides any +docBase configured in the context configuration ".xml" file.

    + +

    Here is an example of deploying an application using a Context +configuration ".xml" file. +

    +http://localhost:8080/manager/deploy?config=file:/path/context.xml
    +
    +

    + +

    Here is an example of deploying an application using a Context +configuration ".xml" file and a web application ".war" file located +on the server. +

    +http://localhost:8080/manager/deploy?config=file:/path/context.xml&war=jar:file:/path/bar.war!/
    +
    +

    + +

    Deployment Notes

    + +

    If the Host is configured with unpackWARs=true and you deploy a war +file, the war will be unpacked into a directory in your Host appBase +directory.

    + +

    If the application war or directory is installed in your Host appBase +directory and either the Host is configured with autoDeploy=true or +liveDeploy=true, the Context path must match the directory name or +war file name without the ".war" extension.

    + +

    For security when untrusted users can manage web applications, the +Host deployXML flag can be set to false. This prevents untrusted users +from deploying web applications using a configuration XML file and +also prevents them from deploying application directories or ".war" +files located outside of their Host appBase.

    + + +

    Deploy Response

    + +

    If installation and startup is successful, you will receive a response +like this:

    +
    +OK - Deployed application at context path /foo
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Application already exists at path /foo +
      +

      The context paths for all currently running web applications must be + unique. Therefore, you must undeploy the existing web + application using this context path, or choose a different context path + for the new one. The update parameter may be specified as + a parameter on the URL, with a value of true to avoid this + error. In that case, an undeploy will be performed on an existing + application before performing the deployment.

      +
    • +
    • Document base does not exist or is not a readable directory +
      +

      The URL specified by the war parameter must identify a + directory on this server that contains the "unpacked" version of a + web application, or the absolute URL of a web application archive (WAR) + file that contains this application. Correct the value specified by + the war parameter.

      +
    • +
    • Encountered exception +
      +

      An exception was encountered trying to start the new web application. + Check the Tomcat 6 logs for the details, but likely explanations include + problems parsing your /WEB-INF/web.xml file, or missing + classes encountered when initializing application event listeners and + filters.

      +
    • +
    • Invalid application URL was specified +
      +

      The URL for the directory or web application that you specified + was not valid. Such URLs must start with file:, and URLs + for a WAR file must end in ".war".

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character. To reference the + ROOT web application use "/".

      +
    • +
    • Context path must match the directory or WAR file name: +
      + If the application war or directory is installed in your Host appBase + directory and either the Host is configured with autoDeploy=true or + liveDeploy=true, the Context path must match the directory name or + war file name without the ".war" extension. +
    • +
    • Only web applications in the Host web application directory can + be installed +
      + If the Host deployXML flag is set to false this error will happen + if an attempt is made to deploy a web application directory or + ".war" file outside of the Host appBase directory. +
    • +
    + +
    + +
    List Currently Deployed Applications
    + +
    +http://localhost:8080/manager/list
    +
    + +

    List the context paths, current status (running or +stopped), and number of active sessions for all currently +deployed web applications. A typical response immediately +after starting Tomcat might look like this:

    +
    +OK - Listed applications for virtual host localhost
    +/webdav:running:0
    +/examples:running:0
    +/manager:running:0
    +/:running:0
    +
    + +
    + +
    Reload An Existing Application
    + +
    +http://localhost:8080/manager/reload?path=/examples
    +
    + +

    Signal an existing application to shut itself down and reload. This can +be useful when the web application context is not reloadable and you have +updated classes or property files in the /WEB-INF/classes +directory or when you have added or updated jar files in the +/WEB-INF/lib directory. +

    +

    NOTE: The /WEB-INF/web.xml +web application configuration file is not reread on a reload. +If you have made changes to your web.xml file you must stop +then start the web application. +

    + +

    If this command succeeds, you will see a response like this:

    +
    +OK - Reloaded application at context path /examples
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to restart the web application. + Check the Tomcat 6 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character. To reference the + ROOT web application use "/".

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    • Reload not supported on WAR deployed at path /foo +
      + Currently, application reloading (to pick up changes to the classes or + web.xml file) is not supported when a web application is + deployed directly from a WAR file. It only works when the web application + is deployed from an unpacked directory. If you are using a WAR file, + you should undeploy and then deploy or + deploy with the update parameter the + application again to pick up your changes. +
    • +
    + +
    + +
    List OS and JVM Properties
    + +
    +http://localhost:8080/manager/serverinfo
    +
    + +

    Lists information about the Tomcat version, OS, and JVM properties.

    + +

    If an error occurs, the response will start with FAIL and +include an error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to enumerate the system properties. + Check the Tomcat 6 logs for the details.

      +
    • +
    + +
    + +
    List Available Global JNDI Resources
    + +
    +http://localhost:8080/manager/resources[?type=xxxxx]
    +
    + +

    List the global JNDI resources that are available for use in resource +links for context configuration files. If you specify the type +request parameter, the value must be the fully qualified Java class name of +the resource type you are interested in (for example, you would specify +javax.sql.DataSource to acquire the names of all available +JDBC data sources). If you do not specify the type request +parameter, resources of all types will be returned.

    + +

    Depending on whether the type request parameter is specfied +or not, the first line of a normal response will be:

    +
    +  OK - Listed global resources of all types
    +
    +

    or

    +
    +  OK - Listed global resources of type xxxxx
    +
    +

    followed by one line for each resource. Each line is composed of fields +delimited by colon characters (":"), as follows:

    +
      +
    • Global Resource Name - The name of this global JNDI resource, + which would be used in the global attribute of a + <ResourceLink> element.
    • +
    • Global Resource Type - The fully qualified Java class name of + this global JNDI resource.
    • +
    + +

    If an error occurs, the response will start with FAIL and +include an error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to enumerate the global JNDI + resources. Check the Tomcat 6 logs for the details.

      +
    • +
    • No global JNDI resources are available +
      +

      The Tomcat server you are running has been configured without + global JNDI resources.

      +
    • +
    + + +
    + + +
    List Available Security Roles
    + +
    +http://localhost:8080/manager/roles
    +
    + +

    List the security role names (and corresponding descriptions) that are +available in the org.apache.catalina.UserDatabase resource that +is linked to the users resource reference in the web.xml file +for the Manager web application. This would typically be used, for example, +by a deployment tool that wanted to create +<security-role-ref> elements to map security role names +used in a web application to the role names actually defined within the +container.

    + +

    By default, the users resource reference is pointed at the +global UserDatabase resource. If you choose to utilize a +different user database per virtual host, you should modify the +<ResourceLink> element in the default +manager.xml context configuration file to point at the global +user database resource for this virtual host.

    + +

    When this command is executed, the first line of the response will be:

    +
    +  OK - Listed security roles
    +
    +

    followed by one line for each security role. Each line is composed of +fields delimited by colon characters (":") as follows:

    +
      +
    • Security Role Name - A security role name that is known to Tomcat + in the user database.
    • +
    • Description - Description of this security role (useful in + creating user interfaces for selecting roles.
    • +
    + +

    If an error occurs, the response will start with FAIL and +include an error message. Possible causes for problems include:

    +
      +
    • Cannot resolve user database reference - A JNDI error prevented + the successful lookup of the org.apache.catalina.UserDatabase + resource. Check the Tomcat log files for a stack trace associated with + this error.
    • +
    • No user database is available - You have not configured a resource + reference for the users resource that points at an + appropriate user database instance. Check your manager.xml + file and ensure that you have created an appropriate + <ResourceLink> or + <ResourceParams> element for this resource.
    • +
    + +
    + + +
    Session Statistics
    + +
    +http://localhost:8080/manager/sessions?path=/examples
    +
    + +

    Display the default session timeout for a web application, and the +number of currently active sessions that fall within ten-minute ranges of +their actual timeout times. For example, after restarting Tomcat and then +executing one of the JSP samples in the /examples web app, +you might get something like this:

    +
    +OK - Session information for application at context path /examples
    +Default maximum session inactive interval 30 minutes
    +30 - <40 minutes:1 sessions
    +
    + +
    + + +
    Start an Existing Application
    + +
    +http://localhost:8080/manager/start?path=/examples
    +
    + +

    Signal a stopped application to restart, and make itself available again. +Stopping and starting is useful, for example, if the database required by +your application becomes temporarily unavailable. It is usually better to +stop the web application that relies on this database rather than letting +users continuously encounter database exceptions.

    + +

    If this command succeeds, you will see a response like this:

    +
    +OK - Started application at context path /examples
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to start the web application. + Check the Tomcat 6 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character. To reference the + ROOT web application use "/".

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    + +
    + +
    Stop an Existing Application
    + +
    +http://localhost:8080/manager/stop?path=/examples
    +
    + +

    Signal an existing application to make itself unavailable, but leave it +deployed. Any request that comes in while an application is +stopped will see an HTTP error 404, and this application will show as +"stopped" on a list applications command.

    + +

    If this command succeeds, you will see a response like this:

    +
    +OK - Stopped application at context path /examples
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to stop the web application. + Check the Tomcat 6 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character. To reference the + ROOT web application use "/".

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    + +
    + + +
    Undeploy an Existing Application
    + +
    +http://localhost:8080/manager/undeploy?path=/examples
    +
    + +

    WARNING - This command will delete any web +application artifacts that exist within appBase directory +(typically "webapps") for this virtual host. +This will delete the the application .WAR, if present, +the application directory resulting either from a deploy in unpacked form +or from .WAR expansion as well as the XML Context definition from +$CATALINA_HOME/conf/[enginename]/[hostname]/ directory. +If you simply want to take an application +out of service, you should use the /stop command instead.

    + +

    Signal an existing application to gracefully shut itself down, and +remove it from Tomcat (which also makes this context path available for +reuse later). In addition, the document root directory is removed, if it +exists in the appBase directory (typically "webapps") for +this virtual host. This command is the logical opposite of the +/deploy command.

    + +

    If this command succeeds, you will see a response like this:

    +
    +OK - Undeployed application at context path /examples
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to undeploy the web application. + Check the Tomcat 6 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character. To reference the + ROOT web application use "/".

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    + +
    + +
    Executing Manager Commands With Ant
    + +

    In addition to the ability to execute Manager commands via HTTP requests, +as documented above, Tomcat 6 includes a convenient set of Task definitions +for the Ant (version 1.4 or later) build tool. In order to use these +commands, you must perform the following setup operations:

    +
      +
    • Download the binary distribution of Ant from + http://ant.apache.org. + You must use version 1.4 or later.
    • +
    • Install the Ant distribution in a convenient directory (called + ANT_HOME in the remainder of these instructions).
    • +
    • Copy the file server/lib/catalina-ant.jar from your Tomcat 6 + installation into Ant's library directory ($ANT_HOME/lib). +
    • +
    • Add the $ANT_HOME/bin directory to your PATH + environment variable.
    • +
    • Configure at least one username/password combination in your Tomcat + user database that includes the manager role.
    • +
    + +

    To use custom tasks within Ant, you must declare them first with a +<taskdef> element. Therefore, your build.xml +file might look something like this:

    + + + +
    +<project name="My Application" default="compile" basedir=".">
    +
    +  <!-- Configure the directory into which the web application is built -->
    +  <property name="build"    value="${basedir}/build"/>
    +
    +  <!-- Configure the context path for this application -->
    +  <property name="path"     value="/myapp"/>
    +
    +  <!-- Configure properties to access the Manager application -->
    +  <property name="url"      value="http://localhost:8080/manager"/>
    +  <property name="username" value="myusername"/>
    +  <property name="password" value="mypassword"/>
    +
    +  <!-- Configure the custom Ant tasks for the Manager application -->
    +  <taskdef name="deploy"    classname="org.apache.catalina.ant.DeployTask"/>
    +  <taskdef name="list"      classname="org.apache.catalina.ant.ListTask"/>
    +  <taskdef name="reload"    classname="org.apache.catalina.ant.ReloadTask"/>
    +  <taskdef name="resources" classname="org.apache.catalina.ant.ResourcesTask"/>
    +  <taskdef name="roles"     classname="org.apache.catalina.ant.RolesTask"/>
    +  <taskdef name="start"     classname="org.apache.catalina.ant.StartTask"/>
    +  <taskdef name="stop"      classname="org.apache.catalina.ant.StopTask"/>
    +  <taskdef name="undeploy"  classname="org.apache.catalina.ant.UndeployTask"/>
    +
    +  <!-- Executable Targets -->
    +  <target name="compile" description="Compile web application">
    +    <!-- ... construct web application in ${build} subdirectory, and
    +            generated a ${path}.war ... -->
    +  </target>
    +
    +  <target name="deploy" description="Install web application"
    +          depends="compile">
    +    <deploy url="${url}" username="${username}" password="${password}"
    +            path="${path}" war="file:${build}${path}.war"/>
    +  </target>
    +
    +  <target name="reload" description="Reload web application"
    +          depends="compile">
    +    <reload  url="${url}" username="${username}" password="${password}"
    +            path="${path}"/>
    +  </target>
    +
    +  <target name="undeploy" description="Remove web application">
    +    <undeploy url="${url}" username="${username}" password="${password}"
    +            path="${path}"/>
    +  </target>
    +
    +</project>
    +
    + +

    Now, you can execute commands like ant deploy to deploy the +application to a running instance of Tomcat, or ant reload to +tell Tomcat to reload it. Note also that most of the interesting values in +this build.xml file are defined as replaceable properties, so +you can override their values from the command line. For example, you might +consider it a security risk to include the real manager password in your +build.xml file's source code. To avoid this, omit the password +property, and specify it from the command line:

    +
    +  ant -Dpassword=secret deploy
    +
    + +
    Tasks output capture
    + +

    Using Ant version 1.6.2 or later, +the Catalina tasks offer the option to capture their output in +properties or external files. They support directly the following subset of the +<redirector> type attributes: +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionRequired
    outputName of a file to which to write the output. If +the error stream is not also redirected to a file or property, it will +appear in this output.No
    errorThe file to which the standard error of the +command should be redirected.No
    logErrorThis attribute is used when you wish to see +error output in Ant's log and you are redirecting output to a +file/property. The error output will not be included in the output +file/property. If you redirect error with the error or errorProperty +attributes, this will have no effect.No
    appendWhether output and error files should be +appended to or overwritten. Defaults to false.No
    createemptyfilesWhether output and error files should be created +even when empty. Defaults to true.No
    outputpropertyThe name of a property in which the output of +the command should be stored. Unless the error stream is redirected to +a separate file or stream, this property will include the error output.No
    errorpropertyThe name of a property in which the standard +error of the command should be stored.No
    + +

    A couple of additional attributes can also be specified: +

    + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionRequired
    alwaysLogThis attribute is used when you wish to see the +output you are capturing, appearing also in the Ant's log. It must not be +used unless you are capturing task output. +Defaults to false. +This attribute will be supported directly by <redirector> +in Ant 1.6.3No
    failonerrorThis attribute is used when you wish to avoid that +any manager command processing error terminates the ant execution. Defaults to true. +It must be set to false, if you want to capture error output, +otherwise execution will terminate before anything can be captured. +
    +This attribute acts only on manager command execution, +any wrong or missing command attribute will still cause Ant execution termination. +
    No
    + +

    They also support the embedded <redirector> element +in which you can specify +its full set of attributes, but input, inputstring and +inputencoding that, even if accepted, are not used because they have +no meaning in this context. +Refer to ant manual for details on +<redirector> element attributes. +

    + +

    +Here is a sample build file extract that shows how this output redirection support +can be used: +

    + + + +
    +	<target name="manager.deploy"
    +		depends="context.status"
    +		if="context.notInstalled">
    +		<deploy url="${mgr.url}"
    +			username="${mgr.username}"
    +			password="${mgr.password}"
    +			path="${mgr.context.path}"
    +			config="${mgr.context.descriptor}"/>
    +	</target>
    +
    +	<target name="manager.deploy.war"
    +		depends="context.status"
    +		if="context.deployable">
    +		<deploy url="${mgr.url}"
    +			username="${mgr.username}"
    +			password="${mgr.password}"
    +			update="${mgr.update}"
    +			path="${mgr.context.path}"
    +			war="${mgr.war.file}"/>
    +	</target>
    +	
    +	<target name="context.status">
    +		<property name="running" value="${mgr.context.path}:running"/>
    +		<property name="stopped" value="${mgr.context.path}:stopped"/>
    +	
    +		<list url="${mgr.url}"
    +			outputproperty="ctx.status"
    +			username="${mgr.username}"
    +			password="${mgr.password}">
    +		</list>
    +		
    +		<condition property="context.running">
    +			<contains string="${ctx.status}" substring="${running}"/>
    +		</condition>
    +		<condition property="context.stopped">
    +			<contains string="${ctx.status}" substring="${stopped}"/>
    +		</condition>
    +		<condition property="context.notInstalled">
    +			<and>
    +				<isfalse value="${context.running}"/>
    +				<isfalse value="${context.stopped}"/>
    +			</and>
    +		</condition>
    +		<condition property="context.deployable">
    +			<or>
    +				<istrue value="${context.notInstalled}"/>
    +				<and>
    +					<istrue value="${context.running}"/>
    +					<istrue value="${mgr.update}"/>
    +				</and>
    +				<and>
    +					<istrue value="${context.stopped}"/>
    +					<istrue value="${mgr.update}"/>
    +				</and>
    +			</or>
    +		</condition>
    +		<condition property="context.undeployable">
    +			<or>
    +				<istrue value="${context.running}"/>
    +				<istrue value="${context.stopped}"/>
    +			</or>
    +		</condition>
    +	</target>
    +
    + +

    WARNING: even if it doesn't make many sense, and is always a bad idea, +calling a Catalina task more than once, +badly set Ant tasks depends chains may cause that a task be called +more than once in the same Ant run, even if not intended to. A bit of caution should be exercised when you are +capturing output from that task, because this could lead to something unexpected: +

      +
    • when capturing in a property you will find in it only the output from the first call, because +Ant properties are immutable and once set they cannot be changed, +
    • +
    • when capturing in a file, each run will overwrite it and you will find in it only the last call +output, unless you are using the append="true" attribute, in which case you will +see the output of each task call appended to the file. +
    • +
    +

    + +
    + +
    Using the JMX Proxy Servlet
    + +
    What is JMX Proxy Servlet
    + The JMX Proxy Servlet is a lightweight proxy to get and set the + tomcat internals. (Or any class that has been exposed via an MBean) + Its usage is not very user friendly but the UI is + extremely help for integrating command line scripts for monitoring + and changing the internals of tomcat. You can do two things with the proxy: + get information and set information. For you to really understand the + JMX Proxy Servlet, you should have a general understanding of JMX. + If you don't know what JMX is, then prepare to be confused. +
    + +
    JMX Query command
    + This takes the form: +
    +http://webserver/manager/jmxproxy/?qry=STUFF
    +
    + Where STUFF is the JMX query you wish to perform. For example, + here are some queries you might wish to run: +
      +
    • + qry=*%3Atype%3DRequestProcessor%2C* --> + type=RequestProcessor which will locate all + workers which can process requests and report + their state. +
    • +
    • + qry=*%3Aj2eeType=Servlet%2c* --> + j2eeType=Servlet which return all loaded servlets. +
    • +
    • + qry=Catalina%3Atype%3DEnvironment%2Cresourcetype%3DGlobal%2Cname%3DsimpleValue --> + Catalina:type=Environment,resourcetype=Global,name=simpleValue + which look for a specific MBean by the given name. +
    • +
    + You'll need to experiment with this to really understand its capabilites. + If you provide no qry parameter, then all of the MBeans will + be displayed. We really recommend looking at the tomcat source code and + understand the JMX spec to get a better understanding of all the queries + you may run. +
    + +
    JMX Set command
    + Now that you can query an MBean, its time to muck with Tomcat's internals! + The general form of the set command is : +
    +http://webserver/manager/jmxproxy/?set=BEANNAME&att=MYATTRIBUTE&val=NEWVALUE
    +
    + So you need to provide 3 request parameters: +
      +
    1. set: The full bean name
    2. +
    3. att: The attribute you wish to alter
    4. +
    5. val: The new value
    6. +
    + If all goes ok, then it will say OK, otherwise an error message will be + shown. For example, lets say we wish to turn up debugging on the fly for the + ErrorReportValve. The following will set debugging to 10. +
    +http://localhost:8080/manager/jmxproxy/
    +?set=Catalina%3Atype%3DValve%2Cname%3DErrorReportValve%2Chost%3Dlocalhost&att=debug&val=10
    +
    + and my result is (YMMV): +
    +Result: ok
    +
    + + Here is what I see if I pass in a bad value. Here is the URL I used, + I try set debugging equal to 'cowbell': +
    +http://localhost:8080/manager/jmxproxy/
    +?set=Catalina%3Atype%3DValve%2Cname%3DErrorReportValve%2Chost%3Dlocalhost&att=debug&val=cowbell
    +
    + When I try that, my result is +
    +Error: java.lang.NumberFormatException: For input string: "cowbell"
    +
    +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/maven-jars.html b/P51/apache-tomcat-6.0.14/webapps/docs/maven-jars.html new file mode 100644 index 0000000..d7ccd17 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/maven-jars.html @@ -0,0 +1,23 @@ +Apache Tomcat 6.0 - Apache Tomcat - Using Tomcat libraries with Maven
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Apache Tomcat - Using Tomcat libraries with Maven

    Printer Friendly Version
    print-friendly
    version +
    Using Tomcat libraries With Maven
    +
    Tomcat Snapshots
    + Tomcat snapshots are located in the + Apache Snapshot Repository. + The official URL is
    http://people.apache.org/repo/m2-snapshot-repository/org/apache/tomcat/

    + Snapshots are done periodically, not on a regular basis, but when changes happen and the Tomcat team deams a new snapshot might + useful. +
    +
    Tomcat Releases
    + At every release, be it alpha, beta or stable, we will publish the JARs to + Tomcat's Staging Repository. + The URL for this is
    http://tomcat.apache.org/dev/dist/m2-repository/org/apache/tomcat/
    .
    + At some point, this URL will change over to ASF's main repository that synchronizes with IBiblio.
    + When that happens, all releases will be moved over, and this repository will stick around for a while, but no + new releases will be published to the staging repository. +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/mbeans-descriptor-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/mbeans-descriptor-howto.html new file mode 100644 index 0000000..542c5ae --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/mbeans-descriptor-howto.html @@ -0,0 +1,47 @@ +Apache Tomcat 6.0 - MBean Descriptor How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    MBean Descriptor How To

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    Tomcat 6 uses JMX MBeans as the technology for implementing +manageability of Tomcat.

    + +

    The descriptions of JMX MBeans for Catalina are in the mbeans-descriptor.xml +file in each package.

    + +

    You will need to add MBean descriptions for your custom components +in order to avoid a "ManagedBean is not found" exception.

    + +
    Adding MBean descriptions
    + +

    You may also add MBean descriptions for custom components in +a mbeans-descriptor.xml file, located in the same package as the class files +it describes.

    + +
    +  <mbean         name="LDAPRealm"
    +            className="org.apache.catalina.mbeans.ClassNameMBean"
    +          description="Custom LDAPRealm"
    +               domain="Catalina"
    +                group="Realm"
    +                 type="com.myfirm.mypackage.LDAPRealm">
    +
    +    <attribute   name="className"
    +          description="Fully qualified class name of the managed object"
    +                 type="java.lang.String"
    +            writeable="false"/>
    +
    +    <attribute   name="debug"
    +          description="The debugging detail level for this component"
    +                 type="int"/>
    +    .
    +    .
    +    .
    +
    +  </mbean>
    +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/monitoring.html b/P51/apache-tomcat-6.0.14/webapps/docs/monitoring.html new file mode 100644 index 0000000..4794cd5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/monitoring.html @@ -0,0 +1,1073 @@ +Apache Tomcat 6.0 - Monitoring and Managing Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Monitoring and Managing Tomcat

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    Monitoring is a very important question today. Looking inside the running + server, grab some statistic data or reconfigure some aspects are + daliy adminstration tasks.

    + +
    Enabling JMX Remote
    + +

    The Sun website includes the list of options and how to configure JMX Remote on Java 5: + + http://java.sun.com/j2se/1.5.0/docs/guide/management/agent.html. +

    +

    For quick installation you find here a short installation guide:

    +

    Add the following parameters to your tomcat startup script: +

    +    set CATALINA_OPTS="-Dcom.sun.management.jmxremote \
    +    -Dcom.sun.management.jmxremote.port=%my.jmx.port% \
    +    -Dcom.sun.management.jmxremote.ssl=false \
    +    -Dcom.sun.management.jmxremote.authenticate=false"
    +    
    +

    +

    +

      +
    1. When you think authorisation is a good, add and change this : +
      +    -Dcom.sun.management.jmxremote.authenticate=true \
      +    -Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password \
      +    -Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access \
      +    
      +
    2. +
    3. edit the access allow file $CATALINA_BASE/conf/jmxremote.access : +
      +monitorRole readonly
      +controlRole readwrite
      +    
      +
    4. +
    5. edit the password file $CATALINA_BASE/conf/jmxremote.password : +
      +monitorRole tomcat
      +controlRole tomcat
      +    
      + Tipp: Password File must be readonly and not accessable from every + other user! Remove all other users under windows to access this file. +
    6. +
    + Note:The JSR 160 JMX-Adaptor opens a second data protocol port. That is a problem + when you have installed a local firewall.
    +

    +

    Activate JMX MX4J Http Adaptor with Java 1.4: +

      +
    1. Install the tomcat compat package
    2. +
    3. Install the mx4j-tools.jar at common/lib. Please, use the same MX4j + version as your tomcat release
    4. +
    5. Configure a MX4J JMX HTTP Adaptor at your AJP Connector +

      +

      +      <Connector port="${AJP.PORT}" 
      +            handler.list="mx" 
      +            mx.enabled="true" 
      +            mx.httpHost="${JMX.HOST}"
      +            mx.httpPort="${JMX.PORT}"
      +            protocol="AJP/1.3" />
      +      
      +

      +

      Tipp: With ${AJP.PORT}=0 no ajp connection where started. +

      +

      Note: MX4J JSR 160 RMI Adaptor to support JDK 1.4 currently not integrated. +

      +
    6. +
    7. Start your tomcat and look with a browser at http://${JMX.HOST}:${JMX.PORT}
    8. +
    9. With the mx connector parameter mx.authMode="basic" mx.authUser="tomcat" mx.authPassword="strange" + you can control the access!
    10. +
    11. A complete list of all tomcat core MBeans can you find at + funcspecs/mbean-names.html.
    12. +
    +

    + +
    Manage Tomcat with JMX remote Ant Tasks
    +

    For simple tomcat ant task usage with ant 1.6.x we have integrate import and antlib support.

    +

    antlibCopy your catalina-ant.jar from $CATALINA_HOME/server/lib to $ANT_HOME/lib.

    +

    Following example show the JMX Accessor usage:

    + + +

    +<project name="Catalina Ant JMX" 
    +        xmlns:jmx="antlib:org.apache.catalina.ant.jmx" 
    +        default="state"
    +        basedir=".">
    +    <property name="jmx.server.name" value="localhost" />
    +    <property name="jmx.server.port" value="9012" />
    +    <property name="cluster.server.address" value="192.168.1.75" />
    +    <property name="cluster.server.port" value="9025" />
    + 
    +    <target name="state" description="Show JMX Cluster state">
    +        <jmx:open
    +            host="${jmx.server.name}"
    +            port="${jmx.server.port}"
    +            username="controlRole"
    +            password="tomcat"/>
    +        <jmx:get
    +            name="Catalina:type=IDataSender,host=localhost,senderAddress=${cluster.server.address},senderPort=${cluster.server.port}" 
    +            attribute="connected"
    +            resultproperty="IDataSender.backup.connected"
    +            echo="false"
    +        />
    +       <jmx:get
    +            name="Catalina:type=ClusterSender,host=localhost" 
    +            attribute="senderObjectNames"
    +            resultproperty="senderObjectNames"
    +            echo="false"
    +        />
    +        <!-- get current maxActiveSession from ClusterTest application
    +             echo it to ant output and store at 
    +             property <em>clustertest.maxActiveSessions.orginal</em>
    +        -->
    +       <jmx:get
    +            name="Catalina:type=Manager,path=/ClusterTest,host=localhost" 
    +            attribute="maxActiveSessions"
    +            resultproperty="clustertest.maxActiveSessions.orginal"
    +            echo="true"
    +        />
    +        <!-- set maxActiveSession to 100
    +        -->
    +        <jmx:set
    +            name="Catalina:type=Manager,path=/ClusterTest,host=localhost" 
    +            attribute="maxActiveSessions"
    +            value="100"
    +            type="int"
    +        />
    +        <!-- get all sessions and split result as delimiter <em>SPACE</em> for easy
    +             access all session ids directly with ant property sessions.[0..n].
    +        -->
    +        <jmx:invoke
    +            name="Catalina:type=Manager,path=/ClusterTest,host=localhost" 
    +            operation="listSessionIds"
    +            resultproperty="sessions"
    +            echo="false"
    +            delimiter=" "
    +        />
    +        <!-- Access session attribute <em>Hello</em> from first session.
    +        -->
    +        <jmx:invoke
    +            name="Catalina:type=Manager,path=/ClusterTest,host=localhost" 
    +            operation="getSessionAttribute"
    +            resultproperty="Hello"
    +            echo="false"
    +        >
    +          <arg value="${sessions.0}"/>
    +          <arg value="Hello"/>
    +        </jmx:invoke> 
    +        <!-- Query for all application manager.of the server from all hosts
    +             and bind all attributes from all found manager mbeans.
    +        -->
    +        <jmx:query
    +            name="Catalina:type=Manager,*" 
    +            resultproperty="manager"
    +            echo="true"
    +            attributebinding="true"
    +        />
    +        <!-- echo the create properties -->
    +        <echo>
    +           senderObjectNames: ${senderObjectNames.0}
    +           IDataSender.backup.connected: ${IDataSender.backup.connected}
    +           session: ${sessions.0}
    +           manager.length: ${manager.length}
    +           manager.0.name: ${manager.0.name}
    +           manager.1.name: ${manager.1.name}
    +           hello: ${Hello}
    +           manager.ClusterTest.0.name: ${manager.ClusterTest.0.name}
    +           manager.ClusterTest.0.activeSessions: ${manager.ClusterTest.0.activeSessions}
    +           manager.ClusterTest.0.counterSend_EVT_SESSION_EXPIRED: ${manager.ClusterTest.0.counterSend_EVT_SESSION_EXPIRED}
    +           manager.ClusterTest.0.counterSend_EVT_GET_ALL_SESSIONS: ${manager.ClusterTest.0.counterSend_EVT_GET_ALL_SESSIONS}
    +        </echo>   
    +
    +    </target>
    + 
    +</project>
    +   

    +
    +

    import: Import the JMX Accessor Projekt with + <import file="${CATALINA.HOME}/bin/jmxaccessor-tasks.xml" /> and + reference the tasks with jmxOpen, jmxSet, jmxGet, + jmxQuery, jmxInvoke,jmxEquals and jmxCondition.

    + +
    JMXAccessorOpenTask - jmx open connection task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    urlSet jmx connection url - service:jmx:rmi:///jndi/rmi://localhost:8050/jmxrmi +
    hostSet the host, shortcut the very long url syntax. + localhost
    portSet the remote connection port + 8050
    usernameremote jmx connection user name. +
    passwordremote jmx connection password. +
    refName of the internal connection referenz. With this attribute you can + configure more the one connection inside the same ant projekt. + jmx.server
    echoEcho the command usage (for analyse access or debugging) + false
    ifOnly execute if a property of the given name exists in the current project. +
    unlessOnly execute if a property of the given name not exists in the current project. +
    +

    +

    +Example to open a new jmx connection
    +

    +    <jmx:open
    +            host="${jmx.server.name}"
    +            port="${jmx.server.port}"
    +    />
    +
    +

    +

    +Example to open a jmx connection from url, with authorisation and +store at other reference
    +

    +    <jmx:open
    +            url="service:jmx:rmi:///jndi/rmi://localhost:9024/jmxrmi"
    +            ref="jmx.server.9024"
    +            username="controlRole"
    +            password="tomcat"    
    +    />
    +
    +

    + +

    +Example to open a jmx connection from url, with authorisation and +store at other reference, but only when property jmx.if exists and +jmx.unless not exists
    +

    +    <jmx:open
    +            url="service:jmx:rmi:///jndi/rmi://localhost:9024/jmxrmi"
    +            ref="jmx.server.9024"
    +            username="controlRole"
    +            password="tomcat"    
    +            if="jmx.if"    
    +            unless="jmx.unless"    
    +    />
    +
    +

    +

    Note: All properties from jmxOpen task also exists at all +other tasks and conditions. +

    + +
    JMXAccessorGetTask: get attribute value ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameFull qualified JMX ObjectName -- Catalina:type=Server +
    attributeExisting Mbean attribute (see Tomcat mbean description above) +
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    resultpropertySave result at this project property +
    delimiterSplit result with delimiter (java.util.StringTokenizier) + and use resultproperty as prefix to store tokens. +
    separatearrayresultsWhen return value is an array, save result as property list + ($resultproperty.[0..N] and $resultproperty.lenght) + true
    +

    +

    +Example to get remote mbean attribute from default jmx connection
    +

    +    <jmx:get
    +        name="Catalina:type=Manager,path=/servlets-examples,host=localhost" 
    +        attribute="maxActiveSessions"
    +        resultproperty="servlets-examples.maxActiveSessions"
    +    />
    +
    +

    +

    +Example to get and result array and split it at separate properties
    +

    +    <jmx:get
    +        name="Catalina:type=ClusterSender,host=localhost" 
    +        attribute="senderObjectNames"
    +        resultproperty="senderObjectNames"
    +    />
    +
    +Access the senderObjectNames properties with: +
    +    ${senderObjectNames.lenght} give the number of returned sender list.
    +    ${senderObjectNames.[0..N]} found all sender object names
    +
    +

    + +

    +Example to get IDataSender attribute connected only when cluster is configured. +

    +<jmx:query
    +    failonerror="false"
    +    name="Catalina:type=Cluster,host=${tomcat.application.host}"
    +    resultproperty="cluster"
    +/>
    +<jmx:get
    +    name="Catalina:type=IDataSender,host=${tomcat.application.host},senderAddress=${cluster.backup.address},senderPort=${cluster.backup.port}" 
    +    attribute="connected"
    +    resultproperty="datasender.connected"
    +    if="cluster.0.name" />
    +
    +

    + +
    JMXAccessorSetTask: set attribute value ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameFull qualified JMX ObjectName -- Catalina:type=Server +
    attributeExisting Mbean attribute (see Tomcat mbean description above) +
    valuevalue that set to attribute +
    typetype of the attribute. + java.lang.String
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    +

    +

    +Example to set remote mbean attribute value
    +

    +    <jmx:set
    +        name="Catalina:type=Manager,path=/servlets-examples,host=localhost" 
    +        attribute="maxActiveSessions"
    +        value="500"
    +        type="int"
    +    />
    +
    +

    + +
    JMXAccessorInvokeTask: invoke Mbean operation ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameFull qualified JMX ObjectName -- Catalina:type=Server +
    operationExisting Mbean operation (see Tomcat + funcspecs/fs-admin-opers.html. +
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    resultpropertySave result at this project property +
    delimiterSplit result with delimiter (java.util.StringTokenizier) + and use resultproperty as prefix to store tokens. +
    separatearrayresultsWhen return value is an array, save result as property list + ($resultproperty.[0..N] and $resultproperty.lenght) + true
    +

    +

    +stop an application
    +

    +    <jmx:invoke
    +        name="Catalina:type=Manager,path=/servlets-examples,host=localhost" 
    +        operation="stop"/>
    +
    +Now you can find the sessionid at ${sessions.[0..N} properties and access the count +with ${sessions.lenght} property. +

    +

    +Example to get all sessionids
    +

    +    <jmx:invoke
    +        name="Catalina:type=Manager,path=/servlets-examples,host=localhost" 
    +        operation="listSessionIds"
    +        resultproperty="sessions"
    +        delimiter=" "        
    +    />
    +
    +Now you can find the sessionid at ${sessions.[0..N} properties and access the count +with ${sessions.lenght} property. +

    +

    +Example to get remote mbean session attribute from session ${sessionid.0}
    +

    +    <jmx:invoke
    +        name="Catalina:type=Manager,path=/ClusterTest,host=localhost" 
    +        operation="getSessionAttribute"
    +        resultproperty="hello">
    +         <arg value="${sessionid.0}"/>
    +         <arg value="Hello" />
    + </jmx:invoke>
    +
    +

    +

    +Example to create a new access logger valve at vhost localhost +

    + <jmx:invoke
    +         name="Catalina:type=MBeanFactory" 
    +         operation="createAcccesLoggerValve"
    +         resultproperty="acccesLoggerObjectName"
    + >
    +     <arg value="Catalina:type=Host,host=localhost"/>
    + </jmx:invoke>
    +
    +Now you can find new Mbean with name stored at ${acccesLoggerObjectName} +proeprty. +

    + +
    JMXAccessorQueryTask: query Mbean ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameJMX ObjectName query string -- Catalina:type=Manager,* +
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    resultpropertyPrefix project property name to all founded Mbeans (mbeans.[0..N].objectname) +
    attributebinduingbind ALL MBean attributes in addition to name + false
    delimiterSplit result with delimiter (java.util.StringTokenizier) + and use resultproperty as prefix to store tokens. +
    separatearrayresultsWhen return value is an array, save result as property list + ($resultproperty.[0..N] and $resultproperty.lenght) + true
    +

    +

    +Get all Manager ObjectNames from all services and Hosts
    +

    +  <jmx:query
    +           name="Catalina:type=Manager,* 
    +           resultproperty="manager" />
    +
    +Now you can find the Session Manager at ${manager.[0..N].name} +properties and access the result object counter with ${manager.length} property. +

    +

    +Example to get the Manager from servlet-examples application an bind all mbean properties
    +

    +  <jmx:query
    +           name="Catalina:type=Manager,path=/servlet-examples,host=localhost*" 
    +           attributebinding="true"
    +           resultproperty="manager.servletExamples" />
    +
    +Now you can find the manager at ${manager.servletExamples.0.name} property +and can access all properties from this manager with ${manager.servletExamples.0.[manager attribute names]}. +The result object counter from MBeans is stored ad ${manager.length} property. +

    + +

    +Example to get all MBeans from a server and store inside an external xml property file
    +

    +<project name="jmx.query"         
    +            xmlns:jmx="antlib:org.apache.catalina.ant.jmx"
    +            default="query-all" basedir=".">
    +<property name="jmx.host" value="localhost"/>
    +<property name="jmx.port" value="8050"/>
    +<property name="jmx.username" value="controlRole"/>
    +<property name="jmx.password" value="tomcat"/>
    +
    +<target name="query-all" description="Query all MBeans of a server">
    +<!-- Configure connection -->
    +<jmx:open 
    +    host="${jmx.host}"
    +    port="${jmx.port}"
    +    ref="jmx.server"
    +    username="${jmx.username}"
    +    password="${jmx.password}"/>
    +<!-- Query MBean list -->
    +<jmx:query 
    +    name="*:*"
    +    resultproperty="mbeans"
    +    attributebinding="false"/>
    +    
    +<echoproperties
    +    destfile="mbeans.properties"
    +    prefix="mbeans."
    +    format="xml"/>
    +    
    +<!-- Print results -->
    +<echo
    +    message="Number of MBeans in server ${jmx.host}:${jmx.port} is ${mbeans.length}"/>
    +</target>
    +</project>
    +
    +Now you can find all MBeans inside the file mbeans.properties. +

    + +
    JMXAccessorCreateTask: remote create mbean ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameFull qualified JMX ObjectName -- Catalina:type=MBeanFactory +
    classNameExisting MBean full qualified classname (see Tomcat mbean description above) +
    classLoaderObjectName of server or web application classloader
    + ( Catalina:type=ServerClassLoader,name=[server,common,shared] or
    + Catalina:type=WebappClassLoader,path=/myapps,host=localhost) +
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    +

    +

    +Example to create remote mbean
    +

    +    <jmx:create
    +             ref="${jmx.reference}"
    +             name="Catalina:type=MBeanFactory"
    +             className="org.apache.commons.modeler.BaseModelMBean"
    +             classLoader="Catalina:type=ServerClassLoader,name=server">             
    +             <Arg value="org.apache.catalina.mbeans.MBeanFactory" />
    +    </jmx:create> 
    +
    +

    +

    + Warning: A lot of tomcat mbeans can't be really create and connect with
    + the parent. The valve, cluster or realm Mbeans are not autconnect with there parent.
    + Use MBeanFacrory create operation instead. +

    + +
    JMXAccessorUnregisterTask: remote unregister mbean ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameFull qualified JMX ObjectName -- Catalina:type=MBeanFactory +
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    +

    +

    +Example to unregister remote mbean
    +

    +    <jmx:unregister
    +        name="Catalina:type=MBeanFactory" 
    +    />
    +
    +

    +

    + Warning: A lot of tomcat mbeans can't be really unregister.
    + The Mbeans are not deregister from parent. Use MBeanFacrory
    + remove operation instead. +

    + +
    JMXAccessorCondition: express condition
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    urlSet jmx connection url - service:jmx:rmi:///jndi/rmi://localhost:8050/jmxrmi +
    hostSet the host, shortcut the very long url syntax. + localhost
    portSet the remote connection port + 8050
    usernameremote jmx connection user name. +
    passwordremote jmx connection password. +
    refName of the internal connection reference. With this attribute you can + configure more the one connection inside the same ant projekt. + jmx.server
    nameFull qualified JMX ObjectName -- Catalina:type=Server +
    echoEcho condition usage (access and result) + false
    ifOnly execute if a property of the given name exists in the current project. +
    unlessOnly execute if a property of the given name not exists in the current project. +
    value (requiered)Second arg for operation +
    typeValue type to express operation (support long and double) + long
    operation express one +
      +
    • == equals
    • +
    • != not equals
    • +
    • > greater than (&gt;)
    • +
    • >= greater than or equals (&gt;=)
    • +
    • < lesser than (&lt;)
    • +
    • <= lesser than or equals (&lt;=)
    • +
    +
    ==
    +

    +

    +Wait for server connection and that cluster backup node is accessable
    +

    +      <target name="wait">
    +         <waitfor maxwait="${maxwait}" maxwaitunit="second" timeoutproperty="server.timeout" >
    +            <and>
    +                <socket server="${server.name}" port="${server.port}"/>
    +                <http url="${url}"/>
    +                <jmx:condition
    +                    operation="==" 
    +                    host="localhost" 
    +                    port="9014"
    +                    username="controlRole"
    +                    password="tomcat"
    +                    name="Catalina:type=IDataSender,host=localhost,senderAddress=192.168.111.1,senderPort=9025"
    +                    attribute="connected"
    +                    value="true"
    +                />
    +            </and>
    +        </waitfor>
    +        <fail if="server.timeout" message="Server ${url} don't answer inside ${maxwait} sec" />
    +        <echo message="Server ${url} alive" />
    +    </target>
    +
    +

    + +
    JMXAccessorEqualsCondition: equals Mbean ant condition
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    urlSet jmx connection url - service:jmx:rmi:///jndi/rmi://localhost:8050/jmxrmi +
    hostSet the host, shortcut the very long url syntax. + localhost
    portSet the remote connection port + 8050
    usernameremote jmx connection user name. +
    passwordremote jmx connection password. +
    refName of the internal connection referenz. With this attribute you can + configure more the one connection inside the same ant projekt. + jmx.server
    nameFull qualified JMX ObjectName -- Catalina:type=Server +
    echoEcho condition usage (access and result) + false
    +

    +

    +Wait for server connection and that cluster backup node is accessable
    +

    +      <target name="wait">
    +         <waitfor maxwait="${maxwait}" maxwaitunit="second" timeoutproperty="server.timeout" >
    +            <and>
    +                <socket server="${server.name}" port="${server.port}"/>
    +                <http url="${url}"/>
    +                <jmx:equals 
    +                    host="localhost" 
    +                    port="9014"
    +                    username="controlRole"
    +                    password="tomcat"
    +                    name="Catalina:type=IDataSender,host=localhost,senderAddress=192.168.111.1,senderPort=9025"
    +                    attribute="connected"
    +                    value="true"
    +                />
    +            </and>
    +        </waitfor>
    +        <fail if="server.timeout" message="Server ${url} don't answer inside ${maxwait} sec" />
    +        <echo message="Server ${url} alive" />
    +    </target>
    +
    +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/BUILDING.txt b/P51/apache-tomcat-6.0.14/webapps/docs/printer/BUILDING.txt new file mode 100644 index 0000000..d8eb6e9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/BUILDING.txt @@ -0,0 +1,121 @@ +$Id: BUILDING.txt 467221 2006-10-24 03:16:33Z markt $ + + ==================================================== + Building The Apache Tomcat 6.0 Servlet/JSP Container + ==================================================== + +This subproject contains the source code for Tomcat 6.0, a container that +implements the Servlet 2.5 and JSP 2.1 specifications from the Java +Community Process . In order to build a binary +distribution version of the container from a source distribution, +do the following: + + +(0) Download and Install a Java Development Kit + +* If the JDK is already installed, skip to (1). + +* Download a Java Development Kit (JDK) release (version 1.5.x or later) from: + + http://java.sun.com/j2se/ + +* Install the JDK according to the instructions included with the release. + +* Set an environment variable JAVA_HOME to the pathname of the directory + into which you installed the JDK release. + + +(1) Install Apache Ant 1.6.x on your computer + +* If Apache Ant 1.6.x is already installed on your computer, skip to (2). + +* Download a binary distribution of Ant 1.6.x from: + + http://ant.apache.org/bindownload.cgi + +* Unpack the binary distribution into a convenient location so that the + Ant release resides in its own directory (conventionally named + "apache-ant-[version]"). For the purposes of the remainder of this document, + the symbolic name "${ant.home}" is used to refer to the full pathname of + the release directory. + +* Create an ANT_HOME environment variable to point the directory + ${ant.home}. + +* Modify the PATH environment variable to include the directory + ${ant.home}/bin in its list. This makes the "ant" command line script + available, which will be used to actually perform the build. + + +(2) Building Tomcat 6.0 + +(2.1) Checkout or obtain the source code for Tomcat 6.0 + +* Tomcat SVN repository URL: + http://svn.apache.org/repos/asf/tomcat/tc6.0.x/ + +* Download a source package from: + http://tomcat.apache.org/download-60.cgi + +* Checkout the source using SVN, selecting the desired version or + branch (current development source is at + http://svn.apache.org/repos/asf/tomcat/tc6.0.x/trunk/), or + unpack the source package. The location where the source has been + placed will be referred as ${tomcat.source}. + +(2.2) Building + +* Go to that directory, and do: + + cd ${tomcat.source} + ant download + ant + +* NOTE: Users accessing the Internet through a proxy must use a properties + file to indicate to Ant the proxy configuration. Read below. + +* WARNING: Running this command will download binaries to the /usr/share/java + directory. Make sure this is appropriate to do on your computer. On Windows, + this usually corresponds to the "C:\usr\share\java" directory, unless Cygwin + is used. Read below to customize the directory used to download the binaries. + +* The build can be controlled by creating a ${tomcat.source}/build.properties + file, and adding the following content to it: + + # ----- Proxy setup ----- + # Uncomment if using a proxy server + #proxy.host=proxy.domain + #proxy.port=8080 + #proxy.use=on + + # ----- Default Base Path for Dependent Packages ----- + # Replace this path with the directory path where dependencies binaries + # should be downloaded + base.path=/usr/share/java + + +(3) Updating sources + +It is recommended that you regularly update the downloaded Tomcat 6 sources +using your SVN client. + +(4) Rebuilds + +For a quick rebuild of only modified code you can use: + + cd ${tomcat.source} + ant + +(5) Building the servlet and jsp API documentation + +The documentation can be easly built: + + cd ${tomcat.source} + ant -f dist.xml dist-javadoc + +(6) Building a release running tests: + + cd ${tomcat.source} + ant -f dist.xml release + + diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/NOTICE b/P51/apache-tomcat-6.0.14/webapps/docs/printer/NOTICE new file mode 100644 index 0000000..db81026 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/NOTICE @@ -0,0 +1,16 @@ +Apache Tomcat +Copyright 1999-2007 The Apache Software Foundation + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + +The Windows Installer is built with the Nullsoft +Scriptable Install Sysem (NSIS), which is +open source software. The original software and +related information is available at +http://nsis.sourceforge.net. + +Java compilation software for JSP pages is provided by Eclipse, +which is open source software. The orginal software and +related infomation is available at +http://www.eclipse.org. diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/RUNNING.txt b/P51/apache-tomcat-6.0.14/webapps/docs/printer/RUNNING.txt new file mode 100644 index 0000000..9cdae5a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/RUNNING.txt @@ -0,0 +1,147 @@ +$Id: RUNNING.txt 354430 2005-12-06 13:44:26Z yoavs $ + + =================================================== + Running The Apache Tomcat 6.0 Servlet/JSP Container + =================================================== + +Apache Tomcat 6.0 requires the Java 2 Standard Edition Runtime +Environment (JRE) version 5.0 or later. + +============================= +Running With JRE 5.0 Or Later +============================= + +(1) Download and Install the J2SE Runtime Environment (JRE) + +(1.1) Download the Java 2 Standard Edition Runtime Environment (JRE), + release version 5.0 or later, from http://java.sun.com/j2se. + +(1.2) Install the JRE according to the instructions included with the + release. +(1.3) Set an environment variable named JRE_HOME to the pathname of + the directory into which you installed the JRE, e.g. c:\jre5.0 + or /usr/local/java/jre5.0. + +NOTE: You may also use the full JDK rather than just the JRE. In this + case set your JAVA_HOME environment variable to the pathname of + the directory into which you installed the JDK, e.g. c:\j2sdk5.0 + or /usr/local/java/j2sdk5.0. + + +(2) Download and Install the Tomcat Binary Distribution + +NOTE: As an alternative to downloading a binary distribution, you can create +your own from the Tomcat source repository, as described in "BUILDING.txt". +If you do this, the value to use for "${catalina.home}" will be the "dist" +subdirectory of your source distribution. + +(2.1) Download a binary distribution of Tomcat from: + + http://tomcat.apache.org + +(2.2) Unpack the binary distribution into a convenient location so that the + distribution resides in its own directory (conventionally named + "apache-tomcat-[version]"). For the purposes of the remainder of this document, + the symbolic name "$CATALINA_HOME" is used to refer to the full + pathname of the release directory. + + +(3) Start Up Tomcat + +(3.1) Tomcat can be started by executing the following commands: + + $CATALINA_HOME\bin\startup.bat (Windows) + + $CATALINA_HOME/bin/startup.sh (Unix) + +(3.2) After startup, the default web applications included with Tomcat will be + available by visiting: + + http://localhost:8080/ + +(3.3) Further information about configuring and running Tomcat can be found in + the documentation included here, as well as on the Tomcat web site: + + http://tomcat.apache.org + + +(4) Shut Down Tomcat + +(4.1) Tomcat can be shut down by executing the following command: + + $CATALINA_HOME\bin\shutdown (Windows) + + $CATALINA_HOME/bin/shutdown.sh (Unix) + + +================================================== +Advanced Configuration - Multiple Tomcat Instances +================================================== + +In many circumstances, it is desirable to have a single copy of a Tomcat +binary distribution shared among multiple users on the same server. To make +this possible, you can pass a "-Dcatalina.base=$CATALINA_BASE" argument when +executing the startup command (see (2)). In this +"-Dcatalina.base=$CATALINA_BASE" argument, replace $CATALINA_BASE with the +directory that contains the files for your 'personal' Tomcat instance. + +When you use this "-Dcatalina.base=$CATALINA_BASE" argument, Tomcat will +calculate all relative references for files in the following directories based +on the value of $CATALINA_BASE instead of $CATALINA_HOME: + +* conf - Server configuration files (including server.xml) + +* logs - Log and output files + +* lib - For classes and resources that must be shared across all web + applications + +* webapps - Automatically loaded web applications + +* work - Temporary working directories for web applications + +* temp - Directory used by the JVM for temporary files (java.io.tmpdir) + +If you do not pass the "-Dcatalina.base=$CATALINA_BASE" argument to the +startup command, $CATALINA_BASE will default to the same value as $CATALINA_HOME, + which means that the same directory is used for all relative path resolutions. + + +================ +Troubleshooting +================ + +There are only really 3 things likely to go wrong during the stand-alone +Tomcat install: + +(1) The most common hiccup is when another web server (or any process for that + matter) has laid claim to port 8080. This is the default HTTP port that + Tomcat attempts to bind to at startup. To change this, open the file: + + $CATALINA_HOME/conf/server.xml + + and search for '8080'. Change it to a port that isn't in use, and is + greater than 1024, as ports less than or equal to 1024 require superuser + access to bind under UNIX. + + Restart Tomcat and you're in business. Be sure that you replace the "8080" + in the URL you're using to access Tomcat. For example, if you change the + port to 1977, you would request the URL http://localhost:1977/ in your browser. + +(2) An "out of environment space" error when running the batch files in + Windows 95, 98, or ME operating systems. + + Right-click on the STARTUP.BAT and SHUTDOWN.BAT files. Click on + "Properties", then on the "Memory" tab. For the "Initial environment" field, + enter in something like 4096. + + After you click apply, Windows will create shortcuts which you can use + to start and stop the container. + +(3) The 'localhost' machine isn't found. This could happen if you're behind a + proxy. If that's the case, make sure the proxy configuration for your + browser knows that you shouldn't be going through the proxy to access the + "localhost". + + In Netscape, this is under Edit/Preferences -> Advanced/Proxies, and in + Internet Explorer, Tools -> Internet Options -> Connections -> LAN Settings. diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/aio.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/aio.html new file mode 100644 index 0000000..07339bb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/aio.html @@ -0,0 +1,313 @@ +Apache Tomcat 6.0 - Advanced IO and Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Advanced IO and Tomcat

    Introduction
    + +

    + With usage of APR or NIO APIs as the basis of its connectors, Tomcat is + able to provide a number of extensions over the regular blocking IO + as provided with support for the Servlet API. +

    + +

    + IMPORTANT NOTE: Usage of these features requires using the APR or NIO + HTTP connectors. The classic java.io HTTP connector and the AJP connectors + do not support them. +

    + +
    Comet support
    + +

    + Comet support allows a servlet to process IO aynchronously, recieving + events when data is available for reading on the connection (rather than + always using a blocking read), and writing data back on connections + asychnonously (most likely responding to some event raised from some + other source). +

    + +
    CometEvent
    + +

    + Servlets which implement the org.apache.catalina.CometProcessor + interface will have their event method invoked rather than the usual service + method, according to the event which occurred. The event object gives + access to the usual request and response objects, which may be used in the + usual way. The main difference is that those objects remain valid and fully + functional at any time between processing of the BEGIN event until processing + an END or ERROR event. + The following event types exist: +

    + +
      +
    • EventType.BEGIN: will be called at the beginning + of the processing of the connection. It can be used to initialize any relevant + fields using the request and response objects. Between the end of the processing + of this event, and the beginning of the processing of the end or error events, + it is possible to use the response object to write data on the open connection. + Note that the response object and depedent OutputStream and Writer are still + not synchronized, so when they are accessed by multiple threads, + synchronization is mandatory. After processing the initial event, the request + is considered to be committed.
    • +
    • EventType.READ: This indicates that input data is available, and that one read can be made + without blocking. The available and ready methods of the InputStream or + Reader may be used to determine if there is a risk of blocking: the servlet + should read while data is reported available, and can make one additional read + should read while data is reported available. When encountering a read error, + the servlet should report it by propagating the exception properly. Throwing + an exception will cause the error event to be invoked, and the connection + will be closed. + Alternately, it is also possible to catch any exception, perform clean up + on any data structure the servlet may be using, and using the close method + of the event. It is not allowed to attempt reading data from the request + object outside of the execution of this method.
      + On some platforms, like Windows, a client disconnect is indicated by a READ event. + Reading from the stream may result in -1, an IOException or an EOFException. + Make sure you properly handle all these three cases. + If you don't catch the IOException, Tomcat will instantly invoke your event chain with an ERROR as + it catches the error for you, and you will be notified of the error at that time. +
    • +
    • EventType.END: End may be called to end the processing of the request. Fields that have + been initialized in the begin method should be reset. After this event has + been processed, the request and response objects, as well as all their dependent + objects will be recycled and used to process other requests. End will also be + called when data is available and the end of file is reached on the request input + (this usually indicates the client has pipelined a request).
    • +
    • EventType.ERROR: Error will be called by the container in the case where an IO exception + or a similar unrecoverable error occurs on the connection. Fields that have + been initialized in the begin method should be reset. After this event has + been processed, the request and response objects, as well as all their dependent + objects will be recycled and used to process other requests.
    • +
    + +

    + There are some event subtypes which allow finer processing of events (note: some of these + events require usage of the org.apache.catalina.valves.CometConnectionManagerValve valve): +

    + +
      +
    • EventSubType.TIMEOUT: The connection timed out (sub type of ERROR); note that this ERROR + type is not fatal, and the connection will not be closed unless the servlet uses the close + method of the event. +
    • +
    • EventSubType.CLIENT_DISCONNECT: The client connection was closed (sub type of ERROR). + method of the event. +
    • +
    • EventSubType.IOEXCEPTION: An IO exception occurred, such as invalid content, for example, + an invalid chunk block (sub type of ERROR). +
    • +
    • EventSubType.WEBAPP_RELOAD: The web application is being reloaded (sub type of END). +
    • +
    • EventSubType.SESSION_END: The servlet ended the session (sub type of END). +
    • +
    + +

    + As described above, the typical lifecycle of a Comet request will consist in a series of + events such as: BEGIN -> READ -> READ -> READ -> ERROR/TIMEOUT. At any time, the servlet + may end processing of the request by using the close method of the event object. +

    + +
    + +
    CometFilter
    + +

    + Similar to regular filters, a filter chain is invoked when comet events are processed. + These filters should implement the CometFilter interface (which works in the same way as + the regular Filter interface), and should be declared and mapped in the deployment + descriptor in the same way as a regular filter. The filter chain when processing an event + will only include filters which match all the usual mapping rules, and also implement + the CometFiler interface. +

    + +
    + +
    Example code
    + +

    + The following pseudo code servlet implments asynchronous chat functionality using the API + described above: +

    + +
    +public class ChatServlet
    +    extends HttpServlet implements CometProcessor {
    +
    +    protected ArrayList<HttpServletResponse> connections = 
    +        new ArrayList<HttpServletResponse>();
    +    protected MessageSender messageSender = null;
    +    
    +    public void init() throws ServletException {
    +        messageSender = new MessageSender();
    +        Thread messageSenderThread = 
    +            new Thread(messageSender, "MessageSender[" + getServletContext().getContextPath() + "]");
    +        messageSenderThread.setDaemon(true);
    +        messageSenderThread.start();
    +    }
    +
    +    public void destroy() {
    +        connections.clear();
    +        messageSender.stop();
    +        messageSender = null;
    +    }
    +
    +    /**
    +     * Process the given Comet event.
    +     * 
    +     * @param event The Comet event that will be processed
    +     * @throws IOException
    +     * @throws ServletException
    +     */
    +    public void event(CometEvent event)
    +        throws IOException, ServletException {
    +        HttpServletRequest request = event.getHttpServletRequest();
    +        HttpServletResponse response = event.getHttpServletResponse();
    +        if (event.getEventType() == CometEvent.EventType.BEGIN) {
    +            log("Begin for session: " + request.getSession(true).getId());
    +            PrintWriter writer = response.getWriter();
    +            writer.println("<!doctype html public \"-//w3c//dtd html 4.0 transitional//en\">");
    +            writer.println("<head><title>JSP Chat</title></head><body bgcolor=\"#FFFFFF\">");
    +            writer.flush();
    +            synchronized(connections) {
    +                connections.add(response);
    +            }
    +        } else if (event.getEventType() == CometEvent.EventType.ERROR) {
    +            log("Error for session: " + request.getSession(true).getId());
    +            synchronized(connections) {
    +                connections.remove(response);
    +            }
    +            event.close();
    +        } else if (event.getEventType() == CometEvent.EventType.END) {
    +            log("End for session: " + request.getSession(true).getId());
    +            synchronized(connections) {
    +                connections.remove(response);
    +            }
    +            PrintWriter writer = response.getWriter();
    +            writer.println("</body></html>");
    +            event.close();
    +        } else if (event.getEventType() == CometEvent.EventType.READ) {
    +            InputStream is = request.getInputStream();
    +            byte[] buf = new byte[512];
    +            do {
    +                int n = is.read(buf); //can throw an IOException
    +                if (n > 0) {
    +                    log("Read " + n + " bytes: " + new String(buf, 0, n) 
    +                            + " for session: " + request.getSession(true).getId());
    +                } else if (n < 0) {
    +                    error(event, request, response);
    +                    return;
    +                }
    +            } while (is.available() > 0);
    +        }
    +    }
    +
    +    public class MessageSender implements Runnable {
    +
    +        protected boolean running = true;
    +        protected ArrayList<String> messages = new ArrayList<String>();
    +        
    +        public MessageSender() {
    +        }
    +        
    +        public void stop() {
    +            running = false;
    +        }
    +
    +        /**
    +         * Add message for sending.
    +         */
    +        public void send(String user, String message) {
    +            synchronized (messages) {
    +                messages.add("[" + user + "]: " + message);
    +                messages.notify();
    +            }
    +        }
    +
    +        public void run() {
    +
    +            while (running) {
    +
    +                if (messages.size() == 0) {
    +                    try {
    +                        synchronized (messages) {
    +                            messages.wait();
    +                        }
    +                    } catch (InterruptedException e) {
    +                        // Ignore
    +                    }
    +                }
    +
    +                synchronized (connections) {
    +                    String[] pendingMessages = null;
    +                    synchronized (messages) {
    +                        pendingMessages = messages.toArray(new String[0]);
    +                        messages.clear();
    +                    }
    +                    // Send any pending message on all the open connections
    +                    for (int i = 0; i < connections.size(); i++) {
    +                        try {
    +                            PrintWriter writer = connections.get(i).getWriter();
    +                            for (int j = 0; j < pendingMessages.length; j++) {
    +                                writer.println(pendingMessages[j] + "<br>");
    +                            }
    +                            writer.flush();
    +                        } catch (IOException e) {
    +                            log("IOExeption sending message", e);
    +                        }
    +                    }
    +                }
    +
    +            }
    +
    +        }
    +
    +    }
    +
    +}
    +  
    + +
    +
    Comet timeouts
    +

    If you are using the NIO connector, you can set individual timeouts for your different comet connections. + To set a timeout, simple set a request attribute like the following code shows: +

    CometEvent event.... event.setTimeout(30*1000);
    or +
    event.getHttpServletRequest().setAttribute("org.apache.tomcat.comet.timeout", new Integer(30 * 1000));
    + This sets the timeout to 30 seconds. + Important note, in order to set this timeout, it has to be done on the BEGIN event. + The default value is soTimeout +

    +

    If you are using the APR connector, all Comet connections will have the same timeout value. It is soTimeout*50 +

    +
    + +
    Asynchronous writes
    + +

    + When APR or NIO is enabled, Tomcat supports using sendfile to send large static files. + These writes, as soon as the system load increases, will be performed + asynchronously in the most efficient way. Instead of sending a large response using + blocking writes, it is possible to write content to a static file, and write it + using a sendfile code. A caching valve could take advantage of this to cache the + response data in a file rather than store it in memory. Sendfile support is + available if the request attribute org.apache.tomcat.sendfile.support + is set to Boolean.TRUE. +

    + +

    + Any servlet can instruct Tomcat to perform a sendfile call by setting the appropriate + response attributes. When using sendfile, it is best to ensure that neither the + request or response have been wrapped, since as the response body will be sent later + by the connector itself, it cannot be filtered. Other than setting the 3 needed + response attributes, the servlet should not send any response data, but it may use + any method which will result in modifying the response header (like setting cookies). +

    + +
      +
    • org.apache.tomcat.sendfile.filename: Canonical filename of the file which will be sent as + a String
    • +
    • org.apache.tomcat.sendfile.start: Start offset as a Long
    • +
    • org.apache.tomcat.sendfile.start: End offset as a Long
    • +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/apr.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/apr.html new file mode 100644 index 0000000..4e63163 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/apr.html @@ -0,0 +1,274 @@ +Apache Tomcat 6.0 - Apache Portable Runtime and Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Apache Portable Runtime and Tomcat

    Introduction
    + +

    + Tomcat can use the Apache Portable Runtime to + provide superior scalability, performance, and better integration with native server + technologies. The Apache Portable Runtime is a highly portable library that is at + the heart of Apache HTTP Server 2.x. APR has many uses, including access to advanced IO + functionality (such as sendfile, epoll and OpenSSL), OS level functionality (random number + generation, system status, etc), and native process handling (shared memory, NT + pipes and Unix sockets). +

    + +

    + These features allows making Tomcat a general purpose webserver, will enable much better + integration with other native web technologies, and overall make Java much more viable as + a full fledged webserver platform rather than simply a backend focused technology. +

    + +
    Installation
    + +

    + APR support requires three main native components to be installed: +

      +
    • APR library
    • +
    • JNI wrappers for APR used by Tomcat (libtcnative)
    • +
    • OpenSSL libraries
    • +
    +

    + +
    Windows
    + +

    + Windows binaries are provided for tcnative-1, which is a statically compiled .dll which includes + OpenSSL and APR. It can be downloaded from here + as 32bit or AMD x86-64 binaries. + In security conscious production environments, it is recommended to use separate shared dlls + for OpenSSL, APR, and libtcnative-1, and update them as needed according to security bulletins. + Windows OpenSSL binaries are linked from the Official OpenSSL + website (see related/binaries). +

    + +
    + +
    Linux
    + +

    + Most Linux distributions will ship packages for APR and OpenSSL. The JNI wrapper (libtcnative) will + then have to be compiled. It depends on APR, OpenSSL, and the Java headers. +

    + +

    + Requirements: +

      +
    • APR 1.2+ development headers (libapr1-dev package)
    • +
    • OpenSSL 0.9.7+ development headers (libssl-dev package)
    • +
    • JNI headers from Java compatible JDK 1.4+
    • +
    • GNU development environment (gcc, make)
    • +
    +

    + +

    + The wrapper library sources are located in the Tomcat binary bundle, in the + bin/tomcat-native.tar.gz archive. + Once the build environment is installed and the source archive is extracted, the wrapper library + can be compiled using (from the folder containing the configure script): +

    ./configure && make && make install
    +

    + +
    + +
    APR Components
    + +

    + Once the libraries are properly installed and available to Java (if loading fails, the library path + will be displayed), the Tomcat connectors will automatically use APR. Configuration of the connectors + is similar to the regular connectors, but have a few extra attributes which are used to configure + APR components. Note that the defaults should be well tuned for most use cases, and additional + tweaking shouldn't be required. +

    + +

    + When APR is enabled, the following features are also enabled in Tomcat: +

      +
    • Secure session ID generation by default on all platforms (platforms other than Linux required + random number generation using a configured entropy)
    • +
    • OS level statistics on memory usage and CPU usage by the Tomcat process are displayed by + the status servlet
    • +
    +

    + +
    APR Lifecycle Listener Configuration
    +
    AprLifecycleListener
    + +

    + Name of the SSLEngine to use. off: Do not use SSL, on: Use SSL but no specific ENGINE. + The default value is on. + This initializes the native SSL engine, then enable the use of this engine in the connector + using the SSLEnabled attribute. Example: +

    +<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
    +      
    +

    +

    See the Official OpenSSL + website for more details on SSL hardware engines and manufacturers. +

    +
    +
    +
    APR Connectors Configuration
    + +
    HTTP
    + +

    + When APR is enabled, the HTTP connector will use sendfile for hadling large static files (all such + files will be sent ansychronously using high performance kernel level calls), and will use + a socket poller for keepalive, increasing scalability of the server. +

    + +

    + The following attributes are supported in the HTTP APR connector in addition to the ones supported + in the regular HTTP connector: +

    + +
    AttributeDescription
    keepAliveTimeout +

    The number of milliseconds this Connector will wait for + another HTTP request before closing the connection. + The default value is to use the value that has been set for the + connectionTimeout attribute. This value also controls the timeout interval which + is used for Comet connections.

    +
    pollTime +

    Duration of a poll call. Lowering this value will slightly decrease latency of connections + being kept alive in some cases, but will use more CPU as more poll calls are being made. The + default value is 2000 (5ms).

    +
    pollerSize +

    Amount of sockets that the poller responsible for polling kept alive connections can hold at a + given time. Extra connections will be closed right away. The default value is 8192, corresponding to + 8192 keepalive connections.

    +
    useSendfile +

    Use kernel level sendfile for certain static files. The default value is true.

    +
    sendfileSize +

    Amount of sockets that the poller responsible for sending static files asynchronously can hold + at a given time. Extra connections will be closed right away without any data being sent + (resulting in a zero length file on the client side). Note that in most cases, sendfile is a call + that will return right away (being taken care of "synchonously" by the kernel), and the sendfile + poller will not be used, so the amount of static files which can be sent concurrently is much larger + than the specified amount. The default value is 1024.

    +
    + +
    + +
    HTTPS
    + +

    + When APR is enabled, the HTTPS connector will use a socket poller for keepalive, increasing + scalability of the server. It also uses OpenSSL, which may be more optimized than JSSE depending + on the processor being used, and can be complemented with many commercial accelerator components. + Unlike the HTTP connector, the HTTPS connector cannot use sendfile to optimize static file + processing. +

    + +

    + The HTTPS APR connector has the same basic attributes than the HTTP APR connector, but adds + OpenSSL specific ones. For the full details on using OpenSSL, please refer to OpenSSL documentations + and the many books available for it (see the Official OpenSSL + website). The SSL specific attributes for the connector are: +

    + +
    AttributeDescription
    SSLEnabled +

    + Enable SSL on the socket, default value is false. Set this value to true + to enable SSL handshake/encryption/decryption in the APR connector. +

    +
    SSLProtocol +

    + Protocol which may be used for communicating with clients. The default is "all", with + other acceptable values being "SSLv2", "SSLv3", "TLSv1", and "SSLv2+SSLv3". +

    +
    SSLCipherSuite +

    + Ciphers which may be used for communicating with clients. The default is "ALL", with + other acceptable values being a list of ciphers, with ":" used as the delimiter + (see OpenSSL documentation for the list of ciphers supported). +

    +
    SSLCertificateFile +

    + Name of the file that contains the server certificate. The format is PEM-encoded. +

    +
    SSLCertificateKeyFile +

    + Name of the file that contains the server private key. The format is PEM-encoded. + The default value is the value of "SSLCertificateFile" and in this case both certificate + and private key have to be in this file (NOT RECOMMENDED). +

    +
    SSLPassword +

    + Pass phrase for the encrypted private key. If "SSLPassword" is not provided, the callback fonction + should prompt for the pass phrase. +

    +
    SSLVerifyClient +

    + Ask client for certificate. The default is "none", meaning the client will not have the opportunity + to submit a certificate. Other acceptable values include "optional", "require" and "optionalNoCA". +

    +
    SSLVerifyDepth +

    + Maximum verification depth for client certificates. The default is "10". +

    +
    SSLCACertificateFile +

    + See the mod_ssl documentation. +

    +
    SSLCACertificatePath +

    + See the mod_ssl documentation. +

    +
    SSLCertificateChainFile +

    + See the mod_ssl documentation. +

    +
    SSLCARevocationFile +

    + See the mod_ssl documentation. +

    +
    SSLCARevocationPath +

    + See the mod_ssl documentation. +

    +
    + +

    + An example SSL Connector declaration can be: +

    +    <Connector port="443" maxHttpHeaderSize="8192"
    +               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
    +               enableLookups="false" disableUploadTimeout="true"
    +               acceptCount="100" scheme="https" secure="true"
    +               SSLEnabled="true" 
    +               SSLCertificateFile="${catalina.base}/conf/localhost.crt"
    +               SSLCertificateKeyFile="${catalina.base}/conf/localhost.key" />
    +

    + +
    + +
    AJP
    + +

    + When APR is enabled, the AJP connector will use a socket poller for keepalive, increasing + scalability of the server. As AJP is designed around a pool of persistent (or almost + persistent) connections, this will reduce significantly the amount of processing threads + needed by Tomcat. Unlike the HTTP connector, the AJP connector cannot use sendfile to optimize + static file processing. +

    + +

    + The following attributes are supported in the AJP APR connector in addition to the ones supported + in the regular AJP connector: +

    + +
    AttributeDescription
    pollTime +

    Duration of a poll call. Lowering this value will slightly decrease latency of connections + being kept alive in some cases, but will use more CPU as more poll calls are being made. The + default value is 2000 (5ms).

    +
    pollerSize +

    Amount of sockets that the poller responsible for polling kept alive connections can hold at a + given time. Extra connections will be closed right away. The default value is 8192, corresponding to + 8192 keepalive connections.

    +
    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/balancer-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/balancer-howto.html new file mode 100644 index 0000000..da57b84 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/balancer-howto.html @@ -0,0 +1,24 @@ +Apache Tomcat 6.0 - Load Balancer HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Load Balancer HOW-TO

    Table of Contents
    +

    + +Using the JK native connector
    + +Using Apache HTTP Server 2.x and mod_proxy
    + +

    +
    Using the JK 1.2.x native connector
    + +Please refer to the JK 1.2.x documentation. + +
    Using Apache HTTP Server 2.x with mod_proxy
    + +Please refer to the mod_proxy documentation for Apache HTTP Server 2.2. This supports either +HTTP or AJP load balancing. This new version of mod_proxy is also useable with +Apache HTTP Server 2.0, but mod_proxy will have to be compiled separately using the code +from Apache HTTP Server 2.2. + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/building.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/building.html new file mode 100644 index 0000000..dbf4386 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/building.html @@ -0,0 +1,188 @@ +Apache Tomcat 6.0 - Building Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Building Tomcat

    Introduction
    + +

    +Building Apache Tomcat from SVN is very easy, and is the first step to contributing to +Tomcat. The following is a step by step TODO list. +

    + +
    Download a Java Development Kit (JDK) release (version 1.5.x or later)
    + +

    +The Sun JDK can be downloaded here. +

    + +

    +IMPORTANT: Set an environment variable JAVA_HOME to the pathname of the +directory into which you installed the JDK release. +

    + +
    Install Apache Ant 1.6.5 or later
    + +

    +Download a binary distribution of Ant 1.6.5 or later from +here. +

    + +

    +Unpack the binary distribution into a convenient location so that the +Ant release resides in its own directory (conventionally named +"apache-ant-1.6.x"). For the purposes of the remainder of this document, +the symbolic name "${ant.home}" is used to refer to the full pathname of + the release directory. +

    + +

    +Create an ANT_HOME environment variable to point the directory ${ant.home}, +and modify the PATH environment variable to include directory +"${ant.home}/bin" in its list. This makes the "ant" command line script +available, which will be used to actually perform the build. +

    + +
    Checkout or obtain the source code for Tomcat 6.0
    + +

    + Tomcat SVN repository URL: + http://svn.apache.org/repos/asf/tomcat/tc6.0.x/ +

    + +

    + Download a source package from: + http://tomcat.apache.org/download-60.cgi +

    + +

    + Checkout the source using SVN, selecting the desired version or + branch (current development source is at + http://svn.apache.org/repos/asf/tomcat/tc6.0.x/trunk/), or + unpack the source package. The location where the source has been + placed will be referred as ${tomcat.source}. +

    + +
    Building Tomcat
    + +

    +Use the following commands: +
    + cd ${tomcat.source}
    + ant download
    + ant
    +
    +

    + +

    +NOTE: Users accessing the Internet through a proxy must use a properties + file to indicate to Ant the proxy configuration. Read below. +

    + +

    +WARNING: Running this command will download binaries to the + /usr/share/java directory. + Make sure this is appropriate to do so on your computer. On Windows, + this usually corresponds to the C:\usr\share\java directory, + unless Cygwin is used. Read below to customize the directory used + to download the binaries. +

    + +

    +The build can be controlled by creating a ${tomcat.source}/build.properties + file, and adding the following content to it: +
    + # ----- Proxy setup -----
    + # Uncomment if using a proxy server.
    + #proxy.host=proxy.domain
    + #proxy.port=8080
    + #proxy.use=on
    +
    + # ----- Default Base Path for Dependent Packages -----
    + # Replace this path with the directory path where
    + # dependencies binaries should be downloaded.
    + base.path=/usr/share/java
    +
    +

    + +
    Building with Eclipse
    + +

    +Important: +This is not a supported means of building Tomcat; this information is +provided without warranty :-). +The only supported means of building Tomcat is with the "ant build" +described above. +However, some developers like to work on Java code with a Java IDE, +and the following steps have been used by some developers. +

    + +

    +Note that you must complete all the above steps to fetch +the repositories and build some JAR files the first time. +After you have completed the above steps, you can set up a +series of Eclipse 4 projects. +Note that this will not let you build everything under Eclipse; +the build process requires use of Ant for the many stages that aren't +simple Java compilations. +However, it will allow you to view and edit the Java code, +get warnings, reformat code, perform refactorings, run Tomcat +under the IDE, and so on. +

    + +

    +Use Windows->Preferences and then Java->Build Path->Classpath +Variables to add two new Classpath variables: +

    + +

    + + + +
    TOMCAT_LIBS_BASEthe base path where the binary dependencies have been downloaded
    ANT_HOMEthe base path of Ant 1.6.2 or later
    +

    + +

    +Use File->New Project to create a new Java project +for each of the binaries repository (e.g., /usr/share/java), +container, connectors, jasper, servletapi. +Unless you thought ahead to make the ${tomcat.source} directory be under +your Workspace folder, tell Eclipse the external location using "Import/Export...", +General->Existing Project into Workspace. +

    + +

    +Eclipse .project and .classpath files are provided in each of these +directories so Eclipse should find all source trees and jars, and +hopefully compile without problems. Note that these +files assume you are using Eclipse with a 5.0 or later JDK; also, the +connectors module must be built with a compiler compliance level of 5.0. +

    + +

    +To run Tomcat without a special IDE plug-in, you can simply use Run->Run... +enter "org.apache.catalina.startup.Catalina" as the main class, +"start" as program arguments, and +"-Dcatalina.home=..." (with the name of your build directory) +as VM arguments. +

    + +

    +Note also that due to the way the Tomcat source is assembled +from several SVN projects, you may not be able to use the Eclipse +SVN client to update (nor to commit, if you are a committer). +Use the external SVN client of your choice, then use the +Eclipse PackageExplorer or Navigator "Refresh" context menu item +to tell Eclipse that you've updated the files. +

    + +
    Building with other IDEs
    +

    +The same caveats apply as for Eclipse, above. +

    + +

    +The same general idea should work in most IDEs; it has been reported +to work in Idea, for example. +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/cgi-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/cgi-howto.html new file mode 100644 index 0000000..f802d6e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/cgi-howto.html @@ -0,0 +1,54 @@ +Apache Tomcat 6.0 - CGI How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    CGI How To

    Introduction
    + +

    The CGI (Common Gateway Interface) defines a way for a web server to +interact with external content-generating programs, which are often +referred to as CGI programs or CGI scripts. +

    + +

    Within Tomcat, CGI support can be added when you are using Tomcat as your +HTTP server and require CGI support. Typically this is done +during development when you don't want to run a web server like +Apache httpd. +Tomcat's CGI support is largely compatible with Apache httpd's, +but there are some limitations (e.g., only one cgi-bin directory). +

    + +

    CGI support is implemented using the servlet class +org.apache.catalina.servlets.CGIServlet. Traditionally, +this servlet is mapped to the URL pattern "/cgi-bin/*".

    + +

    By default CGI support is disabled in Tomcat.

    +
    Installation
    + +

    CAUTION - CGI scripts are used to execute programs +external to the Tomcat JVM. If you are using the Java SecurityManager this +will bypass your security policy configuration in catalina.policy.

    + +

    Remove the XML comments from around the CGI servlet and servlet-mapping +configuration in $CATALINA_BASE/conf/web.xml.

    +
    Configuration
    + +

    There are several servlet init parameters which can be used to +configure the behaviour of the CGI servlet. +

      +
    • cgiPathPrefix - The CGI search path will start at +the web application root directory + File.separator + this prefix. +The default cgiPathPrefix is WEB-INF/cgi
    • +
    • debug - Debugging detail level for messages logged +by this servlet. Default 0.
    • +
    • executable - The of the executable to be used to +run the script. Default is perl.
    • +
    • parameterEncoding - Name of the parameter encoding +to be used with the GCI servlet. Default is +System.getProperty("file.encoding","UTF-8").
    • +
    • passShellEnvironment - Should the shell environment +variables (if any) be passed to the CGI script? Default is +false.
    • +
    +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/changelog.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/changelog.html new file mode 100644 index 0000000..7ae1824 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/changelog.html @@ -0,0 +1,1003 @@ +Apache Tomcat 6.0 - Changelog
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Changelog

    Tomcat 6.0.14 (remm)
    +
    General
    + + +
    docs + Correct j.u.l log levels in JULI docs. (rjung) +
    +
    +
    Catalina
    + + + + + + + + + + + + + + + + + +
    fix + Handle special case of ROOT when re-loading webapp after ROOT.xml has + been modified. In some circumstances the reloaded ROOT webapp had no + associated resources. (markt) +
    fix + Remove invalid attribute "encoding" of MBean MemoryUserDatabase, + which lead to errors in the manager webapp JMXProxy output. (rjung) +
    fix + 33774 Retry JNDI authentiction on ServiceUnavailableException + as at least one provider throws this after an idle connection has been + closed. (markt) +
    fix + 39875: Fix BPE in RealmBase.init(). Port of yoavs's fix from + Tomcat 5. (markt) +
    fix + 41722: Make the role-link element optional (as required by + the spec) when using a security-role-ref element. (markt) +
    fix + 42361: Handle multi-part forms when saving requests during + FORM authentication process. Patch provided by Peter Runge. (markt) +
    fix + 42401: Update RUNNING.txt with better JRE/JDK information. + (markt) +
    fix + 42444: prevent NPE for AccessLogValve + Patch provided by Nils Hammar (funkman) +
    fix + 42449: + JNDIRealm does not catch NullPointerException for Sun's + LDAP provider (See bug for details) (funkman) +
    fix + 42497: Ensure ETag header is present in a 304 response. + Patch provided by Len Popp. (markt) +
    fix + Fix XSS security vulnerability (CVE-2007-2450) in the Manager and Host + Manager. Reported by Daiki Fukumori. (markt) +
    fix + 42547: Fix NPE when a ResourceLink in context.xml tries to + override an env-entry in web.xml. (markt) +
    fix + Avoid some casting in ErrorReportValve (remm) +
    fix + Fix persistence API annotation, submitted by Bill Burke (remm) +
    fix + In Comet mode, if bytes are not read, send an error event (otherwise, + fields referring to the connection could remain) (remm) +
    fix + Fix Comet when running Tomcat with the security manager (remm) +
    +
    +
    Jasper
    + + + + +
    fix + 39425 Add additional system property permission to + catalina.policy for pre-compiled JSPs. (markt) +
    fix + 42438 Duplicate temporary variables were created when + jsp:attribute was used in conjunction with custom tags. Patch provided + by Brian Lenz. (markt) +
    fix + 42643 Prevent creation of duplicate JSP function mapper + variables. (markt) +
    +
    +
    Coyote
    + + + +
    fix + Separate sequence increment from getter in ThreadPool to avoid + misleading increments during monitoring via JMX. (rjung) +
    fix + Add back missing socketBuffer attribute in the java.io HTTP connector (remm) +
    +
    +
    Webapps
    + + + + + +
    fix + Don't write error on System.out, use log() instead. (rjung) +
    fix + 39813: Correct handling of new line characters in JMX + attributes. Patch provided by R Bramley. Ported from tc5.5.x r415029. (markt,rjung) +
    fix + 42459: Fix Tomcat Web Application Manager table error. (rjung) +
    fix + Fix XSS security vulnerabilities (CVE-2007-2449) in the examples. + Reported by Toshiharu Sugiyama. (markt) +
    +
    +
    Tomcat 6.0.13 (remm)
    +
    Catalina
    + + + + + + + + + +
    fix + More accurate available() method. (remm) +
    fix + Add recycle check in the event object, since it is a facade like the others. (remm) +
    fix + When processing a read event, enforce that the servlet consumes all available bytes. (remm) +
    update + Add a flag in ContainerBase which could be used in embedded scenarios to avoid a double start + of contexts (this problem generally occurs when adding contexts to a started host). (remm) +
    fix + 42309: Ability to create a connector using a custom protocol specification for embedded. + (fhanik) +
    fix + Add SSL engine flag to AprLifecycleListener. (fhanik) +
    fix + Improve event processing, so that an END event is generated when encountering EOF, and an + ERROR is always generated on client disconnects. (remm) +
    fix + Add declarations for the new XSD files. (remm) +
    +
    +
    Coyote
    + + + + + +
    fix + Add heartbeatBackgroundEnabled flag to SimpleTcpCluster. + Enable this flag don't forget to disable the channel heartbeat thread (pero) +
    fix + Possible memory leak when using comet, caused by adding the socket to the poller before + cleaning up the connection tracking structure. (remm) +
    fix + 42308: nextRequest recycles the request, which caused issues with statistics. (remm) +
    fix + Fix non recycled comet flag in the APR connector. (remm) +
    +
    +
    Cluster
    + + + +
    fix + Add heartbeatBackgroundEnabled flag to SimpleTcpCluster. + Enable this flag don't forget to disable the channel heartbeat thread (pero) +
    fix + Method name cleanup. (fhanik) +
    +
    +
    Webapps
    + + +
    fix + Some examples webapp fixes. Submitted by Frank McCown. (remm) +
    +
    +
    Tomcat 6.0.12 (remm)
    +
    General
    + + +
    fix + License source headers. Submitted by Niall Pemberton. (remm) +
    +
    +
    Catalina
    + + + + + + + + + +
    fix + 42039 Log a stack trace if a servlet throws an + UnavailableException. Patch provided by Kawasima Kazuh. (markt) +
    fix + 41990 Add some additional mime-type mappings. (markt) +
    fix + 41655 Fix message translations. Japanese translations + provided by Suzuki Yuichiro. (markt) +
    add + Add enabled attribute to AccessLogValve (pero) +
    fix + 42085: Avoid adding handlers for the root logger twice when they are explicitly + specified. (remm) +
    fix + Reduce thread local manipulation in the request dispatcher. Submitted by + Arvind Srinivasan. (remm) +
    fix + Avoid keeping references to loggers tied to the webapp classloaders after a reload in + a couple more places. (remm) +
    fix + 42202: Fix container parsing of TLDs in webapps when Tomcat is installed in + a URL encodable path. (remm) +
    +
    +
    Coyote
    + + + + +
    fix + 42119 Fix return value for request.getCharacterEncoding() when + Content-Type headers contain parameters other than charset. Patch by + Leigh L Klotz Jr. (markt) +
    update + Move away from using a thread local processor for the APR and java.io + connectors, as this does not work well when using an executor. (remm) +
    fix + Remove Comet timeout hack in the APR connector. Comet connections will now + use the regular timeout or the keepalive timeout if specified. (remm) +
    +
    +
    Webapps
    + + + + + +
    fix + 42025: Update valve documentation to refer to correct regular + expression implementation. (markt) +
    fix + Fix various paths in the manager webapps (remm) +
    add + Session viewer and editor for the HTML manager. Submitted by Cédrik Lime. (remm) +
    add + Session handling tools for the manager. Submitted by Rainer Jung. (remm) +
    +
    +
    Jasper
    + + + + +
    fix + 41869 TagData.getAttribute() should return + TagData.REQUEST_TIME_VALUE when the attribute value is an EL expression. + (markt) +
    fix + 42071 Fix IllegalStateException on multiple requests to + an unavailable JSP. Patch provided by Kawasima Kazuh. (markt) +
    fix + After a JSP throws an UnavailableException allow it to be accessed once + the unavailable period has expired. (markt) +
    +
    +
    Cluster
    + + +
    fix + Add toString method to better logging session replication message at tribes MESSAGES (pero) +
    +
    +
    Tomcat 6.0.11 (remm)
    +
    General
    + + +
    update + Update DBCP to 1.2.2, pool to 1.3, JDT to 3.2.2 and remove collections + build dependency (pero, remm) +
    +
    +
    Catalina
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    fix + Don't log pattern subtoken at ExtendedAccesLogValve (pero) +
    fix + Add some missing JMX attributes for new AccessLogValve (pero) +
    fix + 41786 Incorrect reference to catalina_home in catalina.sh/bat Patch provided by Mike Hanafey (fhanik) +
    fix + 41703 SingleSignOnMessage invalid setter, patch provided by Nils Hammar (fhanik) +
    fix + 41682 ClassCastException when logging is turned on (fhanik) +
    fix + 41530 Don't log error messages when connector is stopped (fhanik) +
    fix + 41166 Invalid handling when using replicated context (fhanik) +
    add + Added SENDFILE support for the NIO connector. (fhanik)
    +
    add + Added support for shared thread pools by adding in the <Executor> + element as a nested element to the <Service> element. (fhanik) +
    fix + 41666 Correct handling of boundary conditions for + If-Unmodified-Since and If-Modified-Since headers. Patch provided by + Suzuki Yuichiro. (markt) +
    fix + 41739 Correct handling of servlets with a load-on-startup + value of zero. These are now the first servlets to be started. (markt) +
    fix + 41747 Correct example ant script for deploy task. (markt) +
    fix + 41752 Correct error message on exception in MemoryRealm. + (markt) +
    update + 39883 Add documentation warning about using antiResourceLocking + on a webapp outside the Host's appBase. (yoavs) +
    fix + 40150 Ensure user and roll classnames are validated on startup. Patch by + Tom. (yoavs) +
    update + Refactor extend access log valve using the optimized access log valve. Submitted by + Takayuki Kaneko. (remm) +
    fix + Possible deadlock in classloading when defining packages. (remm) +
    fix + Remove excessive syncing from listener support. (remm) +
    add + Web services support. The actual factory implementations are implemented in the + extras. Submitted by Fabien Carrion. (remm) +
    update + Add logging to display APR capabilities on the platform. (remm) +
    fix + Expose executors in JMX. (remm) +
    fix + CRLF inside a URL pattern is always invalid. (remm) +
    fix + Tweak startup time display. (remm) +
    fix + Adjustments to handling exceptions with Comet. (remm) +
    fix + If the event is closed asynchronously, generate an end event for cleanup on the + next event. (remm) +
    fix + Cleanup hello webapp from the docs and fix a XSS issue in the JSP. (remm) +
    fix + Examples webapp cleanup. Submitted by Takayuki Kaneko and Markus Schönhaber. (remm) +
    fix + 41289: Create configBase, since it is no longer created elsewhere. + Submitted by Shiva Kumar H R. (remm) +
    +
    +
    Coyote
    + + + + + + + + + + +
    update + Fixed NIO memory leak caused by the NioChannel cache not working properly. +
    update + Added flag to enable/disable the usage of the pollers selector instead of a Selector pool + when the serviet is reading/writing from the input/output streams + The flag is -Dorg.apache.tomcat.util.net.NioSelectorShared=true +
    fix + Requests with multiple content-length headers are now rejected. (markt) +
    add + 41675 Add a couple of DEBUG-level logging statements to Http11Processors + when sending error responses. Patch by Ralf Hauser. (yoavs) +
    fix + Reuse digester used by the modeler. (remm) +
    update + When the platform does not support deferred accept, put accepted sockets in the + poller. (remm) +
    fix + Fix problem with blocking reads for keepalive when using an executor (the number + of busy threads is always 0). (remm) +
    update + The poller now has good performance, so remove firstReadTimeout. (remm) +
    fix + 42119 Fix return value for request.getCharacterEncoding() when + Content-Type headers contain parameters other than charset. Patch by + Leigh L Klotz Jr. (markt) +
    +
    +
    Webapps
    + + + + +
    fix + Fix previous update to servlet 2.5 xsd to use correct declaration. + (markt) +
    update + Update host configuration document for new behaviour for directories + in appBase. (markt) +
    update + 39540 Add link to httpd 2.2 mod_proxy_ajp docs in AJP connector doc. (yoavs) +
    +
    +
    Jasper
    + + + + + + + + + +
    fix + 41227 Add a bit of DEBUG-level logging to JspC so users know + which file is being compiled. (yoavs) +
    update + Remove some dead utility code, and refactor stream capture as part of the Ant compiler. (remm) +
    fix + Support the trim directive of JSP 2.1 as an equivalent of Jasper's own parameter. (remm) +
    fix + 41790: Close file stream used to read the Java source. (remm) +
    fix + Fix reporting of errors which do not correspond to a portion of the JSP source. (remm) +
    fix + Remove try/catch usage for annotation processing in classic tags. The usage + of the log method might have been questionable as well. (remm) +
    fix + Cleanup of the message that is displayed for compilation errors. (remm) +
    fix + Skip BOM when reading a JSP file. (remm) +
    +
    +
    Tomcat 6.0.10 (remm)
    +
    Catalina
    + + + + + + + + +
    update + Unify usage of security manager flag, submitted by Arvind Srinivasan. (remm) +
    fix + Fix formatting of CGI variable SCRIPT_NAME. (markt) +
    fix + 41521: Support * for servlet-name, submitted by Paul McMahan. (remm) +
    update + Cache getServletContext value, submitted by Arvind Srinivasan. (remm) +
    fix + Add options for handling special URL characters in paths, and disallow '\' and encoded '/' + due to possible differences in behavior between Tomcat and a front end webserver. (remm) +
    fix + Fix bad comparison for FORM processing, submitted by Anil Saldhana. (remm) +
    fix + 41608 Make log levels consistent when Servlet.service() + throws an exception. (markt) +
    +
    +
    Coyote
    + + +
    fix + Reduce usage of MessageBytes.getLength(), submitted by Arvind Srinivasan. (remm) +
    +
    +
    Jasper
    + + + +
    fix + 41558: Don't call synced method on every request, submitted by Arvind Srinivasan. (remm) +
    fix + Switch to a thread local page context pool. (remm) +
    +
    +
    Tomcat 6.0.9 (remm)
    +
    General
    + + + +
    fix + Use 2.5 xsd in Tomcat webapps. (markt) +
    fix + Compression filter improvements, submitted by Eric Hedström. (markt) +
    +
    +
    Catalina
    + + + + + + + + +
    fix + Properly return connector names. (remm) +
    fix + Remove logging of the XML validation flag. (remm) +
    fix + Correct error messages for context.xml. (markt) +
    fix + 41217: Set secure flag correctly on SSO cookie, submitted by + Chris Halstead. (markt) +
    fix + 40524: request.getAuthType() now returns CLIENT_CERT rather + than CLIENT-CERT. (markt) +
    fix + 40526: Return support for JPDA_OPTS to catalina.bat and add + a new option JPDA_SUSPEND, submitted by by Kurt Roy. (markt) +
    fix + 41265: In embedded, remove the code that resets checkInterval + values of zero to 300. (markt) +
    +
    +
    Coyote
    + + + +
    fix + 37869: Fix getting client certificate, submitted by Christophe Pierret. (remm) +
    fix + 40960: Throw a timeout exception when getting a timeout rather than a + generic IOE, submitted by Christophe Pierret. (remm) +
    +
    +
    Jasper
    + + + + +
    fix + EL validation fixes for attributes. (remm) +
    fix + 41327: Show full URI for a 404. (markt) +
    fix + JspException now uses getCause() as the result for getRootCause(). (markt) +
    +
    +
    Cluster
    + + +
    fix + 41466: When using the NioChannel and SecureNioChannel its + important to use the channels buffers. (fhanik) +
    +
    +
    Tomcat 6.0.8 (remm)
    +
    Catalina
    + + + + + + + + +
    fix + Make provided instances of RequestDispatcher thread safe. (markt) +
    add + Optional development oriented loader implementation. (funkman) +
    add + Optimized access log valve, submitted by Takayuki Kaneko. (remm) +
    fix + Fix error messages when parsing context.xml that incorrectly referred to + web.xml. (markt) +
    fix + 41217: Set secure attribute on SSO cookie when cookie is + created during a secure request. Patch provided by Chris Halstead. + (markt) +
    fix + 40524: HttpServletRequest.getAuthType() now returns + CLIENT_CERT rather than CLIENT-CERT for certificate authentication + as per the spec. Note that web.xml continues to use CLIENT-CERT to + specify the certificate authentication should be used. (markt) +
    fix + 41401: Add support for JPDA_OPTS to catalina.bat and add a + JPDA_SUSPEND environment variable to both startup scripts. Patch + provided by Kurt Roy. (markt) +
    +
    +
    Coyote
    + + +
    fix + Use the tomcat-native-1.1.10 as recommended version. + OpenSSL detection on some platforms was broken 1.1.8 will continue to work, + although on some platforms there can be JVM crash if IPV6 is enabled and + platform doesn't support IPV4 mapped addresses on IPV6 sockets. +
    +
    +
    Jasper
    + + + + + + + + +
    fix + When displaying JSP source after an exception, handle included files. + (markt) +
    fix + Display the JSP source when a compilation error occurs and display + the correct line number rather than start of a scriptlet block. (markt) +
    fix + Fix NPE when processing dynamic attributes. (remm) +
    fix + More accurate EL usage validation. (remm) +
    fix + Fix regression for implicit taglib and page data version numbers. (remm) +
    fix + 41265: Allow JspServlet checkInterval init parameter to be + explicitly set to the stated default value of zero by removing the + code that resets it to 300 if explicitly specified as zero. (markt) +
    fix + 41327: Show full URI for a 404. Patch provided by Vijay. + (markt) +
    +
    +
    Webapps
    + + + + +
    docs + Add a virtual hosting how-to contributed by Hassan Schroeder. (markt) +
    update + Update all webapps to use the servlet 2.5 xsd. (markt) +
    fix + 39572: Improvements to CompressionFilter example provided by + Eric Hedström. (markt) +
    +
    +
    Tomcat 6.0.7 (remm)
    +
    General
    + + +
    fix + Fix installer's bitmap (mturk) +
    +
    +
    Catalina
    + + +
    fix + Refactor logging of errors which may occur when reading a post body (remm) +
    +
    +
    Coyote
    + + +
    fix + 37869: Also use the SSL_INFO_CLIENT_CERT field if the chain is empty, + submitted by Grzegorz Grzybek (remm) +
    +
    +
    Tomcat 6.0.6 (remm)
    +
    General
    + + +
    fix + Fix tagging which did not include 6.0.5's changelog (remm) +
    +
    +
    Tomcat 6.0.5 (remm)
    +
    Catalina
    + + + + + +
    fix + 40585: Fix parameterised constructor for o.a.juli.FileHandler + so parameters have an effect. (markt) +
    fix + Escape invalid characters from request.getLocale. (markt, remm) +
    update + Update required version for native to 1.1.8. (remm) +
    fix + Do not log broken pipe errors which can occur when flushing the content of an error page. (remm) +
    +
    +
    Coyote
    + + +
    fix + Fix firstReadTimeout behavior for the AJP connector. (remm) +
    +
    +
    Jasper
    + + +
    fix + 41057: Make jsp:plugin output XHTML compliant. (markt) +
    +
    +
    Cluster
    + + + +
    update + Cluster interface cleanup. (fhanik) +
    update + Refactoring to allow usage of executors. (fhanik) +
    +
    +
    Tomcat 6.0.4 (remm)
    +
    General
    + + + +
    update + Update to NSIS 2.22 (remm) +
    fix + Fix regression in 6.0.3 with Windows wrapper (mturk) +
    +
    +
    Tomcat 6.0.3 (remm)
    +
    General
    + +
    +
    +
    Catalina
    + + + + + + + + + + + + +
    fix + 37509: Do not remove whitespace from the end of values + defined in logging.properties files. (markt) +
    fix + 38198: Add reference to Context documentation from Host + documentation that explains how Context name is obtained from the + Context filename. (markt) +
    fix + 40844 Missing syncs in JDBCRealm. (markt) +
    fix + 40901: Encode directory listing output. Based on a patch + provided by Chris Halstead. (markt) +
    fix + 40929: Correct JavaDoc for StandardClassLoader. (markt) +
    fix + 41008: Allow POST to be used for indexed queries with CGI + Servlet. Patch provided by Chris Halstead. (markt) +
    fix + Fix usage of print on the servlet output stream if the processor never used + a writer (fhanik) +
    fix + Fix logic of sameSameObjects used to determine correct wrapping of request and + response objects (fhanik) +
    fix + Update TLD scan lists, and disable caching for now (remm) +
    update + Add system property to WebappClassLoader to allow disabling setting references + to null when stopping it (remm) +
    add + Add clustered SSO code, submitted by Fabien Carrion (remm) +
    +
    +
    Coyote
    + + + + + + + +
    fix + 40860: Log exceptions and other problems during parameter + processing. (markt) +
    update + Enable JMX for trust store attributes for SSL connector. (markt) +
    update + Port memory usage reduction changes to the java.io HTTP connector. (remm) +
    fix + MessageBytes.setString(null) will remove the String value. (remm) +
    fix + 41057: Caching large strings is not useful and takes too much + memory, so don't cache these (remm) +
    update + Add keepAliveTimeout attribute to most connectors (mturk, remm) +
    +
    +
    Jasper
    + + + + + +
    fix + Relax EL type validation for litterals. (remm) +
    fix + Update some version numbers to 2.1. (funkman, remm) +
    fix + Add xsds for JSP 2.1 (remm) +
    fix + 41106: Update validation checks for EL to also include + legacy 1.2 tags (remm) +
    +
    +
    Webapps
    + + +
    fix + 40677: Update SSL documentation to indicate that PKCS11 + keystores may be used. (markt) +
    +
    +
    Tomcat 6.0.2 (remm)
    +
    General
    + + + + +
    fix + Various tweaks to distribution (remm, funkman) +
    update + Update Tomcat native to 1.1.7 (mturk) +
    update + Update to JDT 3.2.1 (remm) +
    +
    +
    Catalina
    + + +
    fix + Fix EJB annotation interface (remm) +
    +
    +
    Coyote
    + + +
    fix + Fix passing of the keystore password for the NIO connector (fhanik) +
    +
    +
    Tomcat 6.0.1 (remm)
    +
    General
    + + +
    fix + 37439, 40823: Documentation cleanup (markt) +
    +
    +
    Catalina
    + + + + + + +
    update + Refactor exception processing using Throwable.getCause to improve exception chaining (remm) +
    add + Remove dead code involving the Logger (funkman) +
    fix + 37458: Fix some exceptions which could happen during classloading (markt) +
    fix + 40817: Fix CGI path (markt) +
    fix + 34956: Add the possibility to enforce usage of request and response + wrapper objects (markt) +
    +
    +
    Jasper
    + + +
    update + Many fixes for JSP 2.1 compliance, invloving tag files handling, deferred expressions + validation, bom encoding support (remm) +
    +
    +
    Coyote
    + + + + + +
    update + Many HTTP NIO connector fixes and refactorings (fhanik) +
    update + HTTP NIO connector performance improvements (fhanik) +
    update + Add packetSize option for the classic AJP connector (jfclere) +
    update + Implement explicit flushing in AJP (mturk) +
    +
    +
    Tomcat 6.0.0 (remm)
    +
    Catalina
    + + + + +
    add + SSLEngine attribute added to the AprLifecycleListener(fhanik) +
    add + Add API for Comet IO handling (remm, fhanik) +
    add + Servlet 2.5 support (remm) +
    +
    +
    Jasper
    + + + +
    add + JSP 2.1 support (jhook, remm) +
    add + Unifed EL 2.1 support (jhook) +
    +
    +
    Coyote
    + + + + +
    add + SSLEnabled attribute required for SSL to be turned on, on all HTTP connectors (fhanik) +
    update + Memory usage reduction for the HTTP connectors, except java.io (remm) +
    update + Modeler update to use dynamic mbeans rather than model mbeans, which consume more + resources (costin) +
    +
    +
    Cluster
    + + +
    add + New cluster configuration and new documentation (fhanik) +
    +
    +
    Webapps
    + +
    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/class-loader-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/class-loader-howto.html new file mode 100644 index 0000000..57bb855 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/class-loader-howto.html @@ -0,0 +1,159 @@ +Apache Tomcat 6.0 - Class Loader HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Class Loader HOW-TO

    Overview
    + +

    Like many server applications, Tomcat 6 installs a variety of class loaders +(that is, classes that implement java.lang.ClassLoader) to allow +different portions of the container, and the web applications running on the +container, to have access to different repositories of available classes and +resources. This mechanism is used to provide the functionality defined in the +Servlet Specification, version 2.4 -- in particular, Sections 9.4 and 9.6.

    + +

    In a J2SE 2 (that is, J2SE 1.2 or later) environment, class loaders are +arranged in a parent-child tree. Normally, when a class loader is asked to +load a particular class or resource, it delegates the request to a parent +class loader first, and then looks in its own repositories only if the parent +class loader(s) cannot find the requested class or resource. The model for +web application class loaders differs slightly from this, as discussed below, +but the main principles are the same.

    + +

    When Tomcat 6 is started, it creates a set of class loaders that are +organized into the following parent-child relationships, where the parent +class loader is above the child class loader:

    + +
    +      Bootstrap
    +          |
    +       System
    +          |
    +       Common
    +       /     \
    +  Webapp1   Webapp2 ... 
    +
    + +

    The characteristics of each of these class loaders, including the source +of classes and resources that they make visible, are discussed in detail in +the following section.

    + +
    Class Loader Definitions
    + +

    As indicated in the diagram above, Tomcat 6 creates the following class +loaders as it is initialized:

    +
      +
    • Bootstrap - This class loader contains the basic runtime + classes provided by the Java Virtual Machine, plus any classes from JAR + files present in the System Extensions directory + ($JAVA_HOME/jre/lib/ext). NOTE - Some JVMs may + implement this as more than one class loader, or it may not be visible + (as a class loader) at all.
    • +
    • System - This class loader is normally initialized from + the contents of the CLASSPATH environment variable. All such + classes are visible to both Tomcat internal classes, and to web + applications. However, the standard Tomcat 5 startup scripts + ($CATALINA_HOME/bin/catalina.sh or + %CATALINA_HOME%\bin\catalina.bat) totally ignore the contents + of the CLASSPATH environment variable itself, and instead + build the System class loader from the following repositories: +
        +
      • $CATALINA_HOME/bin/bootstrap.jar - Contains the main() method + that is used to initialize the Tomcat 6 server, and the class loader + implementation classes it depends on.
      • +
      • $CATALINA_HOME/bin/tomcat-juli.jar - Package renamed Jakarta commons + logging API, and java.util.logging LogManager.
      • +
    • +
    • Common - This class loader contains additional classes + that are made visible to both Tomcat internal classes and to all web + applications. Normally, application classes should NOT + be placed here. All unpacked classes and resources in + $CATALINA_HOME/lib, as well as classes and + resources in JAR files are made visible through this + class loader. By default, that includes the following: +
        +
      • annotations-api.jar - JEE annotations classes.
      • +
      • catalina.jar - Implementation of the Catalina servlet + container portion of Tomcat 6.
      • +
      • catalina-ant.jar - Tomcat Catalina Ant tasks.
      • +
      • catalina-ha.jar - High availability package.
      • +
      • catalina-tribes.jar - Group communication package.
      • +
      • el-api.jar - EL 2.1 API.
      • +
      • jasper.jar - Jasper 2 Compiler and Runtime.
      • +
      • jasper-el.jar - Jasper 2 EL implementation.
      • +
      • jasper-jdt.jar - Eclipse JDT 3.2 Java compiler.
      • +
      • jsp-api.jar - JSP 2.1 API.
      • +
      • servlet-api.jar - Servlet 2.5 API.
      • +
      • tomcat-coyote.jar - Tomcat connectors and utility classes.
      • +
      • tomcat-dbcp.jar - package renamed database connection + pool based on Commons DBCP.
      • +
      • tomcat-i18n-**.jar - Optional JARs containing resource bundles + for other languages. As default bundles are also included in each + individual JAR, they can be safely removed if no internationalization + of messages is needed.
      • +
    • +
    • WebappX - A class loader is created for each web + application that is deployed in a single Tomcat 6 instance. All unpacked + classes and resources in the /WEB-INF/classes directory of + your web application archive, plus classes and resources in JAR files + under the /WEB-INF/lib directory of your web application + archive, are made visible to the containing web application, but to + no others.
    • +
    + +

    As mentioned above, the web application class loader diverges from the +default Java 2 delegation model (in accordance with the recommendations in the +Servlet Specification, version 2.3, section 9.7.2 Web Application Classloader). +When a request to load a +class from the web application's WebappX class loader is processed, +this class loader will look in the local repositories first, +instead of delegating before looking. There are exceptions. Classes which are +part of the JRE base classes cannot be overriden. For some classes (such as +the XML parser components in J2SE 1.4+), the J2SE 1.4 endorsed feature can be +used. +Last, any JAR containing servlet API classes will be ignored by the +classloader. +All other class loaders in Tomcat 6 follow the usual delegation pattern.

    + +

    Therefore, from the perspective of a web application, class or resource +loading looks in the following repositories, in this order:

    +
      +
    • Bootstrap classes of your JVM
    • +
    • System class loader classses (described above)
    • +
    • /WEB-INF/classes of your web application
    • +
    • /WEB-INF/lib/*.jar of your web application
    • +
    • $CATALINA_HOME/lib
    • +
    • $CATALINA_HOME/lib/*.jar
    • +
    + +
    XML Parsers and JSE 5
    + +

    Among many other changes, the JSE 5 release packages the JAXP APIs, and +a version of Xerces, inside the JRE. This has impacts on applications that +wish to use their own XML parser.

    + +

    In previous versions of Tomcat, you could simply replace the XML parser +in the $CATALINA_HOME/common/lib directory to change the parser +used by all web applications. However, this technique will not be effective +when you are running on JSE 5, because the usual class loader delegation +process will always choose the implementation inside the JDK in preference +to this one.

    + +

    JDK 1.5 supports a mechanism called the "Endorsed Standards Override +Mechanism" to allow replacement of APIs created outside of the JCP (i.e. +DOM and SAX from W3C). It can also be used to update the XML parser +implementation. For more information, see: + +http://java.sun.com/j2se/1.5/docs/guide/standards/index.html.

    + +

    Tomcat utilizes this mechanism by including the system property setting +-Djava.endorsed.dirs=$CATALINA_HOME/endorsed in the +command line that starts the container.

    + +
    Running under a security manager
    + +

    When running under a security manager the locations from which classes +are permitted to be loaded will also depend on the contents of your policy +file. See Security Manager HOW-TO +for further information.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/cluster-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/cluster-howto.html new file mode 100644 index 0000000..01d7c96 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/cluster-howto.html @@ -0,0 +1,643 @@ +Apache Tomcat 6.0 - Clustering/Session Replication HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Clustering/Session Replication HOW-TO

    Important Note
    +

    You can also check the configuration reference documentation. +

    +
    For the impatient
    +

    + Simply add

    <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
    + to your <Engine> or your <Host> element to enable clustering. +

    +

    + Using the above configuration will enable all-to-all session replication + using the DeltaManager to replicate session deltas. By all-to-all we mean that the session gets replicated to all the other + nodes in the cluster. This works great for smaller cluster but we don't recommend it for larger clusters(a lot of tomcat nodes). + Also when using the delta manager it will replicate to all nodes, even nodes that don't have the application deployed.
    + To get around this problem, you'll want to use the BackupManager. This manager only replicates the session data to one backup + node, and only to nodes that have the application deployed. Downside of the BackupManager: not quite as battle tested as the delta manager. +
    + Here are some of the important default values:
    + 1. Multicast address is 228.0.0.4
    + 2. Multicast port is 45564 (the port and the address together determine cluster membership.
    + 3. The IP broadcasted is java.net.InetAddress.getLocalHost().getHostAddress() (make sure you don't broadcast 127.0.0.1, this is a common error)
    + 4. The TCP port listening for replication messages is the first available server socket in range 4000-4100
    + 5. Two listeners are configured ClusterSessionListener and JvmRouteSessionIDBinderListener
    + 6. Two interceptors are configured TcpFailureDetector and MessageDispatch15Interceptor
    + The following is the default cluster configuration:
    +

    +        <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
    +                 channelSendOptions="8">
    +
    +          <Manager className="org.apache.catalina.ha.session.DeltaManager"
    +                   expireSessionsOnShutdown="false"
    +                   notifyListenersOnReplication="true"/>
    +
    +          <Channel className="org.apache.catalina.tribes.group.GroupChannel">
    +            <Membership className="org.apache.catalina.tribes.membership.McastService"
    +                        address="228.0.0.4"
    +                        port="45564"
    +                        frequency="500"
    +                        dropTime="3000"/>
    +            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
    +                      address="auto"
    +                      port="4000"
    +                      autoBind="100"
    +                      selectorTimeout="5000"
    +                      maxThreads="6"/>
    +
    +            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
    +              <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
    +            </Sender>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
    +          </Channel>
    +
    +          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
    +                 filter=""/>
    +          <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
    +
    +          <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
    +                    tempDir="/tmp/war-temp/"
    +                    deployDir="/tmp/war-deploy/"
    +                    watchDir="/tmp/war-listen/"
    +                    watchEnabled="false"/>
    +
    +          <ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
    +          <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
    +        </Cluster>    
    +    
    +

    +

    Will cover this section in more detail later in this document.

    +
    Cluster Basics
    + +

    To run session replication in your Tomcat 6.0 container, the following steps +should be completed:

    +
      +
    • All your session attributes must implement java.io.Serializable
    • +
    • Uncomment the Cluster element in server.xml
    • +
    • If you have defined custom cluster valves, make sure you have the ReplicationValve defined as well under the Cluster element in server.xml
    • +
    • If your Tomcat instances are running on the same machine, make sure the tcpListenPort + attribute is unique for each instance, in most cases Tomcat is smart enough to resolve this on it's own by autodetecting available ports in the range 4000-4100
    • +
    • Make sure your web.xml has the <distributable/> element + or set at your <Context distributable="true" />
    • +
    • If you are using mod_jk, make sure that jvmRoute attribute is set at your Engine <Engine name="Catalina" jvmRoute="node01" > + and that the jvmRoute attribute value matches your worker name in workers.properties
    • +
    • Make sure that all nodes have the same time and sync with NTP service!
    • +
    • Make sure that your loadbalancer is configured for sticky session mode.
    • +
    +

    Load balancing can be achieved through many techniques, as seen in the +Load Balancing chapter.

    +

    Note: Remember that your session state is tracked by a cookie, so your URL must look the same from the out + side otherwise, a new session will be created.

    +

    Note: Clustering support currently requires the JDK version 1.5 or later.

    +

    The Cluster module uses the Tomcat JULI logging framework, so you can configure logging + through the regular logging.properties file. To track messages, you can enable logging on the key:org.apache.catalina.tribes.MESSAGES

    +
    Overview
    + +

    To enable session replication in Tomcat, three different paths can be followed to achieve the exact same thing:

    +
      +
    1. Using session persistence, and saving the session to a shared file system (PersistenceManager + FileStore)
    2. +
    3. Using session persistence, and saving the session to a shared database (PersistenceManager + JDBCStore)
    4. +
    5. Using in-memory-replication, using the SimpleTcpCluster that ships with Tomcat 6 (lib/catalina-tribes.jar + lib/catalina-ha.jar)
    6. +
    + +

    In this release of session replication, Tomcat can perform an all-to-all replication of session state using the DeltaManager or + perform backup replication to only one node using the BackupManager. + The all-to-all replication is an algorithm that is only efficient when the clusters are small. For larger clusters, to use + a primary-secondary session replication where the session will only be stored at one backup server simply setup the BackupManager.
    + Currently you can use the domain worker attribute (mod_jk > 1.2.8) to build cluster partitions + with the potential of having a more scaleable cluster solution with the DeltaManager(you'll need to configure the domain interceptor for this). + In order to keep the network traffic down in an all-to-all environment, you can split your cluster + into smaller groups. This can be easily achieved by using different multicast addresses for the different groups. + A very simple setup would look like this: +

    + +
    +        DNS Round Robin
    +               |
    +         Load Balancer
    +          /           \
    +      Cluster1      Cluster2
    +      /     \        /     \
    +  Tomcat1 Tomcat2  Tomcat3 Tomcat4
    +
    + +

    What is important to mention here, is that session replication is only the beginning of clustering. + Another popular concept used to implement clusters is farming, ie, you deploy your apps only to one + server, and the cluster will distribute the deployments across the entire cluster. + This is all capabilities that can go into with the FarmWarDeployer (s. cluster example at server.xml)

    +

    In the next section will go deeper into how session replication works and how to configure it.

    + +
    Cluster Information
    +

    Membership is established using multicast heartbeats. + Hence, if you wish to subdivide your clusters, you can do this by + changing the multicast IP address or port in the <Membership> element. +

    +

    + The heartbeat contains the IP address of the Tomcat node and the TCP port that + Tomcat listens to for replication traffic. All data communication happens over TCP. +

    +

    + The ReplicationValve is used to find out when the request has been completed and initiate the + replication, if any. Data is only replicated if the session has changed (by calling setAttribute or removeAttribute + on the session). +

    +

    + One of the most important performance considerations is the synchronous versus asynchronous replication. + In a synchronous replication mode the request doesn't return until the replicated session has been + sent over the wire and reinstantiated on all the other cluster nodes. + Synchronous vs asynchronous is configured using the channelSendOptions + flag and is an integer value. The default value for the SimpleTcpCluster/DeltaManager combo is + 8, which is asynchronous. You can read more on the send flag(overview) or the + send flag(javadoc). + During async replication, the request is returned before the data has been replicated. async replication yields shorter + request times, and synchronous replication guarantees the session to be replicated before the request returns. +

    +
    Bind session after crash to failover node
    +

    + If you are using mod_jk and not using sticky sessions or for some reasons sticky session don't + work, or you are simply failing over, the session id will need to be modified as it previously contained + the worker id of the previous tomcat (as defined by jvmRoute in the Engine element). + To solve this, we will use the JvmRouteBinderValve. +

    +

    + The JvmRouteBinderValve rewrites the session id to ensure that the next request will remain sticky + (and not fall back to go to random nodes since the worker is no longer available) after a fail over. + The valve rewrites the JSESSIONID value in the cookie with the same name. + Not having this valve in place, will make it harder to ensure stickyness in case of a failure for the mod_jk module. +

    +

    + By default, if no valves are configured, the JvmRouteBinderValve is added on. + The cluster message listener called JvmRouteSessionIDBinderListener is also defined by default and is used to actually rewrite the + session id on the other nodes in the cluster once a fail over has occurred. + Remember, if you are adding your own valves or cluster listeners in server.xml then the defaults are no longer valid, + make sure that you add in all the appropriate valves and listeners as defined by the default. +

    +

    + Hint:
    + With attribute sessionIdAttribute you can change the request attribute name that included the old session id. + Default attribuite name is org.apache.catalina.cluster.session.JvmRouteOrignalSessionID. +

    +

    + Trick:
    + You can enable this mod_jk turnover mode via JMX before you drop a node to all backup nodes! + Set enable true on all JvmRouteBinderValve backups, disable worker at mod_jk + and then drop node and restart it! Then enable mod_jk Worker and disable JvmRouteBinderValves again. + This use case means that only requested session are migrated. +

    + + + +
    Configuration Example
    +
    +        <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
    +                 channelSendOptions="6">
    +
    +          <Manager className="org.apache.catalina.ha.session.BackupManager"
    +                   expireSessionsOnShutdown="false"
    +                   notifyListenersOnReplication="true"
    +                   mapSendOptions="6"/>
    +          <!--
    +          <Manager className="org.apache.catalina.ha.session.DeltaManager"
    +                   expireSessionsOnShutdown="false"
    +                   notifyListenersOnReplication="true"/>
    +          -->        
    +          <Channel className="org.apache.catalina.tribes.group.GroupChannel">
    +            <Membership className="org.apache.catalina.tribes.membership.McastService"
    +                        address="228.0.0.4"
    +                        port="45564"
    +                        frequency="500"
    +                        dropTime="3000"/>
    +            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
    +                      address="auto"
    +                      port="5000"
    +                      selectorTimeout="100"
    +                      maxThreads="6"/>
    +
    +            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
    +              <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
    +            </Sender>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
    +          </Channel>
    +
    +          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
    +                 filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
    +
    +          <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
    +                    tempDir="/tmp/war-temp/"
    +                    deployDir="/tmp/war-deploy/"
    +                    watchDir="/tmp/war-listen/"
    +                    watchEnabled="false"/>
    +
    +          <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
    +        </Cluster>
    +    
    +

    + Break it down!! +

    +
    +        <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
    +                 channelSendOptions="6">
    +    
    +

    + The main element, inside this element all cluster details can be configured. + The channelSendOptions is the flag that is attached to each message sent by the + SimpleTcpCluster class or any objects that are invoking the SimpleTcpCluster.send method. + The description of the send flags is available at + our javadoc site + The DeltaManager sends information using the SimpleTcpCluster.send method, while the backup manager + sends it itself directly through the channel. +
    For more info, Please visit the reference documentation +

    +
    +          <Manager className="org.apache.catalina.ha.session.BackupManager"
    +                   expireSessionsOnShutdown="false"
    +                   notifyListenersOnReplication="true"
    +                   mapSendOptions="6"/>
    +          <!--
    +          <Manager className="org.apache.catalina.ha.session.DeltaManager"
    +                   expireSessionsOnShutdown="false"
    +                   notifyListenersOnReplication="true"/>
    +          -->        
    +    
    +

    + This is a template for the manager configuration that will be used if no manager is defined in the <Context> + element. In Tomcat 5.x each webapp marked distributable had to use the same manager, this is no longer the case + since Tomcat 6 you can define a manager class for each webapp, so that you can mix managers in your cluster. + Obviously the managers on one node's application has to correspond with the same manager on the same application on the other node. + If no manager has been specified for the webapp, and the webapp is marked <distributable/> Tomcat will take this manager configuration + and create a manager instance cloning this configuration. +
    For more info, Please visit the reference documentation +

    +
    +          <Channel className="org.apache.catalina.tribes.group.GroupChannel">
    +    
    +

    + The channel element is Tribes, the group communication framework + used inside Tomcat. This element encapsulates everything that has to do with communication and membership logic. +
    For more info, Please visit the reference documentation +

    +
    +            <Membership className="org.apache.catalina.tribes.membership.McastService"
    +                        address="228.0.0.4"
    +                        port="45564"
    +                        frequency="500"
    +                        dropTime="3000"/>
    +    
    +

    + Membership is done using multicasting. Please note that Tribes also supports static memberships using the + StaticMembershipInterceptor if you want to extend your membership to points beyond multicasting. + The address attribute is the multicast address used and the port is the multicast port. These two together + create the cluster separation. If you want a QA cluster and a production cluster, the easiest config is to + have the QA cluster be on a separate multicast address/port combination the the production cluster.
    + The membership component broadcasts TCP adress/port of itselt to the other nodes so that communication between + nodes can be done over TCP. Please note that the address being broadcasted is the one of the + Receiver.address attribute. +
    For more info, Please visit the reference documentation +

    +
    +            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
    +                      address="auto"
    +                      port="5000"
    +                      selectorTimeout="100"
    +                      maxThreads="6"/>
    +    
    +

    + In tribes the logic of sending and receiving data has been broken into two functional components. The Receiver, as the name suggests + is responsible for receiving messages. Since the Tribes stack is thread less, (a popular improvement now adopted by other frameworks as well), + there is a thread pool in this component that has a maxThreads and minThreads setting.
    + The address attribute is the host address that will be broadcasted by the membership component to the other nodes. +
    For more info, Please visit the reference documentation +

    +
    +
    +            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
    +              <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
    +            </Sender>
    +    
    +

    + The sender component, as the name indicates is responsible for sending messages to other nodes. + The sender has a shell component, the ReplicationTransmitter but the real stuff done is done in the + sub component, Transport. + Tribes support having a pool of senders, so that messages can be sent in parallel and if using the NIO sender, + you can send messages concurrently as well.
    + Concurrently means one message to multiple senders at the same time and Parallel means multiple messages to multiple senders + at the same time. +
    For more info, Please visit the reference documentation +

    +
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
    +            <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
    +          </Channel>
    +    
    +

    + Tribes uses a stack to send messages through. Each element in the stack is called an interceptor, and works much like the valves do + in the Tomcat servlet container. + Using interceptors, logic can be broken into more managable pieces of code. The interceptors configured above are:
    + TcpFailureDetector - verifies crashed members through TCP, if multicast packets get dropped, this interceptor protects against false positives, + ie the node marked as crashed even though it still is alive and running.
    + MessageDispatch15Interceptor - dispatches messages to a thread (thread pool) to send message asynchrously.
    + ThroughputInterceptor - prints out simple stats on message traffic.
    + Please note that the order of interceptors is important. the way they are defined in server.xml is the way they are represented in the + channel stack. Think of it as a linked list, with the head being the first most interceptor and the tail the last. +
    For more info, Please visit the reference documentation +

    +
    +          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
    +                 filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
    +    
    +

    + The cluster uses valves to track requests to web applications, we've mentioned the ReplicationValve and the JvmRouteBinderValve above. + The <Cluster> element itself is not part of the pipeline in Tomcat, instead the cluster adds the valve to its parent container. + If the <Cluster> elements is configured in the <Engine> element, the valves get added to the engine and so on. +
    For more info, Please visit the reference documentation +

    +
    +          <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
    +                    tempDir="/tmp/war-temp/"
    +                    deployDir="/tmp/war-deploy/"
    +                    watchDir="/tmp/war-listen/"
    +                    watchEnabled="false"/>
    +    
    +

    + The default tomcat cluster supports farmed deployment, ie, the cluster can deploy and undeploy applications on the other nodes. + The state of this component is currently in flux but will be addressed soon. There was a change in the deployment algorithm + between Tomcat 5.0 and 5.5 and at that point, the logic of this component changed to where the deploy dir has to match the + webapps directory. +
    For more info, Please visit the reference documentation +

    +
    +          <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
    +        </Cluster>
    +    
    +

    + Since the SimpleTcpCluster itself is a sender and receiver of the Channel object, components can register themselves as listeners to + the SimpleTcpCluster. The listener above ClusterSessionListener listens for DeltaManager replication messages + and applies the deltas to the manager that in turn applies it to the session. +
    For more info, Please visit the reference documentation +

    + +
    Cluster Architecture
    + +

    Component Levels: +

    +         Server
    +           |
    +         Service
    +           |
    +         Engine
    +           |  \ 
    +           |  --- Cluster --*
    +           |
    +         Host
    +           |
    +         ------
    +        /      \
    +     Cluster    Context(1-N)                 
    +        |             \
    +        |             -- Manager
    +        |                   \
    +        |                   -- DeltaManager
    +        |                   -- BackupManager
    +        |
    +     ---------------------------
    +        |                       \
    +      Channel                    \
    +    ----------------------------- \
    +        |                          \
    +     Interceptor_1 ..               \
    +        |                            \
    +     Interceptor_N                    \
    +    -----------------------------      \
    +     |          |         |             \
    +   Receiver    Sender   Membership       \
    +                                         -- Valve
    +                                         |      \
    +                                         |       -- ReplicationValve
    +                                         |       -- JvmRouteBinderValve 
    +                                         |
    +                                         -- LifecycleListener 
    +                                         |
    +                                         -- ClusterListener 
    +                                         |      \
    +                                         |       -- ClusterSessionListener
    +                                         |       -- JvmRouteSessionIDBinderListener
    +                                         |
    +                                         -- Deployer 
    +                                                \
    +                                                 -- FarmWarDeployer
    +      
    +      
    +
    +

    + +
    How it Works
    +

    To make it easy to understand how clustering works, We are gonna take you through a series of scenarios. + In the scenario we only plan to use two tomcat instances TomcatA and TomcatB. + We will cover the following sequence of events:

    + +
      +
    1. TomcatA starts up
    2. +
    3. TomcatB starts up (Wait that TomcatA start is complete)
    4. +
    5. TomcatA receives a request, a session S1 is created.
    6. +
    7. TomcatA crashes
    8. +
    9. TomcatB receives a request for session S1
    10. +
    11. TomcatA starts up
    12. +
    13. TomcatA receives a request, invalidate is called on the session (S1)
    14. +
    15. TomcatB receives a request, for a new session (S2)
    16. +
    17. TomcatA The session S2 expires due to inactivity.
    18. +
    + +

    Ok, now that we have a good sequence, we will take you through exactly what happens in the session repliction code

    + +
      +
    1. TomcatA starts up +

      + Tomcat starts up using the standard start up sequence. When the Host object is created, a cluster object is associated with it. + When the contexts are parsed, if the distributable element is in place in web.xml + Tomcat asks the Cluster class (in this case SimpleTcpCluster) to create a manager + for the replicated context. So with clustering enabled, distributable set in web.xml + Tomcat will create a DeltaManager for that context instead of a StandardManager. + The cluster class will start up a membership service (multicast) and a replication service (tcp unicast). + More on the architecture further down in this document. +

      +
    2. +
    3. TomcatB starts up +

      + When TomcatB starts up, it follows the same sequence as TomcatA did with one exception. + The cluster is started and will establish a membership (TomcatA,TomcatB). + TomcatB will now request the session state from a server that already exists in the cluster, + in this case TomcatA. TomcatA responds to the request, and before TomcatB starts listening + for HTTP requests, the state has been transferred from TomcatA to TomcatB. + In case TomcatA doesn't respond, TomcatB will time out after 60 seconds, and issue a log + entry. The session state gets transferred for each web application that has distributable in + its web.xml. Note: To use session replication efficiently, all your tomcat instances should be + configured the same. +

      +
    4. +
    5. TomcatA receives a request, a session S1 is created. +

      + The request coming in to TomcatA is treated exactly the same way as without session replication. + The action happens when the request is completed, the ReplicationValve will intercept + the request before the response is returned to the user. + At this point it finds that the session has been modified, and it uses TCP to replicata the + session to TomcatB. Once the serialized data has been handed off to the operating systems TCP logic, + the request returns to the user, back through the valve pipeline. + For each request the entire session is replicated, this allows code that modifies attributes + in the session without calling setAttribute or removeAttribute to be replicated. + a useDirtyFlag configuration parameter can be used to optimize the number of times + a session is replicated. +

      + +
    6. +
    7. TomcatA crashes +

      + When TomcatA crashes, TomcatB receives a notification that TomcatA has dropped out + of the cluster. TomcatB removes TomcatA from its membership list, and TomcatA will no longer + be notified of any changes that occurs in TomcatB. + The load balancer will redirect the requests from TomcatA to TomcatB and all the sessions + are current. +

      +
    8. +
    9. TomcatB receives a request for session S1 +

      Nothing exciting, TomcatB will process the request as any other request. +

      +
    10. +
    11. TomcatA starts up +

      Upon start up, before TomcatA starts taking new request and making itself + available to it will follow the start up sequence described above 1) 2). + It will join the cluster, contact TomcatB for the current state of all the sessions. + And once it receives the session state, it finishes loading and opens its HTTP/mod_jk ports. + So no requests will make it to TomcatA until it has received the session state from TomcatB. +

      +
    12. +
    13. TomcatA receives a request, invalidate is called on the session (S1) +

      The invalidate is call is intercepted, and the session is queued with invalidated sessions. + When the request is complete, instead of sending out the session that has changed, it sends out + an "expire" message to TomcatB and TomcatB will invalidate the session as well. +

      + +
    14. +
    15. TomcatB receives a request, for a new session (S2) +

      Same scenario as in step 3) +

      + + +
    16. +
    17. TomcatA The session S2 expires due to inactivity. +

      The invalidate is call is intercepted the same was as when a session is invalidated by the user, + and the session is queued with invalidated sessions. + At this point, the invalidet session will not be replicated across until + another request comes through the system and checks the invalid queue. +

      +
    18. +
    + +

    Phuuuhh! :)

    + +

    Membership + Clustering membership is established using very simple multicast pings. + Each Tomcat instance will periodically send out a multicast ping, + in the ping message the instance will broad cast its IP and TCP listen port + for replication. + If an instance has not received such a ping within a given timeframe, the + member is considered dead. Very simple, and very effective! + Of course, you need to enable multicasting on your system. +

    + +

    TCP Replication + Once a multicast ping has been received, the member is added to the cluster + Upon the next replication request, the sending instance will use the host and + port info and establish a TCP socket. Using this socket it sends over the serialized data. + The reason I choose TCP sockets is because it has built in flow control and guaranteed delivery. + So I know, when I send some data, it will make it there :) +

    + +

    Distributed locking and pages using frames + Tomcat does not keep session instances in sync across the cluster. + The implementation of such logic would be to much overhead and cause all + kinds of problems. If your client accesses the same session + simultanously using multiple requests, then the last request + will override the other sessions in the cluster. +

    + +
    Monitoring your Cluster with JMX
    +

    Monitoring is a very important question when you use a cluster. Some of the cluster objects are JMX MBeans

    +

    Add the following parameter to your startup script with Java 5: +

    +set CATALINA_OPTS=\
    +-Dcom.sun.management.jmxremote \
    +-Dcom.sun.management.jmxremote.port=%my.jmx.port% \
    +-Dcom.sun.management.jmxremote.ssl=false \
    +-Dcom.sun.management.jmxremote.authenticate=false
    +
    +

    +

    Activate JMX with JDK 1.4: +

      +
    1. Install the compat package
    2. +
    3. Install the mx4j-tools.jar at common/lib (use the same mx4j version as your tomcat release)
    4. +
    5. Configure a MX4J JMX HTTP Adaptor at your AJP Connector

      +
      +<Connector port="${AJP.PORT}" 
      +   handler.list="mx"
      +   mx.enabled="true" 
      +   mx.httpHost="${JMX.HOST}" 
      +   mx.httpPort="${JMX.PORT}" 
      +   protocol="AJP/1.3" />
      +
      +
    6. +
    7. Start your tomcat and look with your browser to http://${JMX.HOST}:${JMX.PORT}
    8. +
    9. With the connector parameter mx.authMode="basic" mx.authUser="tomcat" mx.authPassword="strange" you can control the access!
    10. +
    +

    +

    +List of Cluster Mbeans
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NameDescriptionMBean ObjectName - EngineMBean ObjectName - Host
    ClusterThe complete cluster elementtype=Clustertype=Cluster,host=${HOST}
    DeltaManagerThis manager control the sessions and handle session replication type=Manager,path=${APP.CONTEXT.PATH}, host=${HOST}type=Manager,path=${APP.CONTEXT.PATH}, host=${HOST}
    ReplicationValveThis valve control the replication to the backup nodestype=Valve,name=ReplicationValvetype=Valve,name=ReplicationValve,host=${HOST}
    JvmRouteBinderValveThis is a cluster fallback valve to change the Session ID to the current tomcat jvmroute.type=Valve,name=JvmRouteBinderValve, + path=${APP.CONTEXT.PATH}type=Valve,name=JvmRouteBinderValve,host=${HOST}, + path=${APP.CONTEXT.PATH}
    +

    +
    FAQ
    +

    Please see the clustering section of the FAQ.

    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/connectors.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/connectors.html new file mode 100644 index 0000000..2448b29 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/connectors.html @@ -0,0 +1,42 @@ +Apache Tomcat 6.0 - Connectors How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Connectors How To

    Introduction
    + +

    Choosing a connector to use with Tomcat can be difficult. This page will +list the connectors which are supported with this Tomcat release, and will +hopefully help you make the right choice according to your needs.

    + +
    HTTP
    + +

    The HTTP connector is setup by default with Tomcat, and is ready to use. This +connector features the lowest latency and best overall performance.

    + +

    For clustering, a HTTP load balancer with support for web sessions stickiness +must be installed to direct the traffic to the Tomcat servers. Tomcat supports mod_proxy +(on Apache HTTP Server 2.x, and included by default in Apache HTTP Server 2.2) as the load balancer. +It should be noted that the performance of HTTP proxying is usually lower than the +performance of AJP, so AJP clustering is often preferable.

    + +
    AJP
    + +

    When using a single server, the performance when using a native webserver in +front of the Tomcat instance is most of the time significantly worse than a +standalone Tomcat with its default HTTP connector, even if a large part of the web +application is made of static files. If integration with the native webserver is +needed for any reason, an AJP connector will provide faster performance than +proxied HTTP. AJP clustering is the most efficient from the Tomcat perspective. +It is otherwise functionally equivalent to HTTP clustering.

    + +

    The native connectors supported with this Tomcat release are: +

      +
    • JK 1.2.x with any of the supported servers
    • +
    • mod_proxy on Apache HTTP Server 2.x (included by default in Apache HTTP Server 2.2), +with AJP enabled
    • +
    +

    + +

    Other native connectors supporting AJP may work, but are no longer supported.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/default-servlet.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/default-servlet.html new file mode 100644 index 0000000..732f0c8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/default-servlet.html @@ -0,0 +1,273 @@ +Apache Tomcat 6.0 - Default Servlet Reference
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Default Servlet Reference

    Introduction
    + +This discusses different ways to manipulate the default servlet. Topics are + + +
    What is the DefaultServlet
    + +The default servlet is the servlet which serves static resources as well +as serves the directory listings (if directory listings are enabled). + +
    Where is it declared?
    + +It is declared globally in $CATALINA_HOME/conf/web.xml. +By default here is it's declaration: +
    +    <servlet>
    +        <servlet-name>default</servlet-name>
    +        <servlet-class>
    +          org.apache.catalina.servlets.DefaultServlet
    +        </servlet-class>
    +        <init-param>
    +            <param-name>debug</param-name>
    +            <param-value>0</param-value>
    +        </init-param>
    +        <init-param>
    +            <param-name>listings</param-name>
    +            <param-value>true</param-value>
    +        </init-param>
    +        <load-on-startup>1</load-on-startup>
    +    </servlet>
    +
    +...
    +
    +    <servlet-mapping>
    +        <servlet-name>default</servlet-name>
    +        <url-pattern>/</url-pattern>
    +    </servlet-mapping>
    +
    +
    + +So by default, the default servlet is loaded at webapp startup and +directory listings are enabled and debugging is turned off. +
    What can I change?
    + +The DefaultServlet allows the following initParamters: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    debug + Debugging level. It is not very useful unless you are a tomcat + developer. As + of this writing, useful values are 0, 1, 11, 1000. +
    listings + If no welcome file is present, can a directory listing be + shown? + value may be true or false +
    + Welcome files are part of the servlet api. +
    + WARNING: Listings of directories containing many entries are + expensive. Multiple requests for large directory listings can consume + significant proportions of server resources. +
    readmeFile + If a directory listing is presented, a readme file may also + be presented with the listing. This file is inserted as is + so it may contain HTML. default value is null +
    globalXsltFile + If you wish to customize your directory listing, you + can use an XSL transformation. This value is an absolute + file name which be used for all direcotory listings. + This can be disabled by per webapp by also declaring the + default servlet in your local webapp's web.xml. The format + of the xml is shown below. +
    localXsltFile + You may also customize your directory listing by directory by + configuring localXsltFile. This should be a relative + file name in the directory where the listing will take place. + This overrides globalXsltFile. If this value + is present but a file does not exist, then + globalXsltFile will be used. If + globalXsltFile does not exist, then the default + directory listing will be shown. +
    input + Input buffer size (in bytes) when reading + resources to be served. [2048] +
    output + Output buffer size (in bytes) when writing + resources to be served. [2048] +
    readonly + Is this context "read only", so HTTP commands like PUT and + DELETE are rejected? [true] +
    fileEncoding + File encoding to be used when reading static resources. + [platform default] +
    sendfileSize + If the connector used supports sendfile, this represents the minimal + file size in KB for which sendfile will be used. Use a negative value + to always disable sendfile. [48] +
    +
    How do I customize directory listings?
    + +

    You can override DefaultServlet with you own implementation and use that +in your web.xml declaration. If you +can undertand what was just said, we will assume yo can read the code +to DefaultServlet servlet and make the appropriate adjustments. (If not, +then that method isn't for you) +

    +

    +You can use either localXsltFile or +globalXsltFile and DefaultServlet will create +an xml document and run it through an xsl transformation based +on the values provided in localXsltFile and +globalXsltFile. localXsltFile is first +checked, followed by globalXsltFile, then default +behaviors takes place. +

    + +

    +Format: +

    +    <listing>
    +     <entries>
    +      <entry type='file|dir' urlPath='aPath' size='###' date='gmt date'>
    +        fileName1
    +      </entry>
    +      <entry type='file|dir' urlPath='aPath' size='###' date='gmt date'>
    +        fileName2
    +      </entry>
    +      ...
    +     </entries>
    +     <readme></readme>
    +    </listing>
    +
    +
      +
    • size will be missing if type='dir'
    • +
    • Readme is a CDATA entry
    • +
    +

    +The following is a sample xsl file which mimics the default tomcat behavior: +
    +<?xml version="1.0"?>
    +
    +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    +  version="1.0">
    +
    +  <xsl:output method="xhtml" encoding="iso-8859-1" indent="no"/>
    +
    +  <xsl:template match="listing">
    +   <html>
    +    <head>
    +      <title>
    +        Sample Directory Listing For
    +        <xsl:value-of select="@directory"/>
    +      </title>
    +      <style>
    +        h1{color : white;background-color : #0086b2;}
    +        h3{color : white;background-color : #0086b2;}
    +        body{font-family : sans-serif,Arial,Tahoma;
    +             color : black;background-color : white;}
    +        b{color : white;background-color : #0086b2;}
    +        a{color : black;} HR{color : #0086b2;}
    +      </style>
    +    </head>
    +    <body>
    +      <h1>Sample Directory Listing For
    +            <xsl:value-of select="@directory"/>
    +      </h1>
    +      <hr size="1" />
    +      <table cellspacing="0"
    +                  width="100%"
    +            cellpadding="5"
    +                  align="center">
    +        <tr>
    +          <th align="left">Filename</th>
    +          <th align="center">Size</th>
    +          <th align="right">Last Modified</th>
    +        </tr>
    +        <xsl:apply-templates select="entries"/>
    +        </table>
    +      <xsl:apply-templates select="readme"/>
    +      <hr size="1" />
    +      <h3>Apache Tomcat/6.0</h3>
    +    </body>
    +   </html>
    +  </xsl:template>
    +
    +
    +  <xsl:template match="entries">
    +    <xsl:apply-templates select="entry"/>
    +  </xsl:template>
    +
    +  <xsl:template match="readme">
    +    <hr size="1" />
    +    <pre><xsl:apply-templates/></pre>
    +  </xsl:template>
    +
    +  <xsl:template match="entry">
    +    <tr>
    +      <td align="left">
    +        <xsl:variable name="urlPath" select="@urlPath"/>
    +        <a href="{$urlPath}">
    +          <tt><xsl:apply-templates/></tt>
    +        </a>
    +      </td>
    +      <td align="right">
    +        <tt><xsl:value-of select="@size"/></tt>
    +      </td>
    +      <td align="right">
    +        <tt><xsl:value-of select="@date"/></tt>
    +      </td>
    +    </tr>
    +  </xsl:template>
    +
    +</xsl:stylesheet>
    +
    + +
    How do I secure directory listings?
    + +Use web.xml in each individual webapp. See the security section of the +Servlet specification. + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/deployer-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/deployer-howto.html new file mode 100644 index 0000000..6a69554 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/deployer-howto.html @@ -0,0 +1,299 @@ +Apache Tomcat 6.0 - Tomcat Web Application Deployment
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Tomcat Web Application Deployment

    Table of Contents
    + + +
    Introduction
    +

    + Deployment is the term used for the process of installing a web + application (either a 3rd party WAR or your own custom web application) + into the Tomcat server. +

    +

    + Web application deployment may be accomplished in a number of ways + within the Tomcat server. +

      +
    • Statically; the web application is setup before Tomcat is started
    • +
    • + Dynamically; in conjunction with the Tomcat Manager web application or + manipulating already deployed web applications +
    • +
    +

    +

    + The Tomcat Manager is a tool that allows URL-based web application + deployment features. There is also a tool called the Client Deployer, + which is a command shell based script that interacts with the Tomcat + Manager but provides additional functionality such as compiling and + validating web applications as well as packaging web application into + web application resource (WAR) files. +

    +
    Installation
    +

    + There is no installation required for static deployment of web + applications as this is provided out of the box by Tomcat. Nor is any + installation required for deployment functions with the Tomcat Manager, + although some configuration is required as detailed in the + Tomcat Manager manual. An installation is however required if you wish + to use the Tomcat Client Deployer (TCD). +

    +

    + The TCD is not packaged with the Tomcat core + distribution, and must therefore be downloaded separately from + the Downloads area. The download is usually labelled + apache-tomcat-6.0.x-deployer. +

    +

    + TCD has prerequisites of Apache Ant 1.6.2+ and a Java installation. + Your environment should define an ANT_HOME environment value pointing to + the root of your Ant installation, and a JAVA_HOME value pointing to + your Java installation. Additionally, you should ensure Ant's ant + command, and the Java javac compiler command run from the command shell + that your operating system provides. +

    +
      +
    1. Download the TCD distribution
    2. +
    3. + The TCD package need not be extracted into any existing Tomcat + installation, it can be extracted to any location. +
    4. +
    5. Read Using the + Tomcat Client Deployer
    6. +
    +
    A word on Contexts
    +

    + In talking about deployment of web applications, the concept of a + Context is required to be understood. A Context is what Tomcat + calls a web application. +

    +

    + In order to configure a Context within Tomcat a Context Descriptor + is required. A Context Descriptor is simply an XML file that contains + Tomcat related configuration for a Context, e.g naming resources or + session manager configuration. In earlier versions of + Tomcat the content of a Context Descriptor configuration was often stored within + Tomcat's primary configuration file server.xml but this is now + discouraged (although it currently still works). +

    +

    + Context Descriptors not only help Tomcat to know how to configure + Contexts but other tools such as the Tomcat Manager and TDC often use + these Context Descriptors to perform their roles properly. +

    +

    + The locations for Context Descriptors are; +

      +
    1. $CATALINA_HOME/conf/[enginename]/[hostname]/context.xml
    2. +
    3. $CATALINA_HOME/webapps/[webappname]/META-INF/context.xml
    4. +
    + Files in (1) are named [webappname].xml but files in (2) are named + context.xml. If a Context Descriptor is not provided for a Context, + Tomcat configures the Context using default values. +

    +
    Deployment on Tomcat startup
    +

    + If you are not interested in using the Tomcat Manager, or TCD, + then you'll need to deploy your web applications + statically to Tomcat, followed by a Tomcat startup. The location you + deploy web applications to for this type of deployment is called the + appBase which is specified per Host. You either copy a + so-called exploded web application, i.e non-compressed, to this + location, or a compressed web application resource .WAR file. +

    +

    + The web applications present in the location specified by the Host's + (default Host is "localhost") appBase attribute (default + appBase is "$CATALINA_HOME/webapps") will be deployed on Tomcat startup + only if the Host's deployOnStartup attribute is "true". +

    +

    + The following deployment sequence will occur on Tomcat startup in that + case: +

    +
      +
    1. Any Context Descriptors will be deployed first.
    2. +
    3. + Exploded web applications not referenced by any Context + Descriptor will then be deployed. If they have an associated + .WAR file in the appBase and it is newer than the exploded web application, + the exploded directory will be removed and the webapp will be + redeployed from the .WAR +
    4. +
    5. .WAR files will be deployed
    6. +
    +

    + Note again that for each deployed web application, a + Context Descriptor will be created unless one exists already. +

    +
    Deploying on a running Tomcat server
    +

    + It is possible to deploy web applications to a running Tomcat server. +

    +

    + If the Host autoDeploy attribute is "true", the Host will + attempt to deploy and update web applications dynamically, as needed, + for example if a new .WAR is dropped into the appBase. + For this to work, the Host needs to have background processing + enabled which is the default configuration. +

    + +

    + autoDeploy set to "true" and a running Tomcat allows for: +

    +
      +
    • Deployment of .WAR files copied into the Host appBase.
    • +
    • + Deployment of exploded web applications which are + copied into the Host appBase. +
    • +
    • + Re-deployment of a web application which has already been deployed from + a .WAR when the new .WAR is provided. In this case the exploded + web application is removed, and the .WAR is expanded again. + Note that the explosion will not occur if the Host is configured + so that .WARs are not exploded with a unpackWARs + attribute set to "false", in which case the web application + will be simply redeployed as a compressed archive. +
    • +
    • + Re-deployment of a web application if the /WEB-INF/web.xml file (or any + other resource defined as a WatchedResource) is updated. +
    • +
    • + Re-deployment of a web application if the Context Descriptor file from which + the web application has been deployed is updated. +
    • +
    • + Re-deployment of a web application if a Context Descriptor file (with a + filename corresponding to the Context path of the previously deployed + web application) is added to the + $CATALINA_HOME/conf/[enginename]/[hostname]/ + directory. +
    • +
    • + Undeployment of a web application if its document base (docBase) + is deleted. Note that on Windows, this assumes that anti-locking + features (see Context configuration) are enabled, otherwise it is not + possible to delete the resources of a running web application. +
    • +
    +

    + Note that web application reloading can also be configured in the loader, in which + case loaded classes will be tracked for changes. +

    +
    Deploying using the Tomcat Manager
    +

    + The Tomcat Manager is covered in its own manual page. +

    +
    Deploying using the Client Deployer Package
    +

    + Finally, deployment of web application may be achieved using the + Tomcat Client Deployer. This is a package which can be used to + validate, compile, compress to .WAR, and deploy web applications to + production or development Tomcat servers. It should be noted that this feature + uses the Tomcat Manager and as such the target Tomcat server should be + running. +

    + +

    + It is assumed the user will be familar with Apache Ant for using the TCD. + Apache Ant is a scripted build tool. The TCD comes pre-packaged with a + build script to use. Only a modest understanding of Apache Ant is + required (installation as listed earlier in this page, and familiarity + with using the operating system command shell and configuring + environment variables). +

    + +

    + The TCD includes Ant tasks, the Jasper page compiler for JSP compilation + before deployment, as well as a task which + validates the web application Context Descriptor. The validator task (class + org.apache.catalina.ant.ValidatorTask) allows only one parameter: + the base path of an exploded web application. +

    + +

    + The TCD uses an exploded web application as input (see the list of the + properties used below). A web application that is programatically + deployed with the deployer may include a Context Desciptor in + /META-INF/context.xml. +

    + +

    + The TCD includes a ready-to-use Ant script, with the following targets: +

    +
      +
    • + compile (default): Compile and validate the web + application. This can be used standalone, and does not need a running + Tomcat server. The compiled application will only run on the associated + Tomcat 5.5.x server release, and is not guaranteed to work on another + Tomcat release, as the code generated by Jasper depends on its runtime + component. It should also be noted that this target will also compile + automatically any Java source file located in the + /WEB-INF/classes folder of the web application.
    • +
    • + deploy: Deploy a web application (compiled or not) to + a Tomcat server. +
    • +
    • undeploy: Undeploy a web application
    • +
    • start: Start web application
    • +
    • reload: Reload web application
    • +
    • stop: Stop web application
    • +
    + +

    + In order for the deployment to be configured, create a file + called deployer.properties in the TCD installation + directory root. In this file, add the following name=value pairs per + line: +

    + +

    + Additionally, you will need to ensure that a user has been + setup for the target Tomcat Manager (which TCD uses) otherwise the TCD + will not authenticate with the Tomcat Manager and the deployment will + fail. To do this, see the Tomcat Manager page. +

    + +
      +
    • + build: The build folder used will be, by default, + ${build}/webapp/${path}. After the end of the execution + of the compile target, the web application .WAR will be + located at ${build}/webapp/${path}.war. +
    • +
    • + webapp: The directory containing the exploded web application + which will be compiled and validated. By default, the folder is + myapp. +
    • +
    • + path: Deployed context path of the web application, + by default /myapp. +
    • +
    • + url: Absolute URL to the Tomcat Manager web application of a + running Tomcat server, which will be used to deploy and undeploy the + web application. By default, the deployer will attempt to access + a Tomcat instance running on localhost, at + http://localhost:8080/manager. +
    • +
    • + username: Tomcat Manager username (user should have a role of + manager) +
    • +
    • password: Tomcat Manager password.
    • +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/developers.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/developers.html new file mode 100644 index 0000000..40aeea8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/developers.html @@ -0,0 +1,42 @@ +Apache Tomcat 6.0 - Tomcat Developers
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Tomcat Developers

    Active Developers
    + +

    + The list indicates the developers' main areas of interest. Feel free to + add to the list :) The developers email addresses are + [login]@apache.org. Please do not contact + developers directly for any support issues (please post to the + tomcat-users mailing list instead, or one of the other support + resources; some organizations and individual consultants also offer + for pay Tomcat support, as listed on the + vendors page + on the Jakarta website). +

    + +
      +
    • Amy Roh (amyroh): Catalina, Admin webapp
    • +
    • Bill Barker (billbarker): Connectors
    • +
    • Costin Manolache (costin): Catalina, Connectors
    • +
    • Filip Hanik (fhanik): Clustering
    • +
    • Glenn Nielsen (glenn): Catalina, Connectors
    • +
    • Henri Gomez (hgomez): Connectors
    • +
    • Jan Luehe (luehe): Jasper
    • +
    • Jean-Francois Arcand (jfarcand): Catalina
    • +
    • Jean-Frederic Clere (jfclere): Connectors
    • +
    • Jim Jagielski (jim): Connectors
    • +
    • Kin-Man Chung (kinman): Jasper
    • +
    • Mladen Turk (mturk): Connectors
    • +
    • Peter Rossbach (pero): Catalina, Clustering, JMX
    • +
    • Remy Maucherat (remm): Catalina, Connectors, Docs
    • +
    • Tim Funk (funkman): Catalina, Docs
    • +
    • Yoav Shapira (yoavs): Docs, JMX, Catalina, balancer, Release Manager
    • +
    + +
    Retired Developers
    + + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/extras.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/extras.html new file mode 100644 index 0000000..3fd35a9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/extras.html @@ -0,0 +1,53 @@ +Apache Tomcat 6.0 - Additional Components
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Additional Components

    Introduction
    +

    + A number of additional third party components may be used with Apache Tomcat, but are not + provided directly in the downlad bundle for a variety of reasons. These may be built by + users should they need it. +

    + +
    Building
    + +

    + The additional components are built using the extras.xml Ant script which is + present in the source bundle of Tomcat. +

    + +

    The build process is the following:

    + +
      +
    • Follow the build instructions to build a Tomcat binary from + the source bundle (note: it will be used by the build process of the additional components, but + does not need to be actually used later on)
    • +
    • Execute the command ant -f extras.xml to run the build script
    • +
    • The additional components JARs will be placed in the output/extras folder
    • +
    • Refer to the documentation below about the usage of these JARs
    • +
    + +
    Components list
    + +
    Full commons-logging implementation
    + +

    + Tomcat uses a package renamed commons-logging API implementation which is hardcoded to use + the java.util.logging API. The commons-logging additional component builds a full fledged + package renames commons-logging implementation which can be used to replace the implementation + provided with Tomcat. See the logging page for usage instructions. +

    + +
    + +
    Web Services support (JSR 109)
    + +

    + Tomcat provides factories for JSR 109 which may be used to resolve web services references. + Place the generated catalina-ws.jar as well as jaxrpc.jar and wsdl4j.jar (or another implementation + of JSR 109) in the Tomcat lib folder. +

    + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/html-manager-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/html-manager-howto.html new file mode 100644 index 0000000..989177d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/html-manager-howto.html @@ -0,0 +1,518 @@ +Apache Tomcat 6.0 - Tomcat Web Application Manager How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Tomcat Web Application Manager How To

    Introduction
    + +

    In many production environments it is very useful to have the capability +to manage your web applications without having to shut down and restart +Tomcat. This document is for the HTML web interface to the web application +manager.

    + +

    The interface is divided into five sections: +

      +
    • Message - Displays success and failure messages.
    • +
    • Manager - General manager operations like list and + help.
    • +
    • Applications - List of web applications and + commands.
    • +
    • Deploy - Deploying web applications.
    • +
    • Server Information - Information about the Tomcat + server.
    • +
    +

    + +
    Message
    + +

    +Displays information about the success or failure of the last web application +manager command you performed. If it succeeded OK is displayed +and may be followed by a success message. If it failed FAIL +is displayed followed by an error message. Common failure messages are +documented below for each command. The complete list of failure messages for +each command can be found in the manager web +application documentation. +

    + +
    Manager
    + +

    The Manager section has three links: +

      +
    • List Applications - Redisplay a list of web + applications.
    • +
    • HTML Manager Help - A link to this document.
    • +
    • Manager Help - A link to the comprehensive Manager + App HOW TO.
    • +
    +

    + +
    Applications
    + +

    The Applications section lists information about all the installed web +applications and provides links for managing them. For each web application +the following is displayed: +

      +
    • Path - The web applicaton context path.
    • +
    • Display Name - The display name for the web application + if it has one configured in its "web.xml" file.
    • +
    • Running - Whether the web application is running and + available (true), or not running and unavailable (false).
    • +
    • Sessions - The number of active sessions for remote + users of this web application. The number of sessions is a link which + when submitted displays more details about session usage by the web + application in the Message box.
    • +
    • Commands - Lists all commands which can be performed on + the web application. Only those commands which can be performed will be + listed as a link which can be submitted. No commands can be performed on + the manager web application itself. The following commands can be + performed: +
        +
      • Start - Start a web application which had been + stopped.
      • +
      • Stop - Stop a web application which is currently + running and make it unavailable.
      • +
      • Reload - Reload the web application so that new + ".jar" files in /WEB-INF/lib/ or new classes in + /WEB-INF/classes/ can be used.
      • +
      • Undeploy - Stop and then remove this web + application from the server.
      • +
      +
    • +
    +

    + +
    Start
    + +

    Signal a stopped application to restart, and make itself available again. +Stopping and starting is useful, for example, if the database required by +your application becomes temporarily unavailable. It is usually better to +stop the web application that relies on this database rather than letting +users continuously encounter database exceptions.

    + +

    If this command succeeds, you will see a Message like this:

    +
    +OK - Started application at context path /examples
    +
    + +

    Otherwise, the Message will start with FAIL and include an +error message. Possible causes for problems include: +

      +
    • Encountered exception +
      +

      An exception was encountered trying to start the web application. + Check the Tomcat 5 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character, unless you are + referencing the ROOT web application -- in which case the context path + must be a zero-length string.

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    +

    + +
    + +
    Stop
    + +

    Signal an existing application to make itself unavailable, but leave it +deployed. Any request that comes in while an application is +stopped will see an HTTP error 404, and this application will show as +"stopped" on a list applications command.

    + +

    If this command succeeds, you will see a Message like this:

    +
    +OK - Stopped application at context path /examples
    +
    + +

    Otherwise, the Message will start with FAIL and include an +error message. Possible causes for problems include: +

      +
    • Encountered exception +
      +

      An exception was encountered trying to stop the web application. + Check the Tomcat 5 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character, unless you are + referencing the ROOT web application -- in which case the context path + must be a zero-length string.

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    +

    + +
    + +
    Reload
    + +

    Signal an existing application to shut itself down and reload. This can +be useful when the web application context is not reloadable and you have +updated classes or property files in the /WEB-INF/classes +directory or when you have added or updated jar files in the +/WEB-INF/lib directory. +

    +

    NOTE: The /WEB-INF/web.xml +web application configuration file is not checked on a reload; +the previous web.xml configuration is used. +If you have made changes to your web.xml file you must stop +then start the web application. +

    + +

    If this command succeeds, you will see a Message like this:

    +
    +OK - Reloaded application at context path /examples
    +
    + +

    Otherwise, the Message will start with FAIL and include an +error message. Possible causes for problems include: +

      +
    • Encountered exception +
      +

      An exception was encountered trying to restart the web application. + Check the Tomcat 5 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character, unless you are + referencing the ROOT web application -- in which case the context path + must be a zero-length string.

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    • Reload not supported on WAR deployed at path /foo +
      + Currently, application reloading (to pick up changes to the classes or + web.xml file) is not supported when a web application is + installed directly from a WAR file, which happens when the host is + configured to not unpack WAR files. As it only works when the web + application is installed from an unpacked directory, if you are using + a WAR file, you should undeploy and then deploy + the application again to pick up your changes. +
    • +
    +

    + +
    + +
    Undeploy
    + +

    WARNING - This command will delete the +contents of the web application directory and/or ".war" file if it exists within +the appBase directory (typically "webapps") for this virtual host +. The web application temporary work directory is also deleted. If +you simply want to take an application out of service, you should use the +/stop command instead.

    + +

    Signal an existing application to gracefully shut itself down, and then +remove it from Tomcat (which also makes this context path available for +reuse later). This command is the logical opposite of the +/deploy Ant command, and the related deploy features available +in the HTML manager.

    + +

    If this command succeeds, you will see a Message like this:

    +
    +OK - Undeployed application at context path /examples
    +
    + +

    Otherwise, the Message will start with FAIL and include an +error message. Possible causes for problems include: +

      +
    • Encountered exception +
      +

      An exception was encountered trying to undeploy the web application. + Check the Tomcat logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character, unless you are + referencing the ROOT web application -- in which case the context path + must be a zero-length string.

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    +

    + +
    + +
    Deploy
    + +

    Web applications can be deployed using files or directories located +on the Tomcat server or you can upload a web application archive (WAR) +file to the server.

    + +

    To install an application, fill in the appropriate fields for the type +of install you want to do and then submit it using the Install +button.

    + +
    Deploy directory or WAR file located on server
    + +

    Deploy and start a new web application, attached to the specified Context +Path: (which must not be in use by any other web application). +This command is the logical opposite of the Undeploy command.

    + +

    There are a number of different ways the deploy command can be used.

    + +

    Deploy a Directory or WAR by URL

    + +

    Install a web application directory or ".war" file located on the Tomcat +server. If no Context Path is specified, the directory name or the +war file name without the ".war" extension is used as the path. The +WAR or Directory URL specifies a URL (including the file: +scheme) for either a directory or a web application archive (WAR) file. The +supported syntax for a URL referring to a WAR file is described on the Javadocs +page for the java.net.JarURLConnection class. Use only URLs that +refer to the entire WAR file.

    + +

    In this example the web application located in the directory +C:\path\to\foo on the Tomcat server (running on Windows) +is deployed as the web application context named /footoo. +

    +Context Path: /footoo
    +WAR or Directory URL: file:C:/path/to/foo
    +
    +

    + +

    In this example the ".war" file /path/to/bar.war on the +Tomcat server (running on Unix) is deployed as the web application +context named /bar. Notice that there is no path +parameter so the context path defaults to the name of the web application +archive file without the ".war" extension. +

    +WAR or Directory URL: jar:file:/path/to/bar.war!/
    +
    +

    + +

    Deploy a Directory or War from the Host appBase

    + +

    Install a web application directory or ".war" file located in your Host +appBase directory. If no Context Path is specified the directory name +or the war file name without the ".war" extension is used as the path.

    + +

    In this example the web application located in a subdirectory named +foo in the Host appBase directory of the Tomcat server is +deployed as the web application context named /foo. Notice +that there is no path parameter so the context path defaults +to the name of the web application directory. +

    +WAR or Directory URL: foo
    +
    +

    + +

    In this example the ".war" file bar.war located in your +Host appBase directory on the Tomcat server is deployed as the web +application context named /bartoo. +

    +Context Path: /bartoo
    +WAR or Directory URL: bar.war
    +
    +

    + +

    Deploy using a Context configuration ".xml" file

    + +

    If the Host deployXML flag is set to true, you can install a web +application using a Context configuration ".xml" file and an optional +".war" file or web application directory. The Context Path +is not used when installing a web application using a context ".xml" +configuration file.

    + +

    A Context configuration ".xml" file can contain valid XML for a +web application Context just as if it were configured in your +Tomcat server.xml configuration file. Here is an +example for Tomcat running on Windows: +

    +<Context path="/foobar" docBase="C:\path\to\application\foobar"
    +         debug="0">
    +
    +  <!-- Link to the user database we will get roles from -->
    +  <ResourceLink name="users" global="UserDatabase"
    +                type="org.apache.catalina.UserDatabase"/>
    +
    +</Context>
    +
    +

    + +

    Use of the WAR or Directory URL is optional. When used +to select a web application ".war" file or directory it overrides any +docBase configured in the context configuration ".xml" file.

    + +

    Here is an example of installing an application using a Context +configuration ".xml" file for Tomcat running on Windows. +

    +XML Configuration file URL: file:C:/path/to/context.xml
    +
    +

    + +

    Here is an example of installing an application using a Context +configuration ".xml" file and a web application ".war" file located +on the server (Tomcat running on Unix). +

    +XML Configuration file URL: file:/path/to/context.xml
    +WAR or Directory URL: jar:file:/path/to/bar.war!/
    +
    +

    + +
    + +
    Upload a WAR file to install
    + +

    Upload a WAR file from your local system and install it into the +appBase for your Host. The name of the WAR file without the ".war" +extension is used as the context path name.

    + +

    Use the Browse button to select a WAR file to upload to the +server from your local desktop system.

    + +

    The .WAR file may include Tomcat specific deployment configuration, by +including a Context configuration XML file in +/META-INF/context.xml.

    + +

    Upload of a WAR file could fail for the following reasons:

    +
      +
    • File uploaded must be a .war +
      +

      The upload install will only accept files which have the filename + extension of ".war".

      +
    • +
    • War file already exists on server +
      +

      If a war file of the same name already exists in your Host's + appBase the upload will fail. Either undeploy the existing war file + from your Host's appBase or upload the new war file using a different + name.

      +
    • +
    • File upload failed, no file +
      +

      The file upload failed, no file was received by the server.

      +
    • +
    • Install Upload Failed, Exception: +
      +

      The war file upload or install failed with a Java Exception. + The exception message will be listed.

      +
    • +
    + +
    + +
    Deployment Notes
    + +

    If the Host is configured with unpackWARs=true and you install a war +file, the war will be unpacked into a directory in your Host appBase +directory.

    + +

    If the application war or directory is deployed in your Host appBase +directory and either the Host is configured with autoDeploy=true or +liveDeploy=true, the Context path must match the directory name or +war file name without the ".war" extension.

    + +

    For security when untrusted users can manage web applications, the +Host deployXML flag can be set to false. This prevents untrusted users +from installing web applications using a configuration XML file and +also prevents them from installing application directories or ".war" +files located outside of their Host appBase.

    + +
    + +
    Deploy Message
    + +

    If deployment and startup is successful, you will receive a Message +like this:

    +
    +OK - Deployed application at context path /foo
    +
    + +

    Otherwise, the Message will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Application already exists at path /foo +
      +

      The context paths for all currently running web applications must be + unique. Therefore, you must either undeploy the existing web + application using this context path, or choose a different context path + for the new one.

      +
    • +
    • Document base does not exist or is not a readable directory +
      +

      The URL specified by the WAR or Directory URL: field must + identify a directory on this server that contains the "unpacked" version + of a web application, or the absolute URL of a web application archive + (WAR) file that contains this application. Correct the value entered for + the WAR or Directory URL: field.

      +
    • +
    • Encountered exception +
      +

      An exception was encountered trying to start the new web application. + Check the Tomcat 5 logs for the details, but likely explanations include + problems parsing your /WEB-INF/web.xml file, or missing + classes encountered when initializing application event listeners and + filters.

      +
    • +
    • Invalid application URL was specified +
      +

      The URL for the WAR or Directory URL: field that you specified + was not valid. Such URLs must start with file:, and URLs + for a WAR file must end in ".war".

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character, unless you are + referencing the ROOT web application -- in which case the context path + must be a "/" string.

      +
    • +
    • Context path must match the directory or WAR file name: +
      + If the application war or directory is deployed in your Host appBase + directory and either the Host is configured with autoDeploy=true or + liveDeploy=true, the Context path must match the directory name or + war file name without the ".war" extension. +
    • +
    • Only web applications in the Host web application directory can + be deployed +
      + If the Host deployXML flag is set to false this error will happen + if an attempt is made to install a web application directory or + ".war" file outside of the Host appBase directory. +
    • +
    + +
    +
    Server Information
    + +

    This section displays information about Tomcat, the operating system of +the server Tomcat is hosted on, and the Java Virtual Machine Tomcat is +running in.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/index.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/index.html new file mode 100644 index 0000000..e452e44 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/index.html @@ -0,0 +1,156 @@ +Apache Tomcat 6.0 - Documentation Index
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Documentation Index

    Introduction
    + +

    This is the top-level entry point of the documentation bundle for the +Apache Tomcat Servlet/JSP container. Apache Tomcat version 6.0 +implements the +Servlet 2.5 and JavaServer Pages 2.1 specifications from the +Java Community Process, and includes many +additional features that make it a useful platform for developing and deploying +web applications and web services.

    + +

    Select one of the links from the navigation menu (to the left) to drill +down to the more detailed documentation that is available. Each available +manual is described in more detail below.

    + +
    Apache Tomcat User Guide
    + +

    The following documents will assist you in downloading, installing +Apache Tomcat 6, and using many of the Apache Tomcat features.

    + +
      +
    1. Introduction - A + brief, high level, overview of Apache Tomcat.
    2. +
    3. Setup - How to install and run + Apache Tomcat on a variety of platforms.
    4. +
    5. First web application + - An introduction to the concepts of a web application as defined + in the Servlet + 2.4 Specification. Covers basic organization of your web application + source tree, the structure of a web application archive, and an + introduction to the web application deployment descriptor + (/WEB-INF/web.xml).
    6. +
    7. Deployer - + Operating the Apache Tomcat Deployer to deploy, precompile, and validate web + applications.
    8. +
    9. Manager - + Operating the Manager web app to deploy, undeploy, and + redeploy applications while Apache Tomcat is running.
    10. +
    11. Realms and Access Control + - Description of how to configure Realms (databases of users, + passwords, and their associated roles) for use in web applications that + utilize Container Managed Security.
    12. +
    13. Security Manager + - Configuring and using a Java Security Manager to + support fine-grained control over the behavior of your web applications. +
    14. +
    15. JNDI Resources + - Configuring standard and custom resources in the JNDI naming context + that is provided to each web application.
    16. +
    17. + JDBC DataSource + - Configuring a JNDI DataSoure with a DB connection pool. + Examples for many popular databases.
    18. +
    19. Classloading + - Information about class loading in Apache Tomcat 5, including where to place + your application classes so that they are visible.
    20. +
    21. JSPs + - Information about Jasper configuration, as well as the JSP compiler + usage.
    22. +
    23. SSL - + Installing and + configuring SSL support so that your Apache Tomcat will serve requests using + the https protocol.
    24. +
    25. SSI - + Using Server Side Includes in Apache Tomcat.
    26. +
    27. CGI - + Using CGIs with Apache Tomcat.
    28. +
    29. Proxy Support - + Configuring Apache Tomcat 5 to run behind a proxy server (or a web server + functioning as a proxy server).
    30. +
    31. MBean Descriptor - + Configuring MBean descriptors files for custom components.
    32. +
    33. Default Servlet - + Configuring the default servlet and customizing directory listings.
    34. +
    35. Apache Tomcat Clustering - + Enable session replication in a Apache Tomcat environment.
    36. +
    37. Balancer - + Configuring, using, and extending the load balancer application.
    38. +
    39. Connectors - + Connectors available in Apache Tomcat, and native web server integration.
    40. +
    41. Monitoring and Management - + Enabling JMX Remote support, and using tools to monitor and manage Apache Tomcat.
    42. +
    43. Logging - + Configuring logging in Apache Tomcat.
    44. +
    45. Apache Portable Runtime - + Using APR to provide superior performance, scalability and better + integration with native server technologies.
    46. +
    47. Virtual Hosting - + Configuring vitual hosting in Apache Tomcat.
    48. +
    49. Advanced IO - + Extensions available over regular, blocking IO.
    50. +
    51. Additional Components - + Obtaining additional, optional components.
    52. + +
    + +
    Reference
    + +

    The following documents are aimed at System Administrators who +are responsible for installing, configuring, and operating a Apache Tomcat 6 server. +

    + + +
    Apache Tomcat Developers
    + +

    The following documents are for Java developers who wish to contribute to +the development of the Apache Tomcat project.

    +
      +
    • Building from Source - + Details the steps necessary to download Apache Tomcat 6 source code (and the + other packages that it depends on), and build a binary distribution from + those sources. +
    • +
    • Changelog - Details the + changes made to Apache Tomcat. +
    • +
    • Status - Apache Tomcat development + status. +
    • +
    • Developers - List of active + Apache Tomcat contributors. +
    • +
    • Functional Specifications + - Requirements specifications for features of the Catalina servlet + container portion of Apache Tomcat 6.
    • +
    • Catalina Javadocs + - Javadoc API documentation for the Catalina servlet + container and its dependencies.
    • +
    • Jasper Javadocs + - Javadoc API documentation for the Jasper JSP container + portion of Apache Tomcat 6.
    • +
    • Apache Tomcat Architecture + - Documentation of the Apache Tomcat Server Architecture.
    • + +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/introduction.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/introduction.html new file mode 100644 index 0000000..bc459a8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/introduction.html @@ -0,0 +1,102 @@ +Apache Tomcat 6.0 - Introduction
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Introduction

    Introduction
    + +

    For administrators and web developers alike, there are some important bits +of information you should familiarize yourself with before starting out. This +document serves as a brief introduction to some of the concepts and +terminology behind the Tomcat container. As well, where to go when you need +help.

    + +
    Terminology
    + +

    In the course of reading these documents, you'll run across a number of +terms; some specific to Tomcat, and others defined by the +Servlet or +JSP specifications.

    + +
      +
    • Context - In a nutshell, a Context is a + web application.
    • +
    • Term2 - This is it.
    • +
    • Term3 - This is it!
    • +
    + +
    Directories and Files
    + +

    Throughout the docs, you'll notice there are numerous references to +$CATALINA_HOME. This represents the root of your Tomcat +installation. When we say, "This information can be found in your +$CATALINA_HOME/README.txt file" we mean to look at the README.txt file at the +root of your Tomcat install.

    + +

    These are some of the key tomcat directories, all relative +to $CATALINA_HOME:

    + +
      +
    • /bin - Startup, shutdown, and other scripts. The + *.sh files (for Unix systems) are functional duplicates of + the *.bat files (for Windows systems). Since the Win32 + command-line lacks certain functionality, there are some additional + files in here.
    • +
    • /conf - Configuration files and related DTDs. The most + important file in here is server.xml. It is the main configuration file + for the container.
    • +
    • /logs - Log files are here by default.
    • +
    • /webapps - This is where your webapps go.
    • +
    + +
    Configuring Tomcat
    + +

    This section will acquaint you with the basic information used during +the configuration of the container.

    + +

    All of the information in the configuration files is read at startup, +meaning that any change to the files necessitates a restart of the container. +

    + +
    Where to Go for Help
    + +

    While we've done our best to ensure that these documents are clearly +written and easy to understand, we may have missed something. Provided +below are various web sites and mailing lists in case you get stuck.

    + +

    As Tomcat 6 is a new release of Tomcat, keep in mind that some of the +issues and solutions vary between the major versions of Tomcat (4.x versus +5). As you search around the web, there will be some documentation that +is not relevant to Tomcat 6, but 3.x, 4.x and 5.x. Doing 3.x or 4.x things to 6 +will probably not work in most cases as the server.xml files are very +different.

    + +
      +
    • Current document - most documents will list potential hangups. Be sure + to fully read the relevant documentation as it will save you much time + and effort. There's nothing like scouring the web only to find out that + the answer was right in front of you all along!
    • +
    • Tomcat FAQ as maintained by the developers.
    • +
    • Tomcat WIKI
    • +
    • Tomcat FAQ at jGuru
    • +
    • Tomcat mailing list archives - numerous sites archive the Tomcat mailing + lists. Since the links change over time, clicking here will search + Google. +
    • +
    • The TOMCAT-USER mailing list, which you can subscribe to + here. If you don't + get a reply, then there's a good chance that your question was probably + answered in the list archives or one of the FAQs. Although questions + about web application development in general are sometimes asked and + answered, please focus your questions on Tomcat-specific issues.
    • +
    • The TOMCAT-DEV mailing list, which you can subscribe to + here. This list is + reserved for discussions about the development of Tomcat + itself. Questions about Tomcat configuration, and the problems you run + into while developing and running applications, will normally be more + appropriate on the TOMCAT-USER list instead.
    • +
    + +

    And, if you think something should be in the docs, by all means let us know +on the TOMCAT-DEV list, or send one of the doc authors email.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/jasper-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/jasper-howto.html new file mode 100644 index 0000000..bf1b35b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/jasper-howto.html @@ -0,0 +1,304 @@ +Apache Tomcat 6.0 - Jasper 2 JSP Engine How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Jasper 2 JSP Engine How To

    Table of Contents
    +

    +Introduction
    +Configuration
    +Production Configuration
    +Web Application Compilation
    +Using Jikes
    +

    +
    Introduction
    + +

    Tomcat 6.0 uses the Jasper 2 JSP Engine to implement +the JavaServer Pages 2.0 +specification.

    + +

    Jasper 2 has been redesigned to significantly improve performance over +the orignal Jasper. In addition to general code improvements the following +changes were made: +

      +
    • JSP Custom Tag Pooling - The java objects instantiated +for JSP Custom Tags can now be pooled and reused. This significantly boosts +the performance of JSP pages which use custom tags.
    • +
    • Background JSP compilation - If you make a change to +a JSP page which had already been compiled Jasper 2 can recompile that +page in the background. The previously compiled JSP page will still be +available to serve requests. Once the new page has been compiled +successfully it will replace the old page. This helps improve availablity +of your JSP pages on a production server.
    • +
    • Recompile JSP when included page changes - Jasper 2 +can now detect when a page included at compile time from a JSP has changed +and then recompile the parent JSP.
    • +
    • JDT used to compile JSP pages - The +Eclipse JDT Java compiler is now used to perform JSP java source code +compilation. This compiler loads source dependencies from the container +classloader. Ant and javac can still be used.
    • +
    +

    + +

    Jasper is implemented using the servlet class +org.apache.jasper.servlet.JspServlet.

    + +
    Configuration
    + +

    By default Jasper is configured for use when doing web application +development. See the section +Production Configuration for information on configuring Jasper +for use on a production Tomcat server.

    + +

    The servlet which implements Jasper is configured using init parameters +in your global $CATALINA_BASE/conf/web.xml. + +

      +
    • checkInterval - If development is false and reloading is +true, background compiles are enabled. checkInterval is the time in seconds +between checks to see if a JSP page needs to be recompiled. Default +300 seconds.
    • + +
    • compiler - Which compiler Ant should use to compile JSP +pages. See the Ant documentation for more information. If the value is not set, +then the default Eclipse JDT Java compiler will be used instead of using Ant. +No default value.
    • + +
    • classdebuginfo - Should the class file be compiled with +debugging information? true or false, default +true. +
    • + +
    • classpath - Defines the class path to be used to compile +the generated servlets. This parameter only has an effect if the ServletContext +attribute org.apache.jasper.Constants.SERVLET_CLASSPATH is not set. This +attribute is always set when Jasper is used within Tomcat. By default the +classpath is created dynamically based on the current web application.
    • + +
    • compilerSourceVM - What JDK version are the source files compatible with? (Default JDK 1.4)
    • + +
    • compilerTargetVM - What JDK version are the generated files compatible with? (Default JDK 1.4)
    • + +
    • development - Is Jasper used in development mode (will +check for JSP modification on every access)? true or +false, default true.
    • + +
    • enablePooling - Determines whether tag handler pooling is +enabled. true or false, default true. +
    • + +
    • engineOptionsClass - Allows specifying the Options class +used to configure Jasper. If not present, the default EmbeddedServletOptions +will be used. +
    • + +
    • ieClassId - The class-id value to be sent to Internet +Explorer when using <jsp:plugin> tags. Default +clsid:8AD9C840-044E-11D1-B3E9-00805F499D93.
    • + +
    • fork - Have Ant fork JSP page compiles so they are +performed in a seperate JVM from Tomcat? true or +false, default true.
    • + +
    • javaEncoding - Java file encoding to use for generating +java source files. Default UTF8.
    • + +
    • genStringAsCharArray - Should text strings be generated as char +arrays, to improve performance in some cases? Default false.
    • + +
    • keepgenerated - Should we keep the generated Java source +code for each page instead of deleting it? true or +false, default true.
    • + +
    • mappedfile - Should we generate static content with one +print statement per input line, to ease debugging? +true or false, default true.
    • + +
    • modificationTestInterval - Checks for modification for a given +JSP file (and all its dependent files) will be performed only once every specified amount +of seconds. Setting this to 0 will cause the JSP to be checked on every access. +Default is 4 seconds.
    • + +
    • reloading - Should Jasper check for modified JSPs? +true or false, default false.
    • + +
    • scratchdir - What scratch directory should we use when +compiling JSP pages? Default is the work directory for the current web +application.
    • + +
    • trimSpaces - Should white spaces in template text between +actions or directives be trimmed ?, default false.
    • +
    +

    + +

    The Java compiler from Eclipse JDT in included as the default compiler. It is an +advanced Java compiler which will load all dependencies from the Tomcat class loader, +which will help tremendously when compiling on large installations with tens of JARs. +On fast servers, this will allow sub-second recompilation cycles for even large JSP +pages.

    + +

    Apache Ant, which was used in previous Tomcat releases, can be used instead instead of +the new compiler by simply removing the lib/jasper-jdt.jar file, +and placing the ant.jar file from the latest Ant distribution in the +lib folder. If you do this, you also need to use the "javac" +argument to catalina.sh.

    + +
    Production Configuration
    + +

    The main JSP optimization which can be done is precompilation of JSPs. However, +this might not be possible (for example, when using the jsp-property-group feature) +or practical, in which case the configuration of the Jasper servlet becomes critical.

    + +

    When using Jasper 2 in a production Tomcat server you should consider +making the following changes from the default configuration. +

      +
    • development - To disable on access checks for JSP +pages compilation set this to false.
    • +
    • genStringAsCharArray - To generate slightly more efficient +char arrays, set this to true.
    • +
    • modificationTestInterval - If development has to be set to +true for any reason (such as dynamic generation of JSPs), setting +this to a high value will improve performance a lot.
    • +
    • trimSpaces - To remove useless bytes from the response, +set this to true.
    • +
    +

    + +
    Web Application Compilation
    + +

    Using Ant is the preferred way to compile web applications using JSPC. +Use the script given below (a similar script is included in the "deployer" +download) to precompile a webapp: +

    + +

    +

    +<project name="Webapp Precompilation" default="all" basedir="."> 
    +
    +   <import file="${tomcat.home}/bin/catalina-tasks.xml"/>
    +  
    +   <target name="jspc"> 
    +
    +    <jasper 
    +             validateXml="false" 
    +             uriroot="${webapp.path}" 
    +             webXmlFragment="${webapp.path}/WEB-INF/generated_web.xml" 
    +             outputDir="${webapp.path}/WEB-INF/src" /> 
    +
    +  </target> 
    +
    +  <target name="compile">
    +
    +    <mkdir dir="${webapp.path}/WEB-INF/classes"/>
    +    <mkdir dir="${webapp.path}/WEB-INF/lib"/>
    +
    +    <javac destdir="${webapp.path}/WEB-INF/classes"
    +           optimize="off"
    +           debug="on" failonerror="false"
    +           srcdir="${webapp.path}/WEB-INF/src" 
    +	   excludes="**/*.smap">
    +      <classpath>
    +        <pathelement location="${webapp.path}/WEB-INF/classes"/>
    +        <fileset dir="${webapp.path}/WEB-INF/lib">
    +          <include name="*.jar"/>
    +        </fileset>
    +        <pathelement location="${tomcat.home}/lib"/>
    +        <fileset dir="${tomcat.home}/common/lib">
    +          <include name="*.jar"/>
    +        </fileset>
    +        <fileset dir="${tomcat.home}/bin"> 
    +          <include name="*.jar"/> 
    +        </fileset> 
    +      </classpath>
    +      <include name="**" />
    +      <exclude name="tags/**" />
    +    </javac>
    +
    +  </target>
    +
    +  <target name="all" depends="jspc,compile">
    +  </target>
    +
    +  <target name="cleanup">
    +  	<delete>
    +        <fileset dir="${webapp.path}/WEB-INF/src"/>
    +        <fileset dir="${webapp.path}/WEB-INF/classes/org/apache/jsp"/>
    +  	</delete>
    +  </target>
    +
    +</project>
    +
    +

    + +

    +The following command line can be used to run the script +(replacing the tokens with the Tomcat base path and the path to the webapp +which should be precompiled):
    +

    +$ANT_HOME/bin/ant -Dtomcat.home=<$TOMCAT_HOME> -Dwebapp.path=<$WEBAPP_PATH>
    +
    +

    + +

    +Then, the declarations and mappings for the servlets which were generated +during the precompilation must be added to the web application deployment +descriptor. Insert the ${webapp.path}/WEB-INF/generated_web.xml +at the right place inside the ${webapp.path}/WEB-INF/web.xml file. +Restart the web application (using the manager) and test it to verify it is +running fine with precompiled servlets. An appropriate token placed in the +web application deployment descriptor may also be used to automatically +insert the generated servlet declarations and mappings using Ant filtering +capabilities. This is actually how all the webapps distributed with Tomcat +are automatically compiled as part of the build process. +

    + +

    +At the jasper2 task you can use the option addWebXmlMappings for +automatic merge the ${webapp.path}/WEB-INF/generated_web.xml +with the current web application deployment descriptor at ${webapp.path}/WEB-INF/web.xml. +When you want to use Java 5 feature inside your jsp's, add the following javac compiler task +attributes: source="1.5" target="1.5". For live application +you can also compile with optimize="on" and without debug info +debug="off". +

    + +

    +When you don't want to stop the jsp generation at first jsp syntax error, use +failOnError="false"and with showSuccess="true" +all successfull jsp to java generation are printed out. Sometimes it is +very helpfull, when you cleanup the generate java source files at ${webapp.path}/WEB-INF/src +and the compile jsp servlet classes at ${webapp.path}/WEB-INF/classes/org/apache/jsp. +

    + +

    Hints: +

      +
    • When you switch to another tomcat release, then regenerate and recompile +your jsp's with this version again!
    • +
    • Use java system property at server runtime to disable tag pooling org.apache.jasper.runtime.JspFactoryImpl.USE_POOL=false. +and limit the buffering with org.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true. Note that changing +from the defaults may affect performance, but depending on the application.
    • +
    +

    +
    Using Jikes
    + +

    If you wish to use + +Jikes to compile JSP pages: +

      +
    • From your Ant installation, copy ant.jar +and (if it's available: Ant 1.5 and later) ant-launcher.jar to +$CATALINA_BASE/lib.
    • +
    • Download and install jikes. jikes must support the -encoding option. +Execute jikes -help to verify that it was built with support +for -encoding.
    • +
    • Set the init parameter compiler to jikes.
    • +
    • Define the property -Dbuild.compiler.emacs=true when starting +Tomcat by adding it to your CATALINA_OPTS environment variable. +This changes how jikes outputs error messages so that it is compatible with +Jasper.
    • +
    • If you get an error reporting that jikes can't use UTF8 encoding, try +setting the init parameter javaEncoding to +ISO-8859-1.
    • +
    +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/jndi-datasource-examples-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/jndi-datasource-examples-howto.html new file mode 100644 index 0000000..aa56d32 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/jndi-datasource-examples-howto.html @@ -0,0 +1,618 @@ +Apache Tomcat 6.0 - JNDI Datasource HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    JNDI Datasource HOW-TO

    Table of Contents
    +

    +Introduction
    + +Database Connection Pool (DBCP) Configurations
    +Non DBCP Solutions
    +Oracle 8i with OCI client
    +Common Problems
    +

    +
    Introduction
    + +

    JNDI Datasource configuration is covered extensively in the +JNDI-Resources-HOWTO. However, feedback from tomcat-user has +shown that specifics for individual configurations can be rather tricky.

    + +

    Here then are some example configurations that have been posted to +tomcat-user for popular databases and some general tips for db useage.

    + +

    You should be aware that since these notes are derived from configuration +and/or feedback posted to tomcat-user YMMV :-). Please let us +know if you have any other tested configurations that you feel may be of use +to the wider audience, or if you feel we can improve this section in anyway.

    + +

    +Please note that JNDI resource configuration changed somewhat between +Tomcat 5.0.x and Tomcat 5.5.x. You will most likely need to modify older +JNDI resource configurations to match the syntax in the example below in order +to make them work in Tomcat 6.x.x. +

    + +

    +Also, please note that JNDI DataSource configuration in general, and this +tutorial in particular, assumes that you have read and understood the +Context and +Host configuration references, including +the section about Automatic Application Deployment in the latter reference. +

    +
    Database Connection Pool (DBCP) Configurations
    + +

    DBCP provides support for JDBC 2.0. On systems using a 1.4 JVM DBCP +will support JDBC 3.0. Please let us know if you have used DBCP and its +JDBC 3.0 features with a 1.4 JVM. +

    + +

    See the +DBCP documentation for a complete list of configuration parameters. +

    + +
    Installation
    +

    DBCP uses the Jakarta-Commons Database Connection Pool. It relies on +number of Jakarta-Commons components: +

      +
    • Jakarta-Commons DBCP
    • +
    • Jakarta-Commons Collections
    • +
    • Jakarta-Commons Pool
    • +
    +These libraries are located in a single JAR at +$CATALINA_HOME/lib/tomcat-dbcp.jar. However, +only the classes needed for connection pooling have been included, and the +packages have been renamed to avoid interfering with applications. +

    + +
    + +
    Preventing dB connection pool leaks
    + +

    +A database connection pool creates and manages a pool of connections +to a database. Recycling and reusing already existing connections +to a dB is more efficient than opening a new connection. +

    + +

    +There is one problem with connection pooling. A web application has +to explicetely close ResultSet's, Statement's, and Connection's. +Failure of a web application to close these resources can result in +them never being available again for reuse, a db connection pool "leak". +This can eventually result in your web application db connections failing +if there are no more available connections.

    + +

    +There is a solution to this problem. The Jakarta-Commons DBCP can be +configured to track and recover these abandoned dB connections. Not +only can it recover them, but also generate a stack trace for the code +which opened these resources and never closed them.

    + +

    +To configure a DBCP DataSource so that abandoned dB connections are +removed and recycled add the following attribute to the +Resource configuration for your DBCP DataSource: +

    +            removeAbandoned="true"
    +
    +When available db connections run low DBCP will recover and recyle +any abandoned dB connections it finds. The default is false. +

    + +

    +Use the removeAbandonedTimeout attribute to set the number +of seconds a dB connection has been idle before it is considered abandoned. +

    +            removeAbandonedTimeout="60"
    +
    +The default timeout for removing abandoned connections is 300 seconds. +

    + +

    +The logAbandoned attribute can be set to true +if you want DBCP to log a stack trace of the code which abandoned the +dB connection resources. +

    +            logAbandoned="true"
    +
    +The default is false. +

    + +
    + +
    MySQL DBCP Example
    + +

    0. Introduction

    +

    Versions of MySQL and JDBC drivers that have been reported to work: +

      +
    • MySQL 3.23.47, MySQL 3.23.47 using InnoDB,, MySQL 3.23.58, MySQL 4.0.1alpha
    • +
    • Connector/J 3.0.11-stable (the official JDBC Driver)
    • +
    • mm.mysql 2.0.14 (an old 3rd party JDBC Driver)
    • +
    +

    + +

    Before you proceed, don't forget to copy the JDBC Driver's jar into $CATALINA_HOME/lib.

    + +

    1. MySQL configuration

    +

    +Ensure that you follow these instructions as variations can cause problems. +

    + +

    Create a new test user, a new database and a single test table. +Your MySQL user must have a password assigned. The driver +will fail if you try to connect with an empty password. +

    +mysql> GRANT ALL PRIVILEGES ON *.* TO javauser@localhost 
    +    ->   IDENTIFIED BY 'javadude' WITH GRANT OPTION;
    +mysql> create database javatest;
    +mysql> use javatest;
    +mysql> create table testdata (
    +    ->   id int not null auto_increment primary key,
    +    ->   foo varchar(25), 
    +    ->   bar int);
    +
    +
    +Note: the above user should be removed once testing is +complete! +
    +

    + +

    Next insert some test data into the testdata table. +

    +mysql> insert into testdata values(null, 'hello', 12345);
    +Query OK, 1 row affected (0.00 sec)
    +
    +mysql> select * from testdata;
    ++----+-------+-------+
    +| ID | FOO   | BAR   |
    ++----+-------+-------+
    +|  1 | hello | 12345 |
    ++----+-------+-------+
    +1 row in set (0.00 sec)
    +
    +mysql>
    +
    +

    + +

    2. Context configuration

    +

    Configure the JNDI DataSource in Tomcat by adding a declaration for your +resource to your Context.

    +

    For example: + +

    +<Context path="/DBTest" docBase="DBTest"
    +        debug="5" reloadable="true" crossContext="true">
    +
    +    <!-- maxActive: Maximum number of dB connections in pool. Make sure you
    +         configure your mysqld max_connections large enough to handle
    +         all of your db connections. Set to 0 for no limit.
    +         -->
    +
    +    <!-- maxIdle: Maximum number of idle dB connections to retain in pool.
    +         Set to -1 for no limit.  See also the DBCP documentation on this
    +         and the minEvictableIdleTimeMillis configuration parameter.
    +         -->
    +
    +    <!-- maxWait: Maximum time to wait for a dB connection to become available
    +         in ms, in this example 10 seconds. An Exception is thrown if
    +         this timeout is exceeded.  Set to -1 to wait indefinitely.
    +         -->
    +
    +    <!-- username and password: MySQL dB username and password for dB connections  -->
    +
    +    <!-- driverClassName: Class name for the old mm.mysql JDBC driver is
    +         org.gjt.mm.mysql.Driver - we recommend using Connector/J though.
    +         Class name for the official MySQL Connector/J driver is com.mysql.jdbc.Driver.
    +         -->
    +    
    +    <!-- url: The JDBC connection url for connecting to your MySQL dB.
    +         The autoReconnect=true argument to the url makes sure that the
    +         mm.mysql JDBC Driver will automatically reconnect if mysqld closed the
    +         connection.  mysqld by default closes idle connections after 8 hours.
    +         -->
    +
    +  <Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
    +               maxActive="100" maxIdle="30" maxWait="10000"
    +               username="javauser" password="javadude" driverClassName="com.mysql.jdbc.Driver"
    +               url="jdbc:mysql://localhost:3306/javatest?autoReconnect=true"/>
    +
    +</Context>
    +
    +

    + +

    3. web.xml configuration

    + +

    Now create a WEB-INF/web.xml for this test application. +

    +<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    +    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    +    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    +http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    +    version="2.4">
    +  <description>MySQL Test App</description>
    +  <resource-ref>
    +      <description>DB Connection</description>
    +      <res-ref-name>jdbc/TestDB</res-ref-name>
    +      <res-type>javax.sql.DataSource</res-type>
    +      <res-auth>Container</res-auth>
    +  </resource-ref>
    +</web-app>
    +
    +

    + +

    4. Test code

    +

    Now create a simple test.jsp page for use later. +

    +<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
    +<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    +
    +<sql:query var="rs" dataSource="jdbc/TestDB">
    +select id, foo, bar from testdata
    +</sql:query>
    +
    +<html>
    +  <head>
    +    <title>DB Test</title>
    +  </head>
    +  <body>
    +
    +  <h2>Results</h2>
    +  
    +<c:forEach var="row" items="${rs.rows}">
    +    Foo ${row.foo}<br/>
    +    Bar ${row.bar}<br/>
    +</c:forEach>
    +
    +  </body>
    +</html>
    +
    +

    + +

    That JSP page makes use of JSTL's SQL and Core taglibs. You can get it from Sun's Java Web Services Developer Pack or Jakarta Taglib Standard 1.1 project - just make sure you get a 1.1.x release. Once you have JSTL, copy jstl.jar and standard.jar to your web app's WEB-INF/lib directory. + +

    + +

    Finally deploy your web app into $CATALINA_HOME/webapps either +as a warfile called DBTest.war or into a sub-directory called +DBTest

    +

    Once deployed, point a browser at +http://localhost:8080/DBTest/test.jsp to view the fruits of +your hard work.

    + +
    + +
    Oracle 8i, 9i & 10g
    +

    0. Introduction

    + +

    Oracle requires minimal changes from the MySQL configuration except for the +usual gotchas :-)

    +

    Drivers for older Oracle versions may be distributed as *.zip files rather +than *.jar files. Tomcat will only use *.jar files installed in +$CATALINA_HOME/lib. Therefore classes111.zip +or classes12.zip will need to be renamed with a .jar +extension. Since jarfiles are zipfiles, there is no need to unzip and jar these +files - a simple rename will suffice.

    + +

    For Oracle 9i onwards you should use oracle.jdbc.OracleDriver +rather than oracle.jdbc.driver.OracleDriver as Oracle have stated +that oracle.jdbc.driver.OracleDriver is deprecated and support +for this driver class will be discontinued in the next major release. +

    + +

    1. Context configuration

    +

    In a similar manner to the mysql config above, you will need to define your +Datasource in your Context. Here we define a +Datasource called myoracle using the thin driver to connect as user scott, +password tiger to the sid called mysid. (Note: with the thin driver this sid is +not the same as the tnsname). The schema used will be the default schema for the +user scott.

    + +

    Use of the OCI driver should simply involve a changing thin to oci in the URL string. +

    +<Resource name="jdbc/myoracle" auth="Container"
    +              type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver"
    +              url="jdbc:oracle:thin:@127.0.0.1:1521:mysid"
    +              username="scott" password="tiger" maxActive="20" maxIdle="10"
    +              maxWait="-1"/> 
    +
    +

    + +

    2. web.xml configuration

    +

    You should ensure that you respect the element ordering defined by the DTD when you +create you applications web.xml file.

    +
    +<resource-ref>
    + <description>Oracle Datasource example</description>
    + <res-ref-name>jdbc/myoracle</res-ref-name>
    + <res-type>javax.sql.DataSource</res-type>
    + <res-auth>Container</res-auth>
    +</resource-ref>
    +
    +

    3. Code example

    +

    You can use the same example application as above (asuming you create the required DB +instance, tables etc.) replacing the Datasource code with something like

    +
    +Context initContext = new InitialContext();
    +Context envContext  = (Context)initContext.lookup("java:/comp/env");
    +DataSource ds = (DataSource)envContext.lookup("jdbc/myoracle");
    +Connection conn = ds.getConnection();
    +//etc.
    +
    +
    + + +
    PostgreSQL
    +

    0. Introduction

    +

    PostgreSQL is configured in a similar manner to Oracle.

    + +

    1. Required files

    +

    +Copy the Postgres JDBC jar to $CATALINA_HOME/lib. As with Oracle, the +jars need to be in this directory in order for DBCP's Classloader to find +them. This has to be done regardless of which configuration step you take next. +

    + +

    2. Resource configuration

    + +

    +You have two choices here: define a datasource that is shared across all Tomcat +applications, or define a datasource specifically for one application. +

    + +

    2a. Shared resource configuration

    +

    +Use this option if you wish to define a datasource that is shared across +multiple Tomcat applications, or if you just prefer defining your datasource +in this file. +

    +

    This author has not had success here, although others have reported so. +Clarification would be appreciated here.

    + +
    +<Resource name="jdbc/postgres" auth="Container"
    +          type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"
    +          url="jdbc:postgresql://127.0.0.1:5432/mydb"
    +          username="myuser" password="mypasswd" maxActive="20" maxIdle="10" maxWait="-1"/>
    +
    +

    2b. Application-specific resource configuration

    + +

    +Use this option if you wish to define a datasource specific to your application, +not visible to other Tomcat applications. This method is less invasive to your +Tomcat installation. +

    + +

    +Create a resource definition for your Context. +The Context element should look something like the following. +

    + +
    +<Context path="/someApp" docBase="someApp"
    +   crossContext="true" reloadable="true" debug="1">
    +
    +<Resource name="jdbc/postgres" auth="Container"
    +          type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"
    +          url="jdbc:postgresql://127.0.0.1:5432/mydb"
    +          username="myuser" password="mypasswd" maxActive="20" maxIdle="10"
    +maxWait="-1"/>
    +</Context>
    +
    + +

    3. web.xml configuration

    +
    +<resource-ref>
    + <description>postgreSQL Datasource example</description>
    + <res-ref-name>jdbc/postgres</res-ref-name>
    + <res-type>javax.sql.DataSource</res-type>
    + <res-auth>Container</res-auth>
    +</resource-ref>
    +
    + +

    4. Accessing the datasource

    +

    +When accessing the datasource programmatically, remember to prepend +java:/comp/env to your JNDI lookup, as in the following snippet of +code. Note also that "jdbc/postgres" can be replaced with any value you prefer, provided +you change it in the above resource definition file as well. +

    + +
    +InitialContext cxt = new InitialContext();
    +if ( cxt == null ) {
    +   throw new Exception("Uh oh -- no context!");
    +}
    +
    +DataSource ds = (DataSource) cxt.lookup( "java:/comp/env/jdbc/postgres" );
    +
    +if ( ds == null ) {
    +   throw new Exception("Data source not found!");
    +}
    +
    + +
    +
    Non-DBCP Solutions
    +

    +These solutions either utilise a single connection to the database (not recommended for anything other +than testing!) or some other pooling technology. +

    +
    Oracle 8i with OCI client
    +
    Introduction
    +

    Whilst not strictly addressing the creation of a JNDI DataSource using the OCI client, these notes can be combined with the +Oracle and DBCP solution above.

    +

    +In order to use OCI driver, you should have an Oracle client installed. You should have installed +Oracle8i(8.1.7) client from cd, and download the suitable JDBC/OCI +driver(Oracle8i 8.1.7.1 JDBC/OCI Driver) from otn.oracle.com. +

    +

    +After renaming classes12.zip file to classes12.jar +for Tomcat, copy it into $CATALINA_HOME/lib. +You may also have to remove the javax.sql.* classes +from this file depending upon the version of Tomcat and JDK you are using. +

    +
    + +
    Putting it all together
    +

    +Ensure that you have the ocijdbc8.dll or .so in your $PATH or LD_LIBRARY_PATH + (possibly in $ORAHOME\bin) and also confirm that the native library can be loaded by a simple test program +using System.loadLibrary("ocijdbc8"); +

    +

    +You should next create a simple test servlet or jsp that has these +critical lines: +

    +
    +DriverManager.registerDriver(new
    +oracle.jdbc.driver.OracleDriver());
    +conn =
    +DriverManager.getConnection("jdbc:oracle:oci8:@database","username","password");
    +
    +

    +where database is of the form host:port:SID Now if you try to access the URL of your +test servlet/jsp and what you get is a +ServletException with a root cause of java.lang.UnsatisfiedLinkError:get_env_handle. +

    +

    +First, the UnsatisfiedLinkError indicates that you have +

      +
    • a mismatch between your JDBC classes file and +your Oracle client version. The giveaway here is the message stating that a needed library file cannot be +found. For example, you may be using a classes12.zip file from Oracle Version 8.1.6 with a Version 8.1.5 +Oracle client. The classeXXXs.zip file and Oracle client software versions must match. +
    • +
    • A $PATH, LD_LIBRARY_PATH problem.
    • +
    • It has been reported that ignoring the driver you have downloded from otn and using +the classes12.zip file from the directory $ORAHOME\jdbc\lib will also work. +
    • +
    +

    +

    +Next you may experience the error ORA-06401 NETCMN: invalid driver designator +

    +

    +The Oracle documentation says : "Cause: The login (connect) string contains an invalid +driver designator. Action: Correct the string and re-submit." + +Change the database connect string (of the form host:port:SID) with this one: +(description=(address=(host=myhost)(protocol=tcp)(port=1521))(connect_data=(sid=orcl))) +

    +

    +Ed. Hmm, I don't think this is really needed if you sort out your TNSNames - but I'm not an Oracle DBA :-) +

    +
    +
    Common Problems
    +

    Here are some common problems encountered with a web application which +uses a database and tips for how to solve them.

    + +
    Intermittent dB Connection Failures
    +

    +Tomcat runs within a JVM. The JVM periodically performs garbage collection +(GC) to remove java objects which are no longer being used. When the JVM +performs GC execution of code within Tomcat freezes. If the maximum time +configured for establishment of a dB connection is less than the amount +of time garbage collection took you can get a db conneciton failure. +

    + +

    To collect data on how long garbage collection is taking add the +-verbose:gc argument to your CATALINA_OPTS +environment variable when starting Tomcat. When verbose gc is enabled +your $CATALINA_BASE/logs/catalina.out log file will include +data for every garbage collection including how long it took.

    + +

    When your JVM is tuned correctly 99% of the time a GC will take less +than one second. The remainder will only take a few seconds. Rarely, +if ever should a GC take more than 10 seconds.

    + +

    Make sure that the db connection timeout is set to 10-15 seconds. +For the DBCP you set this using the parameter maxWait.

    + +
    + +
    Random Connection Closed Exceptions
    +

    +These can occur when one request gets a db connection from the connection +pool and closes it twice. When using a connection pool, closing the +connection just returns it to the pool for reuse by another request, +it doesn't close the connection. And Tomcat uses multiple threads to +handle concurrent requests. Here is an example of the sequence +of events which could cause this error in Tomcat: +

    +  Request 1 running in Thread 1 gets a db connection.
    +
    +  Request 1 closes the db connection.
    +
    +  The JVM switches the running thread to Thread 2
    +
    +  Request 2 running in Thread 2 gets a db connection
    +  (the same db connection just closed by Request 1).
    +
    +  The JVM switches the running thread back to Thread 1
    +
    +  Request 1 closes the db connection a second time in a finally block.
    +
    +  The JVM switches the running thread back to Thread 2
    +
    +  Request 2 Thread 2 tries to use the db connection but fails
    +  because Request 1 closed it.
    +
    +Here is an example of properly written code to use a db connection +obtained from a connection pool: +
    +  Connection conn = null;
    +  Statement stmt = null;  // Or PreparedStatement if needed
    +  ResultSet rs = null;
    +  try {
    +    conn = ... get connection from connection pool ...
    +    stmt = conn.createStatement("select ...");
    +    rs = stmt.executeQuery();
    +    ... iterate through the result set ...
    +    rs.close();
    +    rs = null;
    +    stmt.close();
    +    stmt = null;
    +    conn.close(); // Return to connection pool
    +    conn = null;  // Make sure we don't close it twice
    +  } catch (SQLException e) {
    +    ... deal with errors ...
    +  } finally {
    +    // Always make sure result sets and statements are closed,
    +    // and the connection is returned to the pool
    +    if (rs != null) {
    +      try { rs.close(); } catch (SQLException e) { ; }
    +      rs = null;
    +    }
    +    if (stmt != null) {
    +      try { stmt.close(); } catch (SQLException e) { ; }
    +      stmt = null;
    +    }
    +    if (conn != null) {
    +      try { conn.close(); } catch (SQLException e) { ; }
    +      conn = null;
    +    }
    +  }
    +
    +

    + +
    + +
    Context versus GlobalNamingResources
    +

    + Please note that although the above instructions place the JNDI declarations in a Context + element, it is possible and sometimes desirable to place these declarations in the + GlobalNamingResources section of the server + configuration file. A resource placed in the GlobalNamingResources section will be shared + among the Contexts of the server. +

    +
    + +
    JNDI Resource Naming and Realm Interaction
    +

    + In order to get Realms to work, the realm must refer to the datasource as + defined in the <GlobalNamingResources> or <Context> section, not a datasource as renamed + using <ResourceLink>. +

    +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/jndi-resources-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/jndi-resources-howto.html new file mode 100644 index 0000000..73ab1cc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/jndi-resources-howto.html @@ -0,0 +1,736 @@ +Apache Tomcat 6.0 - JNDI Resources HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    JNDI Resources HOW-TO

    Introduction
    + +

    Tomcat 6 provides a JNDI InitialContext implementation +instance for each web application running under it, in a manner that is +compatible with those provided by a +Java2 Enterprise Edition application +server. + +The J2EE standard provides a standard set of elements in +the /WEB-INF/web.xml file to reference resources; resources +referenced in these elements must be defined in an application-server-specific configuration. +

    + +

    For Tomcat 6, these entries in per-web-application +InitialContext are configured in the +<Context> elements that can be specified +in either $CATALINA_HOME/conf/server.xml or, preferably, +the per-web-application context XML file (either META-INF/context.xml). +

    + +

    Tomcat 6 maintains a separate namespace of global resources for the +entire server. These are configured in the + +<GlobalNameingResources> element of +$CATALINA_HOME/conf/server.xml. You may expose these resources to +web applications by using +<ResourceLink> elements. +

    + +

    The resources defined in these elements +may be referenced by the following elements in the web application deployment +descriptor (/WEB-INF/web.xml) of your web application:

    +
      +
    • <env-entry> - Environment entry, a + single-value parameter that can be used to configure how the application + will operate.
    • +
    • <resource-ref> - Resource reference, + which is typically to an object factory for resources such as a JDBC + DataSource, a JavaMail Session, or custom + object factories configured into Tomcat 6.
    • +
    • <resource-env-ref> - Resource + environment reference, a new variation of resource-ref + added in Servlet 2.4 that is simpler to configure for resources + that do not require authentication information.
    • +
    + +

    The InitialContext is configured as a web application is +initially deployed, and is made available to web application components (for +read-only access). All configured entries and resources are placed in +the java:comp/env portion of the JNDI namespace, so a typical +access to a resource - in this case, to a JDBC DataSource - +would look something like this:

    + +
    +// Obtain our environment naming context
    +Context initCtx = new InitialContext();
    +Context envCtx = (Context) initCtx.lookup("java:comp/env");
    +
    +// Look up our data source
    +DataSource ds = (DataSource)
    +  envCtx.lookup("jdbc/EmployeeDB");
    +
    +// Allocate and use a connection from the pool
    +Connection conn = ds.getConnection();
    +... use this connection to access the database ...
    +conn.close();
    +
    + +

    See the following Specifications for more information about programming APIs +for JNDI, and for the features supported by Java2 Enterprise Edition (J2EE) +servers, which Tomcat emulates for the services that it provides:

    + + +
    Configuring JNDI Resources
    + +

    Each available JNDI Resource is configured based on inclusion of the +following elements in the <Context> or +<DefaultContext> elements:

    + +
      +
    • <Environment> - + Configure names and values for scalar environment entries that will be + exposed to the web application through the JNDI + InitialContext (equivalent to the inclusion of an + <env-entry> element in the web application + deployment descriptor).
    • +
    • <Resource> - + Configure the name and data type of a resource made available to the + application (equivalent to the inclusion of a + <resource-ref> element in the web application + deployment descriptor).
    • +
    • <ResourceLink> - + Add a link to a resource defined in the global JNDI context. Use resource + links to give a web application access to a resource defined in + the<GlobalNamingResources> + child element of the <Server> + element.
    • +
    • <Transaction> - + Add a resource factory for instantiating the UserTransaction object + instance that is available at java:comp/UserTransaction.
    • + +
    + +

    Any number of these elements may be nested inside a +<Context> element (to be associated +only with that particular web application).

    + +

    In addition, the names and values of all <env-entry> +elements included in the web application deployment descriptor +(/WEB-INF/web.xml) are configured into the initial context as +well, overriding corresponding values from conf/server.xml +only if allowed by the corresponding +<Environment> element (by setting the +override attribute to "true").

    + +

    Global resources can be defined in the server-wide JNDI context, by adding +the resource elements described above to the +<GlobalNamingResources> +child element of the <Server> +element and using a +<ResourceLink> to +include it in the per-web-application context.

    + +
    Tomcat Standard Resource Factories
    + +

    Tomcat 6 includes a series of standard resource factories that can + provide services to your web applications, but give you configuration + flexibility (in $CATALINA_HOME/conf/server.xml) without + modifying the web application or the deployment descriptor. Each + subsection below details the configuration and usage of the standard + resource factories.

    + +

    See Adding Custom + Resource Factories for information about how to create, install, + configure, and use your own custom resource factory classes with + Tomcat 6.

    + +

    NOTE - Of the standard resource factories, only the + "JDBC Data Source" and "User Transaction" factories are mandated to + be available on other platforms, and then they are required only if + the platform implements the Java2 Enterprise Edition (J2EE) specs. + All other standard resource factories, plus custom resource factories + that you write yourself, are specific to Tomcat and cannot be assumed + to be available on other containers.

    + +
    Generic JavaBean Resources
    + +

    0. Introduction

    + +

    This resource factory can be used to create objects of any + Java class that conforms to standard JavaBeans naming conventions (i.e. + it has a zero-arguments constructor, and has property setters that + conform to the setFoo() naming pattern. The resource factory will + create a new instance of the appropriate bean class every time a + lookup() for this entry is made.

    + +

    The steps required to use this facility are described below.

    + +

    1. Create Your JavaBean Class

    + +

    Create the JavaBean class which will be instantiated each time + that the resource factory is looked up. For this example, assume + you create a class com.mycompany.MyBean, which looks + like this:

    + +
    +package com.mycompany;
    +
    +public class MyBean {
    +
    +  private String foo = "Default Foo";
    +
    +  public String getFoo() {
    +    return (this.foo);
    +  }
    +
    +  public void setFoo(String foo) {
    +    this.foo = foo;
    +  }
    +
    +  private int bar = 0;
    +
    +  public int getBar() {
    +    return (this.bar);
    +  }
    +
    +  public void setBar(int bar) {
    +    this.bar = bar;
    +  }
    +
    +
    +}
    +
    + +

    2. Declare Your Resource Requirements

    + +

    Next, modify your web application deployment descriptor + (/WEB-INF/web.xml) to declare the JNDI name under which + you will request new instances of this bean. The simplest approach is + to use a <resource-env-ref> element, like this:

    + +
    +<resource-env-ref>
    +  <description>
    +    Object factory for MyBean instances.
    +  </description>
    +  <resource-env-ref-name>
    +    bean/MyBeanFactory
    +  </resource-env-ref-name>
    +  <resource-env-ref-type>
    +    com.mycompany.MyBean
    +  </resource-env-ref-type>
    +</resource-env-ref>
    +
    + +

    WARNING - Be sure you respect the element ordering + that is required by the DTD for web application deployment descriptors! + See the + Servlet + Specification for details.

    + +

    3. Code Your Application's Use Of This Resource

    + +

    A typical use of this resource environment reference might look + like this:

    + +
    +Context initCtx = new InitialContext();
    +Context envCtx = (Context) initCtx.lookup("java:comp/env");
    +MyBean bean = (MyBean) envCtx.lookup("bean/MyBeanFactory");
    +
    +writer.println("foo = " + bean.getFoo() + ", bar = " +
    +               bean.getBar());
    +
    + +

    4. Configure Tomcat's Resource Factory

    + +

    To configure Tomcat's resource factory, add an elements like this to the + $CATALINA_HOME/conf/server.xml file, nested inside the + Context element for this web application.

    +
    +<Context ...>
    +  ...
    +  <Resource name="bean/MyBeanFactory" auth="Container"
    +            type="com.mycompany.MyBean"
    +            factory="org.apache.naming.factory.BeanFactory"
    +            bar="23"/>
    +  ...
    +</Context>
    +
    + +

    Note that the resource name (here, bean/MyBeanFactory + must match the value specified in the web application deployment + descriptor. We are also initializing the value of the bar + property, which will cause setBar(23) to be called before + the new bean is returned. Because we are not initializing the + foo property (although we could have), the bean will + contain whatever default value is set up by its constructor.

    + +
    + + +
    JavaMail Sessions
    + +

    0. Introduction

    + +

    In many web applications, sending electronic mail messages is a + required part of the system's functionality. The + Java Mail API + makes this process relatively straightforward, but requires many + configuration details that the client application must be aware of + (including the name of the SMTP host to be used for message sending).

    + +

    Tomcat 6 includes a standard resource factory that will create + javax.mail.Session session instances for you, already + connected to the SMTP server that is configured in server.xml. + In this way, the application is totally insulated from changes in the + email server configuration environment - it simply asks for, and receives, + a preconfigured session whenever needed.

    + +

    The steps required for this are outlined below.

    + +

    1. Declare Your Resource Requirements

    + +

    The first thing you should do is modify the web application deployment + descriptor (/WEB-INF/web.xml) to declare the JNDI name under + which you will look up preconfigured sessions. By convention, all such + names should resolve to the mail subcontext (relative to the + standard java:comp/env naming context that is the root of + all provided resource factories. A typical web.xml entry + might look like this:

    +
    +<resource-ref>
    +  <description>
    +    Resource reference to a factory for javax.mail.Session
    +    instances that may be used for sending electronic mail
    +    messages, preconfigured to connect to the appropriate
    +    SMTP server.
    +  </description>
    +  <res-ref-name>
    +    mail/Session
    +  </res-ref-name>
    +  <res-type>
    +    javax.mail.Session
    +  </res-type>
    +  <res-auth>
    +    Container
    +  </res-auth>
    +</resource-ref>
    +
    + +

    WARNING - Be sure you respect the element ordering + that is required by the DTD for web application deployment descriptors! + See the + Servlet + Specification for details.

    + +

    2. Code Your Application's Use Of This Resource

    + +

    A typical use of this resource reference might look like this:

    +
    +Context initCtx = new InitialContext();
    +Context envCtx = (Context) initCtx.lookup("java:comp/env");
    +Session session = (Session) envCtx.lookup("mail/Session");
    +
    +Message message = new MimeMessage(session);
    +message.setFrom(new InternetAddress(request.getParameter("from"));
    +InternetAddress to[] = new InternetAddress[1];
    +to[0] = new InternetAddress(request.getParameter("to"));
    +message.setRecipients(Message.RecipientType.TO, to);
    +message.setSubject(request.getParameter("subject"));
    +message.setContent(request.getParameter("content"), "text/plain");
    +Transport.send(message);
    +
    + +

    Note that the application uses the same resource reference name + that was declared in the web application deployment descriptor. This + is matched up against the resource factory that is configured in + $CATALINA_HOME/conf/server.xml, as described below.

    + +

    3. Configure Tomcat's Resource Factory

    + +

    To configure Tomcat's resource factory, add an elements like this to the + $CATALINA_HOME/conf/server.xml file, nested inside the + Context element for this web application.

    +
    +<Context ...>
    +  ...
    +  <Resource name="mail/Session" auth="Container"
    +            type="javax.mail.Session"
    +            mail.smtp.host="localhost"/>
    +  ...
    +</Context>
    +
    + +

    Note that the resource name (here, mail/Session) must + match the value specified in the web application deployment descriptor. + Customize the value of the mail.smtp.host parameter to + point at the server that provides SMTP service for your network.

    + +

    4. Install the JavaMail libraries

    + +

    + Download the JavaMail API. The JavaMail API requires the Java Activation + Framework (JAF) API as well. The Java Activation Framework can be downloaded + from Sun's site. +

    + +

    This download includes 2 vital libraries for the configuration; + activation.jar and mail.jar. Unpackage both distributions and place + them into $CATALINA_HOME/lib so that they are available to + Tomcat during the initialization of the mail Session Resource. + Note: placing these jars in both common/lib and a + web application's lib folder will cause an error, so ensure you have + them in the $CATALINA_HOME/lib location only. +

    + +

    Example Application

    + +

    The /examples application included with Tomcat contains + an example of utilizing this resource factory. It is accessed via the + "JSP Examples" link. The source code for the servlet that actually + sends the mail message is in + /WEB-INF/classes/SendMailServlet.java.

    + +

    WARNING - The default configuration assumes that + there is an SMTP server listing on port 25 on localhost. + If this is not the case, edit the + $CATALINA_HOME/conf/server.xml file, and modify the + parameter value for the mail.smtp.host parameter to be + the host name of an SMTP server on your network.

    + +
    + +
    JDBC Data Sources
    + +

    0. Introduction

    + +

    Many web applications need to access a database via a JDBC driver, + to support the functionality required by that application. The J2EE + Platform Specification requires J2EE Application Servers to make + available a DataSource implementation (that is, a connection + pool for JDBC connections) for this purpose. Tomcat 6 offers exactly + the same support, so that database-based applications you develop on + Tomcat using this service will run unchanged on any J2EE server.

    + +

    For information about JDBC, you should consult the following:

    + + +

    NOTE - The default data source support in Tomcat + is based on the DBCP connection pool from the + Jakarta Commons + subproject. However, it is possible to use any other connection pool + that implements javax.sql.DataSource, by writing your + own custom resource factory, as described + below.

    + +

    1. Install Your JDBC Driver

    + +

    Use of the JDBC Data Sources JNDI Resource Factory requires + that you make an appropriate JDBC driver available to both Tomcat internal + classes and to your web application. This is most easily accomplished by + installing the driver's JAR file(s) into the + $CATALINA_HOME/lib directory, which makes the driver + available both to the resource factory and to your application.

    + +

    2. Declare Your Resource Requirements

    + +

    Next, modify the web application deployment descriptor + (/WEB-INF/web.xml) to declare the JNDI name under + which you will look up preconfigured data source. By convention, all such + names should resolve to the jdbc subcontext (relative to the + standard java:comp/env naming context that is the root of + all provided resource factories. A typical web.xml entry + might look like this:

    +
    +<resource-ref>
    +  <description>
    +    Resource reference to a factory for java.sql.Connection
    +    instances that may be used for talking to a particular
    +    database that is configured in the server.xml file.
    +  </description>
    +  <res-ref-name>
    +    jdbc/EmployeeDB
    +  </res-ref-name>
    +  <res-type>
    +    javax.sql.DataSource
    +  </res-type>
    +  <res-auth>
    +    Container
    +  </res-auth>
    +</resource-ref>
    +
    + +

    WARNING - Be sure you respect the element ordering + that is required by the DTD for web application deployment descriptors! + See the + Servlet + Specification for details.

    + +

    3. Code Your Application's Use Of This Resource

    + +

    A typical use of this resource reference might look like this:

    +
    +Context initCtx = new InitialContext();
    +Context envCtx = (Context) initCtx.lookup("java:comp/env");
    +DataSource ds = (DataSource)
    +  envCtx.lookup("jdbc/EmployeeDB");
    +
    +Connection conn = ds.getConnection();
    +... use this connection to access the database ...
    +conn.close();
    +
    + +

    Note that the application uses the same resource reference name + that was declared in the web application deployment descriptor. This + is matched up against the resource factory that is configured in + $CATALINA_HOME/conf/server.xml, as described below.

    + +

    4. Configure Tomcat's Resource Factory

    + +

    To configure Tomcat's resource factory, add an element like this to the + /META-INF/context.xml file in the web application.

    +
    +<Context ...>
    +  ...
    +  <Resource name="jdbc/EmployeeDB" auth="Container"
    +            type="javax.sql.DataSource" username="dbusername" password="dbpassword"
    +            driverClassName="org.hsql.jdbcDriver" url="jdbc:HypersonicSQL:database"
    +            maxActive="8" maxIdle="4"/>
    +  ...
    +</Context>
    +
    + +

    Note that the resource name (here, jdbc/EmployeeDB) must + match the value specified in the web application deployment descriptor.

    + +

    This example assumes that you are using the HypersonicSQL database + JDBC driver. Customize the driverClassName and + driverName parameters to match your actual database's + JDBC driver and connection URL.

    + +

    The configuration properties for Tomcat's standard data source + resource factory + (org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory) are + as follows:

    +
      +
    • driverClassName - Fully qualified Java class name + of the JDBC driver to be used.
    • +
    • maxActive - The maximum number of active instances + that can be allocated from this pool at the same time.
    • +
    • maxIdle - The maximum number of connections that + can sit idle in this pool at the same time.
    • +
    • maxWait - The maximum number of milliseconds that the + pool will wait (when there are no available connections) for a + connection to be returned before throwing an exception.
    • +
    • password - Database password to be passed to our + JDBC driver.
    • +
    • url - Connection URL to be passed to our JDBC driver. + (For backwards compatibility, the property driverName + is also recognized.)
    • +
    • user - Database username to be passed to our + JDBC driver.
    • +
    • validationQuery - SQL query that can be used by the + pool to validate connections before they are returned to the + application. If specified, this query MUST be an SQL SELECT + statement that returns at least one row.
    • +
    +

    For more details, please refer to the commons-dbcp documentation.

    + +
    + +
    Adding Custom Resource Factories
    + +

    If none of the standard resource factories meet your needs, you can + write your own factory and integrate it into Tomcat 6, and then configure + the use of this factory in the conf/server.xml configuration + file. In the example below, we will create a factory that only knows how + to create com.mycompany.MyBean beans, from the + Generic JavaBean Resources + example, above.

    + +

    1. Write A Resource Factory Class

    + +

    You must write a class that implements the JNDI service provider + javax.naming.spi.ObjectFactory inteface. Every time your + web application calls lookup() on a context entry that is + bound to this factory, the getObjectInstance() method is + called, with the following arguments:

    +
      +
    • Object obj - The (possibly null) object containing + location or reference information that can be used in creating an + object. For Tomcat, this will always be an object of type + javax.naming.Reference, which contains the class name + of this factory class, as well as the configuration properties + (from conf/server.xml) to use in creating objects + to be returned.
    • +
    • Name name - The name to which this factory is bound + relative to nameCtx, or null if no name + is specified.
    • +
    • Context nameCtx - The context relative to which the + name parameter is specified, or null if + name is relative to the default initial context.
    • +
    • Hashtable environment - The (possibly null) + environment that is used in creating this object. This is generally + ignored in Tomcat object factories.
    • +
    + +

    To create a resource factory that knows how to produce MyBean + instances, you might create a class like this:

    + +
    +package com.mycompany;
    +
    +import java.util.Enumeration;
    +import java.util.Hashtable;
    +import javax.naming.Context;
    +import javax.naming.Name;
    +import javax.naming.NamingException;
    +import javax.naming.RefAddr;
    +import javax.naming.Reference;
    +import javax.naming.spi.ObjectFactory;
    +
    +public class MyBeanFactory implements ObjectFactory {
    +
    +  public Object getObjectInstance(Object obj,
    +      Name name, Context nameCtx, Hashtable environment)
    +      throws NamingException {
    +
    +      // Acquire an instance of our specified bean class
    +      MyBean bean = new MyBean();
    +
    +      // Customize the bean properties from our attributes
    +      Reference ref = (Reference) obj;
    +      Enumeration addrs = ref.getAll();
    +      while (addrs.hasMoreElements()) {
    +          RefAddr addr = (RefAddr) addrs.nextElement();
    +          String name = addr.getType();
    +          String value = (String) addr.getContent();
    +          if (name.equals("foo")) {
    +              bean.setFoo(value);
    +          } else if (name.equals("bar")) {
    +              try {
    +                  bean.setBar(Integer.parseInt(value));
    +              } catch (NumberFormatException e) {
    +                  throw new NamingException("Invalid 'bar' value " + value);
    +              }
    +          }
    +      }
    +
    +      // Return the customized instance
    +      return (bean);
    +
    +  }
    +
    +}
    +
    + +

    In this example, we are unconditionally creating a new instance of + the com.mycompany.MyBean class, and populating its properties + based on the parameters included in the <ResourceParams> + element that configures this factory (see below). You should note that any + parameter named factory should be skipped - that parameter is + used to specify the name of the factory class itself (in this case, + com.mycompany.MyBeanFactory) rather than a property of the + bean being configured.

    + +

    For more information about ObjectFactory, see the + JNDI 1.2 Service + Provider Interface (SPI) Specification.

    + +

    You will need to compile this class against a class path that includes + all of the JAR files in the $CATALINA_HOME/lib directory. When you are through, + place the factory class (and the corresponding bean class) unpacked under + $CATALINA_HOME/lib, or in a JAR file inside + $CATALINA_HOME/lib. In this way, the required class + files are visible to both Catalina internal resources and your web + application.

    + +

    2. Declare Your Resource Requirements

    + +

    Next, modify your web application deployment descriptor + (/WEB-INF/web.xml) to declare the JNDI name under which + you will request new instances of this bean. The simplest approach is + to use a <resource-env-ref> element, like this:

    + +
    +<resource-env-ref>
    +  <description>
    +    Object factory for MyBean instances.
    +  </description>
    +  <resource-env-ref-name>
    +    bean/MyBeanFactory
    +  </resource-env-ref-name>
    +  <resource-env-ref-type>
    +    com.mycompany.MyBean
    +  </resource-env-ref-type>
    +<resource-env-ref>
    +
    + +

    WARNING - Be sure you respect the element ordering + that is required by the DTD for web application deployment descriptors! + See the + Servlet + Specification for details.

    + +

    3. Code Your Application's Use Of This Resource

    + +

    A typical use of this resource environment reference might look + like this:

    + +
    +Context initCtx = new InitialContext();
    +Context envCtx = (Context) initCtx.lookup("java:comp/env");
    +MyBean bean = (MyBean) envCtx.lookup("bean/MyBeanFactory");
    +
    +writer.println("foo = " + bean.getFoo() + ", bar = " +
    +               bean.getBar());
    +
    + +

    4. Configure Tomcat's Resource Factory

    + +

    To configure Tomcat's resource factory, add an elements like this to the + $CATALINA_HOME/conf/server.xml file, nested inside the + Context element for this web application.

    +
    +<Context ...>
    +  ...
    +  <Resource name="bean/MyBeanFactory" auth="Container"
    +            type="com.mycompany.MyBean"
    +            factory="com.mycompany.MyBeanFactory"
    +            bar="23"/>
    +  ...
    +</Context>
    +
    + +

    Note that the resource name (here, bean/MyBeanFactory + must match the value specified in the web application deployment + descriptor. We are also initializing the value of the bar + property, which will cause setBar(23) to be called before + the new bean is returned. Because we are not initializing the + foo property (although we could have), the bean will + contain whatever default value is set up by its constructor.

    + +

    You will also note that, from the application developer's perspective, + the declaration of the resource environment reference, and the programming + used to request new instances, is identical to the approach used for the + Generic JavaBean Resources example. This illustrates one of the + advantages of using JNDI resources to encapsulate functionality - you can + change the underlying implementation without necessarily having to + modify applications using the resources, as long as you maintain + compatible APIs.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/logging.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/logging.html new file mode 100644 index 0000000..02f8456 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/logging.html @@ -0,0 +1,261 @@ +Apache Tomcat 6.0 - Logging in Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Logging in Tomcat

    Important note
    +

    + By default, only java.util.logging is available for the core Tomcat, as Tomcat uses + a package renamed logging implementation which is hardcoded for that logger. Usage of + alternate loggers is available after building the extra components (see + the extras components documentation), which includes + a full commons-logging implementation. +

    +
    Introduction
    +

    + Tomcat 6.0 uses + Commons Logging + throughout its internal code allowing the + developer to choose a logging configuration that suits their needs, e.g + java.util.logging or + Log4J. + Commons Logging provides Tomcat the ability to log + hierarchially across various log levels without needing to rely on a particular + logging implementation. +

    +

    + An important consequence for Tomcat 6.0 is that the <Logger> element found in + previous versions to create a localhost_log is no longer a valid nested element + of <Context>. Instead, the default Tomcat configuration will use java.util.logging. + If the developer wishes to collect detailed internal Tomcat logging (i.e what is happening + within the Tomcat engine), then they should configure a logging system such as java.util.logging + or log4j as detailed next. +

    + +
    log4j
    +

    + Tomcat 6.0 has done away with localhost_log which you may be familiar with + as the runtime exception/stack trace log. These types of error are usually thrown + by uncaught exceptions, but are still valuable to the developer. They can now be + found in the stdout log. +

    + +

    + If you need to setup cross-context detailed logging from within Tomcat's code, + then you can use a simple log4j configuration. Note that this logging van be very + verbose depending on the log level you chose to use. Note also that a log4j logging + configuration is not going to produce stack trace type logging: those stack traces + are output to stdout as discussed above. +

    + +

    + Follow the following steps to setup a file named tomcat.log that has internal + Tomcat logging output to it: +

    + +

    +

      +
    1. Create a file called log4j.properties with the following content + and save it into $CATALINA_HOME/lib. +
      +            log4j.rootLogger=debug, R 
      +            log4j.appender.R=org.apache.log4j.RollingFileAppender 
      +            log4j.appender.R.File=${catalina.home}/logs/tomcat.log 
      +            log4j.appender.R.MaxFileSize=10MB 
      +            log4j.appender.R.MaxBackupIndex=10 
      +            log4j.appender.R.layout=org.apache.log4j.PatternLayout 
      +            log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n 
      +            log4j.logger.org.apache.catalina=DEBUG, R
      +          
      +
    2. + +
    3. Download Log4J + (v1.2 or later) and place the log4j jar in $CATALINA_HOME/lib.
    4. + +
    5. Build the commons-logging additional component using the extras.xml + Ant build script which is part of teh Tomcat source bundle.
    6. + +
    7. Replace $CATALINA_HOME/bin/tomcat-juli.jar with + output/extras/tomcat-juli.jar.
    8. + +
    9. Place output/extras/tomcat-juli-adapters.jar in + $CATALINA_HOME/lib.
    10. + +
    11. Start Tomcat
    12. +
    +

    + +

    + This log4j configuration sets up a file called tomcat.log in your + Tomcat logs folder with a maximum file size of 10MB and + up to 10 backups. DEBUG level is specified which will result in the + most verbose output from Tomcat. +

    + +

    + You can (and should) be more picky about which packages to include + in the logging. Tomcat 6 uses defines loggers by Engine and Host names. + For example, for a default Catalina localhost log, add this to the + end of the log4j.properties above. Note that there are known issues with + using this naming convention (with square brackets) in log4j XML based + configuration files, so we recommend you use a properties file as described + until a future version of log4j allows this convention. + +

      +
    • log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=DEBUG, R
    • +
    • log4j.logger.org.apache.catalina.core=DEBUG, R
    • +
    • log4j.logger.org.apache.catalina.session=DEBUG, R
    • +
    + + Be warned a level of DEBUG will produce megabytes of logging and slow startup + of Tomcat. This level should be used sparingly when debugging of internal Tomcat + operations is required. +

    + +

    + Your web applications should certainly use their own log4j configuration. + This is valid with the above configuration. You would place a similar log4j.properties + file in your web application's WEB-INF/classes folder, and log4j1.2.8.jar into + WEB-INF/lib. Then specify your package level logging. This is a basic setup of log4j + which does *not* require Commons-Logging, + and you should consult the + log4j documentation + for more options. This page is intended only as a bootstrapping guide. +

    + +
    java.util.logging
    + +

    + The default implemenatation of java.util.logging provided in the JDK is too limited to be + useful. A limitation of JDK Logging appears to be the inability to have per-web application logging, + as the configuration is per-VM. As a result, Tomcat will, in the default configuration, + replace the default LogManager implementation with a container friendly implementation + called JULI, which addresses these shortcomings. It supports the same configuration mechanisms + as the standard JDK java.util.logging, using either a programmatic approach, or properties + files. The main difference is that per-classloader properties files can be set (which enables easy + redeployment friendly webapp configuration), and the properties files support slightly extended + constructs which allows more freedom for defining handlers and assigning them to loggers. +

    +

    + JULI is enabled by default in Tomcat 6.0, and supports per classloader configuration, in addition to + the regular global java.util.logging configuration. This means that logging can be configured at + the following layers: +

      +
    • In the JDK's logging.properties file. Check + your JAVA_HOME environment setting to see which JDK Tomcat is using. The file will be in + $JAVA_HOME/jre/lib. + Alternately, it can also use a global configuration file located elsewhere by using the + system property java.util.logging.config.file, or programmatic configuration using + java.util.logging.config.class.
    • +
    • In each classloader using a logging.properties file. This means that it is possible to have a + configuration for the Tomcat core, as well as separate configurations for each webapps which will + have the same lifecycle as the webapps.
    • +
    +

    +

    + The default logging.properties specifies a ConsoleHandler for routing logging to stdout and + also a FileHandler. A handler's log level threshold can be set using SEVERE, WARNING, INFO, + CONFIG, FINE, FINER, FINEST or ALL. The logging.properties shipped with JDK is set to INFO. You + can also target specific packages to collect logging from and specify a level. Here is how + you would set debugging from Tomcat. You would need to ensure the ConsoleHandler's level is also + set to collect this threshold, so FINEST or ALL should be set. Please refer to Sun's java.util.logging + documentation for the complete details. +

    +

    +

    org.apache.catalina.level=FINEST
    +

    +

    + The configuration used by JULI is extremely similar, but uses a few extensions to allow better + flexibility in assigning loggers. The main differences are: +

      +
    • A prefix may be added to handler names, so that multiple handlers of a single class may be + instantiated. A prefix is a String which starts with a digit, and ends with '.'. For example, + 22foobar. is a valid prefix.
    • +
    • As in Java 5.0, loggers can define a list of handlers using the loggerName.handlers + property.
    • +
    • By default, loggers will not delegate to their parent if they have associated handlers. This + may be changed per logger using the loggerName.useParentHandlers property, which accepts + a boolean value.
    • +
    • The root logger can define its set of handlers using a .handlers property.
    • +
    • System property replacement for property values which start with ${sytstemPropertyName}.
    • +
    +

    +

    + Example logging.properties file to be placed in common/classes: +

    +handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, \
    +           3manager.org.apache.juli.FileHandler, 4admin.org.apache.juli.FileHandler, \
    +           java.util.logging.ConsoleHandler
    +
    +.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
    +
    +############################################################
    +# Handler specific properties.
    +# Describes specific configuration info for Handlers.
    +############################################################
    +
    +1catalina.org.apache.juli.FileHandler.level = FINE
    +1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
    +1catalina.org.apache.juli.FileHandler.prefix = catalina.
    +
    +2localhost.org.apache.juli.FileHandler.level = FINE
    +2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
    +2localhost.org.apache.juli.FileHandler.prefix = localhost.
    +
    +3manager.org.apache.juli.FileHandler.level = FINE
    +3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
    +3manager.org.apache.juli.FileHandler.prefix = manager.
    +
    +4admin.org.apache.juli.FileHandler.level = FINE
    +4admin.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
    +4admin.org.apache.juli.FileHandler.prefix = admin.
    +
    +java.util.logging.ConsoleHandler.level = FINE
    +java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
    +
    +
    +############################################################
    +# Facility specific properties.
    +# Provides extra control for each logger.
    +############################################################
    +
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = \
    +   2localhost.org.apache.juli.FileHandler
    +
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = \
    +   3manager.org.apache.juli.FileHandler
    +
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/admin].level = INFO
    +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/admin].handlers = \
    +   4admin.org.apache.juli.FileHandler
    +
    +# For example, set the com.xyz.foo logger to only log SEVERE
    +# messages:
    +#org.apache.catalina.startup.ContextConfig.level = FINE
    +#org.apache.catalina.startup.HostConfig.level = FINE
    +#org.apache.catalina.session.ManagerBase.level = FINE
    +    
    +

    + +

    + Example logging.properties for the servlet-examples web application to be placed + in WEB-INF/classes inside the web application: +

    +handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
    +
    +############################################################
    +# Handler specific properties.
    +# Describes specific configuration info for Handlers.
    +############################################################
    +
    +org.apache.juli.FileHandler.level = FINE
    +org.apache.juli.FileHandler.directory = ${catalina.base}/logs
    +org.apache.juli.FileHandler.prefix = servlet-examples.
    +
    +java.util.logging.ConsoleHandler.level = FINE
    +java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
    +      
    +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/manager-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/manager-howto.html new file mode 100644 index 0000000..206824e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/manager-howto.html @@ -0,0 +1,1237 @@ +Apache Tomcat 6.0 - Manager App HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Manager App HOW-TO

    Table of Contents
    + +

    +Introduction
    + +Configuring Manager Application Access
    +Supported Manager Commands
    +

    +Deploy A New Application Remotely
    +Deploy A New Application from a Local Path
    + +List Currently Deployed Applications
    +Reload An Existing Application
    +List OS and JVM Properties
    + +List Available Global JNDI Resources
    +List Available Security Roles
    +Session Statistics
    +Start an Existing Application
    +Stop an Existing Application
    + +Undeploy an Existing Application
    +
    + +Executing Manager Commands With Ant
    + +Using the JMX Proxy Servlet
    +
    +What is JMX Proxy Servlet?
    +Query command
    +Set command
    +
    +

    + +
    Introduction
    + +

    In many production environments, it is very useful to have the capability +to deploy a new web application, or undeploy an existing one, without having +to shut down and restart the entire container. In addition, you can request +an existing application to reload itself, even if you have not declared it +to be reloadable in the Tomcat 6 server +configuration file.

    + +

    To support these capabilities, Tomcat 6 includes a web application +(installed by default on context path /manager) that supports +the following functions:

    +
      +
    • Deploy a new web application from the uploaded contents of a WAR file.
    • +
    • Deploy a new web application, on a specified context path, from the + server file system.
    • +
    • List the currently deployed web applications, as well as the + sessions that are currently active for those web apps.
    • +
    • Reload an existing web application, to reflect changes in the + contents of /WEB-INF/classes or /WEB-INF/lib. +
    • +
    • List the OS and JVM property values.
    • +
    • List the available global JNDI resources, for use in deployment + tools that are preparing <ResourceLink> elements + nested in a <Context> deployment description.
    • +
    • List the available security roles defined in the user database.
    • +
    • Start a stopped application (thus making it available again).
    • +
    • Stop an existing application (so that it becomes unavailable), but + do not undeploy it.
    • +
    • Undeploy a deployed web application and delete its document base + directory (unless it was deployed from file system).
    • +
    + +

    A default Tomcat installation includes the manager. To add an instance of the +Manager web application Context to a new host install the +manager.xml context configuration file in the +$CATALINA_HOME/conf/[enginename]/[hostname] folder. Here is an +example: +

    +<Context path="/manager" debug="0" privileged="true"
    +         docBase="/usr/local/kinetic/tomcat6/server/webapps/manager">
    +</Context>
    +
    +

    + +

    If you have Tomcat configured to support multiple virtual hosts +(websites) you would need to configure a Manager for each.

    + +

    There are three ways to use the Manager web application. +

      +
    • As an application with a user interface you use in your browser. +Here is an example URL where you can replace localhost with +your website host name: http://localhost/manager/html/ .
    • +
    • A minimal version using HTTP requests only which is suitable for use +by scripts setup by system administrators. Commands are given as part of the +request URI, and responses are in the form of simple text that can be easily +parsed and processed. See +Supported Manager Commands for more information.
    • +
    • A convenient set of task definitions for the Ant +(version 1.4 or later) build tool. See +Executing Manager Commands +With Ant for more information.
    • +
    +

    + +
    Configuring Manager Application Access
    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +

    It would be quite unsafe to ship Tomcat with default settings that allowed +anyone on the Internet to execute the Manager application on your server. +Therefore, the Manager application is shipped with the requirement that anyone +who attempts to use it must authenticate themselves, using a username and +password that have the role manager associated with them. +Further, there is no username in the default users file +($CATALINA_HOME/conf/tomcat-users.xml) that is assigned this +role. Therefore, access to the Manager application is completely disabled +by default.

    + +

    To enable access to the Manager web application, you must either create +a new username/password combination and associate the role name +manager with it, or add the manager role +to some existing username/password combination. Exactly where this is done +depends on which Realm implementation you are using:

    +
      +
    • MemoryRealm - If you have not customized your + $CATALINA_HOME/conf/server.xml to select a different one, + Tomcat 6 defaults to an XML-format file stored at + $CATALINA_HOME/conf/tomcat-users.xml, which can be + edited with any text editor. This file contains an XML + <user> for each individual user, which might + look something like this: +
      +<user name="craigmcc" password="secret" roles="standard,manager" />
      +
      + which defines the username and password used by this individual to + log on, and the role names he or she is associated with. You can + add the manager role to the comma-delimited + roles attribute for one or more existing users, and/or + create new users with that assigned role.
    • +
    • JDBCRealm - Your user and role information is stored in + a database accessed via JDBC. Add the manager role + to one or more existing users, and/or create one or more new users + with this role assigned, following the standard procedures for your + environment.
    • +
    • JNDIRealm - Your user and role information is stored in + a directory server accessed via LDAP. Add the manager + role to one or more existing users, and/or create one or more new users + with this role assigned, following the standard procedures for your + environment.
    • +
    + +

    The first time you attempt to issue one of the Manager commands +described in the next section, you will be challenged to log on using +BASIC authentication. The username and password you enter do not matter, +as long as they identify a valid user in the users database who possesses +the role manager.

    + +

    In addition to the password restrictions the manager web application +could be restricted by the remote IP address or host by adding a +RemoteAddrValve or RemoteHostValve. Here is +an example of restricting access to the localhost by IP address: +

    +<Context path="/manager" privileged="true"
    +         docBase="/usr/local/kinetic/tomcat6/server/webapps/manager">
    +         <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    +                allow="127\.0\.0\.1"/>
    +</Context>
    +
    +

    +
    Supported Manager Commands
    + +

    All commands that the Manager application knows how to process are +specified in a single request URI like this:

    +
    +http://{host}:{port}/manager/{command}?{parameters}
    +
    +

    where {host} and {port} represent the hostname +and port number on which Tomcat is running, {command} +represents the Manager command you wish to execute, and +{parameters} represents the query parameters +that are specific to that command. In the illustrations below, customize +the host and port appropriately for your installation.

    + +

    Most commands accept one or more of the following query parameters:

    +
      +
    • path - The context path (including the leading slash) + of the web application you are dealing with. To select the ROOT web + application, specify "/". NOTE - + It is not possible to perform administrative commands on the + Manager application itself.
    • +
    • war - URL of a web application archive (WAR) file, + pathname of a directory which contains the web application, or a + Context configuration ".xml" file. You can use URLs in any of the + following formats: +
        +
      • file:/absolute/path/to/a/directory - The absolute + path of a directory that contains the unpacked version of a web + application. This directory will be attached to the context path + you specify without any changes.
      • +
      • file:/absolute/path/to/a/webapp.war - The absolute + path of a web application archive (WAR) file. This is valid + only for the /deploy command, and is + the only acceptable format to that command.
      • +
      • jar:file:/absolute/path/to/a/warfile.war!/ - The + URL to a local web application archive (WAR) file. You can use any + syntax that is valid for the JarURLConnection class + for reference to an entire JAR file.
      • +
      • file:/absolute/path/to/a/context.xml - The + absolute path of a web application Context configuration ".xml" + file which contains the Context configuration element.
      • +
      • directory - The directory name for the web + applciation context in the Host's application base directory.
      • +
      • webapp.war - The name of a web application war file + located in the Host's application base directory.
      • +
    • +
    + +

    Each command will return a response in text/plain format +(i.e. plain ASCII with no HTML markup), making it easy for both humans and +programs to read). The first line of the response wil begin with either +OK or FAIL, indicating whether the requested +command was successful or not. In the case of failure, the rest of the first +line will contain a description of the problem that was encountered. Some +commands include additional lines of information as described below.

    + +

    Internationalization Note - The Manager application looks up +its message strings in resource bundles, so it is possible that the strings +have been translated for your platform. The examples below show the English +version of the messages.

    + +
    +

    WARNING: the legacy commands /install and +/remove are deprecated. +They are presently equivalent to /deploy and /undeploy, +but could be removed in a future release.

    +
    + +
    Deploy A New Application Remotely
    + +
    +http://localhost:8080/manager/deploy?path=/foo
    +
    + +

    Upload the web application archive (WAR) file that is specified as the +request data in this HTTP PUT request, install it into the appBase +directory of our corresponding virtual host, and start , using the directory +name or the war file name without the .war extension as the path. The +application can later be undeployed (and the corresponding application directory +removed) by use of the /undeploy command.

    + +

    The .WAR file may include Tomcat specific deployment configuration, by +including a Context configuration XML file in +/META-INF/context.xml.

    + +

    URL parameters include: +

      +
    • update: When set to true, any existing update will be + undeployed first. The default value is set to false.
    • +
    • tag: Specifying a tag name, this allows associating the + deployed webapp with a version number. The application version can + be later redeployed when needed using only the tag.
    • +
    +

    + +

    NOTE - This command is the logical +opposite of the /undeploy command.

    + +

    If installation and startup is successful, you will receive a response +like this:

    +
    +OK - Deployed application at context path /foo
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Application already exists at path /foo +
      +

      The context paths for all currently running web applications must be + unique. Therefore, you must undeploy the existing web + application using this context path, or choose a different context path + for the new one. The update parameter may be specified as + a parameter on the URL, with a value of true to avoid this + error. In that case, an undeploy will be performed on an existing + application before performing the deployment.

      +
    • +
    • Encountered exception +
      +

      An exception was encountered trying to start the new web application. + Check the Tomcat 6 logs for the details, but likely explanations include + problems parsing your /WEB-INF/web.xml file, or missing + classes encountered when initializing application event listeners and + filters.

      +
    • +
    + +
    + +
    Deploy A New Application from a Local Path
    + +

    Deploy and start a new web application, attached to the specified context +path (which must not be in use by any other web application). +This command is the logical opposite of the /undeploy command.

    + +

    There are a number of different ways the deploy command can be used.

    + +

    Deploy a version of a previously deployed webapp

    + +

    This can be used to deploy a previous version of a web application, which +has been deployed using the tag attribute. Note that the work +directory for the manager webapp will contain the previously deployed WARs; +removing it would make the deployment fail. +

    +http://localhost:8080/manager/deploy?path=/footoo&tag=footag
    +
    +

    + +

    Deploy a Directory or WAR by URL

    + +

    Deploy a web application directory or ".war" file located on the Tomcat +server. If no path is specified, the directory name or the war file +name without the ".war" extension is used as the path. The war +parameter specifies a URL (including the file: scheme) for either +a directory or a web application archive (WAR) file. The supported syntax for +a URL referring to a WAR file is described on the Javadocs page for the +java.net.JarURLConnection class. Use only URLs that refer to +the entire WAR file.

    + +

    In this example the web application located in the directory +/path/to/foo on the Tomcat server is deployed as the +web application context named /footoo. +

    +http://localhost:8080/manager/deploy?path=/footoo&war=file:/path/to/foo
    +
    +

    + +

    In this example the ".war" file /path/to/bar.war on the +Tomcat server is deployed as the web application context named +/bar. Notice that there is no path parameter +so the context path defaults to the name of the web application archive +file without the ".war" extension. +

    +http://localhost:8080/manager/deploy?war=jar:file:/path/to/bar.war!/
    +
    +

    + +

    Deploy a Directory or War from the Host appBase

    + +

    Deploy a web application directory or ".war" file located in your Host +appBase directory. The directory name or the war file name without the ".war" +extension is used as the path.

    + +

    In this example the web application located in a sub directory named +foo in the Host appBase directory of the Tomcat server is +deployed as the web application context named /foo. Notice +that the context path used is the name of the web application directory. +

    +http://localhost:8080/manager/deploy?war=foo
    +
    +

    + +

    In this example the ".war" file bar.war located in your +Host appBase directory on the Tomcat server is deployed as the web +application context named /bar. +

    +http://localhost:8080/manager/deploy?war=bar.war
    +
    +

    + +

    Deploy using a Context configuration ".xml" file

    + +

    If the Host deployXML flag is set to true you can deploy a web +application using a Context configuration ".xml" file and an optional +".war" file or web application directory. The context path +is not used when deploying a web application using a context ".xml" +configuration file.

    + +

    A Context configuration ".xml" file can contain valid XML for a +web application Context just as if it were configured in your +Tomcat server.xml configuration file. Here is an +example: +

    +<Context path="/foobar" docBase="/path/to/application/foobar"
    +         debug="0">
    +
    +  <!-- Link to the user database we will get roles from -->
    +  <ResourceLink name="users" global="UserDatabase"
    +                type="org.apache.catalina.UserDatabase"/>
    +
    +</Context>
    +
    +

    + +

    When the optional war parameter is set to the URL +for a web application ".war" file or directory it overrides any +docBase configured in the context configuration ".xml" file.

    + +

    Here is an example of deploying an application using a Context +configuration ".xml" file. +

    +http://localhost:8080/manager/deploy?config=file:/path/context.xml
    +
    +

    + +

    Here is an example of deploying an application using a Context +configuration ".xml" file and a web application ".war" file located +on the server. +

    +http://localhost:8080/manager/deploy?config=file:/path/context.xml&war=jar:file:/path/bar.war!/
    +
    +

    + +

    Deployment Notes

    + +

    If the Host is configured with unpackWARs=true and you deploy a war +file, the war will be unpacked into a directory in your Host appBase +directory.

    + +

    If the application war or directory is installed in your Host appBase +directory and either the Host is configured with autoDeploy=true or +liveDeploy=true, the Context path must match the directory name or +war file name without the ".war" extension.

    + +

    For security when untrusted users can manage web applications, the +Host deployXML flag can be set to false. This prevents untrusted users +from deploying web applications using a configuration XML file and +also prevents them from deploying application directories or ".war" +files located outside of their Host appBase.

    + + +

    Deploy Response

    + +

    If installation and startup is successful, you will receive a response +like this:

    +
    +OK - Deployed application at context path /foo
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Application already exists at path /foo +
      +

      The context paths for all currently running web applications must be + unique. Therefore, you must undeploy the existing web + application using this context path, or choose a different context path + for the new one. The update parameter may be specified as + a parameter on the URL, with a value of true to avoid this + error. In that case, an undeploy will be performed on an existing + application before performing the deployment.

      +
    • +
    • Document base does not exist or is not a readable directory +
      +

      The URL specified by the war parameter must identify a + directory on this server that contains the "unpacked" version of a + web application, or the absolute URL of a web application archive (WAR) + file that contains this application. Correct the value specified by + the war parameter.

      +
    • +
    • Encountered exception +
      +

      An exception was encountered trying to start the new web application. + Check the Tomcat 6 logs for the details, but likely explanations include + problems parsing your /WEB-INF/web.xml file, or missing + classes encountered when initializing application event listeners and + filters.

      +
    • +
    • Invalid application URL was specified +
      +

      The URL for the directory or web application that you specified + was not valid. Such URLs must start with file:, and URLs + for a WAR file must end in ".war".

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character. To reference the + ROOT web application use "/".

      +
    • +
    • Context path must match the directory or WAR file name: +
      + If the application war or directory is installed in your Host appBase + directory and either the Host is configured with autoDeploy=true or + liveDeploy=true, the Context path must match the directory name or + war file name without the ".war" extension. +
    • +
    • Only web applications in the Host web application directory can + be installed +
      + If the Host deployXML flag is set to false this error will happen + if an attempt is made to deploy a web application directory or + ".war" file outside of the Host appBase directory. +
    • +
    + +
    + +
    List Currently Deployed Applications
    + +
    +http://localhost:8080/manager/list
    +
    + +

    List the context paths, current status (running or +stopped), and number of active sessions for all currently +deployed web applications. A typical response immediately +after starting Tomcat might look like this:

    +
    +OK - Listed applications for virtual host localhost
    +/webdav:running:0
    +/examples:running:0
    +/manager:running:0
    +/:running:0
    +
    + +
    + +
    Reload An Existing Application
    + +
    +http://localhost:8080/manager/reload?path=/examples
    +
    + +

    Signal an existing application to shut itself down and reload. This can +be useful when the web application context is not reloadable and you have +updated classes or property files in the /WEB-INF/classes +directory or when you have added or updated jar files in the +/WEB-INF/lib directory. +

    +

    NOTE: The /WEB-INF/web.xml +web application configuration file is not reread on a reload. +If you have made changes to your web.xml file you must stop +then start the web application. +

    + +

    If this command succeeds, you will see a response like this:

    +
    +OK - Reloaded application at context path /examples
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to restart the web application. + Check the Tomcat 6 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character. To reference the + ROOT web application use "/".

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    • Reload not supported on WAR deployed at path /foo +
      + Currently, application reloading (to pick up changes to the classes or + web.xml file) is not supported when a web application is + deployed directly from a WAR file. It only works when the web application + is deployed from an unpacked directory. If you are using a WAR file, + you should undeploy and then deploy or + deploy with the update parameter the + application again to pick up your changes. +
    • +
    + +
    + +
    List OS and JVM Properties
    + +
    +http://localhost:8080/manager/serverinfo
    +
    + +

    Lists information about the Tomcat version, OS, and JVM properties.

    + +

    If an error occurs, the response will start with FAIL and +include an error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to enumerate the system properties. + Check the Tomcat 6 logs for the details.

      +
    • +
    + +
    + +
    List Available Global JNDI Resources
    + +
    +http://localhost:8080/manager/resources[?type=xxxxx]
    +
    + +

    List the global JNDI resources that are available for use in resource +links for context configuration files. If you specify the type +request parameter, the value must be the fully qualified Java class name of +the resource type you are interested in (for example, you would specify +javax.sql.DataSource to acquire the names of all available +JDBC data sources). If you do not specify the type request +parameter, resources of all types will be returned.

    + +

    Depending on whether the type request parameter is specfied +or not, the first line of a normal response will be:

    +
    +  OK - Listed global resources of all types
    +
    +

    or

    +
    +  OK - Listed global resources of type xxxxx
    +
    +

    followed by one line for each resource. Each line is composed of fields +delimited by colon characters (":"), as follows:

    +
      +
    • Global Resource Name - The name of this global JNDI resource, + which would be used in the global attribute of a + <ResourceLink> element.
    • +
    • Global Resource Type - The fully qualified Java class name of + this global JNDI resource.
    • +
    + +

    If an error occurs, the response will start with FAIL and +include an error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to enumerate the global JNDI + resources. Check the Tomcat 6 logs for the details.

      +
    • +
    • No global JNDI resources are available +
      +

      The Tomcat server you are running has been configured without + global JNDI resources.

      +
    • +
    + + +
    + + +
    List Available Security Roles
    + +
    +http://localhost:8080/manager/roles
    +
    + +

    List the security role names (and corresponding descriptions) that are +available in the org.apache.catalina.UserDatabase resource that +is linked to the users resource reference in the web.xml file +for the Manager web application. This would typically be used, for example, +by a deployment tool that wanted to create +<security-role-ref> elements to map security role names +used in a web application to the role names actually defined within the +container.

    + +

    By default, the users resource reference is pointed at the +global UserDatabase resource. If you choose to utilize a +different user database per virtual host, you should modify the +<ResourceLink> element in the default +manager.xml context configuration file to point at the global +user database resource for this virtual host.

    + +

    When this command is executed, the first line of the response will be:

    +
    +  OK - Listed security roles
    +
    +

    followed by one line for each security role. Each line is composed of +fields delimited by colon characters (":") as follows:

    +
      +
    • Security Role Name - A security role name that is known to Tomcat + in the user database.
    • +
    • Description - Description of this security role (useful in + creating user interfaces for selecting roles.
    • +
    + +

    If an error occurs, the response will start with FAIL and +include an error message. Possible causes for problems include:

    +
      +
    • Cannot resolve user database reference - A JNDI error prevented + the successful lookup of the org.apache.catalina.UserDatabase + resource. Check the Tomcat log files for a stack trace associated with + this error.
    • +
    • No user database is available - You have not configured a resource + reference for the users resource that points at an + appropriate user database instance. Check your manager.xml + file and ensure that you have created an appropriate + <ResourceLink> or + <ResourceParams> element for this resource.
    • +
    + +
    + + +
    Session Statistics
    + +
    +http://localhost:8080/manager/sessions?path=/examples
    +
    + +

    Display the default session timeout for a web application, and the +number of currently active sessions that fall within ten-minute ranges of +their actual timeout times. For example, after restarting Tomcat and then +executing one of the JSP samples in the /examples web app, +you might get something like this:

    +
    +OK - Session information for application at context path /examples
    +Default maximum session inactive interval 30 minutes
    +30 - <40 minutes:1 sessions
    +
    + +
    + + +
    Start an Existing Application
    + +
    +http://localhost:8080/manager/start?path=/examples
    +
    + +

    Signal a stopped application to restart, and make itself available again. +Stopping and starting is useful, for example, if the database required by +your application becomes temporarily unavailable. It is usually better to +stop the web application that relies on this database rather than letting +users continuously encounter database exceptions.

    + +

    If this command succeeds, you will see a response like this:

    +
    +OK - Started application at context path /examples
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to start the web application. + Check the Tomcat 6 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character. To reference the + ROOT web application use "/".

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    + +
    + +
    Stop an Existing Application
    + +
    +http://localhost:8080/manager/stop?path=/examples
    +
    + +

    Signal an existing application to make itself unavailable, but leave it +deployed. Any request that comes in while an application is +stopped will see an HTTP error 404, and this application will show as +"stopped" on a list applications command.

    + +

    If this command succeeds, you will see a response like this:

    +
    +OK - Stopped application at context path /examples
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to stop the web application. + Check the Tomcat 6 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character. To reference the + ROOT web application use "/".

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    + +
    + + +
    Undeploy an Existing Application
    + +
    +http://localhost:8080/manager/undeploy?path=/examples
    +
    + +

    WARNING - This command will delete any web +application artifacts that exist within appBase directory +(typically "webapps") for this virtual host. +This will delete the the application .WAR, if present, +the application directory resulting either from a deploy in unpacked form +or from .WAR expansion as well as the XML Context definition from +$CATALINA_HOME/conf/[enginename]/[hostname]/ directory. +If you simply want to take an application +out of service, you should use the /stop command instead.

    + +

    Signal an existing application to gracefully shut itself down, and +remove it from Tomcat (which also makes this context path available for +reuse later). In addition, the document root directory is removed, if it +exists in the appBase directory (typically "webapps") for +this virtual host. This command is the logical opposite of the +/deploy command.

    + +

    If this command succeeds, you will see a response like this:

    +
    +OK - Undeployed application at context path /examples
    +
    + +

    Otherwise, the response will start with FAIL and include an +error message. Possible causes for problems include:

    +
      +
    • Encountered exception +
      +

      An exception was encountered trying to undeploy the web application. + Check the Tomcat 6 logs for the details.

      +
    • +
    • Invalid context path was specified +
      +

      The context path must start with a slash character. To reference the + ROOT web application use "/".

      +
    • +
    • No context exists for path /foo +
      +

      There is no deployed application on the context path + that you specified.

      +
    • +
    • No context path was specified +
      + The path parameter is required. +
    • +
    + +
    + +
    Executing Manager Commands With Ant
    + +

    In addition to the ability to execute Manager commands via HTTP requests, +as documented above, Tomcat 6 includes a convenient set of Task definitions +for the Ant (version 1.4 or later) build tool. In order to use these +commands, you must perform the following setup operations:

    +
      +
    • Download the binary distribution of Ant from + http://ant.apache.org. + You must use version 1.4 or later.
    • +
    • Install the Ant distribution in a convenient directory (called + ANT_HOME in the remainder of these instructions).
    • +
    • Copy the file server/lib/catalina-ant.jar from your Tomcat 6 + installation into Ant's library directory ($ANT_HOME/lib). +
    • +
    • Add the $ANT_HOME/bin directory to your PATH + environment variable.
    • +
    • Configure at least one username/password combination in your Tomcat + user database that includes the manager role.
    • +
    + +

    To use custom tasks within Ant, you must declare them first with a +<taskdef> element. Therefore, your build.xml +file might look something like this:

    + + + +
    +<project name="My Application" default="compile" basedir=".">
    +
    +  <!-- Configure the directory into which the web application is built -->
    +  <property name="build"    value="${basedir}/build"/>
    +
    +  <!-- Configure the context path for this application -->
    +  <property name="path"     value="/myapp"/>
    +
    +  <!-- Configure properties to access the Manager application -->
    +  <property name="url"      value="http://localhost:8080/manager"/>
    +  <property name="username" value="myusername"/>
    +  <property name="password" value="mypassword"/>
    +
    +  <!-- Configure the custom Ant tasks for the Manager application -->
    +  <taskdef name="deploy"    classname="org.apache.catalina.ant.DeployTask"/>
    +  <taskdef name="list"      classname="org.apache.catalina.ant.ListTask"/>
    +  <taskdef name="reload"    classname="org.apache.catalina.ant.ReloadTask"/>
    +  <taskdef name="resources" classname="org.apache.catalina.ant.ResourcesTask"/>
    +  <taskdef name="roles"     classname="org.apache.catalina.ant.RolesTask"/>
    +  <taskdef name="start"     classname="org.apache.catalina.ant.StartTask"/>
    +  <taskdef name="stop"      classname="org.apache.catalina.ant.StopTask"/>
    +  <taskdef name="undeploy"  classname="org.apache.catalina.ant.UndeployTask"/>
    +
    +  <!-- Executable Targets -->
    +  <target name="compile" description="Compile web application">
    +    <!-- ... construct web application in ${build} subdirectory, and
    +            generated a ${path}.war ... -->
    +  </target>
    +
    +  <target name="deploy" description="Install web application"
    +          depends="compile">
    +    <deploy url="${url}" username="${username}" password="${password}"
    +            path="${path}" war="file:${build}${path}.war"/>
    +  </target>
    +
    +  <target name="reload" description="Reload web application"
    +          depends="compile">
    +    <reload  url="${url}" username="${username}" password="${password}"
    +            path="${path}"/>
    +  </target>
    +
    +  <target name="undeploy" description="Remove web application">
    +    <undeploy url="${url}" username="${username}" password="${password}"
    +            path="${path}"/>
    +  </target>
    +
    +</project>
    +
    + +

    Now, you can execute commands like ant deploy to deploy the +application to a running instance of Tomcat, or ant reload to +tell Tomcat to reload it. Note also that most of the interesting values in +this build.xml file are defined as replaceable properties, so +you can override their values from the command line. For example, you might +consider it a security risk to include the real manager password in your +build.xml file's source code. To avoid this, omit the password +property, and specify it from the command line:

    +
    +  ant -Dpassword=secret deploy
    +
    + +
    Tasks output capture
    + +

    Using Ant version 1.6.2 or later, +the Catalina tasks offer the option to capture their output in +properties or external files. They support directly the following subset of the +<redirector> type attributes: +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionRequired
    outputName of a file to which to write the output. If +the error stream is not also redirected to a file or property, it will +appear in this output.No
    errorThe file to which the standard error of the +command should be redirected.No
    logErrorThis attribute is used when you wish to see +error output in Ant's log and you are redirecting output to a +file/property. The error output will not be included in the output +file/property. If you redirect error with the error or errorProperty +attributes, this will have no effect.No
    appendWhether output and error files should be +appended to or overwritten. Defaults to false.No
    createemptyfilesWhether output and error files should be created +even when empty. Defaults to true.No
    outputpropertyThe name of a property in which the output of +the command should be stored. Unless the error stream is redirected to +a separate file or stream, this property will include the error output.No
    errorpropertyThe name of a property in which the standard +error of the command should be stored.No
    + +

    A couple of additional attributes can also be specified: +

    + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionRequired
    alwaysLogThis attribute is used when you wish to see the +output you are capturing, appearing also in the Ant's log. It must not be +used unless you are capturing task output. +Defaults to false. +This attribute will be supported directly by <redirector> +in Ant 1.6.3No
    failonerrorThis attribute is used when you wish to avoid that +any manager command processing error terminates the ant execution. Defaults to true. +It must be set to false, if you want to capture error output, +otherwise execution will terminate before anything can be captured. +
    +This attribute acts only on manager command execution, +any wrong or missing command attribute will still cause Ant execution termination. +
    No
    + +

    They also support the embedded <redirector> element +in which you can specify +its full set of attributes, but input, inputstring and +inputencoding that, even if accepted, are not used because they have +no meaning in this context. +Refer to ant manual for details on +<redirector> element attributes. +

    + +

    +Here is a sample build file extract that shows how this output redirection support +can be used: +

    + + + +
    +	<target name="manager.deploy"
    +		depends="context.status"
    +		if="context.notInstalled">
    +		<deploy url="${mgr.url}"
    +			username="${mgr.username}"
    +			password="${mgr.password}"
    +			path="${mgr.context.path}"
    +			config="${mgr.context.descriptor}"/>
    +	</target>
    +
    +	<target name="manager.deploy.war"
    +		depends="context.status"
    +		if="context.deployable">
    +		<deploy url="${mgr.url}"
    +			username="${mgr.username}"
    +			password="${mgr.password}"
    +			update="${mgr.update}"
    +			path="${mgr.context.path}"
    +			war="${mgr.war.file}"/>
    +	</target>
    +	
    +	<target name="context.status">
    +		<property name="running" value="${mgr.context.path}:running"/>
    +		<property name="stopped" value="${mgr.context.path}:stopped"/>
    +	
    +		<list url="${mgr.url}"
    +			outputproperty="ctx.status"
    +			username="${mgr.username}"
    +			password="${mgr.password}">
    +		</list>
    +		
    +		<condition property="context.running">
    +			<contains string="${ctx.status}" substring="${running}"/>
    +		</condition>
    +		<condition property="context.stopped">
    +			<contains string="${ctx.status}" substring="${stopped}"/>
    +		</condition>
    +		<condition property="context.notInstalled">
    +			<and>
    +				<isfalse value="${context.running}"/>
    +				<isfalse value="${context.stopped}"/>
    +			</and>
    +		</condition>
    +		<condition property="context.deployable">
    +			<or>
    +				<istrue value="${context.notInstalled}"/>
    +				<and>
    +					<istrue value="${context.running}"/>
    +					<istrue value="${mgr.update}"/>
    +				</and>
    +				<and>
    +					<istrue value="${context.stopped}"/>
    +					<istrue value="${mgr.update}"/>
    +				</and>
    +			</or>
    +		</condition>
    +		<condition property="context.undeployable">
    +			<or>
    +				<istrue value="${context.running}"/>
    +				<istrue value="${context.stopped}"/>
    +			</or>
    +		</condition>
    +	</target>
    +
    + +

    WARNING: even if it doesn't make many sense, and is always a bad idea, +calling a Catalina task more than once, +badly set Ant tasks depends chains may cause that a task be called +more than once in the same Ant run, even if not intended to. A bit of caution should be exercised when you are +capturing output from that task, because this could lead to something unexpected: +

      +
    • when capturing in a property you will find in it only the output from the first call, because +Ant properties are immutable and once set they cannot be changed, +
    • +
    • when capturing in a file, each run will overwrite it and you will find in it only the last call +output, unless you are using the append="true" attribute, in which case you will +see the output of each task call appended to the file. +
    • +
    +

    + +
    + +
    Using the JMX Proxy Servlet
    + +
    What is JMX Proxy Servlet
    + The JMX Proxy Servlet is a lightweight proxy to get and set the + tomcat internals. (Or any class that has been exposed via an MBean) + Its usage is not very user friendly but the UI is + extremely help for integrating command line scripts for monitoring + and changing the internals of tomcat. You can do two things with the proxy: + get information and set information. For you to really understand the + JMX Proxy Servlet, you should have a general understanding of JMX. + If you don't know what JMX is, then prepare to be confused. +
    + +
    JMX Query command
    + This takes the form: +
    +http://webserver/manager/jmxproxy/?qry=STUFF
    +
    + Where STUFF is the JMX query you wish to perform. For example, + here are some queries you might wish to run: +
      +
    • + qry=*%3Atype%3DRequestProcessor%2C* --> + type=RequestProcessor which will locate all + workers which can process requests and report + their state. +
    • +
    • + qry=*%3Aj2eeType=Servlet%2c* --> + j2eeType=Servlet which return all loaded servlets. +
    • +
    • + qry=Catalina%3Atype%3DEnvironment%2Cresourcetype%3DGlobal%2Cname%3DsimpleValue --> + Catalina:type=Environment,resourcetype=Global,name=simpleValue + which look for a specific MBean by the given name. +
    • +
    + You'll need to experiment with this to really understand its capabilites. + If you provide no qry parameter, then all of the MBeans will + be displayed. We really recommend looking at the tomcat source code and + understand the JMX spec to get a better understanding of all the queries + you may run. +
    + +
    JMX Set command
    + Now that you can query an MBean, its time to muck with Tomcat's internals! + The general form of the set command is : +
    +http://webserver/manager/jmxproxy/?set=BEANNAME&att=MYATTRIBUTE&val=NEWVALUE
    +
    + So you need to provide 3 request parameters: +
      +
    1. set: The full bean name
    2. +
    3. att: The attribute you wish to alter
    4. +
    5. val: The new value
    6. +
    + If all goes ok, then it will say OK, otherwise an error message will be + shown. For example, lets say we wish to turn up debugging on the fly for the + ErrorReportValve. The following will set debugging to 10. +
    +http://localhost:8080/manager/jmxproxy/
    +?set=Catalina%3Atype%3DValve%2Cname%3DErrorReportValve%2Chost%3Dlocalhost&att=debug&val=10
    +
    + and my result is (YMMV): +
    +Result: ok
    +
    + + Here is what I see if I pass in a bad value. Here is the URL I used, + I try set debugging equal to 'cowbell': +
    +http://localhost:8080/manager/jmxproxy/
    +?set=Catalina%3Atype%3DValve%2Cname%3DErrorReportValve%2Chost%3Dlocalhost&att=debug&val=cowbell
    +
    + When I try that, my result is +
    +Error: java.lang.NumberFormatException: For input string: "cowbell"
    +
    +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/maven-jars.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/maven-jars.html new file mode 100644 index 0000000..22c6a13 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/maven-jars.html @@ -0,0 +1,22 @@ +Apache Tomcat 6.0 - Apache Tomcat - Using Tomcat libraries with Maven
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Apache Tomcat - Using Tomcat libraries with Maven

    Using Tomcat libraries With Maven
    +
    Tomcat Snapshots
    + Tomcat snapshots are located in the + Apache Snapshot Repository. + The official URL is
    http://people.apache.org/repo/m2-snapshot-repository/org/apache/tomcat/

    + Snapshots are done periodically, not on a regular basis, but when changes happen and the Tomcat team deams a new snapshot might + useful. +
    +
    Tomcat Releases
    + At every release, be it alpha, beta or stable, we will publish the JARs to + Tomcat's Staging Repository. + The URL for this is
    http://tomcat.apache.org/dev/dist/m2-repository/org/apache/tomcat/
    .
    + At some point, this URL will change over to ASF's main repository that synchronizes with IBiblio.
    + When that happens, all releases will be moved over, and this repository will stick around for a while, but no + new releases will be published to the staging repository. +
    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/mbeans-descriptor-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/mbeans-descriptor-howto.html new file mode 100644 index 0000000..4cf7402 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/mbeans-descriptor-howto.html @@ -0,0 +1,46 @@ +Apache Tomcat 6.0 - MBean Descriptor How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    MBean Descriptor How To

    Introduction
    + +

    Tomcat 6 uses JMX MBeans as the technology for implementing +manageability of Tomcat.

    + +

    The descriptions of JMX MBeans for Catalina are in the mbeans-descriptor.xml +file in each package.

    + +

    You will need to add MBean descriptions for your custom components +in order to avoid a "ManagedBean is not found" exception.

    + +
    Adding MBean descriptions
    + +

    You may also add MBean descriptions for custom components in +a mbeans-descriptor.xml file, located in the same package as the class files +it describes.

    + +
    +  <mbean         name="LDAPRealm"
    +            className="org.apache.catalina.mbeans.ClassNameMBean"
    +          description="Custom LDAPRealm"
    +               domain="Catalina"
    +                group="Realm"
    +                 type="com.myfirm.mypackage.LDAPRealm">
    +
    +    <attribute   name="className"
    +          description="Fully qualified class name of the managed object"
    +                 type="java.lang.String"
    +            writeable="false"/>
    +
    +    <attribute   name="debug"
    +          description="The debugging detail level for this component"
    +                 type="int"/>
    +    .
    +    .
    +    .
    +
    +  </mbean>
    +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/monitoring.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/monitoring.html new file mode 100644 index 0000000..84395e9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/monitoring.html @@ -0,0 +1,1072 @@ +Apache Tomcat 6.0 - Monitoring and Managing Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Monitoring and Managing Tomcat

    Introduction
    + +

    Monitoring is a very important question today. Looking inside the running + server, grab some statistic data or reconfigure some aspects are + daliy adminstration tasks.

    + +
    Enabling JMX Remote
    + +

    The Sun website includes the list of options and how to configure JMX Remote on Java 5: + + http://java.sun.com/j2se/1.5.0/docs/guide/management/agent.html. +

    +

    For quick installation you find here a short installation guide:

    +

    Add the following parameters to your tomcat startup script: +

    +    set CATALINA_OPTS="-Dcom.sun.management.jmxremote \
    +    -Dcom.sun.management.jmxremote.port=%my.jmx.port% \
    +    -Dcom.sun.management.jmxremote.ssl=false \
    +    -Dcom.sun.management.jmxremote.authenticate=false"
    +    
    +

    +

    +

      +
    1. When you think authorisation is a good, add and change this : +
      +    -Dcom.sun.management.jmxremote.authenticate=true \
      +    -Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password \
      +    -Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access \
      +    
      +
    2. +
    3. edit the access allow file $CATALINA_BASE/conf/jmxremote.access : +
      +monitorRole readonly
      +controlRole readwrite
      +    
      +
    4. +
    5. edit the password file $CATALINA_BASE/conf/jmxremote.password : +
      +monitorRole tomcat
      +controlRole tomcat
      +    
      + Tipp: Password File must be readonly and not accessable from every + other user! Remove all other users under windows to access this file. +
    6. +
    + Note:The JSR 160 JMX-Adaptor opens a second data protocol port. That is a problem + when you have installed a local firewall.
    +

    +

    Activate JMX MX4J Http Adaptor with Java 1.4: +

      +
    1. Install the tomcat compat package
    2. +
    3. Install the mx4j-tools.jar at common/lib. Please, use the same MX4j + version as your tomcat release
    4. +
    5. Configure a MX4J JMX HTTP Adaptor at your AJP Connector +

      +

      +      <Connector port="${AJP.PORT}" 
      +            handler.list="mx" 
      +            mx.enabled="true" 
      +            mx.httpHost="${JMX.HOST}"
      +            mx.httpPort="${JMX.PORT}"
      +            protocol="AJP/1.3" />
      +      
      +

      +

      Tipp: With ${AJP.PORT}=0 no ajp connection where started. +

      +

      Note: MX4J JSR 160 RMI Adaptor to support JDK 1.4 currently not integrated. +

      +
    6. +
    7. Start your tomcat and look with a browser at http://${JMX.HOST}:${JMX.PORT}
    8. +
    9. With the mx connector parameter mx.authMode="basic" mx.authUser="tomcat" mx.authPassword="strange" + you can control the access!
    10. +
    11. A complete list of all tomcat core MBeans can you find at + funcspecs/mbean-names.html.
    12. +
    +

    + +
    Manage Tomcat with JMX remote Ant Tasks
    +

    For simple tomcat ant task usage with ant 1.6.x we have integrate import and antlib support.

    +

    antlibCopy your catalina-ant.jar from $CATALINA_HOME/server/lib to $ANT_HOME/lib.

    +

    Following example show the JMX Accessor usage:

    + + +

    +<project name="Catalina Ant JMX" 
    +        xmlns:jmx="antlib:org.apache.catalina.ant.jmx" 
    +        default="state"
    +        basedir=".">
    +    <property name="jmx.server.name" value="localhost" />
    +    <property name="jmx.server.port" value="9012" />
    +    <property name="cluster.server.address" value="192.168.1.75" />
    +    <property name="cluster.server.port" value="9025" />
    + 
    +    <target name="state" description="Show JMX Cluster state">
    +        <jmx:open
    +            host="${jmx.server.name}"
    +            port="${jmx.server.port}"
    +            username="controlRole"
    +            password="tomcat"/>
    +        <jmx:get
    +            name="Catalina:type=IDataSender,host=localhost,senderAddress=${cluster.server.address},senderPort=${cluster.server.port}" 
    +            attribute="connected"
    +            resultproperty="IDataSender.backup.connected"
    +            echo="false"
    +        />
    +       <jmx:get
    +            name="Catalina:type=ClusterSender,host=localhost" 
    +            attribute="senderObjectNames"
    +            resultproperty="senderObjectNames"
    +            echo="false"
    +        />
    +        <!-- get current maxActiveSession from ClusterTest application
    +             echo it to ant output and store at 
    +             property <em>clustertest.maxActiveSessions.orginal</em>
    +        -->
    +       <jmx:get
    +            name="Catalina:type=Manager,path=/ClusterTest,host=localhost" 
    +            attribute="maxActiveSessions"
    +            resultproperty="clustertest.maxActiveSessions.orginal"
    +            echo="true"
    +        />
    +        <!-- set maxActiveSession to 100
    +        -->
    +        <jmx:set
    +            name="Catalina:type=Manager,path=/ClusterTest,host=localhost" 
    +            attribute="maxActiveSessions"
    +            value="100"
    +            type="int"
    +        />
    +        <!-- get all sessions and split result as delimiter <em>SPACE</em> for easy
    +             access all session ids directly with ant property sessions.[0..n].
    +        -->
    +        <jmx:invoke
    +            name="Catalina:type=Manager,path=/ClusterTest,host=localhost" 
    +            operation="listSessionIds"
    +            resultproperty="sessions"
    +            echo="false"
    +            delimiter=" "
    +        />
    +        <!-- Access session attribute <em>Hello</em> from first session.
    +        -->
    +        <jmx:invoke
    +            name="Catalina:type=Manager,path=/ClusterTest,host=localhost" 
    +            operation="getSessionAttribute"
    +            resultproperty="Hello"
    +            echo="false"
    +        >
    +          <arg value="${sessions.0}"/>
    +          <arg value="Hello"/>
    +        </jmx:invoke> 
    +        <!-- Query for all application manager.of the server from all hosts
    +             and bind all attributes from all found manager mbeans.
    +        -->
    +        <jmx:query
    +            name="Catalina:type=Manager,*" 
    +            resultproperty="manager"
    +            echo="true"
    +            attributebinding="true"
    +        />
    +        <!-- echo the create properties -->
    +        <echo>
    +           senderObjectNames: ${senderObjectNames.0}
    +           IDataSender.backup.connected: ${IDataSender.backup.connected}
    +           session: ${sessions.0}
    +           manager.length: ${manager.length}
    +           manager.0.name: ${manager.0.name}
    +           manager.1.name: ${manager.1.name}
    +           hello: ${Hello}
    +           manager.ClusterTest.0.name: ${manager.ClusterTest.0.name}
    +           manager.ClusterTest.0.activeSessions: ${manager.ClusterTest.0.activeSessions}
    +           manager.ClusterTest.0.counterSend_EVT_SESSION_EXPIRED: ${manager.ClusterTest.0.counterSend_EVT_SESSION_EXPIRED}
    +           manager.ClusterTest.0.counterSend_EVT_GET_ALL_SESSIONS: ${manager.ClusterTest.0.counterSend_EVT_GET_ALL_SESSIONS}
    +        </echo>   
    +
    +    </target>
    + 
    +</project>
    +   

    +
    +

    import: Import the JMX Accessor Projekt with + <import file="${CATALINA.HOME}/bin/jmxaccessor-tasks.xml" /> and + reference the tasks with jmxOpen, jmxSet, jmxGet, + jmxQuery, jmxInvoke,jmxEquals and jmxCondition.

    + +
    JMXAccessorOpenTask - jmx open connection task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    urlSet jmx connection url - service:jmx:rmi:///jndi/rmi://localhost:8050/jmxrmi +
    hostSet the host, shortcut the very long url syntax. + localhost
    portSet the remote connection port + 8050
    usernameremote jmx connection user name. +
    passwordremote jmx connection password. +
    refName of the internal connection referenz. With this attribute you can + configure more the one connection inside the same ant projekt. + jmx.server
    echoEcho the command usage (for analyse access or debugging) + false
    ifOnly execute if a property of the given name exists in the current project. +
    unlessOnly execute if a property of the given name not exists in the current project. +
    +

    +

    +Example to open a new jmx connection
    +

    +    <jmx:open
    +            host="${jmx.server.name}"
    +            port="${jmx.server.port}"
    +    />
    +
    +

    +

    +Example to open a jmx connection from url, with authorisation and +store at other reference
    +

    +    <jmx:open
    +            url="service:jmx:rmi:///jndi/rmi://localhost:9024/jmxrmi"
    +            ref="jmx.server.9024"
    +            username="controlRole"
    +            password="tomcat"    
    +    />
    +
    +

    + +

    +Example to open a jmx connection from url, with authorisation and +store at other reference, but only when property jmx.if exists and +jmx.unless not exists
    +

    +    <jmx:open
    +            url="service:jmx:rmi:///jndi/rmi://localhost:9024/jmxrmi"
    +            ref="jmx.server.9024"
    +            username="controlRole"
    +            password="tomcat"    
    +            if="jmx.if"    
    +            unless="jmx.unless"    
    +    />
    +
    +

    +

    Note: All properties from jmxOpen task also exists at all +other tasks and conditions. +

    + +
    JMXAccessorGetTask: get attribute value ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameFull qualified JMX ObjectName -- Catalina:type=Server +
    attributeExisting Mbean attribute (see Tomcat mbean description above) +
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    resultpropertySave result at this project property +
    delimiterSplit result with delimiter (java.util.StringTokenizier) + and use resultproperty as prefix to store tokens. +
    separatearrayresultsWhen return value is an array, save result as property list + ($resultproperty.[0..N] and $resultproperty.lenght) + true
    +

    +

    +Example to get remote mbean attribute from default jmx connection
    +

    +    <jmx:get
    +        name="Catalina:type=Manager,path=/servlets-examples,host=localhost" 
    +        attribute="maxActiveSessions"
    +        resultproperty="servlets-examples.maxActiveSessions"
    +    />
    +
    +

    +

    +Example to get and result array and split it at separate properties
    +

    +    <jmx:get
    +        name="Catalina:type=ClusterSender,host=localhost" 
    +        attribute="senderObjectNames"
    +        resultproperty="senderObjectNames"
    +    />
    +
    +Access the senderObjectNames properties with: +
    +    ${senderObjectNames.lenght} give the number of returned sender list.
    +    ${senderObjectNames.[0..N]} found all sender object names
    +
    +

    + +

    +Example to get IDataSender attribute connected only when cluster is configured. +

    +<jmx:query
    +    failonerror="false"
    +    name="Catalina:type=Cluster,host=${tomcat.application.host}"
    +    resultproperty="cluster"
    +/>
    +<jmx:get
    +    name="Catalina:type=IDataSender,host=${tomcat.application.host},senderAddress=${cluster.backup.address},senderPort=${cluster.backup.port}" 
    +    attribute="connected"
    +    resultproperty="datasender.connected"
    +    if="cluster.0.name" />
    +
    +

    + +
    JMXAccessorSetTask: set attribute value ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameFull qualified JMX ObjectName -- Catalina:type=Server +
    attributeExisting Mbean attribute (see Tomcat mbean description above) +
    valuevalue that set to attribute +
    typetype of the attribute. + java.lang.String
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    +

    +

    +Example to set remote mbean attribute value
    +

    +    <jmx:set
    +        name="Catalina:type=Manager,path=/servlets-examples,host=localhost" 
    +        attribute="maxActiveSessions"
    +        value="500"
    +        type="int"
    +    />
    +
    +

    + +
    JMXAccessorInvokeTask: invoke Mbean operation ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameFull qualified JMX ObjectName -- Catalina:type=Server +
    operationExisting Mbean operation (see Tomcat + funcspecs/fs-admin-opers.html. +
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    resultpropertySave result at this project property +
    delimiterSplit result with delimiter (java.util.StringTokenizier) + and use resultproperty as prefix to store tokens. +
    separatearrayresultsWhen return value is an array, save result as property list + ($resultproperty.[0..N] and $resultproperty.lenght) + true
    +

    +

    +stop an application
    +

    +    <jmx:invoke
    +        name="Catalina:type=Manager,path=/servlets-examples,host=localhost" 
    +        operation="stop"/>
    +
    +Now you can find the sessionid at ${sessions.[0..N} properties and access the count +with ${sessions.lenght} property. +

    +

    +Example to get all sessionids
    +

    +    <jmx:invoke
    +        name="Catalina:type=Manager,path=/servlets-examples,host=localhost" 
    +        operation="listSessionIds"
    +        resultproperty="sessions"
    +        delimiter=" "        
    +    />
    +
    +Now you can find the sessionid at ${sessions.[0..N} properties and access the count +with ${sessions.lenght} property. +

    +

    +Example to get remote mbean session attribute from session ${sessionid.0}
    +

    +    <jmx:invoke
    +        name="Catalina:type=Manager,path=/ClusterTest,host=localhost" 
    +        operation="getSessionAttribute"
    +        resultproperty="hello">
    +         <arg value="${sessionid.0}"/>
    +         <arg value="Hello" />
    + </jmx:invoke>
    +
    +

    +

    +Example to create a new access logger valve at vhost localhost +

    + <jmx:invoke
    +         name="Catalina:type=MBeanFactory" 
    +         operation="createAcccesLoggerValve"
    +         resultproperty="acccesLoggerObjectName"
    + >
    +     <arg value="Catalina:type=Host,host=localhost"/>
    + </jmx:invoke>
    +
    +Now you can find new Mbean with name stored at ${acccesLoggerObjectName} +proeprty. +

    + +
    JMXAccessorQueryTask: query Mbean ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameJMX ObjectName query string -- Catalina:type=Manager,* +
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    resultpropertyPrefix project property name to all founded Mbeans (mbeans.[0..N].objectname) +
    attributebinduingbind ALL MBean attributes in addition to name + false
    delimiterSplit result with delimiter (java.util.StringTokenizier) + and use resultproperty as prefix to store tokens. +
    separatearrayresultsWhen return value is an array, save result as property list + ($resultproperty.[0..N] and $resultproperty.lenght) + true
    +

    +

    +Get all Manager ObjectNames from all services and Hosts
    +

    +  <jmx:query
    +           name="Catalina:type=Manager,* 
    +           resultproperty="manager" />
    +
    +Now you can find the Session Manager at ${manager.[0..N].name} +properties and access the result object counter with ${manager.length} property. +

    +

    +Example to get the Manager from servlet-examples application an bind all mbean properties
    +

    +  <jmx:query
    +           name="Catalina:type=Manager,path=/servlet-examples,host=localhost*" 
    +           attributebinding="true"
    +           resultproperty="manager.servletExamples" />
    +
    +Now you can find the manager at ${manager.servletExamples.0.name} property +and can access all properties from this manager with ${manager.servletExamples.0.[manager attribute names]}. +The result object counter from MBeans is stored ad ${manager.length} property. +

    + +

    +Example to get all MBeans from a server and store inside an external xml property file
    +

    +<project name="jmx.query"         
    +            xmlns:jmx="antlib:org.apache.catalina.ant.jmx"
    +            default="query-all" basedir=".">
    +<property name="jmx.host" value="localhost"/>
    +<property name="jmx.port" value="8050"/>
    +<property name="jmx.username" value="controlRole"/>
    +<property name="jmx.password" value="tomcat"/>
    +
    +<target name="query-all" description="Query all MBeans of a server">
    +<!-- Configure connection -->
    +<jmx:open 
    +    host="${jmx.host}"
    +    port="${jmx.port}"
    +    ref="jmx.server"
    +    username="${jmx.username}"
    +    password="${jmx.password}"/>
    +<!-- Query MBean list -->
    +<jmx:query 
    +    name="*:*"
    +    resultproperty="mbeans"
    +    attributebinding="false"/>
    +    
    +<echoproperties
    +    destfile="mbeans.properties"
    +    prefix="mbeans."
    +    format="xml"/>
    +    
    +<!-- Print results -->
    +<echo
    +    message="Number of MBeans in server ${jmx.host}:${jmx.port} is ${mbeans.length}"/>
    +</target>
    +</project>
    +
    +Now you can find all MBeans inside the file mbeans.properties. +

    + +
    JMXAccessorCreateTask: remote create mbean ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameFull qualified JMX ObjectName -- Catalina:type=MBeanFactory +
    classNameExisting MBean full qualified classname (see Tomcat mbean description above) +
    classLoaderObjectName of server or web application classloader
    + ( Catalina:type=ServerClassLoader,name=[server,common,shared] or
    + Catalina:type=WebappClassLoader,path=/myapps,host=localhost) +
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    +

    +

    +Example to create remote mbean
    +

    +    <jmx:create
    +             ref="${jmx.reference}"
    +             name="Catalina:type=MBeanFactory"
    +             className="org.apache.commons.modeler.BaseModelMBean"
    +             classLoader="Catalina:type=ServerClassLoader,name=server">             
    +             <Arg value="org.apache.catalina.mbeans.MBeanFactory" />
    +    </jmx:create> 
    +
    +

    +

    + Warning: A lot of tomcat mbeans can't be really create and connect with
    + the parent. The valve, cluster or realm Mbeans are not autconnect with there parent.
    + Use MBeanFacrory create operation instead. +

    + +
    JMXAccessorUnregisterTask: remote unregister mbean ant task
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    nameFull qualified JMX ObjectName -- Catalina:type=MBeanFactory +
    refJMX Connection reference + jmx.server
    echoEcho command usage (access and result) + false
    +

    +

    +Example to unregister remote mbean
    +

    +    <jmx:unregister
    +        name="Catalina:type=MBeanFactory" 
    +    />
    +
    +

    +

    + Warning: A lot of tomcat mbeans can't be really unregister.
    + The Mbeans are not deregister from parent. Use MBeanFacrory
    + remove operation instead. +

    + +
    JMXAccessorCondition: express condition
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    urlSet jmx connection url - service:jmx:rmi:///jndi/rmi://localhost:8050/jmxrmi +
    hostSet the host, shortcut the very long url syntax. + localhost
    portSet the remote connection port + 8050
    usernameremote jmx connection user name. +
    passwordremote jmx connection password. +
    refName of the internal connection reference. With this attribute you can + configure more the one connection inside the same ant projekt. + jmx.server
    nameFull qualified JMX ObjectName -- Catalina:type=Server +
    echoEcho condition usage (access and result) + false
    ifOnly execute if a property of the given name exists in the current project. +
    unlessOnly execute if a property of the given name not exists in the current project. +
    value (requiered)Second arg for operation +
    typeValue type to express operation (support long and double) + long
    operation express one +
      +
    • == equals
    • +
    • != not equals
    • +
    • > greater than (&gt;)
    • +
    • >= greater than or equals (&gt;=)
    • +
    • < lesser than (&lt;)
    • +
    • <= lesser than or equals (&lt;=)
    • +
    +
    ==
    +

    +

    +Wait for server connection and that cluster backup node is accessable
    +

    +      <target name="wait">
    +         <waitfor maxwait="${maxwait}" maxwaitunit="second" timeoutproperty="server.timeout" >
    +            <and>
    +                <socket server="${server.name}" port="${server.port}"/>
    +                <http url="${url}"/>
    +                <jmx:condition
    +                    operation="==" 
    +                    host="localhost" 
    +                    port="9014"
    +                    username="controlRole"
    +                    password="tomcat"
    +                    name="Catalina:type=IDataSender,host=localhost,senderAddress=192.168.111.1,senderPort=9025"
    +                    attribute="connected"
    +                    value="true"
    +                />
    +            </and>
    +        </waitfor>
    +        <fail if="server.timeout" message="Server ${url} don't answer inside ${maxwait} sec" />
    +        <echo message="Server ${url} alive" />
    +    </target>
    +
    +

    + +
    JMXAccessorEqualsCondition: equals Mbean ant condition
    +

    +List of Attributes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescriptionDefault value
    urlSet jmx connection url - service:jmx:rmi:///jndi/rmi://localhost:8050/jmxrmi +
    hostSet the host, shortcut the very long url syntax. + localhost
    portSet the remote connection port + 8050
    usernameremote jmx connection user name. +
    passwordremote jmx connection password. +
    refName of the internal connection referenz. With this attribute you can + configure more the one connection inside the same ant projekt. + jmx.server
    nameFull qualified JMX ObjectName -- Catalina:type=Server +
    echoEcho condition usage (access and result) + false
    +

    +

    +Wait for server connection and that cluster backup node is accessable
    +

    +      <target name="wait">
    +         <waitfor maxwait="${maxwait}" maxwaitunit="second" timeoutproperty="server.timeout" >
    +            <and>
    +                <socket server="${server.name}" port="${server.port}"/>
    +                <http url="${url}"/>
    +                <jmx:equals 
    +                    host="localhost" 
    +                    port="9014"
    +                    username="controlRole"
    +                    password="tomcat"
    +                    name="Catalina:type=IDataSender,host=localhost,senderAddress=192.168.111.1,senderPort=9025"
    +                    attribute="connected"
    +                    value="true"
    +                />
    +            </and>
    +        </waitfor>
    +        <fail if="server.timeout" message="Server ${url} don't answer inside ${maxwait} sec" />
    +        <echo message="Server ${url} alive" />
    +    </target>
    +
    +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/proxy-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/proxy-howto.html new file mode 100644 index 0000000..74c6be7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/proxy-howto.html @@ -0,0 +1,116 @@ +Apache Tomcat 6.0 - Proxy Support HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Proxy Support HOW-TO

    Introduction
    + +

    Using standard configurations of Tomcat, web applications can ask for +the server name and port number to which the request was directed for +processing. When Tomcat is running standalone with the +Coyote HTTP/1.1 Connector, it will generally +report the server name specified in the request, and the port number on +which the Connector is listening. The servlet API +calls of interest, for this purpose, are:

    +
      +
    • ServletRequest.getServerName(): Returns the host name of the server to which the request was sent.
    • +
    • ServletRequest.getServerPort(): Returns the host name of the server to which the request was sent.
    • +
    • ServletRequest.getLocalName(): Returns the host name of the Internet Protocol (IP) interface on which the request was received.
    • +
    • ServletRequest.getLocalPort(): Returns the Internet Protocol (IP) port number of the interface on which the request was received.
    • +
    + +

    When you are running behind a proxy server (or a web server that is +configured to behave like a proxy server), you will sometimes prefer to +manage the values returned by these calls. In particular, you will +generally want the port number to reflect that specified in the original +request, not the one on which the Connector itself is +listening. You can use the proxyName and proxyPort +attributes on the <Connector> element to configure +these values.

    + +

    Proxy support can take many forms. The following sections describe +proxy configurations for several common cases.

    + +
    Apache 1.3 Proxy Support
    + +

    Apache 1.3 supports an optional module (mod_proxy) that +configures the web server to act as a proxy server. This can be used to +forward requests for a particular web application to a Tomcat 6 instance, +without having to configure a web connector such as mod_jk. +To accomplish this, you need to perform the following tasks:

    +
      +
    1. Configure your copy of Apache so that it includes the + mod_proxy module. If you are building from source, + the easiest way to do this is to include the + --enable-module=proxy directive on the + ./configure command line.
    2. +
    3. If not already added for you, make sure that you are loading the + mod_proxy module at Apache startup time, by using the + following directives in your httpd.conf file: +
      +LoadModule proxy_module  {path-to-modules}/mod_proxy.so
      +AddModule  mod_proxy.c
      +
    4. +
    5. Include two directives in your httpd.conf file for + each web application that you wish to forward to Tomcat 5. For + example, to forward an application at context path /myapp: +
      +ProxyPass         /myapp  http://localhost:8081/myapp
      +ProxyPassReverse  /myapp  http://localhost:8081/myapp
      +
      + which tells Apache to forward URLs of the form + http://localhost/myapp/* to the Tomcat 5 connector + listening on port 8081.
    6. +
    7. Configure your copy of Tomcat 5 to include a special + <Connector> element, with appropriate + proxy settings, for example: +
      +<Connector port="8081" ...
      +              proxyName="www.mycompany.com"
      +              proxyPort="80"/>
      +
      + which will cause servlets inside this web application to think that + all proxied requests were directed to www.mycompany.com + on port 80.
    8. +
    9. It is legal to omit the proxyName attribute from the + <Connector> element. If you do so, the value + returned by request.getServerName() will by the host + name on which Tomcat is running. In the example above, it would be + localhost.
    10. +
    11. If you also have a <Connector> listening on port + 8080 (nested within the same Service + element), the requests to either port will share the same set of + virtual hosts and web applications.
    12. +
    13. You might wish to use the IP filtering features of your operating + system to restrict connections to port 8081 (in this example) to + be allowed only from the server that is running + Apache.
    14. +
    15. Alternatively, you can set up a series of web applications that are + only available via proxying, as follows: +
        +
      • Configure another <Service> that contains + only a <Connector> for the proxy port.
      • +
      • Configure appropriate Engine, + Host, and + Context elements for the virtual hosts + and web applications accessible via proxying.
      • +
      • Optionally, protect port 8081 with IP filters as described + earlier.
      • +
    16. +
    17. When requests are proxied by Apache, the web server will be recording + these requests in its access log. Therefore, you will generally want to + disable any access logging performed by Tomcat itself.
    18. +
    + +

    When requests are proxied in this manner, all requests +for the configured web applications will be processed by Tomcat (including +requests for static content). You can improve performance by using the +mod_jk web connector instead of mod_proxy. +mod_jk can be configured so that the web server serves static +content that is not processed by filters or security constraints defined +within the web application's deployment descriptor +(/WEB-INF/web.xml).

    + +
    Apache 2.0 Proxy Support
    +The same instructions hold true as for 1.3. (Except in Apache 2.0, +you may omit AddModule mod_proxy.c) +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/realm-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/realm-howto.html new file mode 100644 index 0000000..9245d7c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/realm-howto.html @@ -0,0 +1,1284 @@ +Apache Tomcat 6.0 - Realm Configuration HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Realm Configuration HOW-TO

    Table of Contents
    + +

    +Quick Start
    +

    +What is a Realm?
    +Configuring a Realm
    +
    +Common Features
    +
    +Digested Passwords
    +Example Application
    +Manager Application
    +Logging Within Realms
    +
    + +Standard Realm Implementations
    +
    +JDBCRealm
    +DataSourceRealm
    +JNDIRealm
    +MemoryRealm
    +JAASRealm
    +
    +

    + +
    Quick Start
    + +

    This document describes how to configure Tomcat to support container +managed security, by connecting to an existing "database" of usernames, +passwords, and user roles. You only need to care about this if you are using +a web application that includes one or more +<security-constraint> elements, and a +<login-config> element defining how users are required +to authenticate themselves. If you are not utilizing these features, you can +safely skip this document.

    + +

    For fundamental background information about container managed security, +see the Servlet +Specification (Version 2.4), Section 12.

    + +

    For information about utilizing the Single Sign On feature of +Tomcat 6 (allowing a user to authenticate themselves once across the entire +set of web applications associated with a virtual host), see +here.

    + +
    Overview
    + + +
    What is a Realm?
    + +

    A Realm is a "database" of usernames and passwords that +identify valid users of a web application (or set of web applications), plus +an enumeration of the list of roles associated with each valid user. +You can think of roles as similar to groups in Unix-like operating +systems, because access to specific web application resources is granted to +all users possessing a particular role (rather than enumerating the list of +associated usernames). A particular user can have any number of roles +associated with their username.

    + +

    Although the Servlet Specification describes a portable mechanism for +applications to declare their security requirements (in the +web.xml deployment descriptor), there is no portable API +defining the interface between a servlet container and the associated user +and role information. In many cases, however, it is desireable to "connect" +a servlet container to some existing authentication database or mechanism +that already exists in the production environment. Therefore, Tomcat 6 +defines a Java interface (org.apache.catalina.Realm) that +can be implemented by "plug in" components to establish this connection. +Five standard plug-ins are provided, supporting connections to various +sources of authentication information:

    +
      +
    • JDBCRealm - Accesses authentication information + stored in a relational database, accessed via a JDBC driver.
    • +
    • DataSourceRealm - Accesses authentication + information stored in a relational database, accessed via a named JNDI + JDBC DataSource.
    • +
    • JNDIRealm - Accesses authentication information + stored in an LDAP based directory server, accessed via a JNDI provider. +
    • +
    • MemoryRealm - Accesses authentication + information stored in an in-memory object collection, which is initialized + from an XML document (conf/tomcat-users.xml).
    • +
    • JAASRealm - Accesses authentication information + through the Java Authentication & Authorization Service (JAAS) + framework.
    • +
    + +

    It is also possible to write your own Realm implementation, +and integrate it with Tomcat 6. To do so, you need to: +

      +
    • Implement org.apache.catalina.Realm,
    • +
    • Place your compiled realm in $CATALINA_HOME/server/lib,
    • +
    • Declare your realm as described in the "Configuring a Realm" section below,
    • +
    • Declare your realm to the MBeans Descriptor.
    • +
    +

    + +
    + + +
    Configuring a Realm
    + +

    Before getting into the details of the standard Realm implementations, it is +important to understand, in general terms, how a Realm is configured. In +general, you will be adding an XML element to your conf/server.xml +configuration file, that looks something like this:

    + +
    +<Realm className="... class name for this implementation"
    +       ... other attributes for this implementation .../>
    +
    + +

    The <Realm> element can be nested inside any one of +of the following Container elements. The location of the +Realm element has a direct impact on the "scope" of that Realm +(i.e. which web applications will share the same authentication information): +

    +
      +
    • Inside an <Engine> element - This Realm will be shared + across ALL web applications on ALL virtual hosts, UNLESS it is overridden + by a Realm element nested inside a subordinate <Host> + or <Context> element.
    • +
    • Inside a <Host> element - This Realm will be shared across + ALL web applications for THIS virtual host, UNLESS it is overridden + by a Realm element nested inside a subordinate <Context> + element.
    • +
    • Inside a <Context> element - This Realm will be used ONLY + for THIS web application.
    • +
    + + +
    + + +
    Common Features
    + + +
    Digested Passwords
    + +

    For each of the standard Realm implementations, the +user's password (by default) is stored in clear text. In many +environments, this is undesireable because casual observers of the +authentication data can collect enough information to log on +successfully, and impersonate other users. To avoid this problem, the +standard implementations support the concept of digesting +user passwords. This allows the stored version of the passwords to be +encoded (in a form that is not easily reversible), but that the +Realm implementation can still utilize for +authentication.

    + +

    When a standard realm authenticates by retrieving the stored +password and comparing it with the value presented by the user, you +can select digested passwords by specifying the digest +attribute on your <Realm> element. The value for +this attribute must be one of the digest algorithms supported by the +java.security.MessageDigest class (SHA, MD2, or MD5). +When you select this option, the contents of the password that is +stored in the Realm must be the cleartext version of the +password, as digested by the specified algorithm.

    + +

    When the authenticate() method of the Realm is called, the +(cleartext) password specified by the user is itself digested by the same +algorithm, and the result is compared with the value returned by the +Realm. An equal match implies that the cleartext version of the +original password is the same as the one presented by the user, so that this +user should be authorized.

    + +

    To calculate the digested value of a cleartext password, two convenience +techniques are supported:

    +
      +
    • If you are writing an application that needs to calculate digested + passwords dynamically, call the static Digest() method of the + org.apache.catalina.realm.RealmBase class, passing the + cleartext password and the digest algorithm name as arguments. This + method will return the digested password.
    • +
    • If you want to execute a command line utility to calculate the digested + password, simply execute +
      +java org.apache.catalina.realm.RealmBase \
      +    -a {algorithm} {cleartext-password}
      +
      + and the digested version of this cleartext password will be returned to + standard output.
    • +
    + +

    If using digested passwords with DIGEST authentication, the cleartext used + to generate the digest is different. In the examples above + {cleartext-password} must be replaced with + {username}:{realm}:{cleartext-password}. For example, in a + development environment this might take the form + testUser:localhost:8080:testPassword.

    + +

    To use either of the above techniques, the +$CATALINA_HOME/lib/catalina.jar and +$CATALINA_HOME/bin/tomcat-juli.jar files will need to be +on your class path to make the RealmBase class available. +

    + +

    Non-ASCII usernames and/or passwords are supported using +

    java org.apache.catalina.realm.RealmBase \
    +    -a {algorithm} -e {encoding} {input}
    +
    +but care is required to ensure that the non-ASCII input is +correctly passed to the digester. +The digester returns {input}:{digest}. If the input appears +corrupted in the return, the digest will be invalid.

    + +
    + + + +
    Example Application
    + +

    The example application shipped with Tomcat 6 includes an area that is +protected by a security constraint, utilizing form-based login. To access it, +point your browser at +http://localhost:8080/examples/jsp/security/protected/ +and log on with one of the usernames and passwords described for the default +MemoryRealm.

    + +
    + + +
    Manager Application
    + +

    If you wish to use the Manager Application +to deploy and undeploy applications in a running Tomcat 6 installation, you +MUST add the "manager" role to at least one username in your selected Realm +implementation. This is because the manager web application itself uses a +security constraint that requires role "manager" to access ANY request URI +within that application.

    + +

    For security reasons, no username in the default Realm (i.e. using +conf/tomcat-users.xml is assigned the "manager" role. Therfore, +no one will be able to utilize the features of this application until the +Tomcat administrator specifically assigns this role to one or more users.

    + +
    + +
    Realm Logging
    + +

    Debugging and exception messages logged by a Realm will + be recorded by the logging configuration associated with the container + for the realm: its surrounding Context, + Host, or + Engine.

    + +
    + +
    Standard Realm Implementations
    + +
    JDBCRealm
    + +

    Introduction

    + +

    JDBCRealm is an implementation of the Tomcat 6 +Realm interface that looks up users in a relational database +accessed via a JDBC driver. There is substantial configuration flexibility +that lets you adapt to existing table and column names, as long as your +database structure conforms to the following requirements:

    +
      +
    • There must be a table, referenced below as the users table, + that contains one row for every valid user that this Realm + should recognize.
    • +
    • The users table must contain at least two columns (it may + contain more if your existing applications required it): +
        +
      • Username to be recognized by Tomcat when the user logs in.
      • +
      • Password to be recognized by Tomcat when the user logs in. + This value may in cleartext or digested - see below for more + information.
      • +
    • +
    • There must be a table, referenced below as the user roles table, + that contains one row for every valid role that is assigned to a + particular user. It is legal for a user to have zero, one, or more than + one valid role.
    • +
    • The user roles table must contain at least two columns (it may + contain more if your existing applications required it): +
        +
      • Username to be recognized by Tomcat (same value as is specified + in the users table).
      • +
      • Role name of a valid role associated with this user.
      • +
    • +
    + +

    Quick Start

    + +

    To set up Tomcat to use JDBCRealm, you will need to follow these steps:

    +
      +
    1. If you have not yet done so, create tables and columns in your database + that conform to the requirements described above.
    2. +
    3. Configure a database username and password for use by Tomcat, that has + at least read only access to the tables described above. (Tomcat will + never attempt to write to these tables.)
    4. +
    5. Place a copy of the JDBC driver you will be using inside the + $CATALINA_HOME/lib directory. + Note that only JAR files are recognized!
    6. +
    7. Set up a <Realm> element, as described below, in your + $CATALINA_HOME/conf/server.xml file.
    8. +
    9. Restart Tomcat 6 if it is already running.
    10. +
    + +

    Realm Element Attributes

    + +

    To configure JDBCRealm, you will create a <Realm> +element and nest it in your $CATALINA_HOME/conf/server.xml file, +as described above. The following +attributes are supported by this implementation:

    + +
    AttributeDescription
    className +

    The fully qualified Java class name of this Realm implementation. + You MUST specify the value + "org.apache.catalina.realm.JDBCRealm" here.

    +
    connectionName +

    The database username used to establish a JDBC connection.

    +
    connectionPassword +

    The database password used to establish a JDBC connection.

    +
    connectionURL +

    The database URL used to establish a JDBC connection.

    +
    digest +

    The digest algorithm used to store passwords in non-plaintext formats. + Valid values are those accepted for the algorithm name by the + java.security.MessageDigest class. See + Digested Passwords for more + information. If not specified, passwords are stored in clear text.

    +
    driverName +

    The fully qualified Java class name of the JDBC driver to be used. + Consult the documentation for your JDBC driver for the appropriate + value.

    +
    roleNameCol +

    The name of the column, in the user roles table, that + contains the name of a role assigned to this user.

    +
    userCredCol +

    The name of the column, in the users table, that contains + the password for this user (either in clear text, or digested if the + digest attribute is set).

    +
    userNameCol +

    The name of the column, in the users and user roles + tables, that contains the username of this user.

    +
    userRoleTable +

    The name of the table that contains one row for each role + assigned to a particular username. This table must include at + least the columns named by the userNameCol and + roleNameCol attributes.

    +
    userTable +

    The name of the table that contains one row for each username + to be recognized by Tomcat. This table must include at least the columns + named by the userNameCol and userCredCol + attributes.

    +
    + +

    Example

    + +

    An example SQL script to create the needed tables might look something +like this (adapt the syntax as required for your particular database):

    +
    +create table users (
    +  user_name         varchar(15) not null primary key,
    +  user_pass         varchar(15) not null
    +);
    +
    +create table user_roles (
    +  user_name         varchar(15) not null,
    +  role_name         varchar(15) not null,
    +  primary key (user_name, role_name)
    +);
    +
    + +

    Example Realm elements are included (commented out) in the +default $CATALINA_HOME/conf/server.xml file. Here's an example +for using a MySQL database called "authority", configured with the tables +described above, and accessed with username "dbuser" and password "dbpass":

    +
    +<Realm className="org.apache.catalina.realm.JDBCRealm" debug="99"
    +      driverName="org.gjt.mm.mysql.Driver"
    +   connectionURL="jdbc:mysql://localhost/authority?user=dbuser&amp;password=dbpass"
    +       userTable="users" userNameCol="user_name" userCredCol="user_pass"
    +   userRoleTable="user_roles" roleNameCol="role_name"/>
    +
    + +

    Additional Notes

    + +

    JDBCRealm operates according to the following rules:

    +
      +
    • When a user attempts to access a protected resource for the first time, + Tomcat 6 will call the authenticate() method of this + Realm. Thus, any changes you have made to the database + directly (new users, changed passwords or roles, etc.) will be immediately + reflected.
    • +
    • Once a user has been authenticated, the user (and his or her associated + roles) are cached within Tomcat for the duration of the user's login. + (For FORM-based authentication, that means until the session times out or + is invalidated; for BASIC authentication, that means until the user + closes their browser). The cached user is not saved and + restored across sessions serialisations. Any changes to the database + information for an already authenticated user will not be + reflected until the next time that user logs on again.
    • +
    • Administering the information in the users and user roles + table is the responsibility of your own applications. Tomcat does not + provide any built-in capabilities to maintain users and roles.
    • +
    + +
    + + +
    DataSourceRealm
    + +

    Introduction

    + +

    DataSourceRealm is an implementation of the Tomcat 6 +Realm interface that looks up users in a relational database +accessed via a JNDI named JDBC DataSource. There is substantial configuration +flexibility that lets you adapt to existing table and column names, as long +as your database structure conforms to the following requirements:

    +
      +
    • There must be a table, referenced below as the users table, + that contains one row for every valid user that this Realm + should recognize.
    • +
    • The users table must contain at least two columns (it may + contain more if your existing applications required it): +
        +
      • Username to be recognized by Tomcat when the user logs in.
      • +
      • Password to be recognized by Tomcat when the user logs in. + This value may in cleartext or digested - see below for more + information.
      • +
    • +
    • There must be a table, referenced below as the user roles table, + that contains one row for every valid role that is assigned to a + particular user. It is legal for a user to have zero, one, or more than + one valid role.
    • +
    • The user roles table must contain at least two columns (it may + contain more if your existing applications required it): +
        +
      • Username to be recognized by Tomcat (same value as is specified + in the users table).
      • +
      • Role name of a valid role associated with this user.
      • +
    • +
    + +

    Quick Start

    + +

    To set up Tomcat to use DataSourceRealm, you will need to follow these steps:

    +
      +
    1. If you have not yet done so, create tables and columns in your database + that conform to the requirements described above.
    2. +
    3. Configure a database username and password for use by Tomcat, that has + at least read only access to the tables described above. (Tomcat will + never attempt to write to these tables.)
    4. +
    5. Configure a JNDI named JDBC DataSource for your database. Refer to the + JNDI DataSource Example HOW-TO + for information on how to configure a JNDI named JDBC DataSource.
    6. +
    7. Set up a <Realm> element, as described below, in your + $CATALINA_HOME/conf/server.xml file.
    8. +
    9. Restart Tomcat 6 if it is already running.
    10. +
    + +

    Realm Element Attributes

    + +

    To configure DataSourceRealm, you will create a <Realm> +element and nest it in your $CATALINA_HOME/conf/server.xml file, +as described above. The following +attributes are supported by this implementation:

    + +
    AttributeDescription
    className +

    The fully qualified Java class name of this Realm implementation. + You MUST specify the value + "org.apache.catalina.realm.DataSourceRealm" here.

    +
    dataSourceName +

    The JNDI named JDBC DataSource for your database. If the DataSource is + local to the context, the name is relative to java:/comp/env, + and otherwise the name should match the name used to define the global + DataSource.

    +
    digest +

    The digest algorithm used to store passwords in non-plaintext formats. + Valid values are those accepted for the algorithm name by the + java.security.MessageDigest class. See + Digested Passwords for more + information. If not specified, passwords are stored in clear text.

    +
    localDataSource +

    When the realm is nested inside a Context element, this allows the + realm to use a DataSource defined for the Context rather than a global + DataSource. If not specified, the default is false: use a + global DataSource.

    +
    roleNameCol +

    The name of the column, in the user roles table, that + contains the name of a role assigned to this user.

    +
    userCredCol +

    The name of the column, in the users table, that contains + the password for this user (either in clear text, or digested if the + digest attribute is set).

    +
    userNameCol +

    The name of the column, in the users and user roles + tables, that contains the username of this user.

    +
    userRoleTable +

    The name of the table that contains one row for each role + assigned to a particular username. This table must include at + least the columns named by the userNameCol and + roleNameCol attributes.

    +
    userTable +

    The name of the table that contains one row for each username + to be recognized by Tomcat. This table must include at least the columns + named by the userNameCol and userCredCol + attributes.

    +
    + +

    Example

    + +

    An example SQL script to create the needed tables might look something +like this (adapt the syntax as required for your particular database):

    +
    +create table users (
    +  user_name         varchar(15) not null primary key,
    +  user_pass         varchar(15) not null
    +);
    +
    +create table user_roles (
    +  user_name         varchar(15) not null,
    +  role_name         varchar(15) not null,
    +  primary key (user_name, role_name)
    +);
    +
    + +

    Here is an example for using a MySQL database called "authority", configured +with the tables described above, and accessed with the JNDI JDBC DataSource with +name "java:/comp/env/jdbc/authority".

    +
    +<Realm className="org.apache.catalina.realm.DataSourceRealm" debug="99"
    +   dataSourceName="jdbc/authority"
    +   userTable="users" userNameCol="user_name" userCredCol="user_pass"
    +   userRoleTable="user_roles" roleNameCol="role_name"/>
    +
    + +

    Additional Notes

    + +

    DataSourceRealm operates according to the following rules:

    +
      +
    • When a user attempts to access a protected resource for the first time, + Tomcat 6 will call the authenticate() method of this + Realm. Thus, any changes you have made to the database + directly (new users, changed passwords or roles, etc.) will be immediately + reflected.
    • +
    • Once a user has been authenticated, the user (and his or her associated + roles) are cached within Tomcat for the duration of the user's login. + (For FORM-based authentication, that means until the session times out or + is invalidated; for BASIC authentication, that means until the user + closes their browser). The cached user is not saved and + restored across sessions serialisations. Any changes to the database + information for an already authenticated user will not be + reflected until the next time that user logs on again.
    • +
    • Administering the information in the users and user roles + table is the responsibility of your own applications. Tomcat does not + provide any built-in capabilities to maintain users and roles.
    • +
    + +
    + + +
    JNDIRealm
    + +

    Introduction

    + +

    JNDIRealm is an implementation of the Tomcat 6 +Realm interface that looks up users in an LDAP directory +server accessed by a JNDI provider (typically, the standard LDAP +provider that is available with the JNDI API classes). The realm +supports a variety of approaches to using a directory for +authentication.

    + +

    Connecting to the directory

    + +

    The realm's connection to the directory is defined by the +connectionURL configuration attribute. This is a URL +whose format is defined by the JNDI provider. It is usually an LDAP +URL that specifies the domain name of the directory server to connect +to, and optionally the port number and distinguished name (DN) of the +required root naming context.

    + +

    If you have more than one provider you can configure an +alternateURL. If a socket connection can not be +made to the provider at the connectionURL an +attempt will be made to use the alternateURL.

    + +

    When making a connection in order to search the directory and +retrieve user and role information, the realm authenticates itself to +the directory with the username and password specified by the +connectionName and +connectionPassword properties. If these properties +are not specified the connection is anonymous. This is sufficient in +many cases. +

    + + +

    Selecting the user's directory entry

    + +

    Each user that can be authenticated must be represented in the +directory by an individual entry that corresponds to an element in the +initial DirContext defined by the +connectionURL attribute. This user entry must have an +attribute containing the username that is presented for +authentication.

    + +

    Often the distinguished name of the user's entry contains the +username presented for authentication but is otherwise the same for +all users. In this case the userPattern attribute may +be used to specify the DN, with "{0}" marking where +the username should be substituted.

    + +

    Otherwise the realm must search the directory to find a unique entry +containing the username. The following attributes configure this +search: + +

      +
    • userBase - the entry that is the base of + the subtree containing users. If not specified, the search + base is the top-level context.
    • + +
    • userSubtree - the search scope. Set to + true if you wish to search the entire subtree + rooted at the userBase entry. The default value + of false requests a single-level search + including only the top level.
    • + +
    • userSearch - pattern specifying the LDAP + search filter to use after substitution of the username.
    • + +
    +

    + + +

    Authenticating the user

    + +
      +
    • +

      Bind mode

      + +

      By default the realm authenticates a user by binding to +the directory with the DN of the entry for that user and the password +presented by the user. If this simple bind succeeds the user is considered to +be authenticated.

      + +

      For security reasons a directory may store a digest of the user's +password rather than the clear text version (see Digested Passwords for more information). In that case, +as part of the simple bind operation the directory automatically +computes the correct digest of the plaintext password presented by the +user before validating it against the stored value. In bind mode, +therefore, the realm is not involved in digest processing. The +digest attribute is not used, and will be ignored if +set.

      +
    • + +
    • +

      Comparison mode

      +

      Alternatively, the realm may retrieve the stored +password from the directory and compare it explicitly with the value +presented by the user. This mode is configured by setting the +userPassword attribute to the name of a directory +attribute in the user's entry that contains the password.

      + +

      Comparison mode has some disadvantages. First, the +connectionName and +connectionPassword attributes must be configured to +allow the realm to read users' passwords in the directory. For +security reasons this is generally undesirable; indeed many directory +implementations will not allow even the directory manager to read +these passwords. In addition, the realm must handle password digests +itself, including variations in the algorithms used and ways of +representing password hashes in the directory. However, the realm may +sometimes need access to the stored password, for example to support +HTTP Digest Access Authentication (RFC 2069). (Note that HTTP digest +authentication is different from the storage of password digests in +the repository for user information as discussed above). +

      +
    • +
    + +

    Assigning roles to the user

    + +

    The directory realm supports two approaches to the representation +of roles in the directory:

    + +
      +
    • +

      Roles as explicit directory entries

      + +

      Roles may be represented by explicit directory entries. A role +entry is usually an LDAP group entry with one attribute +containing the name of the role and another whose values are the +distinguished names or usernames of the users in that role. The +following attributes configure a directory search to +find the names of roles associated with the authenticated user:

      + +
        +
      • roleBase - the base entry for the role search. + If not specified, the search base is the top-level directory + context.
      • + +
      • roleSubtree - the search + scope. Set to true if you wish to search the entire + subtree rooted at the roleBase entry. The default + value of false requests a single-level search + including the top level only.
      • + +
      • roleSearch - the LDAP search filter for + selecting role entries. It optionally includes pattern + replacements "{0}" for the distinguished name and/or "{1}" for the + username of the authenticated user.
      • + +
      • roleName - the attribute in a role entry + containing the name of that role.
      • + +
      + +
    • +
    + +
      +
    • +

      Roles as an attribute of the user entry

      + +

      Role names may also be held as the values of an attribute in the +user's directory entry. Use userRoleName to specify +the name of this attribute.

      + +
    • +
    +

    A combination of both approaches to role representation may be used.

    + +

    Quick Start

    + +

    To set up Tomcat to use JNDIRealm, you will need to follow these steps:

    +
      +
    1. Make sure your directory server is configured with a schema that matches + the requirements listed above.
    2. +
    3. If required, configure a username and password for use by Tomcat, that has + read only access to the information described above. (Tomcat will + never attempt to modify this information.)
    4. +
    5. Place a copy of the JNDI driver you will be using (typically + ldap.jar available with JNDI) inside the + $CATALINA_HOME/lib directory.
    6. +
    7. Set up a <Realm> element, as described below, in your + $CATALINA_HOME/conf/server.xml file.
    8. +
    9. Restart Tomcat 6 if it is already running.
    10. +
    + +

    Realm Element Attributes

    + +

    To configure JNDIRealm, you will create a <Realm> +element and nest it in your $CATALINA_HOME/conf/server.xml file, +as described above. The following +attributes are supported by this implementation:

    + +
    AttributeDescription
    className +

    The fully qualified Java class name of this Realm implementation. + You MUST specify the value + "org.apache.catalina.realm.JNDIRealm" here.

    +
    connectionName +

    The directory username to use when establishing a + connection to the directory for LDAP search operations. If not + specified an anonymous connection is made, which is often + sufficient unless you specify the userPassword + property.

    +
    connectionPassword +

    The directory password to use when establishing a + connection to the directory for LDAP search operations. If not + specified an anonymous connection is made, which is often + sufficient unless you specify the userPassword + property.

    +
    connectionURL +

    The connection URL to be passed to the JNDI driver when + establishing a connection to the directory.

    +
    contextFactory +

    The fully qualified Java class name of the JNDI context + factory to be used for this connection. By default, the standard + JNDI LDAP provider is used + (com.sun.jndi.ldap.LdapCtxFactory).

    +
    digest +

    The digest algorithm to apply to the plaintext password offered + by the user before comparing it with the value retrieved from the + directory. Valid values are those accepted for the algorithm name + by the java.security.MessageDigest class. See Digested Passwords for more + information. If not specified the plaintext password is assumed to + be retrieved. Not required unless userPassword is + specified

    +
    roleBase +

    The base directory entry for performing role searches. If + not specified, the top level element in the directory context + will be used.

    +
    roleName +

    The name of the attribute that contains role names in the + directory entries found by a role search. In addition you can + use the userRoleName property to specify the name + of an attribute, in the user's entry, containing additional + role names. If roleName is not specified a role + search does not take place, and roles are taken only from the + user's entry.

    +
    roleSearch +

    The LDAP filter expression used for performing role + searches, following the syntax supported by the + java.text.MessageFormat class. Use + {0} to substitute the distinguished name (DN) of + the user, and/or {1} to substitute the + username. If not specified a role search does not take place + and roles are taken only from the attribute in the user's + entry specified by the userRoleName property.

    +
    roleSubtree +

    Set to true if you want to search the entire + subtree of the element specified by the roleBase + property for role entries associated with the user. The + default value of false causes only the top level + to be searched.

    +
    userBase +

    The base element for user searches performed using the + userSearch expression. If not specified, the top + level element in the directory context will be used. Not used + if you are using the userPattern expression.

    +
    userPassword +

    Name of the attribute in the user's entry containing the + user's password. If you specify this value, JNDIRealm will + bind to the directory using the values specified by + connectionName and + connectionPassword properties, and retrieve the + corresponding attribute for comparison to the value specified + by the user being authenticated. If the digest + attribute is set, the specified digest algorithm is applied to + the password offered by the user before comparing it with the + value retrieved from the directory. If you do + not specify this value, JNDIRealm will + attempt a simple bind to the directory using the DN of the + user's entry and password specified by the user, with a + successful bind being interpreted as an authenticated + user.

    +
    userPattern +

    A pattern for the distinguished name (DN) of the user's + directory entry, following the syntax supported by the + java.text.MessageFormat class with + {0} marking where the actual username should be + inserted. You can use this property instead of + userSearch, userSubtree and + userBase when the distinguished name contains the + username and is otherwise the same for all users.

    +
    userRoleName +

    The name of an attribute in the user's directory entry + containing zero or more values for the names of roles assigned + to this user. In addition you can use the + roleName property to specify the name of an + attribute to be retrieved from individual role entries found + by searching the directory. If userRoleName is + not specified all the roles for a user derive from the role + search.

    +
    userSearch +

    The LDAP filter expression to use when searching for a + user's directory entry, with {0} marking where + the actual username should be inserted. Use this property + (along with the userBase and + userSubtree properties) instead of + userPattern to search the directory for the + user's entry.

    +
    userSubtree +

    Set to true if you want to search the entire + subtree of the element specified by the userBase + property for the user's entry. The default value of + false causes only the top level to be searched. + Not used if you are using the userPattern + expression.

    +
    + +

    Example

    + +

    Creation of the appropriate schema in your directory server is beyond the +scope of this document, because it is unique to each directory server +implementation. In the examples below, we will assume that you are using a +distribution of the OpenLDAP directory server (version 2.0.11 or later), which +can be downloaded from +http://www.openldap.org. Assume that +your slapd.conf file contains the following settings +(among others):

    +
    +database ldbm
    +suffix dc="mycompany",dc="com"
    +rootdn "cn=Manager,dc=mycompany,dc=com"
    +rootpw secret
    +
    + +

    We will assume for connectionURL that the directory +server runs on the same machine as Tomcat. See http://java.sun.com/products/jndi/docs.html +for more information about configuring and using the JNDI LDAP +provider.

    + +

    Next, assume that this directory server has been populated with elements +as shown below (in LDIF format):

    + +
    +
    +# Define top-level entry
    +dn: dc=mycompany,dc=com
    +objectClass: dcObject
    +dc:mycompany
    +
    +# Define an entry to contain people
    +# searches for users are based on this entry
    +dn: ou=people,dc=mycompany,dc=com
    +objectClass: organizationalUnit
    +ou: people
    +
    +# Define a user entry for Janet Jones
    +dn: uid=jjones,ou=people,dc=mycompany,dc=com
    +objectClass: inetOrgPerson
    +uid: jjones
    +sn: jones
    +cn: janet jones
    +mail: j.jones@mycompany.com
    +userPassword: janet
    +
    +# Define a user entry for Fred Bloggs
    +dn: uid=fbloggs,ou=people,dc=mycompany,dc=com
    +objectClass: inetOrgPerson
    +uid: fbloggs
    +sn: bloggs
    +cn: fred bloggs
    +mail: f.bloggs@mycompany.com
    +userPassword: fred
    +
    +# Define an entry to contain LDAP groups
    +# searches for roles are based on this entry
    +dn: ou=groups,dc=mycompany,dc=com
    +objectClass: organizationalUnit
    +ou: groups
    +
    +# Define an entry for the "tomcat" role
    +dn: cn=tomcat,ou=groups,dc=mycompany,dc=com
    +objectClass: groupOfUniqueNames
    +cn: tomcat
    +uniqueMember: uid=jjones,ou=people,dc=mycompany,dc=com
    +uniqueMember: uid=fbloggs,ou=people,dc=mycompany,dc=com
    +
    +# Define an entry for the "role1" role
    +dn: cn=role1,ou=groups,dc=mycompany,dc=com
    +objectClass: groupOfUniqueNames
    +cn: role1
    +uniqueMember: uid=fbloggs,ou=people,dc=mycompany,dc=com
    +
    + +

    An example Realm element for the OpenLDAP directory +server configured as described above might look like this, assuming +that users use their uid (e.g. jjones) to login to the +application and that an anonymous connection is sufficient to search +the directory and retrieve role information:

    + +
    +<Realm   className="org.apache.catalina.realm.JNDIRealm" debug="99"
    +     connectionURL="ldap://localhost:389"
    +       userPattern="uid={0},ou=people,dc=mycompany,dc=com"
    +          roleBase="ou=groups,dc=mycompany,dc=com"
    +          roleName="cn"
    +        roleSearch="(uniqueMember={0})"
    +/>
    +
    + +

    With this configuration, the realm will determine the user's +distinguished name by substituting the username into the +userPattern, authenticate by binding to the directory +with this DN and the password received from the user, and search the +directory to find the user's roles.

    + +

    Now suppose that users are expected to enter their email address +rather than their userid when logging in. In this case the realm must +search the directory for the user's entry. (A search is also necessary +when user entries are held in multiple subtrees corresponding perhaps +to different organizational units or company locations).

    + +

    Further, suppose that in addition to the group entries you want to +use an attribute of the user's entry to hold roles. Now the entry for +Janet Jones might read as follows:

    + +
    +dn: uid=jjones,ou=people,dc=mycompany,dc=com
    +objectClass: inetOrgPerson
    +uid: jjones
    +sn: jones
    +cn: janet jones
    +mail: j.jones@mycompany.com
    +memberOf: role2
    +memberOf: role3
    +userPassword: janet
    +
    + +

    This realm configuration would satisfy the new requirements:

    + +
    +<Realm   className="org.apache.catalina.realm.JNDIRealm" debug="99"
    +     connectionURL="ldap://localhost:389"
    +          userBase="ou=people,dc=mycompany,dc=com"
    +        userSearch="(mail={0})"
    +      userRoleName="memberOf"
    +          roleBase="ou=groups,dc=mycompany,dc=com"
    +          roleName="cn"
    +        roleSearch="(uniqueMember={0})"
    +/>
    +
    + +

    Now when Janet Jones logs in as "j.jones@mycompany.com", the realm +searches the directory for a unique entry with that value as its mail +attribute and attempts to bind to the directory as +uid=jjones,ou=people,dc=mycompany,dc=com with the given +password. If authentication succeeds, she is assigned three roles: +"role2" and "role3", the values of the "memberOf" attribute in her +directory entry, and "tomcat", the value of the "cn" attribute in the +only group entry of which she is a member.

    + +

    Finally, to authenticate the user by retrieving +the password from the directory and making a local comparison in the +realm, you might use a realm configuration like this:

    + +
    +<Realm   className="org.apache.catalina.realm.JNDIRealm" debug="99"
    +    connectionName="cn=Manager,dc=mycompany,dc=com"
    +connectionPassword="secret"
    +     connectionURL="ldap://localhost:389"
    +      userPassword="userPassword"
    +       userPattern="uid={0},ou=people,dc=mycompany,dc=com"
    +          roleBase="ou=groups,dc=mycompany,dc=com"
    +          roleName="cn"
    +        roleSearch="(uniqueMember={0})"
    +/>
    +
    + +

    However, as discussed above, the default bind mode for +authentication is usually to be preferred.

    + +

    Additional Notes

    + +

    JNDIRealm operates according to the following rules:

    +
      +
    • When a user attempts to access a protected resource for the first time, + Tomcat 6 will call the authenticate() method of this + Realm. Thus, any changes you have made to the directory + (new users, changed passwords or roles, etc.) will be immediately + reflected.
    • +
    • Once a user has been authenticated, the user (and his or her associated + roles) are cached within Tomcat for the duration of the user's login. + (For FORM-based authentication, that means until the session times out or + is invalidated; for BASIC authentication, that means until the user + closes their browser). The cached user is not saved and + restored across sessions serialisations. Any changes to the directory + information for an already authenticated user will not be + reflected until the next time that user logs on again.
    • +
    • Administering the information in the directory server + is the responsibility of your own applications. Tomcat does not + provide any built-in capabilities to maintain users and roles.
    • +
    + +
    + + +
    MemoryRealm
    + +

    Introduction

    + +

    MemoryRealm is a simple demonstration implementation of the +Tomcat 6 Realm interface. It is not designed for production use. +At startup time, MemoryRealm loads information about all users, and their +corresponding roles, from an XML document (by default, this document is loaded from $CATALINA_HOME/conf/tomcat-users.xml). Changes to the data +in this file are not recognized until Tomcat is restarted.

    + +

    Realm Element Attributes

    + +

    To configure MemoryRealm, you will create a <Realm> +element and nest it in your $CATALINA_HOME/conf/server.xml file, +as described above. The following +attributes are supported by this implementation:

    + +
    AttributeDescription
    className +

    The fully qualified Java class name of this Realm implementation. + You MUST specify the value + "org.apache.catalina.realm.MemoryRealm" here.

    +
    digest +

    The digest algorithm used to store passwords in non-plaintext formats. + Valid values are those accepted for the algorithm name by the + java.security.MessageDigest class. See + Digested Passwords for more + information. If not specified, passwords are stored in clear text.

    +
    pathname +

    Absolute or relative (to $CATALINA_HOME) pathname of the XML document + containing our valid usernames, passwords, and roles. See below for more + information on the format of this file. If not specified, the value + conf/tomcat-users.xml is used.

    +
    + +

    User File Format

    + +

    The users file (by default, conf/tomcat-users.xml must be an +XML document, with a root element <tomcat-users>. Nested +inside the root element will be a <user> element for each +valid user, consisting of the following attributes:

    +
      +
    • name - Username this user must log on with.
    • +
    • password - Password this user must log on with (in + clear text if the digest attribute was not set on the + <Realm> element, or digested appropriately as + described here otherwise).
    • +
    • roles - Comma-delimited list of the role names + associated with this user.
    • +
    + +

    Example

    + +

    The default installation of Tomcat 6 is configured with a MemoryRealm +nested inside the <Engine> element, so that it applies +to all virtual hosts and web applications. The default contents of the +conf/tomcat-users.xml file is:

    +
    +<tomcat-users>
    +  <user name="tomcat" password="tomcat" roles="tomcat" />
    +  <user name="role1"  password="tomcat" roles="role1"  />
    +  <user name="both"   password="tomcat" roles="tomcat,role1" />
    +</tomcat-users>
    +
    + +

    Additional Notes

    + +

    MemoryRealm operates according to the following rules:

    +
      +
    • When Tomcat first starts up, it loads all defined users and their + associated information from the users file. Changes to the data in + this file will not be recognized until Tomcat is + restarted.
    • +
    • When a user attempts to access a protected resource for the first time, + Tomcat 6 will call the authenticate() method of this + Realm.
    • +
    • Once a user has been authenticated, the user (and his or her associated + roles) are cached within Tomcat for the duration of the user's login. + (For FORM-based authentication, that means until the session times out or + is invalidated; for BASIC authentication, that means until the user + closes their browser). The cached user is not saved and + restored across sessions serialisations.
    • +
    • Administering the information in the users file is the responsibility + of your application. Tomcat does not + provide any built-in capabilities to maintain users and roles.
    • +
    + + +
    + + +
    JAASRealm
    + +

    Introduction

    + +

    JAASRealm is an implementation of the Tomcat +4 Realm interface that authenticates users through the Java +Authentication & Authorization Service (JAAS) framework, a Java +package that is available as an optional package in Java 2 SDK 1.3 and +is fully integrated as of SDK 1.4 .

    +

    Using JAASRealm gives the developer the ability to combine +practically any conceivable security realm with Tomcat's CMA.

    +

    JAASRealm is prototype for Tomcat of the proposed JAAS-based +J2EE authentication framework for J2EE v1.4, based on the JCP Specification +Request 196 to enhance container-managed security and promote +'pluggable' authentication mechanisms whose implementations would be +container-independent. +

    +

    Based on the JAAS login module and principal (see javax.security.auth.spi.LoginModule +and javax.security.Principal), you can develop your own +security mechanism or wrap another third-party mechanism for +integration with the CMA as implemented by Tomcat. +

    + +

    Quick Start

    +

    To set up Tomcat to use JAASRealm with your own JAAS login module, + you will need to follow these steps:

    +
      +
    1. Write your own LoginModule, User and Role classes based +on JAAS (see +the +JAAS Authentication Tutorial and +the JAAS Login Module +Developer's Guide) to be managed by the JAAS Login +Context (javax.security.auth.login.LoginContext) +When developing your LoginModule, note that JAASRealm's built-in CallbackHandler ++only recognizes the NameCallback and PasswordCallback at present. +
    2. +
    3. Although not specified in JAAS, you should create +seperate classes to distinguish between users and roles, extending javax.security.Principal, +so that Tomcat can tell which Principals returned from your login +module are users and which are roles (see org.apache.catalina.realm.JAASRealm). +Regardless, the first Principal returned is always treated as the user Principal. +
    4. +
    5. Place the compiled classes on Tomcat's classpath +
    6. +
    7. Set up a login.config file for Java (see JAAS +LoginConfig file) and tell Tomcat where to find it by specifying +its location to the JVM, for instance by setting the environment +variable: JAVA_OPTS=-DJAVA_OPTS=-Djava.security.auth.login.config==$CATALINA_HOME/conf/jaas.config
    8. + +
    9. Configure your security-constraints in your web.xml for +the resources you want to protect
    10. +
    11. Configure the JAASRealm module in your server.xml
    12. +
    13. Restart Tomcat 6 if it is already running.
    14. +
    +

    Realm Element Attributes

    +

    To configure JAASRealm as for step 6 above, you create +a <Realm> element and nest it in your +$CATALINA_HOME/conf/server.xml +file within your <Engine> node. The following attributes +are supported by this implementation:

    + +
    AttributeDescription
    className +

    The fully qualified Java class name of this Realm implementation. + You MUST specify the value + "org.apache.catalina.realm.JAASRealm" here.

    +
    appName +

    The name of the application as configured in your login configuration file + (JAAS LoginConfig).

    +
    userClassNames +

    A comma-seperated list of the names of the classes that you have made + for your user Principals.

    +
    roleClassNames +

    A comma-seperated list of the names of the classes that you have made + for your role Principals.

    +
    useContextClassLoader +

    Instructs JAASRealm to use the context class loader for loading the user-specified + LoginModule class and associated Principal classes. The + default value is true, which is backwards-compatible with the way + Tomcat 4 works. To load classes using the container's classloader, specify + false.

    +
    + +

    Example

    + +

    Here is an example of how your server.xml snippet should look.

    + +
    +<Realm className="org.apache.catalina.realm.JAASRealm"                 
    +                appName="MyFooRealm"       
    +    userClassNames="org.foobar.realm.FooUser"       
    +     roleClassNames="org.foobar.realm.FooRole" 
    +                      debug="99"/>
    +
    + +

    It is the responsibility of your login module to create and save User and +Role objects representing Principals for the user +(javax.security.auth.Subject). If your login module doesn't +create a user object but also doesn't throw a login exception, then the +Tomcat CMA will break and you will be left at the +http://localhost:8080/myapp/j_security_check URI or at some other +unspecified location.

    + +

    The flexibility of the JAAS approach is two-fold:

    +
      +
    • you can carry out whatever processing you require behind +the scenes in your own login module.
    • +
    • you can plug in a completely different LoginModule by changing the configuration +and restarting the server, without any code changes to your application.
    • +
    + +

    Additional Notes

    +
      +
    • When a user attempts to access a protected resource for + the first time, Tomcat 6 will call the authenticate() + method of this Realm. Thus, any changes you have made in + the security mechanism directly (new users, changed passwords or + roles, etc.) will be immediately reflected.
    • +
    • Once a user has been authenticated, the user (and his or + her associated roles) are cached within Tomcat for the duration of + the user's login. For FORM-based authentication, that means until + the session times out or is invalidated; for BASIC authentication, + that means until the user closes their browser. Any changes to the + security information for an already authenticated user will not + be reflected until the next time that user logs on again.
    • +
    • As with other Realm implementations, digested passwords + are supported if the <Realm> element in server.xml + contains a digest attribute; JAASRealm's CallbackHandler + will digest the password prior to passing it back to the LoginModule
    • +
    + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/security-manager-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/security-manager-howto.html new file mode 100644 index 0000000..554f8f6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/security-manager-howto.html @@ -0,0 +1,358 @@ +Apache Tomcat 6.0 - Security Manager HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Security Manager HOW-TO

    Background
    + +

    The Java SecurityManager is what allows a web browser + to run an applet in its own sandbox to prevent untrusted code from + accessing files on the local file system, connecting to a host other + than the one the applet was loaded from, and so on. In the same way + the SecurityManager protects you from an untrusted applet running in + your browser, use of a SecurityManager while running Tomcat can protect + your server from trojan servlets, JSPs, JSP beans, and tag libraries. + Or even inadvertent mistakes.

    + +

    Imagine if someone who is authorized to publish JSPs on your site + inadvertently included the following in their JSP:

    +
    +<% System.exit(1); %>
    +
    + +

    Every time this JSP was executed by Tomcat, Tomcat would exit. + Using the Java SecurityManager is just one more line of defense a + system administrator can use to keep the server secure and reliable.

    + +

    WARNING - A security audit + have been conducted using the Tomcat 5 codebase. Most of the critical + package have been protected and a new security package protection mechanism + has been implemented. Still, make sure that you are satisfied with your SecurityManager + configuration before allowing untrusted users to publish web applications, + JSPs, servlets, beans, or tag libraries. However, running with a + SecurityManager is definitely better than running without one.

    + +
    Permissions
    + +

    Permission classes are used to define what Permissions a class loaded + by Tomcat will have. There are a number of Permission classes that are + a standard part of the JDK, and you can create your own Permission class + for use in your own web applications. Both techniques are used in + Tomcat 6.

    + + +
    Standard Permissions
    + +

    This is just a short summary of the standard system SecurityManager + Permission classes applicable to Tomcat. See + http://java.sun.com/security/ + for more information.

    + +
      +
    • java.util.PropertyPermission - Controls read/write + access to JVM properties such as java.home.
    • +
    • java.lang.RuntimePermission - Controls use of + some System/Runtime functions like exit() and + exec(). Also control the package access/definition.
    • +
    • java.io.FilePermission - Controls read/write/execute + access to files and directories.
    • +
    • java.net.SocketPermission - Controls use of + network sockets.
    • +
    • java.net.NetPermission - Controls use of + multicast network connections.
    • +
    • java.lang.reflect.ReflectPermission - Controls + use of reflection to do class introspection.
    • +
    • java.security.SecurityPermission - Controls access + to Security methods.
    • +
    • java.security.AllPermission - Allows access to all + permissions, just as if you were running Tomcat without a + SecurityManager.
    • +
    + +
    + + +
    Tomcat Custom Permissions
    + +

    Tomcat utilizes a custom permission class called + org.apache.naming.JndiPermission. This permission + controls read access to JNDI named file based resources. The permission + name is the JNDI name and there are no actions. A trailing "*" can be + used to do wild card matching for a JNDI named file resource when + granting permission. For example, you might include the following + in your policy file:

    +
    +permission  org.apache.naming.JndiPermission  "jndi://localhost/examples/*";
    +
    + +

    A Permission entry like this is generated dynamically for each web + application that is deployed, to allow it to read its own static resources + but disallow it from using file access to read any other files (unless + permissions for those files are explicitly granted).

    + +

    Also, Tomcat always dynamically creates the following file permission:

    +
      
    +permission java.io.FilePermission "** your application context**", "read";
    +
    +

    Where **your application context** equals the folder(or WAR file) under which + your application has been deployed.

    + +
    + + +
    Configuring Tomcat With A SecurityManager
    + +

    Policy File Format

    + +

    The security policies implemented by the Java SecurityManager are + configured in the $CATALINA_HOME/conf/catalina.policy file. + This file completely replaces the java.policy file present + in your JDK system directories. The catalina.policy file + can be edited by hand, or you can use the + policytool + application that comes with Java 1.2 or later.

    + +

    Entries in the catalina.policy file use the standard + java.policy file format, as follows:

    +
    +// Example policy file entry
    +
    +grant [signedBy <signer>,] [codeBase <code source>] {
    +  permission  <class>  [<name> [, <action list>]];
    +};
    +
    + +

    The signedBy and codeBase entries are + optional when granting permissions. Comment lines begin with "//" and + end at the end of the current line. The codeBase is in the + form of a URL, and for a file URL can use the ${java.home} + and ${catalina.home} properties (which are expanded out to + the directory paths defined for them by the JAVA_HOME and + CATALINA_HOME environment variables).

    + +

    The Default Policy File

    + +

    The default $CATALINA_HOME/conf/catalina.policy file + looks like this:

    +
    +// ============================================================================
    +// catalina.corepolicy - Security Policy Permissions for Tomcat 6
    +//
    +// This file contains a default set of security policies to be enforced (by the
    +// JVM) when Catalina is executed with the "-security" option.  In addition
    +// to the permissions granted here, the following additional permissions are
    +// granted to the codebase specific to each web application:
    +//
    +// * Read access to the document root directory
    +//
    +// $Id: security-manager-howto.xml 467215 2006-10-24 03:12:55Z markt $
    +// ============================================================================
    +
    +
    +// ========== SYSTEM CODE PERMISSIONS =========================================
    +
    +
    +// These permissions apply to javac
    +grant codeBase "file:${java.home}/lib/-" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to all shared system extensions
    +grant codeBase "file:${java.home}/jre/lib/ext/-" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to javac when ${java.home] points at $JAVA_HOME/jre
    +grant codeBase "file:${java.home}/../lib/-" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to all shared system extensions when
    +// ${java.home} points at $JAVA_HOME/jre
    +grant codeBase "file:${java.home}/lib/ext/-" {
    +        permission java.security.AllPermission;
    +};
    +
    +
    +// ========== CATALINA CODE PERMISSIONS =======================================
    +
    +
    +// These permissions apply to the daemon code
    +grant codeBase "file:${catalina.home}/bin/commons-daemon.jar" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to the logging API
    +grant codeBase "file:${catalina.home}/bin/tomcat-juli.jar" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to the server startup code
    +grant codeBase "file:${catalina.home}/bin/bootstrap.jar" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to the servlet API classes
    +// and those that are shared across all class loaders
    +// located in the "lib" directory
    +grant codeBase "file:${catalina.home}/lib/-" {
    +        permission java.security.AllPermission;
    +};
    +
    +
    +// ========== WEB APPLICATION PERMISSIONS =====================================
    +
    +
    +// These permissions are granted by default to all web applications
    +// In addition, a web application will be given a read FilePermission
    +// and JndiPermission for all files and directories in its document root.
    +grant { 
    +    // Required for JNDI lookup of named JDBC DataSource's and
    +    // javamail named MimePart DataSource used to send mail
    +    permission java.util.PropertyPermission "java.home", "read";
    +    permission java.util.PropertyPermission "java.naming.*", "read";
    +    permission java.util.PropertyPermission "javax.sql.*", "read";
    +
    +    // OS Specific properties to allow read access
    +    permission java.util.PropertyPermission "os.name", "read";
    +    permission java.util.PropertyPermission "os.version", "read";
    +    permission java.util.PropertyPermission "os.arch", "read";
    +    permission java.util.PropertyPermission "file.separator", "read";
    +    permission java.util.PropertyPermission "path.separator", "read";
    +    permission java.util.PropertyPermission "line.separator", "read";
    +
    +    // JVM properties to allow read access
    +    permission java.util.PropertyPermission "java.version", "read";
    +    permission java.util.PropertyPermission "java.vendor", "read";
    +    permission java.util.PropertyPermission "java.vendor.url", "read";
    +    permission java.util.PropertyPermission "java.class.version", "read";
    +	permission java.util.PropertyPermission "java.specification.version", "read";
    +	permission java.util.PropertyPermission "java.specification.vendor", "read";
    +	permission java.util.PropertyPermission "java.specification.name", "read";
    +
    +	permission java.util.PropertyPermission "java.vm.specification.version", "read";
    +	permission java.util.PropertyPermission "java.vm.specification.vendor", "read";
    +	permission java.util.PropertyPermission "java.vm.specification.name", "read";
    +	permission java.util.PropertyPermission "java.vm.version", "read";
    +	permission java.util.PropertyPermission "java.vm.vendor", "read";
    +	permission java.util.PropertyPermission "java.vm.name", "read";
    +
    +    // Required for OpenJMX
    +    permission java.lang.RuntimePermission "getAttribute";
    +
    +	// Allow read of JAXP compliant XML parser debug
    +	permission java.util.PropertyPermission "jaxp.debug", "read";
    +
    +    // Precompiled JSPs need access to this package.
    +    permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime";
    +    permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime.*";
    +    
    +};
    +
    +
    +// You can assign additional permissions to particular web applications by
    +// adding additional "grant" entries here, based on the code base for that
    +// application, /WEB-INF/classes/, or /WEB-INF/lib/ jar files.
    +//
    +// Different permissions can be granted to JSP pages, classes loaded from
    +// the /WEB-INF/classes/ directory, all jar files in the /WEB-INF/lib/
    +// directory, or even to individual jar files in the /WEB-INF/lib/ directory.
    +//
    +// For instance, assume that the standard "examples" application
    +// included a JDBC driver that needed to establish a network connection to the
    +// corresponding database and used the scrape taglib to get the weather from
    +// the NOAA web server.  You might create a "grant" entries like this:
    +//
    +// The permissions granted to the context root directory apply to JSP pages.
    +// grant codeBase "file:${catalina.home}/webapps/examples/-" {
    +//      permission java.net.SocketPermission "dbhost.mycompany.com:5432", "connect";
    +//      permission java.net.SocketPermission "*.noaa.gov:80", "connect";
    +// };
    +//
    +// The permissions granted to the context WEB-INF/classes directory
    +// grant codeBase "file:${catalina.home}/webapps/examples/WEB-INF/classes/-" {
    +// };
    +//
    +// The permission granted to your JDBC driver
    +// grant codeBase "jar:file:${catalina.home}/webapps/examples/WEB-INF/lib/driver.jar!/-" {
    +//      permission java.net.SocketPermission "dbhost.mycompany.com:5432", "connect";
    +// };
    +// The permission granted to the scrape taglib
    +// grant codeBase "jar:file:${catalina.home}/webapps/examples/WEB-INF/lib/scrape.jar!/-" {
    +//      permission java.net.SocketPermission "*.noaa.gov:80", "connect";
    +// };
    +
    + +

    Starting Tomcat With A SecurityManager

    + +

    Once you have configured the catalina.policy file for use + with a SecurityManager, Tomcat can be started with a SecurityManager in + place by using the "-security" option:

    +
    +$CATALINA_HOME/bin/catalina.sh start -security    (Unix)
    +%CATALINA_HOME%\bin\catalina start -security      (Windows)
    +
    + +
    Configuring Package Protection in Tomcat
    +

    Starting with Tomcat 5, it is now possible to configure which Tomcat + internal package are protected againts package definition and access. See + + http://java.sun.com/security/seccodeguide.html + for more information.

    + + +

    WARNING: Be aware that removing the default package protection + could possibly open a security hole

    + +

    The Default Properties File

    + +

    The default $CATALINA_HOME/conf/catalina.properties file + looks like this:

    +
      
    +#
    +# List of comma-separated packages that start with or equal this string
    +# will cause a security exception to be thrown when
    +# passed to checkPackageAccess unless the
    +# corresponding RuntimePermission ("accessClassInPackage."+package) has
    +# been granted.
    +package.access=sun.,org.apache.catalina.,org.apache.coyote.,org.apache.tomcat.,
    +org.apache.jasper.
    +#
    +# List of comma-separated packages that start with or equal this string
    +# will cause a security exception to be thrown when
    +# passed to checkPackageDefinition unless the
    +# corresponding RuntimePermission ("defineClassInPackage."+package) has
    +# been granted.
    +#
    +# by default, no packages are restricted for definition, and none of
    +# the class loaders supplied with the JDK call checkPackageDefinition.
    +#
    +package.definition=sun.,java.,org.apache.catalina.,org.apache.coyote.,
    +org.apache.tomcat.,org.apache.jasper.
    +
    +

    Once you have configured the catalina.properties file for use + with a SecurityManager, remember to re-start Tomcat.

    +
    Troubleshooting
    + +

    If your web application attempts to execute an operation that is + prohibited by lack of a required Permission, it will throw an + AccessControLException or a SecurityException + when the SecurityManager detects the violation. Debugging the permission + that is missing can be challenging, and one option is to turn on debug + output of all security decisions that are made during execution. This + is done by setting a system property before starting Tomcat. The easiest + way to do this is via the CATALINA_OPTS environment variable. + Execute this command:

    +
    +export CATALINA_OPTS=-Djava.security.debug=all    (Unix)
    +set CATALINA_OPTS=-Djava.security.debug=all       (Windows)
    +
    + +

    before starting Tomcat.

    + +

    WARNING - This will generate many megabytes + of output! However, it can help you track down problems by searching + for the word "FAILED" and determining which permission was being checked + for. See the Java security documentation for more options that you can + specify here as well.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/setup.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/setup.html new file mode 100644 index 0000000..c707cc4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/setup.html @@ -0,0 +1,117 @@ +Apache Tomcat 6.0 - Tomcat Setup
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Tomcat Setup

    Introduction
    +

    + This document introduces several ways to set up Tomcat for running + on different platforms. Please note that some advanced setup issues + are not covered here: the full distribution (ZIP file or tarball) + includes a file called + RUNNING.txt which discusses these issues. We encourage you to refer + to it if the information below does not answer some of your questions. +

    +
    Windows
    + +

    + Installing Tomcat on Windows can be done easily using the Windows + installer. Its interface and functionality is similar to other wizard + based installers, with only a few items of interest. +

    + +

    +

      +
    • Installation as a service: Tomcat will be + installed as a Windows + NT/2k/XP service no matter what setting is selected. Using the + checkbox on the component page sets the service as "auto" + startup, so that Tomcat is automatically started when Windows + starts. For optimal security, the service should be run as a + separate user, with reduced permissions (see the Windows Services + administration tool and its documentation).
    • +
    • Java location: The installer will use the registry + or the JAVA_HOME environment variable to determine the base path + of a J2SE 5 JRE. +
    • +
    • Tray icon: When Tomcat is run as a service, there + will not be any tray icon present when Tomcat is running. Note that + when choosing to run Tomcat at the end of installation, the tray + icon will be used even if Tomcat was installed as a service.
    • +
    • Refer to the + Windows Service HOW-TO + for information on how to manage Tomcat as Windows NT service. +
    • +
    +

    + +

    The installer will create shortcuts allowing starting and configuring + Tomcat. It is important to note that the Tomcat administration web + application can only be used when Tomcat is running.

    + +
    Unix daemon
    + +

    Tomcat can be run as a daemon using the jsvc tool from the + commons-daemon project. Source tarballs for jsvc are included with the + Tomcat binaries, and need to be compiled. Building jsvc requires + a C ANSI compiler (such as GCC), GNU Autoconf, and a JDK.

    + +

    Before running the script, the JAVA_HOME environment + variable should be set to the base path of the JDK. Alternately, when + calling the ./configure script, the path of the JDK may + be specified using the --with-java parameter, such as + ./configure --with-java=/usr/java.

    + +

    Using the following commands should result in a compiled jsvc binary, + located in the $CATALINA_HOME/bin folder. This assumes + that GNU TAR is used, and that CATALINA_HOME is an + environment variable pointing to the base path of the Tomcat + installation.

    + +

    Please note that you should use the GNU make (gmake) instead of + the native BSD make on FreeBSD systems.

    + +

    Download a commons-daemon binary from the Jakarta Commons download page, + and place jsvc.tar.gz and commons-daemon.jar in the + $CATALINA_HOME/bin folder.

    + +
    +    cd $CATALINA_HOME/bin
    +    tar xvfz jsvc.tar.gz
    +    cd jsvc-src
    +    autoconf
    +    ./configure
    +    make
    +    cp jsvc ..
    +    cd ..
    +
    + +

    Tomcat can then be run as a daemon using the following commands.

    + +
    +    cd $CATALINA_HOME
    +    ./bin/jsvc -cp ./bin/bootstrap.jar \
    +        -outfile ./logs/catalina.out -errfile ./logs/catalina.err \
    +        org.apache.catalina.startup.Bootstrap
    +
    + +

    jsvc has other useful parameters, such as -user which + causes it to switch to another user after the daemon initialization is + complete. This allows, for example, running Tomcat as a non privileged + user while still being able to use privileged ports. + jsvc --help will return the full jsvc usage + information. In particular, the -debug option is useful + to debug issues running jsvc.

    + +

    The file $CATALINA_HOME/bin/jsvc/native/tomcat.sh can be + used as a template for starting Tomcat automatically at boot time from + /etc/init.d. The file is currently setup for running + Tomcat 4.1.x, so it is necessary to edit it and change the classname + from BootstrapService to Bootstrap.

    + +

    Note that the Commons-Daemon JAR file must be on your runtime classpath + to run Tomcat in this manner. The Commons-Daemon JAR file is in the Class-Path + entry of the bootstrap.jar manifest, but if you get a ClassNotFoundException + or a NoClassDefFoundError for a Commons-Daemon class, add the Commons-Daemon + JAR to the -cp argument when launching jsvc.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/ssi-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/ssi-howto.html new file mode 100644 index 0000000..705de6d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/ssi-howto.html @@ -0,0 +1,348 @@ +Apache Tomcat 6.0 - SSI How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    SSI How To

    Introduction
    + +

    SSI (Server Side Includes) are directives that are placed in HTML pages, +and evaluated on the server while the pages are being served. They let you +add dynamically generated content to an existing HTML page, without having +to serve the entire page via a CGI program, or other dynamic technology. +

    + +

    Within Tomcat SSI support can be added when using Tomcat as your +HTTP server and you require SSI support. Typically this is done +during development when you don't want to run a web server like Apache.

    + +

    Tomcat SSI support implements the same SSI directives as Apache. See the + +Apache Introduction to SSI for information on using SSI directives.

    + +

    SSI support is available as a servlet and as a filter. You should use one +or the other to provide SSI support but not both.

    + +

    Servlet based SSI support is implemented using the class +org.apache.catalina.ssi.SSIServlet. Traditionally, this servlet +is mapped to the URL pattern "*.shtml".

    + +

    Filter based SSI support is implemented using the class +org.apache.catalina.ssi.SSIFilter. Traditionally, this filter +is mapped to the URL pattern "*.shtml", though it can be mapped to "*" as +it will selectively enable/disable SSI processing based on mime types. The +contentType init param allows you to apply SSI processing to JSP pages, +javascript, or any other content you wish.

    +

    By default SSI support is disabled in Tomcat.

    +
    Installation
    + +

    CAUTION - SSI directives can be used to execute programs +external to the Tomcat JVM. If you are using the Java SecurityManager this +will bypass your security policy configuration in catalina.policy. +

    + +

    To use the SSI servlet, remove the XML comments from around the SSI servlet +and servlet-mapping configuration in +$CATALINA_BASE/conf/web.xml.

    + +

    To use the SSI filter, remove the XML comments from around the SSI filter +and filter-mapping configuration in +$CATALINA_BASE/conf/web.xml.

    + +

    Only Contexts which are marked as privileged may use SSI features (see the +privileged property of the Context element).

    + +
    Servlet Configuration
    + +

    There are several servlet init parameters which can be used to +configure the behaviour of the SSI servlet. +

      +
    • buffered - Should output from this servlet be buffered? +(0=false, 1=true) Default 0 (false).
    • +
    • debug - Debugging detail level for messages logged +by this servlet. Default 0.
    • +
    • expires - The number of seconds before a page with SSI +directives will expire. Default behaviour is for all SSI directives to be +evaluated for every request.
    • +
    • isVirtualWebappRelative - Should "virtual" SSI directive +paths be interpreted as relative to the context root, instead of the server +root? (0=false, 1=true) Default 0 (false).
    • +
    • inputEncoding - The encoding to be assumed for SSI +resources if one cannot be determined from the resource itself. Default is +the default platform encoding.
    • +
    • outputEncoding - The encoding to be used for the result +of the SSI processing. Default is UTF-8.
    • +
    +

    + +
    Filter Configuration
    + +

    There are several filter init parameters which can be used to +configure the behaviour of the SSI filter. +

      +
    • contentType - A regex pattern that must be matched before +SSI processing is applied. When crafting your own pattern, don't forget that a +mime content type may be followed by an optional character set in the form +"mime/type; charset=set" that you must take into account. Default is +"text/x-server-parsed-html(;.*)?".
    • +
    • debug - Debugging detail level for messages logged +by this servlet. Default 0.
    • +
    • expires - The number of seconds before a page with SSI +directives will expire. Default behaviour is for all SSI directives to be +evaluated for every request.
    • +
    • isVirtualWebappRelative - Should "virtual" SSI directive +paths be interpreted as relative to the context root, instead of the server +root? (0=false, 1=true) Default 0 (false).
    • +
    +

    + +
    Directives
    +

    Server Side Includes are invoked by embedding SSI directives in an HTML document + whose type will be processed by the SSI servlet. The directives take the form of an HTML + comment. The directive is replaced by the results of interpreting it before sending the + page to the client. The general form of a directive is:

    +

    <!--#directive [parm=value] -->

    +

    The directives are: +

      +
    • +config - <!--#config timefmt="%B %Y" --> +Used to set the format of dates and other items processed by SSI +
    • +
    • +echo - <!--#echo var="VARIABLE_NAME" --> +will be replaced bt the value of the variable. +
    • +
    • +exec - Used to run commands on the host system. +
    • +
    • +include - <!--#include virtual="file-name" --> +inserts the contents +
    • +
    • +flastmod - <!--#flastmod file="filename.shtml" --> +Returns the time that a file was lost modified. +
    • +
    • +fsize - <!--#fsize file="filename.shtml" --> +Returns the size of a file. +
    • +
    • +printenv - <!--#printenv --> +Returns the list of all the defined variables. +
    • +
    • +set - <!--#set var="foo" value="Bar" --> +is used to assign a value to a user-defind variable. +
    • +
    • +if elif endif else - Used to create conditional sections. For example:
    • +<!--#config timefmt="%A" -->
      + <!--#if expr="$DATE_LOCAL = /Monday/" -->
      + <p>Meeting at 10:00 on Mondays</p>
      + <!--#elif expr="$DATE_LOCAL = /Friday/" -->
      + <p>Turn in your time card</p>
      + <!--#else -->
      + <p>Yoga class at noon.</p>
      + <!--#endif -->
      +
    +

    +See the +

    +Apache Introduction to SSI for more information on using SSI directives.

    +
    Variables
    +

    The SSI servlet currently implements the following variables: +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Variable NameDescription
    AUTH_TYPE + The type of authentication used for this user: BASIC, FORM, etc.
    CONTENT_LENGTH + The length of the data (in bytes or the number of + characters) passed from a form.
    CONTENT_TYPE + The MIME type of the query data, such as "text/html".
    DATE_GMT +Current date and time in GMT
    DATE_LOCAL +Current date and time in the local time zone
    DOCUMENT_NAME +The current file
    DOCUMENT_URI +Virtual path to the file
    GATEWAY_INTERFACE + The revision of the Common Gateway Interface that the + server uses if enabled: "CGI/1.1".
    HTTP_ACCEPT + A list of the MIME types that the client can accept.
    HTTP_ACCEPT_ENCODING + A list of the compression types that the client can accept.
    HTTP_ACCEPT_LANGUAGE + A list of the laguages that the client can accept.
    HTTP_CONNECTION + The way that the connection from the client is being managed: + "Close" or "Keep-Alive".
    HTTP_HOST + The web site that the client requested.
    HTTP_REFERER + The URL of the document that the client linked from.
    HTTP_USER_AGENT + The browser the client is using to issue the request.
    LAST_MODIFIED +Last modification date and time for current file
    PATH_INFO + Extra path information passed to a servlet.
    PATH_TRANSLATED + The translated version of the path given by the + variable PATH_INFO.
    QUERY_STRING +The query string that follows the "?" in the URL. +
    QUERY_STRING_UNESCAPED +Undecoded query string with all shell metacharacters escaped +with "\"
    REMOTE_ADDR + The remote IP address of the user making the request.
    REMOTE_HOST + The remote hostname of the user making the request.
    REMOTE_PORT + The port number at remote IP address of the user making the request.
    REMOTE_USER + The authenticated name of the user.
    REQUEST_METHOD + The method with which the information request was + issued: "GET", "POST" etc.
    REQUEST_URI + The web page originally requested by the client.
    SCRIPT_FILENAME + The location of the current web page on the server.
    SCRIPT_NAME + The name of the web page.
    SERVER_ADDR + The server's IP address.
    SERVER_NAME + The server's hostname or IP address.
    SERVER_PORT + The port on which the server received the request.
    SERVER_PROTOCOL + The protocol used by the server. E.g. "HTTP/1.1".
    SERVER_SOFTWARE + The name and version of the server software that is + answering the client request.
    UNIQUE_ID + A token used to identify the current session if one + has been established.
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/ssl-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/ssl-howto.html new file mode 100644 index 0000000..0c8278a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/ssl-howto.html @@ -0,0 +1,596 @@ +Apache Tomcat 6.0 - SSL Configuration HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    SSL Configuration HOW-TO

    Quick Start
    + +

    IMPORTANT NOTE: This Howto refers to usage of JSSE, that comes included with + jdk 1.5 and higher. When using APR, Tomcat will + use OpenSSL, which uses a different configuration.

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +

    To install and configure SSL support on Tomcat 6, you need to follow +these simple steps. For more information, read the rest of this HOW-TO.

    +
      +
    1. Create a certificate keystore by executing the following command: +

      Windows:

      +
      +%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA
      +
      +

      Unix:

      +
      +$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA
      +
      +

      + and specify a password value of "changeit".


    2. +
    3. Uncomment the "SSL HTTP/1.1 Connector" entry in + $CATALINA_HOME/conf/server.xml and tweak as necessary.
    4. +

      +
    + + +
    Introduction to SSL
    + +

    SSL, or Secure Socket Layer, is a technology which allows web browsers and +web servers to communicate over a secured connection. This means that the data +being sent is encrypted by one side, transmitted, then decrypted by the other +side before processing. This is a two-way process, meaning that both the +server AND the browser encrypt all traffic before sending out data.

    + +

    Another important aspect of the SSL protocol is Authentication. This means +that during your initial attempt to communicate with a web server over a secure +connection, that server will present your web browser with a set of +credentials, in the form of a "Certificate", as proof the site is who and what +it claims to be. In certain cases, the server may also request a Certificate +from your web browser, asking for proof that you are who you claim +to be. This is known as "Client Authentication," although in practice this is +used more for business-to-business (B2B) transactions than with individual +users. Most SSL-enabled web servers do not request Client Authentication.

    + +
    SSL and Tomcat
    + +

    It is important to note that configuring Tomcat to take advantage of +secure sockets is usually only necessary when running it as a stand-alone +web server. When running Tomcat primarily as a Servlet/JSP container behind +another web server, such as Apache or Microsoft IIS, it is usually necessary +to configure the primary web server to handle the SSL connections from users. +Typically, this server will negotiate all SSL-related functionality, then +pass on any requests destined for the Tomcat container only after decrypting +those requests. Likewise, Tomcat will return cleartext responses, that will +be encrypted before being returned to the user's browser. In this environment, +Tomcat knows that communications between the primary web server and the +client are taking place over a secure connection (because your application +needs to be able to ask about this), but it does not participate in the +encryption or decryption itself.

    + +
    Certificates
    + +

    In order to implement SSL, a web server must have an associated Certificate +for each external interface (IP address) that accepts secure connections. +The theory behind this design is that a server should provide some kind of +reasonable assurance that its owner is who you think it is, particularly +before receiving any sensitive information. While a broader explanation of +Certificates is beyond the scope of this document, think of a Certificate +as a "digital driver's license" for an Internet address. It states what +company the site is associated with, along with some basic contact +information about the site owner or administrator.

    + +

    This "driver's license" is cryptographically signed by its owner, and is +therefore extremely difficult for anyone else to forge. For sites involved +in e-commerce, or any other business transaction in which authentication of +identity is important, a Certificate is typically purchased from a well-known +Certificate Authority (CA) such as VeriSign or Thawte. Such +certificates can be electronically verified -- in effect, the Certificate +Authority will vouch for the authenticity of the certificates that it grants, +so you can believe that that Certificate is valid if you trust the Certificate +Authority that granted it.

    + +

    In many cases, however, authentication is not really a concern. An +administrator may simply want to ensure that the data being transmitted and +received by the server is private and cannot be snooped by anyone who may be +eavesdropping on the connection. Fortunately, Java provides a relatively +simple command-line tool, called keytool, which can easily create +a "self-signed" Certificate. Self-signed Certificates are simply user +generated Certificates which have not been officially registered with any +well-known CA, and are therefore not really guaranteed to be authentic at all. +Again, this may or may not even be important, depending on your needs.

    + +
    General Tips on Running SSL
    + +

    The first time a user attempts to access a secured page on your site, +he or she is typically presented with a dialog containing the details of +the certificate (such as the company and contact name), and asked if he or she +wishes to accept the Certificate as valid and continue with the transaction. +Some browsers will provide an option for permanently accepting a given +Certificate as valid, in which case the user will not be bothered with a +prompt each time they visit your site. Other browsers do not provide this +option. Once approved by the user, a Certificate will be considered valid +for at least the entire browser session.

    + +

    Also, while the SSL protocol was designed to be as efficient as securely +possible, encryption/decryption is a computationally expensive process from +a performance standpoint. It is not strictly necessary to run an entire +web application over SSL, and indeed a developer can pick and choose which +pages require a secure connection and which do not. For a reasonably busy +site, it is customary to only run certain pages under SSL, namely those +pages where sensitive information could possibly be exchanged. This would +include things like login pages, personal information pages, and shopping +cart checkouts, where credit card information could possibly be transmitted. +Any page within an application can be requested over a secure socket by +simply prefixing the address with https: instead of +http:. Any pages which absolutely require +a secure connection should check the protocol type associated with the +page request and take the appropriate action if https is not +specified.

    + +

    Finally, using name-based virtual hosts on a secured connection can be +problematic. This is a design limitation of the SSL protocol itself. The SSL +handshake, where the client browser accepts the server certificate, must occur +before the HTTP request is accessed. As a result, the request information +containing the virtual host name cannot be determined prior to authentication, +and it is therefore not possible to assign multiple certificates to a single +IP address. If all virtual hosts on a single IP address need to authenticate +against the same certificate, the addition of multiple virtual hosts should not +interfere with normal SSL operations on the server. Be aware, however, that +most client browsers will compare the server's domain name against the domain +name listed in the certificate, if any (applicable primarily to official, +CA-signed certificates). If the domain names do not match, these browsers will +display a warning to the client user. In general, only address-based virtual +hosts are commonly used with SSL in a production environment.

    + +
    Configuration
    + +
    Prepare the Certificate Keystore
    + +

    Tomcat currently operates only on JKS, PKCS11 or +PKCS12 format keystores. The JKS format +is Java's standard "Java KeyStore" format, and is the format created by the +keytool command-line utility. This tool is included in the JDK. +The PKCS12 format is an internet standard, and can be manipulated +via (among other things) OpenSSL and Microsoft's Key-Manager. +

    + +

    Each entry in a keystore is identified by an alias string. Whilst many +keystore implmentations treat alaises in a case insensitive manner, case +sensitive implementations are available. The PKCS11 specification, +for example, requires that aliases are case sensitive. To avoid issues related +to the case sensitivity of aliaises, it is not recommended to use aliases that +differ only in case. +

    + +

    To import an existing certificate into a JKS keystore, please read the +documentation (in your JDK documentation package) about keytool. +Note that openssl often adds a readable comments before the key, keytooldoes not support that, so remove the openssl comments if they exist before importing the key using keytool. +

    +

    To import an existing certificate signed by your own CA into a PKCS12 +keystore using OpenSSL you would execute a command like: +

    openssl pkcs12 -export -in mycert.crt -inkey mykey.key \
    +                        -out mycert.p12 -name tomcat -CAfile myCA.crt \
    +                        -caname root -chain
    +
    +For more advanced cases, consult the OpenSSL +documententation. +

    +

    To create a new keystore from scratch, containing a single self-signed +Certificate, execute the following from a terminal command line:

    +

    Windows:

    +
    +%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA
    +
    +

    Unix:

    +
    +$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA
    +
    + +

    (The RSA algorithm should be preferred as a secure algorithm, and this +also ensures general compatibility with other servers and components.)

    + +

    This command will create a new file, in the home directory of the user +under which you run it, named ".keystore". To specify a +different location or filename, add the -keystore parameter, +followed by the complete pathname to your keystore file, +to the keytool command shown above. You will also need to +reflect this new location in the server.xml configuration file, +as described later. For example:

    +

    Windows:

    +
    +%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA \
    +  -keystore \path\to\my\keystore
    +
    +

    Unix:

    +
    +$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA \
    +  -keystore /path/to/my/keystore
    +
    + +

    After executing this command, you will first be prompted for the keystore +password. The default password used by Tomcat is "changeit" +(all lower case), although you can specify a custom password if you like. +You will also need to specify the custom password in the +server.xml configuration file, as described later.

    + +

    Next, you will be prompted for general information about this Certificate, +such as company, contact name, and so on. This information will be displayed +to users who attempt to access a secure page in your application, so make +sure that the information provided here matches what they will expect.

    + +

    Finally, you will be prompted for the key password, which is the +password specifically for this Certificate (as opposed to any other +Certificates stored in the same keystore file). You MUST +use the same password here as was used for the keystore password itself. +(Currently, the keytool prompt will tell you that pressing the +ENTER key does this for you automatically.)

    + +

    If everything was successful, you now have a keystore file with a +Certificate that can be used by your server.

    + +

    Note: your private key password and keystore password +should be the same. If they differ, you will get an error along the lines +of java.io.IOException: Cannot recover key, as documented in +Bugzilla issue 38217, +which contains further references for this issue.

    + +
    + +
    Edit the Tomcat Configuration File
    +

    If you are using APR, you have the option of configuring an alternative engine to openSSL. +

    +<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="someengine" />
    +
    +The default value is +
    +<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
    +
    +So to use SSL under APR, make sure the SSLEngine attribute is set to something other than off. +The default value is on and if you specify another value, it has to be a valid engine name. +
    +If you haven't compiled in SSL support into your Tomcat Native library, then you can turn this initialization off +
    +<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="off" />
    +
    + +

    + +

    The final step is to configure your secure socket in the +$CATALINA_HOME/conf/server.xml file, where +$CATALINA_HOME represents the directory into which you +installed Tomcat 6. An example <Connector> element +for an SSL connector is included in the default server.xml +file installed with Tomcat. It will look something like this:

    +
    +<-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
    +<!--
    +<Connector 
    +           port="8443" minSpareThreads="5" maxSpareThreads="75"
    +           enableLookups="true" disableUploadTimeout="true" 
    +           acceptCount="100"  maxThreads="200"
    +           scheme="https" secure="true" SSLEnabled="true"
    +           keystoreFile="${user.home}/.keystore" keystorePass="changeit"
    +           clientAuth="false" sslProtocol="TLS"/>
    +-->
    +
    +

    + The example above will throw an error if you have the APR and the Tomcat Native libraries in your path, + as tomcat will try to autoload the APR connector. The APR connector uses different attributes for + SSL keys and certificates. An example of such configuration would be +

    +<-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
    +<!--
    +<Connector 
    +           port="8443" minSpareThreads="5" maxSpareThreads="75"
    +           enableLookups="true" disableUploadTimeout="true" 
    +           acceptCount="100"  maxThreads="200"
    +           scheme="https" secure="true" SSLEnabled="true"
    +           SSLCertificateFile="/usr/local/ssl/server.crt" 
    +           SSLCertificateKeyFile="/usr/local/ssl/server.pem"
    +           clientAuth="false" sslProtocol="TLS"/>
    +-->
    +
    +

    + +

    + To avoid auto configuration you can define which connector to use by specifying a classname + in the protocol attribute.
    + To define a Java connector, regardless if the APR library is loaded or not do: +

    +<-- Define a blocking Java SSL Coyote HTTP/1.1 Connector on port 8443 -->
    +<!--
    +<Connector protocol="org.apache.coyote.http11.Http11Protocol"
    +           port="8443" minSpareThreads="5" maxSpareThreads="75"
    +           enableLookups="true" disableUploadTimeout="true" 
    +           acceptCount="100"  maxThreads="200"
    +           scheme="https" secure="true" SSLEnabled="true"
    +           keystoreFile="${user.home}/.keystore" keystorePass="changeit"
    +           clientAuth="false" sslProtocol="TLS"/>
    +-->
    +<-- Define a non-blocking Java SSL Coyote HTTP/1.1 Connector on port 8443 -->
    +<!--
    +<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
    +           port="8443" minSpareThreads="5" maxSpareThreads="75"
    +           enableLookups="true" disableUploadTimeout="true" 
    +           acceptCount="100"  maxThreads="200"
    +           scheme="https" secure="true" SSLEnabled="true"
    +           keystoreFile="${user.home}/.keystore" keystorePass="changeit"
    +           clientAuth="false" sslProtocol="TLS"/>
    +-->
    +
    +and to specify an APR connector +
    +<-- Define a APR SSL Coyote HTTP/1.1 Connector on port 8443 -->
    +<!--
    +<Connector protocol="org.apache.coyote.http11.Http11AprProtocol"
    +           port="8443" minSpareThreads="5" maxSpareThreads="75"
    +           enableLookups="true" disableUploadTimeout="true" 
    +           acceptCount="100"  maxThreads="200"
    +           scheme="https" secure="true" SSLEnabled="true"
    +           SSLCertificateFile="/usr/local/ssl/server.crt" 
    +           SSLCertificateKeyFile="/usr/local/ssl/server.pem"
    +           clientAuth="false" sslProtocol="TLS"/>
    +-->
    +
    + +

    + +

    You will note that the Connector element itself is commented out by default, +so you will need to remove the comment tags around it. Then, you can +customize the specified attributes as necessary. For detailed information +about the various options, consult the +Server Configuration Reference. The +following discussion covers only those attributes of most interest when +setting up SSL communication.

    + +

    The port attribute (default value is 8443) is the TCP/IP +port number on which Tomcat will listen for secure connections. You can +change this to any port number you wish (such as to the default port for +https communications, which is 443). However, special setup +(outside the scope of this document) is necessary to run Tomcat on port +numbers lower than 1024 on many operating systems.

    + +
    +

    If you change the port number here, you should also change the + value specified for the redirectPort attribute on the + non-SSL connector. This allows Tomcat to automatically redirect + users who attempt to access a page with a security constraint specifying + that SSL is required, as required by the Servlet 2.4 Specification.

    +
    + +

    There are addional option used to configure the SSL protocol. + You may need to add or change the following attribute +values, depending on how you configured your keystore earlier:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescription
    clientAuthSet this value to true if you want Tomcat to require + all SSL clients to present a client Certificate in order to use + this socket. Set this value to want if you want Tomcat + to request a client Certificate, but not fail if one isn't presented. +
    SSLEnabled + Use this attribute to enable SSL traffic on a connector. + To turn on SSL handshake/encryption/decryption on a connector + set this value to true. + The default value is false. + When turning this value true you will want to set the + scheme and the secure attributes as well + to pass the correct request.getScheme() and + request.isSecure() values to the servlets +
    keystoreFileAdd this attribute if the keystore file you created is not in + the default place that Tomcat expects (a file named + .keystore in the user home directory under + which Tomcat is running). You can specify an absolute pathname, + or a relative pathname that is resolved against the + $CATALINA_BASE environment variable.
    keystorePassAdd this element if you used a different keystore (and Certificate) + password than the one Tomcat expects (changeit).
    keystoreTypeAdd this element if using a keystore type other than + JKS.
    sslProtocolThe encryption/decryption protocol to be used on this socket. + It is not recommended to change this value if you are using Sun's + JVM. It is reported that IBM's 1.4.1 implementation + of the TLS protocol is not compatible with some popular browsers. + In this case, use the value SSL.
    ciphersThe comma separated list of encryption ciphers that this socket is + allowed to use. By default, any available cipher is allowed.
    algorithmThe X509 algorithm to use. This defaults to the Sun + implementation (SunX509). For IBM JVMs you should use + the value IbmX509. For other vendors, consult the JVM + documentation for the correct value. +
    truststoreFileThe TrustStore file to use to validate client certificates.
    truststorePassThe password to access the TrustStore. This defaults to the value + of keystorePass.
    truststoreTypeAdd this element if your are using a different format for the + TrustStore then you are using for the KeyStore.
    keyAliasAdd this element if your have more than one key in the KeyStore. + If the element is not present the first key read in the KeyStore + will be used.
    + +

    After completing these configuration changes, you must restart Tomcat as +you normally do, and you should be in business. You should be able to access +any web application supported by Tomcat via SSL. For example, try:

    +
    +https://localhost:8443
    +
    + +

    and you should see the usual Tomcat splash page (unless you have modified +the ROOT web application). If this does not work, the following section +contains some troubleshooting tips.

    + +
    + +
    Installing a Certificate from a Certificate Authority
    +

    To obstain and install a Certificate from a Certificate Authority (like verisign.com, thawte.com +or trustcenter.de) you should have read the previous section and then follow these instructions:

    + +
    Create a local Certificate Signing Request (CSR)
    +

    In order to obtain a Certificate from the Certificate Authority of your choice +you have to create a so called Certificate Signing Request (CSR). That CSR will be used +by the Certificate Authority to create a Certificate that will identify your website +as "secure". To create a CSR follow these steps:

    +
      +
    • Create a local Certificate (as described in the previous section): +
      keytool -genkey -alias tomcat -keyalg RSA \
      +	-keystore <your_keystore_filename>
      + Note: In some cases you will have to enter the domain of your website (i.e. www.myside.org) + in the field "first- and lastname" in order to create a working Certificate. +
    • +
    • The CSR is then created with: +
      keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr \
      +	-keystore <your_keystore_filename>
      +
    • +
    +

    Now you have a file called certreq.csr that you can submit to the Certificate Authority (look at the +documentation of the Certificate Authority website on how to do this). In return you get a Certificate.

    +
    + +
    Importing the Certificate
    +

    Now that you have your Certificate you can import it into you local keystore. +First of all you have to import a so called Chain Certificate or Root Certificate into your keystore. +After that you can procede with importing your Certificate.

    + +
      +
    • Download a Chain Certificate from the Certificate Authority you obtained the Certificate from.
      + For Verisign.com commercial certificates go to: + http://www.verisign.com/support/install/intermediate.html
      + For Verisign.com trial certificates go to: + http://www.verisign.com/support/verisign-intermediate-ca/Trial_Secure_Server_Root/index.html + For Trustcenter.de go to: + http://www.trustcenter.de/certservices/cacerts/en/en.htm#server
      + For Thawte.com go to: + http://www.thawte.com/certs/trustmap.html
      +
    • +
    • Import the Chain Certificate into you keystore +
      keytool -import -alias root -keystore <your_keystore_filename> \
      +	-trustcacerts -file <filename_of_the_chain_certificate>
      +
    • +
    • And finally import your new Certificate +
      keytool -import -alias tomcat -keystore <your_keystore_filename> \
      +	-file <your_certificate_filename>
      +
    • +
    +
    +
    Troubleshooting
    + +

    Here is a list of common problems that you may encounter when setting up +SSL communications, and what to do about them.

    + +
      + +
    • I get "java.security.NoSuchAlgorithmException" errors in my + log files. +
      +

      The JVM cannot find the JSSE JAR files. Follow all of the directions to + download and install JSSE.

      +
    • + +
    • When Tomcat starts up, I get an exception like + "java.io.FileNotFoundException: {some-directory}/{some-file} not found". +
      +

      A likely explanation is that Tomcat cannot find the keystore file + where it is looking. By default, Tomcat expects the keystore file to + be named .keystore in the user home directory under which + Tomcat is running (which may or may not be the same as yours :-). If + the keystore file is anywhere else, you will need to add a + keystoreFile attribute to the <Factory> + element in the Tomcat + configuration file.

      +
    • + +
    • When Tomcat starts up, I get an exception like + "java.io.FileNotFoundException: Keystore was tampered with, or + password was incorrect". +
      +

      Assuming that someone has not actually tampered with + your keystore file, the most likely cause is that Tomcat is using + a different password than the one you used when you created the + keystore file. To fix this, you can either go back and + recreate the keystore + file, or you can add or update the keystorePass + attribute on the <Connector> element in the + Tomcat configuration + file. REMINDER - Passwords are case sensitive!

      +
    • + +
    • When Tomcat starts up, I get an exception like + "java.net.SocketException: SSL handshake errorjavax.net.ssl.SSLException: No + available certificate or key corresponds to the SSL cipher suites which are + enabled." +
      +

      A likely explanation is that Tomcat cannot find the alias for the server + key withinthe specified keystore. Check that the correct + keystoreFile and keyAlias are specified in the + <Connector> element in the + Tomcat configuration file. + REMINDER - keyAlias values may be case + sensitive!

      +
    • + +
    + +

    If you are still having problems, a good source of information is the +TOMCAT-USER mailing list. You can find pointers to archives +of previous messages on this list, as well as subscription and unsubscription +information, at +http://tomcat.apache.org/lists.html.

    + +
    Miscellaneous Tips and Bits
    + +

    To access the SSL session ID from the request, use:
    + + + String sslID = (String)request.getAttribute("javax.servlet.request.ssl_session"); + +
    +For additional discussion on this area, please see +Bugzilla. +

    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/status.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/status.html new file mode 100644 index 0000000..25e0a8f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/status.html @@ -0,0 +1,97 @@ +Apache Tomcat 6.0 - Project Status
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Project Status

    Preface
    +

    + This document attempts to convey the current status of Tomcat development + in "big picture" terms. This is not the place to check if an individual + bug report has been addressed or when an individual feature will be available. +

    +

    + This page is updated roughly once per every couple of Tomcat minor releases, + so for day-to-day status you should check the tomcat-user and tomcat-dev mailing + lists. You can always inquire there as to the availability or status of a + specific feature or component. +

    +
    Current Status Summary
    +

    + Tomcat 5.0.27 was released on June 17th, 2004. At that time, the TOMCAT_5_0 + branch was tagged in CVS, and work on Tomcat 5.5 began. We have now had several + Tomcat 5.5 releases, including a couple of stable ones. Accordingly, Tomcat 5.5 + is now the focus on work. Tomcat 5.0 is in maintenance mode and its releases + will become less and less frequent. +

    +

    + Tomcat 5.5 has several major goals. They are discussed in the tomcat-dev + mailing list's "5.next" thread: + MARC. + The status of some of these items is detailed below. Once 5.5 releases are + available, please refer to the Changelog accompanying each release for detailed + changes, enhancements, and fixes. +

    +

    + Tomcat 4.1.x is no longer actively developed. It is maintained to address + only showstopper, security, and Servlet Specification compliance issues. Maintenance + for Tomcat 4.1.x will likely cease once a stable release or two of Tomcat 5.5 are out. + Users of Tomcat 4.1.x are strongly encouraged to upgrade to the latest stable Tomcat + 5.0 release. +

    +

    + Tomcat 4.0.x is relatively old, and not actively maintained or supported. + It is strongly recommended that users of these releases upgrade to the latest + stable Tomcat 5.0 release or at least the latest stable Tomcat 4.1 release. +

    +

    + Tomcat 3.3.x is in roughly the same maintenance mode as Tomcat 4.1.x. +

    +

    + Tomcat 3.2 and earlier are in roughly the same support state as Tomcat 4.0.x. + Users should upgrade to Tomcat 3.3.x or the latest stable Tomcat 5.0.x. +

    +
    How to read the report
    + +

    + The columns in this report contain the following information: +

      +
    • Priority - A sense of how important it is to address this + issue in the short term.
    • +
    • Action Item - Concise description of the action item + to be completed. Where relevant, Java package names of the + primary classes involved are listed in [square brackets]
    • +
    • Volunteers - Login of those developers who + have volunteered to assist in the design, implementation, testing, and + documentation of this action item's changes to Tomcat.
    • +
    + Developers can nominate + themselves to work on particular action items by asking a Committer to + add their name address to those items. The developers + working on each item should discuss and agree upon the approach to be + used for implementing the item's changes to the project source code + and documentation, prior to completing those changes. Such discussions + should take place on the tomcat-dev mailing list so that everyone can + stay apprised of what is going on, or chime in if they want to + contribute ideas and suggestions. +

    + +
    TODO List
    + +
    PriorityAction ItemVolunteers
    High + Refactor ClassLoaders for Tomcat 5.5 to allow container plugins. + costin
    Medium + Enhance Cluster functionality for Tomcat 5.5. + fhanik
    Medium + Continue fixing bugs and updating docs. + everyone
    + +
    Open bugs
    + +

    + The list of the bugs which are in an unresolved state for Tomcat 5 can be + seen + here. + Aspiring volunteers and others are strongly encouraged to attempt + to comment and help resolve these issues. +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/virtual-hosting-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/virtual-hosting-howto.html new file mode 100644 index 0000000..eb67d82 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/virtual-hosting-howto.html @@ -0,0 +1,88 @@ +Apache Tomcat 6.0 - Virtual Hosting and Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Virtual Hosting and Tomcat

    Assumptions
    +

    + For the sake of this how-to, assume you have a development host with two + host names, ren and stimpy. Let's also assume + one instance of Tomcat running, so $CATALINA_HOME refers to + wherever it's installed, perhaps /usr/local/tomcat. +

    +

    + Also, this how-to uses Unix-style path separators and commands; if you're + on Windows modify accordingly. +

    +
    server.xml
    +

    + At the simplest, edit the Engine portion + of your server.xml file to look like this: +

    +
    +<Engine name="Catalina" defaultHost="ren">
    +    <Host name="ren"    appBase="webapps/ren"/>
    +    <Host name="stimpy" appBase="webapps/stimpy"/>
    +</Engine>
    +    
    +

    + Consult the configuration documentation for other attributes of the + Engine and + Hostelements. +

    +
    Webapps Directory
    +

    + Create directories for each of the virtual hosts: +

    +
    +mkdir $CATALINA_HOME/webapps/ren
    +mkdir $CATALINA_HOME/webapps/stimpy
    +    
    +
    Configuring Your Contexts
    +
    Approach #1
    +

    + Within your Context, create a META-INF directory and then + place your Context definition in it in a file named + context.xml. i.e. + $CATALINA_HOME/webapps/ren/ROOT/META-INF/context.xml + This makes deployment easier, particularly if you're distributing a WAR + file. +

    +
    +
    Approach #2
    +

    + Create a structure under $CATALINA_HOME/conf/Catalina + corresponding to your virtual hosts, e.g.: +

    +
    +mkdir $CATALINA_HOME/conf/Catalina/ren
    +mkdir $CATALINA_HOME/conf/Catalina/stimpy
    +      
    +

    + Note that the ending directory name "Catalina" represents the + name attribute of the + Engine element as shown above. +

    +

    + Now, for your default webapps, add: +

    +
    +$CATALINA_HOME/conf/Catalina/ren/ROOT.xml
    +$CATALINA_HOME/conf/Catalina/stimpy/ROOT.xml
    +      
    +

    + If you want to use the Tomcat manager webapp for each host, you'll also + need to add it here: +

    +
    +cd $CATALINA_HOME/conf/Catalina
    +cp localhost/manager.xml ren/
    +cp localhost/manager.xml stimpy/
    +      
    +
    +
    Further Information
    +

    + Consult the configuration documentation for other attributes of the + Context element. +

    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/printer/windows-service-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/printer/windows-service-howto.html new file mode 100644 index 0000000..c4eee5d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/printer/windows-service-howto.html @@ -0,0 +1,331 @@ +Apache Tomcat 6.0 - Windows service HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Apache Tomcat 6.0

    Windows service HOW-TO

    NOTICE
    +

    + This section of the documentation applies to procrun 1.0, and is now obsolete. +

    +
    Tomcat6 service application
    +

    + Tomcat6 is a service application for running Tomcat6 as NT service. +

    +
    Tomcat6w monitor application
    +

    + Tomcat6w is a GUI application for monitoring and configuring Tomcat + services. +

    +

    The available command line options are:

    +

    + + + + + + + + + +
    //ES//Edit service configurationThis is the default operation. It is called if the no option is + provided but the executable is renamed to servicenameW.exe
    //MS//Monitor servicePut the icon in the system try
    +

    +
    Command line arguments
    +

    + Each command line directive is in the form of //XX//ServiceName +

    +

    The available command line options are:

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    //TS//Run the service as console applicationThis is the default operation. It is called if the no option is + provided. The ServiceName is the name of the executable without + exe sufix, meaning Tomcat6
    //RS//Run the serviceCalled only from ServiceManager
    //SS//Stop the service
    //US//Update service parameters
    //IS//Install service
    //DS//Delete serviceStops the service if running
    +

    +
    Command line parameters
    +

    + Each command parameter is prefixed with --. + If the command line is prefixed with ++ then it's value will + be appended to the existing option. + If the environment variable with the same name as command line parameter but + prefixed with PR_ exists it will take precedence. + For example: +

    set PR_CLASSPATH=xx.jar
    +

    +

    is equivalent to providing +

    --Classpath=xx.jar
    +

    +

    as command line parameter.

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ParameterNameDefaultDescription
    --DescriptionService name description (maximum 1024 characters)
    --DisplayNameServiceNameService display name
    --Installprocrun.exe //RS//ServiceNameInstall image
    --StartupmanualService startup mode can be either auto or manual
    --DependsOnList of services that this service depend on. Dependent services + are separated using either # or ; characters
    --EnvironmentList of environment variables that will be provided to the service + in the form key=value. They are separated using either + # or ; characters
    --UserUser account used for running executable. It is used only for + StartMode java or exe and enables running applications + as service under account without LogonAsService privilege.
    --PasswordPassword for user account set by --User parameter
    --JavaHomeJAVA_HOMESet a different JAVA_HOME then defined by JAVA_HOME environment + variable
    --JvmautoUse either auto or specify the full path to the jvm.dll. + You can use the environment variable expansion here.
    --JvmOptions-XrsList of options in the form of -D or -X that will be + passed to the JVM. The options are separated using either + # or ; characters.
    --ClasspathSet the Java classpath
    --JvmMsInitial memory pool size in MB
    --JvmMxMaximum memory pool size in MB
    --JvmSsThread stack size in KB
    --StartImageExecutable that will be run.
    --StartPathWorking path for the start image executable.
    --StartClassClass that will be used for startup.
    --StartParamsList of parameters that will be passed to either StartImage or + StartClass. Parameters are separated using either # or + ; character.
    --StartMethodMainMethod name if differs then main
    --StartModeexecutableCan one of jvm java or exe
    --StopImageExecutable that will be run on Stop service signal.
    --StopPathWorking path for the stop image executable.
    --StopClassClass that will be used on Stop service signal.
    --StopParamsList of parameters that will be passed to either StopImage or + StopClass. Parameters are separated using either # or + ; character.
    --StopMethodMainMethod name if differs then main
    --StopModeexecutableCan one of jvm java or exe
    --StopTimeoutNo TimeoutDefines the timeout in seconds that procrun waits for service to + exit gracefully.
    --LogPathworking pathDefines the path for logging
    --LogPrefixjakarta_serviceDefines the service log filename
    --LogLevelINFODefines the logging level and can be either error, + info, warn or debug
    --StdOutputRedirected stdout filename
    --StdErrorRedirected stderr filename
    +

    +
    Installing services
    +

    +The safest way to manually install the service is to use the provided service.bat script. +

    +

    +

    +Install the service named 'Tomcat6'
    +C:\> service.bat install
    +
    +

    +

    +If using tomcat6.exe, you need to use the //IS// parameter. +

    +

    +

    +Install the service named 'Tomcat6'
    +C:\> tomcat6 //IS//Tomcat6 --DisplayName="Apache Tomcat 6" \
    +C:\> --Install="C:\Program Files\Tomcat\bin\tomcat6.exe" --Jvm=auto \
    +C:\> --StartMode=jvm --StopMode=jvm \
    +C:\> --StartClass=org.apache.catalina.startup.Bootstrap --StartParams=start \
    +C:\> --StopClass=org.apache.catalina.startup.Bootstrap --StopParams=stop
    +
    +

    +
    Updating services
    +

    +To update the service parameters, you need to use the //US// parameter. +

    +

    +

    +Update the service named 'Tomcat6
    +C:\> tomcat6 //US//Tomcat6 --Description="Apache Tomcat Server - http://tomcat.apache.org/ " \
    +C:\> --Startup=auto --Classpath=%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\bin\bootstrap.jar
    +
    +

    +
    Removing services
    +

    +To remove the service, you need to use the //DS// parameter.
    +If the service is running it will be stopped and then deleted. +

    +

    +

    +Remove the service named 'Tomcat6'
    +C:\> tomcat6 //DS//Tomcat6
    +
    +

    +
    Debugging services
    +

    +To run the service in console mode, you need to use the //TS// parameter. +The service shutdown can be initiated by pressing CTRL+C or +CTRL+BREAK. +If you rename the tomcat6.exe to testservice.exe then you can just execute the +testservice.exe and this command mode will be executed by default. +

    +

    +

    +Run the service named 'Tomcat6' in console mode
    +C:\> tomcat6 //TS//Tomcat6 [additional arguments]
    +Or simply execute:
    +C:\> tomcat6
    +
    +

    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/proxy-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/proxy-howto.html new file mode 100644 index 0000000..acecd50 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/proxy-howto.html @@ -0,0 +1,117 @@ +Apache Tomcat 6.0 - Proxy Support HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Proxy Support HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    Using standard configurations of Tomcat, web applications can ask for +the server name and port number to which the request was directed for +processing. When Tomcat is running standalone with the +Coyote HTTP/1.1 Connector, it will generally +report the server name specified in the request, and the port number on +which the Connector is listening. The servlet API +calls of interest, for this purpose, are:

    +
      +
    • ServletRequest.getServerName(): Returns the host name of the server to which the request was sent.
    • +
    • ServletRequest.getServerPort(): Returns the host name of the server to which the request was sent.
    • +
    • ServletRequest.getLocalName(): Returns the host name of the Internet Protocol (IP) interface on which the request was received.
    • +
    • ServletRequest.getLocalPort(): Returns the Internet Protocol (IP) port number of the interface on which the request was received.
    • +
    + +

    When you are running behind a proxy server (or a web server that is +configured to behave like a proxy server), you will sometimes prefer to +manage the values returned by these calls. In particular, you will +generally want the port number to reflect that specified in the original +request, not the one on which the Connector itself is +listening. You can use the proxyName and proxyPort +attributes on the <Connector> element to configure +these values.

    + +

    Proxy support can take many forms. The following sections describe +proxy configurations for several common cases.

    + +
    Apache 1.3 Proxy Support
    + +

    Apache 1.3 supports an optional module (mod_proxy) that +configures the web server to act as a proxy server. This can be used to +forward requests for a particular web application to a Tomcat 6 instance, +without having to configure a web connector such as mod_jk. +To accomplish this, you need to perform the following tasks:

    +
      +
    1. Configure your copy of Apache so that it includes the + mod_proxy module. If you are building from source, + the easiest way to do this is to include the + --enable-module=proxy directive on the + ./configure command line.
    2. +
    3. If not already added for you, make sure that you are loading the + mod_proxy module at Apache startup time, by using the + following directives in your httpd.conf file: +
      +LoadModule proxy_module  {path-to-modules}/mod_proxy.so
      +AddModule  mod_proxy.c
      +
    4. +
    5. Include two directives in your httpd.conf file for + each web application that you wish to forward to Tomcat 5. For + example, to forward an application at context path /myapp: +
      +ProxyPass         /myapp  http://localhost:8081/myapp
      +ProxyPassReverse  /myapp  http://localhost:8081/myapp
      +
      + which tells Apache to forward URLs of the form + http://localhost/myapp/* to the Tomcat 5 connector + listening on port 8081.
    6. +
    7. Configure your copy of Tomcat 5 to include a special + <Connector> element, with appropriate + proxy settings, for example: +
      +<Connector port="8081" ...
      +              proxyName="www.mycompany.com"
      +              proxyPort="80"/>
      +
      + which will cause servlets inside this web application to think that + all proxied requests were directed to www.mycompany.com + on port 80.
    8. +
    9. It is legal to omit the proxyName attribute from the + <Connector> element. If you do so, the value + returned by request.getServerName() will by the host + name on which Tomcat is running. In the example above, it would be + localhost.
    10. +
    11. If you also have a <Connector> listening on port + 8080 (nested within the same Service + element), the requests to either port will share the same set of + virtual hosts and web applications.
    12. +
    13. You might wish to use the IP filtering features of your operating + system to restrict connections to port 8081 (in this example) to + be allowed only from the server that is running + Apache.
    14. +
    15. Alternatively, you can set up a series of web applications that are + only available via proxying, as follows: +
        +
      • Configure another <Service> that contains + only a <Connector> for the proxy port.
      • +
      • Configure appropriate Engine, + Host, and + Context elements for the virtual hosts + and web applications accessible via proxying.
      • +
      • Optionally, protect port 8081 with IP filters as described + earlier.
      • +
    16. +
    17. When requests are proxied by Apache, the web server will be recording + these requests in its access log. Therefore, you will generally want to + disable any access logging performed by Tomcat itself.
    18. +
    + +

    When requests are proxied in this manner, all requests +for the configured web applications will be processed by Tomcat (including +requests for static content). You can improve performance by using the +mod_jk web connector instead of mod_proxy. +mod_jk can be configured so that the web server serves static +content that is not processed by filters or security constraints defined +within the web application's deployment descriptor +(/WEB-INF/web.xml).

    + +
    Apache 2.0 Proxy Support
    +The same instructions hold true as for 1.3. (Except in Apache 2.0, +you may omit AddModule mod_proxy.c) +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/realm-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/realm-howto.html new file mode 100644 index 0000000..a33e128 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/realm-howto.html @@ -0,0 +1,1285 @@ +Apache Tomcat 6.0 - Realm Configuration HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Realm Configuration HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    Table of Contents
    + +

    +Quick Start
    +

    +What is a Realm?
    +Configuring a Realm
    +
    +Common Features
    +
    +Digested Passwords
    +Example Application
    +Manager Application
    +Logging Within Realms
    +
    + +Standard Realm Implementations
    +
    +JDBCRealm
    +DataSourceRealm
    +JNDIRealm
    +MemoryRealm
    +JAASRealm
    +
    +

    + +
    Quick Start
    + +

    This document describes how to configure Tomcat to support container +managed security, by connecting to an existing "database" of usernames, +passwords, and user roles. You only need to care about this if you are using +a web application that includes one or more +<security-constraint> elements, and a +<login-config> element defining how users are required +to authenticate themselves. If you are not utilizing these features, you can +safely skip this document.

    + +

    For fundamental background information about container managed security, +see the Servlet +Specification (Version 2.4), Section 12.

    + +

    For information about utilizing the Single Sign On feature of +Tomcat 6 (allowing a user to authenticate themselves once across the entire +set of web applications associated with a virtual host), see +here.

    + +
    Overview
    + + +
    What is a Realm?
    + +

    A Realm is a "database" of usernames and passwords that +identify valid users of a web application (or set of web applications), plus +an enumeration of the list of roles associated with each valid user. +You can think of roles as similar to groups in Unix-like operating +systems, because access to specific web application resources is granted to +all users possessing a particular role (rather than enumerating the list of +associated usernames). A particular user can have any number of roles +associated with their username.

    + +

    Although the Servlet Specification describes a portable mechanism for +applications to declare their security requirements (in the +web.xml deployment descriptor), there is no portable API +defining the interface between a servlet container and the associated user +and role information. In many cases, however, it is desireable to "connect" +a servlet container to some existing authentication database or mechanism +that already exists in the production environment. Therefore, Tomcat 6 +defines a Java interface (org.apache.catalina.Realm) that +can be implemented by "plug in" components to establish this connection. +Five standard plug-ins are provided, supporting connections to various +sources of authentication information:

    +
      +
    • JDBCRealm - Accesses authentication information + stored in a relational database, accessed via a JDBC driver.
    • +
    • DataSourceRealm - Accesses authentication + information stored in a relational database, accessed via a named JNDI + JDBC DataSource.
    • +
    • JNDIRealm - Accesses authentication information + stored in an LDAP based directory server, accessed via a JNDI provider. +
    • +
    • MemoryRealm - Accesses authentication + information stored in an in-memory object collection, which is initialized + from an XML document (conf/tomcat-users.xml).
    • +
    • JAASRealm - Accesses authentication information + through the Java Authentication & Authorization Service (JAAS) + framework.
    • +
    + +

    It is also possible to write your own Realm implementation, +and integrate it with Tomcat 6. To do so, you need to: +

      +
    • Implement org.apache.catalina.Realm,
    • +
    • Place your compiled realm in $CATALINA_HOME/server/lib,
    • +
    • Declare your realm as described in the "Configuring a Realm" section below,
    • +
    • Declare your realm to the MBeans Descriptor.
    • +
    +

    + +
    + + +
    Configuring a Realm
    + +

    Before getting into the details of the standard Realm implementations, it is +important to understand, in general terms, how a Realm is configured. In +general, you will be adding an XML element to your conf/server.xml +configuration file, that looks something like this:

    + +
    +<Realm className="... class name for this implementation"
    +       ... other attributes for this implementation .../>
    +
    + +

    The <Realm> element can be nested inside any one of +of the following Container elements. The location of the +Realm element has a direct impact on the "scope" of that Realm +(i.e. which web applications will share the same authentication information): +

    +
      +
    • Inside an <Engine> element - This Realm will be shared + across ALL web applications on ALL virtual hosts, UNLESS it is overridden + by a Realm element nested inside a subordinate <Host> + or <Context> element.
    • +
    • Inside a <Host> element - This Realm will be shared across + ALL web applications for THIS virtual host, UNLESS it is overridden + by a Realm element nested inside a subordinate <Context> + element.
    • +
    • Inside a <Context> element - This Realm will be used ONLY + for THIS web application.
    • +
    + + +
    + + +
    Common Features
    + + +
    Digested Passwords
    + +

    For each of the standard Realm implementations, the +user's password (by default) is stored in clear text. In many +environments, this is undesireable because casual observers of the +authentication data can collect enough information to log on +successfully, and impersonate other users. To avoid this problem, the +standard implementations support the concept of digesting +user passwords. This allows the stored version of the passwords to be +encoded (in a form that is not easily reversible), but that the +Realm implementation can still utilize for +authentication.

    + +

    When a standard realm authenticates by retrieving the stored +password and comparing it with the value presented by the user, you +can select digested passwords by specifying the digest +attribute on your <Realm> element. The value for +this attribute must be one of the digest algorithms supported by the +java.security.MessageDigest class (SHA, MD2, or MD5). +When you select this option, the contents of the password that is +stored in the Realm must be the cleartext version of the +password, as digested by the specified algorithm.

    + +

    When the authenticate() method of the Realm is called, the +(cleartext) password specified by the user is itself digested by the same +algorithm, and the result is compared with the value returned by the +Realm. An equal match implies that the cleartext version of the +original password is the same as the one presented by the user, so that this +user should be authorized.

    + +

    To calculate the digested value of a cleartext password, two convenience +techniques are supported:

    +
      +
    • If you are writing an application that needs to calculate digested + passwords dynamically, call the static Digest() method of the + org.apache.catalina.realm.RealmBase class, passing the + cleartext password and the digest algorithm name as arguments. This + method will return the digested password.
    • +
    • If you want to execute a command line utility to calculate the digested + password, simply execute +
      +java org.apache.catalina.realm.RealmBase \
      +    -a {algorithm} {cleartext-password}
      +
      + and the digested version of this cleartext password will be returned to + standard output.
    • +
    + +

    If using digested passwords with DIGEST authentication, the cleartext used + to generate the digest is different. In the examples above + {cleartext-password} must be replaced with + {username}:{realm}:{cleartext-password}. For example, in a + development environment this might take the form + testUser:localhost:8080:testPassword.

    + +

    To use either of the above techniques, the +$CATALINA_HOME/lib/catalina.jar and +$CATALINA_HOME/bin/tomcat-juli.jar files will need to be +on your class path to make the RealmBase class available. +

    + +

    Non-ASCII usernames and/or passwords are supported using +

    java org.apache.catalina.realm.RealmBase \
    +    -a {algorithm} -e {encoding} {input}
    +
    +but care is required to ensure that the non-ASCII input is +correctly passed to the digester. +The digester returns {input}:{digest}. If the input appears +corrupted in the return, the digest will be invalid.

    + +
    + + + +
    Example Application
    + +

    The example application shipped with Tomcat 6 includes an area that is +protected by a security constraint, utilizing form-based login. To access it, +point your browser at +http://localhost:8080/examples/jsp/security/protected/ +and log on with one of the usernames and passwords described for the default +MemoryRealm.

    + +
    + + +
    Manager Application
    + +

    If you wish to use the Manager Application +to deploy and undeploy applications in a running Tomcat 6 installation, you +MUST add the "manager" role to at least one username in your selected Realm +implementation. This is because the manager web application itself uses a +security constraint that requires role "manager" to access ANY request URI +within that application.

    + +

    For security reasons, no username in the default Realm (i.e. using +conf/tomcat-users.xml is assigned the "manager" role. Therfore, +no one will be able to utilize the features of this application until the +Tomcat administrator specifically assigns this role to one or more users.

    + +
    + +
    Realm Logging
    + +

    Debugging and exception messages logged by a Realm will + be recorded by the logging configuration associated with the container + for the realm: its surrounding Context, + Host, or + Engine.

    + +
    + +
    Standard Realm Implementations
    + +
    JDBCRealm
    + +

    Introduction

    + +

    JDBCRealm is an implementation of the Tomcat 6 +Realm interface that looks up users in a relational database +accessed via a JDBC driver. There is substantial configuration flexibility +that lets you adapt to existing table and column names, as long as your +database structure conforms to the following requirements:

    +
      +
    • There must be a table, referenced below as the users table, + that contains one row for every valid user that this Realm + should recognize.
    • +
    • The users table must contain at least two columns (it may + contain more if your existing applications required it): +
        +
      • Username to be recognized by Tomcat when the user logs in.
      • +
      • Password to be recognized by Tomcat when the user logs in. + This value may in cleartext or digested - see below for more + information.
      • +
    • +
    • There must be a table, referenced below as the user roles table, + that contains one row for every valid role that is assigned to a + particular user. It is legal for a user to have zero, one, or more than + one valid role.
    • +
    • The user roles table must contain at least two columns (it may + contain more if your existing applications required it): +
        +
      • Username to be recognized by Tomcat (same value as is specified + in the users table).
      • +
      • Role name of a valid role associated with this user.
      • +
    • +
    + +

    Quick Start

    + +

    To set up Tomcat to use JDBCRealm, you will need to follow these steps:

    +
      +
    1. If you have not yet done so, create tables and columns in your database + that conform to the requirements described above.
    2. +
    3. Configure a database username and password for use by Tomcat, that has + at least read only access to the tables described above. (Tomcat will + never attempt to write to these tables.)
    4. +
    5. Place a copy of the JDBC driver you will be using inside the + $CATALINA_HOME/lib directory. + Note that only JAR files are recognized!
    6. +
    7. Set up a <Realm> element, as described below, in your + $CATALINA_HOME/conf/server.xml file.
    8. +
    9. Restart Tomcat 6 if it is already running.
    10. +
    + +

    Realm Element Attributes

    + +

    To configure JDBCRealm, you will create a <Realm> +element and nest it in your $CATALINA_HOME/conf/server.xml file, +as described above. The following +attributes are supported by this implementation:

    + +
    AttributeDescription
    className +

    The fully qualified Java class name of this Realm implementation. + You MUST specify the value + "org.apache.catalina.realm.JDBCRealm" here.

    +
    connectionName +

    The database username used to establish a JDBC connection.

    +
    connectionPassword +

    The database password used to establish a JDBC connection.

    +
    connectionURL +

    The database URL used to establish a JDBC connection.

    +
    digest +

    The digest algorithm used to store passwords in non-plaintext formats. + Valid values are those accepted for the algorithm name by the + java.security.MessageDigest class. See + Digested Passwords for more + information. If not specified, passwords are stored in clear text.

    +
    driverName +

    The fully qualified Java class name of the JDBC driver to be used. + Consult the documentation for your JDBC driver for the appropriate + value.

    +
    roleNameCol +

    The name of the column, in the user roles table, that + contains the name of a role assigned to this user.

    +
    userCredCol +

    The name of the column, in the users table, that contains + the password for this user (either in clear text, or digested if the + digest attribute is set).

    +
    userNameCol +

    The name of the column, in the users and user roles + tables, that contains the username of this user.

    +
    userRoleTable +

    The name of the table that contains one row for each role + assigned to a particular username. This table must include at + least the columns named by the userNameCol and + roleNameCol attributes.

    +
    userTable +

    The name of the table that contains one row for each username + to be recognized by Tomcat. This table must include at least the columns + named by the userNameCol and userCredCol + attributes.

    +
    + +

    Example

    + +

    An example SQL script to create the needed tables might look something +like this (adapt the syntax as required for your particular database):

    +
    +create table users (
    +  user_name         varchar(15) not null primary key,
    +  user_pass         varchar(15) not null
    +);
    +
    +create table user_roles (
    +  user_name         varchar(15) not null,
    +  role_name         varchar(15) not null,
    +  primary key (user_name, role_name)
    +);
    +
    + +

    Example Realm elements are included (commented out) in the +default $CATALINA_HOME/conf/server.xml file. Here's an example +for using a MySQL database called "authority", configured with the tables +described above, and accessed with username "dbuser" and password "dbpass":

    +
    +<Realm className="org.apache.catalina.realm.JDBCRealm" debug="99"
    +      driverName="org.gjt.mm.mysql.Driver"
    +   connectionURL="jdbc:mysql://localhost/authority?user=dbuser&amp;password=dbpass"
    +       userTable="users" userNameCol="user_name" userCredCol="user_pass"
    +   userRoleTable="user_roles" roleNameCol="role_name"/>
    +
    + +

    Additional Notes

    + +

    JDBCRealm operates according to the following rules:

    +
      +
    • When a user attempts to access a protected resource for the first time, + Tomcat 6 will call the authenticate() method of this + Realm. Thus, any changes you have made to the database + directly (new users, changed passwords or roles, etc.) will be immediately + reflected.
    • +
    • Once a user has been authenticated, the user (and his or her associated + roles) are cached within Tomcat for the duration of the user's login. + (For FORM-based authentication, that means until the session times out or + is invalidated; for BASIC authentication, that means until the user + closes their browser). The cached user is not saved and + restored across sessions serialisations. Any changes to the database + information for an already authenticated user will not be + reflected until the next time that user logs on again.
    • +
    • Administering the information in the users and user roles + table is the responsibility of your own applications. Tomcat does not + provide any built-in capabilities to maintain users and roles.
    • +
    + +
    + + +
    DataSourceRealm
    + +

    Introduction

    + +

    DataSourceRealm is an implementation of the Tomcat 6 +Realm interface that looks up users in a relational database +accessed via a JNDI named JDBC DataSource. There is substantial configuration +flexibility that lets you adapt to existing table and column names, as long +as your database structure conforms to the following requirements:

    +
      +
    • There must be a table, referenced below as the users table, + that contains one row for every valid user that this Realm + should recognize.
    • +
    • The users table must contain at least two columns (it may + contain more if your existing applications required it): +
        +
      • Username to be recognized by Tomcat when the user logs in.
      • +
      • Password to be recognized by Tomcat when the user logs in. + This value may in cleartext or digested - see below for more + information.
      • +
    • +
    • There must be a table, referenced below as the user roles table, + that contains one row for every valid role that is assigned to a + particular user. It is legal for a user to have zero, one, or more than + one valid role.
    • +
    • The user roles table must contain at least two columns (it may + contain more if your existing applications required it): +
        +
      • Username to be recognized by Tomcat (same value as is specified + in the users table).
      • +
      • Role name of a valid role associated with this user.
      • +
    • +
    + +

    Quick Start

    + +

    To set up Tomcat to use DataSourceRealm, you will need to follow these steps:

    +
      +
    1. If you have not yet done so, create tables and columns in your database + that conform to the requirements described above.
    2. +
    3. Configure a database username and password for use by Tomcat, that has + at least read only access to the tables described above. (Tomcat will + never attempt to write to these tables.)
    4. +
    5. Configure a JNDI named JDBC DataSource for your database. Refer to the + JNDI DataSource Example HOW-TO + for information on how to configure a JNDI named JDBC DataSource.
    6. +
    7. Set up a <Realm> element, as described below, in your + $CATALINA_HOME/conf/server.xml file.
    8. +
    9. Restart Tomcat 6 if it is already running.
    10. +
    + +

    Realm Element Attributes

    + +

    To configure DataSourceRealm, you will create a <Realm> +element and nest it in your $CATALINA_HOME/conf/server.xml file, +as described above. The following +attributes are supported by this implementation:

    + +
    AttributeDescription
    className +

    The fully qualified Java class name of this Realm implementation. + You MUST specify the value + "org.apache.catalina.realm.DataSourceRealm" here.

    +
    dataSourceName +

    The JNDI named JDBC DataSource for your database. If the DataSource is + local to the context, the name is relative to java:/comp/env, + and otherwise the name should match the name used to define the global + DataSource.

    +
    digest +

    The digest algorithm used to store passwords in non-plaintext formats. + Valid values are those accepted for the algorithm name by the + java.security.MessageDigest class. See + Digested Passwords for more + information. If not specified, passwords are stored in clear text.

    +
    localDataSource +

    When the realm is nested inside a Context element, this allows the + realm to use a DataSource defined for the Context rather than a global + DataSource. If not specified, the default is false: use a + global DataSource.

    +
    roleNameCol +

    The name of the column, in the user roles table, that + contains the name of a role assigned to this user.

    +
    userCredCol +

    The name of the column, in the users table, that contains + the password for this user (either in clear text, or digested if the + digest attribute is set).

    +
    userNameCol +

    The name of the column, in the users and user roles + tables, that contains the username of this user.

    +
    userRoleTable +

    The name of the table that contains one row for each role + assigned to a particular username. This table must include at + least the columns named by the userNameCol and + roleNameCol attributes.

    +
    userTable +

    The name of the table that contains one row for each username + to be recognized by Tomcat. This table must include at least the columns + named by the userNameCol and userCredCol + attributes.

    +
    + +

    Example

    + +

    An example SQL script to create the needed tables might look something +like this (adapt the syntax as required for your particular database):

    +
    +create table users (
    +  user_name         varchar(15) not null primary key,
    +  user_pass         varchar(15) not null
    +);
    +
    +create table user_roles (
    +  user_name         varchar(15) not null,
    +  role_name         varchar(15) not null,
    +  primary key (user_name, role_name)
    +);
    +
    + +

    Here is an example for using a MySQL database called "authority", configured +with the tables described above, and accessed with the JNDI JDBC DataSource with +name "java:/comp/env/jdbc/authority".

    +
    +<Realm className="org.apache.catalina.realm.DataSourceRealm" debug="99"
    +   dataSourceName="jdbc/authority"
    +   userTable="users" userNameCol="user_name" userCredCol="user_pass"
    +   userRoleTable="user_roles" roleNameCol="role_name"/>
    +
    + +

    Additional Notes

    + +

    DataSourceRealm operates according to the following rules:

    +
      +
    • When a user attempts to access a protected resource for the first time, + Tomcat 6 will call the authenticate() method of this + Realm. Thus, any changes you have made to the database + directly (new users, changed passwords or roles, etc.) will be immediately + reflected.
    • +
    • Once a user has been authenticated, the user (and his or her associated + roles) are cached within Tomcat for the duration of the user's login. + (For FORM-based authentication, that means until the session times out or + is invalidated; for BASIC authentication, that means until the user + closes their browser). The cached user is not saved and + restored across sessions serialisations. Any changes to the database + information for an already authenticated user will not be + reflected until the next time that user logs on again.
    • +
    • Administering the information in the users and user roles + table is the responsibility of your own applications. Tomcat does not + provide any built-in capabilities to maintain users and roles.
    • +
    + +
    + + +
    JNDIRealm
    + +

    Introduction

    + +

    JNDIRealm is an implementation of the Tomcat 6 +Realm interface that looks up users in an LDAP directory +server accessed by a JNDI provider (typically, the standard LDAP +provider that is available with the JNDI API classes). The realm +supports a variety of approaches to using a directory for +authentication.

    + +

    Connecting to the directory

    + +

    The realm's connection to the directory is defined by the +connectionURL configuration attribute. This is a URL +whose format is defined by the JNDI provider. It is usually an LDAP +URL that specifies the domain name of the directory server to connect +to, and optionally the port number and distinguished name (DN) of the +required root naming context.

    + +

    If you have more than one provider you can configure an +alternateURL. If a socket connection can not be +made to the provider at the connectionURL an +attempt will be made to use the alternateURL.

    + +

    When making a connection in order to search the directory and +retrieve user and role information, the realm authenticates itself to +the directory with the username and password specified by the +connectionName and +connectionPassword properties. If these properties +are not specified the connection is anonymous. This is sufficient in +many cases. +

    + + +

    Selecting the user's directory entry

    + +

    Each user that can be authenticated must be represented in the +directory by an individual entry that corresponds to an element in the +initial DirContext defined by the +connectionURL attribute. This user entry must have an +attribute containing the username that is presented for +authentication.

    + +

    Often the distinguished name of the user's entry contains the +username presented for authentication but is otherwise the same for +all users. In this case the userPattern attribute may +be used to specify the DN, with "{0}" marking where +the username should be substituted.

    + +

    Otherwise the realm must search the directory to find a unique entry +containing the username. The following attributes configure this +search: + +

      +
    • userBase - the entry that is the base of + the subtree containing users. If not specified, the search + base is the top-level context.
    • + +
    • userSubtree - the search scope. Set to + true if you wish to search the entire subtree + rooted at the userBase entry. The default value + of false requests a single-level search + including only the top level.
    • + +
    • userSearch - pattern specifying the LDAP + search filter to use after substitution of the username.
    • + +
    +

    + + +

    Authenticating the user

    + +
      +
    • +

      Bind mode

      + +

      By default the realm authenticates a user by binding to +the directory with the DN of the entry for that user and the password +presented by the user. If this simple bind succeeds the user is considered to +be authenticated.

      + +

      For security reasons a directory may store a digest of the user's +password rather than the clear text version (see Digested Passwords for more information). In that case, +as part of the simple bind operation the directory automatically +computes the correct digest of the plaintext password presented by the +user before validating it against the stored value. In bind mode, +therefore, the realm is not involved in digest processing. The +digest attribute is not used, and will be ignored if +set.

      +
    • + +
    • +

      Comparison mode

      +

      Alternatively, the realm may retrieve the stored +password from the directory and compare it explicitly with the value +presented by the user. This mode is configured by setting the +userPassword attribute to the name of a directory +attribute in the user's entry that contains the password.

      + +

      Comparison mode has some disadvantages. First, the +connectionName and +connectionPassword attributes must be configured to +allow the realm to read users' passwords in the directory. For +security reasons this is generally undesirable; indeed many directory +implementations will not allow even the directory manager to read +these passwords. In addition, the realm must handle password digests +itself, including variations in the algorithms used and ways of +representing password hashes in the directory. However, the realm may +sometimes need access to the stored password, for example to support +HTTP Digest Access Authentication (RFC 2069). (Note that HTTP digest +authentication is different from the storage of password digests in +the repository for user information as discussed above). +

      +
    • +
    + +

    Assigning roles to the user

    + +

    The directory realm supports two approaches to the representation +of roles in the directory:

    + +
      +
    • +

      Roles as explicit directory entries

      + +

      Roles may be represented by explicit directory entries. A role +entry is usually an LDAP group entry with one attribute +containing the name of the role and another whose values are the +distinguished names or usernames of the users in that role. The +following attributes configure a directory search to +find the names of roles associated with the authenticated user:

      + +
        +
      • roleBase - the base entry for the role search. + If not specified, the search base is the top-level directory + context.
      • + +
      • roleSubtree - the search + scope. Set to true if you wish to search the entire + subtree rooted at the roleBase entry. The default + value of false requests a single-level search + including the top level only.
      • + +
      • roleSearch - the LDAP search filter for + selecting role entries. It optionally includes pattern + replacements "{0}" for the distinguished name and/or "{1}" for the + username of the authenticated user.
      • + +
      • roleName - the attribute in a role entry + containing the name of that role.
      • + +
      + +
    • +
    + +
      +
    • +

      Roles as an attribute of the user entry

      + +

      Role names may also be held as the values of an attribute in the +user's directory entry. Use userRoleName to specify +the name of this attribute.

      + +
    • +
    +

    A combination of both approaches to role representation may be used.

    + +

    Quick Start

    + +

    To set up Tomcat to use JNDIRealm, you will need to follow these steps:

    +
      +
    1. Make sure your directory server is configured with a schema that matches + the requirements listed above.
    2. +
    3. If required, configure a username and password for use by Tomcat, that has + read only access to the information described above. (Tomcat will + never attempt to modify this information.)
    4. +
    5. Place a copy of the JNDI driver you will be using (typically + ldap.jar available with JNDI) inside the + $CATALINA_HOME/lib directory.
    6. +
    7. Set up a <Realm> element, as described below, in your + $CATALINA_HOME/conf/server.xml file.
    8. +
    9. Restart Tomcat 6 if it is already running.
    10. +
    + +

    Realm Element Attributes

    + +

    To configure JNDIRealm, you will create a <Realm> +element and nest it in your $CATALINA_HOME/conf/server.xml file, +as described above. The following +attributes are supported by this implementation:

    + +
    AttributeDescription
    className +

    The fully qualified Java class name of this Realm implementation. + You MUST specify the value + "org.apache.catalina.realm.JNDIRealm" here.

    +
    connectionName +

    The directory username to use when establishing a + connection to the directory for LDAP search operations. If not + specified an anonymous connection is made, which is often + sufficient unless you specify the userPassword + property.

    +
    connectionPassword +

    The directory password to use when establishing a + connection to the directory for LDAP search operations. If not + specified an anonymous connection is made, which is often + sufficient unless you specify the userPassword + property.

    +
    connectionURL +

    The connection URL to be passed to the JNDI driver when + establishing a connection to the directory.

    +
    contextFactory +

    The fully qualified Java class name of the JNDI context + factory to be used for this connection. By default, the standard + JNDI LDAP provider is used + (com.sun.jndi.ldap.LdapCtxFactory).

    +
    digest +

    The digest algorithm to apply to the plaintext password offered + by the user before comparing it with the value retrieved from the + directory. Valid values are those accepted for the algorithm name + by the java.security.MessageDigest class. See Digested Passwords for more + information. If not specified the plaintext password is assumed to + be retrieved. Not required unless userPassword is + specified

    +
    roleBase +

    The base directory entry for performing role searches. If + not specified, the top level element in the directory context + will be used.

    +
    roleName +

    The name of the attribute that contains role names in the + directory entries found by a role search. In addition you can + use the userRoleName property to specify the name + of an attribute, in the user's entry, containing additional + role names. If roleName is not specified a role + search does not take place, and roles are taken only from the + user's entry.

    +
    roleSearch +

    The LDAP filter expression used for performing role + searches, following the syntax supported by the + java.text.MessageFormat class. Use + {0} to substitute the distinguished name (DN) of + the user, and/or {1} to substitute the + username. If not specified a role search does not take place + and roles are taken only from the attribute in the user's + entry specified by the userRoleName property.

    +
    roleSubtree +

    Set to true if you want to search the entire + subtree of the element specified by the roleBase + property for role entries associated with the user. The + default value of false causes only the top level + to be searched.

    +
    userBase +

    The base element for user searches performed using the + userSearch expression. If not specified, the top + level element in the directory context will be used. Not used + if you are using the userPattern expression.

    +
    userPassword +

    Name of the attribute in the user's entry containing the + user's password. If you specify this value, JNDIRealm will + bind to the directory using the values specified by + connectionName and + connectionPassword properties, and retrieve the + corresponding attribute for comparison to the value specified + by the user being authenticated. If the digest + attribute is set, the specified digest algorithm is applied to + the password offered by the user before comparing it with the + value retrieved from the directory. If you do + not specify this value, JNDIRealm will + attempt a simple bind to the directory using the DN of the + user's entry and password specified by the user, with a + successful bind being interpreted as an authenticated + user.

    +
    userPattern +

    A pattern for the distinguished name (DN) of the user's + directory entry, following the syntax supported by the + java.text.MessageFormat class with + {0} marking where the actual username should be + inserted. You can use this property instead of + userSearch, userSubtree and + userBase when the distinguished name contains the + username and is otherwise the same for all users.

    +
    userRoleName +

    The name of an attribute in the user's directory entry + containing zero or more values for the names of roles assigned + to this user. In addition you can use the + roleName property to specify the name of an + attribute to be retrieved from individual role entries found + by searching the directory. If userRoleName is + not specified all the roles for a user derive from the role + search.

    +
    userSearch +

    The LDAP filter expression to use when searching for a + user's directory entry, with {0} marking where + the actual username should be inserted. Use this property + (along with the userBase and + userSubtree properties) instead of + userPattern to search the directory for the + user's entry.

    +
    userSubtree +

    Set to true if you want to search the entire + subtree of the element specified by the userBase + property for the user's entry. The default value of + false causes only the top level to be searched. + Not used if you are using the userPattern + expression.

    +
    + +

    Example

    + +

    Creation of the appropriate schema in your directory server is beyond the +scope of this document, because it is unique to each directory server +implementation. In the examples below, we will assume that you are using a +distribution of the OpenLDAP directory server (version 2.0.11 or later), which +can be downloaded from +http://www.openldap.org. Assume that +your slapd.conf file contains the following settings +(among others):

    +
    +database ldbm
    +suffix dc="mycompany",dc="com"
    +rootdn "cn=Manager,dc=mycompany,dc=com"
    +rootpw secret
    +
    + +

    We will assume for connectionURL that the directory +server runs on the same machine as Tomcat. See http://java.sun.com/products/jndi/docs.html +for more information about configuring and using the JNDI LDAP +provider.

    + +

    Next, assume that this directory server has been populated with elements +as shown below (in LDIF format):

    + +
    +
    +# Define top-level entry
    +dn: dc=mycompany,dc=com
    +objectClass: dcObject
    +dc:mycompany
    +
    +# Define an entry to contain people
    +# searches for users are based on this entry
    +dn: ou=people,dc=mycompany,dc=com
    +objectClass: organizationalUnit
    +ou: people
    +
    +# Define a user entry for Janet Jones
    +dn: uid=jjones,ou=people,dc=mycompany,dc=com
    +objectClass: inetOrgPerson
    +uid: jjones
    +sn: jones
    +cn: janet jones
    +mail: j.jones@mycompany.com
    +userPassword: janet
    +
    +# Define a user entry for Fred Bloggs
    +dn: uid=fbloggs,ou=people,dc=mycompany,dc=com
    +objectClass: inetOrgPerson
    +uid: fbloggs
    +sn: bloggs
    +cn: fred bloggs
    +mail: f.bloggs@mycompany.com
    +userPassword: fred
    +
    +# Define an entry to contain LDAP groups
    +# searches for roles are based on this entry
    +dn: ou=groups,dc=mycompany,dc=com
    +objectClass: organizationalUnit
    +ou: groups
    +
    +# Define an entry for the "tomcat" role
    +dn: cn=tomcat,ou=groups,dc=mycompany,dc=com
    +objectClass: groupOfUniqueNames
    +cn: tomcat
    +uniqueMember: uid=jjones,ou=people,dc=mycompany,dc=com
    +uniqueMember: uid=fbloggs,ou=people,dc=mycompany,dc=com
    +
    +# Define an entry for the "role1" role
    +dn: cn=role1,ou=groups,dc=mycompany,dc=com
    +objectClass: groupOfUniqueNames
    +cn: role1
    +uniqueMember: uid=fbloggs,ou=people,dc=mycompany,dc=com
    +
    + +

    An example Realm element for the OpenLDAP directory +server configured as described above might look like this, assuming +that users use their uid (e.g. jjones) to login to the +application and that an anonymous connection is sufficient to search +the directory and retrieve role information:

    + +
    +<Realm   className="org.apache.catalina.realm.JNDIRealm" debug="99"
    +     connectionURL="ldap://localhost:389"
    +       userPattern="uid={0},ou=people,dc=mycompany,dc=com"
    +          roleBase="ou=groups,dc=mycompany,dc=com"
    +          roleName="cn"
    +        roleSearch="(uniqueMember={0})"
    +/>
    +
    + +

    With this configuration, the realm will determine the user's +distinguished name by substituting the username into the +userPattern, authenticate by binding to the directory +with this DN and the password received from the user, and search the +directory to find the user's roles.

    + +

    Now suppose that users are expected to enter their email address +rather than their userid when logging in. In this case the realm must +search the directory for the user's entry. (A search is also necessary +when user entries are held in multiple subtrees corresponding perhaps +to different organizational units or company locations).

    + +

    Further, suppose that in addition to the group entries you want to +use an attribute of the user's entry to hold roles. Now the entry for +Janet Jones might read as follows:

    + +
    +dn: uid=jjones,ou=people,dc=mycompany,dc=com
    +objectClass: inetOrgPerson
    +uid: jjones
    +sn: jones
    +cn: janet jones
    +mail: j.jones@mycompany.com
    +memberOf: role2
    +memberOf: role3
    +userPassword: janet
    +
    + +

    This realm configuration would satisfy the new requirements:

    + +
    +<Realm   className="org.apache.catalina.realm.JNDIRealm" debug="99"
    +     connectionURL="ldap://localhost:389"
    +          userBase="ou=people,dc=mycompany,dc=com"
    +        userSearch="(mail={0})"
    +      userRoleName="memberOf"
    +          roleBase="ou=groups,dc=mycompany,dc=com"
    +          roleName="cn"
    +        roleSearch="(uniqueMember={0})"
    +/>
    +
    + +

    Now when Janet Jones logs in as "j.jones@mycompany.com", the realm +searches the directory for a unique entry with that value as its mail +attribute and attempts to bind to the directory as +uid=jjones,ou=people,dc=mycompany,dc=com with the given +password. If authentication succeeds, she is assigned three roles: +"role2" and "role3", the values of the "memberOf" attribute in her +directory entry, and "tomcat", the value of the "cn" attribute in the +only group entry of which she is a member.

    + +

    Finally, to authenticate the user by retrieving +the password from the directory and making a local comparison in the +realm, you might use a realm configuration like this:

    + +
    +<Realm   className="org.apache.catalina.realm.JNDIRealm" debug="99"
    +    connectionName="cn=Manager,dc=mycompany,dc=com"
    +connectionPassword="secret"
    +     connectionURL="ldap://localhost:389"
    +      userPassword="userPassword"
    +       userPattern="uid={0},ou=people,dc=mycompany,dc=com"
    +          roleBase="ou=groups,dc=mycompany,dc=com"
    +          roleName="cn"
    +        roleSearch="(uniqueMember={0})"
    +/>
    +
    + +

    However, as discussed above, the default bind mode for +authentication is usually to be preferred.

    + +

    Additional Notes

    + +

    JNDIRealm operates according to the following rules:

    +
      +
    • When a user attempts to access a protected resource for the first time, + Tomcat 6 will call the authenticate() method of this + Realm. Thus, any changes you have made to the directory + (new users, changed passwords or roles, etc.) will be immediately + reflected.
    • +
    • Once a user has been authenticated, the user (and his or her associated + roles) are cached within Tomcat for the duration of the user's login. + (For FORM-based authentication, that means until the session times out or + is invalidated; for BASIC authentication, that means until the user + closes their browser). The cached user is not saved and + restored across sessions serialisations. Any changes to the directory + information for an already authenticated user will not be + reflected until the next time that user logs on again.
    • +
    • Administering the information in the directory server + is the responsibility of your own applications. Tomcat does not + provide any built-in capabilities to maintain users and roles.
    • +
    + +
    + + +
    MemoryRealm
    + +

    Introduction

    + +

    MemoryRealm is a simple demonstration implementation of the +Tomcat 6 Realm interface. It is not designed for production use. +At startup time, MemoryRealm loads information about all users, and their +corresponding roles, from an XML document (by default, this document is loaded from $CATALINA_HOME/conf/tomcat-users.xml). Changes to the data +in this file are not recognized until Tomcat is restarted.

    + +

    Realm Element Attributes

    + +

    To configure MemoryRealm, you will create a <Realm> +element and nest it in your $CATALINA_HOME/conf/server.xml file, +as described above. The following +attributes are supported by this implementation:

    + +
    AttributeDescription
    className +

    The fully qualified Java class name of this Realm implementation. + You MUST specify the value + "org.apache.catalina.realm.MemoryRealm" here.

    +
    digest +

    The digest algorithm used to store passwords in non-plaintext formats. + Valid values are those accepted for the algorithm name by the + java.security.MessageDigest class. See + Digested Passwords for more + information. If not specified, passwords are stored in clear text.

    +
    pathname +

    Absolute or relative (to $CATALINA_HOME) pathname of the XML document + containing our valid usernames, passwords, and roles. See below for more + information on the format of this file. If not specified, the value + conf/tomcat-users.xml is used.

    +
    + +

    User File Format

    + +

    The users file (by default, conf/tomcat-users.xml must be an +XML document, with a root element <tomcat-users>. Nested +inside the root element will be a <user> element for each +valid user, consisting of the following attributes:

    +
      +
    • name - Username this user must log on with.
    • +
    • password - Password this user must log on with (in + clear text if the digest attribute was not set on the + <Realm> element, or digested appropriately as + described here otherwise).
    • +
    • roles - Comma-delimited list of the role names + associated with this user.
    • +
    + +

    Example

    + +

    The default installation of Tomcat 6 is configured with a MemoryRealm +nested inside the <Engine> element, so that it applies +to all virtual hosts and web applications. The default contents of the +conf/tomcat-users.xml file is:

    +
    +<tomcat-users>
    +  <user name="tomcat" password="tomcat" roles="tomcat" />
    +  <user name="role1"  password="tomcat" roles="role1"  />
    +  <user name="both"   password="tomcat" roles="tomcat,role1" />
    +</tomcat-users>
    +
    + +

    Additional Notes

    + +

    MemoryRealm operates according to the following rules:

    +
      +
    • When Tomcat first starts up, it loads all defined users and their + associated information from the users file. Changes to the data in + this file will not be recognized until Tomcat is + restarted.
    • +
    • When a user attempts to access a protected resource for the first time, + Tomcat 6 will call the authenticate() method of this + Realm.
    • +
    • Once a user has been authenticated, the user (and his or her associated + roles) are cached within Tomcat for the duration of the user's login. + (For FORM-based authentication, that means until the session times out or + is invalidated; for BASIC authentication, that means until the user + closes their browser). The cached user is not saved and + restored across sessions serialisations.
    • +
    • Administering the information in the users file is the responsibility + of your application. Tomcat does not + provide any built-in capabilities to maintain users and roles.
    • +
    + + +
    + + +
    JAASRealm
    + +

    Introduction

    + +

    JAASRealm is an implementation of the Tomcat +4 Realm interface that authenticates users through the Java +Authentication & Authorization Service (JAAS) framework, a Java +package that is available as an optional package in Java 2 SDK 1.3 and +is fully integrated as of SDK 1.4 .

    +

    Using JAASRealm gives the developer the ability to combine +practically any conceivable security realm with Tomcat's CMA.

    +

    JAASRealm is prototype for Tomcat of the proposed JAAS-based +J2EE authentication framework for J2EE v1.4, based on the JCP Specification +Request 196 to enhance container-managed security and promote +'pluggable' authentication mechanisms whose implementations would be +container-independent. +

    +

    Based on the JAAS login module and principal (see javax.security.auth.spi.LoginModule +and javax.security.Principal), you can develop your own +security mechanism or wrap another third-party mechanism for +integration with the CMA as implemented by Tomcat. +

    + +

    Quick Start

    +

    To set up Tomcat to use JAASRealm with your own JAAS login module, + you will need to follow these steps:

    +
      +
    1. Write your own LoginModule, User and Role classes based +on JAAS (see +the +JAAS Authentication Tutorial and +the JAAS Login Module +Developer's Guide) to be managed by the JAAS Login +Context (javax.security.auth.login.LoginContext) +When developing your LoginModule, note that JAASRealm's built-in CallbackHandler ++only recognizes the NameCallback and PasswordCallback at present. +
    2. +
    3. Although not specified in JAAS, you should create +seperate classes to distinguish between users and roles, extending javax.security.Principal, +so that Tomcat can tell which Principals returned from your login +module are users and which are roles (see org.apache.catalina.realm.JAASRealm). +Regardless, the first Principal returned is always treated as the user Principal. +
    4. +
    5. Place the compiled classes on Tomcat's classpath +
    6. +
    7. Set up a login.config file for Java (see JAAS +LoginConfig file) and tell Tomcat where to find it by specifying +its location to the JVM, for instance by setting the environment +variable: JAVA_OPTS=-DJAVA_OPTS=-Djava.security.auth.login.config==$CATALINA_HOME/conf/jaas.config
    8. + +
    9. Configure your security-constraints in your web.xml for +the resources you want to protect
    10. +
    11. Configure the JAASRealm module in your server.xml
    12. +
    13. Restart Tomcat 6 if it is already running.
    14. +
    +

    Realm Element Attributes

    +

    To configure JAASRealm as for step 6 above, you create +a <Realm> element and nest it in your +$CATALINA_HOME/conf/server.xml +file within your <Engine> node. The following attributes +are supported by this implementation:

    + +
    AttributeDescription
    className +

    The fully qualified Java class name of this Realm implementation. + You MUST specify the value + "org.apache.catalina.realm.JAASRealm" here.

    +
    appName +

    The name of the application as configured in your login configuration file + (JAAS LoginConfig).

    +
    userClassNames +

    A comma-seperated list of the names of the classes that you have made + for your user Principals.

    +
    roleClassNames +

    A comma-seperated list of the names of the classes that you have made + for your role Principals.

    +
    useContextClassLoader +

    Instructs JAASRealm to use the context class loader for loading the user-specified + LoginModule class and associated Principal classes. The + default value is true, which is backwards-compatible with the way + Tomcat 4 works. To load classes using the container's classloader, specify + false.

    +
    + +

    Example

    + +

    Here is an example of how your server.xml snippet should look.

    + +
    +<Realm className="org.apache.catalina.realm.JAASRealm"                 
    +                appName="MyFooRealm"       
    +    userClassNames="org.foobar.realm.FooUser"       
    +     roleClassNames="org.foobar.realm.FooRole" 
    +                      debug="99"/>
    +
    + +

    It is the responsibility of your login module to create and save User and +Role objects representing Principals for the user +(javax.security.auth.Subject). If your login module doesn't +create a user object but also doesn't throw a login exception, then the +Tomcat CMA will break and you will be left at the +http://localhost:8080/myapp/j_security_check URI or at some other +unspecified location.

    + +

    The flexibility of the JAAS approach is two-fold:

    +
      +
    • you can carry out whatever processing you require behind +the scenes in your own login module.
    • +
    • you can plug in a completely different LoginModule by changing the configuration +and restarting the server, without any code changes to your application.
    • +
    + +

    Additional Notes

    +
      +
    • When a user attempts to access a protected resource for + the first time, Tomcat 6 will call the authenticate() + method of this Realm. Thus, any changes you have made in + the security mechanism directly (new users, changed passwords or + roles, etc.) will be immediately reflected.
    • +
    • Once a user has been authenticated, the user (and his or + her associated roles) are cached within Tomcat for the duration of + the user's login. For FORM-based authentication, that means until + the session times out or is invalidated; for BASIC authentication, + that means until the user closes their browser. Any changes to the + security information for an already authenticated user will not + be reflected until the next time that user logs on again.
    • +
    • As with other Realm implementations, digested passwords + are supported if the <Realm> element in server.xml + contains a digest attribute; JAASRealm's CallbackHandler + will digest the password prior to passing it back to the LoginModule
    • +
    + +
    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/security-manager-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/security-manager-howto.html new file mode 100644 index 0000000..60f86b0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/security-manager-howto.html @@ -0,0 +1,359 @@ +Apache Tomcat 6.0 - Security Manager HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Security Manager HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    Background
    + +

    The Java SecurityManager is what allows a web browser + to run an applet in its own sandbox to prevent untrusted code from + accessing files on the local file system, connecting to a host other + than the one the applet was loaded from, and so on. In the same way + the SecurityManager protects you from an untrusted applet running in + your browser, use of a SecurityManager while running Tomcat can protect + your server from trojan servlets, JSPs, JSP beans, and tag libraries. + Or even inadvertent mistakes.

    + +

    Imagine if someone who is authorized to publish JSPs on your site + inadvertently included the following in their JSP:

    +
    +<% System.exit(1); %>
    +
    + +

    Every time this JSP was executed by Tomcat, Tomcat would exit. + Using the Java SecurityManager is just one more line of defense a + system administrator can use to keep the server secure and reliable.

    + +

    WARNING - A security audit + have been conducted using the Tomcat 5 codebase. Most of the critical + package have been protected and a new security package protection mechanism + has been implemented. Still, make sure that you are satisfied with your SecurityManager + configuration before allowing untrusted users to publish web applications, + JSPs, servlets, beans, or tag libraries. However, running with a + SecurityManager is definitely better than running without one.

    + +
    Permissions
    + +

    Permission classes are used to define what Permissions a class loaded + by Tomcat will have. There are a number of Permission classes that are + a standard part of the JDK, and you can create your own Permission class + for use in your own web applications. Both techniques are used in + Tomcat 6.

    + + +
    Standard Permissions
    + +

    This is just a short summary of the standard system SecurityManager + Permission classes applicable to Tomcat. See + http://java.sun.com/security/ + for more information.

    + +
      +
    • java.util.PropertyPermission - Controls read/write + access to JVM properties such as java.home.
    • +
    • java.lang.RuntimePermission - Controls use of + some System/Runtime functions like exit() and + exec(). Also control the package access/definition.
    • +
    • java.io.FilePermission - Controls read/write/execute + access to files and directories.
    • +
    • java.net.SocketPermission - Controls use of + network sockets.
    • +
    • java.net.NetPermission - Controls use of + multicast network connections.
    • +
    • java.lang.reflect.ReflectPermission - Controls + use of reflection to do class introspection.
    • +
    • java.security.SecurityPermission - Controls access + to Security methods.
    • +
    • java.security.AllPermission - Allows access to all + permissions, just as if you were running Tomcat without a + SecurityManager.
    • +
    + +
    + + +
    Tomcat Custom Permissions
    + +

    Tomcat utilizes a custom permission class called + org.apache.naming.JndiPermission. This permission + controls read access to JNDI named file based resources. The permission + name is the JNDI name and there are no actions. A trailing "*" can be + used to do wild card matching for a JNDI named file resource when + granting permission. For example, you might include the following + in your policy file:

    +
    +permission  org.apache.naming.JndiPermission  "jndi://localhost/examples/*";
    +
    + +

    A Permission entry like this is generated dynamically for each web + application that is deployed, to allow it to read its own static resources + but disallow it from using file access to read any other files (unless + permissions for those files are explicitly granted).

    + +

    Also, Tomcat always dynamically creates the following file permission:

    +
      
    +permission java.io.FilePermission "** your application context**", "read";
    +
    +

    Where **your application context** equals the folder(or WAR file) under which + your application has been deployed.

    + +
    + + +
    Configuring Tomcat With A SecurityManager
    + +

    Policy File Format

    + +

    The security policies implemented by the Java SecurityManager are + configured in the $CATALINA_HOME/conf/catalina.policy file. + This file completely replaces the java.policy file present + in your JDK system directories. The catalina.policy file + can be edited by hand, or you can use the + policytool + application that comes with Java 1.2 or later.

    + +

    Entries in the catalina.policy file use the standard + java.policy file format, as follows:

    +
    +// Example policy file entry
    +
    +grant [signedBy <signer>,] [codeBase <code source>] {
    +  permission  <class>  [<name> [, <action list>]];
    +};
    +
    + +

    The signedBy and codeBase entries are + optional when granting permissions. Comment lines begin with "//" and + end at the end of the current line. The codeBase is in the + form of a URL, and for a file URL can use the ${java.home} + and ${catalina.home} properties (which are expanded out to + the directory paths defined for them by the JAVA_HOME and + CATALINA_HOME environment variables).

    + +

    The Default Policy File

    + +

    The default $CATALINA_HOME/conf/catalina.policy file + looks like this:

    +
    +// ============================================================================
    +// catalina.corepolicy - Security Policy Permissions for Tomcat 6
    +//
    +// This file contains a default set of security policies to be enforced (by the
    +// JVM) when Catalina is executed with the "-security" option.  In addition
    +// to the permissions granted here, the following additional permissions are
    +// granted to the codebase specific to each web application:
    +//
    +// * Read access to the document root directory
    +//
    +// $Id: security-manager-howto.xml 467215 2006-10-24 03:12:55Z markt $
    +// ============================================================================
    +
    +
    +// ========== SYSTEM CODE PERMISSIONS =========================================
    +
    +
    +// These permissions apply to javac
    +grant codeBase "file:${java.home}/lib/-" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to all shared system extensions
    +grant codeBase "file:${java.home}/jre/lib/ext/-" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to javac when ${java.home] points at $JAVA_HOME/jre
    +grant codeBase "file:${java.home}/../lib/-" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to all shared system extensions when
    +// ${java.home} points at $JAVA_HOME/jre
    +grant codeBase "file:${java.home}/lib/ext/-" {
    +        permission java.security.AllPermission;
    +};
    +
    +
    +// ========== CATALINA CODE PERMISSIONS =======================================
    +
    +
    +// These permissions apply to the daemon code
    +grant codeBase "file:${catalina.home}/bin/commons-daemon.jar" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to the logging API
    +grant codeBase "file:${catalina.home}/bin/tomcat-juli.jar" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to the server startup code
    +grant codeBase "file:${catalina.home}/bin/bootstrap.jar" {
    +        permission java.security.AllPermission;
    +};
    +
    +// These permissions apply to the servlet API classes
    +// and those that are shared across all class loaders
    +// located in the "lib" directory
    +grant codeBase "file:${catalina.home}/lib/-" {
    +        permission java.security.AllPermission;
    +};
    +
    +
    +// ========== WEB APPLICATION PERMISSIONS =====================================
    +
    +
    +// These permissions are granted by default to all web applications
    +// In addition, a web application will be given a read FilePermission
    +// and JndiPermission for all files and directories in its document root.
    +grant { 
    +    // Required for JNDI lookup of named JDBC DataSource's and
    +    // javamail named MimePart DataSource used to send mail
    +    permission java.util.PropertyPermission "java.home", "read";
    +    permission java.util.PropertyPermission "java.naming.*", "read";
    +    permission java.util.PropertyPermission "javax.sql.*", "read";
    +
    +    // OS Specific properties to allow read access
    +    permission java.util.PropertyPermission "os.name", "read";
    +    permission java.util.PropertyPermission "os.version", "read";
    +    permission java.util.PropertyPermission "os.arch", "read";
    +    permission java.util.PropertyPermission "file.separator", "read";
    +    permission java.util.PropertyPermission "path.separator", "read";
    +    permission java.util.PropertyPermission "line.separator", "read";
    +
    +    // JVM properties to allow read access
    +    permission java.util.PropertyPermission "java.version", "read";
    +    permission java.util.PropertyPermission "java.vendor", "read";
    +    permission java.util.PropertyPermission "java.vendor.url", "read";
    +    permission java.util.PropertyPermission "java.class.version", "read";
    +	permission java.util.PropertyPermission "java.specification.version", "read";
    +	permission java.util.PropertyPermission "java.specification.vendor", "read";
    +	permission java.util.PropertyPermission "java.specification.name", "read";
    +
    +	permission java.util.PropertyPermission "java.vm.specification.version", "read";
    +	permission java.util.PropertyPermission "java.vm.specification.vendor", "read";
    +	permission java.util.PropertyPermission "java.vm.specification.name", "read";
    +	permission java.util.PropertyPermission "java.vm.version", "read";
    +	permission java.util.PropertyPermission "java.vm.vendor", "read";
    +	permission java.util.PropertyPermission "java.vm.name", "read";
    +
    +    // Required for OpenJMX
    +    permission java.lang.RuntimePermission "getAttribute";
    +
    +	// Allow read of JAXP compliant XML parser debug
    +	permission java.util.PropertyPermission "jaxp.debug", "read";
    +
    +    // Precompiled JSPs need access to this package.
    +    permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime";
    +    permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime.*";
    +    
    +};
    +
    +
    +// You can assign additional permissions to particular web applications by
    +// adding additional "grant" entries here, based on the code base for that
    +// application, /WEB-INF/classes/, or /WEB-INF/lib/ jar files.
    +//
    +// Different permissions can be granted to JSP pages, classes loaded from
    +// the /WEB-INF/classes/ directory, all jar files in the /WEB-INF/lib/
    +// directory, or even to individual jar files in the /WEB-INF/lib/ directory.
    +//
    +// For instance, assume that the standard "examples" application
    +// included a JDBC driver that needed to establish a network connection to the
    +// corresponding database and used the scrape taglib to get the weather from
    +// the NOAA web server.  You might create a "grant" entries like this:
    +//
    +// The permissions granted to the context root directory apply to JSP pages.
    +// grant codeBase "file:${catalina.home}/webapps/examples/-" {
    +//      permission java.net.SocketPermission "dbhost.mycompany.com:5432", "connect";
    +//      permission java.net.SocketPermission "*.noaa.gov:80", "connect";
    +// };
    +//
    +// The permissions granted to the context WEB-INF/classes directory
    +// grant codeBase "file:${catalina.home}/webapps/examples/WEB-INF/classes/-" {
    +// };
    +//
    +// The permission granted to your JDBC driver
    +// grant codeBase "jar:file:${catalina.home}/webapps/examples/WEB-INF/lib/driver.jar!/-" {
    +//      permission java.net.SocketPermission "dbhost.mycompany.com:5432", "connect";
    +// };
    +// The permission granted to the scrape taglib
    +// grant codeBase "jar:file:${catalina.home}/webapps/examples/WEB-INF/lib/scrape.jar!/-" {
    +//      permission java.net.SocketPermission "*.noaa.gov:80", "connect";
    +// };
    +
    + +

    Starting Tomcat With A SecurityManager

    + +

    Once you have configured the catalina.policy file for use + with a SecurityManager, Tomcat can be started with a SecurityManager in + place by using the "-security" option:

    +
    +$CATALINA_HOME/bin/catalina.sh start -security    (Unix)
    +%CATALINA_HOME%\bin\catalina start -security      (Windows)
    +
    + +
    Configuring Package Protection in Tomcat
    +

    Starting with Tomcat 5, it is now possible to configure which Tomcat + internal package are protected againts package definition and access. See + + http://java.sun.com/security/seccodeguide.html + for more information.

    + + +

    WARNING: Be aware that removing the default package protection + could possibly open a security hole

    + +

    The Default Properties File

    + +

    The default $CATALINA_HOME/conf/catalina.properties file + looks like this:

    +
      
    +#
    +# List of comma-separated packages that start with or equal this string
    +# will cause a security exception to be thrown when
    +# passed to checkPackageAccess unless the
    +# corresponding RuntimePermission ("accessClassInPackage."+package) has
    +# been granted.
    +package.access=sun.,org.apache.catalina.,org.apache.coyote.,org.apache.tomcat.,
    +org.apache.jasper.
    +#
    +# List of comma-separated packages that start with or equal this string
    +# will cause a security exception to be thrown when
    +# passed to checkPackageDefinition unless the
    +# corresponding RuntimePermission ("defineClassInPackage."+package) has
    +# been granted.
    +#
    +# by default, no packages are restricted for definition, and none of
    +# the class loaders supplied with the JDK call checkPackageDefinition.
    +#
    +package.definition=sun.,java.,org.apache.catalina.,org.apache.coyote.,
    +org.apache.tomcat.,org.apache.jasper.
    +
    +

    Once you have configured the catalina.properties file for use + with a SecurityManager, remember to re-start Tomcat.

    +
    Troubleshooting
    + +

    If your web application attempts to execute an operation that is + prohibited by lack of a required Permission, it will throw an + AccessControLException or a SecurityException + when the SecurityManager detects the violation. Debugging the permission + that is missing can be challenging, and one option is to turn on debug + output of all security decisions that are made during execution. This + is done by setting a system property before starting Tomcat. The easiest + way to do this is via the CATALINA_OPTS environment variable. + Execute this command:

    +
    +export CATALINA_OPTS=-Djava.security.debug=all    (Unix)
    +set CATALINA_OPTS=-Djava.security.debug=all       (Windows)
    +
    + +

    before starting Tomcat.

    + +

    WARNING - This will generate many megabytes + of output! However, it can help you track down problems by searching + for the word "FAILED" and determining which permission was being checked + for. See the Java security documentation for more options that you can + specify here as well.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/setup.html b/P51/apache-tomcat-6.0.14/webapps/docs/setup.html new file mode 100644 index 0000000..25ec3c6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/setup.html @@ -0,0 +1,118 @@ +Apache Tomcat 6.0 - Tomcat Setup
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Tomcat Setup

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    +

    + This document introduces several ways to set up Tomcat for running + on different platforms. Please note that some advanced setup issues + are not covered here: the full distribution (ZIP file or tarball) + includes a file called + RUNNING.txt which discusses these issues. We encourage you to refer + to it if the information below does not answer some of your questions. +

    +
    Windows
    + +

    + Installing Tomcat on Windows can be done easily using the Windows + installer. Its interface and functionality is similar to other wizard + based installers, with only a few items of interest. +

    + +

    +

      +
    • Installation as a service: Tomcat will be + installed as a Windows + NT/2k/XP service no matter what setting is selected. Using the + checkbox on the component page sets the service as "auto" + startup, so that Tomcat is automatically started when Windows + starts. For optimal security, the service should be run as a + separate user, with reduced permissions (see the Windows Services + administration tool and its documentation).
    • +
    • Java location: The installer will use the registry + or the JAVA_HOME environment variable to determine the base path + of a J2SE 5 JRE. +
    • +
    • Tray icon: When Tomcat is run as a service, there + will not be any tray icon present when Tomcat is running. Note that + when choosing to run Tomcat at the end of installation, the tray + icon will be used even if Tomcat was installed as a service.
    • +
    • Refer to the + Windows Service HOW-TO + for information on how to manage Tomcat as Windows NT service. +
    • +
    +

    + +

    The installer will create shortcuts allowing starting and configuring + Tomcat. It is important to note that the Tomcat administration web + application can only be used when Tomcat is running.

    + +
    Unix daemon
    + +

    Tomcat can be run as a daemon using the jsvc tool from the + commons-daemon project. Source tarballs for jsvc are included with the + Tomcat binaries, and need to be compiled. Building jsvc requires + a C ANSI compiler (such as GCC), GNU Autoconf, and a JDK.

    + +

    Before running the script, the JAVA_HOME environment + variable should be set to the base path of the JDK. Alternately, when + calling the ./configure script, the path of the JDK may + be specified using the --with-java parameter, such as + ./configure --with-java=/usr/java.

    + +

    Using the following commands should result in a compiled jsvc binary, + located in the $CATALINA_HOME/bin folder. This assumes + that GNU TAR is used, and that CATALINA_HOME is an + environment variable pointing to the base path of the Tomcat + installation.

    + +

    Please note that you should use the GNU make (gmake) instead of + the native BSD make on FreeBSD systems.

    + +

    Download a commons-daemon binary from the Jakarta Commons download page, + and place jsvc.tar.gz and commons-daemon.jar in the + $CATALINA_HOME/bin folder.

    + +
    +    cd $CATALINA_HOME/bin
    +    tar xvfz jsvc.tar.gz
    +    cd jsvc-src
    +    autoconf
    +    ./configure
    +    make
    +    cp jsvc ..
    +    cd ..
    +
    + +

    Tomcat can then be run as a daemon using the following commands.

    + +
    +    cd $CATALINA_HOME
    +    ./bin/jsvc -cp ./bin/bootstrap.jar \
    +        -outfile ./logs/catalina.out -errfile ./logs/catalina.err \
    +        org.apache.catalina.startup.Bootstrap
    +
    + +

    jsvc has other useful parameters, such as -user which + causes it to switch to another user after the daemon initialization is + complete. This allows, for example, running Tomcat as a non privileged + user while still being able to use privileged ports. + jsvc --help will return the full jsvc usage + information. In particular, the -debug option is useful + to debug issues running jsvc.

    + +

    The file $CATALINA_HOME/bin/jsvc/native/tomcat.sh can be + used as a template for starting Tomcat automatically at boot time from + /etc/init.d. The file is currently setup for running + Tomcat 4.1.x, so it is necessary to edit it and change the classname + from BootstrapService to Bootstrap.

    + +

    Note that the Commons-Daemon JAR file must be on your runtime classpath + to run Tomcat in this manner. The Commons-Daemon JAR file is in the Class-Path + entry of the bootstrap.jar manifest, but if you get a ClassNotFoundException + or a NoClassDefFoundError for a Commons-Daemon class, add the Commons-Daemon + JAR to the -cp argument when launching jsvc.

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/ssi-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/ssi-howto.html new file mode 100644 index 0000000..c7d39a0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/ssi-howto.html @@ -0,0 +1,349 @@ +Apache Tomcat 6.0 - SSI How To
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    SSI How To

    Printer Friendly Version
    print-friendly
    version +
    Introduction
    + +

    SSI (Server Side Includes) are directives that are placed in HTML pages, +and evaluated on the server while the pages are being served. They let you +add dynamically generated content to an existing HTML page, without having +to serve the entire page via a CGI program, or other dynamic technology. +

    + +

    Within Tomcat SSI support can be added when using Tomcat as your +HTTP server and you require SSI support. Typically this is done +during development when you don't want to run a web server like Apache.

    + +

    Tomcat SSI support implements the same SSI directives as Apache. See the + +Apache Introduction to SSI for information on using SSI directives.

    + +

    SSI support is available as a servlet and as a filter. You should use one +or the other to provide SSI support but not both.

    + +

    Servlet based SSI support is implemented using the class +org.apache.catalina.ssi.SSIServlet. Traditionally, this servlet +is mapped to the URL pattern "*.shtml".

    + +

    Filter based SSI support is implemented using the class +org.apache.catalina.ssi.SSIFilter. Traditionally, this filter +is mapped to the URL pattern "*.shtml", though it can be mapped to "*" as +it will selectively enable/disable SSI processing based on mime types. The +contentType init param allows you to apply SSI processing to JSP pages, +javascript, or any other content you wish.

    +

    By default SSI support is disabled in Tomcat.

    +
    Installation
    + +

    CAUTION - SSI directives can be used to execute programs +external to the Tomcat JVM. If you are using the Java SecurityManager this +will bypass your security policy configuration in catalina.policy. +

    + +

    To use the SSI servlet, remove the XML comments from around the SSI servlet +and servlet-mapping configuration in +$CATALINA_BASE/conf/web.xml.

    + +

    To use the SSI filter, remove the XML comments from around the SSI filter +and filter-mapping configuration in +$CATALINA_BASE/conf/web.xml.

    + +

    Only Contexts which are marked as privileged may use SSI features (see the +privileged property of the Context element).

    + +
    Servlet Configuration
    + +

    There are several servlet init parameters which can be used to +configure the behaviour of the SSI servlet. +

      +
    • buffered - Should output from this servlet be buffered? +(0=false, 1=true) Default 0 (false).
    • +
    • debug - Debugging detail level for messages logged +by this servlet. Default 0.
    • +
    • expires - The number of seconds before a page with SSI +directives will expire. Default behaviour is for all SSI directives to be +evaluated for every request.
    • +
    • isVirtualWebappRelative - Should "virtual" SSI directive +paths be interpreted as relative to the context root, instead of the server +root? (0=false, 1=true) Default 0 (false).
    • +
    • inputEncoding - The encoding to be assumed for SSI +resources if one cannot be determined from the resource itself. Default is +the default platform encoding.
    • +
    • outputEncoding - The encoding to be used for the result +of the SSI processing. Default is UTF-8.
    • +
    +

    + +
    Filter Configuration
    + +

    There are several filter init parameters which can be used to +configure the behaviour of the SSI filter. +

      +
    • contentType - A regex pattern that must be matched before +SSI processing is applied. When crafting your own pattern, don't forget that a +mime content type may be followed by an optional character set in the form +"mime/type; charset=set" that you must take into account. Default is +"text/x-server-parsed-html(;.*)?".
    • +
    • debug - Debugging detail level for messages logged +by this servlet. Default 0.
    • +
    • expires - The number of seconds before a page with SSI +directives will expire. Default behaviour is for all SSI directives to be +evaluated for every request.
    • +
    • isVirtualWebappRelative - Should "virtual" SSI directive +paths be interpreted as relative to the context root, instead of the server +root? (0=false, 1=true) Default 0 (false).
    • +
    +

    + +
    Directives
    +

    Server Side Includes are invoked by embedding SSI directives in an HTML document + whose type will be processed by the SSI servlet. The directives take the form of an HTML + comment. The directive is replaced by the results of interpreting it before sending the + page to the client. The general form of a directive is:

    +

    <!--#directive [parm=value] -->

    +

    The directives are: +

      +
    • +config - <!--#config timefmt="%B %Y" --> +Used to set the format of dates and other items processed by SSI +
    • +
    • +echo - <!--#echo var="VARIABLE_NAME" --> +will be replaced bt the value of the variable. +
    • +
    • +exec - Used to run commands on the host system. +
    • +
    • +include - <!--#include virtual="file-name" --> +inserts the contents +
    • +
    • +flastmod - <!--#flastmod file="filename.shtml" --> +Returns the time that a file was lost modified. +
    • +
    • +fsize - <!--#fsize file="filename.shtml" --> +Returns the size of a file. +
    • +
    • +printenv - <!--#printenv --> +Returns the list of all the defined variables. +
    • +
    • +set - <!--#set var="foo" value="Bar" --> +is used to assign a value to a user-defind variable. +
    • +
    • +if elif endif else - Used to create conditional sections. For example:
    • +<!--#config timefmt="%A" -->
      + <!--#if expr="$DATE_LOCAL = /Monday/" -->
      + <p>Meeting at 10:00 on Mondays</p>
      + <!--#elif expr="$DATE_LOCAL = /Friday/" -->
      + <p>Turn in your time card</p>
      + <!--#else -->
      + <p>Yoga class at noon.</p>
      + <!--#endif -->
      +
    +

    +See the +

    +Apache Introduction to SSI for more information on using SSI directives.

    +
    Variables
    +

    The SSI servlet currently implements the following variables: +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Variable NameDescription
    AUTH_TYPE + The type of authentication used for this user: BASIC, FORM, etc.
    CONTENT_LENGTH + The length of the data (in bytes or the number of + characters) passed from a form.
    CONTENT_TYPE + The MIME type of the query data, such as "text/html".
    DATE_GMT +Current date and time in GMT
    DATE_LOCAL +Current date and time in the local time zone
    DOCUMENT_NAME +The current file
    DOCUMENT_URI +Virtual path to the file
    GATEWAY_INTERFACE + The revision of the Common Gateway Interface that the + server uses if enabled: "CGI/1.1".
    HTTP_ACCEPT + A list of the MIME types that the client can accept.
    HTTP_ACCEPT_ENCODING + A list of the compression types that the client can accept.
    HTTP_ACCEPT_LANGUAGE + A list of the laguages that the client can accept.
    HTTP_CONNECTION + The way that the connection from the client is being managed: + "Close" or "Keep-Alive".
    HTTP_HOST + The web site that the client requested.
    HTTP_REFERER + The URL of the document that the client linked from.
    HTTP_USER_AGENT + The browser the client is using to issue the request.
    LAST_MODIFIED +Last modification date and time for current file
    PATH_INFO + Extra path information passed to a servlet.
    PATH_TRANSLATED + The translated version of the path given by the + variable PATH_INFO.
    QUERY_STRING +The query string that follows the "?" in the URL. +
    QUERY_STRING_UNESCAPED +Undecoded query string with all shell metacharacters escaped +with "\"
    REMOTE_ADDR + The remote IP address of the user making the request.
    REMOTE_HOST + The remote hostname of the user making the request.
    REMOTE_PORT + The port number at remote IP address of the user making the request.
    REMOTE_USER + The authenticated name of the user.
    REQUEST_METHOD + The method with which the information request was + issued: "GET", "POST" etc.
    REQUEST_URI + The web page originally requested by the client.
    SCRIPT_FILENAME + The location of the current web page on the server.
    SCRIPT_NAME + The name of the web page.
    SERVER_ADDR + The server's IP address.
    SERVER_NAME + The server's hostname or IP address.
    SERVER_PORT + The port on which the server received the request.
    SERVER_PROTOCOL + The protocol used by the server. E.g. "HTTP/1.1".
    SERVER_SOFTWARE + The name and version of the server software that is + answering the client request.
    UNIQUE_ID + A token used to identify the current session if one + has been established.
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/ssl-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/ssl-howto.html new file mode 100644 index 0000000..4e8b0c8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/ssl-howto.html @@ -0,0 +1,597 @@ +Apache Tomcat 6.0 - SSL Configuration HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    SSL Configuration HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    Quick Start
    + +

    IMPORTANT NOTE: This Howto refers to usage of JSSE, that comes included with + jdk 1.5 and higher. When using APR, Tomcat will + use OpenSSL, which uses a different configuration.

    + +
    +

    The description below uses the variable name $CATALINA_HOME + to refer to the directory into which you have installed Tomcat 6, + and is the base directory against which most relative paths are + resolved. However, if you have configured Tomcat 6 for multiple + instances by setting a CATALINA_BASE directory, you should use + $CATALINA_BASE instead of $CATALINA_HOME for each of these + references.

    +
    + +

    To install and configure SSL support on Tomcat 6, you need to follow +these simple steps. For more information, read the rest of this HOW-TO.

    +
      +
    1. Create a certificate keystore by executing the following command: +

      Windows:

      +
      +%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA
      +
      +

      Unix:

      +
      +$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA
      +
      +

      + and specify a password value of "changeit".


    2. +
    3. Uncomment the "SSL HTTP/1.1 Connector" entry in + $CATALINA_HOME/conf/server.xml and tweak as necessary.
    4. +

      +
    + + +
    Introduction to SSL
    + +

    SSL, or Secure Socket Layer, is a technology which allows web browsers and +web servers to communicate over a secured connection. This means that the data +being sent is encrypted by one side, transmitted, then decrypted by the other +side before processing. This is a two-way process, meaning that both the +server AND the browser encrypt all traffic before sending out data.

    + +

    Another important aspect of the SSL protocol is Authentication. This means +that during your initial attempt to communicate with a web server over a secure +connection, that server will present your web browser with a set of +credentials, in the form of a "Certificate", as proof the site is who and what +it claims to be. In certain cases, the server may also request a Certificate +from your web browser, asking for proof that you are who you claim +to be. This is known as "Client Authentication," although in practice this is +used more for business-to-business (B2B) transactions than with individual +users. Most SSL-enabled web servers do not request Client Authentication.

    + +
    SSL and Tomcat
    + +

    It is important to note that configuring Tomcat to take advantage of +secure sockets is usually only necessary when running it as a stand-alone +web server. When running Tomcat primarily as a Servlet/JSP container behind +another web server, such as Apache or Microsoft IIS, it is usually necessary +to configure the primary web server to handle the SSL connections from users. +Typically, this server will negotiate all SSL-related functionality, then +pass on any requests destined for the Tomcat container only after decrypting +those requests. Likewise, Tomcat will return cleartext responses, that will +be encrypted before being returned to the user's browser. In this environment, +Tomcat knows that communications between the primary web server and the +client are taking place over a secure connection (because your application +needs to be able to ask about this), but it does not participate in the +encryption or decryption itself.

    + +
    Certificates
    + +

    In order to implement SSL, a web server must have an associated Certificate +for each external interface (IP address) that accepts secure connections. +The theory behind this design is that a server should provide some kind of +reasonable assurance that its owner is who you think it is, particularly +before receiving any sensitive information. While a broader explanation of +Certificates is beyond the scope of this document, think of a Certificate +as a "digital driver's license" for an Internet address. It states what +company the site is associated with, along with some basic contact +information about the site owner or administrator.

    + +

    This "driver's license" is cryptographically signed by its owner, and is +therefore extremely difficult for anyone else to forge. For sites involved +in e-commerce, or any other business transaction in which authentication of +identity is important, a Certificate is typically purchased from a well-known +Certificate Authority (CA) such as VeriSign or Thawte. Such +certificates can be electronically verified -- in effect, the Certificate +Authority will vouch for the authenticity of the certificates that it grants, +so you can believe that that Certificate is valid if you trust the Certificate +Authority that granted it.

    + +

    In many cases, however, authentication is not really a concern. An +administrator may simply want to ensure that the data being transmitted and +received by the server is private and cannot be snooped by anyone who may be +eavesdropping on the connection. Fortunately, Java provides a relatively +simple command-line tool, called keytool, which can easily create +a "self-signed" Certificate. Self-signed Certificates are simply user +generated Certificates which have not been officially registered with any +well-known CA, and are therefore not really guaranteed to be authentic at all. +Again, this may or may not even be important, depending on your needs.

    + +
    General Tips on Running SSL
    + +

    The first time a user attempts to access a secured page on your site, +he or she is typically presented with a dialog containing the details of +the certificate (such as the company and contact name), and asked if he or she +wishes to accept the Certificate as valid and continue with the transaction. +Some browsers will provide an option for permanently accepting a given +Certificate as valid, in which case the user will not be bothered with a +prompt each time they visit your site. Other browsers do not provide this +option. Once approved by the user, a Certificate will be considered valid +for at least the entire browser session.

    + +

    Also, while the SSL protocol was designed to be as efficient as securely +possible, encryption/decryption is a computationally expensive process from +a performance standpoint. It is not strictly necessary to run an entire +web application over SSL, and indeed a developer can pick and choose which +pages require a secure connection and which do not. For a reasonably busy +site, it is customary to only run certain pages under SSL, namely those +pages where sensitive information could possibly be exchanged. This would +include things like login pages, personal information pages, and shopping +cart checkouts, where credit card information could possibly be transmitted. +Any page within an application can be requested over a secure socket by +simply prefixing the address with https: instead of +http:. Any pages which absolutely require +a secure connection should check the protocol type associated with the +page request and take the appropriate action if https is not +specified.

    + +

    Finally, using name-based virtual hosts on a secured connection can be +problematic. This is a design limitation of the SSL protocol itself. The SSL +handshake, where the client browser accepts the server certificate, must occur +before the HTTP request is accessed. As a result, the request information +containing the virtual host name cannot be determined prior to authentication, +and it is therefore not possible to assign multiple certificates to a single +IP address. If all virtual hosts on a single IP address need to authenticate +against the same certificate, the addition of multiple virtual hosts should not +interfere with normal SSL operations on the server. Be aware, however, that +most client browsers will compare the server's domain name against the domain +name listed in the certificate, if any (applicable primarily to official, +CA-signed certificates). If the domain names do not match, these browsers will +display a warning to the client user. In general, only address-based virtual +hosts are commonly used with SSL in a production environment.

    + +
    Configuration
    + +
    Prepare the Certificate Keystore
    + +

    Tomcat currently operates only on JKS, PKCS11 or +PKCS12 format keystores. The JKS format +is Java's standard "Java KeyStore" format, and is the format created by the +keytool command-line utility. This tool is included in the JDK. +The PKCS12 format is an internet standard, and can be manipulated +via (among other things) OpenSSL and Microsoft's Key-Manager. +

    + +

    Each entry in a keystore is identified by an alias string. Whilst many +keystore implmentations treat alaises in a case insensitive manner, case +sensitive implementations are available. The PKCS11 specification, +for example, requires that aliases are case sensitive. To avoid issues related +to the case sensitivity of aliaises, it is not recommended to use aliases that +differ only in case. +

    + +

    To import an existing certificate into a JKS keystore, please read the +documentation (in your JDK documentation package) about keytool. +Note that openssl often adds a readable comments before the key, keytooldoes not support that, so remove the openssl comments if they exist before importing the key using keytool. +

    +

    To import an existing certificate signed by your own CA into a PKCS12 +keystore using OpenSSL you would execute a command like: +

    openssl pkcs12 -export -in mycert.crt -inkey mykey.key \
    +                        -out mycert.p12 -name tomcat -CAfile myCA.crt \
    +                        -caname root -chain
    +
    +For more advanced cases, consult the OpenSSL +documententation. +

    +

    To create a new keystore from scratch, containing a single self-signed +Certificate, execute the following from a terminal command line:

    +

    Windows:

    +
    +%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA
    +
    +

    Unix:

    +
    +$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA
    +
    + +

    (The RSA algorithm should be preferred as a secure algorithm, and this +also ensures general compatibility with other servers and components.)

    + +

    This command will create a new file, in the home directory of the user +under which you run it, named ".keystore". To specify a +different location or filename, add the -keystore parameter, +followed by the complete pathname to your keystore file, +to the keytool command shown above. You will also need to +reflect this new location in the server.xml configuration file, +as described later. For example:

    +

    Windows:

    +
    +%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA \
    +  -keystore \path\to\my\keystore
    +
    +

    Unix:

    +
    +$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA \
    +  -keystore /path/to/my/keystore
    +
    + +

    After executing this command, you will first be prompted for the keystore +password. The default password used by Tomcat is "changeit" +(all lower case), although you can specify a custom password if you like. +You will also need to specify the custom password in the +server.xml configuration file, as described later.

    + +

    Next, you will be prompted for general information about this Certificate, +such as company, contact name, and so on. This information will be displayed +to users who attempt to access a secure page in your application, so make +sure that the information provided here matches what they will expect.

    + +

    Finally, you will be prompted for the key password, which is the +password specifically for this Certificate (as opposed to any other +Certificates stored in the same keystore file). You MUST +use the same password here as was used for the keystore password itself. +(Currently, the keytool prompt will tell you that pressing the +ENTER key does this for you automatically.)

    + +

    If everything was successful, you now have a keystore file with a +Certificate that can be used by your server.

    + +

    Note: your private key password and keystore password +should be the same. If they differ, you will get an error along the lines +of java.io.IOException: Cannot recover key, as documented in +Bugzilla issue 38217, +which contains further references for this issue.

    + +
    + +
    Edit the Tomcat Configuration File
    +

    If you are using APR, you have the option of configuring an alternative engine to openSSL. +

    +<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="someengine" />
    +
    +The default value is +
    +<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
    +
    +So to use SSL under APR, make sure the SSLEngine attribute is set to something other than off. +The default value is on and if you specify another value, it has to be a valid engine name. +
    +If you haven't compiled in SSL support into your Tomcat Native library, then you can turn this initialization off +
    +<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="off" />
    +
    + +

    + +

    The final step is to configure your secure socket in the +$CATALINA_HOME/conf/server.xml file, where +$CATALINA_HOME represents the directory into which you +installed Tomcat 6. An example <Connector> element +for an SSL connector is included in the default server.xml +file installed with Tomcat. It will look something like this:

    +
    +<-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
    +<!--
    +<Connector 
    +           port="8443" minSpareThreads="5" maxSpareThreads="75"
    +           enableLookups="true" disableUploadTimeout="true" 
    +           acceptCount="100"  maxThreads="200"
    +           scheme="https" secure="true" SSLEnabled="true"
    +           keystoreFile="${user.home}/.keystore" keystorePass="changeit"
    +           clientAuth="false" sslProtocol="TLS"/>
    +-->
    +
    +

    + The example above will throw an error if you have the APR and the Tomcat Native libraries in your path, + as tomcat will try to autoload the APR connector. The APR connector uses different attributes for + SSL keys and certificates. An example of such configuration would be +

    +<-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
    +<!--
    +<Connector 
    +           port="8443" minSpareThreads="5" maxSpareThreads="75"
    +           enableLookups="true" disableUploadTimeout="true" 
    +           acceptCount="100"  maxThreads="200"
    +           scheme="https" secure="true" SSLEnabled="true"
    +           SSLCertificateFile="/usr/local/ssl/server.crt" 
    +           SSLCertificateKeyFile="/usr/local/ssl/server.pem"
    +           clientAuth="false" sslProtocol="TLS"/>
    +-->
    +
    +

    + +

    + To avoid auto configuration you can define which connector to use by specifying a classname + in the protocol attribute.
    + To define a Java connector, regardless if the APR library is loaded or not do: +

    +<-- Define a blocking Java SSL Coyote HTTP/1.1 Connector on port 8443 -->
    +<!--
    +<Connector protocol="org.apache.coyote.http11.Http11Protocol"
    +           port="8443" minSpareThreads="5" maxSpareThreads="75"
    +           enableLookups="true" disableUploadTimeout="true" 
    +           acceptCount="100"  maxThreads="200"
    +           scheme="https" secure="true" SSLEnabled="true"
    +           keystoreFile="${user.home}/.keystore" keystorePass="changeit"
    +           clientAuth="false" sslProtocol="TLS"/>
    +-->
    +<-- Define a non-blocking Java SSL Coyote HTTP/1.1 Connector on port 8443 -->
    +<!--
    +<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
    +           port="8443" minSpareThreads="5" maxSpareThreads="75"
    +           enableLookups="true" disableUploadTimeout="true" 
    +           acceptCount="100"  maxThreads="200"
    +           scheme="https" secure="true" SSLEnabled="true"
    +           keystoreFile="${user.home}/.keystore" keystorePass="changeit"
    +           clientAuth="false" sslProtocol="TLS"/>
    +-->
    +
    +and to specify an APR connector +
    +<-- Define a APR SSL Coyote HTTP/1.1 Connector on port 8443 -->
    +<!--
    +<Connector protocol="org.apache.coyote.http11.Http11AprProtocol"
    +           port="8443" minSpareThreads="5" maxSpareThreads="75"
    +           enableLookups="true" disableUploadTimeout="true" 
    +           acceptCount="100"  maxThreads="200"
    +           scheme="https" secure="true" SSLEnabled="true"
    +           SSLCertificateFile="/usr/local/ssl/server.crt" 
    +           SSLCertificateKeyFile="/usr/local/ssl/server.pem"
    +           clientAuth="false" sslProtocol="TLS"/>
    +-->
    +
    + +

    + +

    You will note that the Connector element itself is commented out by default, +so you will need to remove the comment tags around it. Then, you can +customize the specified attributes as necessary. For detailed information +about the various options, consult the +Server Configuration Reference. The +following discussion covers only those attributes of most interest when +setting up SSL communication.

    + +

    The port attribute (default value is 8443) is the TCP/IP +port number on which Tomcat will listen for secure connections. You can +change this to any port number you wish (such as to the default port for +https communications, which is 443). However, special setup +(outside the scope of this document) is necessary to run Tomcat on port +numbers lower than 1024 on many operating systems.

    + +
    +

    If you change the port number here, you should also change the + value specified for the redirectPort attribute on the + non-SSL connector. This allows Tomcat to automatically redirect + users who attempt to access a page with a security constraint specifying + that SSL is required, as required by the Servlet 2.4 Specification.

    +
    + +

    There are addional option used to configure the SSL protocol. + You may need to add or change the following attribute +values, depending on how you configured your keystore earlier:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AttributeDescription
    clientAuthSet this value to true if you want Tomcat to require + all SSL clients to present a client Certificate in order to use + this socket. Set this value to want if you want Tomcat + to request a client Certificate, but not fail if one isn't presented. +
    SSLEnabled + Use this attribute to enable SSL traffic on a connector. + To turn on SSL handshake/encryption/decryption on a connector + set this value to true. + The default value is false. + When turning this value true you will want to set the + scheme and the secure attributes as well + to pass the correct request.getScheme() and + request.isSecure() values to the servlets +
    keystoreFileAdd this attribute if the keystore file you created is not in + the default place that Tomcat expects (a file named + .keystore in the user home directory under + which Tomcat is running). You can specify an absolute pathname, + or a relative pathname that is resolved against the + $CATALINA_BASE environment variable.
    keystorePassAdd this element if you used a different keystore (and Certificate) + password than the one Tomcat expects (changeit).
    keystoreTypeAdd this element if using a keystore type other than + JKS.
    sslProtocolThe encryption/decryption protocol to be used on this socket. + It is not recommended to change this value if you are using Sun's + JVM. It is reported that IBM's 1.4.1 implementation + of the TLS protocol is not compatible with some popular browsers. + In this case, use the value SSL.
    ciphersThe comma separated list of encryption ciphers that this socket is + allowed to use. By default, any available cipher is allowed.
    algorithmThe X509 algorithm to use. This defaults to the Sun + implementation (SunX509). For IBM JVMs you should use + the value IbmX509. For other vendors, consult the JVM + documentation for the correct value. +
    truststoreFileThe TrustStore file to use to validate client certificates.
    truststorePassThe password to access the TrustStore. This defaults to the value + of keystorePass.
    truststoreTypeAdd this element if your are using a different format for the + TrustStore then you are using for the KeyStore.
    keyAliasAdd this element if your have more than one key in the KeyStore. + If the element is not present the first key read in the KeyStore + will be used.
    + +

    After completing these configuration changes, you must restart Tomcat as +you normally do, and you should be in business. You should be able to access +any web application supported by Tomcat via SSL. For example, try:

    +
    +https://localhost:8443
    +
    + +

    and you should see the usual Tomcat splash page (unless you have modified +the ROOT web application). If this does not work, the following section +contains some troubleshooting tips.

    + +
    + +
    Installing a Certificate from a Certificate Authority
    +

    To obstain and install a Certificate from a Certificate Authority (like verisign.com, thawte.com +or trustcenter.de) you should have read the previous section and then follow these instructions:

    + +
    Create a local Certificate Signing Request (CSR)
    +

    In order to obtain a Certificate from the Certificate Authority of your choice +you have to create a so called Certificate Signing Request (CSR). That CSR will be used +by the Certificate Authority to create a Certificate that will identify your website +as "secure". To create a CSR follow these steps:

    +
      +
    • Create a local Certificate (as described in the previous section): +
      keytool -genkey -alias tomcat -keyalg RSA \
      +	-keystore <your_keystore_filename>
      + Note: In some cases you will have to enter the domain of your website (i.e. www.myside.org) + in the field "first- and lastname" in order to create a working Certificate. +
    • +
    • The CSR is then created with: +
      keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr \
      +	-keystore <your_keystore_filename>
      +
    • +
    +

    Now you have a file called certreq.csr that you can submit to the Certificate Authority (look at the +documentation of the Certificate Authority website on how to do this). In return you get a Certificate.

    +
    + +
    Importing the Certificate
    +

    Now that you have your Certificate you can import it into you local keystore. +First of all you have to import a so called Chain Certificate or Root Certificate into your keystore. +After that you can procede with importing your Certificate.

    + +
      +
    • Download a Chain Certificate from the Certificate Authority you obtained the Certificate from.
      + For Verisign.com commercial certificates go to: + http://www.verisign.com/support/install/intermediate.html
      + For Verisign.com trial certificates go to: + http://www.verisign.com/support/verisign-intermediate-ca/Trial_Secure_Server_Root/index.html + For Trustcenter.de go to: + http://www.trustcenter.de/certservices/cacerts/en/en.htm#server
      + For Thawte.com go to: + http://www.thawte.com/certs/trustmap.html
      +
    • +
    • Import the Chain Certificate into you keystore +
      keytool -import -alias root -keystore <your_keystore_filename> \
      +	-trustcacerts -file <filename_of_the_chain_certificate>
      +
    • +
    • And finally import your new Certificate +
      keytool -import -alias tomcat -keystore <your_keystore_filename> \
      +	-file <your_certificate_filename>
      +
    • +
    +
    +
    Troubleshooting
    + +

    Here is a list of common problems that you may encounter when setting up +SSL communications, and what to do about them.

    + +
      + +
    • I get "java.security.NoSuchAlgorithmException" errors in my + log files. +
      +

      The JVM cannot find the JSSE JAR files. Follow all of the directions to + download and install JSSE.

      +
    • + +
    • When Tomcat starts up, I get an exception like + "java.io.FileNotFoundException: {some-directory}/{some-file} not found". +
      +

      A likely explanation is that Tomcat cannot find the keystore file + where it is looking. By default, Tomcat expects the keystore file to + be named .keystore in the user home directory under which + Tomcat is running (which may or may not be the same as yours :-). If + the keystore file is anywhere else, you will need to add a + keystoreFile attribute to the <Factory> + element in the Tomcat + configuration file.

      +
    • + +
    • When Tomcat starts up, I get an exception like + "java.io.FileNotFoundException: Keystore was tampered with, or + password was incorrect". +
      +

      Assuming that someone has not actually tampered with + your keystore file, the most likely cause is that Tomcat is using + a different password than the one you used when you created the + keystore file. To fix this, you can either go back and + recreate the keystore + file, or you can add or update the keystorePass + attribute on the <Connector> element in the + Tomcat configuration + file. REMINDER - Passwords are case sensitive!

      +
    • + +
    • When Tomcat starts up, I get an exception like + "java.net.SocketException: SSL handshake errorjavax.net.ssl.SSLException: No + available certificate or key corresponds to the SSL cipher suites which are + enabled." +
      +

      A likely explanation is that Tomcat cannot find the alias for the server + key withinthe specified keystore. Check that the correct + keystoreFile and keyAlias are specified in the + <Connector> element in the + Tomcat configuration file. + REMINDER - keyAlias values may be case + sensitive!

      +
    • + +
    + +

    If you are still having problems, a good source of information is the +TOMCAT-USER mailing list. You can find pointers to archives +of previous messages on this list, as well as subscription and unsubscription +information, at +http://tomcat.apache.org/lists.html.

    + +
    Miscellaneous Tips and Bits
    + +

    To access the SSL session ID from the request, use:
    + + + String sslID = (String)request.getAttribute("javax.servlet.request.ssl_session"); + +
    +For additional discussion on this area, please see +Bugzilla. +

    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/status.html b/P51/apache-tomcat-6.0.14/webapps/docs/status.html new file mode 100644 index 0000000..7894745 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/status.html @@ -0,0 +1,98 @@ +Apache Tomcat 6.0 - Project Status
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Project Status

    Printer Friendly Version
    print-friendly
    version +
    Preface
    +

    + This document attempts to convey the current status of Tomcat development + in "big picture" terms. This is not the place to check if an individual + bug report has been addressed or when an individual feature will be available. +

    +

    + This page is updated roughly once per every couple of Tomcat minor releases, + so for day-to-day status you should check the tomcat-user and tomcat-dev mailing + lists. You can always inquire there as to the availability or status of a + specific feature or component. +

    +
    Current Status Summary
    +

    + Tomcat 5.0.27 was released on June 17th, 2004. At that time, the TOMCAT_5_0 + branch was tagged in CVS, and work on Tomcat 5.5 began. We have now had several + Tomcat 5.5 releases, including a couple of stable ones. Accordingly, Tomcat 5.5 + is now the focus on work. Tomcat 5.0 is in maintenance mode and its releases + will become less and less frequent. +

    +

    + Tomcat 5.5 has several major goals. They are discussed in the tomcat-dev + mailing list's "5.next" thread: + MARC. + The status of some of these items is detailed below. Once 5.5 releases are + available, please refer to the Changelog accompanying each release for detailed + changes, enhancements, and fixes. +

    +

    + Tomcat 4.1.x is no longer actively developed. It is maintained to address + only showstopper, security, and Servlet Specification compliance issues. Maintenance + for Tomcat 4.1.x will likely cease once a stable release or two of Tomcat 5.5 are out. + Users of Tomcat 4.1.x are strongly encouraged to upgrade to the latest stable Tomcat + 5.0 release. +

    +

    + Tomcat 4.0.x is relatively old, and not actively maintained or supported. + It is strongly recommended that users of these releases upgrade to the latest + stable Tomcat 5.0 release or at least the latest stable Tomcat 4.1 release. +

    +

    + Tomcat 3.3.x is in roughly the same maintenance mode as Tomcat 4.1.x. +

    +

    + Tomcat 3.2 and earlier are in roughly the same support state as Tomcat 4.0.x. + Users should upgrade to Tomcat 3.3.x or the latest stable Tomcat 5.0.x. +

    +
    How to read the report
    + +

    + The columns in this report contain the following information: +

      +
    • Priority - A sense of how important it is to address this + issue in the short term.
    • +
    • Action Item - Concise description of the action item + to be completed. Where relevant, Java package names of the + primary classes involved are listed in [square brackets]
    • +
    • Volunteers - Login of those developers who + have volunteered to assist in the design, implementation, testing, and + documentation of this action item's changes to Tomcat.
    • +
    + Developers can nominate + themselves to work on particular action items by asking a Committer to + add their name address to those items. The developers + working on each item should discuss and agree upon the approach to be + used for implementing the item's changes to the project source code + and documentation, prior to completing those changes. Such discussions + should take place on the tomcat-dev mailing list so that everyone can + stay apprised of what is going on, or chime in if they want to + contribute ideas and suggestions. +

    + +
    TODO List
    + +
    PriorityAction ItemVolunteers
    High + Refactor ClassLoaders for Tomcat 5.5 to allow container plugins. + costin
    Medium + Enhance Cluster functionality for Tomcat 5.5. + fhanik
    Medium + Continue fixing bugs and updating docs. + everyone
    + +
    Open bugs
    + +

    + The list of the bugs which are in an unresolved state for Tomcat 5 can be + seen + here. + Aspiring volunteers and others are strongly encouraged to attempt + to comment and help resolve these issues. +

    + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/tribes/faq.html b/P51/apache-tomcat-6.0.14/webapps/docs/tribes/faq.html new file mode 100644 index 0000000..89fceed --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/tribes/faq.html @@ -0,0 +1,5 @@ +Apache Tribes - The Tomcat Cluster Communication Module - Apache Tribes - Frequently Asked Questions
    Apache Tomcat

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tribes Development

    Apache Tribes - The Tomcat Cluster Communication Module

    Apache Tribes - Frequently Asked Questions

    Printer Friendly Version
    print-friendly
    version +
    Frequently Asked Questions
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/tribes/introduction.html b/P51/apache-tomcat-6.0.14/webapps/docs/tribes/introduction.html new file mode 100644 index 0000000..507e5ac --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/tribes/introduction.html @@ -0,0 +1,229 @@ +Apache Tribes - The Tomcat Cluster Communication Module - Apache Tribes - Introduction
    Apache Tomcat

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tribes Development

    Apache Tribes - The Tomcat Cluster Communication Module

    Apache Tribes - Introduction

    Printer Friendly Version
    print-friendly
    version +
    Quick Start
    + +

    Apache Tribes is a group or peer-to-peer communcation framework that enables you to easily connect + your remote objects to communicate with each other. +

    +
      +
    • Import: org.apache.catalina.tribes.Channel
    • +
    • Import: org.apache.catalina.tribes.Member
    • +
    • Import: org.apache.catalina.tribes.MembershipListener
    • +
    • Import: org.apache.catalina.tribes.ChannelListener
    • +
    • Import: org.apache.catalina.tribes.group.GroupChannel
    • +
    • Create a class that implements: org.apache.catalina.tribes.ChannelListener
    • +
    • Create a class that implements: org.apache.catalina.tribes.MembershipListener
    • +
    • Simple class to demonstrate how to send a message: +
      +        //create a channel
      +        Channel myChannel = new GroupChannel();
      +
      +        //create my listeners
      +        ChannelListener msgListener = new MyMessageListener();
      +        MembershipListener mbrListener = new MyMemberListener();
      +
      +        //attach the listeners to the channel
      +        myChannel.addMembershipListener(mbrListener);
      +        myChannel.addChannelListener(msgListener);
      +
      +        //start the channel
      +        myChannel.start(Channel.DEFAULT);
      +
      +        //create a message to be sent, message must implement java.io.Serializable
      +        //for performance reasons you probably want them to implement java.io.Externalizable
      +        Serializable myMsg = new MyMessage();
      +
      +        //retrieve my current members
      +        Member[] group = myChannel.getMembers();
      +
      +        //send the message
      +        channel.send(group,myMsg,Channel.SEND_OPTIONS_DEFAULT);
      +      
      +
    • +
    +

    + Simple yeah? There is a lot more to Tribes than we have shown, hopefully the docs will be able + to explain more to you. Remember, that we are always interested in suggestions, improvements, bug fixes + and anything that you think would help this project. +

    +

    + Note: Tribes is currently built for JDK1.5, you can run on JDK1.4 by a small modifications to locks used from the java.util.concurrent package. +

    +
    What is Tribes
    +

    + Tribes is a messaging framework with group communication abilities. Tribes allows you to send and receive + messages over a network, it also allows for dynamic discovery of other nodes in the network.
    + And that is the short story, it really is as simple as that. What makes Tribes useful and unique will be + described in the section below.
    +

    +

    + The Tribes module was started early 2006 and a small part of the code base comes from the clustering module + that has been existing since 2003 or 2004. + The current cluster implementation has several short comings and many work arounds were created due + to the complexity in group communication. Long story short, what should have been two modules a long time + ago, will be now. Tribes takes out the complexity of messaging from the replication module and becomes + a fully independent and highly flexible group communication module.
    +

    +

    + In Tomcat the old modules/cluster has now become modules/groupcom(Tribes) and + modules/ha (replication). This will allow development to proceed and let the developers + focus on the issues they are actually working on rather than getting boggled down in details of a module + they are not interested in. The understanding is that both communication and replication are complex enough, + and when trying to develop them in the same module, well you know, it becomes a cluster :)
    +

    +

    + Tribes allows for guaranteed messaging, and can be customized in many ways. Why is this important?
    + Well, you as a developer want to know that the messages you are sending are reaching their destination. + More than that, if a message doesn't reach its destination, the application on top of Tribes will be notified + that the message was never sent, and what node it failed. +

    + +
    Why another messaging framework
    +

    + I am a big fan of reusing code and would never dream of developing something if someone else has already + done it and it was available to me and the community I try to serve.
    + When I did my research to improve the clustering module I was constantly faced with a few obstacles:
    + 1. The framework wasn't flexible enough
    + 2. The framework was licensed in a way that neither I nor the community could use it
    + 3. Several features that I needed were missing
    + 4. Messaging was guaranteed, but no feedback was reported to me
    + 5. The semantics of my message delivery had to be configured before runtime
    + And the list continues... +

    +

    + So I came up with Tribes, to address these issues and other issues that came along. + When designing Tribes I wanted to make sure I didn't lose any of the flexibility and + delivery semantics that the existing frameworks already delivered. The goal was to create a framework + that could do everything that the others already did, but to provide more flexibility for the application + developer. In the next section will give you the high level overview of what features tribes offers or will offer. +

    +
    Feature Overview
    +

    + To give you an idea of the feature set I will list it out here. + Some of the features are not yet completed, if that is the case they are marked accordingly. +

    +

    + Pluggable modules
    + Tribes is built using interfaces. Any of the modules or components that are part of Tribes can be swapped out + to customize your own Tribes implementation. +

    +

    + Guaranteed Messaging
    + In the default implementation of Tribes uses TCP for messaging. TCP already has guaranteed message delivery + and flow control built in. I believe that the performance of Java TCP, will outperform an implementation of + Java/UDP/flow-control/message guarantee since the logic happens further down the stack.
    + Tribes supports both non-blocking and blocking IO operations. The recommended setting is to use non blocking + as it promotes better parallelism when sending and receiving messages. The blocking implementation is available + for those platforms where NIO is still a trouble child. +

    +

    + Different Guarantee Levels
    + There are three different levels of delivery guarantee when a message is sent.
    +

      +
    1. IO Based send guarantee. - fastest, least reliable
      + This means that Tribes considers the message transfer to be successful + if the message was sent to the socket send buffer and accepted.
      + On blocking IO, this would be socket.getOutputStream().write(msg)
      + On non blocking IO, this would be socketChannel.write(), and the buffer byte buffer gets emptied + followed by a socketChannel.read() to ensure the channel still open. + The read() has been added since write() will succeed if the connection has been "closed" + when using NIO. +
    2. +
    3. ACK based. - recommended, guaranteed delivery
      + When the message has been received on a remote node, an ACK is sent back to the sender, + indicating that the message was received successfully. +
    4. +
    5. SYNC_ACK based. - guaranteed delivery, guaranteed processed, slowest
      + When the message has been received on a remote node, the node will process + the message and if the message was processed successfully, an ACK is sent back to the sender + indicating that the message was received and processed successfully. + If the message was received, but processing it failed, an ACK_FAIL will be sent back + to the sender. This is a unique feature that adds an incredible amount value to the application + developer. Most frameworks here will tell you that the message was delivered, and the application + developer has to build in logic on whether the message was actually processed properly by the application + on the remote node. If configured, Tribes will throw an exception when it receives an ACK_FAIL + and associate that exception with the member that didn't process the message. +
    6. +
    + You can of course write even more sophisticated guarantee levels, and some of them will be mentioned later on + in the documentation. One mentionable level would be a 2-Phase-Commit, where the remote applications don't receive + the message until all nodes have received the message. Sort of like a all-or-nothing protocol. +

    +

    + Per Message Delivery Attributes
    + Perhaps the feature that makes Tribes stand out from the crowd of group communication frameworks. + Tribes enables you to send to decide what delivery semantics a message transfer should have on a per + message basis. Meaning, that your messages are not delivered based on some static configuration + that remains fixed after the message framework has been started.
    + To give you an example of how powerful this feature is, I'll try to illustrate it with a simple example. + Imagine you need to send 10 different messsages, you could send the the following way: +

    +      Message_1 - asynchronous and fast, no guarantee required, fire and forget
    +      Message_2 - all-or-nothing, either all receivers get it, or none.
    +      Message_3 - encrypted and SYNC_ACK based
    +      Message_4 - asynchronous, SYNC_ACK and call back when the message is processed on the remote nodes
    +      Message_5 - totally ordered, this message should be received in the same order on all nodes that have been
    +                  send totally ordered
    +      Message_6 - asynchronous and totally ordered
    +      Message_7 - RPC message, send a message, wait for all remote nodes to reply before returning
    +      Message_8 - RPC message, wait for the first reply
    +      Message_9 - RPC message, asynchronous, don't wait for a reply, collect them via a callback
    +      Message_10- sent to a member that is not part of this group
    +    
    + As you can imagine by now, these are just examples. The number of different semantics you can apply on a + per-message-basis is almost limitless. Tribes allows you to set up to 28 different on a message + and then configure Tribes to what flag results in what action on the message.
    + Imagine a shared transactional cache, probably >90% are reads, and the dirty reads should be completely + unordered and delivered as fast as possible. But transactional writes on the other hand, have to + be ordered so that no cache gets corrupted. With tribes you would send the write messages totally ordered, + while the read messages you simple fire to achieve highest throughput.
    + There are probably better examples on how this powerful feature can be used, so use your imagination and + your experience to think of how this could benefit you in your application. +

    +

    + Interceptor based message processing
    + Tribes uses a customizable interceptor stack to process messages that are sent and received.
    + So what, all frameworks have this!
    + Yes, but in Tribes interceptors can react to a message based on the per-message-attributes + that are sent runtime. Meaning, that if you add a encryption interceptor that encrypts message + you can decide if this interceptor will encrypt all messages, or only certain messages that are decided + by the applications running on top of Tribes.
    + This is how Tribes is able to send some messages totally ordered and others fire and forget style + like the example above.
    + The number of interceptors that are available will keep growing, and we would appreciate any contributions + that you might have. +

    +

    + Threadless Interceptor stack + The interceptor don't require any separate threads to perform their message manipulation.
    + Messages that are sent will piggy back on the thread that is sending them all the way through transmission. + The exception is the MessageDispatchInterceptor that will queue up the message + and send it on a separate thread for asynchronous message delivery. + Messages received are controlled by a thread pool in the receiver component.
    + The channel object can send a heartbeat() through the interceptor stack to allow + for timeouts, cleanup and other events.
    + The MessageDispatchInterceptor is the only interceptor that is configured by default. +

    +

    + Parallel Delivery
    + Tribes support parallel delivery of messages. Meaning that node_A could send three messages to node_B in + parallel. This feature becomes useful when sending messages with different delivery semantics. + Otherwise if Message_1 was sent totally ordered, Message_2 would have to wait for that message to complete.
    + Through NIO, Tribes is also able to send a message to several receivers at the same time on the same thread. +

    +

    + Silent Member Messaging
    + With Tribes you are able to send messages to members that are not in your group. + So by default, you can already send messages over a wide area network, even though the dynamic discover + module today is limited to local area networks by using multicast for dynamic node discovery. + Of course, the membership component will be expanded to support WAN memberships in the future. + But this is very useful, when you want to hide members from the rest of the group and only communicate with them +

    +
    Where can I get Tribes
    +

    + +

    + + +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/tribes/setup.html b/P51/apache-tomcat-6.0.14/webapps/docs/tribes/setup.html new file mode 100644 index 0000000..0729e4f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/tribes/setup.html @@ -0,0 +1,5 @@ +Apache Tribes - The Tomcat Cluster Communication Module - Apache Tribes - Configuration
    Apache Tomcat

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tribes Development

    Apache Tribes - The Tomcat Cluster Communication Module

    Apache Tribes - Configuration

    Printer Friendly Version
    print-friendly
    version +
    Configuration Overview
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/virtual-hosting-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/virtual-hosting-howto.html new file mode 100644 index 0000000..d5710ea --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/virtual-hosting-howto.html @@ -0,0 +1,89 @@ +Apache Tomcat 6.0 - Virtual Hosting and Tomcat
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Virtual Hosting and Tomcat

    Printer Friendly Version
    print-friendly
    version +
    Assumptions
    +

    + For the sake of this how-to, assume you have a development host with two + host names, ren and stimpy. Let's also assume + one instance of Tomcat running, so $CATALINA_HOME refers to + wherever it's installed, perhaps /usr/local/tomcat. +

    +

    + Also, this how-to uses Unix-style path separators and commands; if you're + on Windows modify accordingly. +

    +
    server.xml
    +

    + At the simplest, edit the Engine portion + of your server.xml file to look like this: +

    +
    +<Engine name="Catalina" defaultHost="ren">
    +    <Host name="ren"    appBase="webapps/ren"/>
    +    <Host name="stimpy" appBase="webapps/stimpy"/>
    +</Engine>
    +    
    +

    + Consult the configuration documentation for other attributes of the + Engine and + Hostelements. +

    +
    Webapps Directory
    +

    + Create directories for each of the virtual hosts: +

    +
    +mkdir $CATALINA_HOME/webapps/ren
    +mkdir $CATALINA_HOME/webapps/stimpy
    +    
    +
    Configuring Your Contexts
    +
    Approach #1
    +

    + Within your Context, create a META-INF directory and then + place your Context definition in it in a file named + context.xml. i.e. + $CATALINA_HOME/webapps/ren/ROOT/META-INF/context.xml + This makes deployment easier, particularly if you're distributing a WAR + file. +

    +
    +
    Approach #2
    +

    + Create a structure under $CATALINA_HOME/conf/Catalina + corresponding to your virtual hosts, e.g.: +

    +
    +mkdir $CATALINA_HOME/conf/Catalina/ren
    +mkdir $CATALINA_HOME/conf/Catalina/stimpy
    +      
    +

    + Note that the ending directory name "Catalina" represents the + name attribute of the + Engine element as shown above. +

    +

    + Now, for your default webapps, add: +

    +
    +$CATALINA_HOME/conf/Catalina/ren/ROOT.xml
    +$CATALINA_HOME/conf/Catalina/stimpy/ROOT.xml
    +      
    +

    + If you want to use the Tomcat manager webapp for each host, you'll also + need to add it here: +

    +
    +cd $CATALINA_HOME/conf/Catalina
    +cp localhost/manager.xml ren/
    +cp localhost/manager.xml stimpy/
    +      
    +
    +
    Further Information
    +

    + Consult the configuration documentation for other attributes of the + Context element. +

    +
    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/docs/windows-service-howto.html b/P51/apache-tomcat-6.0.14/webapps/docs/windows-service-howto.html new file mode 100644 index 0000000..e2555e6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/docs/windows-service-howto.html @@ -0,0 +1,332 @@ +Apache Tomcat 6.0 - Windows service HOW-TO
    
+      The Apache Tomcat Servlet/JSP Container
+

    Apache Tomcat 6.0

    Apache Logo

    Links

    User Guide

    Reference

    Apache Tomcat Development

    Apache Tomcat 6.0

    Windows service HOW-TO

    Printer Friendly Version
    print-friendly
    version +
    NOTICE
    +

    + This section of the documentation applies to procrun 1.0, and is now obsolete. +

    +
    Tomcat6 service application
    +

    + Tomcat6 is a service application for running Tomcat6 as NT service. +

    +
    Tomcat6w monitor application
    +

    + Tomcat6w is a GUI application for monitoring and configuring Tomcat + services. +

    +

    The available command line options are:

    +

    + + + + + + + + + +
    //ES//Edit service configurationThis is the default operation. It is called if the no option is + provided but the executable is renamed to servicenameW.exe
    //MS//Monitor servicePut the icon in the system try
    +

    +
    Command line arguments
    +

    + Each command line directive is in the form of //XX//ServiceName +

    +

    The available command line options are:

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    //TS//Run the service as console applicationThis is the default operation. It is called if the no option is + provided. The ServiceName is the name of the executable without + exe sufix, meaning Tomcat6
    //RS//Run the serviceCalled only from ServiceManager
    //SS//Stop the service
    //US//Update service parameters
    //IS//Install service
    //DS//Delete serviceStops the service if running
    +

    +
    Command line parameters
    +

    + Each command parameter is prefixed with --. + If the command line is prefixed with ++ then it's value will + be appended to the existing option. + If the environment variable with the same name as command line parameter but + prefixed with PR_ exists it will take precedence. + For example: +

    set PR_CLASSPATH=xx.jar
    +

    +

    is equivalent to providing +

    --Classpath=xx.jar
    +

    +

    as command line parameter.

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ParameterNameDefaultDescription
    --DescriptionService name description (maximum 1024 characters)
    --DisplayNameServiceNameService display name
    --Installprocrun.exe //RS//ServiceNameInstall image
    --StartupmanualService startup mode can be either auto or manual
    --DependsOnList of services that this service depend on. Dependent services + are separated using either # or ; characters
    --EnvironmentList of environment variables that will be provided to the service + in the form key=value. They are separated using either + # or ; characters
    --UserUser account used for running executable. It is used only for + StartMode java or exe and enables running applications + as service under account without LogonAsService privilege.
    --PasswordPassword for user account set by --User parameter
    --JavaHomeJAVA_HOMESet a different JAVA_HOME then defined by JAVA_HOME environment + variable
    --JvmautoUse either auto or specify the full path to the jvm.dll. + You can use the environment variable expansion here.
    --JvmOptions-XrsList of options in the form of -D or -X that will be + passed to the JVM. The options are separated using either + # or ; characters.
    --ClasspathSet the Java classpath
    --JvmMsInitial memory pool size in MB
    --JvmMxMaximum memory pool size in MB
    --JvmSsThread stack size in KB
    --StartImageExecutable that will be run.
    --StartPathWorking path for the start image executable.
    --StartClassClass that will be used for startup.
    --StartParamsList of parameters that will be passed to either StartImage or + StartClass. Parameters are separated using either # or + ; character.
    --StartMethodMainMethod name if differs then main
    --StartModeexecutableCan one of jvm java or exe
    --StopImageExecutable that will be run on Stop service signal.
    --StopPathWorking path for the stop image executable.
    --StopClassClass that will be used on Stop service signal.
    --StopParamsList of parameters that will be passed to either StopImage or + StopClass. Parameters are separated using either # or + ; character.
    --StopMethodMainMethod name if differs then main
    --StopModeexecutableCan one of jvm java or exe
    --StopTimeoutNo TimeoutDefines the timeout in seconds that procrun waits for service to + exit gracefully.
    --LogPathworking pathDefines the path for logging
    --LogPrefixjakarta_serviceDefines the service log filename
    --LogLevelINFODefines the logging level and can be either error, + info, warn or debug
    --StdOutputRedirected stdout filename
    --StdErrorRedirected stderr filename
    +

    +
    Installing services
    +

    +The safest way to manually install the service is to use the provided service.bat script. +

    +

    +

    +Install the service named 'Tomcat6'
    +C:\> service.bat install
    +
    +

    +

    +If using tomcat6.exe, you need to use the //IS// parameter. +

    +

    +

    +Install the service named 'Tomcat6'
    +C:\> tomcat6 //IS//Tomcat6 --DisplayName="Apache Tomcat 6" \
    +C:\> --Install="C:\Program Files\Tomcat\bin\tomcat6.exe" --Jvm=auto \
    +C:\> --StartMode=jvm --StopMode=jvm \
    +C:\> --StartClass=org.apache.catalina.startup.Bootstrap --StartParams=start \
    +C:\> --StopClass=org.apache.catalina.startup.Bootstrap --StopParams=stop
    +
    +

    +
    Updating services
    +

    +To update the service parameters, you need to use the //US// parameter. +

    +

    +

    +Update the service named 'Tomcat6
    +C:\> tomcat6 //US//Tomcat6 --Description="Apache Tomcat Server - http://tomcat.apache.org/ " \
    +C:\> --Startup=auto --Classpath=%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\bin\bootstrap.jar
    +
    +

    +
    Removing services
    +

    +To remove the service, you need to use the //DS// parameter.
    +If the service is running it will be stopped and then deleted. +

    +

    +

    +Remove the service named 'Tomcat6'
    +C:\> tomcat6 //DS//Tomcat6
    +
    +

    +
    Debugging services
    +

    +To run the service in console mode, you need to use the //TS// parameter. +The service shutdown can be initiated by pressing CTRL+C or +CTRL+BREAK. +If you rename the tomcat6.exe to testservice.exe then you can just execute the +testservice.exe and this command mode will be executed by default. +

    +

    +

    +Run the service named 'Tomcat6' in console mode
    +C:\> tomcat6 //TS//Tomcat6 [additional arguments]
    +Or simply execute:
    +C:\> tomcat6
    +
    +

    +

    + Copyright © 1999-2006, Apache Software Foundation +
    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/.classpath b/P51/apache-tomcat-6.0.14/webapps/ecommerce/.classpath new file mode 100644 index 0000000..b8a61a5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/.classpath @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/.cvsignore b/P51/apache-tomcat-6.0.14/webapps/ecommerce/.cvsignore new file mode 100644 index 0000000..a340c10 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/.cvsignore @@ -0,0 +1 @@ +work \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/.project b/P51/apache-tomcat-6.0.14/webapps/ecommerce/.project new file mode 100644 index 0000000..af84691 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/.project @@ -0,0 +1,18 @@ + + + RandoOnLine + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + com.sysdeo.eclipse.tomcat.tomcatnature + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/.tomcatplugin b/P51/apache-tomcat-6.0.14/webapps/ecommerce/.tomcatplugin new file mode 100644 index 0000000..3015aa2 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/.tomcatplugin @@ -0,0 +1,11 @@ + + + / + false + true + false + true + + + /RandoOnLine + diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/.cvsignore b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/.cvsignore new file mode 100644 index 0000000..d366d2e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/.cvsignore @@ -0,0 +1 @@ +classes \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Article.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Article.class new file mode 100644 index 0000000..e3e5ec4 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Article.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Categorie.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Categorie.class new file mode 100644 index 0000000..4ff8d51 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Categorie.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Client.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Client.class new file mode 100644 index 0000000..c7b3549 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Client.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Panier.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Panier.class new file mode 100644 index 0000000..a1045a5 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/articles/Panier.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/Erreur.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/Erreur.class new file mode 100644 index 0000000..d738652 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/Erreur.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/GestionConnexion.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/GestionConnexion.class new file mode 100644 index 0000000..0f28e46 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/GestionConnexion.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/GestionnaireArticles.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/GestionnaireArticles.class new file mode 100644 index 0000000..8664fbf Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/GestionnaireArticles.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/GestionnairePanier.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/GestionnairePanier.class new file mode 100644 index 0000000..7190010 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/GestionnairePanier.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/OperationBDD.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/OperationBDD.class new file mode 100644 index 0000000..b23efd2 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/OperationBDD.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/ParametresConnexion.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/ParametresConnexion.class new file mode 100644 index 0000000..1fbc8c1 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/ParametresConnexion.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/ParametresConnexion.class.bak b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/ParametresConnexion.class.bak new file mode 100644 index 0000000..61454e3 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/ParametresConnexion.class.bak differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/ParametresConnexion.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/ParametresConnexion.java new file mode 100644 index 0000000..d58a10b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/gestionnaires/ParametresConnexion.java @@ -0,0 +1,39 @@ +package com.gestionnaires; + +public class ParametresConnexion +{ + public String Serveur = "grive.u-strabg.fr"; + public String Port = "1521"; + public String Base = "v920"; + public String Utilisateur = "dut"; + public String Pwd = "dut"; + public String Url = "jdbc:oracle:thin:"; + public static final String CLASSE = "oracle.jdbc.driver.OracleDriver"; + + public ParametresConnexion() { ; } + public ParametresConnexion( ParametresConnexion params ) + { + this.CopierDepuis(params); + } + + public ParametresConnexion(String serveur, String port, String base, + String utilisateur, String pwd, String url) + { + this.Serveur = serveur; + this.Port = port; + this.Base = base; + this.Utilisateur = utilisateur; + this.Pwd = pwd; + this.Url = url; + } + + public void CopierDepuis( ParametresConnexion params ) + { + this.Serveur = params.Serveur; + this.Port = params.Port; + this.Base = params.Base; + this.Utilisateur = params.Utilisateur; + this.Pwd = params.Pwd; + this.Url = params.Url; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/servlets/ArticlesServlet.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/servlets/ArticlesServlet.class new file mode 100644 index 0000000..a9ab7ca Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/servlets/ArticlesServlet.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/servlets/ClientServlet.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/servlets/ClientServlet.class new file mode 100644 index 0000000..754f075 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/servlets/ClientServlet.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/servlets/PanierServlet.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/servlets/PanierServlet.class new file mode 100644 index 0000000..a1b7905 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/classes/com/servlets/PanierServlet.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/jstl.jar b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/jstl.jar new file mode 100644 index 0000000..6b41358 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/jstl.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/mysql-connector-java-5.0.8-bin.jar b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/mysql-connector-java-5.0.8-bin.jar new file mode 100644 index 0000000..0170c3e Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/mysql-connector-java-5.0.8-bin.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/ojdbc14.jar b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/ojdbc14.jar new file mode 100644 index 0000000..2a33709 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/ojdbc14.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/standard.jar b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/standard.jar new file mode 100644 index 0000000..258daae Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/lib/standard.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Article.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Article.java new file mode 100644 index 0000000..ee46e8d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Article.java @@ -0,0 +1,80 @@ +package com.articles; + +public class Article +{ + private String ref = ""; + private String categ = ""; + private String marque = ""; + private String modele = ""; + private double prix = 0; + private String photo = ""; + private String description = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + public String getCateg() + { + return this.categ; + } + public String getMarque() + { + return this.marque; + } + public String getModele() + { + return this.modele; + } + public double getPrix() + { + return this.prix; + } + public String getPhoto() + { + return this.photo; + } + public String getDescription() + { + return this.description; + } + + public void setRef(String ref) + { + this.ref = ref; + } + public void setCateg(String categ) + { + this.categ = categ; + } + public void setMarque(String marque) + { + this.marque = marque; + } + public void setModele(String modele) + { + this.modele = modele; + } + public void setPrix(double prix) + { + this.prix = prix; + } + public void setPhoto(String photo) + { + this.photo = photo; + } + public void setDescription(String description) + { + this.description = description; + } + + public int getQuantite() + { + return this.quantite; + } + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Article.java~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Article.java~ new file mode 100644 index 0000000..7038547 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Article.java~ @@ -0,0 +1,90 @@ +/* + * article.java + * + * Created on 18 janvier 2008, 14:26 + */ + +package com.articles; + +/** + * Article de la base de donne, avec la quantit en plus + * @author 3fvorillion + */ +public class Article +{ + private String ref = ""; + private String categ = ""; + private String marque = ""; + private String modele = ""; + private double prix = 0; + private String photo = ""; + private String description = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + public String getCateg() + { + return this.categ; + } + public String getMarque() + { + return this.marque; + } + public String getModele() + { + return this.modele; + } + public double getPrix() + { + return this.prix; + } + public String getPhoto() + { + return this.photo; + } + public String getDescription() + { + return this.description; + } + + public void setRef(String ref) + { + this.ref = ref; + } + public void setCateg(String categ) + { + this.categ = categ; + } + public void setMarque(String marque) + { + this.marque = marque; + } + public void setModele(String modele) + { + this.modele = modele; + } + public void setPrix(double prix) + { + this.prix = prix; + } + public void setPhoto(String photo) + { + this.photo = photo; + } + public void setDescription(String description) + { + this.description = description; + } + + public int getQuantite() + { + return this.quantite; + } + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Categorie.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Categorie.java new file mode 100644 index 0000000..5cc1f1a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Categorie.java @@ -0,0 +1,37 @@ +package com.articles; + +public class Categorie +{ + private int id = 0; + private String cat = ""; + + public Categorie() + { + ; + } + public Categorie(int id, String cat) + { + this.id = id; + this.cat = cat; + } + + public int getId() + { + return this.id; + } + + public void setId(int id) + { + this.id = id; + } + + public String getCat() + { + return this.cat; + } + + public void setCat(String cat) + { + this.cat = cat; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Categorie.java~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Categorie.java~ new file mode 100644 index 0000000..622ac2b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Categorie.java~ @@ -0,0 +1,41 @@ +package com.articles; + +/** + * Catgorie de la base de donne + * @author 3fvorillion + */ +public class Categorie +{ + private int id = 0; + private String cat = ""; + + public Categorie() + { + ; + } + public Categorie(int id, String cat) + { + this.id = id; + this.cat = cat; + } + + public int getId() + { + return this.id; + } + + public void setId(int id) + { + this.id = id; + } + + public String getCat() + { + return this.cat; + } + + public void setCat(String cat) + { + this.cat = cat; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Client.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Client.java new file mode 100644 index 0000000..5bae3fb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Client.java @@ -0,0 +1,60 @@ +package com.articles; + +public class Client +{ + private String nom = ""; + private String prenom = ""; + private String adresse = ""; + private String codePost = ""; + private String ville = ""; + + public String getNom() + { + return this.nom; + } + + public void setNom(String nom) + { + this.nom = nom; + } + + public String getPrenom() + { + return this.prenom; + } + + public void setPrenom(String prenom) + { + this.prenom = prenom; + } + + public String getAdresse() + { + return this.adresse; + } + + public void setAdresse(String adresse) + { + this.adresse = adresse; + } + + public String getCodePost() + { + return this.codePost; + } + + public void setCodePost(String codePost) + { + this.codePost = codePost; + } + + public String getVille() + { + return this.ville; + } + + public void setVille(String ville) + { + this.ville = ville; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Client.java~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Client.java~ new file mode 100644 index 0000000..b5c3135 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Client.java~ @@ -0,0 +1,64 @@ +package com.articles; + +/** + * Client qui achte des articles + * @author 3fvorillion + */ +public class Client +{ + private String nom = ""; + private String prenom = ""; + private String adresse = ""; + private String codePost = ""; + private String ville = ""; + + public String getNom() + { + return this.nom; + } + + public void setNom(String nom) + { + this.nom = nom; + } + + public String getPrenom() + { + return this.prenom; + } + + public void setPrenom(String prenom) + { + this.prenom = prenom; + } + + public String getAdresse() + { + return this.adresse; + } + + public void setAdresse(String adresse) + { + this.adresse = adresse; + } + + public String getCodePost() + { + return this.codePost; + } + + public void setCodePost(String codePost) + { + this.codePost = codePost; + } + + public String getVille() + { + return this.ville; + } + + public void setVille(String ville) + { + this.ville = ville; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Panier.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Panier.java new file mode 100644 index 0000000..179ea58 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Panier.java @@ -0,0 +1,25 @@ +package com.articles; + +public class Panier +{ + private double prixTotal = 0; + + public Panier() + { + ; + } + public Panier(double prixTotal) + { + this.prixTotal = prixTotal; + } + + public double getPrixTotal() + { + return this.prixTotal; + } + + public void setPrixTotal(double prixTotal) + { + this.prixTotal = prixTotal; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Panier.java~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Panier.java~ new file mode 100644 index 0000000..47ca54a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/articles/Panier.java~ @@ -0,0 +1,29 @@ +package com.articles; + +/** + * Panier du client. Il contient des articles. + * @author 3fvorillion + */ +public class Panier +{ + private double prixTotal = 0; + + public Panier() + { + ; + } + public Panier(double prixTotal) + { + this.prixTotal = prixTotal; + } + + public double getPrixTotal() + { + return this.prixTotal; + } + + public void setPrixTotal(double prixTotal) + { + this.prixTotal = prixTotal; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/Erreur.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/Erreur.java new file mode 100644 index 0000000..54cdcd4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/Erreur.java @@ -0,0 +1,23 @@ +package com.gestionnaires; + +public class Erreur +{ + private String message = ""; + + public Erreur() + {} + public Erreur(String message) + { + this.message = message; + } + + public String getMessage() + { + return this.message; + } + + public void setMessage(String message) + { + this.message = message; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/Erreur.java~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/Erreur.java~ new file mode 100644 index 0000000..65ff3ce --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/Erreur.java~ @@ -0,0 +1,27 @@ +package com.gestionnaires; + +/** + * Beans permettant d'afficher les erreurs dans la page erreurs.jsp + * @author 3fvorillion + */ +public class Erreur +{ + private String message = ""; + + public Erreur() + {} + public Erreur(String message) + { + this.message = message; + } + + public String getMessage() + { + return this.message; + } + + public void setMessage(String message) + { + this.message = message; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/GestionConnexion.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/GestionConnexion.java new file mode 100644 index 0000000..96c5a29 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/GestionConnexion.java @@ -0,0 +1,429 @@ +package com.gestionnaires; + +import java.sql.*; +import java.util.Vector; + +enum OperationBDD +{ + /** + * opération de sélection . + */ + OP_BDD_SELECTION, + /** + * opération de création de table. + */ + OP_BDD_CREER_TABLE, + /** + * opération de suppression de table. + */ + OP_BDD_SUPPR_TABLE +} + +public class GestionConnexion +{ + /* + * VARIABLES + */ + // paramtres + private ParametresConnexion paramsConn; + + // connexion + private Connection connection = null; + private Statement statement = null; + + // requte SQL + private String requeteSQL = ""; + private ResultSet resultSet = null; + + // erreurs - anomalies + private Vector vs_erreurs = null; + private Vector vs_anomalies = null; + + + /* + * CONSTRUCTEUR + */ + + public GestionConnexion() + throws ClassNotFoundException, Exception + { + /* + * Init les autres variables + */ + this.statement = null; + this.resultSet = null; + this.requeteSQL = ""; + + this.paramsConn = new ParametresConnexion(); + + //init la gestion des erreurs - anomalies + this.vs_erreurs = new Vector(); + this.vs_anomalies = new Vector(); + + try + { + // Rcupration du driver + Class.forName(ParametresConnexion.CLASSE).newInstance(); + } + catch (ClassNotFoundException ex) + { + //remonte l'exception + throw new ClassNotFoundException("La classe '"+ParametresConnexion.CLASSE+"' n'a pas t trouve."); + } + catch (Exception ex) + { + //remonte l'exception + throw ex; + } + } + + + /* + * METHODES D'INSTANCES + */ + public void ouvrir(ParametresConnexion params) + { + //Vrifie le paramtre + if (params == null) + throw new NullPointerException(); + + //Copie les paramtres + this.paramsConn.CopierDepuis(params); + + //Appelle la mthode sans paramtres + this.ouvrir(); + } + + public void ouvrir() + { + try + { + // ferme la conexion prcdente + this.fermerConnexion(); + + // init la nouvelle connexion + this.connection = DriverManager.getConnection(this.paramsConn.Url, + this.paramsConn.Utilisateur, this.paramsConn.Pwd); + + this.traiterWarning(this.connection.getWarnings()); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerConnexion(); + } + } + + public boolean estOuverte() + { + boolean bOuverte = false; + + try + { + if (this.connection != null) + bOuverte = !this.connection.isClosed(); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return bOuverte; + } + + public void fermerRessourcesRequete() + { + try + { + // Ferme le resultSet + if (this.resultSet != null) + { + this.resultSet.close(); + this.resultSet = null; + } + + // Ferme le statement + if (this.statement != null) + { + this.statement.close(); + this.statement = null; + } + + // Vide la requte + this.requeteSQL = ""; + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public void fermerConnexion() + { + try + { + // Ferme le statement + this.fermerRessourcesRequete(); + + // Ferme la connexion + if (this.connection != null) + { + this.connection.close(); + this.connection = null; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public boolean lancerRequeteSelection(String query) + { + boolean res = true; + + try + { + // verifie la connexion + if (this.connection != null) + { + // libre les ressources de la prcdente requte + this.fermerRessourcesRequete(); + + // prepare la requete + this.statement = this.connection.createStatement(); + this.traiterWarning(this.statement.getWarnings()); + + // emet la requete + this.resultSet = this.statement.executeQuery(query); + this.traiterWarning(this.resultSet.getWarnings()); + + // si on est arriv jusqu'ici, c'est qu'il n'y a pas eu de leve d'exception + // =>actualise la requte + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + // libre les ressources utilises + this.fermerRessourcesRequete(); + + //annonce l'chec de la requte SQL + res = false; + } + + return res; + } + + public int lancerRequeteModifBDD(String query) + { + int res = 0; + + try + { + // verifie la connexion + if (this.connection != null) + { + // libre les ressources de la prcdente requte + this.fermerRessourcesRequete(); + + // prepare la requete + this.statement = this.connection.createStatement(); + + // emet la requete + res = this.statement.executeUpdate(query); + this.traiterWarning(this.statement.getWarnings()); + + // si on est arriv jusqu'ici, c'est qu'il n'y a pas eu de leve d'exception + // =>actualise la requte + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + // libre les ressources utilises + this.fermerRessourcesRequete(); + + //annonce l'chec de la requte SQL + res = -1; + } + + return res; + } + + public ParametresConnexion getParametresConnexion() + { + //Retourne une copie de l'objet contenant les paramtres de connexion + return new ParametresConnexion(this.paramsConn); + } + + public String getRequeteSQL() + { + return this.requeteSQL; + } + + public Vector getInfosConnexion() + { + Vector vs_infosConn = new Vector(); + DatabaseMetaData dmd; + + try + { + // Vrifie que la connexion soit ouverte + if (this.estOuverte()) + { + // Etat de la connexion + vs_infosConn.add("Etat de la connexion : ouverte"); + vs_infosConn.add("------------------------------"); + + // Obtient les meta-datas de la base + dmd = this.connection.getMetaData(); + + vs_infosConn.add("Connexion : " + dmd.getURL()); + vs_infosConn.add("Driver : " + dmd.getDriverName()); + vs_infosConn.add("Version : " + dmd.getDriverVersion()); + } + else + { + // Etat de la connexion + vs_infosConn.add("Etat de la connexion : ferme"); + vs_infosConn.add("------------------------------"); + + vs_infosConn.add("Connexion : " + this.paramsConn.Url);//contient le Serveur, le Port et la Base + vs_infosConn.add("Utilisateur : " + this.paramsConn.Utilisateur); + vs_infosConn.add("Mot de passe : " + this.paramsConn.Pwd.length() + " caractre(s)"); + } + } + catch (SQLException ex) + { + // Erreur lors de l'obtention du nom des colonnes + this.traiterSQLException(ex); + } + + return vs_infosConn; + } + + public Vector getNomsColonnes() + { + Vector vs_cols = new Vector(); + ResultSetMetaData rsmd; + + try + { + // Vrifie si la requte a djà t lance + if (this.resultSet != null) + { + rsmd = this.resultSet.getMetaData(); // obtient les meta-datas de la requte + int nbrCols = rsmd.getColumnCount(); + + for (int idCol = 1; idCol <= nbrCols; idCol++) + if (rsmd.isSearchable(idCol)) + vs_cols.add(rsmd.getColumnName(idCol)); + } + else if (this.statement == null) + // anomalie + this.vs_anomalies.add("Vous n'avez pas encore lanc la requte!!"); + } + catch (SQLException ex) + { + // Erreur lors de l'obtention du nom des colonnes + this.traiterSQLException(ex); + } + + return vs_cols; + } + + public Vector> getDataVector() + { + Vector> v_datas = new Vector>(); + ResultSetMetaData rsmd; + + try + { + rsmd = this.resultSet.getMetaData(); + // Vrifie qu'il y ai un rsultat et place le curseur au dbut + if (rsmd.getColumnCount() > 0) + { + while (this.resultSet.next()) + { + Vector vo_ligne = new Vector(); + // cr la ligne + for (int idCol = 1; idCol <= rsmd.getColumnCount(); idCol++) + vo_ligne.add(this.resultSet.getObject(idCol)); + // ajoute la ligne au vecteur principal + v_datas.add(vo_ligne); + } + } + + if (v_datas.isEmpty()) // anomalie + this.vs_anomalies.add("Aucune donne trouve!!"); + } + catch (SQLException ex) + { + // Probleme lors de l'obtention des donnees + this.traiterSQLException(ex); + } + + return v_datas; + } + + /* + * GESTION DES ERREURS - ANOMALIES + */ + public void traiterSQLException(SQLException ex) + { + String str_ex; + + str_ex = "********* SQLException *********\n"; + while (ex != null) + { + str_ex = "SQLState : " + ex.getSQLState() + "\n"; + str_ex += "Message : " + ex.getMessage() + "\n"; + str_ex += "------------------------------\n"; + this.vs_erreurs.add(str_ex); + + ex = ex.getNextException(); + } + } + + public void traiterWarning(SQLWarning warn) + { + String str_an; + + str_an = "********* SQLWarning *********\n"; + while (warn != null) + { + str_an = "SQLState : " + warn.getSQLState() + "\n"; + str_an += "Message : " + warn.getMessage() + "\n"; + str_an += "------------------------------\n"; + this.vs_anomalies.add(str_an); + + warn = warn.getNextWarning(); + } + } + + public Vector getErreurs() + { + return new Vector(this.vs_erreurs); + } + + public Vector getAnomalies() + { + return new Vector(this.vs_anomalies); + } + + public void effaceErreurs() + { + this.vs_erreurs.clear(); + } + + public void effaceAnomalies() + { + this.vs_anomalies.clear(); + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/GestionConnexion.java~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/GestionConnexion.java~ new file mode 100644 index 0000000..6754067 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/GestionConnexion.java~ @@ -0,0 +1,522 @@ +package com.gestionnaires; + +/* + * Remarque : Type de caractres utiliss dans ce fichier : UTF-8 + */ + +//JDBC +import java.sql.*; +import java.util.Vector; + + + +/** + * Oprations possibles avec GestionConnexion. + * @author 3fvorillion + */ +enum OperationBDD +{ + /** + * opération de sélection . + */ + OP_BDD_SELECTION, + /** + * opération de création de table. + */ + OP_BDD_CREER_TABLE, + /** + * opération de suppression de table. + */ + OP_BDD_SUPPR_TABLE +} + +/** + * Gestionnaire d'une connexion à une base de données. + * @author 3fvorillion + */ +public class GestionConnexion +{ + /* + * VARIABLES + */ + // paramtres + private ParametresConnexion paramsConn; + + // connexion + private Connection connection = null; + private Statement statement = null; + + // requte SQL + private String requeteSQL = ""; + private ResultSet resultSet = null; + + // erreurs - anomalies + private Vector vs_erreurs = null; + private Vector vs_anomalies = null; + + + /* + * CONSTRUCTEUR + */ + /** + * Constructeur par défaut.
    + * Instancie le gestionnaire d'une connexion à une base de données. + * @exception ClassNotFoundException La classe n'a pas été trouvée + */ + public GestionConnexion() + throws ClassNotFoundException, Exception + { + /* + * Init les autres variables + */ + this.statement = null; + this.resultSet = null; + this.requeteSQL = ""; + + this.paramsConn = new ParametresConnexion(); + + //init la gestion des erreurs - anomalies + this.vs_erreurs = new Vector(); + this.vs_anomalies = new Vector(); + + try + { + // Rcupration du driver + Class.forName(ParametresConnexion.CLASSE).newInstance(); + } + catch (ClassNotFoundException ex) + { + //remonte l'exception + throw new ClassNotFoundException("La classe '"+ParametresConnexion.CLASSE+"' n'a pas t trouve."); + } + catch (Exception ex) + { + //remonte l'exception + throw ex; + } + } + + + /* + * METHODES D'INSTANCES + */ + /** + * Ouvre une connexion avec les paramètres spécifiés. + * @param params Objet contenant les paramètres à appliquer pour la connexion. + */ + public void ouvrir(ParametresConnexion params) + { + //Vrifie le paramtre + if (params == null) + throw new NullPointerException(); + + //Copie les paramtres + this.paramsConn.CopierDepuis(params); + + //Appelle la mthode sans paramtres + this.ouvrir(); + } + /** + * Ouvre une connexion avec les paramètres déjà chargés.
    + * Note : si aucun paramètre n'a été chargé, utilise les paramètres de connexion par défaut (cf classe ParametresConnexion). + */ + public void ouvrir() + { + try + { + // ferme la conexion prcdente + this.fermerConnexion(); + + // init la nouvelle connexion + this.connection = DriverManager.getConnection(this.paramsConn.Url, + this.paramsConn.Utilisateur, this.paramsConn.Pwd); + + this.traiterWarning(this.connection.getWarnings()); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerConnexion(); + } + } + + /** + * Donne l'état de la connexion en cours. + * @return true si la connexion est ouverte; false si fermée. + */ + public boolean estOuverte() + { + boolean bOuverte = false; + + try + { + if (this.connection != null) + bOuverte = !this.connection.isClosed(); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return bOuverte; + } + + /** + * Ferme les ressources utilisées par la requête:
    + * - ferme le ResultSet et le Statement;
    + * - vide le contenu de la requête. + */ + public void fermerRessourcesRequete() + { + try + { + // Ferme le resultSet + if (this.resultSet != null) + { + this.resultSet.close(); + this.resultSet = null; + } + + // Ferme le statement + if (this.statement != null) + { + this.statement.close(); + this.statement = null; + } + + // Vide la requte + this.requeteSQL = ""; + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + /** + * Ferme la connexion et libère les autres ressources qui ont pu être utilisées. + */ + public void fermerConnexion() + { + try + { + // Ferme le statement + this.fermerRessourcesRequete(); + + // Ferme la connexion + if (this.connection != null) + { + this.connection.close(); + this.connection = null; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + /** + * Lance la requête SQL de sélection spécifiée. + * @param query Requête SQL de type SELECT à exécuter. + * @return true si la requête a réussie; false sinon. + */ + public boolean lancerRequeteSelection(String query) + { + boolean res = true; + + try + { + // verifie la connexion + if (this.connection != null) + { + // libre les ressources de la prcdente requte + this.fermerRessourcesRequete(); + + // prepare la requete + this.statement = this.connection.createStatement(); + this.traiterWarning(this.statement.getWarnings()); + + // emet la requete + this.resultSet = this.statement.executeQuery(query); + this.traiterWarning(this.resultSet.getWarnings()); + + // si on est arriv jusqu'ici, c'est qu'il n'y a pas eu de leve d'exception + // =>actualise la requte + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + // libre les ressources utilises + this.fermerRessourcesRequete(); + + //annonce l'chec de la requte SQL + res = false; + } + + return res; + } + + /** + * Lance la requête SQL spécifiée qui modifie la base de donnée. + * @param query Requête SQL de type DELETE, UPDATE, INSERT à exécuter. + * @return nombre de lignes modifiées pour requête DDL;
    + * 0 pour requête ne donnant aucun reacute;sultat;
    + * -1 si une erreur est survenue lors de l'excution de la requte; + */ + public int lancerRequeteModifBDD(String query) + { + int res = 0; + + try + { + // verifie la connexion + if (this.connection != null) + { + // libre les ressources de la prcdente requte + this.fermerRessourcesRequete(); + + // prepare la requete + this.statement = this.connection.createStatement(); + + // emet la requete + res = this.statement.executeUpdate(query); + this.traiterWarning(this.statement.getWarnings()); + + // si on est arriv jusqu'ici, c'est qu'il n'y a pas eu de leve d'exception + // =>actualise la requte + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + // libre les ressources utilises + this.fermerRessourcesRequete(); + + //annonce l'chec de la requte SQL + res = -1; + } + + return res; + } + + /** + * Retourne une copie de l'objet contenant les paramètres de la connexion courante. + * @return Copie de l'objet contenant les paramètres de connexion. + */ + public ParametresConnexion getParametresConnexion() + { + //Retourne une copie de l'objet contenant les paramtres de connexion + return new ParametresConnexion(this.paramsConn); + } + + /** + * Retourne la requête SQL qui a été lancée avec succès. + * @return Requête SQL qui a été exécutée.
    Si pas de résultats disponibles, renvoie une chane vide. + */ + public String getRequeteSQL() + { + return this.requeteSQL; + } + + /** + * Donne les infos sur la connexion courante. + * @return Liste des infos de la connexion en cours. + */ + public Vector getInfosConnexion() + { + Vector vs_infosConn = new Vector(); + DatabaseMetaData dmd; + + try + { + // Vrifie que la connexion soit ouverte + if (this.estOuverte()) + { + // Etat de la connexion + vs_infosConn.add("Etat de la connexion : ouverte"); + vs_infosConn.add("------------------------------"); + + // Obtient les meta-datas de la base + dmd = this.connection.getMetaData(); + + vs_infosConn.add("Connexion : " + dmd.getURL()); + vs_infosConn.add("Driver : " + dmd.getDriverName()); + vs_infosConn.add("Version : " + dmd.getDriverVersion()); + } + else + { + // Etat de la connexion + vs_infosConn.add("Etat de la connexion : ferme"); + vs_infosConn.add("------------------------------"); + + vs_infosConn.add("Connexion : " + this.paramsConn.Url);//contient le Serveur, le Port et la Base + vs_infosConn.add("Utilisateur : " + this.paramsConn.Utilisateur); + vs_infosConn.add("Mot de passe : " + this.paramsConn.Pwd.length() + " caractre(s)"); + } + } + catch (SQLException ex) + { + // Erreur lors de l'obtention du nom des colonnes + this.traiterSQLException(ex); + } + + return vs_infosConn; + } + + /** + * Récupère la liste des noms des colonnes issues du résultat de la requête SQL précédemment lancée. + * @return Liste des noms des colonnes issues du résultat de la requête SQL. + */ + public Vector getNomsColonnes() + { + Vector vs_cols = new Vector(); + ResultSetMetaData rsmd; + + try + { + // Vrifie si la requte a djà t lance + if (this.resultSet != null) + { + rsmd = this.resultSet.getMetaData(); // obtient les meta-datas de la requte + int nbrCols = rsmd.getColumnCount(); + + for (int idCol = 1; idCol <= nbrCols; idCol++) + if (rsmd.isSearchable(idCol)) + vs_cols.add(rsmd.getColumnName(idCol)); + } + else if (this.statement == null) + // anomalie + this.vs_anomalies.add("Vous n'avez pas encore lanc la requte!!"); + } + catch (SQLException ex) + { + // Erreur lors de l'obtention du nom des colonnes + this.traiterSQLException(ex); + } + + return vs_cols; + } + + /** + * Récupère le résultat de la requête SQL précédemment lancée dans un tableau d'objets.
    + * Note : Ce tableau est composé d'une liste de lignes.
    Ces lignes sont elles-mêmes composées d'une liste d'objets. + * @return Tableau d'objets correspondant au résultat de la requête SQL. + */ + public Vector> getDataVector() + { + Vector> v_datas = new Vector>(); + ResultSetMetaData rsmd; + + try + { + rsmd = this.resultSet.getMetaData(); + // Vrifie qu'il y ai un rsultat et place le curseur au dbut + if (rsmd.getColumnCount() > 0) + { + while (this.resultSet.next()) + { + Vector vo_ligne = new Vector(); + // cr la ligne + for (int idCol = 1; idCol <= rsmd.getColumnCount(); idCol++) + vo_ligne.add(this.resultSet.getObject(idCol)); + // ajoute la ligne au vecteur principal + v_datas.add(vo_ligne); + } + } + + if (v_datas.isEmpty()) // anomalie + this.vs_anomalies.add("Aucune donne trouve!!"); + } + catch (SQLException ex) + { + // Probleme lors de l'obtention des donnees + this.traiterSQLException(ex); + } + + return v_datas; + } + + /* + * GESTION DES ERREURS - ANOMALIES + */ + /** + * Trace les erreurs SQL qui ont été levées par une exception donnée. + * @param ex SQLException à tracer. + */ + public void traiterSQLException(SQLException ex) + { + String str_ex; + + str_ex = "********* SQLException *********\n"; + while (ex != null) + { + str_ex = "SQLState : " + ex.getSQLState() + "\n"; + str_ex += "Message : " + ex.getMessage() + "\n"; + str_ex += "------------------------------\n"; + this.vs_erreurs.add(str_ex); + + ex = ex.getNextException(); + } + } + + /** + * Trace les anomalies SQL données. + * @param warn Anomalies SQL à tracer. + */ + public void traiterWarning(SQLWarning warn) + { + String str_an; + + str_an = "********* SQLWarning *********\n"; + while (warn != null) + { + str_an = "SQLState : " + warn.getSQLState() + "\n"; + str_an += "Message : " + warn.getMessage() + "\n"; + str_an += "------------------------------\n"; + this.vs_anomalies.add(str_an); + + warn = warn.getNextWarning(); + } + } + + /** + * Récupère la liste des erreurs tracées. + * @return Liste des erreurs tracées.
    Note : retourne une copie du vecteur interne pour empêcher la modification directe de celui-ci. + */ + public Vector getErreurs() + { + return new Vector(this.vs_erreurs); + } + + /** + * Récupère la liste des anomalies tracées. + * @return Liste des anomalies tracées.
    Note : retourne une copie du vecteur interne pour empêcher la modification directe de celui-ci. + */ + public Vector getAnomalies() + { + return new Vector(this.vs_anomalies); + } + + /** + * Efface la liste des erreurs tracées. + */ + public void effaceErreurs() + { + this.vs_erreurs.clear(); + } + + /** + * Efface la liste des anomalies tracées. + */ + public void effaceAnomalies() + { + this.vs_anomalies.clear(); + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/GestionnaireArticles.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/GestionnaireArticles.java new file mode 100644 index 0000000..e4ed5b7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/gestionnaires/GestionnaireArticles.java @@ -0,0 +1,178 @@ +package com.gestionnaires; + +import java.util.Vector; +import com.articles.Article; +import com.articles.Categorie; + +public class GestionnaireArticles +{ + private static GestionnaireArticles instanceUnique = null; + private GestionConnexion gestConn = null; + private ParametresConnexion paramsConn = null; + + public GestionnaireArticles() + throws Exception + { + // + // Cration de l'objet connexion + // + this.gestConn = new GestionConnexion(); + + this.paramsConn = new ParametresConnexion(); + } + + public Vector
    donnerListeArticles(String sConditions) + throws Exception + { + Vector> vResReq = null; + Vector vLstCols = null; + Vector
    vLstArts = null; + Article tmpArt = null; + String sReqSQL = ""; + + // + // Se connecte la base + // + // Ouvre la connexion si pas dj fait + if (!this.gestConn.estOuverte()) + this.gestConn.ouvrir(this.paramsConn); + + // Si pas ouverte, sort + if ( !this.gestConn.estOuverte() ) + throw new Exception("La connexion avec la base de donnes n'a pas pu tre tablie."); + + // + // Crer la requte + // + sReqSQL = "SELECT * FROM ARTICLES_RANDO"; + if (sConditions != null) + if (!sConditions.equals("")) + sReqSQL += " WHERE " + sConditions; + + // + // Lance la requte et rcupre les donnes + // + if (this.gestConn.lancerRequeteSelection(sReqSQL)) + { + vResReq = this.gestConn.getDataVector(); + vLstCols = this.gestConn.getNomsColonnes(); + vLstArts = new Vector
    (vResReq.size()); + + for (int iArt=0; iArt donnerListeCategories(String sConditions) + throws Exception + { + Vector> vResReq = null; + Vector vLstCols = null; + Vector vLstCats = null; + Categorie tmpCat = null; + String sReqSQL = ""; + + // + // Se connecte la base + // + // Ouvre la connexion si pas dj fait + if (!this.gestConn.estOuverte()) + this.gestConn.ouvrir(this.paramsConn); + + // Si pas ouverte, sort + if ( !this.gestConn.estOuverte() ) + throw new Exception("La connexion avec la base de donnes n'a pas pu tre tablie."); + + // + // Crer la requte + // + sReqSQL = "SELECT * FROM CATEGORIE_RANDO"; + if (sConditions != null) + if (!sConditions.equals("")) + sReqSQL += " WHERE " + sConditions; + + // + // Lance la requte et rcupre les donnes + // + if (this.gestConn.lancerRequeteSelection(sReqSQL)) + { + vResReq = this.gestConn.getDataVector(); + vLstCols = this.gestConn.getNomsColonnes(); + vLstCats = new Vector(vResReq.size()); + + for (int iArt=0; iArt + * Rcupre les articles et les catgories depuis la BDD, selon des critres ou non.
    + * Note : il ne doit y avoir qu'une instance de cette classe : elle utilise le gestionnaire de connexion la BDD. + * @author 3fvorillion + */ +public class GestionnaireArticles +{ + private static GestionnaireArticles instanceUnique = null; + private GestionConnexion gestConn = null; + private ParametresConnexion paramsConn = null; + + /** + * Instancie le gestionnaire d'articles.
    + * - instancie le gestionnaire de connexion la BDD. + * @throws Exception + */ + public GestionnaireArticles() + throws Exception + { + // + // Cration de l'objet connexion + // + this.gestConn = new GestionConnexion(); + + this.paramsConn = new ParametresConnexion(); + } + + /*** + * Donne la liste des articles correspondants aux conditions donnees. + * @param sConditions Conditions de selection des articles.
    Peut tre null ou vide.
    Sans la clause 'where'. + * @return Liste des articles correspondants aux critres donns. + */ + public Vector
    donnerListeArticles(String sConditions) + throws Exception + { + Vector> vResReq = null; + Vector vLstCols = null; + Vector
    vLstArts = null; + Article tmpArt = null; + String sReqSQL = ""; + + // + // Se connecte la base + // + // Ouvre la connexion si pas dj fait + if (!this.gestConn.estOuverte()) + this.gestConn.ouvrir(this.paramsConn); + + // Si pas ouverte, sort + if ( !this.gestConn.estOuverte() ) + throw new Exception("La connexion avec la base de donnes n'a pas pu tre tablie."); + + // + // Crer la requte + // + sReqSQL = "SELECT * FROM ARTICLES_RANDO"; + if (sConditions != null) + if (!sConditions.equals("")) + sReqSQL += " WHERE " + sConditions; + + // + // Lance la requte et rcupre les donnes + // + if (this.gestConn.lancerRequeteSelection(sReqSQL)) + { + vResReq = this.gestConn.getDataVector(); + vLstCols = this.gestConn.getNomsColonnes(); + vLstArts = new Vector
    (vResReq.size()); + + for (int iArt=0; iArtPeut tre null ou vide.
    Sans la clause 'where'. + * @return Liste des categories correspondants aux critres donns. + */ + public Vector donnerListeCategories(String sConditions) + throws Exception + { + Vector> vResReq = null; + Vector vLstCols = null; + Vector vLstCats = null; + Categorie tmpCat = null; + String sReqSQL = ""; + + // + // Se connecte la base + // + // Ouvre la connexion si pas dj fait + if (!this.gestConn.estOuverte()) + this.gestConn.ouvrir(this.paramsConn); + + // Si pas ouverte, sort + if ( !this.gestConn.estOuverte() ) + throw new Exception("La connexion avec la base de donnes n'a pas pu tre tablie."); + + // + // Crer la requte + // + sReqSQL = "SELECT * FROM CATEGORIE_RANDO"; + if (sConditions != null) + if (!sConditions.equals("")) + sReqSQL += " WHERE " + sConditions; + + // + // Lance la requte et rcupre les donnes + // + if (this.gestConn.lancerRequeteSelection(sReqSQL)) + { + vResReq = this.gestConn.getDataVector(); + vLstCols = this.gestConn.getNomsColonnes(); + vLstCats = new Vector(vResReq.size()); + + for (int iArt=0; iArt vArticles = null; + boolean bEstPaye = false; + + public GestionnairePanier() + { + this.vArticles = new Vector
    (); + } + + public void ajouterAchat(Article art) + { + Article artPan = null; + boolean bArtTrouve = false; + + if (art == null) + return; + + //Vrifie si pas dj prsent + for (int i=0; i donneContenu() + { + return this.vArticles; + } + + public boolean getEstPaye() + { + return this.bEstPaye; + } + + public void setEstPaye(boolean bEstPaye) + { + this.bEstPaye = bEstPaye; + } + + public double getPrixTotalPanier() + { + double prixTotal = 0; + + for (int i=0; i vArticles = null; + boolean bEstPaye = false; + + /** + * Instancie le panier + */ + public GestionnairePanier() + { + this.vArticles = new Vector
    (); + } + + /** + * Ajoute un article au panier. + * @param art article ajouter. + */ + public void ajouterAchat(Article art) + { + Article artPan = null; + boolean bArtTrouve = false; + + if (art == null) + return; + + //Vrifie si pas dj prsent + for (int i=0; i donneContenu() + { + return this.vArticles; + } + + /** + * Donne l'tat de payement du panier. + * @return 'true' si le panier est pass ' la caisse'. 'fase' sinon. + */ + public boolean getEstPaye() + { + return this.bEstPaye; + } + + /** + * Dtermine l'tat de payement du panier. + * @param bEstPaye 'true' si le panier est pass ' la caisse'. 'fase' sinon. + */ + public void setEstPaye(boolean bEstPaye) + { + this.bEstPaye = bEstPaye; + } + + /** + * Calcule et retourne le prix total du panier. + * @return Prix total du panier. + */ + public double getPrixTotalPanier() + { + double prixTotal = 0; + + for (int i=0; i vCats = null; + Vector
    vArts = null; + String sIdCategAff; + String sCondReqSQL = ""; + + // + // Traite le filtre + // + sIdCategAff = request.getParameter("lstCategs"); + if (sIdCategAff != null) + { + //Si pas dfinit ou "toutes catgorie" + if (sIdCategAff.equals("") || sIdCategAff.equals("-1")) + { + sCondReqSQL = ""; + } + else + { + sCondReqSQL = "CATEGORIE="+sIdCategAff; + } + } + else + sCondReqSQL = ""; + + //Rcupre le gestionnaire d'articles + try + { + // + // Rcupre les articles depuis la base + // + this.gestArts = com.gestionnaires.GestionnaireArticles.getInstanceUnique(); + + //Rcupre la liste des articles (filtrs) + vArts = this.gestArts.donnerListeArticles(sCondReqSQL); + //Rcupre la liste des articles + vCats = this.gestArts.donnerListeCategories(""); + vCats.add(0, new Categorie(-1, "Toutes categories")); + + if (!vArts.isEmpty()) + { + request.setAttribute("categories", vCats); + request.setAttribute("articles", vArts); + + sPageAffichage = "/listeArticles.jsp"; + } + else + { + sPageAffichage = "/listeArticlesVide.jsp"; + } + + } + catch (Exception ex) + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur(ex.getMessage())); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + // + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affArticles(request, response); + } + + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affArticles(request, response); + } + + public String getServletInfo() { + return "Gestion de articles"; + } + // +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/ArticlesServlet.java~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/ArticlesServlet.java~ new file mode 100644 index 0000000..116bc77 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/ArticlesServlet.java~ @@ -0,0 +1,106 @@ +package com.servlets; + +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.Categorie; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; +import java.sql.*; + +public class ArticlesServlet + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void affArticles(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + String sPageAffichage = ""; + Vector vCats = null; + Vector
    vArts = null; + String sIdCategAff; + String sCondReqSQL = ""; + + // + // Traite le filtre + // + sIdCategAff = request.getParameter("lstCategs"); + if (sIdCategAff != null) + { + //Si pas dfinit ou "toutes catgorie" + if (sIdCategAff.equals("") || sIdCategAff.equals("-1")) + { + sCondReqSQL = ""; + } + else + { + sCondReqSQL = "CATEGORIE="+sIdCategAff; + } + } + else + sCondReqSQL = ""; + + //Rcupre le gestionnaire d'articles + try + { + // + // Rcupre les articles depuis la base + // + this.gestArts = com.gestionnaires.GestionnaireArticles.getInstanceUnique(); + + //Rcupre la liste des articles (filtrs) + vArts = this.gestArts.donnerListeArticles(sCondReqSQL); + //Rcupre la liste des articles + vCats = this.gestArts.donnerListeCategories(""); + vCats.add(0, new Categorie(-1, "Toutes categories")); + + if (!vArts.isEmpty()) + { + request.setAttribute("categories", vCats); + request.setAttribute("articles", vArts); + + sPageAffichage = "/listeArticles.jsp"; + } + else + { + sPageAffichage = "/listeArticlesVide.jsp"; + } + + } + catch (Exception ex) + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur(ex.getMessage())); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + // + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affArticles(request, response); + } + + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affArticles(request, response); + } + + public String getServletInfo() { + return "Gestion de articles"; + } + // +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/ClientServlet.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/ClientServlet.java new file mode 100644 index 0000000..6b8028a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/ClientServlet.java @@ -0,0 +1,157 @@ +package com.servlets; + +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.Panier; +import com.articles.Client; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class ClientServlet + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void affPayement(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + GestionnairePanier panier = null; + Vector vErrs = new Vector(); + Vector
    vArts = null; + Client cli = null; + String sAction; + String sPageAffichage; + + // + // Rcupre l'objet de la session + // + panier = PanierServlet.getPanierSession(request); + + // + // Traite les actions + // + sAction = request.getParameter("action"); + if (sAction == null) + { ; } + else if (sAction.equals("payer")) + { + cli = new Client(); + + //Rcupre les infos de l'utilisateur + if (request.getParameter("nomCli") != null) + { + if (!request.getParameter("nomCli").equals("")) + cli.setNom(request.getParameter("nomCli")); + else + vErrs.add(new Erreur("Votre nom n'est pas saisi.")); + } + else + vErrs.add(new Erreur("Le nom du client n'est pas disponible.")); + + if (request.getParameter("prenomCli") != null) + { + if (!request.getParameter("prenomCli").equals("")) + cli.setPrenom(request.getParameter("prenomCli")); + else + vErrs.add(new Erreur("Votre prenom n'est pas saisi.")); + } + else + vErrs.add(new Erreur("Le prenom du client n'est pas disponible.")); + + if (request.getParameter("addrCli") != null) + { + if (!request.getParameter("addrCli").equals("")) + cli.setAdresse(request.getParameter("addrCli")); + else + vErrs.add(new Erreur("Votre adresse n'est pas saisi.")); + } + else + vErrs.add(new Erreur("L'adresse du client n'est pas disponible.")); + + if (request.getParameter("cpCli") != null) + { + if (!request.getParameter("cpCli").equals("")) + cli.setCodePost(request.getParameter("cpCli")); + else + vErrs.add(new Erreur("Votre code postal n'est pas saisi.")); + } + else + vErrs.add(new Erreur("Le code postal du client n'est pas disponible.")); + + if (request.getParameter("villeCli") != null) + { + if (!request.getParameter("villeCli").equals("")) + cli.setVille(request.getParameter("villeCli")); + else + vErrs.add(new Erreur("Votre ville n'est pas saisi.")); + } + else + vErrs.add(new Erreur("La ville du client n'est pas disponible.")); + } + + if (vErrs.isEmpty()) + { + // + // Affiche la liste des articles du panier + // + //Rcupre la liste des articles + vArts = panier.donneContenu(); + + if (!vArts.isEmpty()) + { + request.setAttribute("articles", vArts); + request.setAttribute("panierTotal", new Panier(panier.getPrixTotalPanier())); + + //Vrifie si on a dj saisi les infos client + if (cli != null) + { + request.setAttribute("client", cli); + + sPageAffichage = "/resultPayement.jsp"; + + //Signale que le panier est prt tre supprim + panier.setEstPaye(true); + } + else + sPageAffichage = "/payement.jsp"; + } + else + { + sPageAffichage = "/panierVide.jsp"; + } + } + else + { + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affPayement(request, response); + } + + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affPayement(request, response); + } + + public String getServletInfo() { + return "Gestion du client"; + } + // +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/ClientServlet.java~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/ClientServlet.java~ new file mode 100644 index 0000000..88c4f3c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/ClientServlet.java~ @@ -0,0 +1,187 @@ +/* + * Panier.java + * + * Created on 11 janvier 2008, 15:06 + */ + +package com.servlets; + +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.Panier; +import com.articles.Client; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +/** + * Servlet Grant l'affichage des commandes d'un client.
    + * - payement et confirmation de payement. + * @author 3fvorillion + * @version + */ +public class ClientServlet + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + /** + * Traite les messages et affiche en consquence. + * @param request + * @param response + * @throws ServletException + * @throws IOException + */ + private void affPayement(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + GestionnairePanier panier = null; + Vector vErrs = new Vector(); + Vector
    vArts = null; + Client cli = null; + String sAction; + String sPageAffichage; + + // + // Rcupre l'objet de la session + // + panier = PanierServlet.getPanierSession(request); + + // + // Traite les actions + // + sAction = request.getParameter("action"); + if (sAction == null) + { ; } + else if (sAction.equals("payer")) + { + cli = new Client(); + + //Rcupre les infos de l'utilisateur + if (request.getParameter("nomCli") != null) + { + if (!request.getParameter("nomCli").equals("")) + cli.setNom(request.getParameter("nomCli")); + else + vErrs.add(new Erreur("Votre nom n'est pas saisi.")); + } + else + vErrs.add(new Erreur("Le nom du client n'est pas disponible.")); + + if (request.getParameter("prenomCli") != null) + { + if (!request.getParameter("prenomCli").equals("")) + cli.setPrenom(request.getParameter("prenomCli")); + else + vErrs.add(new Erreur("Votre prenom n'est pas saisi.")); + } + else + vErrs.add(new Erreur("Le prenom du client n'est pas disponible.")); + + if (request.getParameter("addrCli") != null) + { + if (!request.getParameter("addrCli").equals("")) + cli.setAdresse(request.getParameter("addrCli")); + else + vErrs.add(new Erreur("Votre adresse n'est pas saisi.")); + } + else + vErrs.add(new Erreur("L'adresse du client n'est pas disponible.")); + + if (request.getParameter("cpCli") != null) + { + if (!request.getParameter("cpCli").equals("")) + cli.setCodePost(request.getParameter("cpCli")); + else + vErrs.add(new Erreur("Votre code postal n'est pas saisi.")); + } + else + vErrs.add(new Erreur("Le code postal du client n'est pas disponible.")); + + if (request.getParameter("villeCli") != null) + { + if (!request.getParameter("villeCli").equals("")) + cli.setVille(request.getParameter("villeCli")); + else + vErrs.add(new Erreur("Votre ville n'est pas saisi.")); + } + else + vErrs.add(new Erreur("La ville du client n'est pas disponible.")); + } + + if (vErrs.isEmpty()) + { + // + // Affiche la liste des articles du panier + // + //Rcupre la liste des articles + vArts = panier.donneContenu(); + + if (!vArts.isEmpty()) + { + request.setAttribute("articles", vArts); + request.setAttribute("panierTotal", new Panier(panier.getPrixTotalPanier())); + + //Vrifie si on a dj saisi les infos client + if (cli != null) + { + request.setAttribute("client", cli); + + sPageAffichage = "/resultPayement.jsp"; + + //Signale que le panier est prt tre supprim + panier.setEstPaye(true); + } + else + sPageAffichage = "/payement.jsp"; + } + else + { + sPageAffichage = "/panierVide.jsp"; + } + } + else + { + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + // + /** Handles the HTTP GET method. + * @param request servlet request + * @param response servlet response + */ + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affPayement(request, response); + } + + /** Handles the HTTP POST method. + * @param request servlet request + * @param response servlet response + */ + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affPayement(request, response); + } + + /** Returns a short description of the servlet. + */ + public String getServletInfo() { + return "Gestion du client"; + } + // +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/PanierServlet.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/PanierServlet.java new file mode 100644 index 0000000..fc9d7a5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/PanierServlet.java @@ -0,0 +1,189 @@ +package com.servlets; + +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.lang.*; +import java.util.Vector; +import com.articles.Article; +import com.articles.Panier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class PanierServlet + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + public static GestionnairePanier getPanierSession(HttpServletRequest request) + { + HttpSession session = request.getSession(true); + + // + // Rcupre l'objet de la session + // + GestionnairePanier panier = (GestionnairePanier)session.getAttribute("caddy"); + if ( panier == null ) + { + panier = new GestionnairePanier(); + panier.setEstPaye(false); + + session.setAttribute("caddy", panier) ; + } + else if ( panier.getEstPaye() ) + { + //Supprime l'ancien de la liste de la session + session.removeAttribute("caddy") ; + + //Cr un nouveau + panier = new GestionnairePanier(); + panier.setEstPaye(false); + + session.setAttribute("caddy", panier) ; + } + + + return panier; + } + + private void affArticlesPanier(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + GestionnairePanier panier = null; + Vector
    vArts = null; + String sAction; + String sPageAffichage; + String sCondReqSQL; + + // + // Rcupre l'objet de la session + // + panier = PanierServlet.getPanierSession(request); + + // + // Traite les actions + // + sAction = request.getParameter("action"); + if (sAction == null) + { ; } + else if (sAction.equals("add")) + { + if (request.getParameter("artRef") != null) + { + sCondReqSQL = "REFERENCE = '" + request.getParameter("artRef") + "'"; + + //Rcupre le gestionnaire d'articles + try + { + // + // Rcupre les articles depuis la base + // + this.gestArts = com.gestionnaires.GestionnaireArticles.getInstanceUnique(); + + //Rcupre la liste des articles + vArts = this.gestArts.donnerListeArticles(sCondReqSQL); + + if (vArts.size() == 1) + { + panier.ajouterAchat(vArts.get(0)); + } + else + { + Vector vErrs = new Vector(); + if (vArts.isEmpty()) + vErrs.add(new Erreur("Aucun article n'est disponible dans la boutique")); + else + vErrs.add(new Erreur("Trop d'articles correspondent la slection")); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + return; + } + } + catch (Exception ex) + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur(ex.getMessage())); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + return; + } + } + } + else if (sAction.equals("del")) + { + if (request.getParameter("artRef") != null) + panier.enleverAchat(request.getParameter("artRef")); + } + else if (sAction.equals("modif")) + { + //Rcupre la liste des articles + vArts = panier.donneContenu(); + + for (int i=0;i +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/PanierServlet.java~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/PanierServlet.java~ new file mode 100644 index 0000000..8e47ca5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/src/com/servlets/PanierServlet.java~ @@ -0,0 +1,228 @@ +/* + * Panier.java + * + * Created on 11 janvier 2008, 15:06 + */ + +package com.servlets; + +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.lang.*; +import java.util.Vector; +import com.articles.Article; +import com.articles.Panier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +/** + * Servlet Grant l'affichage des articles du panier.
    + * - affichage des articles et de leurs caractristiques. + * - modification des quantits. + * - suppression des articles du panier. + * @author 3fvorillion + * @version + */ +public class PanierServlet + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + /** + * Rcupre le panier courant de la session courante.
    + * Si pas de panier disponibles, en cr un.
    + * Si le painier courant en dj pay, en cr un autre. + * @param request requete du servlet + * @return le panier courant de la session + */ + public static GestionnairePanier getPanierSession(HttpServletRequest request) + { + HttpSession session = request.getSession(true); + + // + // Rcupre l'objet de la session + // + GestionnairePanier panier = (GestionnairePanier)session.getAttribute("caddy"); + if ( panier == null ) + { + panier = new GestionnairePanier(); + panier.setEstPaye(false); + + session.setAttribute("caddy", panier) ; + } + else if ( panier.getEstPaye() ) + { + //Supprime l'ancien de la liste de la session + session.removeAttribute("caddy") ; + + //Cr un nouveau + panier = new GestionnairePanier(); + panier.setEstPaye(false); + + session.setAttribute("caddy", panier) ; + } + + + return panier; + } + + /** + * Traite les messages et affiche en consquence. + * @param request + * @param response + * @throws ServletException + * @throws IOException + */ + private void affArticlesPanier(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + GestionnairePanier panier = null; + Vector
    vArts = null; + String sAction; + String sPageAffichage; + String sCondReqSQL; + + // + // Rcupre l'objet de la session + // + panier = PanierServlet.getPanierSession(request); + + // + // Traite les actions + // + sAction = request.getParameter("action"); + if (sAction == null) + { ; } + else if (sAction.equals("add")) + { + if (request.getParameter("artRef") != null) + { + sCondReqSQL = "REFERENCE = '" + request.getParameter("artRef") + "'"; + + //Rcupre le gestionnaire d'articles + try + { + // + // Rcupre les articles depuis la base + // + this.gestArts = com.gestionnaires.GestionnaireArticles.getInstanceUnique(); + + //Rcupre la liste des articles + vArts = this.gestArts.donnerListeArticles(sCondReqSQL); + + if (vArts.size() == 1) + { + panier.ajouterAchat(vArts.get(0)); + } + else + { + Vector vErrs = new Vector(); + if (vArts.isEmpty()) + vErrs.add(new Erreur("Aucun article n'est disponible dans la boutique")); + else + vErrs.add(new Erreur("Trop d'articles correspondent la slection")); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + return; + } + } + catch (Exception ex) + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur(ex.getMessage())); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + return; + } + } + } + else if (sAction.equals("del")) + { + if (request.getParameter("artRef") != null) + panier.enleverAchat(request.getParameter("artRef")); + } + else if (sAction.equals("modif")) + { + //Rcupre la liste des articles + vArts = panier.donneContenu(); + + for (int i=0;i + /** Handles the HTTP GET method. + * @param request servlet request + * @param response servlet response + */ + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affArticlesPanier(request, response); + } + + /** Handles the HTTP POST method. + * @param request servlet request + * @param response servlet response + */ + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.affArticlesPanier(request, response); + } + + /** Returns a short description of the servlet. + */ + public String getServletInfo() { + return "Gestion du panier"; + } + // +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/web.xml b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/web.xml new file mode 100644 index 0000000..7df77d6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/web.xml @@ -0,0 +1,60 @@ + + + + com.sun.faces.verifyObjects + false + + + com.sun.faces.validateXml + true + + + javax.faces.STATE_SAVING_METHOD + client + + + PanierServlet + com.servlets.PanierServlet + + + PanierServlet + /Panier + + + ArticlesServlet + com.servlets.ArticlesServlet + + + ArticlesServlet + /Articles + + + ClientServlet + com.servlets.ClientServlet + + + ClientServlet + /Client + + + + 30 + + + + + index.jsp + + + + + + Toutes les pages + *.jsp + UTF-8 + /includes/entete.jsp + /includes/enqueue.jsp + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/web.xml~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/web.xml~ new file mode 100644 index 0000000..abb9a3f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/WEB-INF/web.xml~ @@ -0,0 +1,50 @@ + + + + com.sun.faces.verifyObjects + false + + + com.sun.faces.validateXml + true + + + javax.faces.STATE_SAVING_METHOD + client + + + PanierServlet + com.servlets.PanierServlet + + + PanierServlet + /Panier + + + ArticlesServlet + com.servlets.ArticlesServlet + + + ArticlesServlet + /Articles + + + ClientServlet + com.servlets.ClientServlet + + + ClientServlet + /Client + + + + 30 + + + + + index.jsp + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/contenuPanier.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/contenuPanier.jsp new file mode 100644 index 0000000..98d4675 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/contenuPanier.jsp @@ -0,0 +1,59 @@ +

    Achat

    + +

    Panier

    + +
    + + + + + + + + + + + + + + + + + + + + + + + +
    AperuPropritsQuantitAction
    + image + + + + + + + + + + + + + + + + +
    Référence : ${artRef.ref}
    Marque : ${artRef.marque}
    Modèle : ${artRef.modele}
    Prix : ${artRef.prix}
    +
    + + + enlever +
    Total : + + +
    +
    + + +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/erreurs.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/erreurs.jsp new file mode 100644 index 0000000..1561f00 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/erreurs.jsp @@ -0,0 +1,4 @@ +

    Erreur !

    + +

    ${err.message}

    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/includes/enqueue.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/includes/enqueue.jsp new file mode 100644 index 0000000..fb4d749 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/includes/enqueue.jsp @@ -0,0 +1,6 @@ + + +

    Propulsé par J2EE sur Tomcat5, écrit à l'aide de VIM

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/includes/entete.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/includes/entete.jsp new file mode 100644 index 0000000..1c1bbc3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/includes/entete.jsp @@ -0,0 +1,28 @@ + + + +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + I comme Herse + + + +
    + +

    I, comme Herse

    + + + +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/includes/entete.jsp~ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/includes/entete.jsp~ new file mode 100644 index 0000000..cc6584c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/includes/entete.jsp~ @@ -0,0 +1,28 @@ + + + +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + I comme Herse + + + +
    + +

    I, comme Herse

    + + + +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/index.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/index.jsp new file mode 100644 index 0000000..60dffa3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/index.jsp @@ -0,0 +1 @@ +

    Bienvenue dans le site d'Ecommerce

    \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/infos.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/infos.jsp new file mode 100644 index 0000000..b183294 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/infos.jsp @@ -0,0 +1,53 @@ +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + +

    Article -Informations

    + + + + + + + + + + + + + +
    AperuProprits
    + " width="50" height="50" alt="image"/> + + + + + + + + + + + + + + + + + + + +
    Référence : +
    Marque : +
    Modèle : +
    Description : +
    Prix : +
    +
    +
    +

    Acheter l'article

    +
    + "> + Quantit :
    +
    + +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/listeArticles.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/listeArticles.jsp new file mode 100644 index 0000000..93646d8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/listeArticles.jsp @@ -0,0 +1,54 @@ +

    Filtre

    +
    + + +
    + +

    Liste des articles disponibles

    + + + + + + + + + + + + + + + + + +
    AperuPropritsAction
    + image + + + + + + + + + + + + + + + + + + + +
    Référence : ${artRef.ref}
    Marque : ${artRef.marque}
    Modèle : ${artRef.modele}
    Description : ${artRef.description}
    Prix : ${artRef.prix}
    +
    + ajouter au panier +
    + diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/listeArticlesVide.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/listeArticlesVide.jsp new file mode 100644 index 0000000..ece0694 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/listeArticlesVide.jsp @@ -0,0 +1,4 @@ +

    Liste des articles disponibles

    +

    Nous somme actuellement en rupture de stock !

    +

    Nous serons livr trs prochainement.

    + Accueil diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/oracle b/P51/apache-tomcat-6.0.14/webapps/ecommerce/oracle new file mode 100644 index 0000000..f3b9930 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/oracle @@ -0,0 +1 @@ + ://tetras.u-strasbg.fr/prive/pedagogie/outils/oragrive/requete.php diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/panierVide.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/panierVide.jsp new file mode 100644 index 0000000..1113dff --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/panierVide.jsp @@ -0,0 +1,3 @@ +

    Contenu Panier

    +

    Rien

    + Continuez les achats diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/payement.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/payement.jsp new file mode 100644 index 0000000..922c14c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/payement.jsp @@ -0,0 +1,67 @@ +

    Payement

    + +

    Rappel de la commande :

    + + + + + + + + + + + + + + + + + + + + + +
    ReferenceModelePrix
    + Référence : ${artRef.ref} + + Modèle : ${artRef.modele} + + Prix : ${artRef.prix} +
    Total : + + +
    + +
    + +
    + + + + + + + + + + + + + + + + + + + + + + + +
    Nom :
    Prnom :
    Adresse :
    Code postal :
    Ville :
    +

    Note : le payement se fera la livraison de la commande.

    + +   + +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/resultPayement.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/resultPayement.jsp new file mode 100644 index 0000000..9691618 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/resultPayement.jsp @@ -0,0 +1,44 @@ +

    Confirmation de la commande

    + +

    Rappel de la commande :

    + + + + + + + + + + + + + + + + + + + + + +
    ReferenceModelePrix
    + Référence : ${artRef.ref} + + Modèle : ${artRef.modele} + + Prix : ${artRef.prix} +
    Total : + + +
    + +
    + + +

    Note : le payement se fera la livraison de la commande l'adresse suivante :
    +  
    +
    +   +

    + diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/resumePanier.jsp b/P51/apache-tomcat-6.0.14/webapps/ecommerce/resumePanier.jsp new file mode 100644 index 0000000..22ab620 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/resumePanier.jsp @@ -0,0 +1,53 @@ +

    Contenu du Panier

    + +
    + + + + + + + + + + + + + + + + + + + + + +
    AperuPropritsQuantit
    + image + + + + + + + + + + + + + + + + +
    Référence : ${artRef.ref}
    Marque : ${artRef.marque}
    Modèle : ${artRef.modele}
    Prix : ${artRef.prix}
    +
    + ${artRef.quantite} +
    Total : + + +
    +
    +   + +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/style.css b/P51/apache-tomcat-6.0.14/webapps/ecommerce/style.css new file mode 100644 index 0000000..162a08a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/style.css @@ -0,0 +1,134 @@ +body, html { + width: 100%; + height: 100%; + margin: 0; + padding: 0; +} + +a { +} + +a:link { + color: white; + text-decoration: underline; +} + +a:visited { + color: gray; + text-decoration: underline; +} + +a:active { +} + +a:hover { +} + +div#contenu_principal { + width: 100%; + height: 100%; + margin: 0; + padding: 0; + background-color: black; + color: orange; +} + +div#contenu_principal div#tete { + width: 100%; + height: 70px; + margin: 0; + position: absolute; + top: 0; + left: 0; + background-color: #00bb00; + color: white; + text-align: center; +} + +div#contenu_principal div#tete h1 { + margin: 0; + position: absolute; + left: 22%; + top: 22%; + color: lightgreen; +} + +div#contenu_principal div#tete h1:after { + display: block; + margin-top: -1.15em; + margin-left: -0.1em; + color: green; + content: attr(title); +} + +div#contenu_principal div#menu { + position: absolute; + width: 100%; + height: 25px; + margin: 0; + padding: 0; + top: 70px; + left: 0; + background-color: lightblue; +} + +div#contenu_principal div#menu ul#menu_principal +{ + height: 25px ; + margin: 0 ; + padding: 0 ; + background-color: #009933; + list-style-type: none ; +} + +div#contenu_principal div#menu ul#menu_principal li +{ + float: left ; + text-align: center ; +} + +div#contenu_principal div#menu ul#menu_principal li a +{ + width: 125px ; + line-height: 25px ; + font-size: 1.2em ; + font-weight: bold ; + letter-spacing: 2px ; + color: #fff ; + display: block ; + text-decoration: none ; + border-right: 2px solid #8BB18B ; +} + +div#contenu_principal div#menu ul#menu_principal li a:hover +{ + color: #AFCAAF; + background-color: #ceb; +} + +div#contenu_principal div#contenu_secondaire { + width: 100%; + height: auto; + margin: 0; + padding: 0; + position: absolute; + top: 95px; + right: 0; + overflow: auto; +} + +div#contenu_principal div#pied { + width: auto; + height: 15px; + margin: -14px 0 0 0; + padding-right: 3px; + position: absolute; + top: 70px; + right: 0; + color: green; +} + +div#contenu_principal div#pied p { + margin: 0; + font-size: 13px; +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/contenuPanier_jsp.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/contenuPanier_jsp.class new file mode 100644 index 0000000..4d161eb Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/contenuPanier_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/contenuPanier_jsp.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/contenuPanier_jsp.java new file mode 100644 index 0000000..6215020 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/contenuPanier_jsp.java @@ -0,0 +1,221 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class contenuPanier_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Contenu du Panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articlesPasser � la caisse
    \r\n"); + out.write(" \r\n"); + out.write("

    Contenu du Panier

    \r\n"); + out.write("\r\n"); + out.write("\t
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write("
    Aper�uPropri�t�sQuantit�Action
    Total :\r\n"); + com.articles.Panier panierTotal = null; + synchronized (request) { + panierTotal = (com.articles.Panier) _jspx_page_context.getAttribute("panierTotal", PageContext.REQUEST_SCOPE); + if (panierTotal == null){ + panierTotal = new com.articles.Panier(); + _jspx_page_context.setAttribute("panierTotal", panierTotal, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write("\t\t\t\t\t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Panier)_jspx_page_context.findAttribute("panierTotal")).getPrixTotal()))); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /contenuPanier.jsp(42,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${articles}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /contenuPanier.jsp(42,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("artRef"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \"image\"/\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Référence : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.ref}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Marque : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.marque}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Modèle : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.modele}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Prix : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.prix}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" enlever\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/erreurs_jsp.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/erreurs_jsp.class new file mode 100644 index 0000000..c5c739b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/erreurs_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/erreurs_jsp.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/erreurs_jsp.java new file mode 100644 index 0000000..7decc01 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/erreurs_jsp.java @@ -0,0 +1,147 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class erreurs_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Erreurs\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articles
    \r\n"); + out.write(" \r\n"); + out.write("\t\t

    Les erreurs suivantes se sont produites :

    \r\n"); + out.write("\t\t
      \r\n"); + out.write("\t\t\t"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t
    \r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /erreurs.jsp(30,3) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${erreurs}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /erreurs.jsp(30,3) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("err"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write("\t\t\t\t\t
  • \r\n"); + out.write("\t\t\t\t\t\t"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${err.message}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t\t\t\t\t
  • \r\n"); + out.write("\t\t\t"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/index_jsp.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/index_jsp.class new file mode 100644 index 0000000..9873b9f Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/index_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/index_jsp.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/index_jsp.java new file mode 100644 index 0000000..e3193bb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/index_jsp.java @@ -0,0 +1,84 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write("
    \r\n"); + out.write(" Afficher les articles\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/infos_jsp.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/infos_jsp.class new file mode 100644 index 0000000..707630b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/infos_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/infos_jsp.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/infos_jsp.java new file mode 100644 index 0000000..6125c5b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/infos_jsp.java @@ -0,0 +1,159 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class infos_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" Contenu du Panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + com.articles.Article art = null; + synchronized (request) { + art = (com.articles.Article) _jspx_page_context.getAttribute("art", PageContext.REQUEST_SCOPE); + if (art == null){ + art = new com.articles.Article(); + _jspx_page_context.setAttribute("art", art, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write(" \r\n"); + out.write("\t

    Infos sur l'article

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Aper�uPropri�t�s
    \r\n"); + out.write(" \"image\"/\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Référence :\r\n"); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Article)_jspx_page_context.findAttribute("art")).getRef()))); + out.write("
    Marque : \r\n"); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Article)_jspx_page_context.findAttribute("art")).getMarque()))); + out.write("
    Modèle : \r\n"); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Article)_jspx_page_context.findAttribute("art")).getModele()))); + out.write("
    Description : \r\n"); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Article)_jspx_page_context.findAttribute("art")).getDescription()))); + out.write("
    Prix : \r\n"); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Article)_jspx_page_context.findAttribute("art")).getPrix()))); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("\t\t
    \r\n"); + out.write("\t\t
    \r\n"); + out.write("\t\t\t\r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t\t\t\t\t\r\n"); + out.write("\t\t\t\t\t\r\n"); + out.write("\t\t\t\t\t\r\n"); + out.write("\t\t\t\t\t\r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t\t\t
    Qt�\r\n"); + out.write("\t\t\t\t\t\r\n"); + out.write("\t\t\t\t\t
    \r\n"); + out.write("\t\t
    \r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticlesVide_jsp.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticlesVide_jsp.class new file mode 100644 index 0000000..f66c9d3 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticlesVide_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticlesVide_jsp.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticlesVide_jsp.java new file mode 100644 index 0000000..d7c969c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticlesVide_jsp.java @@ -0,0 +1,95 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class listeArticlesVide_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Articles disponibles\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articles
    \r\n"); + out.write(" \r\n"); + out.write("\t\t

    Liste des articles disponibles

    \r\n"); + out.write("\t\t

    Nous somme actuellement en rupture de stock !

    \r\n"); + out.write("\t\t

    Nous serons livr� tr�s prochainement.

    \r\n"); + out.write(" \tAccueil\r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticles_jsp.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticles_jsp.class new file mode 100644 index 0000000..ad5fd69 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticles_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticles_jsp.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticles_jsp.java new file mode 100644 index 0000000..5b1e6b0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/listeArticles_jsp.java @@ -0,0 +1,246 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class listeArticles_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Articles disponibles\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articles
    \r\n"); + out.write(" \r\n"); + out.write("\t

    Filtre

    \r\n"); + out.write("\t
    \r\n"); + out.write("\t\t\r\n"); + out.write(" \r\n"); + out.write("\t
    \r\n"); + out.write("\t\r\n"); + out.write("\t

    Liste des articles disponibles

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + if (_jspx_meth_c_005fforEach_005f1(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" \r\n"); + out.write("
    Aper�uPropri�t�sAction
    \r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + out.write(" "); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /listeArticles.jsp(31,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${categories}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /listeArticles.jsp(31,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("categ"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write("\t\t\t\r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } + + private boolean _jspx_meth_c_005fforEach_005f1(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f1 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f1.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f1.setParent(null); + // /listeArticles.jsp(48,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f1.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${articles}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /listeArticles.jsp(48,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f1.setVar("artRef"); + int[] _jspx_push_body_count_c_005fforEach_005f1 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f1 = _jspx_th_c_005fforEach_005f1.doStartTag(); + if (_jspx_eval_c_005fforEach_005f1 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \"image\"/\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Référence : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.ref}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Marque : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.marque}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Modèle : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.modele}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Description : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.description}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Prix : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.prix}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" ajouter au panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f1.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f1.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f1[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f1.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f1.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f1); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/panierVide_jsp.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/panierVide_jsp.class new file mode 100644 index 0000000..7f6ca11 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/panierVide_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/panierVide_jsp.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/panierVide_jsp.java new file mode 100644 index 0000000..e4bd2b6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/panierVide_jsp.java @@ -0,0 +1,94 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class panierVide_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Contenu du Panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articles
    \r\n"); + out.write(" \r\n"); + out.write("\t\t

    Contenu de votre panier

    \r\n"); + out.write("\t\t

    Votre panier est vide

    \r\n"); + out.write(" \tContinuez vos achats\r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/payement_jsp.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/payement_jsp.class new file mode 100644 index 0000000..f8d61de Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/payement_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/payement_jsp.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/payement_jsp.java new file mode 100644 index 0000000..e90e702 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/payement_jsp.java @@ -0,0 +1,219 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class payement_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Payement\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articlesPasser � la caisse
    \r\n"); + out.write(" \r\n"); + out.write("

    Payement

    \r\n"); + out.write("\r\n"); + out.write("\t

    Rappel de la commande :

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write("
    ReferenceModelePrix
    Total :\r\n"); + com.articles.Panier panierTotal = null; + synchronized (request) { + panierTotal = (com.articles.Panier) _jspx_page_context.getAttribute("panierTotal", PageContext.REQUEST_SCOPE); + if (panierTotal == null){ + panierTotal = new com.articles.Panier(); + _jspx_page_context.setAttribute("panierTotal", panierTotal, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write("\t\t\t\t\t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Panier)_jspx_page_context.findAttribute("panierTotal")).getPrixTotal()))); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("\t\t
    \r\n"); + out.write("\r\n"); + out.write("\t
    \r\n"); + out.write("\t\r\n"); + out.write(" \r\n"); + out.write(" \t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\t\r\n"); + out.write(" \t\r\n"); + out.write(" \r\n"); + out.write("
    Nom :
    Pr�nom :
    Adresse :
    Code postal :
    Ville :
    \r\n"); + out.write("

    Note : le payement se fera � la livraison de la commande.

    \r\n"); + out.write(" \r\n"); + out.write("  \r\n"); + out.write(" \r\n"); + out.write("\t
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /payement.jsp(41,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${articles}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /payement.jsp(41,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("artRef"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \tRéférence : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.ref}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t\t\t\t\tModèle : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.modele}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t \r\n"); + out.write("\t \tPrix : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.prix}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t \r\n"); + out.write(" \r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resultPayement_jsp.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resultPayement_jsp.class new file mode 100644 index 0000000..4507c5a Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resultPayement_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resultPayement_jsp.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resultPayement_jsp.java new file mode 100644 index 0000000..cd3fb92 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resultPayement_jsp.java @@ -0,0 +1,214 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class resultPayement_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Payement\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articlesPasser � la caisse
    \r\n"); + out.write(" \r\n"); + out.write("

    Confirmation de la commande

    \r\n"); + out.write("\r\n"); + out.write("\t

    Rappel de la commande :

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write("
    ReferenceModelePrix
    Total :\r\n"); + com.articles.Panier panierTotal = null; + synchronized (request) { + panierTotal = (com.articles.Panier) _jspx_page_context.getAttribute("panierTotal", PageContext.REQUEST_SCOPE); + if (panierTotal == null){ + panierTotal = new com.articles.Panier(); + _jspx_page_context.setAttribute("panierTotal", panierTotal, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write("\t\t\t\t\t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Panier)_jspx_page_context.findAttribute("panierTotal")).getPrixTotal()))); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("\t\t
    \r\n"); + out.write("\r\n"); + out.write("\t"); + com.articles.Client client = null; + synchronized (request) { + client = (com.articles.Client) _jspx_page_context.getAttribute("client", PageContext.REQUEST_SCOPE); + if (client == null){ + client = new com.articles.Client(); + _jspx_page_context.setAttribute("client", client, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write("

    Note : le payement se fera � la livraison de la commande � l'adresse suivante :
    \r\n"); + out.write("\t\t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Client)_jspx_page_context.findAttribute("client")).getNom()))); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Client)_jspx_page_context.findAttribute("client")).getPrenom()))); + out.write("
    \r\n"); + out.write(" \t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Client)_jspx_page_context.findAttribute("client")).getAdresse()))); + out.write("
    \r\n"); + out.write(" \t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Client)_jspx_page_context.findAttribute("client")).getCodePost()))); + out.write(" "); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Client)_jspx_page_context.findAttribute("client")).getVille()))); + out.write("\r\n"); + out.write("

    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /resultPayement.jsp(41,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${articles}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /resultPayement.jsp(41,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("artRef"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \tRéférence : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.ref}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t\t\t\t\tModèle : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.modele}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t\t\t\t\r\n"); + out.write("\t \r\n"); + out.write("\t \tPrix : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.prix}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t \r\n"); + out.write(" \r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resumePanier_jsp.class b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resumePanier_jsp.class new file mode 100644 index 0000000..92220b5 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resumePanier_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resumePanier_jsp.java b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resumePanier_jsp.java new file mode 100644 index 0000000..dbb0344 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/ecommerce/work/org/apache/jsp/resumePanier_jsp.java @@ -0,0 +1,211 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class resumePanier_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Resume du Panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articlesPasser � la caisse
    \r\n"); + out.write(" \r\n"); + out.write("

    Contenu du Panier

    \r\n"); + out.write("\r\n"); + out.write("\t
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\t\r\n"); + out.write(" \r\n"); + out.write("
    Aper�uPropri�t�sQuantit�
    Total :\r\n"); + com.articles.Panier panierTotal = null; + synchronized (request) { + panierTotal = (com.articles.Panier) _jspx_page_context.getAttribute("panierTotal", PageContext.REQUEST_SCOPE); + if (panierTotal == null){ + panierTotal = new com.articles.Panier(); + _jspx_page_context.setAttribute("panierTotal", panierTotal, PageContext.REQUEST_SCOPE); + } + } + out.write("\r\n"); + out.write("\t\t\t\t\t"); + out.write(org.apache.jasper.runtime.JspRuntimeLibrary.toString((((com.articles.Panier)_jspx_page_context.findAttribute("panierTotal")).getPrixTotal()))); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("  \r\n"); + out.write(" \r\n"); + out.write("\t
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /resumePanier.jsp(41,0) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${articles}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /resumePanier.jsp(41,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("artRef"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \"image\"/\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Référence : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.ref}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Marque : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.marque}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Modèle : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.modele}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    Prix : "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.prix}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${artRef.quantite}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/CookieExample.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/CookieExample.class new file mode 100644 index 0000000..e3b820c Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/CookieExample.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/CookieExample.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/CookieExample.java new file mode 100644 index 0000000..9f465ff --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/CookieExample.java @@ -0,0 +1,121 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +/* $Id: CookieExample.java 500674 2007-01-27 23:15:00Z markt $ + * + */ + +import java.io.*; +import java.util.*; +import javax.servlet.*; +import javax.servlet.http.*; + +import util.HTMLFilter; + +/** + * Example servlet showing request headers + * + * @author James Duncan Davidson + */ + +public class CookieExample extends HttpServlet { + + ResourceBundle rb = ResourceBundle.getBundle("LocalStrings"); + + public void doGet(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + response.setContentType("text/html"); + + PrintWriter out = response.getWriter(); + out.println(""); + out.println(""); + out.println(""); + + String title = rb.getString("cookies.title"); + out.println("" + title + ""); + out.println(""); + out.println(""); + + // relative links + + // XXX + // making these absolute till we work out the + // addition of a PathInfo issue + + out.println(""); + out.println("\"view"); + out.println(""); + out.println("\"return\""); + + out.println("

    " + title + "

    "); + + Cookie[] cookies = request.getCookies(); + if ((cookies != null) && (cookies.length > 0)) { + out.println(rb.getString("cookies.cookies") + "
    "); + for (int i = 0; i < cookies.length; i++) { + Cookie cookie = cookies[i]; + out.print("Cookie Name: " + HTMLFilter.filter(cookie.getName()) + + "
    "); + out.println(" Cookie Value: " + + HTMLFilter.filter(cookie.getValue()) + + "

    "); + } + } else { + out.println(rb.getString("cookies.no-cookies")); + } + + String cookieName = request.getParameter("cookiename"); + String cookieValue = request.getParameter("cookievalue"); + if (cookieName != null && cookieValue != null) { + Cookie cookie = new Cookie(cookieName, cookieValue); + response.addCookie(cookie); + out.println("

    "); + out.println(rb.getString("cookies.set") + "
    "); + out.print(rb.getString("cookies.name") + " " + + HTMLFilter.filter(cookieName) + "
    "); + out.print(rb.getString("cookies.value") + " " + + HTMLFilter.filter(cookieValue)); + } + + out.println("

    "); + out.println(rb.getString("cookies.make-cookie") + "
    "); + out.print("

    "); + out.print(rb.getString("cookies.name") + " "); + out.println("
    "); + out.print(rb.getString("cookies.value") + " "); + out.println("
    "); + out.println("
    "); + + + out.println(""); + out.println(""); + } + + public void doPost(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + doGet(request, response); + } + +} + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/HelloWorldExample.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/HelloWorldExample.class new file mode 100644 index 0000000..62f3197 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/HelloWorldExample.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/HelloWorldExample.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/HelloWorldExample.java new file mode 100644 index 0000000..a6830d3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/HelloWorldExample.java @@ -0,0 +1,75 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +/* $Id: HelloWorldExample.java 500674 2007-01-27 23:15:00Z markt $ + * + */ + +import java.io.*; +import java.util.*; +import javax.servlet.*; +import javax.servlet.http.*; + +/** + * The simplest possible servlet. + * + * @author James Duncan Davidson + */ + +public class HelloWorldExample extends HttpServlet { + + + public void doGet(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + ResourceBundle rb = + ResourceBundle.getBundle("LocalStrings",request.getLocale()); + response.setContentType("text/html"); + PrintWriter out = response.getWriter(); + + out.println(""); + out.println(""); + + String title = rb.getString("helloworld.title"); + + out.println("" + title + ""); + out.println(""); + out.println(""); + + // note that all links are created to be relative. this + // ensures that we can move the web application that this + // servlet belongs to to a different place in the url + // tree and not have any harmful side effects. + + // XXX + // making these absolute till we work out the + // addition of a PathInfo issue + + out.println(""); + out.println("\"view"); + out.println(""); + out.println("\"return\""); + out.println("

    " + title + "

    "); + out.println(""); + out.println(""); + } +} + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings.properties b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings.properties new file mode 100644 index 0000000..ad09647 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings.properties @@ -0,0 +1,53 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# $Id: LocalStrings.properties 467217 2006-10-24 03:14:34Z markt $ + +# Default localized resources for example servlets +# This locale is en_US + +helloworld.title=Hello World! + +requestinfo.title=Request Information Example +requestinfo.label.method=Method: +requestinfo.label.requesturi=Request URI: +requestinfo.label.protocol=Protocol: +requestinfo.label.pathinfo=Path Info: +requestinfo.label.remoteaddr=Remote Address: + +requestheader.title=Request Header Example + +requestparams.title=Request Parameters Example +requestparams.params-in-req=Parameters in this request: +requestparams.no-params=No Parameters, Please enter some +requestparams.firstname=First Name: +requestparams.lastname=Last Name: + +cookies.title=Cookies Example +cookies.cookies=Your browser is sending the following cookies: +cookies.no-cookies=Your browser isn't sending any cookies +cookies.make-cookie=Create a cookie to send to your browser +cookies.name=Name: +cookies.value=Value: +cookies.set=You just sent the following cookie to your browser: + +sessions.title=Sessions Example +sessions.id=Session ID: +sessions.created=Created: +sessions.lastaccessed=Last Accessed: +sessions.data=The following data is in your session: +sessions.adddata=Add data to your session +sessions.dataname=Name of Session Attribute: +sessions.datavalue=Value of Session Attribute: diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_en.properties b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_en.properties new file mode 100644 index 0000000..09ea92c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_en.properties @@ -0,0 +1,53 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# $Id: LocalStrings_en.properties 467217 2006-10-24 03:14:34Z markt $ + +# Default localized resources for example servlets +# This locale is en_US + +helloworld.title=Hello World! + +requestinfo.title=Request Information Example +requestinfo.label.method=Method: +requestinfo.label.requesturi=Request URI: +requestinfo.label.protocol=Protocol: +requestinfo.label.pathinfo=Path Info: +requestinfo.label.remoteaddr=Remote Address: + +requestheader.title=Request Header Example + +requestparams.title=Request Parameters Example +requestparams.params-in-req=Parameters in this request: +requestparams.no-params=No Parameters, Please enter some +requestparams.firstname=First Name: +requestparams.lastname=Last Name: + +cookies.title=Cookies Example +cookies.cookies=Your browser is sending the following cookies: +cookies.no-cookies=Your browser isn't sending any cookies +cookies.make-cookie=Create a cookie to send to your browser +cookies.name=Name: +cookies.value=Value: +cookies.set=You just sent the following cookie to your browser: + +sessions.title=Sessions Example +sessions.id=Session ID: +sessions.created=Created: +sessions.lastaccessed=Last Accessed: +sessions.data=The following data is in your session: +sessions.adddata=Add data to your session +sessions.dataname=Name of Session Attribute: +sessions.datavalue=Value of Session Attribute: diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_es.properties b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_es.properties new file mode 100644 index 0000000..21f6cca --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_es.properties @@ -0,0 +1,53 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# $Id: LocalStrings_es.properties 467217 2006-10-24 03:14:34Z markt $ +# +# Default localized string information +# Localized para Locale es_ES + +helloworld.title=Hola Mundo! + +requestinfo.title=Ejemplo de Informacion de Request +requestinfo.label.method=Metodo: +requestinfo.label.requesturi=Request URI: +requestinfo.label.protocol=Protocolo: +requestinfo.label.pathinfo=Path Info: +requestinfo.label.remoteaddr=Direccion Remota: + +requestheader.title=Ejemplo de Cabecera de Request + +requestparams.title=Ejemplo de parametros de Request +requestparams.params-in-req=Parametros en este Request: +requestparams.no-params=No hay parametro. por favor usa alguno +requestparams.firstname=Nombre: +requestparams.lastname=Apellidos: + +cookies.title=Ejemplo de Cookies +cookies.cookies=Tu navegador esta enviando los siguientes cookies: +cookies.no-cookies=Tu navegador no esta enviando cookies +cookies.make-cookie=Crea un cookie para enviarlo a tu navegador +cookies.name=Nombre: +cookies.value=Valor: +cookies.set=Acabas de enviar a tu navegador estos cookies: + +sessions.title=ejemplo de Sesiones +sessions.id=ID de Sesion: +sessions.created=Creado: +sessions.lastaccessed=Ultimo Acceso: +sessions.data=Lo siguientes datos estan en tu sesion: +sessions.adddata=Aade datos a tu sesion: +sessions.dataname=Nombre del atributo de sesion: +sessions.datavalue=Valor del atributo de sesion: diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_fr.properties b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_fr.properties new file mode 100644 index 0000000..61960ed --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_fr.properties @@ -0,0 +1,53 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# $Id: LocalStrings_fr.properties 467217 2006-10-24 03:14:34Z markt $ + +# Default localized resources for example servlets +# This locale is fr_FR + +helloworld.title=Salut le Monde! + +requestinfo.title=Exemple d''information sur la requte +requestinfo.label.method=Mthode: +requestinfo.label.requesturi=URI de requte: +requestinfo.label.protocol=Protocole: +requestinfo.label.pathinfo=Info de chemin: +requestinfo.label.remoteaddr=Adresse distante: + +requestheader.title=Exemple d''information sur les entte de requte + +requestparams.title=Exemple de requte avec paramtres +requestparams.params-in-req=Paramtres dans la requte: +requestparams.no-params=Pas de paramtre, merci dans saisir quelqu'uns +requestparams.firstname=Prnom: +requestparams.lastname=Nom: + +cookies.title=Exemple d''utilisation de Cookies +cookies.cookies=Votre navigateur retourne les cookies suivant: +cookies.no-cookies=Votre navigateur ne retourne aucun cookie +cookies.make-cookie=Cration d''un cookie retourner votre navigateur +cookies.name=Nom: +cookies.value=Valeur: +cookies.set=Vous venez d''envoyer le cookie suivant votre navigateur: + +sessions.title=Exemple de Sessions +sessions.id=ID de Session: +sessions.created=Cre le: +sessions.lastaccessed=Dernier accs: +sessions.data=Les donnes existantes dans votre session: +sessions.adddata=Ajouter des donnes votre session +sessions.dataname=Nom de l''Attribut de Session: +sessions.datavalue=Valeur de l''Attribut de Session: diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_pt.properties b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_pt.properties new file mode 100644 index 0000000..8cb6bf0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/LocalStrings_pt.properties @@ -0,0 +1,53 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# $Id: LocalStrings_pt.properties 467217 2006-10-24 03:14:34Z markt $ + +# Default localized resources for example servlets +# This locale is pt_PT + +helloworld.title=Ola Mundo! + +requestinfo.title=Exemplo da Informacao do Pedido +requestinfo.label.method=Metodo: +requestinfo.label.requesturi=URI do Pedido: +requestinfo.label.protocol=Protocolo: +requestinfo.label.pathinfo=Informacao do Caminho: +requestinfo.label.remoteaddr=Endereco Remoto: + +requestheader.title=Exemplo da Cebeceira do Pedido + +requestparams.title=Examplo de Parametros do Pedido +requestparams.params-in-req=Parametros neste pedido: +requestparams.no-params=Sem Parametros, Por favor entre alguns +requestparams.firstname=Primeiro Nome: +requestparams.lastname=Apelido: + +cookies.title=CExamplo de Cookies +cookies.cookies=O se browser esta a enviar os seguintes cookies: +cookies.no-cookies=O seu browser nao esta a enviar nenhuns cookies +cookies.make-cookie=Crie um cookie para enviar para o seu browser +cookies.name=Nome: +cookies.value=Valor: +cookies.set=Acabou de enviar o seguinte cookie para o seu browser: + +sessions.title=Examplo de sessoes +sessions.id=Identificador da Sessao: +sessions.created=Criada: +sessions.lastaccessed=Ultima vez acedida: +sessions.data=Os seguintes dados fazem parte da sua sessao: +sessions.adddata=Adicione data a sua sessao +sessions.dataname=Nome do atributo da sessao: +sessions.datavalue=Valor do atributo da Sessao: diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestHeaderExample.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestHeaderExample.class new file mode 100644 index 0000000..c5249eb Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestHeaderExample.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestHeaderExample.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestHeaderExample.java new file mode 100644 index 0000000..d535e6a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestHeaderExample.java @@ -0,0 +1,90 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +/* $Id: RequestHeaderExample.java 500674 2007-01-27 23:15:00Z markt $ + * + */ + +import java.io.*; +import java.util.*; +import javax.servlet.*; +import javax.servlet.http.*; + +import util.HTMLFilter; + +/** + * Example servlet showing request headers + * + * @author James Duncan Davidson + */ + +public class RequestHeaderExample extends HttpServlet { + + ResourceBundle rb = ResourceBundle.getBundle("LocalStrings"); + + public void doGet(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + response.setContentType("text/html"); + + PrintWriter out = response.getWriter(); + out.println(""); + out.println(""); + out.println(""); + + String title = rb.getString("requestheader.title"); + out.println("" + title + ""); + out.println(""); + out.println(""); + + // all links relative + + // XXX + // making these absolute till we work out the + // addition of a PathInfo issue + + out.println(""); + out.println("\"view"); + out.println(""); + out.println("\"return\""); + + out.println("

    " + title + "

    "); + out.println(""); + Enumeration e = request.getHeaderNames(); + while (e.hasMoreElements()) { + String headerName = (String)e.nextElement(); + String headerValue = request.getHeader(headerName); + out.println(""); + } + out.println("
    "); + out.println(HTMLFilter.filter(headerName)); + out.println(""); + out.println(HTMLFilter.filter(headerValue)); + out.println("
    "); + } + + public void doPost(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + doGet(request, response); + } + +} + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestInfoExample.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestInfoExample.class new file mode 100644 index 0000000..214095e Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestInfoExample.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestInfoExample.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestInfoExample.java new file mode 100644 index 0000000..16aee03 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestInfoExample.java @@ -0,0 +1,114 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +/* $Id: RequestInfoExample.java 500674 2007-01-27 23:15:00Z markt $ + * + */ + +import java.io.*; +import java.util.*; +import javax.servlet.*; +import javax.servlet.http.*; + +import util.HTMLFilter; + +/** + * Example servlet showing request information. + * + * @author James Duncan Davidson + */ + +public class RequestInfoExample extends HttpServlet { + + + ResourceBundle rb = ResourceBundle.getBundle("LocalStrings"); + + public void doGet(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + response.setContentType("text/html"); + + PrintWriter out = response.getWriter(); + out.println(""); + out.println(""); + out.println(""); + + String title = rb.getString("requestinfo.title"); + out.println("" + title + ""); + out.println(""); + out.println(""); + + // img stuff not req'd for source code html showing + // all links relative! + + // XXX + // making these absolute till we work out the + // addition of a PathInfo issue + + out.println(""); + out.println("\"view"); + out.println(""); + out.println("\"return\""); + + out.println("

    " + title + "

    "); + out.println("
    "); + out.println(rb.getString("requestinfo.label.method")); + out.println(""); + out.println(request.getMethod()); + out.println("
    "); + out.println(rb.getString("requestinfo.label.requesturi")); + out.println(""); + out.println(HTMLFilter.filter(request.getRequestURI())); + out.println("
    "); + out.println(rb.getString("requestinfo.label.protocol")); + out.println(""); + out.println(request.getProtocol()); + out.println("
    "); + out.println(rb.getString("requestinfo.label.pathinfo")); + out.println(""); + out.println(HTMLFilter.filter(request.getPathInfo())); + out.println("
    "); + out.println(rb.getString("requestinfo.label.remoteaddr")); + + String cipherSuite= + (String)request.getAttribute("javax.servlet.request.cipher_suite"); + out.println(""); + out.println(request.getRemoteAddr()); + out.println("
    "); + + if(cipherSuite!=null){ + out.println(""); + out.println("SSLCipherSuite:"); + out.println(""); + out.println(""); + out.println(request.getAttribute("javax.servlet.request.cipher_suite")); + out.println(""); + } + + } + + public void doPost(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + doGet(request, response); + } + +} + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestParamExample.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestParamExample.class new file mode 100644 index 0000000..7213b1c Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestParamExample.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestParamExample.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestParamExample.java new file mode 100644 index 0000000..3176fb2 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/RequestParamExample.java @@ -0,0 +1,106 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +/* $Id: RequestParamExample.java 500674 2007-01-27 23:15:00Z markt $ + * + */ + +import java.io.*; +import java.util.*; +import javax.servlet.*; +import javax.servlet.http.*; + +import util.HTMLFilter; + +/** + * Example servlet showing request headers + * + * @author James Duncan Davidson + */ + +public class RequestParamExample extends HttpServlet { + + + ResourceBundle rb = ResourceBundle.getBundle("LocalStrings"); + + public void doGet(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + response.setContentType("text/html"); + + PrintWriter out = response.getWriter(); + out.println(""); + out.println(""); + out.println(""); + + String title = rb.getString("requestparams.title"); + out.println("" + title + ""); + out.println(""); + out.println(""); + + // img stuff not req'd for source code html showing + + // all links relative + + // XXX + // making these absolute till we work out the + // addition of a PathInfo issue + + out.println(""); + out.println("\"view"); + out.println(""); + out.println("\"return\""); + + out.println("

    " + title + "

    "); + String firstName = request.getParameter("firstname"); + String lastName = request.getParameter("lastname"); + out.println(rb.getString("requestparams.params-in-req") + "
    "); + if (firstName != null || lastName != null) { + out.println(rb.getString("requestparams.firstname")); + out.println(" = " + HTMLFilter.filter(firstName) + "
    "); + out.println(rb.getString("requestparams.lastname")); + out.println(" = " + HTMLFilter.filter(lastName)); + } else { + out.println(rb.getString("requestparams.no-params")); + } + out.println("

    "); + out.print("

    "); + out.println(rb.getString("requestparams.firstname")); + out.println(""); + out.println("
    "); + out.println(rb.getString("requestparams.lastname")); + out.println(""); + out.println("
    "); + out.println(""); + out.println("
    "); + + out.println(""); + out.println(""); + } + + public void doPost(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + doGet(request, response); + } + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/SessionExample.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/SessionExample.class new file mode 100644 index 0000000..a344c4d Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/SessionExample.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/SessionExample.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/SessionExample.java new file mode 100644 index 0000000..f3e0f40 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/SessionExample.java @@ -0,0 +1,140 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +/* $Id: SessionExample.java 500674 2007-01-27 23:15:00Z markt $ + * + */ + +import java.io.*; +import java.util.*; +import javax.servlet.*; +import javax.servlet.http.*; + +import util.HTMLFilter; + +/** + * Example servlet showing request headers + * + * @author James Duncan Davidson + */ + +public class SessionExample extends HttpServlet { + + ResourceBundle rb = ResourceBundle.getBundle("LocalStrings"); + + public void doGet(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + response.setContentType("text/html"); + + PrintWriter out = response.getWriter(); + out.println(""); + out.println(""); + out.println(""); + + String title = rb.getString("sessions.title"); + out.println("" + title + ""); + out.println(""); + out.println(""); + + // img stuff not req'd for source code html showing + // relative links everywhere! + + // XXX + // making these absolute till we work out the + // addition of a PathInfo issue + + out.println(""); + out.println("\"view"); + out.println(""); + out.println("\"return\""); + + out.println("

    " + title + "

    "); + + HttpSession session = request.getSession(true); + out.println(rb.getString("sessions.id") + " " + session.getId()); + out.println("
    "); + out.println(rb.getString("sessions.created") + " "); + out.println(new Date(session.getCreationTime()) + "
    "); + out.println(rb.getString("sessions.lastaccessed") + " "); + out.println(new Date(session.getLastAccessedTime())); + + String dataName = request.getParameter("dataname"); + String dataValue = request.getParameter("datavalue"); + if (dataName != null && dataValue != null) { + session.setAttribute(dataName, dataValue); + } + + out.println("

    "); + out.println(rb.getString("sessions.data") + "
    "); + Enumeration names = session.getAttributeNames(); + while (names.hasMoreElements()) { + String name = (String) names.nextElement(); + String value = session.getAttribute(name).toString(); + out.println(HTMLFilter.filter(name) + " = " + + HTMLFilter.filter(value) + "
    "); + } + + out.println("

    "); + out.print("

    "); + out.println(rb.getString("sessions.dataname")); + out.println(""); + out.println("
    "); + out.println(rb.getString("sessions.datavalue")); + out.println(""); + out.println("
    "); + out.println(""); + out.println("
    "); + + out.println("

    GET based form:
    "); + out.print("

    "); + out.println(rb.getString("sessions.dataname")); + out.println(""); + out.println("
    "); + out.println(rb.getString("sessions.datavalue")); + out.println(""); + out.println("
    "); + out.println(""); + out.println("
    "); + + out.print("

    URL encoded "); + + out.println(""); + out.println(""); + + out.println(""); + out.println(""); + } + + public void doPost(HttpServletRequest request, + HttpServletResponse response) + throws IOException, ServletException + { + doGet(request, response); + } + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entries.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entries.class new file mode 100644 index 0000000..ab44434 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entries.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entries.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entries.java new file mode 100644 index 0000000..ea0867b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entries.java @@ -0,0 +1,72 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package cal; + +import java.util.Hashtable; +import javax.servlet.http.*; + +public class Entries { + + private Hashtable entries; + private static final String[] time = {"8am", "9am", "10am", "11am", "12pm", + "1pm", "2pm", "3pm", "4pm", "5pm", "6pm", + "7pm", "8pm" }; + public static final int rows = 12; + + public Entries () { + entries = new Hashtable (rows); + for (int i=0; i < rows; i++) { + entries.put (time[i], new Entry(time[i])); + } + } + + public int getRows () { + return rows; + } + + public Entry getEntry (int index) { + return (Entry)this.entries.get(time[index]); + } + + public int getIndex (String tm) { + for (int i=0; i= 0) { + String descr = request.getParameter ("description"); + ((Entry)entries.get(time[index])).setDescription (descr); + } + } + +} + + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entry.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entry.class new file mode 100644 index 0000000..b4619a6 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entry.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entry.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entry.java new file mode 100644 index 0000000..d4596d9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/Entry.java @@ -0,0 +1,55 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +package cal; + +public class Entry { + + String hour; + String description; + String color; + + public Entry (String hour) { + this.hour = hour; + this.description = ""; + + } + + public String getHour () { + return this.hour; + } + + public String getColor () { + if (description.equals("")) return "lightblue"; + else return "red"; + } + + public String getDescription () { + if (description.equals("")) return "None"; + else return this.description; + } + + public void setDescription (String descr) { + description = descr; + } + +} + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/JspCalendar.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/JspCalendar.class new file mode 100644 index 0000000..dfd95e1 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/JspCalendar.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/JspCalendar.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/JspCalendar.java new file mode 100644 index 0000000..b2db6c0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/JspCalendar.java @@ -0,0 +1,154 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +package cal; + +import java.util.*; + +public class JspCalendar { + Calendar calendar = null; + Date currentDate; + + public JspCalendar() { + calendar = Calendar.getInstance(); + Date trialTime = new Date(); + calendar.setTime(trialTime); + } + + + public int getYear() { + return calendar.get(Calendar.YEAR); + } + + public String getMonth() { + int m = getMonthInt(); + String[] months = new String [] { "January", "February", "March", + "April", "May", "June", + "July", "August", "September", + "October", "November", "December" }; + if (m > 12) + return "Unknown to Man"; + + return months[m - 1]; + + } + + public String getDay() { + int x = getDayOfWeek(); + String[] days = new String[] {"Sunday", "Monday", "Tuesday", "Wednesday", + "Thursday", "Friday", "Saturday"}; + + if (x > 7) + return "Unknown to Man"; + + return days[x - 1]; + + } + + public int getMonthInt() { + return 1 + calendar.get(Calendar.MONTH); + } + + public String getDate() { + return getMonthInt() + "/" + getDayOfMonth() + "/" + getYear(); + } + + public String getCurrentDate() { + Date dt = new Date (); + calendar.setTime (dt); + return getMonthInt() + "/" + getDayOfMonth() + "/" + getYear(); + + } + + public String getNextDate() { + calendar.set (Calendar.DAY_OF_MONTH, getDayOfMonth() + 1); + return getDate (); + } + + public String getPrevDate() { + calendar.set (Calendar.DAY_OF_MONTH, getDayOfMonth() - 1); + return getDate (); + } + + public String getTime() { + return getHour() + ":" + getMinute() + ":" + getSecond(); + } + + public int getDayOfMonth() { + return calendar.get(Calendar.DAY_OF_MONTH); + } + + public int getDayOfYear() { + return calendar.get(Calendar.DAY_OF_YEAR); + } + + public int getWeekOfYear() { + return calendar.get(Calendar.WEEK_OF_YEAR); + } + + public int getWeekOfMonth() { + return calendar.get(Calendar.WEEK_OF_MONTH); + } + + public int getDayOfWeek() { + return calendar.get(Calendar.DAY_OF_WEEK); + } + + public int getHour() { + return calendar.get(Calendar.HOUR_OF_DAY); + } + + public int getMinute() { + return calendar.get(Calendar.MINUTE); + } + + + public int getSecond() { + return calendar.get(Calendar.SECOND); + } + + + public int getEra() { + return calendar.get(Calendar.ERA); + } + + public String getUSTimeZone() { + String[] zones = new String[] {"Hawaii", "Alaskan", "Pacific", + "Mountain", "Central", "Eastern"}; + + return zones[10 + getZoneOffset()]; + } + + public int getZoneOffset() { + return calendar.get(Calendar.ZONE_OFFSET)/(60*60*1000); + } + + + public int getDSTOffset() { + return calendar.get(Calendar.DST_OFFSET)/(60*60*1000); + } + + + public int getAMPM() { + return calendar.get(Calendar.AM_PM); + } +} + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/TableBean.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/TableBean.class new file mode 100644 index 0000000..8afd547 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/TableBean.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/TableBean.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/TableBean.java new file mode 100644 index 0000000..f55327c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/cal/TableBean.java @@ -0,0 +1,100 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package cal; + +import javax.servlet.http.*; +import java.util.Hashtable; + +public class TableBean { + + Hashtable table; + JspCalendar JspCal; + Entries entries; + String date; + String name = null; + String email = null; + boolean processError = false; + + public TableBean () { + this.table = new Hashtable (10); + this.JspCal = new JspCalendar (); + this.date = JspCal.getCurrentDate (); + } + + public void setName (String nm) { + this.name = nm; + } + + public String getName () { + return this.name; + } + + public void setEmail (String mail) { + this.email = mail; + } + + public String getEmail () { + return this.email; + } + + public String getDate () { + return this.date; + } + + public Entries getEntries () { + return this.entries; + } + + public void processRequest (HttpServletRequest request) { + + // Get the name and e-mail. + this.processError = false; + if (name == null || name.equals("")) setName(request.getParameter ("name")); + if (email == null || email.equals("")) setEmail(request.getParameter ("email")); + if (name == null || email == null || + name.equals("") || email.equals("")) { + this.processError = true; + return; + } + + // Get the date. + String dateR = request.getParameter ("date"); + if (dateR == null) date = JspCal.getCurrentDate (); + else if (dateR.equalsIgnoreCase("next")) date = JspCal.getNextDate (); + else if (dateR.equalsIgnoreCase("prev")) date = JspCal.getPrevDate (); + + entries = (Entries) table.get (date); + if (entries == null) { + entries = new Entries (); + table.put (date, entries); + } + + // If time is provided add the event. + String time = request.getParameter("time"); + if (time != null) entries.processRequest (request, time); + } + + public boolean getProcessError () { + return this.processError; + } +} + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/chat/ChatServlet$MessageSender.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/chat/ChatServlet$MessageSender.class new file mode 100644 index 0000000..302c8ae Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/chat/ChatServlet$MessageSender.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/chat/ChatServlet.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/chat/ChatServlet.class new file mode 100644 index 0000000..5a45367 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/chat/ChatServlet.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/chat/ChatServlet.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/chat/ChatServlet.java new file mode 100644 index 0000000..bcf6682 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/chat/ChatServlet.java @@ -0,0 +1,256 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +package chat; + + +import java.io.IOException; +import java.io.InputStream; +import java.io.PrintWriter; +import java.util.ArrayList; + +import org.apache.catalina.CometEvent; +import org.apache.catalina.CometProcessor; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +/** + * Helper class to implement Comet functionality. + */ +public class ChatServlet + extends HttpServlet implements CometProcessor { + + protected ArrayList connections = + new ArrayList(); + protected MessageSender messageSender = null; + + public void init() throws ServletException { + messageSender = new MessageSender(); + Thread messageSenderThread = + new Thread(messageSender, "MessageSender[" + getServletContext().getContextPath() + "]"); + messageSenderThread.setDaemon(true); + messageSenderThread.start(); + } + + public void destroy() { + connections.clear(); + messageSender.stop(); + messageSender = null; + } + + /** + * Process the given Comet event. + * + * @param event The Comet event that will be processed + * @throws IOException + * @throws ServletException + */ + public void event(CometEvent event) + throws IOException, ServletException { + + // Note: There should really be two servlets in this example, to avoid + // mixing Comet stuff with regular connection processing + HttpServletRequest request = event.getHttpServletRequest(); + HttpServletResponse response = event.getHttpServletResponse(); + + if (event.getEventType() == CometEvent.EventType.BEGIN) { + String action = request.getParameter("action"); + if (action != null) { + if ("login".equals(action)) { + String nickname = request.getParameter("nickname"); + request.getSession(true).setAttribute("nickname", nickname); + response.sendRedirect("post.jsp"); + event.close(); + return; + } else { + String nickname = (String) request.getSession(true).getAttribute("nickname"); + String message = request.getParameter("message"); + messageSender.send(nickname, message); + response.sendRedirect("post.jsp"); + event.close(); + return; + } + } else { + if (request.getSession(true).getAttribute("nickname") == null) { + // Redirect to "login" + log("Redirect to login for session: " + request.getSession(true).getId()); + response.sendRedirect("login.jsp"); + event.close(); + return; + } + } + begin(event, request, response); + } else if (event.getEventType() == CometEvent.EventType.ERROR) { + error(event, request, response); + } else if (event.getEventType() == CometEvent.EventType.END) { + end(event, request, response); + } else if (event.getEventType() == CometEvent.EventType.READ) { + read(event, request, response); + } + } + + protected void begin(CometEvent event, HttpServletRequest request, HttpServletResponse response) + throws IOException, ServletException { + log("Begin for session: " + request.getSession(true).getId()); + + PrintWriter writer = response.getWriter(); + writer.println(""); + writer.println("JSP Chat"); + writer.flush(); + + synchronized(connections) { + connections.add(response); + } + } + + protected void end(CometEvent event, HttpServletRequest request, HttpServletResponse response) + throws IOException, ServletException { + log("End for session: " + request.getSession(true).getId()); + synchronized(connections) { + connections.remove(response); + } + + PrintWriter writer = response.getWriter(); + writer.println(""); + + event.close(); + + } + + protected void error(CometEvent event, HttpServletRequest request, HttpServletResponse response) + throws IOException, ServletException { + log("Error for session: " + request.getSession(true).getId()); + synchronized(connections) { + connections.remove(response); + } + event.close(); + } + + protected void read(CometEvent event, HttpServletRequest request, HttpServletResponse response) + throws IOException, ServletException { + InputStream is = request.getInputStream(); + byte[] buf = new byte[512]; + while (is.available() > 0) { + log("Available: " + is.available()); + int n = is.read(buf); + if (n > 0) { + log("Read " + n + " bytes: " + new String(buf, 0, n) + + " for session: " + request.getSession(true).getId()); + } else if (n < 0) { + log("End of file: " + n); + end(event, request, response); + return; + } + } + } + + protected void service(HttpServletRequest request, HttpServletResponse response) + throws IOException, ServletException { + // Compatibility method: equivalent method using the regular connection model + PrintWriter writer = response.getWriter(); + writer.println(""); + writer.println("JSP Chat"); + writer.println("Chat example only supports Comet processing"); + writer.println(""); + } + + + /** + * Poller class. + */ + public class MessageSender implements Runnable { + + protected boolean running = true; + protected ArrayList messages = new ArrayList(); + + public MessageSender() { + } + + public void stop() { + running = false; + } + + /** + * Add specified socket and associated pool to the poller. The socket will + * be added to a temporary array, and polled first after a maximum amount + * of time equal to pollTime (in most cases, latency will be much lower, + * however). + * + * @param socket to add to the poller + */ + public void send(String user, String message) { + synchronized (messages) { + messages.add("[" + user + "]: " + message); + messages.notify(); + } + } + + /** + * The background thread that listens for incoming TCP/IP connections and + * hands them off to an appropriate processor. + */ + public void run() { + + // Loop until we receive a shutdown command + while (running) { + // Loop if endpoint is paused + + if (messages.size() == 0) { + try { + synchronized (messages) { + messages.wait(); + } + } catch (InterruptedException e) { + // Ignore + } + } + + synchronized (connections) { + String[] pendingMessages = null; + synchronized (messages) { + pendingMessages = messages.toArray(new String[0]); + messages.clear(); + } + for (int i = 0; i < connections.size(); i++) { + try { + PrintWriter writer = connections.get(i).getWriter(); + for (int j = 0; j < pendingMessages.length; j++) { + // FIXME: Add HTML filtering + writer.println(pendingMessages[j] + "
    "); + } + writer.flush(); + } catch (IOException e) { + log("IOExeption sending message", e); + } + } + } + + } + + } + + } + + + + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/checkbox/CheckTest.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/checkbox/CheckTest.class new file mode 100644 index 0000000..87011a7 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/checkbox/CheckTest.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/checkbox/CheckTest.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/checkbox/CheckTest.java new file mode 100644 index 0000000..70623e2 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/checkbox/CheckTest.java @@ -0,0 +1,31 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +package checkbox; + +public class CheckTest { + + String b[] = new String[] { "1", "2", "3", "4" }; + + public String[] getFruit() { + return b; + } + + public void setFruit(String [] b) { + this.b = b; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/colors/ColorGameBean.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/colors/ColorGameBean.class new file mode 100644 index 0000000..408dc45 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/colors/ColorGameBean.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/colors/ColorGameBean.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/colors/ColorGameBean.java new file mode 100644 index 0000000..5748217 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/colors/ColorGameBean.java @@ -0,0 +1,115 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package colors; + +import javax.servlet.http.*; + +public class ColorGameBean { + + private String background = "yellow"; + private String foreground = "red"; + private String color1 = foreground; + private String color2 = background; + private String hint = "no"; + private int attempts = 0; + private int intval = 0; + private boolean tookHints = false; + + public void processRequest(HttpServletRequest request) { + + // background = "yellow"; + // foreground = "red"; + + if (! color1.equals(foreground)) { + if (color1.equalsIgnoreCase("black") || + color1.equalsIgnoreCase("cyan")) { + background = color1; + } + } + + if (! color2.equals(background)) { + if (color2.equalsIgnoreCase("black") || + color2.equalsIgnoreCase("cyan")) { + foreground = color2; + } + } + + attempts++; + } + + public void setColor2(String x) { + color2 = x; + } + + public void setColor1(String x) { + color1 = x; + } + + public void setAction(String x) { + if (!tookHints) + tookHints = x.equalsIgnoreCase("Hint"); + hint = x; + } + + public String getColor2() { + return background; + } + + public String getColor1() { + return foreground; + } + + public int getAttempts() { + return attempts; + } + + public boolean getHint() { + return hint.equalsIgnoreCase("Hint"); + } + + public boolean getSuccess() { + if (background.equalsIgnoreCase("black") || + background.equalsIgnoreCase("cyan")) { + + if (foreground.equalsIgnoreCase("black") || + foreground.equalsIgnoreCase("cyan")) + return true; + else + return false; + } + + return false; + } + + public boolean getHintTaken() { + return tookHints; + } + + public void reset() { + foreground = "red"; + background = "yellow"; + } + + public void setIntval(int value) { + intval = value; + } + + public int getIntval() { + return intval; + } +} + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilter.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilter.class new file mode 100644 index 0000000..9439d7c Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilter.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilter.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilter.java new file mode 100644 index 0000000..90b1a8d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilter.java @@ -0,0 +1,219 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +package compressionFilters; + +import java.io.IOException; +import java.util.Enumeration; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +/** + * Implementation of javax.servlet.Filter used to compress + * the ServletResponse if it is bigger than a threshold. + * + * @author Amy Roh + * @author Dmitri Valdin + * @version $Revision: 467217 $, $Date: 2006-10-24 05:14:34 +0200 (mar., 24 oct. 2006) $ + */ + +public class CompressionFilter implements Filter{ + + /** + * The filter configuration object we are associated with. If this value + * is null, this filter instance is not currently configured. + */ + private FilterConfig config = null; + + /** + * Minimal reasonable threshold + */ + private int minThreshold = 128; + + + /** + * The threshold number to compress + */ + protected int compressionThreshold; + + /** + * Debug level for this filter + */ + private int debug = 0; + + /** + * Place this filter into service. + * + * @param filterConfig The filter configuration object + */ + + public void init(FilterConfig filterConfig) { + + config = filterConfig; + if (filterConfig != null) { + String value = filterConfig.getInitParameter("debug"); + if (value!=null) { + debug = Integer.parseInt(value); + } else { + debug = 0; + } + String str = filterConfig.getInitParameter("compressionThreshold"); + if (str!=null) { + compressionThreshold = Integer.parseInt(str); + if (compressionThreshold != 0 && compressionThreshold < minThreshold) { + if (debug > 0) { + System.out.println("compressionThreshold should be either 0 - no compression or >= " + minThreshold); + System.out.println("compressionThreshold set to " + minThreshold); + } + compressionThreshold = minThreshold; + } + } else { + compressionThreshold = 0; + } + + } else { + compressionThreshold = 0; + } + + } + + /** + * Take this filter out of service. + */ + public void destroy() { + + this.config = null; + + } + + /** + * The doFilter method of the Filter is called by the container + * each time a request/response pair is passed through the chain due + * to a client request for a resource at the end of the chain. + * The FilterChain passed into this method allows the Filter to pass on the + * request and response to the next entity in the chain.

    + * This method first examines the request to check whether the client support + * compression.
    + * It simply just pass the request and response if there is no support for + * compression.
    + * If the compression support is available, it creates a + * CompressionServletResponseWrapper object which compresses the content and + * modifies the header if the content length is big enough. + * It then invokes the next entity in the chain using the FilterChain object + * (chain.doFilter()),
    + **/ + + public void doFilter ( ServletRequest request, ServletResponse response, + FilterChain chain ) throws IOException, ServletException { + + if (debug > 0) { + System.out.println("@doFilter"); + } + + if (compressionThreshold == 0) { + if (debug > 0) { + System.out.println("doFilter gets called, but compressionTreshold is set to 0 - no compression"); + } + chain.doFilter(request, response); + return; + } + + boolean supportCompression = false; + if (request instanceof HttpServletRequest) { + if (debug > 1) { + System.out.println("requestURI = " + ((HttpServletRequest)request).getRequestURI()); + } + + // Are we allowed to compress ? + String s = (String) ((HttpServletRequest)request).getParameter("gzip"); + if ("false".equals(s)) { + if (debug > 0) { + System.out.println("got parameter gzip=false --> don't compress, just chain filter"); + } + chain.doFilter(request, response); + return; + } + + Enumeration e = + ((HttpServletRequest)request).getHeaders("Accept-Encoding"); + while (e.hasMoreElements()) { + String name = (String)e.nextElement(); + if (name.indexOf("gzip") != -1) { + if (debug > 0) { + System.out.println("supports compression"); + } + supportCompression = true; + } else { + if (debug > 0) { + System.out.println("no support for compresion"); + } + } + } + } + + if (!supportCompression) { + if (debug > 0) { + System.out.println("doFilter gets called wo compression"); + } + chain.doFilter(request, response); + return; + } else { + if (response instanceof HttpServletResponse) { + CompressionServletResponseWrapper wrappedResponse = + new CompressionServletResponseWrapper((HttpServletResponse)response); + wrappedResponse.setDebugLevel(debug); + wrappedResponse.setCompressionThreshold(compressionThreshold); + if (debug > 0) { + System.out.println("doFilter gets called with compression"); + } + try { + chain.doFilter(request, wrappedResponse); + } finally { + wrappedResponse.finishResponse(); + } + return; + } + } + } + + /** + * Set filter config + * This function is equivalent to init. Required by Weblogic 6.1 + * + * @param filterConfig The filter configuration object + */ + public void setFilterConfig(FilterConfig filterConfig) { + init(filterConfig); + } + + /** + * Return filter config + * Required by Weblogic 6.1 + */ + public FilterConfig getFilterConfig() { + return config; + } + +} + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilterTestServlet.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilterTestServlet.class new file mode 100644 index 0000000..15d3df9 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilterTestServlet.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilterTestServlet.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilterTestServlet.java new file mode 100644 index 0000000..8169536 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilterTestServlet.java @@ -0,0 +1,57 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +package compressionFilters; + +import java.io.IOException; +import java.util.Enumeration; +import javax.servlet.*; +import javax.servlet.http.*; + +/** + * Very Simple test servlet to test compression filter + * @author Amy Roh + * @version $Revision: 500668 $, $Date: 2007-01-28 00:07:51 +0100 (dim., 28 janv. 2007) $ + */ + +public class CompressionFilterTestServlet extends HttpServlet { + + public void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + + ServletOutputStream out = response.getOutputStream(); + response.setContentType("text/plain"); + + Enumeration e = ((HttpServletRequest)request).getHeaders("Accept-Encoding"); + while (e.hasMoreElements()) { + String name = (String)e.nextElement(); + out.println(name); + if (name.indexOf("gzip") != -1) { + out.println("gzip supported -- able to compress"); + } + else { + out.println("gzip not supported"); + } + } + + + out.println("Compression Filter Test Servlet"); + out.close(); + } + +} + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionResponseStream.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionResponseStream.class new file mode 100644 index 0000000..4405120 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionResponseStream.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionResponseStream.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionResponseStream.java new file mode 100644 index 0000000..f5ceb88 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionResponseStream.java @@ -0,0 +1,324 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package compressionFilters; + +import java.io.IOException; +import java.io.OutputStream; +import java.util.zip.GZIPOutputStream; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; + + +/** + * Implementation of ServletOutputStream that works with + * the CompressionServletResponseWrapper implementation. + * + * @author Amy Roh + * @author Dmitri Valdin + * @version $Revision: 500668 $, $Date: 2007-01-28 00:07:51 +0100 (dim., 28 janv. 2007) $ + */ + +public class CompressionResponseStream + extends ServletOutputStream { + + + // ----------------------------------------------------------- Constructors + + + /** + * Construct a servlet output stream associated with the specified Response. + * + * @param response The associated response + */ + public CompressionResponseStream(HttpServletResponse response) throws IOException{ + + super(); + closed = false; + this.response = response; + this.output = response.getOutputStream(); + + } + + + // ----------------------------------------------------- Instance Variables + + + /** + * The threshold number which decides to compress or not. + * Users can configure in web.xml to set it to fit their needs. + */ + protected int compressionThreshold = 0; + + /** + * Debug level + */ + private int debug = 0; + + /** + * The buffer through which all of our output bytes are passed. + */ + protected byte[] buffer = null; + + /** + * The number of data bytes currently in the buffer. + */ + protected int bufferCount = 0; + + /** + * The underlying gzip output stream to which we should write data. + */ + protected OutputStream gzipstream = null; + + /** + * Has this stream been closed? + */ + protected boolean closed = false; + + /** + * The content length past which we will not write, or -1 if there is + * no defined content length. + */ + protected int length = -1; + + /** + * The response with which this servlet output stream is associated. + */ + protected HttpServletResponse response = null; + + /** + * The underlying servket output stream to which we should write data. + */ + protected ServletOutputStream output = null; + + + // --------------------------------------------------------- Public Methods + + /** + * Set debug level + */ + public void setDebugLevel(int debug) { + this.debug = debug; + } + + + /** + * Set the compressionThreshold number and create buffer for this size + */ + protected void setBuffer(int threshold) { + compressionThreshold = threshold; + buffer = new byte[compressionThreshold]; + if (debug > 1) { + System.out.println("buffer is set to "+compressionThreshold); + } + } + + /** + * Close this output stream, causing any buffered data to be flushed and + * any further output data to throw an IOException. + */ + public void close() throws IOException { + + if (debug > 1) { + System.out.println("close() @ CompressionResponseStream"); + } + if (closed) + throw new IOException("This output stream has already been closed"); + + if (gzipstream != null) { + flushToGZip(); + gzipstream.close(); + gzipstream = null; + } else { + if (bufferCount > 0) { + if (debug > 2) { + System.out.print("output.write("); + System.out.write(buffer, 0, bufferCount); + System.out.println(")"); + } + output.write(buffer, 0, bufferCount); + bufferCount = 0; + } + } + + output.close(); + closed = true; + + } + + + /** + * Flush any buffered data for this output stream, which also causes the + * response to be committed. + */ + public void flush() throws IOException { + + if (debug > 1) { + System.out.println("flush() @ CompressionResponseStream"); + } + if (closed) { + throw new IOException("Cannot flush a closed output stream"); + } + + if (gzipstream != null) { + gzipstream.flush(); + } + + } + + public void flushToGZip() throws IOException { + + if (debug > 1) { + System.out.println("flushToGZip() @ CompressionResponseStream"); + } + if (bufferCount > 0) { + if (debug > 1) { + System.out.println("flushing out to GZipStream, bufferCount = " + bufferCount); + } + writeToGZip(buffer, 0, bufferCount); + bufferCount = 0; + } + + } + + /** + * Write the specified byte to our output stream. + * + * @param b The byte to be written + * + * @exception IOException if an input/output error occurs + */ + public void write(int b) throws IOException { + + if (debug > 1) { + System.out.println("write "+b+" in CompressionResponseStream "); + } + if (closed) + throw new IOException("Cannot write to a closed output stream"); + + if (bufferCount >= buffer.length) { + flushToGZip(); + } + + buffer[bufferCount++] = (byte) b; + + } + + + /** + * Write b.length bytes from the specified byte array + * to our output stream. + * + * @param b The byte array to be written + * + * @exception IOException if an input/output error occurs + */ + public void write(byte b[]) throws IOException { + + write(b, 0, b.length); + + } + + + /** + * Write len bytes from the specified byte array, starting + * at the specified offset, to our output stream. + * + * @param b The byte array containing the bytes to be written + * @param off Zero-relative starting offset of the bytes to be written + * @param len The number of bytes to be written + * + * @exception IOException if an input/output error occurs + */ + public void write(byte b[], int off, int len) throws IOException { + + if (debug > 1) { + System.out.println("write, bufferCount = " + bufferCount + " len = " + len + " off = " + off); + } + if (debug > 2) { + System.out.print("write("); + System.out.write(b, off, len); + System.out.println(")"); + } + + if (closed) + throw new IOException("Cannot write to a closed output stream"); + + if (len == 0) + return; + + // Can we write into buffer ? + if (len <= (buffer.length - bufferCount)) { + System.arraycopy(b, off, buffer, bufferCount, len); + bufferCount += len; + return; + } + + // There is not enough space in buffer. Flush it ... + flushToGZip(); + + // ... and try again. Note, that bufferCount = 0 here ! + if (len <= (buffer.length - bufferCount)) { + System.arraycopy(b, off, buffer, bufferCount, len); + bufferCount += len; + return; + } + + // write direct to gzip + writeToGZip(b, off, len); + } + + public void writeToGZip(byte b[], int off, int len) throws IOException { + + if (debug > 1) { + System.out.println("writeToGZip, len = " + len); + } + if (debug > 2) { + System.out.print("writeToGZip("); + System.out.write(b, off, len); + System.out.println(")"); + } + if (gzipstream == null) { + if (debug > 1) { + System.out.println("new GZIPOutputStream"); + } + if (response.isCommitted()) { + if (debug > 1) + System.out.print("Response already committed. Using original output stream"); + gzipstream = output; + } else { + response.addHeader("Content-Encoding", "gzip"); + gzipstream = new GZIPOutputStream(output); + } + } + gzipstream.write(b, off, len); + + } + + + // -------------------------------------------------------- Package Methods + + + /** + * Has this response stream been closed? + */ + public boolean closed() { + + return (this.closed); + + } + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionServletResponseWrapper.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionServletResponseWrapper.class new file mode 100644 index 0000000..b766711 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionServletResponseWrapper.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionServletResponseWrapper.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionServletResponseWrapper.java new file mode 100644 index 0000000..b70034e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/compressionFilters/CompressionServletResponseWrapper.java @@ -0,0 +1,245 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package compressionFilters; + +import java.io.IOException; +import java.io.OutputStreamWriter; +import java.io.PrintWriter; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpServletResponseWrapper; + +/** + * Implementation of HttpServletResponseWrapper that works with + * the CompressionServletResponseStream implementation.. + * + * @author Amy Roh + * @author Dmitri Valdin + * @version $Revision: 500668 $, $Date: 2007-01-28 00:07:51 +0100 (dim., 28 janv. 2007) $ + */ + +public class CompressionServletResponseWrapper extends HttpServletResponseWrapper { + + // ----------------------------------------------------- Constructor + + /** + * Calls the parent constructor which creates a ServletResponse adaptor + * wrapping the given response object. + */ + + public CompressionServletResponseWrapper(HttpServletResponse response) { + super(response); + origResponse = response; + if (debug > 1) { + System.out.println("CompressionServletResponseWrapper constructor gets called"); + } + } + + + // ----------------------------------------------------- Instance Variables + + /** + * Original response + */ + + protected HttpServletResponse origResponse = null; + + /** + * Descriptive information about this Response implementation. + */ + + protected static final String info = "CompressionServletResponseWrapper"; + + /** + * The ServletOutputStream that has been returned by + * getOutputStream(), if any. + */ + + protected ServletOutputStream stream = null; + + + /** + * The PrintWriter that has been returned by + * getWriter(), if any. + */ + + protected PrintWriter writer = null; + + /** + * The threshold number to compress + */ + protected int threshold = 0; + + /** + * Debug level + */ + private int debug = 0; + + /** + * Content type + */ + protected String contentType = null; + + // --------------------------------------------------------- Public Methods + + + /** + * Set content type + */ + public void setContentType(String contentType) { + if (debug > 1) { + System.out.println("setContentType to "+contentType); + } + this.contentType = contentType; + origResponse.setContentType(contentType); + } + + + /** + * Set threshold number + */ + public void setCompressionThreshold(int threshold) { + if (debug > 1) { + System.out.println("setCompressionThreshold to " + threshold); + } + this.threshold = threshold; + } + + + /** + * Set debug level + */ + public void setDebugLevel(int debug) { + this.debug = debug; + } + + + /** + * Create and return a ServletOutputStream to write the content + * associated with this Response. + * + * @exception IOException if an input/output error occurs + */ + public ServletOutputStream createOutputStream() throws IOException { + if (debug > 1) { + System.out.println("createOutputStream gets called"); + } + + CompressionResponseStream stream = new CompressionResponseStream(origResponse); + stream.setDebugLevel(debug); + stream.setBuffer(threshold); + + return stream; + + } + + + /** + * Finish a response. + */ + public void finishResponse() { + try { + if (writer != null) { + writer.close(); + } else { + if (stream != null) + stream.close(); + } + } catch (IOException e) { + } + } + + + // ------------------------------------------------ ServletResponse Methods + + + /** + * Flush the buffer and commit this response. + * + * @exception IOException if an input/output error occurs + */ + public void flushBuffer() throws IOException { + if (debug > 1) { + System.out.println("flush buffer @ CompressionServletResponseWrapper"); + } + ((CompressionResponseStream)stream).flush(); + + } + + /** + * Return the servlet output stream associated with this Response. + * + * @exception IllegalStateException if getWriter has + * already been called for this response + * @exception IOException if an input/output error occurs + */ + public ServletOutputStream getOutputStream() throws IOException { + + if (writer != null) + throw new IllegalStateException("getWriter() has already been called for this response"); + + if (stream == null) + stream = createOutputStream(); + if (debug > 1) { + System.out.println("stream is set to "+stream+" in getOutputStream"); + } + + return (stream); + + } + + /** + * Return the writer associated with this Response. + * + * @exception IllegalStateException if getOutputStream has + * already been called for this response + * @exception IOException if an input/output error occurs + */ + public PrintWriter getWriter() throws IOException { + + if (writer != null) + return (writer); + + if (stream != null) + throw new IllegalStateException("getOutputStream() has already been called for this response"); + + stream = createOutputStream(); + if (debug > 1) { + System.out.println("stream is set to "+stream+" in getWriter"); + } + //String charset = getCharsetFromContentType(contentType); + String charEnc = origResponse.getCharacterEncoding(); + if (debug > 1) { + System.out.println("character encoding is " + charEnc); + } + // HttpServletResponse.getCharacterEncoding() shouldn't return null + // according the spec, so feel free to remove that "if" + if (charEnc != null) { + writer = new PrintWriter(new OutputStreamWriter(stream, charEnc)); + } else { + writer = new PrintWriter(stream); + } + + return (writer); + + } + + + public void setContentLength(int length) { + } + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/dates/JspCalendar.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/dates/JspCalendar.class new file mode 100644 index 0000000..7ae66d3 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/dates/JspCalendar.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/dates/JspCalendar.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/dates/JspCalendar.java new file mode 100644 index 0000000..22e1f86 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/dates/JspCalendar.java @@ -0,0 +1,152 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package dates; + +import java.util.*; + +public class JspCalendar { + Calendar calendar = null; + + public JspCalendar() { + calendar = Calendar.getInstance(); + Date trialTime = new Date(); + calendar.setTime(trialTime); + } + + public int getYear() { + return calendar.get(Calendar.YEAR); + } + + public String getMonth() { + int m = getMonthInt(); + String[] months = new String [] { "January", "February", "March", + "April", "May", "June", + "July", "August", "September", + "October", "November", "December" }; + if (m > 12) + return "Unknown to Man"; + + return months[m - 1]; + + } + + public String getDay() { + int x = getDayOfWeek(); + String[] days = new String[] {"Sunday", "Monday", "Tuesday", "Wednesday", + "Thursday", "Friday", "Saturday"}; + + if (x > 7) + return "Unknown to Man"; + + return days[x - 1]; + + } + + public int getMonthInt() { + return 1 + calendar.get(Calendar.MONTH); + } + + public String getDate() { + return getMonthInt() + "/" + getDayOfMonth() + "/" + getYear(); + + } + + public String getTime() { + return getHour() + ":" + getMinute() + ":" + getSecond(); + } + + public int getDayOfMonth() { + return calendar.get(Calendar.DAY_OF_MONTH); + } + + public int getDayOfYear() { + return calendar.get(Calendar.DAY_OF_YEAR); + } + + public int getWeekOfYear() { + return calendar.get(Calendar.WEEK_OF_YEAR); + } + + public int getWeekOfMonth() { + return calendar.get(Calendar.WEEK_OF_MONTH); + } + + public int getDayOfWeek() { + return calendar.get(Calendar.DAY_OF_WEEK); + } + + public int getHour() { + return calendar.get(Calendar.HOUR_OF_DAY); + } + + public int getMinute() { + return calendar.get(Calendar.MINUTE); + } + + + public int getSecond() { + return calendar.get(Calendar.SECOND); + } + + public static void main(String args[]) { + JspCalendar db = new JspCalendar(); + p("date: " + db.getDayOfMonth()); + p("year: " + db.getYear()); + p("month: " + db.getMonth()); + p("time: " + db.getTime()); + p("date: " + db.getDate()); + p("Day: " + db.getDay()); + p("DayOfYear: " + db.getDayOfYear()); + p("WeekOfYear: " + db.getWeekOfYear()); + p("era: " + db.getEra()); + p("ampm: " + db.getAMPM()); + p("DST: " + db.getDSTOffset()); + p("ZONE Offset: " + db.getZoneOffset()); + p("TIMEZONE: " + db.getUSTimeZone()); + } + + private static void p(String x) { + System.out.println(x); + } + + + public int getEra() { + return calendar.get(Calendar.ERA); + } + + public String getUSTimeZone() { + String[] zones = new String[] {"Hawaii", "Alaskan", "Pacific", + "Mountain", "Central", "Eastern"}; + + return zones[10 + getZoneOffset()]; + } + + public int getZoneOffset() { + return calendar.get(Calendar.ZONE_OFFSET)/(60*60*1000); + } + + + public int getDSTOffset() { + return calendar.get(Calendar.DST_OFFSET)/(60*60*1000); + } + + + public int getAMPM() { + return calendar.get(Calendar.AM_PM); + } +} + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/error/Smart.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/error/Smart.class new file mode 100644 index 0000000..5445742 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/error/Smart.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/error/Smart.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/error/Smart.java new file mode 100644 index 0000000..3af3a38 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/error/Smart.java @@ -0,0 +1,32 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +package error; + +public class Smart { + + String name = "JSP"; + + public String getName () { + return name; + } + + public void setName (String name) { + this.name = name; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ExampleTagBase.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ExampleTagBase.class new file mode 100644 index 0000000..35edd28 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ExampleTagBase.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ExampleTagBase.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ExampleTagBase.java new file mode 100644 index 0000000..13bcd16 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ExampleTagBase.java @@ -0,0 +1,67 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package examples; + +import javax.servlet.jsp.*; +import javax.servlet.jsp.tagext.*; + +public abstract class ExampleTagBase extends BodyTagSupport { + + public void setParent(Tag parent) { + this.parent = parent; + } + + public void setBodyContent(BodyContent bodyOut) { + this.bodyOut = bodyOut; + } + + public void setPageContext(PageContext pageContext) { + this.pageContext = pageContext; + } + + public Tag getParent() { + return this.parent; + } + + public int doStartTag() throws JspException { + return SKIP_BODY; + } + + public int doEndTag() throws JspException { + return EVAL_PAGE; + } + + + // Default implementations for BodyTag methods as well + // just in case a tag decides to implement BodyTag. + public void doInitBody() throws JspException { + } + + public int doAfterBody() throws JspException { + return SKIP_BODY; + } + + public void release() { + bodyOut = null; + pageContext = null; + parent = null; + } + + protected BodyContent bodyOut; + protected PageContext pageContext; + protected Tag parent; +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTag.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTag.class new file mode 100644 index 0000000..d60a6bd Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTag.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTag.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTag.java new file mode 100644 index 0000000..4e11f30 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTag.java @@ -0,0 +1,80 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package examples; + +import javax.servlet.jsp.*; +import java.io.IOException; + +/** + * Example1: the simplest tag + * Collect attributes and call into some actions + * + * + */ + +public class FooTag + extends ExampleTagBase +{ + private String atts[] = new String[3]; + int i = 0; + + private final void setAtt(int index, String value) { + atts[index] = value; + } + + public void setAtt1(String value) { + setAtt(0, value); + } + + public void setAtt2(String value) { + setAtt(1, value); + } + + public void setAtt3(String value) { + setAtt(2, value); + } + + /** + * Process start tag + * + * @return EVAL_BODY_INCLUDE + */ + public int doStartTag() throws JspException { + i = 0; + return EVAL_BODY_BUFFERED; + } + + public void doInitBody() throws JspException { + pageContext.setAttribute("member", atts[i]); + i++; + } + + public int doAfterBody() throws JspException { + try { + if (i == 3) { + bodyOut.writeOut(bodyOut.getEnclosingWriter()); + return SKIP_BODY; + } else + pageContext.setAttribute("member", atts[i]); + i++; + return EVAL_BODY_BUFFERED; + } catch (IOException ex) { + throw new JspTagException(ex.toString()); + } + } +} + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTagExtraInfo.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTagExtraInfo.class new file mode 100644 index 0000000..5ca9cfb Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTagExtraInfo.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTagExtraInfo.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTagExtraInfo.java new file mode 100644 index 0000000..99e5dfb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/FooTagExtraInfo.java @@ -0,0 +1,33 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package examples; + +import javax.servlet.jsp.tagext.*; + +public class FooTagExtraInfo extends TagExtraInfo { + public VariableInfo[] getVariableInfo(TagData data) { + return new VariableInfo[] + { + new VariableInfo("member", + "String", + true, + VariableInfo.NESTED) + }; + } +} + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/LogTag.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/LogTag.class new file mode 100644 index 0000000..92abeab Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/LogTag.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/LogTag.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/LogTag.java new file mode 100644 index 0000000..961cfc8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/LogTag.java @@ -0,0 +1,60 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package examples; + + +import javax.servlet.jsp.*; + +import java.io.IOException; + +/** + * Log the contents of the body. Could be used to handle errors etc. + */ +public class LogTag + extends ExampleTagBase +{ + boolean toBrowser = false; + + public void setToBrowser(String value) { + if (value == null) + toBrowser = false; + else if (value.equalsIgnoreCase("true")) + toBrowser = true; + else + toBrowser = false; + } + + public int doStartTag() throws JspException { + return EVAL_BODY_BUFFERED; + } + + public int doAfterBody() throws JspException { + try { + String s = bodyOut.getString(); + System.err.println(s); + if (toBrowser) + bodyOut.writeOut(bodyOut.getEnclosingWriter()); + return SKIP_BODY; + } catch (IOException ex) { + throw new JspTagException(ex.toString()); + } + } +} + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ShowSource.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ShowSource.class new file mode 100644 index 0000000..c02b3ff Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ShowSource.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ShowSource.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ShowSource.java new file mode 100644 index 0000000..8afbf09 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/examples/ShowSource.java @@ -0,0 +1,71 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package examples; + + +import javax.servlet.jsp.*; +import javax.servlet.jsp.tagext.*; + +import java.io.*; + +/** + * Display the sources of the JSP file. + */ +public class ShowSource + extends TagSupport +{ + String jspFile; + + public void setJspFile(String jspFile) { + this.jspFile = jspFile; + } + + public int doEndTag() throws JspException { + if ((jspFile.indexOf( ".." ) >= 0) || + (jspFile.toUpperCase().indexOf("/WEB-INF/") != 0) || + (jspFile.toUpperCase().indexOf("/META-INF/") != 0)) + throw new JspTagException("Invalid JSP file " + jspFile); + + InputStream in + = pageContext.getServletContext().getResourceAsStream(jspFile); + + if (in == null) + throw new JspTagException("Unable to find JSP file: "+jspFile); + + JspWriter out = pageContext.getOut(); + + + try { + out.println(""); + out.println("

    ");
    +            for(int ch = in.read(); ch != -1; ch = in.read())
    +                if (ch == '<')
    +                    out.print("<");
    +                else
    +                    out.print((char) ch);
    +            out.println("
    "); + out.println(""); + } catch (IOException ex) { + throw new JspTagException("IOException: "+ex.toString()); + } + return super.doEndTag(); + } +} + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/ExampleFilter.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/ExampleFilter.class new file mode 100644 index 0000000..0714313 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/ExampleFilter.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/ExampleFilter.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/ExampleFilter.java new file mode 100644 index 0000000..dd867cd --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/ExampleFilter.java @@ -0,0 +1,139 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +package filters; + + +import java.io.IOException; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; + + +/** + * Example filter that can be attached to either an individual servlet + * or to a URL pattern. This filter performs the following functions: + *
      + *
    • Attaches itself as a request attribute, under the attribute name + * defined by the value of the attribute initialization + * parameter.
    • + *
    • Calculates the number of milliseconds required to perform the + * servlet processing required by this request, including any + * subsequently defined filters, and logs the result to the servlet + * context log for this application. + *
    + * + * @author Craig McClanahan + * @version $Revision: 500674 $ $Date: 2007-01-28 00:15:00 +0100 (dim., 28 janv. 2007) $ + */ + +public final class ExampleFilter implements Filter { + + + // ----------------------------------------------------- Instance Variables + + + /** + * The request attribute name under which we store a reference to ourself. + */ + private String attribute = null; + + + /** + * The filter configuration object we are associated with. If this value + * is null, this filter instance is not currently configured. + */ + private FilterConfig filterConfig = null; + + + // --------------------------------------------------------- Public Methods + + + /** + * Take this filter out of service. + */ + public void destroy() { + + this.attribute = null; + this.filterConfig = null; + + } + + + /** + * Time the processing that is performed by all subsequent filters in the + * current filter stack, including the ultimately invoked servlet. + * + * @param request The servlet request we are processing + * @param result The servlet response we are creating + * @param chain The filter chain we are processing + * + * @exception IOException if an input/output error occurs + * @exception ServletException if a servlet error occurs + */ + public void doFilter(ServletRequest request, ServletResponse response, + FilterChain chain) + throws IOException, ServletException { + + // Store ourselves as a request attribute (if requested) + if (attribute != null) + request.setAttribute(attribute, this); + + // Time and log the subsequent processing + long startTime = System.currentTimeMillis(); + chain.doFilter(request, response); + long stopTime = System.currentTimeMillis(); + filterConfig.getServletContext().log + (this.toString() + ": " + (stopTime - startTime) + + " milliseconds"); + + } + + + /** + * Place this filter into service. + * + * @param filterConfig The filter configuration object + */ + public void init(FilterConfig filterConfig) throws ServletException { + + this.filterConfig = filterConfig; + this.attribute = filterConfig.getInitParameter("attribute"); + + } + + + /** + * Return a String representation of this object. + */ + public String toString() { + + if (filterConfig == null) + return ("InvokerFilter()"); + StringBuffer sb = new StringBuffer("InvokerFilter("); + sb.append(filterConfig); + sb.append(")"); + return (sb.toString()); + + } + + +} + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/RequestDumperFilter.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/RequestDumperFilter.class new file mode 100644 index 0000000..8a2cdac Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/RequestDumperFilter.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/RequestDumperFilter.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/RequestDumperFilter.java new file mode 100644 index 0000000..fa0a647 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/RequestDumperFilter.java @@ -0,0 +1,200 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +package filters; + + +import java.io.IOException; +import java.io.PrintWriter; +import java.io.StringWriter; +import java.sql.Timestamp; +import java.util.Enumeration; +import java.util.Locale; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.Cookie; +import javax.servlet.http.HttpServletRequest; + + +/** + * Example filter that dumps interesting state information about a request + * to the associated servlet context log file, before allowing the servlet + * to process the request in the usual way. This can be installed as needed + * to assist in debugging problems. + * + * @author Craig McClanahan + * @version $Revision: 500674 $ $Date: 2007-01-28 00:15:00 +0100 (dim., 28 janv. 2007) $ + */ + +public final class RequestDumperFilter implements Filter { + + + // ----------------------------------------------------- Instance Variables + + + /** + * The filter configuration object we are associated with. If this value + * is null, this filter instance is not currently configured. + */ + private FilterConfig filterConfig = null; + + + // --------------------------------------------------------- Public Methods + + + /** + * Take this filter out of service. + */ + public void destroy() { + + this.filterConfig = null; + + } + + + /** + * Time the processing that is performed by all subsequent filters in the + * current filter stack, including the ultimately invoked servlet. + * + * @param request The servlet request we are processing + * @param result The servlet response we are creating + * @param chain The filter chain we are processing + * + * @exception IOException if an input/output error occurs + * @exception ServletException if a servlet error occurs + */ + public void doFilter(ServletRequest request, ServletResponse response, + FilterChain chain) + throws IOException, ServletException { + + if (filterConfig == null) + return; + + // Render the generic servlet request properties + StringWriter sw = new StringWriter(); + PrintWriter writer = new PrintWriter(sw); + writer.println("Request Received at " + + (new Timestamp(System.currentTimeMillis()))); + writer.println(" characterEncoding=" + request.getCharacterEncoding()); + writer.println(" contentLength=" + request.getContentLength()); + writer.println(" contentType=" + request.getContentType()); + writer.println(" locale=" + request.getLocale()); + writer.print(" locales="); + Enumeration locales = request.getLocales(); + boolean first = true; + while (locales.hasMoreElements()) { + Locale locale = (Locale) locales.nextElement(); + if (first) + first = false; + else + writer.print(", "); + writer.print(locale.toString()); + } + writer.println(); + Enumeration names = request.getParameterNames(); + while (names.hasMoreElements()) { + String name = (String) names.nextElement(); + writer.print(" parameter=" + name + "="); + String values[] = request.getParameterValues(name); + for (int i = 0; i < values.length; i++) { + if (i > 0) + writer.print(", "); + writer.print(values[i]); + } + writer.println(); + } + writer.println(" protocol=" + request.getProtocol()); + writer.println(" remoteAddr=" + request.getRemoteAddr()); + writer.println(" remoteHost=" + request.getRemoteHost()); + writer.println(" scheme=" + request.getScheme()); + writer.println(" serverName=" + request.getServerName()); + writer.println(" serverPort=" + request.getServerPort()); + writer.println(" isSecure=" + request.isSecure()); + + // Render the HTTP servlet request properties + if (request instanceof HttpServletRequest) { + writer.println("---------------------------------------------"); + HttpServletRequest hrequest = (HttpServletRequest) request; + writer.println(" contextPath=" + hrequest.getContextPath()); + Cookie cookies[] = hrequest.getCookies(); + if (cookies == null) + cookies = new Cookie[0]; + for (int i = 0; i < cookies.length; i++) { + writer.println(" cookie=" + cookies[i].getName() + + "=" + cookies[i].getValue()); + } + names = hrequest.getHeaderNames(); + while (names.hasMoreElements()) { + String name = (String) names.nextElement(); + String value = hrequest.getHeader(name); + writer.println(" header=" + name + "=" + value); + } + writer.println(" method=" + hrequest.getMethod()); + writer.println(" pathInfo=" + hrequest.getPathInfo()); + writer.println(" queryString=" + hrequest.getQueryString()); + writer.println(" remoteUser=" + hrequest.getRemoteUser()); + writer.println("requestedSessionId=" + + hrequest.getRequestedSessionId()); + writer.println(" requestURI=" + hrequest.getRequestURI()); + writer.println(" servletPath=" + hrequest.getServletPath()); + } + writer.println("============================================="); + + // Log the resulting string + writer.flush(); + filterConfig.getServletContext().log(sw.getBuffer().toString()); + + // Pass control on to the next filter + chain.doFilter(request, response); + + } + + + /** + * Place this filter into service. + * + * @param filterConfig The filter configuration object + */ + public void init(FilterConfig filterConfig) throws ServletException { + + this.filterConfig = filterConfig; + + } + + + /** + * Return a String representation of this object. + */ + public String toString() { + + if (filterConfig == null) + return ("RequestDumperFilter()"); + StringBuffer sb = new StringBuffer("RequestDumperFilter("); + sb.append(filterConfig); + sb.append(")"); + return (sb.toString()); + + } + + +} + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/SetCharacterEncodingFilter.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/SetCharacterEncodingFilter.class new file mode 100644 index 0000000..e404b80 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/SetCharacterEncodingFilter.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/SetCharacterEncodingFilter.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/SetCharacterEncodingFilter.java new file mode 100644 index 0000000..06455e4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/filters/SetCharacterEncodingFilter.java @@ -0,0 +1,171 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +package filters; + + +import java.io.IOException; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; + + +/** + *

    Example filter that sets the character encoding to be used in parsing the + * incoming request, either unconditionally or only if the client did not + * specify a character encoding. Configuration of this filter is based on + * the following initialization parameters:

    + *
      + *
    • encoding - The character encoding to be configured + * for this request, either conditionally or unconditionally based on + * the ignore initialization parameter. This parameter + * is required, so there is no default.
    • + *
    • ignore - If set to "true", any character encoding + * specified by the client is ignored, and the value returned by the + * selectEncoding() method is set. If set to "false, + * selectEncoding() is called only if the + * client has not already specified an encoding. By default, this + * parameter is set to "true".
    • + *
    + * + *

    Although this filter can be used unchanged, it is also easy to + * subclass it and make the selectEncoding() method more + * intelligent about what encoding to choose, based on characteristics of + * the incoming request (such as the values of the Accept-Language + * and User-Agent headers, or a value stashed in the current + * user's session.

    + * + * @author Craig McClanahan + * @version $Revision: 500674 $ $Date: 2007-01-28 00:15:00 +0100 (dim., 28 janv. 2007) $ + */ + +public class SetCharacterEncodingFilter implements Filter { + + + // ----------------------------------------------------- Instance Variables + + + /** + * The default character encoding to set for requests that pass through + * this filter. + */ + protected String encoding = null; + + + /** + * The filter configuration object we are associated with. If this value + * is null, this filter instance is not currently configured. + */ + protected FilterConfig filterConfig = null; + + + /** + * Should a character encoding specified by the client be ignored? + */ + protected boolean ignore = true; + + + // --------------------------------------------------------- Public Methods + + + /** + * Take this filter out of service. + */ + public void destroy() { + + this.encoding = null; + this.filterConfig = null; + + } + + + /** + * Select and set (if specified) the character encoding to be used to + * interpret request parameters for this request. + * + * @param request The servlet request we are processing + * @param result The servlet response we are creating + * @param chain The filter chain we are processing + * + * @exception IOException if an input/output error occurs + * @exception ServletException if a servlet error occurs + */ + public void doFilter(ServletRequest request, ServletResponse response, + FilterChain chain) + throws IOException, ServletException { + + // Conditionally select and set the character encoding to be used + if (ignore || (request.getCharacterEncoding() == null)) { + String encoding = selectEncoding(request); + if (encoding != null) + request.setCharacterEncoding(encoding); + } + + // Pass control on to the next filter + chain.doFilter(request, response); + + } + + + /** + * Place this filter into service. + * + * @param filterConfig The filter configuration object + */ + public void init(FilterConfig filterConfig) throws ServletException { + + this.filterConfig = filterConfig; + this.encoding = filterConfig.getInitParameter("encoding"); + String value = filterConfig.getInitParameter("ignore"); + if (value == null) + this.ignore = true; + else if (value.equalsIgnoreCase("true")) + this.ignore = true; + else if (value.equalsIgnoreCase("yes")) + this.ignore = true; + else + this.ignore = false; + + } + + + // ------------------------------------------------------ Protected Methods + + + /** + * Select an appropriate character encoding to be used, based on the + * characteristics of the current request and/or filter initialization + * parameters. If no character encoding should be set, return + * null. + *

    + * The default implementation unconditionally returns the value configured + * by the encoding initialization parameter for this + * filter. + * + * @param request The servlet request we are processing + */ + protected String selectEncoding(ServletRequest request) { + + return (this.encoding); + + } + + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/BookBean.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/BookBean.class new file mode 100644 index 0000000..98b8c31 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/BookBean.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/BookBean.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/BookBean.java new file mode 100644 index 0000000..5e5dec4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/BookBean.java @@ -0,0 +1,44 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +package jsp2.examples; + +public class BookBean { + private String title; + private String author; + private String isbn; + + public BookBean( String title, String author, String isbn ) { + this.title = title; + this.author = author; + this.isbn = isbn; + } + + public String getTitle() { + return this.title; + } + + public String getAuthor() { + return this.author; + } + + public String getIsbn() { + return this.isbn; + } + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/FooBean.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/FooBean.class new file mode 100644 index 0000000..6605d19 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/FooBean.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/FooBean.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/FooBean.java new file mode 100644 index 0000000..c7f4d39 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/FooBean.java @@ -0,0 +1,36 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +package jsp2.examples; + +public class FooBean { + private String bar; + + public FooBean() { + bar = "Initial value"; + } + + public String getBar() { + return this.bar; + } + + public void setBar(String bar) { + this.bar = bar; + } + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/el/Functions.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/el/Functions.class new file mode 100644 index 0000000..e0a869c Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/el/Functions.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/el/Functions.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/el/Functions.java new file mode 100644 index 0000000..c42c0f7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/el/Functions.java @@ -0,0 +1,43 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package jsp2.examples.el; + +/** + * Defines the functions for the jsp2 example tag library. + * + *

    Each function is defined as a static method.

    + */ +public class Functions { + public static String reverse( String text ) { + return new StringBuffer( text ).reverse().toString(); + } + + public static int numVowels( String text ) { + String vowels = "aeiouAEIOU"; + int result = 0; + for( int i = 0; i < text.length(); i++ ) { + if( vowels.indexOf( text.charAt( i ) ) != -1 ) { + result++; + } + } + return result; + } + + public static String caps( String text ) { + return text.toUpperCase(); + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/EchoAttributesTag.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/EchoAttributesTag.class new file mode 100644 index 0000000..5cf67e4 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/EchoAttributesTag.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/EchoAttributesTag.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/EchoAttributesTag.java new file mode 100644 index 0000000..c1a5f92 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/EchoAttributesTag.java @@ -0,0 +1,54 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +package jsp2.examples.simpletag; + +import javax.servlet.jsp.JspException; +import javax.servlet.jsp.JspWriter; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import javax.servlet.jsp.tagext.DynamicAttributes; +import java.util.ArrayList; +import java.io.IOException; + +/** + * SimpleTag handler that echoes all its attributes + */ +public class EchoAttributesTag + extends SimpleTagSupport + implements DynamicAttributes +{ + private ArrayList keys = new ArrayList(); + private ArrayList values = new ArrayList(); + + public void doTag() throws JspException, IOException { + JspWriter out = getJspContext().getOut(); + for( int i = 0; i < keys.size(); i++ ) { + String key = (String)keys.get( i ); + Object value = values.get( i ); + out.println( "
  • " + key + " = " + value + "
  • " ); + } + } + + public void setDynamicAttribute( String uri, String localName, + Object value ) + throws JspException + { + keys.add( localName ); + values.add( value ); + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/FindBookSimpleTag.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/FindBookSimpleTag.class new file mode 100644 index 0000000..dd95ddb Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/FindBookSimpleTag.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/FindBookSimpleTag.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/FindBookSimpleTag.java new file mode 100644 index 0000000..3d4357d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/FindBookSimpleTag.java @@ -0,0 +1,44 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +package jsp2.examples.simpletag; + +import javax.servlet.jsp.JspException; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import jsp2.examples.BookBean; + +/** + * SimpleTag handler that pretends to search for a book, and stores + * the result in a scoped variable. + */ +public class FindBookSimpleTag extends SimpleTagSupport { + private String var; + + private static final String BOOK_TITLE = "The Lord of the Rings"; + private static final String BOOK_AUTHOR = "J. R. R. Tolkein"; + private static final String BOOK_ISBN = "0618002251"; + + public void doTag() throws JspException { + BookBean book = new BookBean( BOOK_TITLE, BOOK_AUTHOR, BOOK_ISBN ); + getJspContext().setAttribute( this.var, book ); + } + + public void setVar( String var ) { + this.var = var; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/HelloWorldSimpleTag.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/HelloWorldSimpleTag.class new file mode 100644 index 0000000..ff44a1d Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/HelloWorldSimpleTag.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/HelloWorldSimpleTag.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/HelloWorldSimpleTag.java new file mode 100644 index 0000000..3085739 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/HelloWorldSimpleTag.java @@ -0,0 +1,32 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +package jsp2.examples.simpletag; + +import javax.servlet.jsp.JspException; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import java.io.IOException; + +/** + * SimpleTag handler that prints "Hello, world!" + */ +public class HelloWorldSimpleTag extends SimpleTagSupport { + public void doTag() throws JspException, IOException { + getJspContext().getOut().write( "Hello, world!" ); + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/RepeatSimpleTag.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/RepeatSimpleTag.class new file mode 100644 index 0000000..55e4835 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/RepeatSimpleTag.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/RepeatSimpleTag.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/RepeatSimpleTag.java new file mode 100644 index 0000000..9903a21 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/RepeatSimpleTag.java @@ -0,0 +1,42 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +package jsp2.examples.simpletag; + +import javax.servlet.jsp.JspException; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import java.io.IOException; + +/** + * SimpleTag handler that accepts a num attribute and + * invokes its body 'num' times. + */ +public class RepeatSimpleTag extends SimpleTagSupport { + private int num; + + public void doTag() throws JspException, IOException { + for (int i=0; i
    " + this.label + + "
    " ); + } + + public void setColor( String color ) { + this.color = color; + } + + public void setLabel( String label ) { + this.label = label; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/ContextListener.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/ContextListener.class new file mode 100644 index 0000000..a704aac Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/ContextListener.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/ContextListener.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/ContextListener.java new file mode 100644 index 0000000..9b21afe --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/ContextListener.java @@ -0,0 +1,136 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +package listeners; + + +import javax.servlet.ServletContext; +import javax.servlet.ServletContextAttributeEvent; +import javax.servlet.ServletContextAttributeListener; +import javax.servlet.ServletContextEvent; +import javax.servlet.ServletContextListener; + + +/** + * Example listener for context-related application events, which were + * introduced in the 2.3 version of the Servlet API. This listener + * merely documents the occurrence of such events in the application log + * associated with our servlet context. + * + * @author Craig R. McClanahan + * @version $Revision: 500674 $ $Date: 2007-01-28 00:15:00 +0100 (dim., 28 janv. 2007) $ + */ + +public final class ContextListener + implements ServletContextAttributeListener, ServletContextListener { + + + // ----------------------------------------------------- Instance Variables + + + /** + * The servlet context with which we are associated. + */ + private ServletContext context = null; + + + // --------------------------------------------------------- Public Methods + + + /** + * Record the fact that a servlet context attribute was added. + * + * @param event The servlet context attribute event + */ + public void attributeAdded(ServletContextAttributeEvent event) { + + log("attributeAdded('" + event.getName() + "', '" + + event.getValue() + "')"); + + } + + + /** + * Record the fact that a servlet context attribute was removed. + * + * @param event The servlet context attribute event + */ + public void attributeRemoved(ServletContextAttributeEvent event) { + + log("attributeRemoved('" + event.getName() + "', '" + + event.getValue() + "')"); + + } + + + /** + * Record the fact that a servlet context attribute was replaced. + * + * @param event The servlet context attribute event + */ + public void attributeReplaced(ServletContextAttributeEvent event) { + + log("attributeReplaced('" + event.getName() + "', '" + + event.getValue() + "')"); + + } + + + /** + * Record the fact that this web application has been destroyed. + * + * @param event The servlet context event + */ + public void contextDestroyed(ServletContextEvent event) { + + log("contextDestroyed()"); + this.context = null; + + } + + + /** + * Record the fact that this web application has been initialized. + * + * @param event The servlet context event + */ + public void contextInitialized(ServletContextEvent event) { + + this.context = event.getServletContext(); + log("contextInitialized()"); + + } + + + // -------------------------------------------------------- Private Methods + + + /** + * Log a message to the servlet context application log. + * + * @param message Message to be logged + */ + private void log(String message) { + + if (context != null) + context.log("ContextListener: " + message); + else + System.out.println("ContextListener: " + message); + + } + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/SessionListener.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/SessionListener.class new file mode 100644 index 0000000..9f60b31 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/SessionListener.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/SessionListener.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/SessionListener.java new file mode 100644 index 0000000..0b9a96d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/listeners/SessionListener.java @@ -0,0 +1,163 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +package listeners; + + +import javax.servlet.ServletContext; +import javax.servlet.ServletContextEvent; +import javax.servlet.ServletContextListener; +import javax.servlet.http.HttpSessionAttributeListener; +import javax.servlet.http.HttpSessionBindingEvent; +import javax.servlet.http.HttpSessionEvent; +import javax.servlet.http.HttpSessionListener; + + +/** + * Example listener for context-related application events, which were + * introduced in the 2.3 version of the Servlet API. This listener + * merely documents the occurrence of such events in the application log + * associated with our servlet context. + * + * @author Craig R. McClanahan + * @version $Revision: 500674 $ $Date: 2007-01-28 00:15:00 +0100 (dim., 28 janv. 2007) $ + */ + +public final class SessionListener + implements ServletContextListener, + HttpSessionAttributeListener, HttpSessionListener { + + + // ----------------------------------------------------- Instance Variables + + + /** + * The servlet context with which we are associated. + */ + private ServletContext context = null; + + + // --------------------------------------------------------- Public Methods + + + /** + * Record the fact that a servlet context attribute was added. + * + * @param event The session attribute event + */ + public void attributeAdded(HttpSessionBindingEvent event) { + + log("attributeAdded('" + event.getSession().getId() + "', '" + + event.getName() + "', '" + event.getValue() + "')"); + + } + + + /** + * Record the fact that a servlet context attribute was removed. + * + * @param event The session attribute event + */ + public void attributeRemoved(HttpSessionBindingEvent event) { + + log("attributeRemoved('" + event.getSession().getId() + "', '" + + event.getName() + "', '" + event.getValue() + "')"); + + } + + + /** + * Record the fact that a servlet context attribute was replaced. + * + * @param event The session attribute event + */ + public void attributeReplaced(HttpSessionBindingEvent event) { + + log("attributeReplaced('" + event.getSession().getId() + "', '" + + event.getName() + "', '" + event.getValue() + "')"); + + } + + + /** + * Record the fact that this web application has been destroyed. + * + * @param event The servlet context event + */ + public void contextDestroyed(ServletContextEvent event) { + + log("contextDestroyed()"); + this.context = null; + + } + + + /** + * Record the fact that this web application has been initialized. + * + * @param event The servlet context event + */ + public void contextInitialized(ServletContextEvent event) { + + this.context = event.getServletContext(); + log("contextInitialized()"); + + } + + + /** + * Record the fact that a session has been created. + * + * @param event The session event + */ + public void sessionCreated(HttpSessionEvent event) { + + log("sessionCreated('" + event.getSession().getId() + "')"); + + } + + + /** + * Record the fact that a session has been destroyed. + * + * @param event The session event + */ + public void sessionDestroyed(HttpSessionEvent event) { + + log("sessionDestroyed('" + event.getSession().getId() + "')"); + + } + + + // -------------------------------------------------------- Private Methods + + + /** + * Log a message to the servlet context application log. + * + * @param message Message to be logged + */ + private void log(String message) { + + if (context != null) + context.log("SessionListener: " + message); + else + System.out.println("SessionListener: " + message); + + } + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/num/NumberGuessBean.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/num/NumberGuessBean.class new file mode 100644 index 0000000..71b5cce Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/num/NumberGuessBean.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/num/NumberGuessBean.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/num/NumberGuessBean.java new file mode 100644 index 0000000..7eed08e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/num/NumberGuessBean.java @@ -0,0 +1,79 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +/* + * Originally written by Jason Hunter, http://www.servlets.com. + */ + +package num; + +import java.util.*; + +public class NumberGuessBean { + + int answer; + boolean success; + String hint; + int numGuesses; + + public NumberGuessBean() { + reset(); + } + + public void setGuess(String guess) { + numGuesses++; + + int g; + try { + g = Integer.parseInt(guess); + } + catch (NumberFormatException e) { + g = -1; + } + + if (g == answer) { + success = true; + } + else if (g == -1) { + hint = "a number next time"; + } + else if (g < answer) { + hint = "higher"; + } + else if (g > answer) { + hint = "lower"; + } + } + + public boolean getSuccess() { + return success; + } + + public String getHint() { + return "" + hint; + } + + public int getNumGuesses() { + return numGuesses; + } + + public void reset() { + answer = Math.abs(new Random().nextInt() % 100) + 1; + success = false; + numGuesses = 0; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/servletToJsp.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/servletToJsp.class new file mode 100644 index 0000000..c95143b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/servletToJsp.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/servletToJsp.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/servletToJsp.java new file mode 100644 index 0000000..cfd198e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/servletToJsp.java @@ -0,0 +1,32 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +import javax.servlet.http.*; + +public class servletToJsp extends HttpServlet { + + public void doGet (HttpServletRequest request, + HttpServletResponse response) { + + try { + // Set the attribute and Forward to hello.jsp + request.setAttribute ("servletName", "servletToJsp"); + getServletConfig().getServletContext().getRequestDispatcher("/jsp/jsptoserv/hello.jsp").forward(request, response); + } catch (Exception ex) { + ex.printStackTrace (); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/sessions/DummyCart.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/sessions/DummyCart.class new file mode 100644 index 0000000..0694c6e Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/sessions/DummyCart.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/sessions/DummyCart.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/sessions/DummyCart.java new file mode 100644 index 0000000..b70903d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/sessions/DummyCart.java @@ -0,0 +1,69 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package sessions; + +import javax.servlet.http.*; +import java.util.Vector; + +public class DummyCart { + Vector v = new Vector(); + String submit = null; + String item = null; + + private void addItem(String name) { + v.addElement(name); + } + + private void removeItem(String name) { + v.removeElement(name); + } + + public void setItem(String name) { + item = name; + } + + public void setSubmit(String s) { + submit = s; + } + + public String[] getItems() { + String[] s = new String[v.size()]; + v.copyInto(s); + return s; + } + + public void processRequest(HttpServletRequest request) { + // null value for submit - user hit enter instead of clicking on + // "add" or "remove" + if (submit == null) + addItem(item); + + if (submit.equals("add")) + addItem(item); + else if (submit.equals("remove")) + removeItem(item); + + // reset at the end of the request + reset(); + } + + // reset + private void reset() { + submit = null; + item = null; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/util/HTMLFilter.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/util/HTMLFilter.class new file mode 100644 index 0000000..de8da6c Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/util/HTMLFilter.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/util/HTMLFilter.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/util/HTMLFilter.java new file mode 100644 index 0000000..023438e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/util/HTMLFilter.java @@ -0,0 +1,69 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package util; + +/** + * HTML filter utility. + * + * @author Craig R. McClanahan + * @author Tim Tye + * @version $Revision: 467217 $ $Date: 2006-10-24 05:14:34 +0200 (mar., 24 oct. 2006) $ + */ + +public final class HTMLFilter { + + + /** + * Filter the specified message string for characters that are sensitive + * in HTML. This avoids potential attacks caused by including JavaScript + * codes in the request URL that is often reported in error messages. + * + * @param message The message string to be filtered + */ + public static String filter(String message) { + + if (message == null) + return (null); + + char content[] = new char[message.length()]; + message.getChars(0, message.length(), content, 0); + StringBuffer result = new StringBuffer(content.length + 50); + for (int i = 0; i < content.length; i++) { + switch (content[i]) { + case '<': + result.append("<"); + break; + case '>': + result.append(">"); + break; + case '&': + result.append("&"); + break; + case '"': + result.append("""); + break; + default: + result.append(content[i]); + } + } + return (result.toString()); + + } + + +} + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/validators/DebugValidator.class b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/validators/DebugValidator.class new file mode 100644 index 0000000..849178b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/validators/DebugValidator.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/validators/DebugValidator.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/validators/DebugValidator.java new file mode 100644 index 0000000..d1197f2 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/classes/validators/DebugValidator.java @@ -0,0 +1,84 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +package validators; + + +import java.io.InputStream; +import java.io.IOException; +import javax.servlet.jsp.tagext.PageData; +import javax.servlet.jsp.tagext.TagLibraryValidator; +import javax.servlet.jsp.tagext.ValidationMessage; + + +/** + * Example tag library validator that simply dumps the XML version of each + * page to standard output (which will typically be sent to the file + * $CATALINA_HOME/logs/catalina.out). To utilize it, simply + * include a taglib directive for this tag library at the top + * of your JSP page. + * + * @author Craig McClanahan + * @version $Revision: 467217 $ $Date: 2006-10-24 05:14:34 +0200 (mar., 24 oct. 2006) $ + */ + +public class DebugValidator extends TagLibraryValidator { + + + // ----------------------------------------------------- Instance Variables + + + // --------------------------------------------------------- Public Methods + + + /** + * Validate a JSP page. This will get invoked once per directive in the + * JSP page. This method will return null if the page is + * valid; otherwise the method should return an array of + * ValidationMessage objects. An array of length zero is + * also interpreted as no errors. + * + * @param prefix The value of the prefix argument in this directive + * @param uri The value of the URI argument in this directive + * @param page The page data for this page + */ + public ValidationMessage[] validate(String prefix, String uri, + PageData page) { + + System.out.println("---------- Prefix=" + prefix + " URI=" + uri + + "----------"); + + InputStream is = page.getInputStream(); + while (true) { + try { + int ch = is.read(); + if (ch < 0) + break; + System.out.print((char) ch); + } catch (IOException e) { + break; + } + } + System.out.println(); + System.out.println("-----------------------------------------------"); + return (null); + + } + + +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp/applet/Clock2.java b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp/applet/Clock2.java new file mode 100644 index 0000000..16a8790 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp/applet/Clock2.java @@ -0,0 +1,212 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +import java.util.*; +import java.awt.*; +import java.applet.*; +import java.text.*; + +/** + * Time! + * + * @author Rachel Gollub + */ + +public class Clock2 extends Applet implements Runnable { + Thread timer; // The thread that displays clock + int lastxs, lastys, lastxm, + lastym, lastxh, lastyh; // Dimensions used to draw hands + SimpleDateFormat formatter; // Formats the date displayed + String lastdate; // String to hold date displayed + Font clockFaceFont; // Font for number display on clock + Date currentDate; // Used to get date to display + Color handColor; // Color of main hands and dial + Color numberColor; // Color of second hand and numbers + + public void init() { + int x,y; + lastxs = lastys = lastxm = lastym = lastxh = lastyh = 0; + formatter = new SimpleDateFormat ("EEE MMM dd hh:mm:ss yyyy", Locale.getDefault()); + currentDate = new Date(); + lastdate = formatter.format(currentDate); + clockFaceFont = new Font("Serif", Font.PLAIN, 14); + handColor = Color.blue; + numberColor = Color.darkGray; + + try { + setBackground(new Color(Integer.parseInt(getParameter("bgcolor"),16))); + } catch (Exception E) { } + try { + handColor = new Color(Integer.parseInt(getParameter("fgcolor1"),16)); + } catch (Exception E) { } + try { + numberColor = new Color(Integer.parseInt(getParameter("fgcolor2"),16)); + } catch (Exception E) { } + resize(300,300); // Set clock window size + } + + // Plotpoints allows calculation to only cover 45 degrees of the circle, + // and then mirror + public void plotpoints(int x0, int y0, int x, int y, Graphics g) { + g.drawLine(x0+x,y0+y,x0+x,y0+y); + g.drawLine(x0+y,y0+x,x0+y,y0+x); + g.drawLine(x0+y,y0-x,x0+y,y0-x); + g.drawLine(x0+x,y0-y,x0+x,y0-y); + g.drawLine(x0-x,y0-y,x0-x,y0-y); + g.drawLine(x0-y,y0-x,x0-y,y0-x); + g.drawLine(x0-y,y0+x,x0-y,y0+x); + g.drawLine(x0-x,y0+y,x0-x,y0+y); + } + + // Circle is just Bresenham's algorithm for a scan converted circle + public void circle(int x0, int y0, int r, Graphics g) { + int x,y; + float d; + x=0; + y=r; + d=5/4-r; + plotpoints(x0,y0,x,y,g); + + while (y>x){ + if (d<0) { + d=d+2*x+3; + x++; + } + else { + d=d+2*(x-y)+5; + x++; + y--; + } + plotpoints(x0,y0,x,y,g); + } + } + + // Paint is the main part of the program + public void paint(Graphics g) { + int xh, yh, xm, ym, xs, ys, s = 0, m = 10, h = 10, xcenter, ycenter; + String today; + + currentDate = new Date(); + SimpleDateFormat formatter = new SimpleDateFormat("s",Locale.getDefault()); + try { + s = Integer.parseInt(formatter.format(currentDate)); + } catch (NumberFormatException n) { + s = 0; + } + formatter.applyPattern("m"); + try { + m = Integer.parseInt(formatter.format(currentDate)); + } catch (NumberFormatException n) { + m = 10; + } + formatter.applyPattern("h"); + try { + h = Integer.parseInt(formatter.format(currentDate)); + } catch (NumberFormatException n) { + h = 10; + } + formatter.applyPattern("EEE MMM dd HH:mm:ss yyyy"); + today = formatter.format(currentDate); + xcenter=80; + ycenter=55; + + // a= s* pi/2 - pi/2 (to switch 0,0 from 3:00 to 12:00) + // x = r(cos a) + xcenter, y = r(sin a) + ycenter + + xs = (int)(Math.cos(s * 3.14f/30 - 3.14f/2) * 45 + xcenter); + ys = (int)(Math.sin(s * 3.14f/30 - 3.14f/2) * 45 + ycenter); + xm = (int)(Math.cos(m * 3.14f/30 - 3.14f/2) * 40 + xcenter); + ym = (int)(Math.sin(m * 3.14f/30 - 3.14f/2) * 40 + ycenter); + xh = (int)(Math.cos((h*30 + m/2) * 3.14f/180 - 3.14f/2) * 30 + xcenter); + yh = (int)(Math.sin((h*30 + m/2) * 3.14f/180 - 3.14f/2) * 30 + ycenter); + + // Draw the circle and numbers + + g.setFont(clockFaceFont); + g.setColor(handColor); + circle(xcenter,ycenter,50,g); + g.setColor(numberColor); + g.drawString("9",xcenter-45,ycenter+3); + g.drawString("3",xcenter+40,ycenter+3); + g.drawString("12",xcenter-5,ycenter-37); + g.drawString("6",xcenter-3,ycenter+45); + + // Erase if necessary, and redraw + + g.setColor(getBackground()); + if (xs != lastxs || ys != lastys) { + g.drawLine(xcenter, ycenter, lastxs, lastys); + g.drawString(lastdate, 5, 125); + } + if (xm != lastxm || ym != lastym) { + g.drawLine(xcenter, ycenter-1, lastxm, lastym); + g.drawLine(xcenter-1, ycenter, lastxm, lastym); } + if (xh != lastxh || yh != lastyh) { + g.drawLine(xcenter, ycenter-1, lastxh, lastyh); + g.drawLine(xcenter-1, ycenter, lastxh, lastyh); } + g.setColor(numberColor); + g.drawString("", 5, 125); + g.drawString(today, 5, 125); + g.drawLine(xcenter, ycenter, xs, ys); + g.setColor(handColor); + g.drawLine(xcenter, ycenter-1, xm, ym); + g.drawLine(xcenter-1, ycenter, xm, ym); + g.drawLine(xcenter, ycenter-1, xh, yh); + g.drawLine(xcenter-1, ycenter, xh, yh); + lastxs=xs; lastys=ys; + lastxm=xm; lastym=ym; + lastxh=xh; lastyh=yh; + lastdate = today; + currentDate=null; + } + + public void start() { + timer = new Thread(this); + timer.start(); + } + + public void stop() { + timer = null; + } + + public void run() { + Thread me = Thread.currentThread(); + while (timer == me) { + try { + Thread.currentThread().sleep(100); + } catch (InterruptedException e) { + } + repaint(); + } + } + + public void update(Graphics g) { + paint(g); + } + + public String getAppletInfo() { + return "Title: A Clock \nAuthor: Rachel Gollub, 1995 \nAn analog clock."; + } + + public String[][] getParameterInfo() { + String[][] info = { + {"bgcolor", "hexadecimal RGB number", "The background color. Default is the color of your browser."}, + {"fgcolor1", "hexadecimal RGB number", "The color of the hands and dial. Default is blue."}, + {"fgcolor2", "hexadecimal RGB number", "The color of the seconds hand and numbers. Default is dark gray."} + }; + return info; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp/debug-taglib.tld b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp/debug-taglib.tld new file mode 100644 index 0000000..f22bad4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp/debug-taglib.tld @@ -0,0 +1,54 @@ + + + + + + + + 1.0 + 1.2 + debug + http://jakarta.apache.org/tomcat/debug-taglib + + This tag library defines no tags. Instead, its purpose is encapsulated + in the TagLibraryValidator implementation that simply outputs the XML + version of a JSP page to standard output, whenever this tag library is + referenced in a "taglib" directive in a JSP page. + + + validators.DebugValidator + + + + + log + examples.LogTag + TAGDEPENDENT + + Perform a server side action; Log the message. + + + toBrowser + false + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp/example-taglib.tld b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp/example-taglib.tld new file mode 100644 index 0000000..7be53d5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp/example-taglib.tld @@ -0,0 +1,83 @@ + + + + + + + 1.0 + 1.2 + simple + http://jakarta.apache.org/tomcat/example-taglib + + A simple tab library for the examples + + + + ShowSource + examples.ShowSource + Display JSP sources + + jspFile + true + true + + + + + + + foo + examples.FooTag + examples.FooTagExtraInfo + JSP + + Perform a server side action; uses 3 mandatory attributes + + + + att1 + true + + + att2 + true + + + att3 + true + + + + + + + log + examples.LogTag + TAGDEPENDENT + + Perform a server side action; Log the message. + + + toBrowser + false + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp2/jsp2-example-taglib.tld b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp2/jsp2-example-taglib.tld new file mode 100644 index 0000000..39f56f5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/jsp2/jsp2-example-taglib.tld @@ -0,0 +1,124 @@ + + + + + A tag library exercising SimpleTag handlers. + 1.0 + SimpleTagLibrary + /SimpleTagLibrary + + Outputs Hello, World + helloWorld + jsp2.examples.simpletag.HelloWorldSimpleTag + empty + + + Repeats the body of the tag 'num' times + repeat + jsp2.examples.simpletag.RepeatSimpleTag + scriptless + + Current invocation count (1 to num) + count + + + num + true + true + + + + Populates the page context with a BookBean + findBook + jsp2.examples.simpletag.FindBookSimpleTag + empty + + var + true + true + + + + + Takes 3 fragments and invokes them in a random order + + shuffle + jsp2.examples.simpletag.ShuffleSimpleTag + empty + + fragment1 + true + true + + + fragment2 + true + true + + + fragment3 + true + true + + + + Outputs a colored tile + tile + jsp2.examples.simpletag.TileSimpleTag + empty + + color + true + + + label + true + + + + + Tag that echoes all its attributes and body content + + echoAttributes + jsp2.examples.simpletag.EchoAttributesTag + empty + true + + + Reverses the characters in the given String + reverse + jsp2.examples.el.Functions + java.lang.String reverse( java.lang.String ) + + + Counts the number of vowels (a,e,i,o,u) in the given String + countVowels + jsp2.examples.el.Functions + java.lang.String numVowels( java.lang.String ) + + + Converts the string to all caps + caps + jsp2.examples.el.Functions + java.lang.String caps( java.lang.String ) + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/lib/jstl.jar b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/lib/jstl.jar new file mode 100644 index 0000000..6b41358 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/lib/jstl.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/lib/standard.jar b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/lib/standard.jar new file mode 100644 index 0000000..258daae Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/lib/standard.jar differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/displayProducts.tag b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/displayProducts.tag new file mode 100644 index 0000000..508852e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/displayProducts.tag @@ -0,0 +1,55 @@ + +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ attribute name="normalPrice" fragment="true" %> +<%@ attribute name="onSale" fragment="true" %> +<%@ variable name-given="name" %> +<%@ variable name-given="price" %> +<%@ variable name-given="origPrice" %> +<%@ variable name-given="salePrice" %> + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + + + +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/helloWorld.tag b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/helloWorld.tag new file mode 100644 index 0000000..f52e823 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/helloWorld.tag @@ -0,0 +1,17 @@ + +Hello, world! diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/panel.tag b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/panel.tag new file mode 100644 index 0000000..90aaf91 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/panel.tag @@ -0,0 +1,29 @@ + +<%@ attribute name="color" %> +<%@ attribute name="bgcolor" %> +<%@ attribute name="title" %> + + + + + + + +
    ${title}
    + +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/xhtmlbasic.tag b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/xhtmlbasic.tag new file mode 100644 index 0000000..d8af5e5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/tags/xhtmlbasic.tag @@ -0,0 +1,21 @@ + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/web.xml b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/web.xml new file mode 100644 index 0000000..7146484 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/WEB-INF/web.xml @@ -0,0 +1,307 @@ + + + + + + + Servlet and JSP Examples. + + Servlet and JSP Examples + + + + + Servlet Mapped Filter + filters.ExampleFilter + + attribute + filters.ExampleFilter.SERVLET_MAPPED + + + + Path Mapped Filter + filters.ExampleFilter + + attribute + filters.ExampleFilter.PATH_MAPPED + + + + Request Dumper Filter + filters.RequestDumperFilter + + + + + Set Character Encoding + filters.SetCharacterEncodingFilter + + encoding + EUC_JP + + + + + Compression Filter + compressionFilters.CompressionFilter + + + compressionThreshold + 10 + + + debug + 0 + + + + + + Servlet Mapped Filter + invoker + + + Path Mapped Filter + /servlet/* + + + + + + + + + + + + listeners.ContextListener + + + listeners.SessionListener + + + + + + servletToJsp + servletToJsp + + + ChatServlet + chat.ChatServlet + + + CompressionFilterTestServlet + compressionFilters.CompressionFilterTestServlet + + + HelloWorldExample + HelloWorldExample + + + RequestInfoExample + RequestInfoExample + + + RequestHeaderExample + RequestHeaderExample + + + RequestParamExample + RequestParamExample + + + CookieExample + CookieExample + + + SessionExample + SessionExample + + + + ChatServlet + /jsp/chat/chat + + + CompressionFilterTestServlet + /CompressionTest + + + HelloWorldExample + /servlets/servlet/HelloWorldExample + + + RequestInfoExample + /servlets/servlet/RequestInfoExample/* + + + RequestHeaderExample + /servlets/servlet/RequestHeaderExample + + + RequestParamExample + /servlets/servlet/RequestParamExample + + + CookieExample + /servlets/servlet/CookieExample + + + SessionExample + /servlets/servlet/SessionExample + + + servletToJsp + /servletToJsp + + + + + + http://jakarta.apache.org/tomcat/debug-taglib + + + /WEB-INF/jsp/debug-taglib.tld + + + + + + http://jakarta.apache.org/tomcat/examples-taglib + + + /WEB-INF/jsp/example-taglib.tld + + + + + + http://jakarta.apache.org/tomcat/jsp2-example-taglib + + + /WEB-INF/jsp2/jsp2-example-taglib.tld + + + + + + Special property group for JSP Configuration JSP example. + + JSPConfiguration + /jsp2/misc/config.jsp + true + ISO-8859-1 + true + /jsp2/misc/prelude.jspf + /jsp2/misc/coda.jspf + + + + + Example Security Constraint + + Protected Area + + /jsp/security/protected/* + + DELETE + GET + POST + PUT + + + + tomcat + role1 + + + + + + FORM + Example Form-Based Authentication Area + + /jsp/security/protected/login.jsp + /jsp/security/protected/error.jsp + + + + + + role1 + + + tomcat + + + + + + minExemptions + java.lang.Integer + 1 + + + foo/name1 + java.lang.String + value1 + + + foo/bar/name2 + java.lang.Boolean + true + + + name3 + java.lang.Integer + 1 + + + foo/name4 + java.lang.Integer + 10 + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/index.html b/P51/apache-tomcat-6.0.14/webapps/examples/index.html new file mode 100644 index 0000000..35091d3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/index.html @@ -0,0 +1,13 @@ + +Apache Tomcat Examples + + + +

    +

    Apache Tomcat Examples

    +

    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/Entries.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/Entries.java.html new file mode 100644 index 0000000..6093d31 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/Entries.java.html @@ -0,0 +1,74 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +package cal;
    +
    +import java.util.Hashtable;
    +import javax.servlet.http.*;
    +
    +public class Entries {
    +
    +  private Hashtable entries;
    +  private static final String[] time = {"8am", "9am", "10am", "11am", "12pm", 
    +					"1pm", "2pm", "3pm", "4pm", "5pm", "6pm",
    +					"7pm", "8pm" };
    +  public static final int rows = 12;
    +
    +  public Entries () {   
    +   entries = new Hashtable (rows);
    +   for (int i=0; i < rows; i++) {
    +     entries.put (time[i], new Entry(time[i]));
    +   }
    +  }
    +
    +  public int getRows () {
    +    return rows;
    +  }
    +
    +  public Entry getEntry (int index) {
    +    return (Entry)this.entries.get(time[index]);
    +  }
    +
    +  public int getIndex (String tm) {
    +    for (int i=0; i<rows; i++)
    +      if(tm.equals(time[i])) return i;
    +    return -1;
    +  }
    +
    +  public void processRequest (HttpServletRequest request, String tm) {
    +    int index = getIndex (tm);
    +    if (index >= 0) {
    +      String descr = request.getParameter ("description");
    +      ((Entry)entries.get(time[index])).setDescription (descr);
    +    }
    +  }
    +
    +}
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/Entry.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/Entry.java.html new file mode 100644 index 0000000..f982750 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/Entry.java.html @@ -0,0 +1,57 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +package cal;
    +
    +public class Entry {
    +
    +  String hour;
    +  String description;
    +  String color;
    +
    +  public Entry (String hour) {
    +    this.hour = hour;
    +    this.description = "";
    +
    +  }
    +
    +  public String getHour () {
    +    return this.hour;
    +  }
    +
    +  public String getColor () {
    +    if (description.equals("")) return "lightblue";
    +    else return "red";
    +  }
    +
    +  public String getDescription () {
    +    if (description.equals("")) return "None";
    +    else return this.description;
    +  }
    +
    +  public void setDescription (String descr) {
    +    description = descr;
    +  }
    + 
    +}
    +
    +
    +
    +
    +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/JspCalendar.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/JspCalendar.java.html new file mode 100644 index 0000000..e1b4b83 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/JspCalendar.java.html @@ -0,0 +1,156 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +package cal;
    +
    +import java.util.*;
    +
    +public class JspCalendar {
    +    Calendar  calendar = null;
    +    Date currentDate;
    +
    +    public JspCalendar() {
    +	calendar = Calendar.getInstance();
    +	Date trialTime = new Date();
    +	calendar.setTime(trialTime);
    +    }
    +
    +
    +    public int getYear() {
    +	return calendar.get(Calendar.YEAR);
    +    }
    +    
    +    public String getMonth() {
    +	int m = getMonthInt();
    +	String[] months = new String [] { "January", "February", "March",
    +					"April", "May", "June",
    +					"July", "August", "September",
    +					"October", "November", "December" };
    +	if (m > 12)
    +	    return "Unknown to Man";
    +	
    +	return months[m - 1];
    +
    +    }
    +
    +    public String getDay() {
    +	int x = getDayOfWeek();
    +	String[] days = new String[] {"Sunday", "Monday", "Tuesday", "Wednesday", 
    +				      "Thursday", "Friday", "Saturday"};
    +
    +	if (x > 7)
    +	    return "Unknown to Man";
    +
    +	return days[x - 1];
    +
    +    }
    +    
    +    public int getMonthInt() {
    +	return 1 + calendar.get(Calendar.MONTH);
    +    }
    +
    +    public String getDate() {
    +	return getMonthInt() + "/" + getDayOfMonth() + "/" +  getYear();	
    +    }
    +
    +    public String getCurrentDate() {
    +        Date dt = new Date ();
    +	calendar.setTime (dt);
    +	return getMonthInt() + "/" + getDayOfMonth() + "/" +  getYear();
    +
    +    }
    +
    +    public String getNextDate() {
    +        calendar.set (Calendar.DAY_OF_MONTH, getDayOfMonth() + 1);
    +	return getDate ();
    +    }
    +
    +    public String getPrevDate() {
    +        calendar.set (Calendar.DAY_OF_MONTH, getDayOfMonth() - 1);
    +	return getDate ();
    +    }
    +
    +    public String getTime() {
    +	return getHour() + ":" + getMinute() + ":" + getSecond();
    +    }
    +
    +    public int getDayOfMonth() {
    +	return calendar.get(Calendar.DAY_OF_MONTH);
    +    }
    +
    +    public int getDayOfYear() {
    +	return calendar.get(Calendar.DAY_OF_YEAR);
    +    }
    +
    +    public int getWeekOfYear() {
    +	return calendar.get(Calendar.WEEK_OF_YEAR);
    +    }
    +
    +    public int getWeekOfMonth() {
    +	return calendar.get(Calendar.WEEK_OF_MONTH);
    +    }
    +
    +    public int getDayOfWeek() {
    +	return calendar.get(Calendar.DAY_OF_WEEK);
    +    }
    +     
    +    public int getHour() {
    +	return calendar.get(Calendar.HOUR_OF_DAY);
    +    }
    +    
    +    public int getMinute() {
    +	return calendar.get(Calendar.MINUTE);
    +    }
    +
    +
    +    public int getSecond() {
    +	return calendar.get(Calendar.SECOND);
    +    }
    +
    +  
    +    public int getEra() {
    +	return calendar.get(Calendar.ERA);
    +    }
    +
    +    public String getUSTimeZone() {
    +	String[] zones = new String[] {"Hawaii", "Alaskan", "Pacific",
    +				       "Mountain", "Central", "Eastern"};
    +	
    +	return zones[10 + getZoneOffset()];
    +    }
    +
    +    public int getZoneOffset() {
    +	return calendar.get(Calendar.ZONE_OFFSET)/(60*60*1000);
    +    }
    +
    +
    +    public int getDSTOffset() {
    +	return calendar.get(Calendar.DST_OFFSET)/(60*60*1000);
    +    }
    +
    +    
    +    public int getAMPM() {
    +	return calendar.get(Calendar.AM_PM);
    +    }
    +}
    +
    +
    +
    +
    +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/TableBean.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/TableBean.java.html new file mode 100644 index 0000000..a81a66b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/TableBean.java.html @@ -0,0 +1,102 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +package cal;
    +
    +import javax.servlet.http.*;
    +import java.util.Hashtable;
    +
    +public class TableBean {
    +
    +  Hashtable table;
    +  JspCalendar JspCal;
    +  Entries entries;
    +  String date;
    +  String name = null;
    +  String email = null;
    +  boolean processError = false;
    +
    +  public TableBean () {
    +    this.table = new Hashtable (10);
    +    this.JspCal = new JspCalendar ();
    +    this.date = JspCal.getCurrentDate ();
    +  }
    +
    +  public void setName (String nm) {
    +    this.name = nm;
    +  }
    +
    +  public String getName () {
    +    return this.name;
    +  }
    +  
    +  public void setEmail (String mail) {
    +    this.email = mail;
    +  }
    +
    +  public String getEmail () {
    +    return this.email;
    +  }
    +
    +  public String getDate () {
    +    return this.date;
    +  }
    +
    +  public Entries getEntries () {
    +    return this.entries;
    +  }
    +
    +  public void processRequest (HttpServletRequest request) {
    +
    +    // Get the name and e-mail.
    +    this.processError = false;
    +    if (name == null || name.equals("")) setName(request.getParameter ("name"));  
    +    if (email == null || email.equals("")) setEmail(request.getParameter ("email"));
    +    if (name == null || email == null ||
    +		name.equals("") || email.equals("")) {
    +      this.processError = true;
    +      return;
    +    }
    +
    +    // Get the date.
    +    String dateR = request.getParameter ("date");
    +    if (dateR == null) date = JspCal.getCurrentDate ();
    +    else if (dateR.equalsIgnoreCase("next")) date = JspCal.getNextDate ();
    +    else if (dateR.equalsIgnoreCase("prev")) date = JspCal.getPrevDate ();
    +
    +    entries = (Entries) table.get (date);
    +    if (entries == null) {
    +      entries = new Entries ();
    +      table.put (date, entries);
    +    }
    +
    +    // If time is provided add the event.
    +	String time = request.getParameter("time");
    +    if (time != null) entries.processRequest (request, time);
    +  }
    +
    +  public boolean getProcessError () {
    +    return this.processError;
    +  }
    +}
    +
    +
    +
    +
    +
    +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal1.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal1.jsp new file mode 100644 index 0000000..a691df4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal1.jsp @@ -0,0 +1,95 @@ + + + + Calendar: A JSP APPLICATION + + + + + +<%@ page language="java" import="cal.*" %> + + +<% + table.processRequest(request); + if (table.getProcessError() == false) { +%> + + +
    + + + + +
    prev + Calendar:<%= table.getDate() %> next +
    + + + + + + + + +<% + for(int i=0; i + + + + +<% + } +%> + +
    Time Appointment
    + > + <%= entr.getHour() %> + > + <% out.print(util.HTMLFilter.filter(entr.getDescription())); %> +
    +
    + + + + + + +
    <% out.print(util.HTMLFilter.filter(table.getName())); %> : + <% out.print(util.HTMLFilter.filter(table.getEmail())); %>
    +
    + +<% + } else { +%> + + You must enter your name and email address correctly. + +<% + } +%> + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal1.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal1.jsp.html new file mode 100644 index 0000000..f9c3689 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal1.jsp.html @@ -0,0 +1,97 @@ +
    +<HTML>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<HEAD><TITLE> 
    +	Calendar: A JSP APPLICATION
    +</TITLE></HEAD>
    +
    +
    +<BODY BGCOLOR="white">
    +
    +<%@ page language="java" import="cal.*" %>
    +<jsp:useBean id="table" scope="session" class="cal.TableBean" />
    +
    +<%
    +	table.processRequest(request);
    +	if (table.getProcessError() == false) {
    +%>
    +
    +<!-- html table goes here -->
    +<CENTER>
    +<TABLE WIDTH=60% BGCOLOR=yellow CELLPADDING=15>
    +<TR>
    +<TD ALIGN=CENTER> <A HREF=cal1.jsp?date=prev> prev </A>
    +<TD ALIGN=CENTER> Calendar:<%= table.getDate() %></TD>
    +<TD ALIGN=CENTER> <A HREF=cal1.jsp?date=next> next </A>
    +</TR>
    +</TABLE>
    +
    +<!-- the main table -->
    +<TABLE WIDTH=60% BGCOLOR=lightblue BORDER=1 CELLPADDING=10>
    +<TR>
    +<TH> Time </TH>
    +<TH> Appointment </TH>
    +</TR>
    +<FORM METHOD=POST ACTION=cal1.jsp>
    +<%
    +	for(int i=0; i<table.getEntries().getRows(); i++) {
    +	   cal.Entry entr = table.getEntries().getEntry(i);	
    +%>
    +	<TR>
    +	<TD> 
    +	<A HREF=cal2.jsp?time=<%= entr.getHour() %>>
    +		<%= entr.getHour() %> </A>
    +	</TD>
    +	<TD BGCOLOR=<%= entr.getColor() %>>
    +	<% out.print(util.HTMLFilter.filter(entr.getDescription())); %>
    +	</TD> 
    +	</TR>
    +<%
    +	}
    +%>
    +</FORM>
    +</TABLE>
    +<BR>
    +
    +<!-- footer -->
    +<TABLE WIDTH=60% BGCOLOR=yellow CELLPADDING=15>
    +<TR>
    +<TD ALIGN=CENTER>  <% out.print(util.HTMLFilter.filter(table.getName())); %> : 
    +		     <% out.print(util.HTMLFilter.filter(table.getEmail())); %> </TD>
    +</TR>
    +</TABLE>
    +</CENTER>
    +
    +<%
    +	} else {
    +%>
    +<font size=5>
    +	You must enter your name and email address correctly.
    +</font>
    +<%
    +	}
    +%>
    +
    +
    +</BODY>
    +</HTML>
    +
    +
    +
    +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal2.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal2.jsp new file mode 100644 index 0000000..741331a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal2.jsp @@ -0,0 +1,45 @@ + + + + + Calendar: A JSP APPLICATION + + + + + + +<% + String time = request.getParameter ("time"); +%> + + Please add the following event: +

    Date <%= table.getDate() %> +
    Time <%= util.HTMLFilter.filter(time) %>

    +
    +
    +
    +
    +
    +

    Description of the event

    +
    +
    + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal2.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal2.jsp.html new file mode 100644 index 0000000..0151b8a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/cal2.jsp.html @@ -0,0 +1,47 @@ +
    +<HTML>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<HEAD><TITLE> 
    +	Calendar: A JSP APPLICATION
    +</TITLE></HEAD>
    +
    +
    +<BODY BGCOLOR="white">
    +<jsp:useBean id="table" scope="session" class="cal.TableBean" />
    +
    +<% 
    +	String time = request.getParameter ("time");
    +%>
    +
    +<FONT SIZE=5> Please add the following event:
    +<BR> <h3> Date <%= table.getDate() %>
    +<BR> Time <%= util.HTMLFilter.filter(time) %> </h3>
    +</FONT>
    +<FORM METHOD=POST ACTION=cal1.jsp>
    +<BR> 
    +<BR> <INPUT NAME="date" TYPE=HIDDEN VALUE="current">
    +<BR> <INPUT NAME="time" TYPE=HIDDEN VALUE=<%= util.HTMLFilter.filter(time) %>
    +<BR> <h2> Description of the event <INPUT NAME="description" TYPE=TEXT SIZE=20> </h2>
    +<BR> <INPUT TYPE=SUBMIT VALUE="submit">
    +</FORM>
    +
    +</BODY>
    +</HTML>
    +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/calendar.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/calendar.html new file mode 100644 index 0000000..d77cea5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/calendar.html @@ -0,0 +1,43 @@ + + + + +Untitled Document + + + + +

    + +

    Source Code for Calendar Example.
    +

    cal1.jsp +

    +

    cal2.jsp +

    + +
    +

    Beans. +

    TableBean +

    +

    Entries +

    +

    Entry +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/login.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/login.html new file mode 100644 index 0000000..a232fa5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/cal/login.html @@ -0,0 +1,47 @@ + + + + + Login page for the calendar. + + + +
    + + Please Enter the following information: + +
    +
    + + Name + +
    + Email + +
    + + +
    +
    + Note: This application does not implement the complete +functionality of a typical calendar application. It demostartes a way JSP can be +used with html tables and forms. + +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/chat.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/chat.jsp new file mode 100644 index 0000000..631bf0c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/chat.jsp @@ -0,0 +1,32 @@ + + + + + JSP Chat + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/chat.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/chat.jsp.html new file mode 100644 index 0000000..cfeadb4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/chat.jsp.html @@ -0,0 +1,34 @@ +
    +<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<head>
    +   <title>JSP Chat</title>
    +</head>
    +
    +<body bgcolor="#FFFFFF">
    +
    +<!-- Body -->
    +<frameset>
    +  <frame name="post" src="post.jsp" scrolling="no" title="Post message">
    +  <frame name="chat" src="chat" scrolling="yes" title="Chat">
    +</frameset>
    +
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/login.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/login.jsp new file mode 100644 index 0000000..65478ee --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/login.jsp @@ -0,0 +1,31 @@ + + + + + JSP Chat + + + + +
    + +Nickname: +
    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/login.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/login.jsp.html new file mode 100644 index 0000000..f5b50a8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/login.jsp.html @@ -0,0 +1,33 @@ +
    +<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<head>
    +   <title>JSP Chat</title>
    +</head>
    +
    +<body bgcolor="#FFFFFF">
    +
    +<form method="POST" action='chat' name="loginForm">
    +<input type="hidden" name="action" value="login"/>
    +Nickname: <input type="text" name="nickname"/>
    +</form>
    +
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/post.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/post.jsp new file mode 100644 index 0000000..2165cb8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/post.jsp @@ -0,0 +1,36 @@ + + + + + JSP Chat + + + + +
    + +Message: +
    + +
    +
    + +Click to open chat window + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/post.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/post.jsp.html new file mode 100644 index 0000000..91f65b5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/chat/post.jsp.html @@ -0,0 +1,38 @@ +
    +<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<head>
    +   <title>JSP Chat</title>
    +</head>
    +
    +<body bgcolor="#FFFFFF">
    +
    +<form method="POST" action='chat' name="postForm">
    +<input type="hidden" name="action" value="post"/>
    +Message: <input type="text" name="message"/>
    +</form>
    +
    +<br>
    +<br>
    +
    +<a href="javascript:openWindow('http://127.0.0.1:8080/examples/jsp/chat/chat', 640, 480 ,0 ,0 ,0 ,0 ,0 ,1 ,10 ,10 )">Click to open chat window</a>
    +
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/CheckTest.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/CheckTest.html new file mode 100644 index 0000000..e950ff4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/CheckTest.html @@ -0,0 +1,56 @@ + + + + + +checkbox.CheckTest Bean Properties + + +

    +checkbox.CheckTest Bean Properties +

    +
    +
    +
    public class CheckTest
    extends Object
    + +

    +


    + +

    + + + + + + + + + +
    +Properties Summary
    + +String +CheckTest:fruit +
    +
    + +Multi +
    +


    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/check.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/check.html new file mode 100644 index 0000000..148fe40 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/check.html @@ -0,0 +1,38 @@ + + + + + + +
    +
    + +Check all Favorite fruits:
    + + Apples
    + Grapes
    + Oranges
    + Melons
    + + +
    + +
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/checkresult.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/checkresult.jsp new file mode 100644 index 0000000..db87ca1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/checkresult.jsp @@ -0,0 +1,64 @@ + + + + + +<%! String[] fruits; %> + + + +
    +The checked fruits (got using request) are:
    +<% + fruits = request.getParameterValues("fruit"); +%> +
      +<% + if (fruits != null) { + for (int i = 0; i < fruits.length; i++) { +%> +
    • +<% + out.println (util.HTMLFilter.filter(fruits[i])); + } + } else out.println ("none selected"); +%> +
    +
    +
    + +The checked fruits (got using beans) are
    + +<% + fruits = foo.getFruit(); +%> +
      +<% + if (!fruits[0].equals("1")) { + for (int i = 0; i < fruits.length; i++) { +%> +
    • +<% + out.println (util.HTMLFilter.filter(fruits[i])); + } + } else out.println ("none selected"); +%> +
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/checkresult.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/checkresult.jsp.html new file mode 100644 index 0000000..d5442d1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/checkresult.jsp.html @@ -0,0 +1,66 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<body bgcolor="white">
    +<font size=5 color="red">
    +<%! String[] fruits; %>
    +<jsp:useBean id="foo" scope="page" class="checkbox.CheckTest" />
    +
    +<jsp:setProperty name="foo" property="fruit" param="fruit" />
    +<hr>
    +The checked fruits (got using request) are: <br>
    +<% 
    +	fruits = request.getParameterValues("fruit");
    +%>
    +<ul>
    +<%
    +    if (fruits != null) {
    +	  for (int i = 0; i < fruits.length; i++) {
    +%>
    +<li>
    +<%
    +	      out.println (util.HTMLFilter.filter(fruits[i]));
    +	  }
    +	} else out.println ("none selected");
    +%>
    +</ul>
    +<br>
    +<hr>
    +
    +The checked fruits (got using beans) are <br>
    +
    +<% 
    +		fruits = foo.getFruit();
    +%>
    +<ul>
    +<%
    +    if (!fruits[0].equals("1")) {
    +	  for (int i = 0; i < fruits.length; i++) {
    +%>
    +<li>
    +<%
    +		  out.println (util.HTMLFilter.filter(fruits[i]));
    +	  }
    +	} else out.println ("none selected");
    +%>
    +</ul>
    +</font>
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/cresult.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/cresult.html new file mode 100644 index 0000000..c7eabce --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/checkbox/cresult.html @@ -0,0 +1,34 @@ + + + + +Untitled Document + + + + +

    + +

    Source Code for Checkbox Example +

    + +

    Property Sheet for CheckTest +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/ColorGameBean.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/ColorGameBean.html new file mode 100644 index 0000000..dcfc5c8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/ColorGameBean.html @@ -0,0 +1,116 @@ + + + + + +colors.ColorGameBean Bean Properties + + +

    +colors.ColorGameBean Bean Properties +

    +
    +
    +
    public class ColorGameBean
    extends Object
    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Properties Summary
    + +String +ColorGameBean:color2 +
    +
    + +Single +
    + +String +ColorGameBean:color1 +
    +
    + +Single +
    + +int +ColorGameBean:attempts +
    +
    + +Single +
    + +boolean +ColorGameBean:hint +
    +
    + +Single +
    + +boolean +ColorGameBean:success +
    +
    + +Single +
    + +boolean +ColorGameBean:hintTaken +
    +
    + +Single +
    +


    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/clr.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/clr.html new file mode 100644 index 0000000..58107bc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/clr.html @@ -0,0 +1,34 @@ + + + + +Untitled Document + + + + +

    + +

    Source Code for Color Example +

    + +

    Property Sheet for ColorGameBean +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/colors.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/colors.html new file mode 100644 index 0000000..086738d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/colors.html @@ -0,0 +1,47 @@ + + + + + + +
    +This web page is an example using JSP and BEANs. +

    +Guess my favorite two colors + +

    If you fail to guess both of them - you get yellow on red. + +

    If you guess one of them right, either your foreground or + your background will change to the color that was guessed right. + +

    Guess them both right and your browser foreground/background + will change to my two favorite colors to display this page. + +


    +
    +Color #1: +
    +Color #2: +

    + + +

    + +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/colrs.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/colrs.jsp new file mode 100644 index 0000000..e433bbd --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/colrs.jsp @@ -0,0 +1,70 @@ + + + + + + +<% + cb.processRequest(request); +%> + +> +> +

    + +<% if (cb.getHint()==true) { %> + +

    Hint #1: Vampires prey at night! +

    Hint #2: Nancy without the n. + +<% } %> + +<% if (cb.getSuccess()==true) { %> + +

    CONGRATULATIONS!! + <% if (cb.getHintTaken()==true) { %> + +

    ( although I know you cheated and peeked into the hints) + + <% } %> + +<% } %> + +

    Total attempts so far: <%= cb.getAttempts() %> +

    + +

    + +

    + +Color #1: + +
    + +Color #2: + +

    + + + + +

    + +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/colrs.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/colrs.jsp.html new file mode 100644 index 0000000..41af88b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/colors/colrs.jsp.html @@ -0,0 +1,72 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<jsp:useBean id="cb" scope="session" class="colors.ColorGameBean" />
    +<jsp:setProperty name="cb" property="*" />
    +
    +<%
    +	cb.processRequest(request);
    +%>
    +
    +<body bgcolor=<%= cb.getColor1() %>>
    +<font size=6 color=<%= cb.getColor2() %>>
    +<p>
    +
    +<% if (cb.getHint()==true) { %>
    +	
    +	<p> Hint #1: Vampires prey at night!
    +	<p>  <p> Hint #2: Nancy without the n.
    +
    +<% } %>
    +
    +<% if  (cb.getSuccess()==true) { %>
    +
    +    <p> CONGRATULATIONS!!
    +	<% if  (cb.getHintTaken()==true) { %>
    +    
    +        <p> ( although I know you cheated and peeked into the hints)
    +
    +	<% } %>
    +
    +<% } %>
    +
    +<p> Total attempts so far: <%= cb.getAttempts() %>
    +<p>
    +
    +<p>
    +
    +<form method=POST action=colrs.jsp>
    +
    +Color #1: <input type=text name= color1 size=16>
    +
    +<br>
    +
    +Color #2: <input type=text name= color2 size=16>
    +
    +<p>
    +
    +<input type=submit name=action value="Submit">
    +<input type=submit name=action value="Hint">
    +
    +</form>
    +
    +</font>
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/dates/date.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/dates/date.html new file mode 100644 index 0000000..b779181 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/dates/date.html @@ -0,0 +1,31 @@ + + + + +Untitled Document + + + + +

    + +

    Source Code for Date Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/dates/date.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/dates/date.jsp new file mode 100644 index 0000000..9c40d78 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/dates/date.jsp @@ -0,0 +1,41 @@ + + + +<%@ page session="false"%> + + + + + +
      +
    • Day of month: is +
    • Year: is +
    • Month: is +
    • Time: is +
    • Date: is +
    • Day: is +
    • Day Of Year: is +
    • Week Of Year: is +
    • era: is +
    • DST Offset: is +
    • Zone Offset: is +
    +
    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/dates/date.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/dates/date.jsp.html new file mode 100644 index 0000000..4a8f1e9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/dates/date.jsp.html @@ -0,0 +1,43 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<%@ page session="false"%>
    +
    +<body bgcolor="white">
    +<jsp:useBean id='clock' scope='page' class='dates.JspCalendar' type="dates.JspCalendar" />
    +
    +<font size=4>
    +<ul>
    +<li>	Day of month: is  <jsp:getProperty name="clock" property="dayOfMonth"/>
    +<li>	Year: is  <jsp:getProperty name="clock" property="year"/>
    +<li>	Month: is  <jsp:getProperty name="clock" property="month"/>
    +<li>	Time: is  <jsp:getProperty name="clock" property="time"/>
    +<li>	Date: is  <jsp:getProperty name="clock" property="date"/>
    +<li>	Day: is  <jsp:getProperty name="clock" property="day"/>
    +<li>	Day Of Year: is  <jsp:getProperty name="clock" property="dayOfYear"/>
    +<li>	Week Of Year: is  <jsp:getProperty name="clock" property="weekOfYear"/>
    +<li>	era: is  <jsp:getProperty name="clock" property="era"/>
    +<li>	DST Offset: is  <jsp:getProperty name="clock" property="DSTOffset"/>
    +<li>	Zone Offset: is  <jsp:getProperty name="clock" property="zoneOffset"/>
    +</ul>
    +</font>
    +
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/er.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/er.html new file mode 100644 index 0000000..523f7e3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/er.html @@ -0,0 +1,31 @@ + + + + +Untitled Document + + + + +

    + +

    Source Code for Error Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/err.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/err.jsp new file mode 100644 index 0000000..08030b0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/err.jsp @@ -0,0 +1,44 @@ + + + + + <%@ page errorPage="errorpge.jsp" %> + + <% + String name = null; + + if (request.getParameter("name") == null) { + %> + <%@ include file="error.html" %> + <% + } else { + foo.setName(request.getParameter("name")); + if (foo.getName().equalsIgnoreCase("integra")) + name = "acura"; + if (name.equalsIgnoreCase("acura")) { + %> + +

    Yes!!! Acura is my favorite car. + + <% + } + } + %> + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/err.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/err.jsp.html new file mode 100644 index 0000000..65b5654 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/err.jsp.html @@ -0,0 +1,46 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<body bgcolor="lightblue">
    +
    +	<%@ page errorPage="errorpge.jsp" %>
    +	<jsp:useBean id="foo" scope="request" class="error.Smart" />
    +	<% 
    +		String name = null;
    +
    +		if (request.getParameter("name") == null) {
    +	%>
    +	<%@ include file="error.html" %>
    +	<%
    +		} else {
    +		  foo.setName(request.getParameter("name"));
    +		  if (foo.getName().equalsIgnoreCase("integra"))
    +		  	name = "acura";
    +		  if (name.equalsIgnoreCase("acura")) {
    +	%>
    +
    +	<H1> Yes!!! <a href="http://www.acura.com">Acura</a> is my favorite car.
    +
    +	<% 
    +		  }
    +		}	
    +	%>	
    +</body>
    +</html>
    +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/error.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/error.html new file mode 100644 index 0000000..635346f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/error.html @@ -0,0 +1,37 @@ + + + + + +

    This example uses errorpage directive

    +
    +

    Select my favourite car.

    +
    + + +
    +
    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/errorpge.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/errorpge.jsp new file mode 100644 index 0000000..113c204 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/errorpge.jsp @@ -0,0 +1,25 @@ + + + + + + <%@ page isErrorPage="true" %> +

    The exception <%= exception.getMessage() %> tells me you + made a wrong choice. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/errorpge.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/errorpge.jsp.html new file mode 100644 index 0000000..69bf244 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/error/errorpge.jsp.html @@ -0,0 +1,27 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<body bgcolor="red">
    +
    +	<%@ page isErrorPage="true" %>
    +	<h1> The exception <%= exception.getMessage() %> tells me you
    +	     made a wrong choice. 
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/forward.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/forward.jsp new file mode 100644 index 0000000..8e2ceab --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/forward.jsp @@ -0,0 +1,34 @@ + + + +<% + double freeMem = Runtime.getRuntime().freeMemory(); + double totlMem = Runtime.getRuntime().totalMemory(); + double percent = freeMem/totlMem; + if (percent < 0.5) { +%> + + + +<% } else { %> + + + +<% } %> + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/forward.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/forward.jsp.html new file mode 100644 index 0000000..9f0a563 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/forward.jsp.html @@ -0,0 +1,36 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<% 
    +   double freeMem = Runtime.getRuntime().freeMemory();
    +   double totlMem = Runtime.getRuntime().totalMemory();
    +   double percent = freeMem/totlMem;
    +   if (percent < 0.5) { 
    +%>
    +
    +<jsp:forward page="one.jsp"/>
    +
    +<% } else { %>
    +
    +<jsp:forward page="two.html"/>
    +
    +<% } %>
    +
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/fwd.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/fwd.html new file mode 100644 index 0000000..e4a701e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/fwd.html @@ -0,0 +1,30 @@ + + + +Untitled Document + + + + +

    + +

    Source Code for Forward Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/one.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/one.jsp new file mode 100644 index 0000000..90297b7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/one.jsp @@ -0,0 +1,23 @@ + + + + + + +VM Memory usage < 50%. + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/one.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/one.jsp.html new file mode 100644 index 0000000..7cb77a0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/one.jsp.html @@ -0,0 +1,25 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<body bgcolor="white">
    +<font color="red">
    +
    +VM Memory usage < 50%.
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/two.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/two.html new file mode 100644 index 0000000..4bc9402 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/forward/two.html @@ -0,0 +1,23 @@ + + + + + + +VM Memory usage > 50%. + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/code.gif b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/code.gif new file mode 100644 index 0000000..93af2cd Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/code.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/execute.gif b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/execute.gif new file mode 100644 index 0000000..f64d70f Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/execute.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/read.gif b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/read.gif new file mode 100644 index 0000000..66cb4e9 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/read.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/return.gif b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/return.gif new file mode 100644 index 0000000..af4f68f Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/images/return.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/foo.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/foo.html new file mode 100644 index 0000000..11acc0e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/foo.html @@ -0,0 +1,17 @@ + +To get the current time in ms diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/foo.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/foo.jsp new file mode 100644 index 0000000..ce4101b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/foo.jsp @@ -0,0 +1,21 @@ + + + + + +<%= System.currentTimeMillis() %> diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/foo.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/foo.jsp.html new file mode 100644 index 0000000..638d41d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/foo.jsp.html @@ -0,0 +1,23 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<body bgcolor="white">
    +<font color="red">
    +
    +<%= System.currentTimeMillis() %>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/inc.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/inc.html new file mode 100644 index 0000000..d2971bb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/inc.html @@ -0,0 +1,30 @@ + + + +Untitled Document + + + + +

    + +

    Source Code for Include Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/include.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/include.jsp new file mode 100644 index 0000000..34fd6c3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/include.jsp @@ -0,0 +1,35 @@ + + + + + + + +<%@ page buffer="5kb" autoFlush="false" %> + +

    In place evaluation of another JSP which gives you the current time: + +<%@ include file="foo.jsp" %> + +

    by including the output of another JSP: + + + +:-) + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/include.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/include.jsp.html new file mode 100644 index 0000000..f45c300 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/include/include.jsp.html @@ -0,0 +1,37 @@ +

    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<body bgcolor="white">
    +
    +<font color="red">
    +
    +<%@ page buffer="5kb" autoFlush="false" %>
    +
    +<p>In place evaluation of another JSP which gives you the current time:
    +
    +<%@ include file="foo.jsp" %>
    +
    +<p> <jsp:include page="foo.html" flush="true"/> by including the output of another JSP:
    +
    +<jsp:include page="foo.jsp" flush="true"/>
    +
    +:-) 
    +
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/index.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/index.html new file mode 100644 index 0000000..e3810de --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/index.html @@ -0,0 +1,370 @@ + + + + + + + + JSP Examples + + +JSP +Samples +

    This is a collection of samples demonstrating the usage of different +parts of the Java Server Pages (JSP) specification. Both JSP 2.0 and +JSP 1.2 examples are presented below. +

    These examples will only work when these pages are being served by a +servlet engine; of course, we recommend +Tomcat. +They will not work if you are viewing these pages via a +"file://..." URL. +

    To navigate your way through the examples, the following icons will +help: +
      + + + + + + + + + + + + + + + + + + + + + +
    Execute the example
    Look at the source code for the example
    Return to this screen
    + +

    Tip: For session scoped beans to work, the cookies must be enabled. +This can be done using browser options. +
      +
    +JSP 2.0 Examples
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Expression Language
    Basic ArithmeticExecuteSource
    Basic ComparisonsExecuteSource
    Implicit ObjectsExecuteSource
    FunctionsExecuteSource

    SimpleTag Handlers and JSP Fragments
    Hello World TagExecuteSource
    Repeat TagExecuteSource
    Book ExampleExecuteSource

    Tag Files
    Hello World Tag FileExecuteSource
    Panel Tag FileExecuteSource
    Display Products ExampleExecuteSource

    New JSP XML Syntax (.jspx)
    XHTML Basic ExampleExecuteSource
    SVG (Scalable Vector Graphics)ExecuteSource

    Other JSP 2.0 Features
    <jsp:attribute> and <jsp:body>ExecuteSource
    Shuffle ExampleExecuteSource
    Attributes With Dynamic NamesExecuteSource
    JSP ConfigurationExecuteSource
    + +
    +JSP 1.2 Examples
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Numberguess ExecuteSource
    Date ExecuteSource
    SnoopExecuteSource
    ErrorPage ExecuteSource
    Carts ExecuteSource
    Checkbox ExecuteSource
    Color ExecuteSource
    Calendar ExecuteSource
    Include ExecuteSource
    Forward ExecuteSource
    Plugin ExecuteSource
    JSP-Servlet-JSP ExecuteSource
    Custom tag exampleExecuteSource
    XML syntax exampleExecuteSource
    + +
    +Tag Plugins
    + + + + + + + + + + + + + + + + + + + + +
    If  + + Execute + + + Source +
    ForEach  + + Execute + + + Source +
    Choose  + + Execute + + + Source +
    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/Functions.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/Functions.java.html new file mode 100644 index 0000000..350fce6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/Functions.java.html @@ -0,0 +1,45 @@ +

    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +package jsp2.examples.el;
    +
    +/**
    + * Defines the functions for the jsp2 example tag library.
    + * 
    + * <p>Each function is defined as a static method.</p>
    + */
    +public class Functions {
    +    public static String reverse( String text ) {
    +        return new StringBuffer( text ).reverse().toString();
    +    }
    +
    +    public static int numVowels( String text ) {
    +        String vowels = "aeiouAEIOU";
    +	int result = 0;
    +        for( int i = 0; i < text.length(); i++ ) {
    +	    if( vowels.indexOf( text.charAt( i ) ) != -1 ) {
    +	        result++;
    +	    }
    +	}
    +	return result;
    +    }
    +
    +    public static String caps( String text ) {
    +        return text.toUpperCase();
    +    }
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-arithmetic.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-arithmetic.html new file mode 100644 index 0000000..ca88b7f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-arithmetic.html @@ -0,0 +1,30 @@ + + + +View Source Code + + + + +

    + +

    Source Code for Basic Arithmetic Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-arithmetic.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-arithmetic.jsp new file mode 100644 index 0000000..e2ec74c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-arithmetic.jsp @@ -0,0 +1,88 @@ + + + + JSP 2.0 Expression Language - Basic Arithmetic + + +

    JSP 2.0 Expression Language - Basic Arithmetic

    +
    + This example illustrates basic Expression Language arithmetic. + Addition (+), subtraction (-), multiplication (*), division (/ or div), + and modulus (% or mod) are all supported. Error conditions, like + division by zero, are handled gracefully. +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    EL ExpressionResult
    \${1}${1}
    \${1 + 2}${1 + 2}
    \${1.2 + 2.3}${1.2 + 2.3}
    \${1.2E4 + 1.4}${1.2E4 + 1.4}
    \${-4 - 2}${-4 - 2}
    \${21 * 2}${21 * 2}
    \${3/4}${3/4}
    \${3 div 4}${3 div 4}
    \${3/0}${3/0}
    \${10%4}${10%4}
    \${10 mod 4}${10 mod 4}
    \${(1==2) ? 3 : 4}${(1==2) ? 3 : 4}
    +
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-arithmetic.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-arithmetic.jsp.html new file mode 100644 index 0000000..4aa05c8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-arithmetic.jsp.html @@ -0,0 +1,90 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<html>
    +  <head>
    +    <title>JSP 2.0 Expression Language - Basic Arithmetic</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Expression Language - Basic Arithmetic</h1>
    +    <hr>
    +    This example illustrates basic Expression Language arithmetic.
    +    Addition (+), subtraction (-), multiplication (*), division (/ or div), 
    +    and modulus (% or mod) are all supported.  Error conditions, like
    +    division by zero, are handled gracefully.
    +    <br>
    +    <blockquote>
    +      <code>
    +        <table border="1">
    +          <thead>
    +	    <td><b>EL Expression</b></td>
    +	    <td><b>Result</b></td>
    +	  </thead>
    +	  <tr>
    +	    <td>\${1}</td>
    +	    <td>${1}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${1 + 2}</td>
    +	    <td>${1 + 2}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${1.2 + 2.3}</td>
    +	    <td>${1.2 + 2.3}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${1.2E4 + 1.4}</td>
    +	    <td>${1.2E4 + 1.4}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${-4 - 2}</td>
    +	    <td>${-4 - 2}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${21 * 2}</td>
    +	    <td>${21 * 2}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${3/4}</td>
    +	    <td>${3/4}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${3 div 4}</td>
    +	    <td>${3 div 4}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${3/0}</td>
    +	    <td>${3/0}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${10%4}</td>
    +	    <td>${10%4}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${10 mod 4}</td>
    +	    <td>${10 mod 4}</td>
    +	  </tr>
    +    <tr>
    +      <td>\${(1==2) ? 3 : 4}</td>
    +      <td>${(1==2) ? 3 : 4}</td>
    +    </tr>
    +	</table>
    +      </code>
    +    </blockquote>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-comparisons.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-comparisons.html new file mode 100644 index 0000000..0102232 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-comparisons.html @@ -0,0 +1,30 @@ + + + +View Source Code + + + + +

    + +

    Source Code for Basic Comparisons Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-comparisons.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-comparisons.jsp new file mode 100644 index 0000000..617fdb4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-comparisons.jsp @@ -0,0 +1,116 @@ + + + + JSP 2.0 Expression Language - Basic Comparisons + + +

    JSP 2.0 Expression Language - Basic Comparisons

    +
    + This example illustrates basic Expression Language comparisons. + The following comparison operators are supported: +
      +
    • Less-than (< or lt)
    • +
    • Greater-than (> or gt)
    • +
    • Less-than-or-equal (<= or le)
    • +
    • Greater-than-or-equal (>= or ge)
    • +
    • Equal (== or eq)
    • +
    • Not Equal (!= or ne)
    • +
    +
    + Numeric + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    EL ExpressionResult
    \${1 < 2}${1 < 2}
    \${1 lt 2}${1 lt 2}
    \${1 > (4/2)}${1 > (4/2)}
    \${1 > (4/2)}${1 > (4/2)}
    \${4.0 >= 3}${4.0 >= 3}
    \${4.0 ge 3}${4.0 ge 3}
    \${4 <= 3}${4 <= 3}
    \${4 le 3}${4 le 3}
    \${100.0 == 100}${100.0 == 100}
    \${100.0 eq 100}${100.0 eq 100}
    \${(10*10) != 100}${(10*10) != 100}
    \${(10*10) ne 100}${(10*10) ne 100}
    +
    +
    + Alphabetic + + + + + + + + + + + + + + + + + + +
    EL ExpressionResult
    \${'a' < 'b'}${'a' < 'b'}
    \${'hip' > 'hit'}${'hip' > 'hit'}
    \${'4' > 3}${'4' > 3}
    +
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-comparisons.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-comparisons.jsp.html new file mode 100644 index 0000000..3cee4ae --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/basic-comparisons.jsp.html @@ -0,0 +1,118 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<html>
    +  <head>
    +    <title>JSP 2.0 Expression Language - Basic Comparisons</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Expression Language - Basic Comparisons</h1>
    +    <hr>
    +    This example illustrates basic Expression Language comparisons.
    +    The following comparison operators are supported:
    +    <ul>
    +      <li>Less-than (&lt; or lt)</li>
    +      <li>Greater-than (&gt; or gt)</li>
    +      <li>Less-than-or-equal (&lt;= or le)</li>
    +      <li>Greater-than-or-equal (&gt;= or ge)</li>
    +      <li>Equal (== or eq)</li>
    +      <li>Not Equal (!= or ne)</li>
    +    </ul>
    +    <blockquote>
    +      <u><b>Numeric</b></u>
    +      <code>
    +        <table border="1">
    +          <thead>
    +	    <td><b>EL Expression</b></td>
    +	    <td><b>Result</b></td>
    +	  </thead>
    +	  <tr>
    +	    <td>\${1 &lt; 2}</td>
    +	    <td>${1 < 2}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${1 lt 2}</td>
    +	    <td>${1 lt 2}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${1 &gt; (4/2)}</td>
    +	    <td>${1 > (4/2)}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${1 &gt; (4/2)}</td>
    +	    <td>${1 > (4/2)}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${4.0 &gt;= 3}</td>
    +	    <td>${4.0 >= 3}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${4.0 ge 3}</td>
    +	    <td>${4.0 ge 3}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${4 &lt;= 3}</td>
    +	    <td>${4 <= 3}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${4 le 3}</td>
    +	    <td>${4 le 3}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${100.0 == 100}</td>
    +	    <td>${100.0 == 100}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${100.0 eq 100}</td>
    +	    <td>${100.0 eq 100}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${(10*10) != 100}</td>
    +	    <td>${(10*10) != 100}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${(10*10) ne 100}</td>
    +	    <td>${(10*10) ne 100}</td>
    +	  </tr>
    +	</table>
    +      </code>
    +      <br>
    +      <u><b>Alphabetic</b></u>
    +      <code>
    +        <table border="1">
    +          <thead>
    +	    <td><b>EL Expression</b></td>
    +	    <td><b>Result</b></td>
    +	  </thead>
    +	  <tr>
    +	    <td>\${'a' &lt; 'b'}</td>
    +	    <td>${'a' < 'b'}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${'hip' &gt; 'hit'}</td>
    +	    <td>${'hip' > 'hit'}</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${'4' &gt; 3}</td>
    +	    <td>${'4' > 3}</td>
    +	  </tr>
    +	</table>
    +      </code>
    +    </blockquote>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/functions.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/functions.html new file mode 100644 index 0000000..0fdb080 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/functions.html @@ -0,0 +1,32 @@ + + + +View Source Code + + + + +

    + +

    Source Code for functions.jsp +

    +

    Source Code for Functions.java +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/functions.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/functions.jsp new file mode 100644 index 0000000..696432f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/functions.jsp @@ -0,0 +1,66 @@ + +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> +<%@ taglib prefix="my" uri="http://jakarta.apache.org/tomcat/jsp2-example-taglib"%> + + + + JSP 2.0 Expression Language - Functions + + +

    JSP 2.0 Expression Language - Functions

    +
    + An upgrade from the JSTL expression language, the JSP 2.0 EL also + allows for simple function invocation. Functions are defined + by tag libraries and are implemented by a Java programmer as + static methods. + +
    + Change Parameter +
    + foo = + +
    +
    + + + + + + + + + + + + + + + + + + + + + + +
    EL ExpressionResult
    \${param["foo"]}${fn:escapeXml(param["foo"])} 
    \${my:reverse(param["foo"])}${my:reverse(fn:escapeXml(param["foo"]))} 
    \${my:reverse(my:reverse(param["foo"]))}${my:reverse(my:reverse(fn:escapeXml(param["foo"])))} 
    \${my:countVowels(param["foo"])}${my:countVowels(fn:escapeXml(param["foo"]))} 
    +
    +
    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/functions.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/functions.jsp.html new file mode 100644 index 0000000..566e09a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/functions.jsp.html @@ -0,0 +1,68 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
    +<%@ taglib prefix="my" uri="http://jakarta.apache.org/tomcat/jsp2-example-taglib"%>
    +
    +<html>
    +  <head>
    +    <title>JSP 2.0 Expression Language - Functions</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Expression Language - Functions</h1>
    +    <hr>
    +    An upgrade from the JSTL expression language, the JSP 2.0 EL also
    +    allows for simple function invocation.  Functions are defined
    +    by tag libraries and are implemented by a Java programmer as 
    +    static methods.
    +
    +    <blockquote>
    +      <u><b>Change Parameter</b></u>
    +      <form action="functions.jsp" method="GET">
    +	  foo = <input type="text" name="foo" value="${fn:escapeXml(param["foo"])}">
    +          <input type="submit">
    +      </form>
    +      <br>
    +      <code>
    +        <table border="1">
    +          <thead>
    +	    <td><b>EL Expression</b></td>
    +	    <td><b>Result</b></td>
    +	  </thead>
    +	  <tr>
    +	    <td>\${param["foo"]}</td>
    +	    <td>${fn:escapeXml(param["foo"])}&nbsp;</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${my:reverse(param["foo"])}</td>
    +	    <td>${my:reverse(fn:escapeXml(param["foo"]))}&nbsp;</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${my:reverse(my:reverse(param["foo"]))}</td>
    +	    <td>${my:reverse(my:reverse(fn:escapeXml(param["foo"])))}&nbsp;</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${my:countVowels(param["foo"])}</td>
    +	    <td>${my:countVowels(fn:escapeXml(param["foo"]))}&nbsp;</td>
    +	  </tr>
    +	</table>
    +      </code>
    +    </blockquote>
    +  </body>
    +</html>
    +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/implicit-objects.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/implicit-objects.html new file mode 100644 index 0000000..2046603 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/implicit-objects.html @@ -0,0 +1,31 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for Implicit Objects Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/implicit-objects.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/implicit-objects.jsp new file mode 100644 index 0000000..8d6841a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/implicit-objects.jsp @@ -0,0 +1,89 @@ + +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> + + + + JSP 2.0 Expression Language - Implicit Objects + + +

    JSP 2.0 Expression Language - Implicit Objects

    +
    + This example illustrates some of the implicit objects available + in the Expression Lanaguage. The following implicit objects are + available (not all illustrated here): +
      +
    • pageContext - the PageContext object
    • +
    • pageScope - a Map that maps page-scoped attribute names to + their values
    • +
    • requestScope - a Map that maps request-scoped attribute names + to their values
    • +
    • sessionScope - a Map that maps session-scoped attribute names + to their values
    • +
    • applicationScope - a Map that maps application-scoped attribute + names to their values
    • +
    • param - a Map that maps parameter names to a single String + parameter value
    • +
    • paramValues - a Map that maps parameter names to a String[] of + all values for that parameter
    • +
    • header - a Map that maps header names to a single String + header value
    • +
    • headerValues - a Map that maps header names to a String[] of + all values for that header
    • +
    • initParam - a Map that maps context initialization parameter + names to their String parameter value
    • +
    • cookie - a Map that maps cookie names to a single Cookie object.
    • +
    + +
    + Change Parameter +
    + foo = + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    EL ExpressionResult
    \${param.foo}${fn:escapeXml(param["foo"])} 
    \${param["foo"]}${fn:escapeXml(param["foo"])} 
    \${header["host"]}${fn:escapeXml(header["host"])} 
    \${header["accept"]}${fn:escapeXml(header["accept"])} 
    \${header["user-agent"]}${fn:escapeXml(header["user-agent"])} 
    +
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/implicit-objects.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/implicit-objects.jsp.html new file mode 100644 index 0000000..a2d9bdc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/el/implicit-objects.jsp.html @@ -0,0 +1,91 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
    +
    +<html>
    +  <head>
    +    <title>JSP 2.0 Expression Language - Implicit Objects</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Expression Language - Implicit Objects</h1>
    +    <hr>
    +    This example illustrates some of the implicit objects available 
    +    in the Expression Lanaguage.  The following implicit objects are 
    +    available (not all illustrated here):
    +    <ul>
    +      <li>pageContext - the PageContext object</li>
    +      <li>pageScope - a Map that maps page-scoped attribute names to 
    +          their values</li>
    +      <li>requestScope - a Map that maps request-scoped attribute names 
    +          to their values</li>
    +      <li>sessionScope - a Map that maps session-scoped attribute names 
    +          to their values</li>
    +      <li>applicationScope - a Map that maps application-scoped attribute 
    +          names to their values</li>
    +      <li>param - a Map that maps parameter names to a single String 
    +          parameter value</li>
    +      <li>paramValues - a Map that maps parameter names to a String[] of 
    +          all values for that parameter</li>
    +      <li>header - a Map that maps header names to a single String 
    +          header value</li>
    +      <li>headerValues - a Map that maps header names to a String[] of 
    +          all values for that header</li>
    +      <li>initParam - a Map that maps context initialization parameter 
    +          names to their String parameter value</li>
    +      <li>cookie - a Map that maps cookie names to a single Cookie object.</li>
    +    </ul>
    +
    +    <blockquote>
    +      <u><b>Change Parameter</b></u>
    +      <form action="implicit-objects.jsp" method="GET">
    +	  foo = <input type="text" name="foo" value="${fn:escapeXml(param["foo"])}">
    +          <input type="submit">
    +      </form>
    +      <br>
    +      <code>
    +        <table border="1">
    +          <thead>
    +	    <td><b>EL Expression</b></td>
    +	    <td><b>Result</b></td>
    +	  </thead>
    +	  <tr>
    +	    <td>\${param.foo}</td>
    +	    <td>${fn:escapeXml(param["foo"])}&nbsp;</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${param["foo"]}</td>
    +	    <td>${fn:escapeXml(param["foo"])}&nbsp;</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${header["host"]}</td>
    +	    <td>${fn:escapeXml(header["host"])}&nbsp;</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${header["accept"]}</td>
    +	    <td>${fn:escapeXml(header["accept"])}&nbsp;</td>
    +	  </tr>
    +	  <tr>
    +	    <td>\${header["user-agent"]}</td>
    +	    <td>${fn:escapeXml(header["user-agent"])}&nbsp;</td>
    +	  </tr>
    +	</table>
    +      </code>
    +    </blockquote>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/FooBean.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/FooBean.java.html new file mode 100644 index 0000000..0b15181 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/FooBean.java.html @@ -0,0 +1,38 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +
    +package jsp2.examples;
    +
    +public class FooBean {
    +    private String bar;
    +    
    +    public FooBean() {
    +        bar = "Initial value";
    +    }
    +    
    +    public String getBar() {
    +        return this.bar;
    +    }
    +    
    +    public void setBar(String bar) {
    +        this.bar = bar;
    +    }
    +    
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/HelloWorldSimpleTag.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/HelloWorldSimpleTag.java.html new file mode 100644 index 0000000..c409839 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/HelloWorldSimpleTag.java.html @@ -0,0 +1,34 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +
    +package jsp2.examples.simpletag;
    +
    +import javax.servlet.jsp.JspException;
    +import javax.servlet.jsp.tagext.SimpleTagSupport;
    +import java.io.IOException;
    +
    +/**
    + * SimpleTag handler that prints "Hello, world!"
    + */
    +public class HelloWorldSimpleTag extends SimpleTagSupport {
    +    public void doTag() throws JspException, IOException {
    +	getJspContext().getOut().write( "Hello, world!" );
    +    }
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/ShuffleSimpleTag.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/ShuffleSimpleTag.java.html new file mode 100644 index 0000000..1b66d06 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/ShuffleSimpleTag.java.html @@ -0,0 +1,83 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +
    +package jsp2.examples.simpletag;
    +
    +import javax.servlet.jsp.JspException;
    +import javax.servlet.jsp.tagext.JspFragment;
    +import javax.servlet.jsp.tagext.SimpleTagSupport;
    +import java.io.IOException;
    +
    +/**
    + * SimpleTag handler that accepts takes three attributes of type
    + * JspFragment and invokes then in a random order.
    + */
    +public class ShuffleSimpleTag extends SimpleTagSupport {
    +    private JspFragment fragment1;
    +    private JspFragment fragment2;
    +    private JspFragment fragment3;
    +
    +    public void doTag() throws JspException, IOException {
    +        switch( (int)(Math.random() * 6) ) {
    +            case 0:
    +                fragment1.invoke( null );
    +                fragment2.invoke( null );
    +                fragment3.invoke( null );
    +                break;
    +            case 1:
    +                fragment1.invoke( null );
    +                fragment3.invoke( null );
    +                fragment2.invoke( null );
    +                break;
    +            case 2:
    +                fragment2.invoke( null );
    +                fragment1.invoke( null );
    +                fragment3.invoke( null );
    +                break;
    +            case 3:
    +                fragment2.invoke( null );
    +                fragment3.invoke( null );
    +                fragment1.invoke( null );
    +                break;
    +            case 4:
    +                fragment3.invoke( null );
    +                fragment1.invoke( null );
    +                fragment2.invoke( null );
    +                break;
    +            case 5:
    +                fragment3.invoke( null );
    +                fragment2.invoke( null );
    +                fragment1.invoke( null );
    +                break;
    +        }
    +    }
    +
    +    public void setFragment1( JspFragment fragment1 ) {
    +        this.fragment1 = fragment1;
    +    }
    +    
    +    public void setFragment2( JspFragment fragment2 ) {
    +        this.fragment2 = fragment2;
    +    }
    +    
    +    public void setFragment3( JspFragment fragment3 ) {
    +        this.fragment3 = fragment3;
    +    }
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/TileSimpleTag.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/TileSimpleTag.java.html new file mode 100644 index 0000000..4453222 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/TileSimpleTag.java.html @@ -0,0 +1,48 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +
    +package jsp2.examples.simpletag;
    +
    +import javax.servlet.jsp.JspException;
    +import javax.servlet.jsp.tagext.SimpleTagSupport;
    +import java.io.IOException;
    +
    +/**
    + * Displays a tile as a single cell in a table.
    + */
    +public class TileSimpleTag extends SimpleTagSupport {
    +    private String color;
    +    private String label;
    +
    +    public void doTag() throws JspException, IOException {
    +	getJspContext().getOut().write( 
    +	    "<td width=\"32\" height=\"32\" bgcolor=\"" + this.color + 
    +	    "\"><font color=\"#ffffff\"><center>" + this.label + 
    +                "</center></font></td>" );
    +    }
    +
    +    public void setColor( String color ) {
    +        this.color = color;
    +    }
    +    
    +    public void setLabel( String label ) {
    +        this.label = label;
    +    }
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/jspattribute.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/jspattribute.html new file mode 100644 index 0000000..b949da9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/jspattribute.html @@ -0,0 +1,37 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for jspattribute.jsp +

    + +

    Source Code for HelloWorldSimpleTag.java +

    + +

    Source Code for FooBean.java +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/jspattribute.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/jspattribute.jsp new file mode 100644 index 0000000..f1bfe4c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/jspattribute.jsp @@ -0,0 +1,46 @@ + +<%@ taglib prefix="my" uri="http://jakarta.apache.org/tomcat/jsp2-example-taglib"%> + + + + JSP 2.0 Examples - jsp:attribute and jsp:body + + +

    JSP 2.0 Examples - jsp:attribute and jsp:body

    +
    +

    The new <jsp:attribute> and <jsp:body> + standard actions can be used to specify the value of any standard + action or custom action attribute.

    +

    This example uses the <jsp:attribute> + standard action to use the output of a custom action invocation + (one that simply outputs "Hello, World!") to set the value of a + bean property. This would normally require an intermediary + step, such as using JSTL's <c:set> action.

    +
    + + Bean created! Setting foo.bar...
    + + + + + +
    +
    + Result: ${foo.bar} + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/jspattribute.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/jspattribute.jsp.html new file mode 100644 index 0000000..3adcb68 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/jspattribute.jsp.html @@ -0,0 +1,48 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="my" uri="http://jakarta.apache.org/tomcat/jsp2-example-taglib"%>
    +
    +<html>
    +  <head>
    +    <title>JSP 2.0 Examples - jsp:attribute and jsp:body</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Examples - jsp:attribute and jsp:body</h1>
    +    <hr>
    +    <p>The new &lt;jsp:attribute&gt; and &lt;jsp:body&gt; 
    +    standard actions can be used to specify the value of any standard
    +    action or custom action attribute.</p>
    +    <p>This example uses the &lt;jsp:attribute&gt;
    +    standard action to use the output of a custom action invocation
    +    (one that simply outputs "Hello, World!") to set the value of a
    +    bean property.  This would normally require an intermediary
    +    step, such as using JSTL's &lt;c:set&gt; action.</p>
    +    <br>
    +    <jsp:useBean id="foo" class="jsp2.examples.FooBean">
    +      Bean created!  Setting foo.bar...<br>
    +      <jsp:setProperty name="foo" property="bar">
    +        <jsp:attribute name="value">
    +	  <my:helloWorld/>
    +        </jsp:attribute>
    +      </jsp:setProperty>
    +    </jsp:useBean>
    +    <br>
    +    Result: ${foo.bar}
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/shuffle.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/shuffle.html new file mode 100644 index 0000000..b7a4cb6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/shuffle.html @@ -0,0 +1,37 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for shuffle.jsp +

    + +

    Source Code for ShuffleSimpleTag.java +

    + +

    Source Code for TileSimpleTag.java +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/shuffle.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/shuffle.jsp new file mode 100644 index 0000000..1e93ca6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/shuffle.jsp @@ -0,0 +1,90 @@ + +<%@ taglib prefix="my" uri="http://jakarta.apache.org/tomcat/jsp2-example-taglib"%> + + + + JSP 2.0 Examples - Shuffle Example + + +

    JSP 2.0 Examples - Shuffle Example

    +
    +

    Try reloading the page a few times. Both the rows and the columns + are shuffled and appear different each time.

    +

    Here's how the code works. The SimpleTag handler called + <my:shuffle> accepts three attributes. Each attribute is a + JSP Fragment, meaning it is a fragment of JSP code that can be + dynamically executed by the shuffle tag handler on demand. The + shuffle tag handler executes the three fragments in a random order. + To shuffle both the rows and the columns, the shuffle tag is used + with itself as a parameter.

    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/shuffle.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/shuffle.jsp.html new file mode 100644 index 0000000..adb12aa --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspattribute/shuffle.jsp.html @@ -0,0 +1,92 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="my" uri="http://jakarta.apache.org/tomcat/jsp2-example-taglib"%>
    +
    +<html>
    +  <head>
    +    <title>JSP 2.0 Examples - Shuffle Example</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Examples - Shuffle Example</h1>
    +    <hr>
    +    <p>Try reloading the page a few times.  Both the rows and the columns
    +    are shuffled and appear different each time.</p>
    +    <p>Here's how the code works.  The SimpleTag handler called 
    +    &lt;my:shuffle&gt; accepts three attributes.  Each attribute is a 
    +    JSP Fragment, meaning it is a fragment of JSP code that can be
    +    dynamically executed by the shuffle tag handler on demand.  The 
    +    shuffle tag handler executes the three fragments in a random order.
    +    To shuffle both the rows and the columns, the shuffle tag is used
    +    with itself as a parameter.</p>
    +    <hr>
    +    <blockquote>
    +     <font color="#ffffff">
    +      <table>
    +        <my:shuffle>
    +          <jsp:attribute name="fragment1">
    +            <tr>
    +              <my:shuffle>
    +                <jsp:attribute name="fragment1">
    +                  <my:tile color="#ff0000" label="A"/>
    +                </jsp:attribute>
    +                <jsp:attribute name="fragment2">
    +                  <my:tile color="#00ff00" label="B"/>
    +                </jsp:attribute>
    +                <jsp:attribute name="fragment3">
    +                  <my:tile color="#0000ff" label="C"/>
    +                </jsp:attribute>
    +              </my:shuffle>
    +            </tr>
    +          </jsp:attribute>
    +          <jsp:attribute name="fragment2">
    +            <tr>
    +              <my:shuffle>
    +                <jsp:attribute name="fragment1">
    +                  <my:tile color="#ff0000" label="1"/>
    +                </jsp:attribute>
    +                <jsp:attribute name="fragment2">
    +                  <my:tile color="#00ff00" label="2"/>
    +                </jsp:attribute>
    +                <jsp:attribute name="fragment3">
    +                  <my:tile color="#0000ff" label="3"/>
    +                </jsp:attribute>
    +              </my:shuffle>
    +            </tr>
    +          </jsp:attribute>
    +          <jsp:attribute name="fragment3">
    +            <tr>
    +              <my:shuffle>
    +                <jsp:attribute name="fragment1">
    +                  <my:tile color="#ff0000" label="!"/>
    +                </jsp:attribute>
    +                <jsp:attribute name="fragment2">
    +                  <my:tile color="#00ff00" label="@"/>
    +                </jsp:attribute>
    +                <jsp:attribute name="fragment3">
    +                  <my:tile color="#0000ff" label="#"/>
    +                </jsp:attribute>
    +              </my:shuffle>
    +            </tr>
    +          </jsp:attribute>
    +        </my:shuffle>
    +      </table>
    +     </font>
    +    </blockquote>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/basic.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/basic.html new file mode 100644 index 0000000..2e58dff --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/basic.html @@ -0,0 +1,31 @@ + + + +View Source Code + + + + +

    + +

    Source Code for XHTML Basic Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/basic.jspx b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/basic.jspx new file mode 100644 index 0000000..75394fc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/basic.jspx @@ -0,0 +1,30 @@ + + + + JSPX - XHTML Basic Example + + +

    JSPX - XHTML Basic Example

    +
    + This example illustrates how to use JSPX to produce an XHTML basic + document suitable for use with mobile phones, televisions, + PDAs, vending machines, pagers, car navigation systems, + mobile game machines, digital book readers, smart watches, etc. +

    + JSPX lets you create dynamic documents in a pure XML syntax compatible + with existing XML tools. The XML syntax in JSP 1.2 was awkward and + required &lt;jsp:root&gt; to be the root element of the document. + This is no longer the case in JSP 2.0. +

    + This particular example uses a tag file to produce the DOCTYPE and + namespace declarations to make the output of this page a valid XHTML + Basic document. +

    + Just to prove this is live, here's some dynamic content: + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/basic.jspx.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/basic.jspx.html new file mode 100644 index 0000000..7983a63 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/basic.jspx.html @@ -0,0 +1,32 @@ +

    +<tags:xhtmlbasic xmlns:tags="urn:jsptagdir:/WEB-INF/tags"
    +                 xmlns:jsp="http://java.sun.com/JSP/Page"
    +                 xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
    +		 xmlns="http://www.w3.org/1999/xhtml">
    +  <jsp:directive.page contentType="text/html" />
    +  <head>
    +    <title>JSPX - XHTML Basic Example</title>
    +  </head>
    +  <body>
    +    <h1>JSPX - XHTML Basic Example</h1>
    +    <hr/>
    +    This example illustrates how to use JSPX to produce an XHTML basic
    +    document suitable for use with mobile phones, televisions, 
    +    PDAs, vending machines, pagers, car navigation systems,
    +    mobile game machines, digital book readers, smart watches, etc.
    +    <p/>
    +    JSPX lets you create dynamic documents in a pure XML syntax compatible
    +    with existing XML tools.  The XML syntax in JSP 1.2 was awkward and
    +    required &amp;lt;jsp:root&amp;gt; to be the root element of the document.
    +    This is no longer the case in JSP 2.0.
    +    <p/>
    +    This particular example uses a tag file to produce the DOCTYPE and
    +    namespace declarations to make the output of this page a valid XHTML
    +    Basic document.
    +    <p/>
    +    Just to prove this is live, here's some dynamic content:
    +    <jsp:useBean id="now" class="java.util.Date" />
    +    <fmt:formatDate value="${now}" pattern="MMMM d, yyyy, H:mm:ss"/>
    +  </body>
    +</tags:xhtmlbasic>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/svgexample.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/svgexample.html new file mode 100644 index 0000000..795a727 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/svgexample.html @@ -0,0 +1,52 @@ + + + + JSP 2.0 SVG Example + + +

    JSP 2.0 SVG Example

    +
    + This example uses JSP 2.0's new, simplified JSPX syntax to render a + Scalable Vector Graphics (SVG) document. When you view the source, + notice the lack of a <jsp:root> element! The text to be rendered + can be modified by changing the value of the name parameter. +

    + SVG has many potential uses, such as searchable images, or images + customized with the name of your site's visitor (e.g. a "Susan's Store" + tab image). JSPX is a natural fit for generating dynamic XML content + such as SVG. +

    + To execute this example, follow these steps: +

      +
    1. Download Batik, + or any other SVG viewer.
    2. +
    3. Copy the following URL: + + http://localhost:8080/examples/jsp/jsp2/jspx/textRotate.jspx?name=JSPX +
    4. +
    5. Paste the URL into Batik's Location field and press Enter
    6. +
    7. Customize by changing the name=JSPX parameter
    8. +
    +
    + The following is a screenshot of the resulting image, for those that + don't have an SVG viewer: +
    + +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.html new file mode 100644 index 0000000..e54588f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.html @@ -0,0 +1,32 @@ + + + +View Source Code + + + + +

    + +

    Source Code for SVG (Scalable Vector Graphics) +Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.jpg b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.jpg new file mode 100644 index 0000000..9e98736 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.jpg differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.jspx b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.jspx new file mode 100644 index 0000000..1d2c3e3 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.jspx @@ -0,0 +1,36 @@ + + + + JSP 2.0 JSPX + + + + + JSP 2.0 XML Syntax (.jspx) Demo + + Try changing the name parameter! + + + + <g opacity="0.95" transform="scale(1.05) rotate(15)"> + + ${name} + + + </g> + + ${name} + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.jspx.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.jspx.html new file mode 100644 index 0000000..1a80bf9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/jspx/textRotate.jspx.html @@ -0,0 +1,38 @@ +
    +<!-- 
    +  - This example is based off the textRotate.svg example that comes
    +  - with Batik.  The original example was written by Bill Haneman.
    +  - This version by Mark Roth.
    +  -->
    +<svg xmlns="http://www.w3.org/2000/svg"
    +     width="450" height="500" viewBox="0 0 450 500"
    +     xmlns:c="http://java.sun.com/jsp/jstl/core"
    +     xmlns:fn="http://java.sun.com/jsp/jstl/functions"
    +     xmlns:jsp="http://java.sun.com/JSP/Page">
    +  <jsp:directive.page contentType="image/svg+xml" />
    +  <title>JSP 2.0 JSPX</title>
    +  <!-- select name parameter, or default to JSPX -->
    +  <c:set var="name" value='${empty fn:escapeXml(param["name"]) ? "JSPX" : fn:escapeXml(param["name"])}'/>
    +  <g id="testContent">
    +    <text class="title" x="50%" y="10%" font-size="15" text-anchor="middle" >
    +            JSP 2.0 XML Syntax (.jspx) Demo</text>
    +    <text class="title" x="50%" y="15%" font-size="15" text-anchor="middle" >
    +            Try changing the name parameter!</text>
    +    <g opacity="1.0" transform="translate(225, 250)" id="rotatedText">
    +      <c:forEach var="i" begin="1" end="24">
    +        <jsp:text>
    +          <![CDATA[<g opacity="0.95" transform="scale(1.05) rotate(15)">]]>
    +        </jsp:text>
    +        <text x="0" y="0" transform="scale(1.6, 1.6)" fill="DarkSlateBlue" 
    +              text-anchor="middle" font-size="40" font-family="Serif" 
    +              id="words">${name}</text>
    +      </c:forEach>
    +      <c:forEach var="i" begin="1" end="24">
    +        <jsp:text><![CDATA[</g>]]></jsp:text>
    +      </c:forEach>
    +      <text style="font-size:75;font-family:Serif;fill:white" 
    +            text-anchor="middle">${name}</text>
    +    </g>
    +  </g>
    +</svg>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/EchoAttributesTag.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/EchoAttributesTag.java.html new file mode 100644 index 0000000..4e62250 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/EchoAttributesTag.java.html @@ -0,0 +1,56 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +
    +package jsp2.examples.simpletag;
    +
    +import javax.servlet.jsp.JspException;
    +import javax.servlet.jsp.JspWriter;
    +import javax.servlet.jsp.tagext.SimpleTagSupport;
    +import javax.servlet.jsp.tagext.DynamicAttributes;
    +import java.util.ArrayList;
    +import java.io.IOException;
    +
    +/**
    + * SimpleTag handler that echoes all its attributes 
    + */
    +public class EchoAttributesTag 
    +    extends SimpleTagSupport
    +    implements DynamicAttributes
    +{
    +    private ArrayList keys = new ArrayList();
    +    private ArrayList values = new ArrayList();
    +
    +    public void doTag() throws JspException, IOException {
    +	JspWriter out = getJspContext().getOut();
    +	for( int i = 0; i < keys.size(); i++ ) {
    +	    String key = (String)keys.get( i );
    +	    Object value = values.get( i );
    +	    out.println( "<li>" + key + " = " + value + "</li>" );
    +        }
    +    }
    +
    +    public void setDynamicAttribute( String uri, String localName, 
    +	Object value ) 
    +	throws JspException
    +    {
    +	keys.add( localName );
    +	values.add( value );
    +    }
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/coda.jspf b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/coda.jspf new file mode 100644 index 0000000..edbf9e9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/coda.jspf @@ -0,0 +1,5 @@ +
    +
    +This banner included with <include-coda> +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/coda.jspf.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/coda.jspf.html new file mode 100644 index 0000000..75c1285 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/coda.jspf.html @@ -0,0 +1,7 @@ +
    +<hr>
    +<center>
    +This banner included with &lt;include-coda&gt;
    +</center>
    +<hr>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/config.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/config.html new file mode 100644 index 0000000..ebd2f4c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/config.html @@ -0,0 +1,35 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for config.jsp +

    +

    Source Code for prelude.jspf +

    +

    Source Code for coda.jspf +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/config.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/config.jsp new file mode 100644 index 0000000..54cfd5e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/config.jsp @@ -0,0 +1,32 @@ + +<%@ taglib prefix="my" uri="http://jakarta.apache.org/tomcat/jsp2-example-taglib"%> +

    JSP 2.0 Examples - JSP Configuration

    +
    +

    Using a <jsp-property-group> element in the web.xml + deployment descriptor, this JSP page has been configured in the + following ways:

    +
      +
    • Uses <include-prelude> to include the top banner.
    • +
    • Uses <include-coda> to include the bottom banner.
    • +
    • Uses <scripting-invalid> true to disable + <% scripting %> elements
    • +
    • Uses <el-ignored> true to disable ${EL} elements
    • +
    • Uses <page-encoding> ISO-8859-1 to set the page encoding (though this is the default anyway)
    • +
    + There are various other configuration options that can be used. + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/config.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/config.jsp.html new file mode 100644 index 0000000..ff7d481 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/config.jsp.html @@ -0,0 +1,34 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="my" uri="http://jakarta.apache.org/tomcat/jsp2-example-taglib"%>
    +    <h1>JSP 2.0 Examples - JSP Configuration</h1>
    +    <hr>
    +    <p>Using a &lt;jsp-property-group&gt; element in the web.xml 
    +    deployment descriptor, this JSP page has been configured in the
    +    following ways:</p>
    +    <ul>
    +      <li>Uses &lt;include-prelude&gt; to include the top banner.</li>
    +      <li>Uses &lt;include-coda&gt; to include the bottom banner.</li>
    +      <li>Uses &lt;scripting-invalid&gt; true to disable 
    +	  &lt;% scripting %&gt; elements</li>
    +      <li>Uses &lt;el-ignored&gt; true to disable ${EL} elements</li>
    +      <li>Uses &lt;page-encoding&gt; ISO-8859-1 to set the page encoding (though this is the default anyway)</li>
    +    </ul>
    +    There are various other configuration options that can be used.
    +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/dynamicattrs.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/dynamicattrs.html new file mode 100644 index 0000000..a02a987 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/dynamicattrs.html @@ -0,0 +1,33 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for dynamicattrs.jsp +

    +

    Source Code for EchoAttributesTag.java +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/dynamicattrs.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/dynamicattrs.jsp new file mode 100644 index 0000000..f56dc3f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/dynamicattrs.jsp @@ -0,0 +1,44 @@ + +<%@ taglib prefix="my" uri="http://jakarta.apache.org/tomcat/jsp2-example-taglib"%> + + + JSP 2.0 Examples - Dynamic Attributes + + +

    JSP 2.0 Examples - Dynamic Attributes

    +
    +

    This JSP page invokes a custom tag that accepts a dynamic set + of attributes. The tag echoes the name and value of all attributes + passed to it.

    +
    +

    Invocation 1 (six attributes)

    +
      + +
    +

    Invocation 2 (zero attributes)

    +
      + +
    +

    Invocation 3 (three attributes)

    +
      + +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/dynamicattrs.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/dynamicattrs.jsp.html new file mode 100644 index 0000000..7b80eb9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/dynamicattrs.jsp.html @@ -0,0 +1,46 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="my" uri="http://jakarta.apache.org/tomcat/jsp2-example-taglib"%>
    +<html>
    +  <head>
    +    <title>JSP 2.0 Examples - Dynamic Attributes</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Examples - Dynamic Attributes</h1>
    +    <hr>
    +    <p>This JSP page invokes a custom tag that accepts a dynamic set 
    +    of attributes.  The tag echoes the name and value of all attributes
    +    passed to it.</p>
    +    <hr>
    +    <h2>Invocation 1 (six attributes)</h2>
    +    <ul>
    +      <my:echoAttributes x="1" y="2" z="3" r="red" g="green" b="blue"/>
    +    </ul>
    +    <h2>Invocation 2 (zero attributes)</h2>
    +    <ul>
    +      <my:echoAttributes/>
    +    </ul>
    +    <h2>Invocation 3 (three attributes)</h2>
    +    <ul>
    +      <my:echoAttributes dogName="Scruffy" 
    +	   		 catName="Fluffy" 
    +			 blowfishName="Puffy"/>
    +    </ul>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/prelude.jspf b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/prelude.jspf new file mode 100644 index 0000000..1ff2be7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/prelude.jspf @@ -0,0 +1,5 @@ +
    +
    +This banner included with <include-prelude> +
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/prelude.jspf.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/prelude.jspf.html new file mode 100644 index 0000000..5280c8b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/misc/prelude.jspf.html @@ -0,0 +1,7 @@ +
    +<hr>
    +<center>
    +This banner included with &lt;include-prelude&gt;
    +</center>
    +<hr>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/BookBean.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/BookBean.java.html new file mode 100644 index 0000000..a977a8c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/BookBean.java.html @@ -0,0 +1,46 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +
    +package jsp2.examples;
    +
    +public class BookBean {
    +    private String title;
    +    private String author;
    +    private String isbn;
    +    
    +    public BookBean( String title, String author, String isbn ) {
    +        this.title = title;
    +        this.author = author;
    +        this.isbn = isbn;
    +    }
    +
    +    public String getTitle() {
    +        return this.title;
    +    }
    +    
    +    public String getAuthor() {
    +        return this.author;
    +    }
    +    
    +    public String getIsbn() {
    +        return this.isbn;
    +    }
    +    
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/FindBookSimpleTag.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/FindBookSimpleTag.java.html new file mode 100644 index 0000000..d010f0a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/FindBookSimpleTag.java.html @@ -0,0 +1,46 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +
    +package jsp2.examples.simpletag;
    +
    +import javax.servlet.jsp.JspException;
    +import javax.servlet.jsp.tagext.SimpleTagSupport;
    +import jsp2.examples.BookBean;
    +
    +/**
    + * SimpleTag handler that pretends to search for a book, and stores
    + * the result in a scoped variable.
    + */
    +public class FindBookSimpleTag extends SimpleTagSupport {
    +    private String var;
    +    
    +    private static final String BOOK_TITLE = "The Lord of the Rings";
    +    private static final String BOOK_AUTHOR = "J. R. R. Tolkein";
    +    private static final String BOOK_ISBN = "0618002251";
    +
    +    public void doTag() throws JspException {
    +        BookBean book = new BookBean( BOOK_TITLE, BOOK_AUTHOR, BOOK_ISBN );
    +        getJspContext().setAttribute( this.var, book );
    +    }
    +
    +    public void setVar( String var ) {
    +	this.var = var;
    +    }
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/Functions.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/Functions.java.html new file mode 100644 index 0000000..350fce6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/Functions.java.html @@ -0,0 +1,45 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +package jsp2.examples.el;
    +
    +/**
    + * Defines the functions for the jsp2 example tag library.
    + * 
    + * <p>Each function is defined as a static method.</p>
    + */
    +public class Functions {
    +    public static String reverse( String text ) {
    +        return new StringBuffer( text ).reverse().toString();
    +    }
    +
    +    public static int numVowels( String text ) {
    +        String vowels = "aeiouAEIOU";
    +	int result = 0;
    +        for( int i = 0; i < text.length(); i++ ) {
    +	    if( vowels.indexOf( text.charAt( i ) ) != -1 ) {
    +	        result++;
    +	    }
    +	}
    +	return result;
    +    }
    +
    +    public static String caps( String text ) {
    +        return text.toUpperCase();
    +    }
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/HelloWorldSimpleTag.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/HelloWorldSimpleTag.java.html new file mode 100644 index 0000000..c409839 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/HelloWorldSimpleTag.java.html @@ -0,0 +1,34 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +
    +package jsp2.examples.simpletag;
    +
    +import javax.servlet.jsp.JspException;
    +import javax.servlet.jsp.tagext.SimpleTagSupport;
    +import java.io.IOException;
    +
    +/**
    + * SimpleTag handler that prints "Hello, world!"
    + */
    +public class HelloWorldSimpleTag extends SimpleTagSupport {
    +    public void doTag() throws JspException, IOException {
    +	getJspContext().getOut().write( "Hello, world!" );
    +    }
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/RepeatSimpleTag.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/RepeatSimpleTag.java.html new file mode 100644 index 0000000..2ad96eb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/RepeatSimpleTag.java.html @@ -0,0 +1,44 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +
    +
    +package jsp2.examples.simpletag;
    +
    +import javax.servlet.jsp.JspException;
    +import javax.servlet.jsp.tagext.SimpleTagSupport;
    +import java.io.IOException;
    +
    +/**
    + * SimpleTag handler that accepts a num attribute and 
    + * invokes its body 'num' times.
    + */
    +public class RepeatSimpleTag extends SimpleTagSupport {
    +    private int num;
    +
    +    public void doTag() throws JspException, IOException {
    +        for (int i=0; i<num; i++) {
    +            getJspContext().setAttribute("count", String.valueOf( i + 1 ) );
    +	    getJspBody().invoke(null);
    +        }
    +    }
    +
    +    public void setNum(int num) {
    +	this.num = num;
    +    }
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/book.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/book.html new file mode 100644 index 0000000..62cf284 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/book.html @@ -0,0 +1,37 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for the Book Example JSP +

    +

    Source Code for the FindBook SimpleTag Handler +

    +

    Source Code for BookBean +

    +

    Source Code for the EL Functions +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/book.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/book.jsp new file mode 100644 index 0000000..7a9a064 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/book.jsp @@ -0,0 +1,55 @@ + +<%@ taglib prefix="my" uri="/WEB-INF/jsp2/jsp2-example-taglib.tld" %> + + + JSP 2.0 Examples - Book SimpleTag Handler + + +

    JSP 2.0 Examples - Book SimpleTag Handler

    +
    +

    Illustrates a semi-realistic use of SimpleTag and the Expression + Language. First, a <my:findBook> tag is invoked to populate + the page context with a BookBean. Then, the books fields are printed + in all caps.

    +
    + Result:
    + + + + + + + + + + + + + + + + + + + + + + +
    FieldValueCapitalized
    Title${book.title}${my:caps(book.title)}
    Author${book.author}${my:caps(book.author)}
    ISBN${book.isbn}${my:caps(book.isbn)}
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/book.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/book.jsp.html new file mode 100644 index 0000000..7ecfe3b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/book.jsp.html @@ -0,0 +1,57 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="my" uri="/WEB-INF/jsp2/jsp2-example-taglib.tld" %>
    +<html>
    +  <head>
    +    <title>JSP 2.0 Examples - Book SimpleTag Handler</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Examples - Book SimpleTag Handler</h1>
    +    <hr>
    +    <p>Illustrates a semi-realistic use of SimpleTag and the Expression 
    +    Language.  First, a &lt;my:findBook&gt; tag is invoked to populate 
    +    the page context with a BookBean.  Then, the books fields are printed 
    +    in all caps.</p>
    +    <br>
    +    <b><u>Result:</u></b><br>
    +    <my:findBook var="book"/>
    +    <table border="1">
    +        <thead>
    +	    <td><b>Field</b></td>
    +	    <td><b>Value</b></td>
    +	    <td><b>Capitalized</b></td>
    +	</thead>
    +	<tr>
    +	    <td>Title</td>
    +	    <td>${book.title}</td>
    +	    <td>${my:caps(book.title)}</td>
    +	</tr>
    +	<tr>
    +	    <td>Author</td>
    +	    <td>${book.author}</td>
    +	    <td>${my:caps(book.author)}</td>
    +	</tr>
    +	<tr>
    +	    <td>ISBN</td>
    +	    <td>${book.isbn}</td>
    +	    <td>${my:caps(book.isbn)}</td>
    +	</tr>
    +    </table>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/hello.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/hello.html new file mode 100644 index 0000000..1e7dfcb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/hello.html @@ -0,0 +1,33 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for the Hello World Tag Example JSP +

    +

    Source Code for the Hello World SimpleTag Handler +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/hello.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/hello.jsp new file mode 100644 index 0000000..4222b2e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/hello.jsp @@ -0,0 +1,31 @@ + +<%@ taglib prefix="mytag" uri="/WEB-INF/jsp2/jsp2-example-taglib.tld" %> + + + JSP 2.0 Examples - Hello World SimpleTag Handler + + +

    JSP 2.0 Examples - Hello World SimpleTag Handler

    +
    +

    This tag handler simply echos "Hello, World!" It's an example of + a very basic SimpleTag handler with no body.

    +
    + Result: + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/hello.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/hello.jsp.html new file mode 100644 index 0000000..c363802 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/hello.jsp.html @@ -0,0 +1,33 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="mytag" uri="/WEB-INF/jsp2/jsp2-example-taglib.tld" %>
    +<html>
    +  <head>
    +    <title>JSP 2.0 Examples - Hello World SimpleTag Handler</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Examples - Hello World SimpleTag Handler</h1>
    +    <hr>
    +    <p>This tag handler simply echos "Hello, World!"  It's an example of
    +    a very basic SimpleTag handler with no body.</p>
    +    <br>
    +    <b><u>Result:</u></b>
    +    <mytag:helloWorld/>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/repeat.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/repeat.html new file mode 100644 index 0000000..18ff5ed --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/repeat.html @@ -0,0 +1,33 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for the Repeat Tag Example JSP +

    +

    Source Code for the Repeat SimpleTag Handler +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/repeat.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/repeat.jsp new file mode 100644 index 0000000..1f3d008 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/repeat.jsp @@ -0,0 +1,39 @@ + +<%@ taglib prefix="mytag" uri="/WEB-INF/jsp2/jsp2-example-taglib.tld" %> + + + JSP 2.0 Examples - Repeat SimpleTag Handler + + +

    JSP 2.0 Examples - Repeat SimpleTag Handler

    +
    +

    This tag handler accepts a "num" parameter and repeats the body of the + tag "num" times. It's a simple example, but the implementation of + such a tag in JSP 2.0 is substantially simpler than the equivalent + JSP 1.2-style classic tag handler.

    +

    The body of the tag is encapsulated in a "JSP Fragment" and passed + to the tag handler, which then executes it five times, inside a + for loop. The tag handler passes in the current invocation in a + scoped variable called count, which can be accessed using the EL.

    +
    + Result:
    + + Invocation ${count} of 5
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/repeat.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/repeat.jsp.html new file mode 100644 index 0000000..e36b66c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/simpletag/repeat.jsp.html @@ -0,0 +1,41 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="mytag" uri="/WEB-INF/jsp2/jsp2-example-taglib.tld" %>
    +<html>
    +  <head>
    +    <title>JSP 2.0 Examples - Repeat SimpleTag Handler</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Examples - Repeat SimpleTag Handler</h1>
    +    <hr>
    +    <p>This tag handler accepts a "num" parameter and repeats the body of the
    +    tag "num" times.  It's a simple example, but the implementation of 
    +    such a tag in JSP 2.0 is substantially simpler than the equivalent 
    +    JSP 1.2-style classic tag handler.</p>
    +    <p>The body of the tag is encapsulated in a "JSP Fragment" and passed
    +    to the tag handler, which then executes it five times, inside a 
    +    for loop.  The tag handler passes in the current invocation in a
    +    scoped variable called count, which can be accessed using the EL.</p>
    +    <br>
    +    <b><u>Result:</u></b><br>
    +    <mytag:repeat num="5">
    +      Invocation ${count} of 5<br>
    +    </mytag:repeat>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/displayProducts.tag.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/displayProducts.tag.html new file mode 100644 index 0000000..6388336 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/displayProducts.tag.html @@ -0,0 +1,57 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    +<%@ attribute name="normalPrice" fragment="true" %>
    +<%@ attribute name="onSale" fragment="true" %>
    +<%@ variable name-given="name" %>
    +<%@ variable name-given="price" %>
    +<%@ variable name-given="origPrice" %>
    +<%@ variable name-given="salePrice" %>
    +
    +<table border="1">
    +  <tr>
    +    <td> 
    +      <c:set var="name" value="Hand-held Color PDA"/>
    +      <c:set var="price" value="$298.86"/>
    +      <jsp:invoke fragment="normalPrice"/>
    +    </td>
    +    <td> 
    +      <c:set var="name" value="4-Pack 150 Watt Light Bulbs"/>
    +      <c:set var="origPrice" value="$2.98"/>
    +      <c:set var="salePrice" value="$2.32"/>
    +      <jsp:invoke fragment="onSale"/>
    +    </td>
    +    <td> 
    +      <c:set var="name" value="Digital Cellular Phone"/>
    +      <c:set var="price" value="$68.74"/>
    +      <jsp:invoke fragment="normalPrice"/>
    +    </td>
    +    <td> 
    +      <c:set var="name" value="Baby Grand Piano"/>
    +      <c:set var="price" value="$10,800.00"/>
    +      <jsp:invoke fragment="normalPrice"/>
    +    </td>
    +    <td> 
    +      <c:set var="name" value="Luxury Car w/ Leather Seats"/>
    +      <c:set var="origPrice" value="$23,980.00"/>
    +      <c:set var="salePrice" value="$21,070.00"/>
    +      <jsp:invoke fragment="onSale"/>
    +    </td>
    +  </tr>
    +</table>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/hello.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/hello.html new file mode 100644 index 0000000..aab12a7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/hello.html @@ -0,0 +1,33 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for hello.jsp +

    +

    Source Code for helloWorld.tag +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/hello.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/hello.jsp new file mode 100644 index 0000000..e93c7c5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/hello.jsp @@ -0,0 +1,35 @@ + +<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %> + + + JSP 2.0 Examples - Hello World Using a Tag File + + +

    JSP 2.0 Examples - Hello World Using a Tag File

    +
    +

    This JSP page invokes a custom tag that simply echos "Hello, World!" + The custom tag is generated from a tag file in the /WEB-INF/tags + directory.

    +

    Notice that we did not need to write a TLD for this tag. We just + created /WEB-INF/tags/helloWorld.tag, imported it using the taglib + directive, and used it!

    +
    + Result: + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/hello.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/hello.jsp.html new file mode 100644 index 0000000..c3b7b4f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/hello.jsp.html @@ -0,0 +1,37 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %>
    +<html>
    +  <head>
    +    <title>JSP 2.0 Examples - Hello World Using a Tag File</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Examples - Hello World Using a Tag File</h1>
    +    <hr>
    +    <p>This JSP page invokes a custom tag that simply echos "Hello, World!"  
    +    The custom tag is generated from a tag file in the /WEB-INF/tags
    +    directory.</p>
    +    <p>Notice that we did not need to write a TLD for this tag.  We just
    +    created /WEB-INF/tags/helloWorld.tag, imported it using the taglib
    +    directive, and used it!</p>
    +    <br>
    +    <b><u>Result:</u></b>
    +    <tags:helloWorld/>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/helloWorld.tag.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/helloWorld.tag.html new file mode 100644 index 0000000..e335986 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/helloWorld.tag.html @@ -0,0 +1,19 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +Hello, world!
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.html new file mode 100644 index 0000000..161b70d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.html @@ -0,0 +1,33 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for panel.jsp +

    +

    Source Code for panel.tag +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.jsp new file mode 100644 index 0000000..4dfc483 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.jsp @@ -0,0 +1,58 @@ + +<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %> + + + JSP 2.0 Examples - Panels using Tag Files + + +

    JSP 2.0 Examples - Panels using Tag Files

    +
    +

    This JSP page invokes a custom tag that draws a + panel around the contents of the tag body. Normally, such a tag + implementation would require a Java class with many println() statements, + outputting HTML. Instead, we can use a .tag file as a template, + and we don't need to write a single line of Java or even a TLD!

    +
    + + + + + + +
    + + First panel.
    +
    +
    + + Second panel.
    + Second panel.
    + Second panel.
    + Second panel.
    +
    +
    + + Third panel.
    + + A panel in a panel. + + Third panel.
    +
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.jsp.html new file mode 100644 index 0000000..0cc746d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.jsp.html @@ -0,0 +1,60 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %>
    +<html>
    +  <head>
    +    <title>JSP 2.0 Examples - Panels using Tag Files</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Examples - Panels using Tag Files</h1>
    +    <hr>
    +    <p>This JSP page invokes a custom tag that draws a 
    +    panel around the contents of the tag body.  Normally, such a tag 
    +    implementation would require a Java class with many println() statements,
    +    outputting HTML.  Instead, we can use a .tag file as a template,
    +    and we don't need to write a single line of Java or even a TLD!</p>
    +    <hr>
    +    <table border="0">
    +      <tr valign="top">
    +        <td>
    +          <tags:panel color="#ff8080" bgcolor="#ffc0c0" title="Panel 1">
    +	    First panel.<br/>
    +	  </tags:panel>
    +        </td>
    +        <td>
    +          <tags:panel color="#80ff80" bgcolor="#c0ffc0" title="Panel 2">
    +	    Second panel.<br/>
    +	    Second panel.<br/>
    +	    Second panel.<br/>
    +	    Second panel.<br/>
    +	  </tags:panel>
    +        </td>
    +        <td>
    +          <tags:panel color="#8080ff" bgcolor="#c0c0ff" title="Panel 3">
    +	    Third panel.<br/>
    +            <tags:panel color="#ff80ff" bgcolor="#ffc0ff" title="Inner">
    +	      A panel in a panel.
    +	    </tags:panel>
    +	    Third panel.<br/>
    +	  </tags:panel>
    +        </td>
    +      </tr>
    +    </table>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.tag.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.tag.html new file mode 100644 index 0000000..df1c214 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/panel.tag.html @@ -0,0 +1,31 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ attribute name="color" %>
    +<%@ attribute name="bgcolor" %>
    +<%@ attribute name="title" %>
    +<table border="1" bgcolor="${color}">
    +  <tr>
    +    <td><b>${title}</b></td>
    +  </tr>
    +  <tr>
    +    <td bgcolor="${bgcolor}">
    +      <jsp:doBody/>
    +    </td>
    +  </tr>
    +</table>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/products.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/products.html new file mode 100644 index 0000000..e4780b9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/products.html @@ -0,0 +1,33 @@ + + + +View Source Code + + + + +

    +

    + +

    Source Code for products.jsp +

    +

    Source Code for displayProducts.tag +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/products.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/products.jsp new file mode 100644 index 0000000..328cc96 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/products.jsp @@ -0,0 +1,54 @@ + +<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %> + + + JSP 2.0 Examples - Display Products Tag File + + +

    JSP 2.0 Examples - Display Products Tag File

    +
    +

    This JSP page invokes a tag file that displays a listing of + products. The custom tag accepts two fragments that enable + customization of appearance. One for when the product is on sale + and one for normal price.

    +

    The tag is invoked twice, using different styles

    +
    +

    Products

    + + + Item: ${name}
    + Price: ${price} +
    + + Item: ${name}
    + Was: ${origPrice}
    + Now: ${salePrice} +
    +
    +
    +

    Products (Same tag, alternate style)

    + + + ${name} @ ${price} ea. + + + ${name} @ ${salePrice} ea. (was: ${origPrice}) + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/products.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/products.jsp.html new file mode 100644 index 0000000..f9b6e6f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/products.jsp.html @@ -0,0 +1,56 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %>
    +<html>
    +  <head>
    +    <title>JSP 2.0 Examples - Display Products Tag File</title>
    +  </head>
    +  <body>
    +    <h1>JSP 2.0 Examples - Display Products Tag File</h1>
    +    <hr>
    +    <p>This JSP page invokes a tag file that displays a listing of 
    +    products.  The custom tag accepts two fragments that enable
    +    customization of appearance.  One for when the product is on sale
    +    and one for normal price.</p>
    +    <p>The tag is invoked twice, using different styles</p>
    +    <hr>
    +    <h2>Products</h2>
    +    <tags:displayProducts>
    +      <jsp:attribute name="normalPrice">
    +	Item: ${name}<br/>
    +	Price: ${price}
    +      </jsp:attribute>
    +      <jsp:attribute name="onSale">
    +	Item: ${name}<br/>
    +	<font color="red"><strike>Was: ${origPrice}</strike></font><br/>
    +	<b>Now: ${salePrice}</b>
    +      </jsp:attribute>
    +    </tags:displayProducts>
    +    <hr>
    +    <h2>Products (Same tag, alternate style)</h2>
    +    <tags:displayProducts>
    +      <jsp:attribute name="normalPrice">
    +	<b>${name}</b> @ ${price} ea.
    +      </jsp:attribute>
    +      <jsp:attribute name="onSale">
    +	<b>${name}</b> @ ${salePrice} ea. (was: ${origPrice})
    +      </jsp:attribute>
    +    </tags:displayProducts>
    +  </body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/xhtmlbasic.tag.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/xhtmlbasic.tag.html new file mode 100644 index 0000000..a8bd497 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsp2/tagfiles/xhtmlbasic.tag.html @@ -0,0 +1,23 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN"
    +"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
    +<html xmlns="http://www.w3.org/1999/xhtml">
    +<jsp:doBody/>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/hello.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/hello.jsp new file mode 100644 index 0000000..5f332ec --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/hello.jsp @@ -0,0 +1,26 @@ + + + + +

    +I have been invoked by +<% out.print (request.getAttribute("servletName").toString()); %> +Servlet. +

    + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/hello.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/hello.jsp.html new file mode 100644 index 0000000..44ac35e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/hello.jsp.html @@ -0,0 +1,28 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<body bgcolor="white">
    +
    +<h1>
    +I have been invoked by
    +<% out.print (request.getAttribute("servletName").toString()); %>
    +Servlet.
    +</h1>
    +
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/jsptoservlet.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/jsptoservlet.jsp new file mode 100644 index 0000000..c08192f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/jsptoservlet.jsp @@ -0,0 +1,23 @@ + + + + + + + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/jsptoservlet.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/jsptoservlet.jsp.html new file mode 100644 index 0000000..d694ab4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/jsptoservlet.jsp.html @@ -0,0 +1,25 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<body bgcolor="white">
    +
    +<!-- Forward to a servlet -->
    +<jsp:forward page="/servletToJsp" />
    +
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/jts.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/jts.html new file mode 100644 index 0000000..ec7d5ad --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/jts.html @@ -0,0 +1,34 @@ + + + + +Untitled Document + + + + +

    + +

    Source Code for JSP calling servlet +

    + +

    Source Code for Servlet calling JSP +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/servletToJsp.java.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/servletToJsp.java.html new file mode 100644 index 0000000..bf6f249 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/jsptoserv/servletToJsp.java.html @@ -0,0 +1,34 @@ +
    +/*
    +* Licensed to the Apache Software Foundation (ASF) under one or more
    +* contributor license agreements.  See the NOTICE file distributed with
    +* this work for additional information regarding copyright ownership.
    +* The ASF licenses this file to You under the Apache License, Version 2.0
    +* (the "License"); you may not use this file except in compliance with
    +* the License.  You may obtain a copy of the License at
    +*
    +*     http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing, software
    +* distributed under the License is distributed on an "AS IS" BASIS,
    +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +* See the License for the specific language governing permissions and
    +* limitations under the License.
    +*/
    +import javax.servlet.http.*;
    +
    +public class servletToJsp extends HttpServlet {
    +
    +    public void doGet (HttpServletRequest request,
    +		       HttpServletResponse response) {
    +
    +	try {
    +	    // Set the attribute and Forward to hello.jsp
    +	    request.setAttribute ("servletName", "servletToJsp");
    +	    getServletConfig().getServletContext().getRequestDispatcher("/jsp/jsptoserv/hello.jsp").forward(request, response);
    +	} catch (Exception ex) {
    +	    ex.printStackTrace ();
    +	}
    +    }
    +}
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/num/numguess.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/num/numguess.html new file mode 100644 index 0000000..431fda0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/num/numguess.html @@ -0,0 +1,34 @@ + + + +Untitled Document + + + + +

    + +

    Source Code for Numguess Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/num/numguess.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/num/numguess.jsp new file mode 100644 index 0000000..cfcf6fb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/num/numguess.jsp @@ -0,0 +1,69 @@ + + +<%@ page import = "num.NumberGuessBean" %> + + + + + +Number Guess + + + +<% if (numguess.getSuccess()) { %> + + Congratulations! You got it. + And after just <%= numguess.getNumGuesses() %> tries.

    + + <% numguess.reset(); %> + + Care to try again? + +<% } else if (numguess.getNumGuesses() == 0) { %> + + Welcome to the Number Guess game.

    + + I'm thinking of a number between 1 and 100.

    + +

    + What's your guess? + +
    + +<% } else { %> + + Good guess, but nope. Try <%= numguess.getHint() %>. + + You have made <%= numguess.getNumGuesses() %> guesses.

    + + I'm thinking of a number between 1 and 100.

    + +

    + What's your guess? + +
    + +<% } %> + +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/num/numguess.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/num/numguess.jsp.html new file mode 100644 index 0000000..01fef5d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/num/numguess.jsp.html @@ -0,0 +1,71 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +
    +  Number Guess Game
    +  Written by Jason Hunter, CTO, K&A Software
    +  http://www.servlets.com
    +-->
    +
    +<%@ page import = "num.NumberGuessBean" %>
    +
    +<jsp:useBean id="numguess" class="num.NumberGuessBean" scope="session"/>
    +<jsp:setProperty name="numguess" property="*"/>
    +
    +<html>
    +<head><title>Number Guess</title></head>
    +<body bgcolor="white">
    +<font size=4>
    +
    +<% if (numguess.getSuccess()) { %>
    +
    +  Congratulations!  You got it.
    +  And after just <%= numguess.getNumGuesses() %> tries.<p>
    +
    +  <% numguess.reset(); %>
    +
    +  Care to <a href="numguess.jsp">try again</a>?
    +
    +<% } else if (numguess.getNumGuesses() == 0) { %>
    +
    +  Welcome to the Number Guess game.<p>
    +
    +  I'm thinking of a number between 1 and 100.<p>
    +
    +  <form method=get>
    +  What's your guess? <input type=text name=guess>
    +  <input type=submit value="Submit">
    +  </form>
    +
    +<% } else { %>
    +
    +  Good guess, but nope.  Try <b><%= numguess.getHint() %></b>.
    +
    +  You have made <%= numguess.getNumGuesses() %> guesses.<p>
    +
    +  I'm thinking of a number between 1 and 100.<p>
    +
    +  <form method=get>
    +  What's your guess? <input type=text name=guess>
    +  <input type=submit value="Submit">
    +  </form>
    +
    +<% } %>
    +
    +</font>
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/applet/Clock2.class b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/applet/Clock2.class new file mode 100644 index 0000000..df40e20 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/applet/Clock2.class differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/applet/Clock2.java b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/applet/Clock2.java new file mode 100644 index 0000000..f228b82 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/applet/Clock2.java @@ -0,0 +1,213 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to You under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +import java.util.*; +import java.awt.*; +import java.applet.*; +import java.text.*; + +/** + * Time! + * + * @author Rachel Gollub + */ + +public class Clock2 extends Applet implements Runnable { + Thread timer; // The thread that displays clock + int lastxs, lastys, lastxm, + lastym, lastxh, lastyh; // Dimensions used to draw hands + SimpleDateFormat formatter; // Formats the date displayed + String lastdate; // String to hold date displayed + Font clockFaceFont; // Font for number display on clock + Date currentDate; // Used to get date to display + Color handColor; // Color of main hands and dial + Color numberColor; // Color of second hand and numbers + + public void init() { + int x,y; + lastxs = lastys = lastxm = lastym = lastxh = lastyh = 0; + formatter = new SimpleDateFormat ("EEE MMM dd hh:mm:ss yyyy", Locale.getDefault()); + currentDate = new Date(); + lastdate = formatter.format(currentDate); + clockFaceFont = new Font("Serif", Font.PLAIN, 14); + handColor = Color.blue; + numberColor = Color.darkGray; + + try { + setBackground(new Color(Integer.parseInt(getParameter("bgcolor"),16))); + } catch (Exception E) { } + try { + handColor = new Color(Integer.parseInt(getParameter("fgcolor1"),16)); + } catch (Exception E) { } + try { + numberColor = new Color(Integer.parseInt(getParameter("fgcolor2"),16)); + } catch (Exception E) { } + resize(300,300); // Set clock window size + } + + // Plotpoints allows calculation to only cover 45 degrees of the circle, + // and then mirror + public void plotpoints(int x0, int y0, int x, int y, Graphics g) { + g.drawLine(x0+x,y0+y,x0+x,y0+y); + g.drawLine(x0+y,y0+x,x0+y,y0+x); + g.drawLine(x0+y,y0-x,x0+y,y0-x); + g.drawLine(x0+x,y0-y,x0+x,y0-y); + g.drawLine(x0-x,y0-y,x0-x,y0-y); + g.drawLine(x0-y,y0-x,x0-y,y0-x); + g.drawLine(x0-y,y0+x,x0-y,y0+x); + g.drawLine(x0-x,y0+y,x0-x,y0+y); + } + + // Circle is just Bresenham's algorithm for a scan converted circle + public void circle(int x0, int y0, int r, Graphics g) { + int x,y; + float d; + x=0; + y=r; + d=5/4-r; + plotpoints(x0,y0,x,y,g); + + while (y>x){ + if (d<0) { + d=d+2*x+3; + x++; + } + else { + d=d+2*(x-y)+5; + x++; + y--; + } + plotpoints(x0,y0,x,y,g); + } + } + + // Paint is the main part of the program + public void paint(Graphics g) { + int xh, yh, xm, ym, xs, ys, s = 0, m = 10, h = 10, xcenter, ycenter; + String today; + + currentDate = new Date(); + SimpleDateFormat formatter = new SimpleDateFormat("s",Locale.getDefault()); + try { + s = Integer.parseInt(formatter.format(currentDate)); + } catch (NumberFormatException n) { + s = 0; + } + formatter.applyPattern("m"); + try { + m = Integer.parseInt(formatter.format(currentDate)); + } catch (NumberFormatException n) { + m = 10; + } + formatter.applyPattern("h"); + try { + h = Integer.parseInt(formatter.format(currentDate)); + } catch (NumberFormatException n) { + h = 10; + } + formatter.applyPattern("EEE MMM dd HH:mm:ss yyyy"); + today = formatter.format(currentDate); + xcenter=80; + ycenter=55; + + // a= s* pi/2 - pi/2 (to switch 0,0 from 3:00 to 12:00) + // x = r(cos a) + xcenter, y = r(sin a) + ycenter + + xs = (int)(Math.cos(s * 3.14f/30 - 3.14f/2) * 45 + xcenter); + ys = (int)(Math.sin(s * 3.14f/30 - 3.14f/2) * 45 + ycenter); + xm = (int)(Math.cos(m * 3.14f/30 - 3.14f/2) * 40 + xcenter); + ym = (int)(Math.sin(m * 3.14f/30 - 3.14f/2) * 40 + ycenter); + xh = (int)(Math.cos((h*30 + m/2) * 3.14f/180 - 3.14f/2) * 30 + xcenter); + yh = (int)(Math.sin((h*30 + m/2) * 3.14f/180 - 3.14f/2) * 30 + ycenter); + + // Draw the circle and numbers + + g.setFont(clockFaceFont); + g.setColor(handColor); + circle(xcenter,ycenter,50,g); + g.setColor(numberColor); + g.drawString("9",xcenter-45,ycenter+3); + g.drawString("3",xcenter+40,ycenter+3); + g.drawString("12",xcenter-5,ycenter-37); + g.drawString("6",xcenter-3,ycenter+45); + + // Erase if necessary, and redraw + + g.setColor(getBackground()); + if (xs != lastxs || ys != lastys) { + g.drawLine(xcenter, ycenter, lastxs, lastys); + g.drawString(lastdate, 5, 125); + } + if (xm != lastxm || ym != lastym) { + g.drawLine(xcenter, ycenter-1, lastxm, lastym); + g.drawLine(xcenter-1, ycenter, lastxm, lastym); } + if (xh != lastxh || yh != lastyh) { + g.drawLine(xcenter, ycenter-1, lastxh, lastyh); + g.drawLine(xcenter-1, ycenter, lastxh, lastyh); } + g.setColor(numberColor); + g.drawString("", 5, 125); + g.drawString(today, 5, 125); + g.drawLine(xcenter, ycenter, xs, ys); + g.setColor(handColor); + g.drawLine(xcenter, ycenter-1, xm, ym); + g.drawLine(xcenter-1, ycenter, xm, ym); + g.drawLine(xcenter, ycenter-1, xh, yh); + g.drawLine(xcenter-1, ycenter, xh, yh); + lastxs=xs; lastys=ys; + lastxm=xm; lastym=ym; + lastxh=xh; lastyh=yh; + lastdate = today; + currentDate=null; + } + + public void start() { + timer = new Thread(this); + timer.start(); + } + + public void stop() { + timer = null; + } + + public void run() { + Thread me = Thread.currentThread(); + while (timer == me) { + try { + Thread.currentThread().sleep(100); + } catch (InterruptedException e) { + } + repaint(); + } + } + + public void update(Graphics g) { + paint(g); + } + + public String getAppletInfo() { + return "Title: A Clock \nAuthor: Rachel Gollub, 1995 \nAn analog clock."; + } + + public String[][] getParameterInfo() { + String[][] info = { + {"bgcolor", "hexadecimal RGB number", "The background color. Default is the color of your browser."}, + {"fgcolor1", "hexadecimal RGB number", "The color of the hands and dial. Default is blue."}, + {"fgcolor2", "hexadecimal RGB number", "The color of the seconds hand and numbers. Default is dark gray."} + }; + return info; + } +} diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/plugin.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/plugin.html new file mode 100644 index 0000000..036ce72 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/plugin.html @@ -0,0 +1,30 @@ + + + +Untitled Document + + + + +

    + +

    Source Code for Plugin Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/plugin.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/plugin.jsp new file mode 100644 index 0000000..12db7d4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/plugin.jsp @@ -0,0 +1,34 @@ + + + Plugin example + +

    Current time is :

    + + + Plugin tag OBJECT or EMBED not supported by browser. + + +

    +

    + +The above applet is loaded using the Java Plugin from a jsp page using the +plugin tag. + +

    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/plugin.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/plugin.jsp.html new file mode 100644 index 0000000..b350d5e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/plugin/plugin.jsp.html @@ -0,0 +1,36 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<title> Plugin example </title>
    +<body bgcolor="white">
    +<h3> Current time is : </h3>
    +<jsp:plugin type="applet" code="Clock2.class" codebase="applet" jreversion="1.2" width="160" height="150" >
    +    <jsp:fallback>
    +        Plugin tag OBJECT or EMBED not supported by browser.
    +    </jsp:fallback>
    +</jsp:plugin>
    +<p>
    +<h4>
    +<font color=red> 
    +The above applet is loaded using the Java Plugin from a jsp page using the
    +plugin tag.
    +</font>
    +</h4>
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/error.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/error.jsp new file mode 100644 index 0000000..a363864 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/error.jsp @@ -0,0 +1,25 @@ + + + +Error Page For Examples + + +Invalid username and/or password, please try +again. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/error.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/error.jsp.html new file mode 100644 index 0000000..4968553 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/error.jsp.html @@ -0,0 +1,27 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<html>
    +<head>
    +<title>Error Page For Examples</title>
    +</head>
    +<body bgcolor="white">
    +Invalid username and/or password, please try
    +<a href='<%= response.encodeURL("login.jsp") %>'>again</a>.
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/index.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/index.jsp new file mode 100644 index 0000000..bef9700 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/index.jsp @@ -0,0 +1,81 @@ + +<% + if (request.getParameter("logoff") != null) { + session.invalidate(); + response.sendRedirect("index.jsp"); + return; + } +%> + + +Protected Page for Examples + + + +You are logged in as remote user +<%= util.HTMLFilter.filter(request.getRemoteUser()) %> +in session <%= session.getId() %>

    + +<% + if (request.getUserPrincipal() != null) { +%> + Your user principal name is + <%= util.HTMLFilter.filter(request.getUserPrincipal().getName()) %> +

    +<% + } else { +%> + No user principal could be identified.

    +<% + } +%> + +<% + String role = request.getParameter("role"); + if (role == null) + role = ""; + if (role.length() > 0) { + if (request.isUserInRole(role)) { +%> + You have been granted role + <%= util.HTMLFilter.filter(role) %>

    +<% + } else { +%> + You have not been granted role + <%= util.HTMLFilter.filter(role) %>

    +<% + } + } +%> + +To check whether your username has been granted a particular role, +enter it here: +
    + +
    +

    + +If you have configured this app for form-based authentication, you can log +off by clicking +here. +This should cause you to be returned to the logon page after the redirect +that is performed. + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/index.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/index.jsp.html new file mode 100644 index 0000000..b8a9a54 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/index.jsp.html @@ -0,0 +1,83 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%
    +  if (request.getParameter("logoff") != null) {
    +    session.invalidate();
    +    response.sendRedirect("index.jsp");
    +    return;
    +  }
    +%>
    +<html>
    +<head>
    +<title>Protected Page for Examples</title>
    +</head>
    +<body bgcolor="white">
    +
    +You are logged in as remote user
    +<b><%= util.HTMLFilter.filter(request.getRemoteUser()) %></b>
    +in session <b><%= session.getId() %></b><br><br>
    +
    +<%
    +  if (request.getUserPrincipal() != null) {
    +%>
    +    Your user principal name is
    +    <b><%= util.HTMLFilter.filter(request.getUserPrincipal().getName()) %></b>
    +    <br><br>
    +<%
    +  } else {
    +%>
    +    No user principal could be identified.<br><br>
    +<%
    +  }
    +%>
    +
    +<%
    +  String role = request.getParameter("role");
    +  if (role == null)
    +    role = "";
    +  if (role.length() > 0) {
    +    if (request.isUserInRole(role)) {
    +%>
    +      You have been granted role
    +      <b><%= util.HTMLFilter.filter(role) %></b><br><br>
    +<%
    +    } else {
    +%>
    +      You have <i>not</i> been granted role
    +      <b><%= util.HTMLFilter.filter(role) %></b><br><br>
    +<%
    +    }
    +  }
    +%>
    +
    +To check whether your username has been granted a particular role,
    +enter it here:
    +<form method="GET" action='<%= response.encodeURL("index.jsp") %>'>
    +<input type="text" name="role" value="<%= util.HTMLFilter.filter(role) %>">
    +</form>
    +<br><br>
    +
    +If you have configured this app for form-based authentication, you can log
    +off by clicking
    +<a href='<%= response.encodeURL("index.jsp?logoff=true") %>'>here</a>.
    +This should cause you to be returned to the logon page after the redirect
    +that is performed.
    +
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/login.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/login.jsp new file mode 100644 index 0000000..dc7e50e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/login.jsp @@ -0,0 +1,38 @@ + + + +Login Page for Examples + +
    + + + + + + + + + + + + + +
    Username:
    Password:
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/login.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/login.jsp.html new file mode 100644 index 0000000..94e16ef --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/security/protected/login.jsp.html @@ -0,0 +1,40 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<html>
    +<head>
    +<title>Login Page for Examples</title>
    +<body bgcolor="white">
    +<form method="POST" action='<%= response.encodeURL("j_security_check") %>' >
    +  <table border="0" cellspacing="5">
    +    <tr>
    +      <th align="right">Username:</th>
    +      <td align="left"><input type="text" name="j_username"></td>
    +    </tr>
    +    <tr>
    +      <th align="right">Password:</th>
    +      <td align="left"><input type="password" name="j_password"></td>
    +    </tr>
    +    <tr>
    +      <td align="right"><input type="submit" value="Log In"></td>
    +      <td align="left"><input type="reset"></td>
    +    </tr>
    +  </table>
    +</form>
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/DummyCart.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/DummyCart.html new file mode 100644 index 0000000..317523f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/DummyCart.html @@ -0,0 +1,56 @@ + + + + + +sessions.DummyCart Bean Properties + + +

    +sessions.DummyCart Bean Properties +

    +
    +
    +
    public class DummyCart
    extends Object
    + +

    +


    + +

    + + + + + + + + + +
    +Properties Summary
    + +String +DummyCart:items +
    +
    + +Multi +
    +


    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/carts.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/carts.html new file mode 100644 index 0000000..fe7dbb5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/carts.html @@ -0,0 +1,53 @@ + + + + + carts + + + + + +
    +
    +Please enter item to add or remove: +
    +Add Item: + + + + +

    + + + +
    + +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/carts.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/carts.jsp new file mode 100644 index 0000000..c5c3cd6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/carts.jsp @@ -0,0 +1,44 @@ + + + + + + +<% + cart.processRequest(request); +%> + + + +
    You have the following items in your cart: +
      +<% + String[] items = cart.getItems(); + for (int i=0; i +
    1. <% out.print(util.HTMLFilter.filter(items[i])); %> +<% + } +%> +
    + +
    + +
    +<%@ include file ="carts.html" %> + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/carts.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/carts.jsp.html new file mode 100644 index 0000000..9f5d33b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/carts.jsp.html @@ -0,0 +1,46 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<jsp:useBean id="cart" scope="session" class="sessions.DummyCart" />
    +
    +<jsp:setProperty name="cart" property="*" />
    +<%
    +	cart.processRequest(request);
    +%>
    +
    +
    +<FONT size = 5 COLOR="#CC0000">
    +<br> You have the following items in your cart:
    +<ol>
    +<% 
    +	String[] items = cart.getItems();
    +	for (int i=0; i<items.length; i++) {
    +%>
    +<li> <% out.print(util.HTMLFilter.filter(items[i])); %> 
    +<%
    +	}
    +%>
    +</ol>
    +
    +</FONT>
    +
    +<hr>
    +<%@ include file ="carts.html" %>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/crt.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/crt.html new file mode 100644 index 0000000..28804e9 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/sessions/crt.html @@ -0,0 +1,34 @@ + + + + +Untitled Document + + + + +

    + +

    Source Code for Cart Example +

    + +

    Property Sheet for DummyCart +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/simpletag/foo.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/simpletag/foo.html new file mode 100644 index 0000000..334b6bc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/simpletag/foo.html @@ -0,0 +1,30 @@ + + + +Untitled Document + + + + +

    + +

    Source Code for the Simple Tag Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/simpletag/foo.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/simpletag/foo.jsp new file mode 100644 index 0000000..8b89475 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/simpletag/foo.jsp @@ -0,0 +1,38 @@ + + + +<%@ taglib uri="http://jakarta.apache.org/tomcat/examples-taglib" prefix="eg"%> + +Radio stations that rock: + +
      + +
    • <%= member %>
    • +
      +
    + + +Did you see me on the stderr window? + + + +Did you see me on the browser window as well? + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/simpletag/foo.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/simpletag/foo.jsp.html new file mode 100644 index 0000000..8aceedc --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/simpletag/foo.jsp.html @@ -0,0 +1,40 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<body>
    +<%@ taglib uri="http://jakarta.apache.org/tomcat/examples-taglib" prefix="eg"%>
    +
    +Radio stations that rock:
    +
    +<ul>
    +<eg:foo att1="98.5" att2="92.3" att3="107.7">
    +<li><%= member %></li>
    +</eg:foo>
    +</ul>
    +
    +<eg:log>
    +Did you see me on the stderr window?
    +</eg:log>
    +
    +<eg:log toBrowser="true">
    +Did you see me on the browser window as well?
    +</eg:log>
    +
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/snp/snoop.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/snp/snoop.html new file mode 100644 index 0000000..c00aca7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/snp/snoop.html @@ -0,0 +1,31 @@ + + + + +Untitled Document + + + + +

    + +

    Source Code for Request Parameters Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/snp/snoop.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/snp/snoop.jsp new file mode 100644 index 0000000..06a3830 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/snp/snoop.jsp @@ -0,0 +1,57 @@ + + + + +

    Request Information

    + +JSP Request Method: <%= util.HTMLFilter.filter(request.getMethod()) %> +
    +Request URI: <%= util.HTMLFilter.filter(request.getRequestURI()) %> +
    +Request Protocol: <%= util.HTMLFilter.filter(request.getProtocol()) %> +
    +Servlet path: <%= util.HTMLFilter.filter(request.getServletPath()) %> +
    +Path info: <%= util.HTMLFilter.filter(request.getPathInfo()) %> +
    +Query string: <%= util.HTMLFilter.filter(request.getQueryString()) %> +
    +Content length: <%= request.getContentLength() %> +
    +Content type: <%= util.HTMLFilter.filter(request.getContentType()) %> +
    +Server name: <%= util.HTMLFilter.filter(request.getServerName()) %> +
    +Server port: <%= request.getServerPort() %> +
    +Remote user: <%= util.HTMLFilter.filter(request.getRemoteUser()) %> +
    +Remote address: <%= util.HTMLFilter.filter(request.getRemoteAddr()) %> +
    +Remote host: <%= util.HTMLFilter.filter(request.getRemoteHost()) %> +
    +Authorization scheme: <%= util.HTMLFilter.filter(request.getAuthType()) %> +
    +Locale: <%= request.getLocale() %> +
    +The browser you are using is +<%= util.HTMLFilter.filter(request.getHeader("User-Agent")) %> +
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/snp/snoop.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/snp/snoop.jsp.html new file mode 100644 index 0000000..13025fb --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/snp/snoop.jsp.html @@ -0,0 +1,59 @@ +
    +<html>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +
    +<body bgcolor="white">
    +<h1> Request Information </h1>
    +<font size="4">
    +JSP Request Method: <%= util.HTMLFilter.filter(request.getMethod()) %>
    +<br>
    +Request URI: <%= util.HTMLFilter.filter(request.getRequestURI()) %>
    +<br>
    +Request Protocol: <%= util.HTMLFilter.filter(request.getProtocol()) %>
    +<br>
    +Servlet path: <%= util.HTMLFilter.filter(request.getServletPath()) %>
    +<br>
    +Path info: <%= util.HTMLFilter.filter(request.getPathInfo()) %>
    +<br>
    +Query string: <%= util.HTMLFilter.filter(request.getQueryString()) %>
    +<br>
    +Content length: <%= request.getContentLength() %>
    +<br>
    +Content type: <%= util.HTMLFilter.filter(request.getContentType()) %>
    +<br>
    +Server name: <%= util.HTMLFilter.filter(request.getServerName()) %>
    +<br>
    +Server port: <%= request.getServerPort() %>
    +<br>
    +Remote user: <%= util.HTMLFilter.filter(request.getRemoteUser()) %>
    +<br>
    +Remote address: <%= util.HTMLFilter.filter(request.getRemoteAddr()) %>
    +<br>
    +Remote host: <%= util.HTMLFilter.filter(request.getRemoteHost()) %>
    +<br>
    +Authorization scheme: <%= util.HTMLFilter.filter(request.getAuthType()) %> 
    +<br>
    +Locale: <%= request.getLocale() %>
    +<hr>
    +The browser you are using is
    +<%= util.HTMLFilter.filter(request.getHeader("User-Agent")) %>
    +<hr>
    +</font>
    +</body>
    +</html>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/source.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/source.jsp new file mode 100644 index 0000000..9878448 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/source.jsp @@ -0,0 +1,20 @@ + +<%@ taglib uri="http://jakarta.apache.org/tomcat/examples-taglib" + prefix="eg" %> + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/source.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/source.jsp.html new file mode 100644 index 0000000..f688234 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/source.jsp.html @@ -0,0 +1,22 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<%@ taglib uri="http://jakarta.apache.org/tomcat/examples-taglib"
    +        prefix="eg" %>
    +
    +<eg:ShowSource jspFile="<%= util.HTMLFilter.filter(request.getQueryString()) %>"/>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/choose.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/choose.html new file mode 100644 index 0000000..fdec617 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/choose.html @@ -0,0 +1,36 @@ + + + +View Source Code + + + +

    + + + + + +

    + +

    + Source Code for choose.jsp +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/choose.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/choose.jsp new file mode 100644 index 0000000..2427249 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/choose.jsp @@ -0,0 +1,58 @@ + + + + Tag Examples - choose + + +

    Tag Plugin Examples - <c:choose>

    + +
    +
    + Plugin Introductory Notes +
    +
    Brief Instructions for Writing Plugins +

    +
    + + +
    + + <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + + + # ${index}: + + + One!
    +
    + + Four!
    +
    + + Three!
    +
    + + Huh?
    +
    +
    +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/choose.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/choose.jsp.html new file mode 100644 index 0000000..d95ab00 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/choose.jsp.html @@ -0,0 +1,60 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<html>
    +  <head>
    +    <title>Tag Examples - choose</title>
    +  </head>
    +  <body>
    +    <h1>Tag Plugin Examples - &lt;c:choose></h1>
    +
    +    <hr>
    +    </br>
    +    <a href="notes.html">Plugin Introductory Notes<font <font color="#0000FF"></
    +a>
    +    <br/>
    +    <a href="howto.html">Brief Instructions for Writing Plugins<font color="#000
    +0
    +FF"></a>
    +    <br/> <br/>
    +    <hr>
    +
    +    <font color="#000000"/>
    +    </br>
    +
    +    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    +
    +    <c:forEach var="index" begin="0" end="4">
    +      # ${index}: 
    +      <c:choose>
    +	<c:when test="${index == 1}">
    +          One!</br>
    +	</c:when>
    +	<c:when test="${index == 4}">
    +          Four!</br>
    +	</c:when>
    +	<c:when test="${index == 3}">
    +          Three!</br>
    +	</c:when>
    +	<c:otherwise>
    +          Huh?</br>
    +	</c:otherwise>
    +      </c:choose>
    +    </c:forEach>
    +  </body>
    +</html> 
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/foreach.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/foreach.html new file mode 100644 index 0000000..f1a9c1d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/foreach.html @@ -0,0 +1,36 @@ + + + +View Source Code + + + +

    + + + + + +

    + +

    + Source Code for foreach.jsp +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/foreach.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/foreach.jsp new file mode 100644 index 0000000..135d5ed --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/foreach.jsp @@ -0,0 +1,57 @@ + + + + Tag Plugin Examples: forEach + + +

    Tag Plugin Examples - <c:forEach>

    + +
    +
    + Plugin Introductory Notes +
    +
    Brief Instructions for Writing Plugins +

    +
    + + +
    + + <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + <%@ page import="java.util.Vector" %> + +

    Iterating over a range

    + + ${item} + + + <% Vector v = new Vector(); + v.add("One"); v.add("Two"); v.add("Three"); v.add("Four"); + + pageContext.setAttribute("vector", v); + %> + +

    Iterating over a Vector

    + + + ${item} + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/foreach.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/foreach.jsp.html new file mode 100644 index 0000000..1d153c1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/foreach.jsp.html @@ -0,0 +1,59 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<html>
    +  <head>
    +    <title>Tag Plugin Examples: forEach</title>
    +  </head>
    +  <body>
    +    <h1>Tag Plugin Examples - &lt;c:forEach></h1>
    +
    +    <hr>
    +    </br>
    +    <a href="notes.html">Plugin Introductory Notes<font <font color="#0000FF"></
    +a>
    +    <br/>
    +    <a href="howto.html">Brief Instructions for Writing Plugins<font color="#0000
    +FF"></a>
    +    <br/> <br/>
    +    <hr>
    +
    +    <font color="#000000"/>
    +    </br>
    +
    +    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    +    <%@ page import="java.util.Vector" %>
    +
    +    <h3>Iterating over a range</h3>
    +    <c:forEach var="item" begin="1" end="10">
    +        ${item}
    +    </c:forEach>
    +
    +    <% Vector v = new Vector();
    +	v.add("One"); v.add("Two"); v.add("Three"); v.add("Four");
    +
    +	pageContext.setAttribute("vector", v);
    +    %>
    +
    +    <h3>Iterating over a Vector</h3>
    +
    +    <c:forEach items="${vector}" var="item" >
    +	${item}
    +    </c:forEach>
    +  </body>
    +</html> 
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/howto.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/howto.html new file mode 100644 index 0000000..278365d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/howto.html @@ -0,0 +1,43 @@ + + + + Tag Plugin Implementation +

    How to write tag plugins

    +

    + To write a plugin, you'll need to download the source for Tomcat 5. + There are two steps: +

      +
    1. + Implement the plugin class.

      + This class, which implements + org.apache.jasper.compiler.tagplugin.TagPlugin + instructs Jasper what Java codes to generate in place of the tag + handler calls. + See Javadoc for org.apache.jasper.compiler.tagplugin.TagPlugin + for details. +

    2. + +
    3. + Create the plugin descriptor file WEB-INF/tagPlugins.xml

      + This file + specifies the plugin classes and their corresponding tag handler + classes. +

    4. +
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/if.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/if.html new file mode 100644 index 0000000..a338e17 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/if.html @@ -0,0 +1,36 @@ + + + +View Source Code + + + +

    + + + + + +

    + +

    + Source Code for if.jsp +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/if.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/if.jsp new file mode 100644 index 0000000..3e0706b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/if.jsp @@ -0,0 +1,45 @@ + + + + Tag Plugin Examples: if + + +

    Tag Plugin Examples - <c:if>

    + +
    +
    + Plugin Introductory Notes +
    + Brief Instructions for Wrieting Plugins +

    +
    + + +
    + <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + +

    Set the test result to a variable

    + + The result of testing for (1==1) is: ${theTruth} + +

    Conditionally execute the body

    + + It's true that (2>0)! + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/if.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/if.jsp.html new file mode 100644 index 0000000..3108a61 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/if.jsp.html @@ -0,0 +1,47 @@ +
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<html>
    +  <head>
    +    <title>Tag Plugin Examples: if</title>
    +  </head>
    +  <body>
    +    <h1>Tag Plugin Examples - &lt;c:if></h1>
    +
    +    <hr>
    +    </br>
    +    <a href="notes.html">Plugin Introductory Notes<font <font color="#0000FF"></a>
    +    <br/>
    +    <a href="howto.html">Brief Instructions for Wrieting Plugins<font color="#0000FF"></a>
    +    <br/> <br/>
    +    <hr>
    +
    +    <font color="#000000"/>
    +    </br>
    +    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    +
    +    <h3>Set the test result to a variable</h3>
    +    <c:if test="${1==1}" var="theTruth" scope="session"/>
    +    The result of testing for (1==1) is: ${theTruth}
    +
    +    <h3>Conditionally execute the body</h3>
    +    <c:if test="${2>0}">
    +	It's true that (2>0)!
    +    </c:if>
    +  </body>
    +</html> 
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/notes.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/notes.html new file mode 100644 index 0000000..32181e7 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/tagplugin/notes.html @@ -0,0 +1,39 @@ + + + + Tag Plugin Introduction +

    Tag Plugins: Introductory Notes

    +

    + Tomcat 5 provides a framework for implementing tag plugins. The + plugins instruct Jasper, at translation time, to replace tag handler + calls with Java scriptlets. + The framework allows tag library authors to implement plugins for + their tags. +

    +

    + Tomcat 5 is released with plugins for several JSTL tags. Note + that these plugins work with JSTL 1.1 as well as JSTL 1.0, though + the examples uses JSTL 1.1 and JSP 2.0. + These plugins are not complete (for instance, some item types not + handled in <c:if>). + They do serve as examples to show plugins in action (just + examine the generated Java files), and how they can be implemented. +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/xml/xml.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/xml/xml.html new file mode 100644 index 0000000..80907a5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/xml/xml.html @@ -0,0 +1,31 @@ + + + + +Untitled Document + + + + +

    + +

    Source Code for XML syntax Example +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/xml/xml.jsp b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/xml/xml.jsp new file mode 100644 index 0000000..e7ff43b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/xml/xml.jsp @@ -0,0 +1,70 @@ + + + + + + + + + String getDateTimeStr(Locale l) { + DateFormat df = SimpleDateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM, l); + return df.format(new Date()); + } + + + + + Example JSP in XML format + + + +This is the output of a simple JSP using XML format. +
    + +
    Use a jsp:scriptlet to loop from 1 to 10:
    + +// Note we need to declare CDATA because we don't escape the less than symbol + + + + +
    +]]> + +
    + Use a jsp:expression to write the date and time in the browser's locale: + getDateTimeStr(request.getLocale()) +
    + + + + <p>This sentence is enclosed in a jsp:text element.</p> + + + + +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/jsp/xml/xml.jsp.html b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/xml/xml.jsp.html new file mode 100644 index 0000000..00d2980 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/jsp/xml/xml.jsp.html @@ -0,0 +1,72 @@ +
    +<?xml version="1.0"?>
    +<!--
    + Licensed to the Apache Software Foundation (ASF) under one or more
    +  contributor license agreements.  See the NOTICE file distributed with
    +  this work for additional information regarding copyright ownership.
    +  The ASF licenses this file to You under the Apache License, Version 2.0
    +  (the "License"); you may not use this file except in compliance with
    +  the License.  You may obtain a copy of the License at
    +
    +      http://www.apache.org/licenses/LICENSE-2.0
    +
    +  Unless required by applicable law or agreed to in writing, software
    +  distributed under the License is distributed on an "AS IS" BASIS,
    +  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +  See the License for the specific language governing permissions and
    +  limitations under the License.
    +-->
    +<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
    +  version="1.2">
    +<jsp:directive.page contentType="text/html"/>
    +<jsp:directive.page import="java.util.Date, java.util.Locale"/>
    +<jsp:directive.page import="java.text.*"/>
    +
    +<jsp:declaration>
    +  String getDateTimeStr(Locale l) {
    +    DateFormat df = SimpleDateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM, l);
    +    return df.format(new Date());
    +  }
    +</jsp:declaration>
    +
    +<html>
    +<head>
    +  <title>Example JSP in XML format</title>
    +</head>
    +
    +<body>
    +This is the output of a simple JSP using XML format. 
    +<br />
    +
    +<div>Use a jsp:scriptlet to loop from 1 to 10: </div>
    +<jsp:scriptlet>
    +// Note we need to declare CDATA because we don't escape the less than symbol
    +<![CDATA[
    +  for (int i = 1; i<=10; i++) {
    +    out.println(i);
    +    if (i < 10) {
    +      out.println(", ");
    +    }
    +  }
    +]]>
    +</jsp:scriptlet>
    +
    +<!-- Because I omit br's end tag, declare it as CDATA -->
    +<![CDATA[
    +  <br><br>
    +]]>
    +
    +<div align="left">
    +  Use a jsp:expression to write the date and time in the browser's locale: 
    +  <jsp:expression>getDateTimeStr(request.getLocale())</jsp:expression>
    +</div>
    +
    +
    +<jsp:text>
    +  &lt;p&gt;This sentence is enclosed in a jsp:text element.&lt;/p&gt;
    +</jsp:text>
    +
    +</body>
    +</html>
    +</jsp:root>
    +
    diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/servlets/cookies.html b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/cookies.html new file mode 100644 index 0000000..659a26d --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/cookies.html @@ -0,0 +1,61 @@ + + + +Untitled Document + + + + +

    +

    Source Code for Cookie Example
    +

    + +
    import java.io.*;
    +import javax.servlet.*;
    +import javax.servlet.http.*;
    +
    +public class CookieExample extends HttpServlet {
    +
    +    public void doGet(HttpServletRequest request, HttpServletResponse response)
    +    throws IOException, ServletException
    +    {
    +        response.setContentType("text/html");
    +        PrintWriter out = response.getWriter();
    +        
    +        // print out cookies
    +
    +        Cookie[] cookies = request.getCookies();
    +        for (int i = 0; i < cookies.length; i++) {
    +            Cookie c = cookies[i];
    +            String name = c.getName();
    +            String value = c.getValue();
    +            out.println(name + " = " + value);
    +        }
    +
    +        // set a cookie
    +
    +        String name = request.getParameter("cookieName");
    +        if (name != null && name.length() > 0) {
    +            String value = request.getParameter("cookieValue");
    +            Cookie c = new Cookie(name, value);
    +            response.addCookie(c);
    +        }
    +    }
    +}
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/servlets/helloworld.html b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/helloworld.html new file mode 100644 index 0000000..e30810a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/helloworld.html @@ -0,0 +1,50 @@ + + + +Untitled Document + + + + +

    +

    Source Code for HelloWorld Example
    +

    + +
    import java.io.*;
    +import javax.servlet.*;
    +import javax.servlet.http.*;
    +
    +public class HelloWorld extends HttpServlet {
    +
    +    public void doGet(HttpServletRequest request, HttpServletResponse response)
    +    throws IOException, ServletException
    +    {
    +        response.setContentType("text/html");
    +        PrintWriter out = response.getWriter();
    +        out.println("<html>");
    +        out.println("<head>");
    +        out.println("<title>Hello World!</title>");
    +        out.println("</head>");
    +        out.println("<body>");
    +        out.println("<h1>Hello World!</h1>");
    +        out.println("</body>");
    +        out.println("</html>");
    +    }
    +}
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/servlets/images/code.gif b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/images/code.gif new file mode 100644 index 0000000..93af2cd Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/images/code.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/servlets/images/execute.gif b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/images/execute.gif new file mode 100644 index 0000000..f64d70f Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/images/execute.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/servlets/images/return.gif b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/images/return.gif new file mode 100644 index 0000000..af4f68f Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/images/return.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/servlets/index.html b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/index.html new file mode 100644 index 0000000..b778706 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/index.html @@ -0,0 +1,121 @@ + + + + + + + + Servlet Examples + + +Servlet +Examples with Code +

    This is a collection of examples which demonstrate some of the more +frequently used parts of the Servlet API. Familiarity with the Java(tm) +Programming Language is assumed. +

    These examples will only work when viewed via an http URL. They will +not work if you are viewing these pages via a "file://..." URL. Please +refer to the README file provide with this Tomcat release regarding +how to configure and start the provided web server. +

    Wherever you see a form, enter some data and see how the servlet reacts. +When playing with the Cookie and Session Examples, jump back to the Headers +Example to see exactly what your browser is sending the server. +

    To navigate your way through the examples, the following icons will +help: +
      + + + + + + + + + + + + + + + + + + +
    Execute the example
    Look at the source code for the example
    Return to this screen
    + +

    Tip: To see the cookie interactions with your browser, try turning on +the "notify when setting a cookie" option in your browser preferences. +This will let you see when a session is created and give some feedback +when looking at the cookie demo. +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Hello WorldExecuteSource
    Request InfoExecuteSource
    Request HeadersExecuteSource
    Request ParametersExecuteSource
    CookiesExecuteSource
    SessionsExecuteSource
    + +

    Note: The source code for these examples does not contain all of the +source code that is actually in the example, only the important sections +of code. Code not important to understand the example has been removed +for clarity. + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/servlets/reqheaders.html b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/reqheaders.html new file mode 100644 index 0000000..4cb80c2 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/reqheaders.html @@ -0,0 +1,49 @@ + + + +Untitled Document + + + + +

    +

    Source Code for RequestHeader Example
    +

    + +
    import java.io.*;
    +import java.util.*;
    +import javax.servlet.*;
    +import javax.servlet.http.*;
    +
    +public class RequestHeaderExample extends HttpServlet {
    +
    +    public void doGet(HttpServletRequest request, HttpServletResponse response)
    +    throws IOException, ServletException
    +    {
    +        response.setContentType("text/html");
    +        PrintWriter out = response.getWriter();
    +        Enumeration e = request.getHeaderNames();
    +        while (e.hasMoreElements()) {
    +            String name = (String)e.nextElement();
    +            String value = request.getHeader(name);
    +            out.println(name + " = " + value);
    +        }
    +    }
    +}
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/servlets/reqinfo.html b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/reqinfo.html new file mode 100644 index 0000000..4ac664b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/reqinfo.html @@ -0,0 +1,68 @@ + + + +Untitled Document + + + + +

    +

    Source Code for Request Info Example
    +

    + +
    import java.io.*;
    +import javax.servlet.*;
    +import javax.servlet.http.*;
    +
    +public class RequestInfo extends HttpServlet {
    +
    +    public void doGet(HttpServletRequest request, HttpServletResponse response)
    +    throws IOException, ServletException
    +    {
    +        response.setContentType("text/html");
    +        PrintWriter out = response.getWriter();
    +        out.println("<html>");
    +        out.println("<body>");
    +        out.println("<head>");
    +        out.println("<title>Request Information Example</title>");
    +        out.println("</head>");
    +        out.println("<body>");
    +        out.println("<h3>Request Information Example</h3>");
    +        out.println("Method: " + request.getMethod());
    +        out.println("Request URI: " + request.getRequestURI());
    +        out.println("Protocol: " + request.getProtocol());
    +        out.println("PathInfo: " + request.getPathInfo());
    +        out.println("Remote Address: " + request.getRemoteAddr());
    +        out.println("</body>");
    +        out.println("</html>");
    +    }
    +
    +    /**
    +     * We are going to perform the same operations for POST requests
    +     * as for GET methods, so this method just sends the request to
    +     * the doGet method.
    +     */
    +
    +    public void doPost(HttpServletRequest request, HttpServletResponse response)
    +    throws IOException, ServletException
    +    {
    +        doGet(request, response);
    +    }
    +}
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/servlets/reqparams.html b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/reqparams.html new file mode 100644 index 0000000..b0de031 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/reqparams.html @@ -0,0 +1,78 @@ + + + +Untitled Document + + + + +

    +

    Source Code for Request Parameter Example
    +

    + +
    import java.io.*;
    +import java.util.*;
    +import javax.servlet.*;
    +import javax.servlet.http.*;
    +
    +public class RequestParamExample extends HttpServlet {
    +
    +    public void doGet(HttpServletRequest request, HttpServletResponse response)
    +    throws IOException, ServletException
    +    {
    +        response.setContentType("text/html");
    +        PrintWriter out = response.getWriter();
    +        out.println("<html>");
    +        out.println("<head>");
    +        out.println("<title>Request Parameters Example</title>");
    +        out.println("</head>");
    +        out.println("<body>");
    +        out.println("<h3>Request Parameters Example</h3>");
    +        out.println("Parameters in this request:<br>");
    +        if (firstName != null || lastName != null) {
    +            out.println("First Name:");
    +            out.println(" = " + HTMLFilter.filter(firstName) + "<br>");
    +            out.println("Last Name:");
    +            out.println(" = " + HTMLFilter.filter(lastName));
    +        } else {
    +            out.println("No Parameters, Please enter some");
    +        }
    +        out.println("<P>");
    +        out.print("<form action=\"");
    +        out.print("RequestParamExample\" ");
    +        out.println("method=POST>");
    +        out.println("First Name:");
    +        out.println("<input type=text size=20 name=firstname>");
    +        out.println("<br>");
    +        out.println("Last Name:");
    +        out.println("<input type=text size=20 name=lastname>");
    +        out.println("<br>");
    +        out.println("<input type=submit>");
    +        out.println("</form>");
    +        out.println("</body>");
    +        out.println("</html>");
    +    }
    +
    +    public void doPost(HttpServletRequest request, HttpServletResponse res)
    +    throws IOException, ServletException
    +    {
    +        doGet(request, response);
    +    }
    +}
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/examples/servlets/sessions.html b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/sessions.html new file mode 100644 index 0000000..65fc7fd --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/examples/servlets/sessions.html @@ -0,0 +1,70 @@ + + + +Untitled Document + + + + +

    +

    Source Code for Session Example
    +

    + +
    import java.io.*;
    +import java.util.*;
    +import javax.servlet.*;
    +import javax.servlet.http.*;
    +
    +public class SessionExample extends HttpServlet {
    +
    +    public void doGet(HttpServletRequest request, HttpServletResponse response)
    +    throws IOException, ServletException
    +    {
    +        response.setContentType("text/html");
    +        PrintWriter out = response.getWriter();
    +        
    +        HttpSession session = request.getSession(true);
    +
    +        // print session info
    +
    +        Date created = new Date(session.getCreationTime());
    +        Date accessed = new Date(session.getLastAccessedTime());
    +        out.println("ID " + session.getId());
    +        out.println("Created: " + created);
    +        out.println("Last Accessed: " + accessed);
    +
    +        // set session info if needed
    +
    +        String dataName = request.getParameter("dataName");
    +        if (dataName != null && dataName.length() > 0) {
    +            String dataValue = request.getParameter("dataValue");
    +            session.setAttribute(dataName, dataValue);
    +        }
    +
    +        // print session contents
    +
    +        Enumeration e = session.getAttributeNames();
    +        while (e.hasMoreElements()) {
    +            String name = (String)e.nextElement();
    +            String value = session.getAttribute(name).toString();
    +            out.println(name + " = " + value);
    +        }
    +    }
    +}
    + + diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/META-INF/context.xml b/P51/apache-tomcat-6.0.14/webapps/host-manager/META-INF/context.xml new file mode 100644 index 0000000..222879f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/host-manager/META-INF/context.xml @@ -0,0 +1 @@ + diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/WEB-INF/web.xml b/P51/apache-tomcat-6.0.14/webapps/host-manager/WEB-INF/web.xml new file mode 100644 index 0000000..2792c4e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/host-manager/WEB-INF/web.xml @@ -0,0 +1,94 @@ + + + + + Tomcat Manager Application + + A scriptable management web application for the Tomcat Web Server; + Manager lets you view, load/unload/etc particular web applications. + + + + + HostManager + org.apache.catalina.manager.host.HostManagerServlet + + debug + 2 + + + + HTMLHostManager + org.apache.catalina.manager.host.HTMLHostManagerServlet + + debug + 2 + + + + + + HostManager + /list + + + HostManager + /add + + + HostManager + /remove + + + HostManager + /start + + + HostManager + /stop + + + HTMLHostManager + /html/* + + + + + + HTMLHostManager and HostManager commands + /html/* + /list + /add + /remove + /start + /stop + + + + admin + + + + + + BASIC + Tomcat Host Manager Application + + + + + + The role that is required to log in to the Manager Application + + admin + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/images/add.gif b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/add.gif new file mode 100644 index 0000000..0774d07 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/add.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/images/asf-logo.gif b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/asf-logo.gif new file mode 100644 index 0000000..22eb9d7 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/asf-logo.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/images/code.gif b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/code.gif new file mode 100644 index 0000000..d27307b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/code.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/images/design.gif b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/design.gif new file mode 100644 index 0000000..f5db0a9 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/design.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/images/docs.gif b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/docs.gif new file mode 100644 index 0000000..d64a4a1 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/docs.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/images/fix.gif b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/fix.gif new file mode 100644 index 0000000..d59ad64 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/fix.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/images/tomcat.gif b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/tomcat.gif new file mode 100644 index 0000000..6175673 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/tomcat.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/images/update.gif b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/update.gif new file mode 100644 index 0000000..31e22ab Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/update.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/images/void.gif b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/void.gif new file mode 100644 index 0000000..e565824 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/host-manager/images/void.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/host-manager/manager.xml b/P51/apache-tomcat-6.0.14/webapps/host-manager/manager.xml new file mode 100644 index 0000000..dc3e699 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/host-manager/manager.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/401.jsp b/P51/apache-tomcat-6.0.14/webapps/manager/401.jsp new file mode 100644 index 0000000..abd358c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/manager/401.jsp @@ -0,0 +1,38 @@ +<% + response.setHeader("WWW-Authenticate", "Basic realm=\"Tomcat Manager Application\""); +%> + + + 401 Unauthorized + + + +

    401 Unauthorized

    +

    + You are not authorized to view this page. If you have not changed + any configuration files, please examine the file + conf/tomcat-users.xml in your installation. That + file will contain the credentials to let you use this webapp. +

    +

    + You will need to add manager role to the config file listed above. + For example: +

    +<role rolename="manager"/>
    +<user username="tomcat" password="s3cret" roles="manager"/>
    +
    +

    +

    + For more information - please see the + Manager App HOW-TO. +

    + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/META-INF/context.xml b/P51/apache-tomcat-6.0.14/webapps/manager/META-INF/context.xml new file mode 100644 index 0000000..222879f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/manager/META-INF/context.xml @@ -0,0 +1 @@ + diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/WEB-INF/web.xml b/P51/apache-tomcat-6.0.14/webapps/manager/WEB-INF/web.xml new file mode 100644 index 0000000..041653e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/manager/WEB-INF/web.xml @@ -0,0 +1,192 @@ + + + + + + Tomcat Manager Application + + A scriptable management web application for the Tomcat Web Server; + Manager lets you view, load/unload/etc particular web applications. + + + + + Manager + org.apache.catalina.manager.ManagerServlet + + debug + 2 + + + + HTMLManager + org.apache.catalina.manager.HTMLManagerServlet + + debug + 2 + + + + Status + org.apache.catalina.manager.StatusManagerServlet + + debug + 0 + + + + + JMXProxy + org.apache.catalina.manager.JMXProxyServlet + + + + + Manager + /list + + + Manager + /sessions + + + Manager + /start + + + Manager + /stop + + + Manager + /install + + + Manager + /remove + + + Manager + /deploy + + + Manager + /undeploy + + + Manager + /reload + + + Manager + /save + + + Manager + /serverinfo + + + Manager + /roles + + + Manager + /resources + + + Status + /status/* + + + JMXProxy + /jmxproxy/* + + + HTMLManager + /html/* + + + + + + Link to the UserDatabase instance from which we request lists of + defined role names. Typically, this will be connected to the global + user database with a ResourceLink element in server.xml or the context + configuration file for the Manager web application. + + users + + org.apache.catalina.UserDatabase + + + + + + + HTMLManger and Manager command + /jmxproxy/* + /html/* + /list + /sessions + /start + /stop + /install + /remove + /deploy + /undeploy + /reload + /save + /serverinfo + /status/* + /roles + /resources + + + + manager + + + + + + BASIC + Tomcat Manager Application + + + + + + The role that is required to log in to the Manager Application + + manager + + + + 401 + /401.jsp + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/images/add.gif b/P51/apache-tomcat-6.0.14/webapps/manager/images/add.gif new file mode 100644 index 0000000..0774d07 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/manager/images/add.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/images/asf-logo.gif b/P51/apache-tomcat-6.0.14/webapps/manager/images/asf-logo.gif new file mode 100644 index 0000000..22eb9d7 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/manager/images/asf-logo.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/images/code.gif b/P51/apache-tomcat-6.0.14/webapps/manager/images/code.gif new file mode 100644 index 0000000..d27307b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/manager/images/code.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/images/design.gif b/P51/apache-tomcat-6.0.14/webapps/manager/images/design.gif new file mode 100644 index 0000000..f5db0a9 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/manager/images/design.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/images/docs.gif b/P51/apache-tomcat-6.0.14/webapps/manager/images/docs.gif new file mode 100644 index 0000000..d64a4a1 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/manager/images/docs.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/images/fix.gif b/P51/apache-tomcat-6.0.14/webapps/manager/images/fix.gif new file mode 100644 index 0000000..d59ad64 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/manager/images/fix.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/images/tomcat.gif b/P51/apache-tomcat-6.0.14/webapps/manager/images/tomcat.gif new file mode 100644 index 0000000..6175673 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/manager/images/tomcat.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/images/update.gif b/P51/apache-tomcat-6.0.14/webapps/manager/images/update.gif new file mode 100644 index 0000000..31e22ab Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/manager/images/update.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/images/void.gif b/P51/apache-tomcat-6.0.14/webapps/manager/images/void.gif new file mode 100644 index 0000000..e565824 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/webapps/manager/images/void.gif differ diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/sessionDetail.jsp b/P51/apache-tomcat-6.0.14/webapps/manager/sessionDetail.jsp new file mode 100644 index 0000000..8c4844b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/manager/sessionDetail.jsp @@ -0,0 +1,132 @@ + +<%@page session="false" contentType="text/html; charset=ISO-8859-1" %> +<%@page import="java.util.Enumeration" %> +<%@page import="javax.servlet.http.HttpSession" %> +<%@page import="org.apache.catalina.Session" %> +<%@page import="org.apache.catalina.manager.JspHelper" %> + +<%--!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" + "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"--%> + + +<% String path = (String) request.getAttribute("path"); + Session currentSession = (Session)request.getAttribute("currentSession"); + HttpSession currentHttpSession = currentSession.getSession(); + String currentSessionId = currentSession.getId(); + String submitUrl = ((HttpServletRequest)pageContext.getRequest()).getRequestURL().toString(); +%> + + + + + + + + + + Sessions Administration: details for <%= currentSessionId %> + + +

    Details for Session <%= JspHelper.escapeXml(currentSessionId) %>

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Session Id<%= currentSessionId %>
    Guessed Locale<%= JspHelper.guessDisplayLocaleFromSession(currentSession) %>
    Guessed User<%= JspHelper.guessDisplayUserFromSession(currentSession) %>
    Creation Time<%= JspHelper.getDisplayCreationTimeForSession(currentSession) %>
    Last Accessed Time<%= JspHelper.getDisplayLastAccessedTimeForSession(currentSession) %>
    Session Max Inactive Interval<%= JspHelper.secondsToTimeString(currentSession.getMaxInactiveInterval()) %>
    Used Time<%= JspHelper.getDisplayUsedTimeForSession(currentSession) %>
    Inactive Time<%= JspHelper.getDisplayInactiveTimeForSession(currentSession) %>
    TTL<%= JspHelper.getDisplayTTLForSession(currentSession) %>
    + +

    + +
    <%= JspHelper.escapeXml(request.getAttribute("error")) %>
    +
    <%= JspHelper.escapeXml(request.getAttribute("message")) %>
    + + +<% int nAttributes = 0; + Enumeration attributeNamesEnumeration = currentHttpSession.getAttributeNames(); + while (attributeNamesEnumeration.hasMoreElements()) { + attributeNamesEnumeration.nextElement(); + ++nAttributes; + } +%> + + + + + + + + + <%--tfoot> + + + + + +<% attributeNamesEnumeration = currentHttpSession.getAttributeNames(); + while (attributeNamesEnumeration.hasMoreElements()) { + String attributeName = (String) attributeNamesEnumeration.nextElement(); +%> + + + + + +<% } // end while %> + +
    <%= JspHelper.formatNumber(nAttributes) %> attributes
    Remove AttributeAttribute nameAttribute value
    + TODO: set Max Inactive Interval on sessions +
    <%= JspHelper.escapeXml(attributeName) %><% Object attributeValue = currentHttpSession.getAttribute(attributeName); %>"><%= JspHelper.escapeXml(attributeValue) %>
    + +

    + +<%--div style="display: none;"> +

    + Valid HTML 4.01! + Valid XHTML 1.0! + Valid XHTML 1.1! +

    + + + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/sessionsList.jsp b/P51/apache-tomcat-6.0.14/webapps/manager/sessionsList.jsp new file mode 100644 index 0000000..5c30e99 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/manager/sessionsList.jsp @@ -0,0 +1,122 @@ + +<%@page session="false" contentType="text/html; charset=ISO-8859-1" %> +<%@page import="java.util.Collection" %> +<%@page import="java.util.Iterator" %> +<%@page import="org.apache.catalina.manager.JspHelper" %> +<%@page import="org.apache.catalina.Session" %> + + + +<% String path = (String) request.getAttribute("path"); + String submitUrl = ((HttpServletRequest)pageContext.getRequest()).getRequestURL().append("?path=").append(path).toString(); + Collection activeSessions = (Collection) request.getAttribute("activeSessions"); +%> + + + + + + + + + + Sessions Administration for <%= path %> + + +

    Sessions Administration for <%= path %>

    + +

    Tips:

    +
      +
    • Click on a column to sort.
    • +
    • To view a session details and/or remove a session attributes, click on its id.
    • +
    + +
    <%= JspHelper.escapeXml(request.getAttribute("error")) %>
    +
    <%= JspHelper.escapeXml(request.getAttribute("message")) %>
    + +
    +
    Active HttpSessions informations + + "/> + <% String order = (String) request.getAttribute("order"); + if (order == null || "".equals(order)) { + order = "ASC"; + } + %> + + + <%= JspHelper.formatNumber(activeSessions.size()) %> active Sessions
    + + + + + + + + + + + + + + <% if (activeSessions.size() > 10) { %> + <%-- is the same as --%> + + + + + + + + + + + + <% } // end if %> + +<% Iterator iter = activeSessions.iterator(); + while (iter.hasNext()) { + Session currentSession = (Session) iter.next(); + String currentSessionId = currentSession.getId(); +%> + + + + + + + + + + +<% } // end while %> + +
    Session IdGuessed LocaleGuessed User nameCreation TimeLast Accessed TimeUsed TimeInactive TimeTTL
    Session IdGuessed LocaleGuessed User nameCreation TimeLast Accessed TimeUsed TimeInactive TimeTTL
    +<%= JspHelper.escapeXml(currentSessionId) %> + <%= JspHelper.guessDisplayLocaleFromSession(currentSession) %><%= JspHelper.guessDisplayUserFromSession(currentSession) %><%= JspHelper.getDisplayCreationTimeForSession(currentSession) %><%= JspHelper.getDisplayLastAccessedTimeForSession(currentSession) %><%= JspHelper.getDisplayUsedTimeForSession(currentSession) %><%= JspHelper.getDisplayInactiveTimeForSession(currentSession) %><%= JspHelper.getDisplayTTLForSession(currentSession) %>
    +

    + +

    +
    +
    + +

    + +<%--div style="display: none;"> +

    + Valid HTML 4.01! + Valid XHTML 1.0! + Valid XHTML 1.1! +

    + + + + \ No newline at end of file diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/status.xsd b/P51/apache-tomcat-6.0.14/webapps/manager/status.xsd new file mode 100644 index 0000000..5a45807 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/manager/status.xsd @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/P51/apache-tomcat-6.0.14/webapps/manager/xform.xsl b/P51/apache-tomcat-6.0.14/webapps/manager/xform.xsl new file mode 100644 index 0000000..7a68ce6 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/webapps/manager/xform.xsl @@ -0,0 +1,96 @@ + + + + + + + + + + + Tomcat Status + + + +
    Tomcat Status
    + + + + + +
    + + + + + + + + + + + + +
    JVM:free: total: max:

    +
    + + + Connector --
    + + + + +
    + + + + + + + + + + +
    threadInfo maxThreads: minSpareThreads: maxSpareThreads: currentThreadCount: currentThreadsBusy:

    +
    + + + + + + + + + + + +
    requestInfo maxTime: processingTime: requestCount: errorCount: bytesReceived: bytesSent:

    +
    + + + + + + +
    StageTimeB SentB RecvClientVHostRequest

    +
    + + + + + + + + + + ? + + + +
    diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/erreurs_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/erreurs_jsp.class new file mode 100644 index 0000000..a773ccc Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/erreurs_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/erreurs_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/erreurs_jsp.java new file mode 100644 index 0000000..37f4176 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/erreurs_jsp.java @@ -0,0 +1,149 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class erreurs_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Erreurs\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articles
    \r\n"); + out.write(" \r\n"); + out.write("\t\t

    Les erreurs suivantes se sont produites :

    \r\n"); + out.write("\t\t
      \r\n"); + out.write("\t\t\t"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\t\t
    \r\n"); + out.write("\t\t\r\n"); + out.write(" \t

    Accueil

    \r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /erreurs.jsp(30,3) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${erreurs}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /erreurs.jsp(30,3) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("err"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write("\t\t\t\t\t
  • \r\n"); + out.write("\t\t\t\t\t\t"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${err.message}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\t\t\t\t\t
  • \r\n"); + out.write("\t\t\t"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/index_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/index_jsp.class new file mode 100644 index 0000000..9873b9f Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/index_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/index_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/index_jsp.java new file mode 100644 index 0000000..0c0412b --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/index_jsp.java @@ -0,0 +1,84 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write("
    \r\n"); + out.write(" Afficher les articles\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/panierVide_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/panierVide_jsp.class new file mode 100644 index 0000000..7f6ca11 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/panierVide_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/panierVide_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/panierVide_jsp.java new file mode 100644 index 0000000..4e1b0c5 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/RandoOnLine/org/apache/jsp/panierVide_jsp.java @@ -0,0 +1,94 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class panierVide_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t\r\n"); + out.write(" RandoOnLine - Contenu du Panier\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    RandoOnLine

    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    AccueilPanierListe des articles
    \r\n"); + out.write(" \r\n"); + out.write("\t\t

    Contenu de votre panier

    \r\n"); + out.write("\t\t

    Votre panier est vide

    \r\n"); + out.write(" \tContinuez vos achats\r\n"); + out.write("\t\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/blankoworld/org/apache/jsp/bonjour_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/blankoworld/org/apache/jsp/bonjour_jsp.class new file mode 100644 index 0000000..88ecf09 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/blankoworld/org/apache/jsp/bonjour_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/blankoworld/org/apache/jsp/bonjour_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/blankoworld/org/apache/jsp/bonjour_jsp.java new file mode 100644 index 0000000..ab63e99 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/blankoworld/org/apache/jsp/bonjour_jsp.java @@ -0,0 +1,105 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class bonjour_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(1); + _jspx_dependants.add("/librairie.tld"); + } + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\n"); + out.write("\n"); + out.write("\n"); + out.write("\t\n"); + out.write("\n"); + out.write("\n"); + out.write("\t
    \n"); + out.write("\t\t
    \t

    Notre outil applicatif

    \n"); + out.write("\t\t
    \n"); + out.write("\t\t\t\n"); + out.write("\t\t
    \n"); + out.write("\t\t
    \n"); + out.write("\t\t\t"); + if (_jspx_meth_balise_005fbonjour_005f0(_jspx_page_context)) + return; + out.write("\n"); + out.write("\t\t
    \n"); + out.write("\t
    \n"); + out.write("\n"); + out.write("\n"); + out.write("\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_balise_005fbonjour_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // balise:bonjour + jsp2.bonjour _jspx_th_balise_005fbonjour_005f0 = new jsp2.bonjour(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_balise_005fbonjour_005f0); + _jspx_th_balise_005fbonjour_005f0.setJspContext(_jspx_page_context); + _jspx_th_balise_005fbonjour_005f0.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_balise_005fbonjour_005f0); + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/erreurs_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/erreurs_jsp.class new file mode 100644 index 0000000..3c76c72 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/erreurs_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/erreurs_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/erreurs_jsp.java new file mode 100644 index 0000000..352fa8f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/erreurs_jsp.java @@ -0,0 +1,258 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class erreurs_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(2); + _jspx_dependants.add("/includes/entete.jsp"); + _jspx_dependants.add("/includes/enqueue.jsp"); + } + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody; + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.release(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\n"); + out.write("\n"); + out.write("\n"); + out.write("\n"); + if (_jspx_meth_c_005furl_005f0(_jspx_page_context)) + return; + out.write("\n"); + out.write("\n"); + out.write("\t\n"); + out.write("\tI comme Herse\n"); + out.write("\t\n"); + out.write("\n"); + out.write("\n"); + out.write("
    \n"); + out.write("\n"); + out.write("\t

    I, comme Herse

    \n"); + out.write("\n"); + out.write("\t
    \n"); + out.write("\t\t
      \n"); + if (_jspx_meth_c_005furl_005f1(_jspx_page_context)) + return; + out.write('\n'); + if (_jspx_meth_c_005furl_005f2(_jspx_page_context)) + return; + out.write('\n'); + if (_jspx_meth_c_005furl_005f3(_jspx_page_context)) + return; + out.write("\n"); + out.write("\t\t\t
    • Accueil
    • \n"); + out.write("\t\t\t
    • Articles
    • \n"); + out.write("\t\t\t
    • Panier
    • \n"); + out.write("\t\t
    \n"); + out.write("\t
    \n"); + out.write("\n"); + out.write("\t
    \n"); + out.write("\t\t

    Erreur !

    \r\n"); + out.write("\t\t\t"); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write('\r'); + out.write('\n'); + out.write("\t
    \n"); + out.write("\n"); + out.write("\t

    Propulsé par J2EE sur Tomcat5, écrit à l'aide de VIM

    \n"); + out.write("
    \n"); + out.write("\n"); + out.write("\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005furl_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f0 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f0.setParent(null); + // /includes/entete.jsp(6,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f0.setVar("charte"); + // /includes/entete.jsp(6,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f0.setValue("/style.css"); + int _jspx_eval_c_005furl_005f0 = _jspx_th_c_005furl_005f0.doStartTag(); + if (_jspx_th_c_005furl_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f0); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f0); + return false; + } + + private boolean _jspx_meth_c_005furl_005f1(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f1 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f1.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f1.setParent(null); + // /includes/entete.jsp(19,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f1.setVar("accueil"); + // /includes/entete.jsp(19,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f1.setValue("/"); + int _jspx_eval_c_005furl_005f1 = _jspx_th_c_005furl_005f1.doStartTag(); + if (_jspx_th_c_005furl_005f1.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f1); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f1); + return false; + } + + private boolean _jspx_meth_c_005furl_005f2(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f2 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f2.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f2.setParent(null); + // /includes/entete.jsp(20,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f2.setVar("article"); + // /includes/entete.jsp(20,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f2.setValue("/Articles"); + int _jspx_eval_c_005furl_005f2 = _jspx_th_c_005furl_005f2.doStartTag(); + if (_jspx_th_c_005furl_005f2.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f2); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f2); + return false; + } + + private boolean _jspx_meth_c_005furl_005f3(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f3 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f3.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f3.setParent(null); + // /includes/entete.jsp(21,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f3.setVar("panier"); + // /includes/entete.jsp(21,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f3.setValue("/Panier"); + int _jspx_eval_c_005furl_005f3 = _jspx_th_c_005furl_005f3.doStartTag(); + if (_jspx_th_c_005furl_005f3.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f3); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f3); + return false; + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /erreurs.jsp(2,3) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${erreurs}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /erreurs.jsp(2,3) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("err"); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write("\t\t\t

    "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${err.message}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("

    \r\n"); + out.write("\t\t\t"); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/index_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/index_jsp.class new file mode 100644 index 0000000..0c633f8 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/index_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/index_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/index_jsp.java new file mode 100644 index 0000000..6d856d1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/index_jsp.java @@ -0,0 +1,209 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(2); + _jspx_dependants.add("/includes/entete.jsp"); + _jspx_dependants.add("/includes/enqueue.jsp"); + } + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\n"); + out.write("\n"); + out.write("\n"); + out.write("\n"); + if (_jspx_meth_c_005furl_005f0(_jspx_page_context)) + return; + out.write("\n"); + out.write("\n"); + out.write("\t\n"); + out.write("\tI comme Herse\n"); + out.write("\t\n"); + out.write("\n"); + out.write("\n"); + out.write("
    \n"); + out.write("\n"); + out.write("\t

    I, comme Herse

    \n"); + out.write("\n"); + out.write("\t
    \n"); + out.write("\t\t
      \n"); + if (_jspx_meth_c_005furl_005f1(_jspx_page_context)) + return; + out.write('\n'); + if (_jspx_meth_c_005furl_005f2(_jspx_page_context)) + return; + out.write('\n'); + if (_jspx_meth_c_005furl_005f3(_jspx_page_context)) + return; + out.write("\n"); + out.write("\t\t\t
    • Accueil
    • \n"); + out.write("\t\t\t
    • Articles
    • \n"); + out.write("\t\t\t
    • Panier
    • \n"); + out.write("\t\t
    \n"); + out.write("\t
    \n"); + out.write("\n"); + out.write("\t
    \n"); + out.write("

    Bienvenue dans le site d'Ecommerce

    "); + out.write("\t
    \n"); + out.write("\n"); + out.write("\t

    Propulsé par J2EE sur Tomcat5, écrit à l'aide de VIM

    \n"); + out.write("
    \n"); + out.write("\n"); + out.write("\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005furl_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f0 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f0.setParent(null); + // /includes/entete.jsp(6,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f0.setVar("charte"); + // /includes/entete.jsp(6,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f0.setValue("/style.css"); + int _jspx_eval_c_005furl_005f0 = _jspx_th_c_005furl_005f0.doStartTag(); + if (_jspx_th_c_005furl_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f0); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f0); + return false; + } + + private boolean _jspx_meth_c_005furl_005f1(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f1 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f1.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f1.setParent(null); + // /includes/entete.jsp(19,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f1.setVar("accueil"); + // /includes/entete.jsp(19,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f1.setValue("/"); + int _jspx_eval_c_005furl_005f1 = _jspx_th_c_005furl_005f1.doStartTag(); + if (_jspx_th_c_005furl_005f1.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f1); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f1); + return false; + } + + private boolean _jspx_meth_c_005furl_005f2(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f2 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f2.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f2.setParent(null); + // /includes/entete.jsp(20,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f2.setVar("article"); + // /includes/entete.jsp(20,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f2.setValue("/Articles"); + int _jspx_eval_c_005furl_005f2 = _jspx_th_c_005furl_005f2.doStartTag(); + if (_jspx_th_c_005furl_005f2.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f2); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f2); + return false; + } + + private boolean _jspx_meth_c_005furl_005f3(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f3 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f3.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f3.setParent(null); + // /includes/entete.jsp(21,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f3.setVar("panier"); + // /includes/entete.jsp(21,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f3.setValue("/Panier"); + int _jspx_eval_c_005furl_005f3 = _jspx_th_c_005furl_005f3.doStartTag(); + if (_jspx_th_c_005furl_005f3.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f3); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f3); + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/panierVide_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/panierVide_jsp.class new file mode 100644 index 0000000..b017e59 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/panierVide_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/panierVide_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/panierVide_jsp.java new file mode 100644 index 0000000..63fb78a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/ecommerce/org/apache/jsp/panierVide_jsp.java @@ -0,0 +1,211 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class panierVide_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(2); + _jspx_dependants.add("/includes/entete.jsp"); + _jspx_dependants.add("/includes/enqueue.jsp"); + } + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\n"); + out.write("\n"); + out.write("\n"); + out.write("\n"); + if (_jspx_meth_c_005furl_005f0(_jspx_page_context)) + return; + out.write("\n"); + out.write("\n"); + out.write("\t\n"); + out.write("\tI comme Herse\n"); + out.write("\t\n"); + out.write("\n"); + out.write("\n"); + out.write("
    \n"); + out.write("\n"); + out.write("\t

    I, comme Herse

    \n"); + out.write("\n"); + out.write("\t
    \n"); + out.write("\t\t
      \n"); + if (_jspx_meth_c_005furl_005f1(_jspx_page_context)) + return; + out.write('\n'); + if (_jspx_meth_c_005furl_005f2(_jspx_page_context)) + return; + out.write('\n'); + if (_jspx_meth_c_005furl_005f3(_jspx_page_context)) + return; + out.write("\n"); + out.write("\t\t\t
    • Accueil
    • \n"); + out.write("\t\t\t
    • Articles
    • \n"); + out.write("\t\t\t
    • Panier
    • \n"); + out.write("\t\t
    \n"); + out.write("\t
    \n"); + out.write("\n"); + out.write("\t
    \n"); + out.write("\t\t

    Contenu Panier

    \r\n"); + out.write("\t\t

    Rien

    \r\n"); + out.write(" \tContinuez les achats\r\n"); + out.write("\t
    \n"); + out.write("\n"); + out.write("\t

    Propulsé par J2EE sur Tomcat5, écrit à l'aide de VIM

    \n"); + out.write("
    \n"); + out.write("\n"); + out.write("\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005furl_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f0 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f0.setParent(null); + // /includes/entete.jsp(6,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f0.setVar("charte"); + // /includes/entete.jsp(6,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f0.setValue("/style.css"); + int _jspx_eval_c_005furl_005f0 = _jspx_th_c_005furl_005f0.doStartTag(); + if (_jspx_th_c_005furl_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f0); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f0); + return false; + } + + private boolean _jspx_meth_c_005furl_005f1(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f1 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f1.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f1.setParent(null); + // /includes/entete.jsp(19,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f1.setVar("accueil"); + // /includes/entete.jsp(19,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f1.setValue("/"); + int _jspx_eval_c_005furl_005f1 = _jspx_th_c_005furl_005f1.doStartTag(); + if (_jspx_th_c_005furl_005f1.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f1); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f1); + return false; + } + + private boolean _jspx_meth_c_005furl_005f2(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f2 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f2.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f2.setParent(null); + // /includes/entete.jsp(20,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f2.setVar("article"); + // /includes/entete.jsp(20,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f2.setValue("/Articles"); + int _jspx_eval_c_005furl_005f2 = _jspx_th_c_005furl_005f2.doStartTag(); + if (_jspx_th_c_005furl_005f2.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f2); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f2); + return false; + } + + private boolean _jspx_meth_c_005furl_005f3(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:url + org.apache.taglibs.standard.tag.rt.core.UrlTag _jspx_th_c_005furl_005f3 = (org.apache.taglibs.standard.tag.rt.core.UrlTag) _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.UrlTag.class); + _jspx_th_c_005furl_005f3.setPageContext(_jspx_page_context); + _jspx_th_c_005furl_005f3.setParent(null); + // /includes/entete.jsp(21,0) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f3.setVar("panier"); + // /includes/entete.jsp(21,0) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005furl_005f3.setValue("/Panier"); + int _jspx_eval_c_005furl_005f3 = _jspx_th_c_005furl_005f3.doStartTag(); + if (_jspx_th_c_005furl_005f3.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f3); + return true; + } + _005fjspx_005ftagPool_005fc_005furl_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005furl_005f3); + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.class new file mode 100644 index 0000000..fea5f15 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.java new file mode 100644 index 0000000..e8bb2a1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.java @@ -0,0 +1,176 @@ +package org.apache.jsp.jsp.jsp2.el; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class basic_002darithmetic_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Expression Language - Basic Arithmetic\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Expression Language - Basic Arithmetic

    \r\n"); + out.write("
    \r\n"); + out.write(" This example illustrates basic Expression Language arithmetic.\r\n"); + out.write(" Addition (+), subtraction (-), multiplication (*), division (/ or div), \r\n"); + out.write(" and modulus (% or mod) are all supported. Error conditions, like\r\n"); + out.write(" division by zero, are handled gracefully.\r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t
    EL ExpressionResult
    ${1}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1 + 2}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1 + 2}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1.2 + 2.3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1.2 + 2.3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1.2E4 + 1.4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1.2E4 + 1.4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${-4 - 2}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${-4 - 2}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${21 * 2}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${21 * 2}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${3/4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${3/4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${3 div 4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${3 div 4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${3/0}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${3/0}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${10%4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${10%4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${10 mod 4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${10 mod 4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${(1==2) ? 3 : 4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${(1==2) ? 3 : 4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.class new file mode 100644 index 0000000..7ea5e88 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.java new file mode 100644 index 0000000..6d1b0e0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.java @@ -0,0 +1,210 @@ +package org.apache.jsp.jsp.jsp2.el; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class basic_002dcomparisons_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Expression Language - Basic Comparisons\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Expression Language - Basic Comparisons

    \r\n"); + out.write("
    \r\n"); + out.write(" This example illustrates basic Expression Language comparisons.\r\n"); + out.write(" The following comparison operators are supported:\r\n"); + out.write("
      \r\n"); + out.write("
    • Less-than (< or lt)
    • \r\n"); + out.write("
    • Greater-than (> or gt)
    • \r\n"); + out.write("
    • Less-than-or-equal (<= or le)
    • \r\n"); + out.write("
    • Greater-than-or-equal (>= or ge)
    • \r\n"); + out.write("
    • Equal (== or eq)
    • \r\n"); + out.write("
    • Not Equal (!= or ne)
    • \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" Numeric\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t
    EL ExpressionResult
    ${1 < 2}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1 < 2}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1 lt 2}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1 lt 2}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1 > (4/2)}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1 > (4/2)}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1 > (4/2)}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1 > (4/2)}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${4.0 >= 3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${4.0 >= 3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${4.0 ge 3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${4.0 ge 3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${4 <= 3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${4 <= 3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${4 le 3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${4 le 3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${100.0 == 100}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${100.0 == 100}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${100.0 eq 100}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${100.0 eq 100}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${(10*10) != 100}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${(10*10) != 100}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${(10*10) ne 100}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${(10*10) ne 100}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" Alphabetic\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t
    EL ExpressionResult
    ${'a' < 'b'}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${'a' < 'b'}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${'hip' > 'hit'}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${'hip' > 'hit'}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${'4' > 3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${'4' > 3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.class new file mode 100644 index 0000000..822cef1 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.java new file mode 100644 index 0000000..394c950 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.java @@ -0,0 +1,116 @@ +package org.apache.jsp.jsp.jsp2.simpletag; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class hello_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(1); + _jspx_dependants.add("/WEB-INF/jsp2/jsp2-example-taglib.tld"); + } + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Examples - Hello World SimpleTag Handler\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Examples - Hello World SimpleTag Handler

    \r\n"); + out.write("
    \r\n"); + out.write("

    This tag handler simply echos \"Hello, World!\" It's an example of\r\n"); + out.write(" a very basic SimpleTag handler with no body.

    \r\n"); + out.write("
    \r\n"); + out.write(" Result:\r\n"); + out.write(" "); + if (_jspx_meth_mytag_005fhelloWorld_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_mytag_005fhelloWorld_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // mytag:helloWorld + jsp2.examples.simpletag.HelloWorldSimpleTag _jspx_th_mytag_005fhelloWorld_005f0 = new jsp2.examples.simpletag.HelloWorldSimpleTag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_mytag_005fhelloWorld_005f0); + _jspx_th_mytag_005fhelloWorld_005f0.setJspContext(_jspx_page_context); + _jspx_th_mytag_005fhelloWorld_005f0.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_mytag_005fhelloWorld_005f0); + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/manager/org/apache/jsp/_401_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/canette/manager/org/apache/jsp/_401_jsp.class new file mode 100644 index 0000000..83dd380 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/canette/manager/org/apache/jsp/_401_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/canette/manager/org/apache/jsp/_401_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/canette/manager/org/apache/jsp/_401_jsp.java new file mode 100644 index 0000000..a6e85e8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/canette/manager/org/apache/jsp/_401_jsp.java @@ -0,0 +1,103 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class _401_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + + response.setHeader("WWW-Authenticate", "Basic realm=\"Tomcat Manager Application\""); + + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" 401 Unauthorized\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    401 Unauthorized

    \r\n"); + out.write("

    \r\n"); + out.write(" You are not authorized to view this page. If you have not changed\r\n"); + out.write(" any configuration files, please examine the file\r\n"); + out.write(" conf/tomcat-users.xml in your installation. That\r\n"); + out.write(" file will contain the credentials to let you use this webapp.\r\n"); + out.write("

    \r\n"); + out.write("

    \r\n"); + out.write(" You will need to add manager role to the config file listed above.\r\n"); + out.write(" For example:\r\n"); + out.write("

    \r\n");
    +      out.write("<role rolename=\"manager\"/>\r\n");
    +      out.write("<user username=\"tomcat\" password=\"s3cret\" roles=\"manager\"/>\r\n");
    +      out.write("
    \r\n"); + out.write("

    \r\n"); + out.write("

    \r\n"); + out.write(" For more information - please see the\r\n"); + out.write(" Manager App HOW-TO.\r\n"); + out.write("

    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/_/SESSIONS.ser b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/_/SESSIONS.ser new file mode 100644 index 0000000..e555e0b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/_/SESSIONS.ser differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/_/org/apache/jsp/index_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/_/org/apache/jsp/index_jsp.class new file mode 100644 index 0000000..e5e8b23 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/_/org/apache/jsp/index_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/_/org/apache/jsp/index_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/_/org/apache/jsp/index_jsp.java new file mode 100644 index 0000000..a57824e --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/_/org/apache/jsp/index_jsp.java @@ -0,0 +1,279 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, false, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" "); + out.print( application.getServerInfo() ); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write("\t \"The\r\n"); + out.write("\t\r\n"); + out.write(" "); + out.print( application.getServerInfo() ); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\t \"The\r\n"); + out.write("\t\r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\t\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t \r\n"); + out.write(" \r\n"); + out.write("
    Administration
    \r\n"); + out.write("\t\t Status
    \r\n"); + out.write(" \r\n"); + out.write(" Tomcat Manager
    \r\n"); + out.write("  \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("\t
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Documentation
    \r\n"); + out.write(" Release Notes
    \r\n"); + out.write(" Change Log
    \r\n"); + out.write(" Tomcat Documentation
     \r\n"); + out.write("  \r\n"); + out.write("\t\t
    \r\n"); + out.write("\t \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Tomcat Online
    \r\n"); + out.write(" Home Page
    \r\n"); + out.write("\t\t FAQ
    \r\n"); + out.write(" Bug Database
    \r\n"); + out.write(" Open Bugs
    \r\n"); + out.write(" Users Mailing List
    \r\n"); + out.write(" Developers Mailing List
    \r\n"); + out.write(" IRC
    \r\n"); + out.write("\t\t  \r\n"); + out.write("
    \r\n"); + out.write("\t \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Examples
    \r\n"); + out.write(" Servlets Examples
    \r\n"); + out.write(" JSP Examples
    \r\n"); + out.write(" WebDAV capabilities
    \r\n"); + out.write(" \t\t  \r\n"); + out.write("
    \r\n"); + out.write("\t \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t\t \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    Miscellaneous
    \r\n"); + out.write(" Sun's Java Server Pages Site
    \r\n"); + out.write(" Sun's Servlet Site
    \r\n"); + out.write(" \t\t  \r\n"); + out.write("
    \r\n"); + out.write("
     \r\n"); + out.write("

    If you're seeing this page via a web browser, it means you've setup Tomcat successfully. Congratulations!

    \r\n"); + out.write(" \r\n"); + out.write("

    As you may have guessed by now, this is the default Tomcat home page. It can be found on the local filesystem at:

    \r\n"); + out.write("

    $CATALINA_HOME/webapps/ROOT/index.jsp

    \r\n"); + out.write("\t \r\n"); + out.write("

    where \"$CATALINA_HOME\" is the root of the Tomcat installation directory. If you're seeing this page, and you don't think you should be, then either you're either a user who has arrived at new installation of Tomcat, or you're an administrator who hasn't got his/her setup quite right. Providing the latter is the case, please refer to the Tomcat Documentation for more detailed setup and administration information than is found in the INSTALL file.

    \r\n"); + out.write("\r\n"); + out.write("

    NOTE: For security reasons, using the administration webapp\r\n"); + out.write(" is restricted to users with role \"admin\". The manager webapp\r\n"); + out.write(" is restricted to users with role \"manager\".\r\n"); + out.write(" Users are defined in $CATALINA_HOME/conf/tomcat-users.xml.

    \r\n"); + out.write("\r\n"); + out.write("

    Included with this release are a host of sample Servlets and JSPs (with associated source code), extensive documentation, and an introductory guide to developing web applications.

    \r\n"); + out.write("\r\n"); + out.write("

    Tomcat mailing lists are available at the Tomcat project web site:

    \r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    Thanks for using Tomcat!

    \r\n"); + out.write("\r\n"); + out.write("

    \"Powered
    \r\n"); + out.write("\t  \r\n"); + out.write("\r\n"); + out.write("\t Copyright © 1999-2006 Apache Software Foundation
    \r\n"); + out.write(" All Rights Reserved\r\n"); + out.write("

    \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/blankoworld/SESSIONS.ser b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/blankoworld/SESSIONS.ser new file mode 100644 index 0000000..3dbc913 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/blankoworld/SESSIONS.ser differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/blankoworld/org/apache/jsp/bonjour_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/blankoworld/org/apache/jsp/bonjour_jsp.class new file mode 100644 index 0000000..88ecf09 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/blankoworld/org/apache/jsp/bonjour_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/blankoworld/org/apache/jsp/bonjour_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/blankoworld/org/apache/jsp/bonjour_jsp.java new file mode 100644 index 0000000..ab63e99 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/blankoworld/org/apache/jsp/bonjour_jsp.java @@ -0,0 +1,105 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class bonjour_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(1); + _jspx_dependants.add("/librairie.tld"); + } + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\n"); + out.write("\n"); + out.write("\n"); + out.write("\t\n"); + out.write("\n"); + out.write("\n"); + out.write("\t
    \n"); + out.write("\t\t
    \t

    Notre outil applicatif

    \n"); + out.write("\t\t
    \n"); + out.write("\t\t\t\n"); + out.write("\t\t
    \n"); + out.write("\t\t
    \n"); + out.write("\t\t\t"); + if (_jspx_meth_balise_005fbonjour_005f0(_jspx_page_context)) + return; + out.write("\n"); + out.write("\t\t
    \n"); + out.write("\t
    \n"); + out.write("\n"); + out.write("\n"); + out.write("\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_balise_005fbonjour_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // balise:bonjour + jsp2.bonjour _jspx_th_balise_005fbonjour_005f0 = new jsp2.bonjour(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_balise_005fbonjour_005f0); + _jspx_th_balise_005fbonjour_005f0.setJspContext(_jspx_page_context); + _jspx_th_balise_005fbonjour_005f0.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_balise_005fbonjour_005f0); + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/docs/SESSIONS.ser b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/docs/SESSIONS.ser new file mode 100644 index 0000000..e555e0b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/docs/SESSIONS.ser differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/SESSIONS.ser b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/SESSIONS.ser new file mode 100644 index 0000000..e555e0b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/SESSIONS.ser differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/checkbox/checkresult_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/checkbox/checkresult_jsp.class new file mode 100644 index 0000000..a429ae1 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/checkbox/checkresult_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/checkbox/checkresult_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/checkbox/checkresult_jsp.java new file mode 100644 index 0000000..9ae3781 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/checkbox/checkresult_jsp.java @@ -0,0 +1,145 @@ +package org.apache.jsp.jsp.checkbox; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class checkresult_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + String[] fruits; + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write('\r'); + out.write('\n'); + checkbox.CheckTest foo = null; + synchronized (_jspx_page_context) { + foo = (checkbox.CheckTest) _jspx_page_context.getAttribute("foo", PageContext.PAGE_SCOPE); + if (foo == null){ + foo = new checkbox.CheckTest(); + _jspx_page_context.setAttribute("foo", foo, PageContext.PAGE_SCOPE); + } + } + out.write("\r\n"); + out.write("\r\n"); + org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(_jspx_page_context.findAttribute("foo"), "fruit", request.getParameter("fruit"), request, "fruit", false); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("The checked fruits (got using request) are:
    \r\n"); + + fruits = request.getParameterValues("fruit"); + + out.write("\r\n"); + out.write("
      \r\n"); + + if (fruits != null) { + for (int i = 0; i < fruits.length; i++) { + + out.write("\r\n"); + out.write("
    • \r\n"); + + out.println (util.HTMLFilter.filter(fruits[i])); + } + } else out.println ("none selected"); + + out.write("\r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("The checked fruits (got using beans) are
    \r\n"); + out.write("\r\n"); + + fruits = foo.getFruit(); + + out.write("\r\n"); + out.write("
      \r\n"); + + if (!fruits[0].equals("1")) { + for (int i = 0; i < fruits.length; i++) { + + out.write("\r\n"); + out.write("
    • \r\n"); + + out.println (util.HTMLFilter.filter(fruits[i])); + } + } else out.println ("none selected"); + + out.write("\r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.class new file mode 100644 index 0000000..fea5f15 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.java new file mode 100644 index 0000000..e8bb2a1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002darithmetic_jsp.java @@ -0,0 +1,176 @@ +package org.apache.jsp.jsp.jsp2.el; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class basic_002darithmetic_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Expression Language - Basic Arithmetic\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Expression Language - Basic Arithmetic

    \r\n"); + out.write("
    \r\n"); + out.write(" This example illustrates basic Expression Language arithmetic.\r\n"); + out.write(" Addition (+), subtraction (-), multiplication (*), division (/ or div), \r\n"); + out.write(" and modulus (% or mod) are all supported. Error conditions, like\r\n"); + out.write(" division by zero, are handled gracefully.\r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t
    EL ExpressionResult
    ${1}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1 + 2}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1 + 2}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1.2 + 2.3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1.2 + 2.3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1.2E4 + 1.4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1.2E4 + 1.4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${-4 - 2}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${-4 - 2}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${21 * 2}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${21 * 2}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${3/4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${3/4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${3 div 4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${3 div 4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${3/0}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${3/0}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${10%4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${10%4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${10 mod 4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${10 mod 4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${(1==2) ? 3 : 4}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${(1==2) ? 3 : 4}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.class new file mode 100644 index 0000000..7ea5e88 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.java new file mode 100644 index 0000000..6d1b0e0 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/basic_002dcomparisons_jsp.java @@ -0,0 +1,210 @@ +package org.apache.jsp.jsp.jsp2.el; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class basic_002dcomparisons_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Expression Language - Basic Comparisons\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Expression Language - Basic Comparisons

    \r\n"); + out.write("
    \r\n"); + out.write(" This example illustrates basic Expression Language comparisons.\r\n"); + out.write(" The following comparison operators are supported:\r\n"); + out.write("
      \r\n"); + out.write("
    • Less-than (< or lt)
    • \r\n"); + out.write("
    • Greater-than (> or gt)
    • \r\n"); + out.write("
    • Less-than-or-equal (<= or le)
    • \r\n"); + out.write("
    • Greater-than-or-equal (>= or ge)
    • \r\n"); + out.write("
    • Equal (== or eq)
    • \r\n"); + out.write("
    • Not Equal (!= or ne)
    • \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" Numeric\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t
    EL ExpressionResult
    ${1 < 2}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1 < 2}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1 lt 2}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1 lt 2}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1 > (4/2)}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1 > (4/2)}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${1 > (4/2)}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1 > (4/2)}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${4.0 >= 3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${4.0 >= 3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${4.0 ge 3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${4.0 ge 3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${4 <= 3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${4 <= 3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${4 le 3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${4 le 3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${100.0 == 100}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${100.0 == 100}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${100.0 eq 100}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${100.0 eq 100}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${(10*10) != 100}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${(10*10) != 100}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${(10*10) ne 100}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${(10*10) ne 100}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" Alphabetic\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t
    EL ExpressionResult
    ${'a' < 'b'}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${'a' < 'b'}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${'hip' > 'hit'}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${'hip' > 'hit'}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    ${'4' > 3}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${'4' > 3}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/implicit_002dobjects_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/implicit_002dobjects_jsp.class new file mode 100644 index 0000000..ee3c88b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/implicit_002dobjects_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/implicit_002dobjects_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/implicit_002dobjects_jsp.java new file mode 100644 index 0000000..5df141c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/el/implicit_002dobjects_jsp.java @@ -0,0 +1,171 @@ +package org.apache.jsp.jsp.jsp2.el; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class implicit_002dobjects_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + +static private org.apache.jasper.runtime.ProtectedFunctionMapper _jspx_fnmap_0; + +static { + _jspx_fnmap_0= org.apache.jasper.runtime.ProtectedFunctionMapper.getMapForFunction("fn:escapeXml", org.apache.taglibs.standard.functions.Functions.class, "escapeXml", new Class[] {java.lang.String.class}); +} + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Expression Language - Implicit Objects\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Expression Language - Implicit Objects

    \r\n"); + out.write("
    \r\n"); + out.write(" This example illustrates some of the implicit objects available \r\n"); + out.write(" in the Expression Lanaguage. The following implicit objects are \r\n"); + out.write(" available (not all illustrated here):\r\n"); + out.write("
      \r\n"); + out.write("
    • pageContext - the PageContext object
    • \r\n"); + out.write("
    • pageScope - a Map that maps page-scoped attribute names to \r\n"); + out.write(" their values
    • \r\n"); + out.write("
    • requestScope - a Map that maps request-scoped attribute names \r\n"); + out.write(" to their values
    • \r\n"); + out.write("
    • sessionScope - a Map that maps session-scoped attribute names \r\n"); + out.write(" to their values
    • \r\n"); + out.write("
    • applicationScope - a Map that maps application-scoped attribute \r\n"); + out.write(" names to their values
    • \r\n"); + out.write("
    • param - a Map that maps parameter names to a single String \r\n"); + out.write(" parameter value
    • \r\n"); + out.write("
    • paramValues - a Map that maps parameter names to a String[] of \r\n"); + out.write(" all values for that parameter
    • \r\n"); + out.write("
    • header - a Map that maps header names to a single String \r\n"); + out.write(" header value
    • \r\n"); + out.write("
    • headerValues - a Map that maps header names to a String[] of \r\n"); + out.write(" all values for that header
    • \r\n"); + out.write("
    • initParam - a Map that maps context initialization parameter \r\n"); + out.write(" names to their String parameter value
    • \r\n"); + out.write("
    • cookie - a Map that maps cookie names to a single Cookie object.
    • \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("
    \r\n"); + out.write(" Change Parameter\r\n"); + out.write("
    \r\n"); + out.write("\t foo = \r\n"); + out.write(" \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t \r\n"); + out.write("\t
    EL ExpressionResult
    ${param.foo}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${fn:escapeXml(param[\"foo\"])}", java.lang.String.class, (PageContext)_jspx_page_context, _jspx_fnmap_0, false)); + out.write(" 
    ${param[\"foo\"]}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${fn:escapeXml(param[\"foo\"])}", java.lang.String.class, (PageContext)_jspx_page_context, _jspx_fnmap_0, false)); + out.write(" 
    ${header[\"host\"]}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${fn:escapeXml(header[\"host\"])}", java.lang.String.class, (PageContext)_jspx_page_context, _jspx_fnmap_0, false)); + out.write(" 
    ${header[\"accept\"]}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${fn:escapeXml(header[\"accept\"])}", java.lang.String.class, (PageContext)_jspx_page_context, _jspx_fnmap_0, false)); + out.write(" 
    ${header[\"user-agent\"]}"); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${fn:escapeXml(header[\"user-agent\"])}", java.lang.String.class, (PageContext)_jspx_page_context, _jspx_fnmap_0, false)); + out.write(" 
    \r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspattribute/jspattribute_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspattribute/jspattribute_jsp.class new file mode 100644 index 0000000..f2c5bb8 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspattribute/jspattribute_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspattribute/jspattribute_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspattribute/jspattribute_jsp.java new file mode 100644 index 0000000..4d3edc8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspattribute/jspattribute_jsp.java @@ -0,0 +1,134 @@ +package org.apache.jsp.jsp.jsp2.jspattribute; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class jspattribute_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(1); + _jspx_dependants.add("/WEB-INF/jsp2/jsp2-example-taglib.tld"); + } + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Examples - jsp:attribute and jsp:body\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Examples - jsp:attribute and jsp:body

    \r\n"); + out.write("
    \r\n"); + out.write("

    The new <jsp:attribute> and <jsp:body> \r\n"); + out.write(" standard actions can be used to specify the value of any standard\r\n"); + out.write(" action or custom action attribute.

    \r\n"); + out.write("

    This example uses the <jsp:attribute>\r\n"); + out.write(" standard action to use the output of a custom action invocation\r\n"); + out.write(" (one that simply outputs \"Hello, World!\") to set the value of a\r\n"); + out.write(" bean property. This would normally require an intermediary\r\n"); + out.write(" step, such as using JSTL's <c:set> action.

    \r\n"); + out.write("
    \r\n"); + out.write(" "); + jsp2.examples.FooBean foo = null; + synchronized (_jspx_page_context) { + foo = (jsp2.examples.FooBean) _jspx_page_context.getAttribute("foo", PageContext.PAGE_SCOPE); + if (foo == null){ + foo = new jsp2.examples.FooBean(); + _jspx_page_context.setAttribute("foo", foo, PageContext.PAGE_SCOPE); + out.write("\r\n"); + out.write(" Bean created! Setting foo.bar...
    \r\n"); + out.write(" "); + out = _jspx_page_context.pushBody(); + // my:helloWorld + jsp2.examples.simpletag.HelloWorldSimpleTag _jspx_th_my_005fhelloWorld_005f0 = new jsp2.examples.simpletag.HelloWorldSimpleTag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_my_005fhelloWorld_005f0); + _jspx_th_my_005fhelloWorld_005f0.setJspContext(_jspx_page_context); + _jspx_th_my_005fhelloWorld_005f0.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_my_005fhelloWorld_005f0); + String _jspx_temp0 = ((javax.servlet.jsp.tagext.BodyContent)out).getString(); + out = _jspx_page_context.popBody(); + org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(_jspx_page_context.findAttribute("foo"), "bar", _jspx_temp0, null, null, false); + out.write("\r\n"); + out.write(" "); + } + } + out.write("\r\n"); + out.write("
    \r\n"); + out.write(" Result: "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${foo.bar}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspx/basic_jspx$basic_jspxHelper.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspx/basic_jspx$basic_jspxHelper.class new file mode 100644 index 0000000..20adffe Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspx/basic_jspx$basic_jspxHelper.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspx/basic_jspx.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspx/basic_jspx.class new file mode 100644 index 0000000..7f0fe64 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspx/basic_jspx.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspx/basic_jspx.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspx/basic_jspx.java new file mode 100644 index 0000000..f2d6bc8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/jspx/basic_jspx.java @@ -0,0 +1,207 @@ +package org.apache.jsp.jsp.jsp2.jspx; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class basic_jspx extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(1); + _jspx_dependants.add("/WEB-INF/tags/xhtmlbasic.tag"); + } + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005ffmt_005fformatDate_005fvalue_005fpattern_005fnobody; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005ffmt_005fformatDate_005fvalue_005fpattern_005fnobody = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005ffmt_005fformatDate_005fvalue_005fpattern_005fnobody.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\n"); + if (_jspx_meth_tags_005fxhtmlbasic_005f0(_jspx_page_context)) + return; + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_tags_005fxhtmlbasic_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + HttpSession session = _jspx_page_context.getSession(); + ServletContext application = _jspx_page_context.getServletContext(); + HttpServletRequest request = (HttpServletRequest)_jspx_page_context.getRequest(); + // tags:xhtmlbasic + org.apache.jsp.tag.web.xhtmlbasic_tag _jspx_th_tags_005fxhtmlbasic_005f0 = new org.apache.jsp.tag.web.xhtmlbasic_tag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_tags_005fxhtmlbasic_005f0); + _jspx_th_tags_005fxhtmlbasic_005f0.setJspContext(_jspx_page_context); + _jspx_th_tags_005fxhtmlbasic_005f0.setJspBody(new basic_jspxHelper( 0, _jspx_page_context, _jspx_th_tags_005fxhtmlbasic_005f0, null)); + _jspx_th_tags_005fxhtmlbasic_005f0.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_tags_005fxhtmlbasic_005f0); + return false; + } + + private boolean _jspx_meth_fmt_005fformatDate_005f0(javax.servlet.jsp.tagext.JspTag _jspx_parent, PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // fmt:formatDate + org.apache.taglibs.standard.tag.rt.fmt.FormatDateTag _jspx_th_fmt_005fformatDate_005f0 = (org.apache.taglibs.standard.tag.rt.fmt.FormatDateTag) _005fjspx_005ftagPool_005ffmt_005fformatDate_005fvalue_005fpattern_005fnobody.get(org.apache.taglibs.standard.tag.rt.fmt.FormatDateTag.class); + _jspx_th_fmt_005fformatDate_005f0.setPageContext(_jspx_page_context); + _jspx_th_fmt_005fformatDate_005f0.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) _jspx_parent)); + // /jsp/jsp2/jspx/basic.jspx(28,69) name = pattern type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_fmt_005fformatDate_005f0.setPattern("MMMM d, yyyy, H:mm:ss"); + // /jsp/jsp2/jspx/basic.jspx(28,69) name = value type = null reqTime = true required = true fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_fmt_005fformatDate_005f0.setValue((java.util.Date) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${now}", java.util.Date.class, (PageContext)_jspx_page_context, null, false)); + int _jspx_eval_fmt_005fformatDate_005f0 = _jspx_th_fmt_005fformatDate_005f0.doStartTag(); + if (_jspx_th_fmt_005fformatDate_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005ffmt_005fformatDate_005fvalue_005fpattern_005fnobody.reuse(_jspx_th_fmt_005fformatDate_005f0); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005ffmt_005fformatDate_005fvalue_005fpattern_005fnobody.reuse(_jspx_th_fmt_005fformatDate_005f0); + return false; + } + + private class basic_jspxHelper + extends org.apache.jasper.runtime.JspFragmentHelper + { + private javax.servlet.jsp.tagext.JspTag _jspx_parent; + private int[] _jspx_push_body_count; + + public basic_jspxHelper( int discriminator, JspContext jspContext, javax.servlet.jsp.tagext.JspTag _jspx_parent, int[] _jspx_push_body_count ) { + super( discriminator, jspContext, _jspx_parent ); + this._jspx_parent = _jspx_parent; + this._jspx_push_body_count = _jspx_push_body_count; + } + public boolean invoke0( JspWriter out ) + throws Throwable + { + HttpSession session = _jspx_page_context.getSession(); + ServletContext application = _jspx_page_context.getServletContext(); + HttpServletRequest request = (HttpServletRequest)_jspx_page_context.getRequest(); + out.write(""); + out.write(""); + out.write("JSPX - XHTML Basic Example"); + out.write(""); + out.write(""); + out.write(""); + out.write("

    "); + out.write("JSPX - XHTML Basic Example"); + out.write("

    "); + out.write("
    "); + out.write("\n"); + out.write(" This example illustrates how to use JSPX to produce an XHTML basic\n"); + out.write(" document suitable for use with mobile phones, televisions, \n"); + out.write(" PDAs, vending machines, pagers, car navigation systems,\n"); + out.write(" mobile game machines, digital book readers, smart watches, etc.\n"); + out.write(" "); + out.write("

    "); + out.write("\n"); + out.write(" JSPX lets you create dynamic documents in a pure XML syntax compatible\n"); + out.write(" with existing XML tools. The XML syntax in JSP 1.2 was awkward and\n"); + out.write(" required <jsp:root> to be the root element of the document.\n"); + out.write(" This is no longer the case in JSP 2.0.\n"); + out.write(" "); + out.write("

    "); + out.write("\n"); + out.write(" This particular example uses a tag file to produce the DOCTYPE and\n"); + out.write(" namespace declarations to make the output of this page a valid XHTML\n"); + out.write(" Basic document.\n"); + out.write(" "); + out.write("

    "); + out.write("\n"); + out.write(" Just to prove this is live, here's some dynamic content:\n"); + out.write(" "); + java.util.Date now = null; + synchronized (_jspx_page_context) { + now = (java.util.Date) _jspx_page_context.getAttribute("now", PageContext.PAGE_SCOPE); + if (now == null){ + now = new java.util.Date(); + _jspx_page_context.setAttribute("now", now, PageContext.PAGE_SCOPE); + } + } + if (_jspx_meth_fmt_005fformatDate_005f0(_jspx_parent, _jspx_page_context)) + return true; + out.write(""); + return false; + } + public void invoke( java.io.Writer writer ) + throws JspException + { + JspWriter out = null; + if( writer != null ) { + out = this.jspContext.pushBody(writer); + } else { + out = this.jspContext.getOut(); + } + try { + this.jspContext.getELContext().putContext(JspContext.class,this.jspContext); + switch( this.discriminator ) { + case 0: + invoke0( out ); + break; + } + } + catch( Throwable e ) { + if (e instanceof SkipPageException) + throw (SkipPageException) e; + throw new JspException( e ); + } + finally { + if( writer != null ) { + this.jspContext.popBody(); + } + } + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.class new file mode 100644 index 0000000..822cef1 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.java new file mode 100644 index 0000000..394c950 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/simpletag/hello_jsp.java @@ -0,0 +1,116 @@ +package org.apache.jsp.jsp.jsp2.simpletag; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class hello_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(1); + _jspx_dependants.add("/WEB-INF/jsp2/jsp2-example-taglib.tld"); + } + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Examples - Hello World SimpleTag Handler\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Examples - Hello World SimpleTag Handler

    \r\n"); + out.write("
    \r\n"); + out.write("

    This tag handler simply echos \"Hello, World!\" It's an example of\r\n"); + out.write(" a very basic SimpleTag handler with no body.

    \r\n"); + out.write("
    \r\n"); + out.write(" Result:\r\n"); + out.write(" "); + if (_jspx_meth_mytag_005fhelloWorld_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_mytag_005fhelloWorld_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // mytag:helloWorld + jsp2.examples.simpletag.HelloWorldSimpleTag _jspx_th_mytag_005fhelloWorld_005f0 = new jsp2.examples.simpletag.HelloWorldSimpleTag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_mytag_005fhelloWorld_005f0); + _jspx_th_mytag_005fhelloWorld_005f0.setJspContext(_jspx_page_context); + _jspx_th_mytag_005fhelloWorld_005f0.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_mytag_005fhelloWorld_005f0); + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/hello_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/hello_jsp.class new file mode 100644 index 0000000..b313a00 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/hello_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/hello_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/hello_jsp.java new file mode 100644 index 0000000..b069f5a --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/hello_jsp.java @@ -0,0 +1,120 @@ +package org.apache.jsp.jsp.jsp2.tagfiles; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class hello_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(1); + _jspx_dependants.add("/WEB-INF/tags/helloWorld.tag"); + } + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Examples - Hello World Using a Tag File\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Examples - Hello World Using a Tag File

    \r\n"); + out.write("
    \r\n"); + out.write("

    This JSP page invokes a custom tag that simply echos \"Hello, World!\" \r\n"); + out.write(" The custom tag is generated from a tag file in the /WEB-INF/tags\r\n"); + out.write(" directory.

    \r\n"); + out.write("

    Notice that we did not need to write a TLD for this tag. We just\r\n"); + out.write(" created /WEB-INF/tags/helloWorld.tag, imported it using the taglib\r\n"); + out.write(" directive, and used it!

    \r\n"); + out.write("
    \r\n"); + out.write(" Result:\r\n"); + out.write(" "); + if (_jspx_meth_tags_005fhelloWorld_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_tags_005fhelloWorld_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // tags:helloWorld + org.apache.jsp.tag.web.helloWorld_tag _jspx_th_tags_005fhelloWorld_005f0 = new org.apache.jsp.tag.web.helloWorld_tag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_tags_005fhelloWorld_005f0); + _jspx_th_tags_005fhelloWorld_005f0.setJspContext(_jspx_page_context); + _jspx_th_tags_005fhelloWorld_005f0.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_tags_005fhelloWorld_005f0); + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/panel_jsp$panel_jspHelper.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/panel_jsp$panel_jspHelper.class new file mode 100644 index 0000000..534287c Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/panel_jsp$panel_jspHelper.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/panel_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/panel_jsp.class new file mode 100644 index 0000000..6a5d5bb Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/panel_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/panel_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/panel_jsp.java new file mode 100644 index 0000000..178159f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/panel_jsp.java @@ -0,0 +1,294 @@ +package org.apache.jsp.jsp.jsp2.tagfiles; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class panel_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(1); + _jspx_dependants.add("/WEB-INF/tags/panel.tag"); + } + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Examples - Panels using Tag Files\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Examples - Panels using Tag Files

    \r\n"); + out.write("
    \r\n"); + out.write("

    This JSP page invokes a custom tag that draws a \r\n"); + out.write(" panel around the contents of the tag body. Normally, such a tag \r\n"); + out.write(" implementation would require a Java class with many println() statements,\r\n"); + out.write(" outputting HTML. Instead, we can use a .tag file as a template,\r\n"); + out.write(" and we don't need to write a single line of Java or even a TLD!

    \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    \r\n"); + out.write(" "); + if (_jspx_meth_tags_005fpanel_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" \r\n"); + out.write(" "); + if (_jspx_meth_tags_005fpanel_005f1(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" \r\n"); + out.write(" "); + if (_jspx_meth_tags_005fpanel_005f2(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_tags_005fpanel_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // tags:panel + org.apache.jsp.tag.web.panel_tag _jspx_th_tags_005fpanel_005f0 = new org.apache.jsp.tag.web.panel_tag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_tags_005fpanel_005f0); + _jspx_th_tags_005fpanel_005f0.setJspContext(_jspx_page_context); + // /jsp/jsp2/tagfiles/panel.jsp(34,10) name = color type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f0.setColor("#ff8080"); + // /jsp/jsp2/tagfiles/panel.jsp(34,10) name = bgcolor type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f0.setBgcolor("#ffc0c0"); + // /jsp/jsp2/tagfiles/panel.jsp(34,10) name = title type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f0.setTitle("Panel 1"); + _jspx_th_tags_005fpanel_005f0.setJspBody(new panel_jspHelper( 0, _jspx_page_context, _jspx_th_tags_005fpanel_005f0, null)); + _jspx_th_tags_005fpanel_005f0.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_tags_005fpanel_005f0); + return false; + } + + private boolean _jspx_meth_tags_005fpanel_005f1(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // tags:panel + org.apache.jsp.tag.web.panel_tag _jspx_th_tags_005fpanel_005f1 = new org.apache.jsp.tag.web.panel_tag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_tags_005fpanel_005f1); + _jspx_th_tags_005fpanel_005f1.setJspContext(_jspx_page_context); + // /jsp/jsp2/tagfiles/panel.jsp(39,10) name = color type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f1.setColor("#80ff80"); + // /jsp/jsp2/tagfiles/panel.jsp(39,10) name = bgcolor type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f1.setBgcolor("#c0ffc0"); + // /jsp/jsp2/tagfiles/panel.jsp(39,10) name = title type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f1.setTitle("Panel 2"); + _jspx_th_tags_005fpanel_005f1.setJspBody(new panel_jspHelper( 1, _jspx_page_context, _jspx_th_tags_005fpanel_005f1, null)); + _jspx_th_tags_005fpanel_005f1.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_tags_005fpanel_005f1); + return false; + } + + private boolean _jspx_meth_tags_005fpanel_005f2(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // tags:panel + org.apache.jsp.tag.web.panel_tag _jspx_th_tags_005fpanel_005f2 = new org.apache.jsp.tag.web.panel_tag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_tags_005fpanel_005f2); + _jspx_th_tags_005fpanel_005f2.setJspContext(_jspx_page_context); + // /jsp/jsp2/tagfiles/panel.jsp(47,10) name = color type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f2.setColor("#8080ff"); + // /jsp/jsp2/tagfiles/panel.jsp(47,10) name = bgcolor type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f2.setBgcolor("#c0c0ff"); + // /jsp/jsp2/tagfiles/panel.jsp(47,10) name = title type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f2.setTitle("Panel 3"); + _jspx_th_tags_005fpanel_005f2.setJspBody(new panel_jspHelper( 2, _jspx_page_context, _jspx_th_tags_005fpanel_005f2, null)); + _jspx_th_tags_005fpanel_005f2.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_tags_005fpanel_005f2); + return false; + } + + private boolean _jspx_meth_tags_005fpanel_005f3(javax.servlet.jsp.tagext.JspTag _jspx_parent, PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // tags:panel + org.apache.jsp.tag.web.panel_tag _jspx_th_tags_005fpanel_005f3 = new org.apache.jsp.tag.web.panel_tag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_tags_005fpanel_005f3); + _jspx_th_tags_005fpanel_005f3.setJspContext(_jspx_page_context); + _jspx_th_tags_005fpanel_005f3.setParent(_jspx_parent); + // /jsp/jsp2/tagfiles/panel.jsp(49,12) name = color type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f3.setColor("#ff80ff"); + // /jsp/jsp2/tagfiles/panel.jsp(49,12) name = bgcolor type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f3.setBgcolor("#ffc0ff"); + // /jsp/jsp2/tagfiles/panel.jsp(49,12) name = title type = java.lang.String reqTime = true required = false fragment = false deferredValue = false expectedTypeName = java.lang.String deferredMethod = false methodSignature = null + _jspx_th_tags_005fpanel_005f3.setTitle("Inner"); + _jspx_th_tags_005fpanel_005f3.setJspBody(new panel_jspHelper( 3, _jspx_page_context, _jspx_th_tags_005fpanel_005f3, null)); + _jspx_th_tags_005fpanel_005f3.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_tags_005fpanel_005f3); + return false; + } + + private class panel_jspHelper + extends org.apache.jasper.runtime.JspFragmentHelper + { + private javax.servlet.jsp.tagext.JspTag _jspx_parent; + private int[] _jspx_push_body_count; + + public panel_jspHelper( int discriminator, JspContext jspContext, javax.servlet.jsp.tagext.JspTag _jspx_parent, int[] _jspx_push_body_count ) { + super( discriminator, jspContext, _jspx_parent ); + this._jspx_parent = _jspx_parent; + this._jspx_push_body_count = _jspx_push_body_count; + } + public boolean invoke0( JspWriter out ) + throws Throwable + { + out.write("\r\n"); + out.write("\t First panel.
    \r\n"); + out.write("\t "); + return false; + } + public boolean invoke1( JspWriter out ) + throws Throwable + { + out.write("\r\n"); + out.write("\t Second panel.
    \r\n"); + out.write("\t Second panel.
    \r\n"); + out.write("\t Second panel.
    \r\n"); + out.write("\t Second panel.
    \r\n"); + out.write("\t "); + return false; + } + public boolean invoke2( JspWriter out ) + throws Throwable + { + out.write("\r\n"); + out.write("\t Third panel.
    \r\n"); + out.write(" "); + if (_jspx_meth_tags_005fpanel_005f3(_jspx_parent, _jspx_page_context)) + return true; + out.write("\r\n"); + out.write("\t Third panel.
    \r\n"); + out.write("\t "); + return false; + } + public boolean invoke3( JspWriter out ) + throws Throwable + { + out.write("\r\n"); + out.write("\t A panel in a panel.\r\n"); + out.write("\t "); + return false; + } + public void invoke( java.io.Writer writer ) + throws JspException + { + JspWriter out = null; + if( writer != null ) { + out = this.jspContext.pushBody(writer); + } else { + out = this.jspContext.getOut(); + } + try { + this.jspContext.getELContext().putContext(JspContext.class,this.jspContext); + switch( this.discriminator ) { + case 0: + invoke0( out ); + break; + case 1: + invoke1( out ); + break; + case 2: + invoke2( out ); + break; + case 3: + invoke3( out ); + break; + } + } + catch( Throwable e ) { + if (e instanceof SkipPageException) + throw (SkipPageException) e; + throw new JspException( e ); + } + finally { + if( writer != null ) { + this.jspContext.popBody(); + } + } + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/products_jsp$products_jspHelper.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/products_jsp$products_jspHelper.class new file mode 100644 index 0000000..91bdb86 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/products_jsp$products_jspHelper.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/products_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/products_jsp.class new file mode 100644 index 0000000..b06402f Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/products_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/products_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/products_jsp.java new file mode 100644 index 0000000..9325b23 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsp2/tagfiles/products_jsp.java @@ -0,0 +1,232 @@ +package org.apache.jsp.jsp.jsp2.tagfiles; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class products_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + static { + _jspx_dependants = new java.util.ArrayList(1); + _jspx_dependants.add("/WEB-INF/tags/displayProducts.tag"); + } + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" JSP 2.0 Examples - Display Products Tag File\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    JSP 2.0 Examples - Display Products Tag File

    \r\n"); + out.write("
    \r\n"); + out.write("

    This JSP page invokes a tag file that displays a listing of \r\n"); + out.write(" products. The custom tag accepts two fragments that enable\r\n"); + out.write(" customization of appearance. One for when the product is on sale\r\n"); + out.write(" and one for normal price.

    \r\n"); + out.write("

    The tag is invoked twice, using different styles

    \r\n"); + out.write("
    \r\n"); + out.write("

    Products

    \r\n"); + out.write(" "); + // tags:displayProducts + org.apache.jsp.tag.web.displayProducts_tag _jspx_th_tags_005fdisplayProducts_005f0 = new org.apache.jsp.tag.web.displayProducts_tag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_tags_005fdisplayProducts_005f0); + _jspx_th_tags_005fdisplayProducts_005f0.setJspContext(_jspx_page_context); + javax.servlet.jsp.tagext.JspFragment _jspx_temp0 = new products_jspHelper( 0, _jspx_page_context, _jspx_th_tags_005fdisplayProducts_005f0, null); + // /jsp/jsp2/tagfiles/products.jsp(32,4) null + _jspx_th_tags_005fdisplayProducts_005f0.setNormalPrice(_jspx_temp0); + javax.servlet.jsp.tagext.JspFragment _jspx_temp1 = new products_jspHelper( 1, _jspx_page_context, _jspx_th_tags_005fdisplayProducts_005f0, null); + // /jsp/jsp2/tagfiles/products.jsp(32,4) null + _jspx_th_tags_005fdisplayProducts_005f0.setOnSale(_jspx_temp1); + _jspx_th_tags_005fdisplayProducts_005f0.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_tags_005fdisplayProducts_005f0); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("

    Products (Same tag, alternate style)

    \r\n"); + out.write(" "); + // tags:displayProducts + org.apache.jsp.tag.web.displayProducts_tag _jspx_th_tags_005fdisplayProducts_005f1 = new org.apache.jsp.tag.web.displayProducts_tag(); + org.apache.jasper.runtime.AnnotationHelper.postConstruct(_jsp_annotationprocessor, _jspx_th_tags_005fdisplayProducts_005f1); + _jspx_th_tags_005fdisplayProducts_005f1.setJspContext(_jspx_page_context); + javax.servlet.jsp.tagext.JspFragment _jspx_temp2 = new products_jspHelper( 2, _jspx_page_context, _jspx_th_tags_005fdisplayProducts_005f1, null); + // /jsp/jsp2/tagfiles/products.jsp(45,4) null + _jspx_th_tags_005fdisplayProducts_005f1.setNormalPrice(_jspx_temp2); + javax.servlet.jsp.tagext.JspFragment _jspx_temp3 = new products_jspHelper( 3, _jspx_page_context, _jspx_th_tags_005fdisplayProducts_005f1, null); + // /jsp/jsp2/tagfiles/products.jsp(45,4) null + _jspx_th_tags_005fdisplayProducts_005f1.setOnSale(_jspx_temp3); + _jspx_th_tags_005fdisplayProducts_005f1.doTag(); + org.apache.jasper.runtime.AnnotationHelper.preDestroy(_jsp_annotationprocessor, _jspx_th_tags_005fdisplayProducts_005f1); + out.write("\r\n"); + out.write(" \r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private class products_jspHelper + extends org.apache.jasper.runtime.JspFragmentHelper + { + private javax.servlet.jsp.tagext.JspTag _jspx_parent; + private int[] _jspx_push_body_count; + + public products_jspHelper( int discriminator, JspContext jspContext, javax.servlet.jsp.tagext.JspTag _jspx_parent, int[] _jspx_push_body_count ) { + super( discriminator, jspContext, _jspx_parent ); + this._jspx_parent = _jspx_parent; + this._jspx_push_body_count = _jspx_push_body_count; + } + public void invoke0( JspWriter out ) + throws Throwable + { + out.write("Item: "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${name}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write("\tPrice: "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${price}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + return; + } + public void invoke1( JspWriter out ) + throws Throwable + { + out.write("Item: "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${name}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write("\tWas: "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${origPrice}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("
    \r\n"); + out.write("\tNow: "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${salePrice}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write(""); + return; + } + public void invoke2( JspWriter out ) + throws Throwable + { + out.write('<'); + out.write('b'); + out.write('>'); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${name}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write(" @ "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${price}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write(" ea."); + return; + } + public void invoke3( JspWriter out ) + throws Throwable + { + out.write('<'); + out.write('b'); + out.write('>'); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${name}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write(" @ "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${salePrice}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write(" ea. (was: "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${origPrice}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write(')'); + return; + } + public void invoke( java.io.Writer writer ) + throws JspException + { + JspWriter out = null; + if( writer != null ) { + out = this.jspContext.pushBody(writer); + } else { + out = this.jspContext.getOut(); + } + try { + this.jspContext.getELContext().putContext(JspContext.class,this.jspContext); + switch( this.discriminator ) { + case 0: + invoke0( out ); + break; + case 1: + invoke1( out ); + break; + case 2: + invoke2( out ); + break; + case 3: + invoke3( out ); + break; + } + } + catch( Throwable e ) { + if (e instanceof SkipPageException) + throw (SkipPageException) e; + throw new JspException( e ); + } + finally { + if( writer != null ) { + this.jspContext.popBody(); + } + } + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/hello_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/hello_jsp.class new file mode 100644 index 0000000..518617a Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/hello_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/hello_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/hello_jsp.java new file mode 100644 index 0000000..1034c35 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/hello_jsp.java @@ -0,0 +1,91 @@ +package org.apache.jsp.jsp.jsptoserv; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class hello_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("

    \r\n"); + out.write("I have been invoked by\r\n"); + out.print (request.getAttribute("servletName").toString()); + out.write("\r\n"); + out.write("Servlet.\r\n"); + out.write("

    \r\n"); + out.write("\r\n"); + out.write(""); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/jsptoservlet_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/jsptoservlet_jsp.class new file mode 100644 index 0000000..be439b6 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/jsptoservlet_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/jsptoservlet_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/jsptoservlet_jsp.java new file mode 100644 index 0000000..f65a09c --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/jsptoserv/jsptoservlet_jsp.java @@ -0,0 +1,91 @@ +package org.apache.jsp.jsp.jsptoserv; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class jsptoservlet_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + if (true) { + _jspx_page_context.forward("/servletToJsp"); + return; + } + out.write("\r\n"); + out.write("\r\n"); + out.write(""); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/num/numguess_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/num/numguess_jsp.class new file mode 100644 index 0000000..468032e Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/num/numguess_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/num/numguess_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/num/numguess_jsp.java new file mode 100644 index 0000000..9ff0d12 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/num/numguess_jsp.java @@ -0,0 +1,156 @@ +package org.apache.jsp.jsp.num; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; +import num.NumberGuessBean; + +public final class numguess_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + num.NumberGuessBean numguess = null; + synchronized (session) { + numguess = (num.NumberGuessBean) _jspx_page_context.getAttribute("numguess", PageContext.SESSION_SCOPE); + if (numguess == null){ + numguess = new num.NumberGuessBean(); + _jspx_page_context.setAttribute("numguess", numguess, PageContext.SESSION_SCOPE); + } + } + out.write('\r'); + out.write('\n'); + org.apache.jasper.runtime.JspRuntimeLibrary.introspect(_jspx_page_context.findAttribute("numguess"), request); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("Number Guess\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + if (numguess.getSuccess()) { + out.write("\r\n"); + out.write("\r\n"); + out.write(" Congratulations! You got it.\r\n"); + out.write(" And after just "); + out.print( numguess.getNumGuesses() ); + out.write(" tries.

    \r\n"); + out.write("\r\n"); + out.write(" "); + numguess.reset(); + out.write("\r\n"); + out.write("\r\n"); + out.write(" Care to try again?\r\n"); + out.write("\r\n"); + } else if (numguess.getNumGuesses() == 0) { + out.write("\r\n"); + out.write("\r\n"); + out.write(" Welcome to the Number Guess game.

    \r\n"); + out.write("\r\n"); + out.write(" I'm thinking of a number between 1 and 100.

    \r\n"); + out.write("\r\n"); + out.write("

    \r\n"); + out.write(" What's your guess? \r\n"); + out.write(" \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + } else { + out.write("\r\n"); + out.write("\r\n"); + out.write(" Good guess, but nope. Try "); + out.print( numguess.getHint() ); + out.write(".\r\n"); + out.write("\r\n"); + out.write(" You have made "); + out.print( numguess.getNumGuesses() ); + out.write(" guesses.

    \r\n"); + out.write("\r\n"); + out.write(" I'm thinking of a number between 1 and 100.

    \r\n"); + out.write("\r\n"); + out.write("

    \r\n"); + out.write(" What's your guess? \r\n"); + out.write(" \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + } + out.write("\r\n"); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/plugin/plugin_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/plugin/plugin_jsp.class new file mode 100644 index 0000000..f552225 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/plugin/plugin_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/plugin/plugin_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/plugin/plugin_jsp.java new file mode 100644 index 0000000..745cf9f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/plugin/plugin_jsp.java @@ -0,0 +1,119 @@ +package org.apache.jsp.jsp.plugin; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class plugin_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write(" Plugin example \r\n"); + out.write("\r\n"); + out.write("

    Current time is :

    \r\n"); + out.write(""); + out.write("\n"); + out.write(""); + out.write("\n"); + out.write(""); + out.write("\n"); + out.write(""); + out.write("\n"); + out.write(""); + out.write("\n"); + out.write(""); + out.write("\n"); + out.write(""); + out.write("\n"); + out.write("\r\n"); + out.write(" Plugin tag OBJECT or EMBED not supported by browser.\r\n"); + out.write(" "); + out.write("\n"); + out.write(""); + out.write("\n"); + out.write(""); + out.write("\n"); + out.write(""); + out.write("\n"); + out.write("\r\n"); + out.write("

    \r\n"); + out.write("

    \r\n"); + out.write(" \r\n"); + out.write("The above applet is loaded using the Java Plugin from a jsp page using the\r\n"); + out.write("plugin tag.\r\n"); + out.write("\r\n"); + out.write("

    \r\n"); + out.write("\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/snp/snoop_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/snp/snoop_jsp.class new file mode 100644 index 0000000..ead06e3 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/snp/snoop_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/snp/snoop_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/snp/snoop_jsp.java new file mode 100644 index 0000000..640c671 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/snp/snoop_jsp.java @@ -0,0 +1,152 @@ +package org.apache.jsp.jsp.snp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class snoop_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("

    Request Information

    \r\n"); + out.write("\r\n"); + out.write("JSP Request Method: "); + out.print( util.HTMLFilter.filter(request.getMethod()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Request URI: "); + out.print( util.HTMLFilter.filter(request.getRequestURI()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Request Protocol: "); + out.print( util.HTMLFilter.filter(request.getProtocol()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Servlet path: "); + out.print( util.HTMLFilter.filter(request.getServletPath()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Path info: "); + out.print( util.HTMLFilter.filter(request.getPathInfo()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Query string: "); + out.print( util.HTMLFilter.filter(request.getQueryString()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Content length: "); + out.print( request.getContentLength() ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Content type: "); + out.print( util.HTMLFilter.filter(request.getContentType()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Server name: "); + out.print( util.HTMLFilter.filter(request.getServerName()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Server port: "); + out.print( request.getServerPort() ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Remote user: "); + out.print( util.HTMLFilter.filter(request.getRemoteUser()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Remote address: "); + out.print( util.HTMLFilter.filter(request.getRemoteAddr()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Remote host: "); + out.print( util.HTMLFilter.filter(request.getRemoteHost()) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("Authorization scheme: "); + out.print( util.HTMLFilter.filter(request.getAuthType()) ); + out.write(" \r\n"); + out.write("
    \r\n"); + out.write("Locale: "); + out.print( request.getLocale() ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("The browser you are using is\r\n"); + out.print( util.HTMLFilter.filter(request.getHeader("User-Agent")) ); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/foreach_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/foreach_jsp.class new file mode 100644 index 0000000..f23c470 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/foreach_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/foreach_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/foreach_jsp.java new file mode 100644 index 0000000..bcf7523 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/foreach_jsp.java @@ -0,0 +1,218 @@ +package org.apache.jsp.jsp.tagplugin; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; +import java.util.Vector; + +public final class foreach_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fend_005fbegin; + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fend_005fbegin = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fend_005fbegin.release(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" Tag Plugin Examples: forEach\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    Tag Plugin Examples - <c:forEach>

    \r\n"); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" Plugin Introductory Notes\r\n"); + out.write("
    \r\n"); + out.write("
    Brief Instructions for Writing Plugins\r\n"); + out.write("

    \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    Iterating over a range

    \r\n"); + out.write(" "); + if (_jspx_meth_c_005fforEach_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write("\r\n"); + out.write(" "); + Vector v = new Vector(); + v.add("One"); v.add("Two"); v.add("Three"); v.add("Four"); + + pageContext.setAttribute("vector", v); + + out.write("\r\n"); + out.write("\r\n"); + out.write("

    Iterating over a Vector

    \r\n"); + out.write("\r\n"); + out.write(" "); + if (_jspx_meth_c_005fforEach_005f1(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fforEach_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f0 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fend_005fbegin.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f0.setParent(null); + // /jsp/tagplugin/foreach.jsp(41,4) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setVar("item"); + // /jsp/tagplugin/foreach.jsp(41,4) name = begin type = int reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setBegin(1); + // /jsp/tagplugin/foreach.jsp(41,4) name = end type = int reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f0.setEnd(10); + int[] _jspx_push_body_count_c_005fforEach_005f0 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f0 = _jspx_th_c_005fforEach_005f0.doStartTag(); + if (_jspx_eval_c_005fforEach_005f0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write(" "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${item}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write(" "); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f0.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f0[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f0.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f0.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fend_005fbegin.reuse(_jspx_th_c_005fforEach_005f0); + } + return false; + } + + private boolean _jspx_meth_c_005fforEach_005f1(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag _jspx_th_c_005fforEach_005f1 = (org.apache.taglibs.standard.tag.rt.core.ForEachTag) _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.get(org.apache.taglibs.standard.tag.rt.core.ForEachTag.class); + _jspx_th_c_005fforEach_005f1.setPageContext(_jspx_page_context); + _jspx_th_c_005fforEach_005f1.setParent(null); + // /jsp/tagplugin/foreach.jsp(53,4) name = items type = java.lang.Object reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f1.setItems((java.lang.Object) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${vector}", java.lang.Object.class, (PageContext)_jspx_page_context, null, false)); + // /jsp/tagplugin/foreach.jsp(53,4) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fforEach_005f1.setVar("item"); + int[] _jspx_push_body_count_c_005fforEach_005f1 = new int[] { 0 }; + try { + int _jspx_eval_c_005fforEach_005f1 = _jspx_th_c_005fforEach_005f1.doStartTag(); + if (_jspx_eval_c_005fforEach_005f1 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write('\r'); + out.write('\n'); + out.write(' '); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${item}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write(" "); + int evalDoAfterBody = _jspx_th_c_005fforEach_005f1.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fforEach_005f1.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + return true; + } + } catch (Throwable _jspx_exception) { + while (_jspx_push_body_count_c_005fforEach_005f1[0]-- > 0) + out = _jspx_page_context.popBody(); + _jspx_th_c_005fforEach_005f1.doCatch(_jspx_exception); + } finally { + _jspx_th_c_005fforEach_005f1.doFinally(); + _005fjspx_005ftagPool_005fc_005fforEach_005fvar_005fitems.reuse(_jspx_th_c_005fforEach_005f1); + } + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/if_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/if_jsp.class new file mode 100644 index 0000000..94435ed Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/if_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/if_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/if_jsp.java new file mode 100644 index 0000000..e245b08 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/tagplugin/if_jsp.java @@ -0,0 +1,174 @@ +package org.apache.jsp.jsp.tagplugin; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class if_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fif_005fvar_005ftest_005fscope_005fnobody; + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fif_005ftest; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _005fjspx_005ftagPool_005fc_005fif_005fvar_005ftest_005fscope_005fnobody = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _005fjspx_005ftagPool_005fc_005fif_005ftest = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fif_005fvar_005ftest_005fscope_005fnobody.release(); + _005fjspx_005ftagPool_005fc_005fif_005ftest.release(); + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" Tag Plugin Examples: if\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    Tag Plugin Examples - <c:if>

    \r\n"); + out.write("\r\n"); + out.write("
    \r\n"); + out.write("
    \r\n"); + out.write(" Plugin Introductory Notes\r\n"); + out.write("
    \r\n"); + out.write(" Brief Instructions for Wrieting Plugins\r\n"); + out.write("

    \r\n"); + out.write("
    \r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write("
    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("

    Set the test result to a variable

    \r\n"); + out.write(" "); + if (_jspx_meth_c_005fif_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" The result of testing for (1==1) is: "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${theTruth}", java.lang.String.class, (PageContext)_jspx_page_context, null, false)); + out.write("\r\n"); + out.write("\r\n"); + out.write("

    Conditionally execute the body

    \r\n"); + out.write(" "); + if (_jspx_meth_c_005fif_005f1(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } + + private boolean _jspx_meth_c_005fif_005f0(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:if + org.apache.taglibs.standard.tag.rt.core.IfTag _jspx_th_c_005fif_005f0 = (org.apache.taglibs.standard.tag.rt.core.IfTag) _005fjspx_005ftagPool_005fc_005fif_005fvar_005ftest_005fscope_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.IfTag.class); + _jspx_th_c_005fif_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fif_005f0.setParent(null); + // /jsp/tagplugin/if.jsp(37,4) name = test type = boolean reqTime = true required = true fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fif_005f0.setTest(((java.lang.Boolean) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${1==1}", java.lang.Boolean.class, (PageContext)_jspx_page_context, null, false)).booleanValue()); + // /jsp/tagplugin/if.jsp(37,4) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fif_005f0.setVar("theTruth"); + // /jsp/tagplugin/if.jsp(37,4) name = scope type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fif_005f0.setScope("session"); + int _jspx_eval_c_005fif_005f0 = _jspx_th_c_005fif_005f0.doStartTag(); + if (_jspx_th_c_005fif_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fif_005fvar_005ftest_005fscope_005fnobody.reuse(_jspx_th_c_005fif_005f0); + return true; + } + _005fjspx_005ftagPool_005fc_005fif_005fvar_005ftest_005fscope_005fnobody.reuse(_jspx_th_c_005fif_005f0); + return false; + } + + private boolean _jspx_meth_c_005fif_005f1(PageContext _jspx_page_context) + throws Throwable { + PageContext pageContext = _jspx_page_context; + JspWriter out = _jspx_page_context.getOut(); + // c:if + org.apache.taglibs.standard.tag.rt.core.IfTag _jspx_th_c_005fif_005f1 = (org.apache.taglibs.standard.tag.rt.core.IfTag) _005fjspx_005ftagPool_005fc_005fif_005ftest.get(org.apache.taglibs.standard.tag.rt.core.IfTag.class); + _jspx_th_c_005fif_005f1.setPageContext(_jspx_page_context); + _jspx_th_c_005fif_005f1.setParent(null); + // /jsp/tagplugin/if.jsp(41,4) name = test type = boolean reqTime = true required = true fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fif_005f1.setTest(((java.lang.Boolean) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${2>0}", java.lang.Boolean.class, (PageContext)_jspx_page_context, null, false)).booleanValue()); + int _jspx_eval_c_005fif_005f1 = _jspx_th_c_005fif_005f1.doStartTag(); + if (_jspx_eval_c_005fif_005f1 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) { + do { + out.write("\r\n"); + out.write("\tIt's true that (2>0)!\r\n"); + out.write(" "); + int evalDoAfterBody = _jspx_th_c_005fif_005f1.doAfterBody(); + if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) + break; + } while (true); + } + if (_jspx_th_c_005fif_005f1.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fif_005ftest.reuse(_jspx_th_c_005fif_005f1); + return true; + } + _005fjspx_005ftagPool_005fc_005fif_005ftest.reuse(_jspx_th_c_005fif_005f1); + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/xml/xml_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/xml/xml_jsp.class new file mode 100644 index 0000000..080735c Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/xml/xml_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/xml/xml_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/xml/xml_jsp.java new file mode 100644 index 0000000..04796e1 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/jsp/xml/xml_jsp.java @@ -0,0 +1,108 @@ +package org.apache.jsp.jsp.xml; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; +import java.util.Date; +import java.util.Locale; +import java.text.*; + +public final class xml_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + + String getDateTimeStr(Locale l) { + DateFormat df = SimpleDateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM, l); + return df.format(new Date()); + } + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html;charset=UTF-8"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + out.write(""); + out.write(""); + out.write(""); + out.write("Example JSP in XML format"); + out.write(""); + out.write(""); + out.write(""); + out.write("\n"); + out.write("This is the output of a simple JSP using XML format. \n"); + out.write("
    "); + out.write("
    "); + out.write("Use a jsp:scriptlet to loop from 1 to 10: "); + out.write("
    "); + +// Note we need to declare CDATA because we don't escape the less than symbol + + for (int i = 1; i<=10; i++) { + out.println(i); + if (i < 10) { + out.println(", "); + } + } + + out.write("\n"); + out.write("

    \n"); + out.write("
    "); + out.write("\n"); + out.write(" Use a jsp:expression to write the date and time in the browser's locale: \n"); + out.write(" "); + out.print(getDateTimeStr(request.getLocale())); + out.write("
    "); + out.write("\n"); + out.write("

    This sentence is enclosed in a jsp:text element.

    \n"); + out.write(""); + out.write(""); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/displayProducts_tag.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/displayProducts_tag.class new file mode 100644 index 0000000..bdc1a75 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/displayProducts_tag.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/displayProducts_tag.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/displayProducts_tag.java new file mode 100644 index 0000000..9b2f431 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/displayProducts_tag.java @@ -0,0 +1,460 @@ +package org.apache.jsp.tag.web; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class displayProducts_tag + extends javax.servlet.jsp.tagext.SimpleTagSupport + implements org.apache.jasper.runtime.JspSourceDependent { + + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private JspContext jspContext; + private java.io.Writer _jspx_sout; + private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public void setJspContext(JspContext ctx) { + super.setJspContext(ctx); + java.util.ArrayList _jspx_nested = null; + java.util.ArrayList _jspx_at_begin = null; + java.util.ArrayList _jspx_at_end = null; + _jspx_nested = new java.util.ArrayList(); + _jspx_nested.add("name"); + _jspx_nested.add("price"); + _jspx_nested.add("origPrice"); + _jspx_nested.add("salePrice"); + this.jspContext = new org.apache.jasper.runtime.JspContextWrapper(ctx, _jspx_nested, _jspx_at_begin, _jspx_at_end, null); + } + + public JspContext getJspContext() { + return this.jspContext; + } + private javax.servlet.jsp.tagext.JspFragment normalPrice; + private javax.servlet.jsp.tagext.JspFragment onSale; + + public javax.servlet.jsp.tagext.JspFragment getNormalPrice() { + return this.normalPrice; + } + + public void setNormalPrice(javax.servlet.jsp.tagext.JspFragment normalPrice) { + this.normalPrice = normalPrice; + jspContext.setAttribute("normalPrice", normalPrice); + } + + public javax.servlet.jsp.tagext.JspFragment getOnSale() { + return this.onSale; + } + + public void setOnSale(javax.servlet.jsp.tagext.JspFragment onSale) { + this.onSale = onSale; + jspContext.setAttribute("onSale", onSale); + } + + public Object getDependants() { + return _jspx_dependants; + } + + private void _jspInit(ServletConfig config) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(config); + _el_expressionfactory = _jspxFactory.getJspApplicationContext(config.getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) config.getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.release(); + } + + public void doTag() throws JspException, java.io.IOException { + PageContext _jspx_page_context = (PageContext)jspContext; + HttpServletRequest request = (HttpServletRequest) _jspx_page_context.getRequest(); + HttpServletResponse response = (HttpServletResponse) _jspx_page_context.getResponse(); + HttpSession session = _jspx_page_context.getSession(); + ServletContext application = _jspx_page_context.getServletContext(); + ServletConfig config = _jspx_page_context.getServletConfig(); + JspWriter out = jspContext.getOut(); + _jspInit(config); + jspContext.getELContext().putContext(JspContext.class,jspContext); + if( getNormalPrice() != null ) + _jspx_page_context.setAttribute("normalPrice", getNormalPrice()); + if( getOnSale() != null ) + _jspx_page_context.setAttribute("onSale", getOnSale()); + + try { + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    \r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f0(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f1(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + ((org.apache.jasper.runtime.JspContextWrapper) this.jspContext).syncBeforeInvoke(); + _jspx_sout = null; + if (getNormalPrice() != null) { + getNormalPrice().invoke(_jspx_sout); + } + jspContext.getELContext().putContext(JspContext.class,getJspContext()); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f2(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f3(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f4(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + ((org.apache.jasper.runtime.JspContextWrapper) this.jspContext).syncBeforeInvoke(); + _jspx_sout = null; + if (getOnSale() != null) { + getOnSale().invoke(_jspx_sout); + } + jspContext.getELContext().putContext(JspContext.class,getJspContext()); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f5(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f6(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + ((org.apache.jasper.runtime.JspContextWrapper) this.jspContext).syncBeforeInvoke(); + _jspx_sout = null; + if (getNormalPrice() != null) { + getNormalPrice().invoke(_jspx_sout); + } + jspContext.getELContext().putContext(JspContext.class,getJspContext()); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f7(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f8(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + ((org.apache.jasper.runtime.JspContextWrapper) this.jspContext).syncBeforeInvoke(); + _jspx_sout = null; + if (getNormalPrice() != null) { + getNormalPrice().invoke(_jspx_sout); + } + jspContext.getELContext().putContext(JspContext.class,getJspContext()); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f9(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f10(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + if (_jspx_meth_c_005fset_005f11(_jspx_page_context)) + return; + out.write("\r\n"); + out.write(" "); + ((org.apache.jasper.runtime.JspContextWrapper) this.jspContext).syncBeforeInvoke(); + _jspx_sout = null; + if (getOnSale() != null) { + getOnSale().invoke(_jspx_sout); + } + jspContext.getELContext().putContext(JspContext.class,getJspContext()); + out.write("\r\n"); + out.write("
    \r\n"); + } catch( Throwable t ) { + if( t instanceof SkipPageException ) + throw (SkipPageException) t; + if( t instanceof java.io.IOException ) + throw (java.io.IOException) t; + if( t instanceof IllegalStateException ) + throw (IllegalStateException) t; + if( t instanceof JspException ) + throw (JspException) t; + throw new JspException(t); + } finally { + jspContext.getELContext().putContext(JspContext.class,super.getJspContext()); + ((org.apache.jasper.runtime.JspContextWrapper) jspContext).syncEndTagFile(); + _jspDestroy(); + } + } + + private boolean _jspx_meth_c_005fset_005f0(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f0 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f0.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f0.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(28,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f0.setVar("name"); + // /WEB-INF/tags/displayProducts.tag(28,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f0.setValue(new String("Hand-held Color PDA")); + int _jspx_eval_c_005fset_005f0 = _jspx_th_c_005fset_005f0.doStartTag(); + if (_jspx_th_c_005fset_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f0); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f0); + return false; + } + + private boolean _jspx_meth_c_005fset_005f1(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f1 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f1.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f1.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(29,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f1.setVar("price"); + // /WEB-INF/tags/displayProducts.tag(29,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f1.setValue(new String("$298.86")); + int _jspx_eval_c_005fset_005f1 = _jspx_th_c_005fset_005f1.doStartTag(); + if (_jspx_th_c_005fset_005f1.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f1); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f1); + return false; + } + + private boolean _jspx_meth_c_005fset_005f2(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f2 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f2.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f2.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(33,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f2.setVar("name"); + // /WEB-INF/tags/displayProducts.tag(33,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f2.setValue(new String("4-Pack 150 Watt Light Bulbs")); + int _jspx_eval_c_005fset_005f2 = _jspx_th_c_005fset_005f2.doStartTag(); + if (_jspx_th_c_005fset_005f2.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f2); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f2); + return false; + } + + private boolean _jspx_meth_c_005fset_005f3(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f3 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f3.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f3.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(34,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f3.setVar("origPrice"); + // /WEB-INF/tags/displayProducts.tag(34,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f3.setValue(new String("$2.98")); + int _jspx_eval_c_005fset_005f3 = _jspx_th_c_005fset_005f3.doStartTag(); + if (_jspx_th_c_005fset_005f3.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f3); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f3); + return false; + } + + private boolean _jspx_meth_c_005fset_005f4(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f4 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f4.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f4.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(35,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f4.setVar("salePrice"); + // /WEB-INF/tags/displayProducts.tag(35,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f4.setValue(new String("$2.32")); + int _jspx_eval_c_005fset_005f4 = _jspx_th_c_005fset_005f4.doStartTag(); + if (_jspx_th_c_005fset_005f4.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f4); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f4); + return false; + } + + private boolean _jspx_meth_c_005fset_005f5(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f5 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f5.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f5.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(39,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f5.setVar("name"); + // /WEB-INF/tags/displayProducts.tag(39,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f5.setValue(new String("Digital Cellular Phone")); + int _jspx_eval_c_005fset_005f5 = _jspx_th_c_005fset_005f5.doStartTag(); + if (_jspx_th_c_005fset_005f5.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f5); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f5); + return false; + } + + private boolean _jspx_meth_c_005fset_005f6(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f6 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f6.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f6.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(40,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f6.setVar("price"); + // /WEB-INF/tags/displayProducts.tag(40,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f6.setValue(new String("$68.74")); + int _jspx_eval_c_005fset_005f6 = _jspx_th_c_005fset_005f6.doStartTag(); + if (_jspx_th_c_005fset_005f6.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f6); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f6); + return false; + } + + private boolean _jspx_meth_c_005fset_005f7(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f7 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f7.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f7.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(44,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f7.setVar("name"); + // /WEB-INF/tags/displayProducts.tag(44,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f7.setValue(new String("Baby Grand Piano")); + int _jspx_eval_c_005fset_005f7 = _jspx_th_c_005fset_005f7.doStartTag(); + if (_jspx_th_c_005fset_005f7.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f7); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f7); + return false; + } + + private boolean _jspx_meth_c_005fset_005f8(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f8 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f8.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f8.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(45,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f8.setVar("price"); + // /WEB-INF/tags/displayProducts.tag(45,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f8.setValue(new String("$10,800.00")); + int _jspx_eval_c_005fset_005f8 = _jspx_th_c_005fset_005f8.doStartTag(); + if (_jspx_th_c_005fset_005f8.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f8); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f8); + return false; + } + + private boolean _jspx_meth_c_005fset_005f9(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f9 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f9.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f9.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(49,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f9.setVar("name"); + // /WEB-INF/tags/displayProducts.tag(49,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f9.setValue(new String("Luxury Car w/ Leather Seats")); + int _jspx_eval_c_005fset_005f9 = _jspx_th_c_005fset_005f9.doStartTag(); + if (_jspx_th_c_005fset_005f9.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f9); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f9); + return false; + } + + private boolean _jspx_meth_c_005fset_005f10(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f10 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f10.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f10.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(50,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f10.setVar("origPrice"); + // /WEB-INF/tags/displayProducts.tag(50,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f10.setValue(new String("$23,980.00")); + int _jspx_eval_c_005fset_005f10 = _jspx_th_c_005fset_005f10.doStartTag(); + if (_jspx_th_c_005fset_005f10.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f10); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f10); + return false; + } + + private boolean _jspx_meth_c_005fset_005f11(PageContext _jspx_page_context) + throws Throwable { + JspWriter out = _jspx_page_context.getOut(); + // c:set + org.apache.taglibs.standard.tag.rt.core.SetTag _jspx_th_c_005fset_005f11 = (org.apache.taglibs.standard.tag.rt.core.SetTag) _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.get(org.apache.taglibs.standard.tag.rt.core.SetTag.class); + _jspx_th_c_005fset_005f11.setPageContext(_jspx_page_context); + _jspx_th_c_005fset_005f11.setParent(new javax.servlet.jsp.tagext.TagAdapter((javax.servlet.jsp.tagext.SimpleTag) this )); // /WEB-INF/tags/displayProducts.tag(51,6) name = var type = java.lang.String reqTime = false required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f11.setVar("salePrice"); + // /WEB-INF/tags/displayProducts.tag(51,6) name = value type = null reqTime = true required = false fragment = false deferredValue = false expectedTypeName = null deferredMethod = false methodSignature = null + _jspx_th_c_005fset_005f11.setValue(new String("$21,070.00")); + int _jspx_eval_c_005fset_005f11 = _jspx_th_c_005fset_005f11.doStartTag(); + if (_jspx_th_c_005fset_005f11.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f11); + throw new SkipPageException(); + } + _005fjspx_005ftagPool_005fc_005fset_005fvar_005fvalue_005fnobody.reuse(_jspx_th_c_005fset_005f11); + return false; + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/helloWorld_tag.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/helloWorld_tag.class new file mode 100644 index 0000000..c91cc11 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/helloWorld_tag.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/helloWorld_tag.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/helloWorld_tag.java new file mode 100644 index 0000000..4d211de --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/helloWorld_tag.java @@ -0,0 +1,89 @@ +package org.apache.jsp.tag.web; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class helloWorld_tag + extends javax.servlet.jsp.tagext.SimpleTagSupport + implements org.apache.jasper.runtime.JspSourceDependent { + + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private JspContext jspContext; + private java.io.Writer _jspx_sout; + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public void setJspContext(JspContext ctx) { + super.setJspContext(ctx); + java.util.ArrayList _jspx_nested = null; + java.util.ArrayList _jspx_at_begin = null; + java.util.ArrayList _jspx_at_end = null; + this.jspContext = new org.apache.jasper.runtime.JspContextWrapper(ctx, _jspx_nested, _jspx_at_begin, _jspx_at_end, null); + } + + public JspContext getJspContext() { + return this.jspContext; + } + + public Object getDependants() { + return _jspx_dependants; + } + + private void _jspInit(ServletConfig config) { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(config.getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) config.getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void doTag() throws JspException, java.io.IOException { + PageContext _jspx_page_context = (PageContext)jspContext; + HttpServletRequest request = (HttpServletRequest) _jspx_page_context.getRequest(); + HttpServletResponse response = (HttpServletResponse) _jspx_page_context.getResponse(); + HttpSession session = _jspx_page_context.getSession(); + ServletContext application = _jspx_page_context.getServletContext(); + ServletConfig config = _jspx_page_context.getServletConfig(); + JspWriter out = jspContext.getOut(); + _jspInit(config); + jspContext.getELContext().putContext(JspContext.class,jspContext); + + try { + out.write("\r\n"); + out.write("Hello, world!\r\n"); + } catch( Throwable t ) { + if( t instanceof SkipPageException ) + throw (SkipPageException) t; + if( t instanceof java.io.IOException ) + throw (java.io.IOException) t; + if( t instanceof IllegalStateException ) + throw (IllegalStateException) t; + if( t instanceof JspException ) + throw (JspException) t; + throw new JspException(t); + } finally { + jspContext.getELContext().putContext(JspContext.class,super.getJspContext()); + ((org.apache.jasper.runtime.JspContextWrapper) jspContext).syncEndTagFile(); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/panel_tag.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/panel_tag.class new file mode 100644 index 0000000..bf807b5 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/panel_tag.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/panel_tag.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/panel_tag.java new file mode 100644 index 0000000..89d54e4 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/panel_tag.java @@ -0,0 +1,149 @@ +package org.apache.jsp.tag.web; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class panel_tag + extends javax.servlet.jsp.tagext.SimpleTagSupport + implements org.apache.jasper.runtime.JspSourceDependent { + + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private JspContext jspContext; + private java.io.Writer _jspx_sout; + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public void setJspContext(JspContext ctx) { + super.setJspContext(ctx); + java.util.ArrayList _jspx_nested = null; + java.util.ArrayList _jspx_at_begin = null; + java.util.ArrayList _jspx_at_end = null; + this.jspContext = new org.apache.jasper.runtime.JspContextWrapper(ctx, _jspx_nested, _jspx_at_begin, _jspx_at_end, null); + } + + public JspContext getJspContext() { + return this.jspContext; + } + private java.lang.String color; + private java.lang.String bgcolor; + private java.lang.String title; + + public java.lang.String getColor() { + return this.color; + } + + public void setColor(java.lang.String color) { + this.color = color; + jspContext.setAttribute("color", color); + } + + public java.lang.String getBgcolor() { + return this.bgcolor; + } + + public void setBgcolor(java.lang.String bgcolor) { + this.bgcolor = bgcolor; + jspContext.setAttribute("bgcolor", bgcolor); + } + + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + jspContext.setAttribute("title", title); + } + + public Object getDependants() { + return _jspx_dependants; + } + + private void _jspInit(ServletConfig config) { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(config.getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) config.getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void doTag() throws JspException, java.io.IOException { + PageContext _jspx_page_context = (PageContext)jspContext; + HttpServletRequest request = (HttpServletRequest) _jspx_page_context.getRequest(); + HttpServletResponse response = (HttpServletResponse) _jspx_page_context.getResponse(); + HttpSession session = _jspx_page_context.getSession(); + ServletContext application = _jspx_page_context.getServletContext(); + ServletConfig config = _jspx_page_context.getServletConfig(); + JspWriter out = jspContext.getOut(); + _jspInit(config); + jspContext.getELContext().putContext(JspContext.class,jspContext); + if( getColor() != null ) + _jspx_page_context.setAttribute("color", getColor()); + if( getBgcolor() != null ) + _jspx_page_context.setAttribute("bgcolor", getBgcolor()); + if( getTitle() != null ) + _jspx_page_context.setAttribute("title", getTitle()); + + try { + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("
    "); + out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${title}", java.lang.String.class, (PageContext)this.getJspContext(), null, false)); + out.write("
    \r\n"); + out.write(" "); + ((org.apache.jasper.runtime.JspContextWrapper) this.jspContext).syncBeforeInvoke(); + _jspx_sout = null; + if (getJspBody() != null) + getJspBody().invoke(_jspx_sout); + jspContext.getELContext().putContext(JspContext.class,getJspContext()); + out.write("\r\n"); + out.write("
    \r\n"); + } catch( Throwable t ) { + if( t instanceof SkipPageException ) + throw (SkipPageException) t; + if( t instanceof java.io.IOException ) + throw (java.io.IOException) t; + if( t instanceof IllegalStateException ) + throw (IllegalStateException) t; + if( t instanceof JspException ) + throw (JspException) t; + throw new JspException(t); + } finally { + jspContext.getELContext().putContext(JspContext.class,super.getJspContext()); + ((org.apache.jasper.runtime.JspContextWrapper) jspContext).syncEndTagFile(); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/xhtmlbasic_tag.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/xhtmlbasic_tag.class new file mode 100644 index 0000000..6da0682 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/xhtmlbasic_tag.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/xhtmlbasic_tag.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/xhtmlbasic_tag.java new file mode 100644 index 0000000..d32926f --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/examples/org/apache/jsp/tag/web/xhtmlbasic_tag.java @@ -0,0 +1,98 @@ +package org.apache.jsp.tag.web; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class xhtmlbasic_tag + extends javax.servlet.jsp.tagext.SimpleTagSupport + implements org.apache.jasper.runtime.JspSourceDependent { + + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private JspContext jspContext; + private java.io.Writer _jspx_sout; + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public void setJspContext(JspContext ctx) { + super.setJspContext(ctx); + java.util.ArrayList _jspx_nested = null; + java.util.ArrayList _jspx_at_begin = null; + java.util.ArrayList _jspx_at_end = null; + this.jspContext = new org.apache.jasper.runtime.JspContextWrapper(ctx, _jspx_nested, _jspx_at_begin, _jspx_at_end, null); + } + + public JspContext getJspContext() { + return this.jspContext; + } + + public Object getDependants() { + return _jspx_dependants; + } + + private void _jspInit(ServletConfig config) { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(config.getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) config.getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void doTag() throws JspException, java.io.IOException { + PageContext _jspx_page_context = (PageContext)jspContext; + HttpServletRequest request = (HttpServletRequest) _jspx_page_context.getRequest(); + HttpServletResponse response = (HttpServletResponse) _jspx_page_context.getResponse(); + HttpSession session = _jspx_page_context.getSession(); + ServletContext application = _jspx_page_context.getServletContext(); + ServletConfig config = _jspx_page_context.getServletConfig(); + JspWriter out = jspContext.getOut(); + _jspInit(config); + jspContext.getELContext().putContext(JspContext.class,jspContext); + + try { + out.write("\r\n"); + out.write("\r\n"); + out.write("\r\n"); + ((org.apache.jasper.runtime.JspContextWrapper) this.jspContext).syncBeforeInvoke(); + _jspx_sout = null; + if (getJspBody() != null) + getJspBody().invoke(_jspx_sout); + jspContext.getELContext().putContext(JspContext.class,getJspContext()); + out.write("\r\n"); + out.write("\r\n"); + } catch( Throwable t ) { + if( t instanceof SkipPageException ) + throw (SkipPageException) t; + if( t instanceof java.io.IOException ) + throw (java.io.IOException) t; + if( t instanceof IllegalStateException ) + throw (IllegalStateException) t; + if( t instanceof JspException ) + throw (JspException) t; + throw new JspException(t); + } finally { + jspContext.getELContext().putContext(JspContext.class,super.getJspContext()); + ((org.apache.jasper.runtime.JspContextWrapper) jspContext).syncEndTagFile(); + } + } +} diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/host-manager/SESSIONS.ser b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/host-manager/SESSIONS.ser new file mode 100644 index 0000000..e555e0b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/host-manager/SESSIONS.ser differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/manager/SESSIONS.ser b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/manager/SESSIONS.ser new file mode 100644 index 0000000..e555e0b Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/manager/SESSIONS.ser differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/manager/org/apache/jsp/_401_jsp.class b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/manager/org/apache/jsp/_401_jsp.class new file mode 100644 index 0000000..83dd380 Binary files /dev/null and b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/manager/org/apache/jsp/_401_jsp.class differ diff --git a/P51/apache-tomcat-6.0.14/work/Catalina/localhost/manager/org/apache/jsp/_401_jsp.java b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/manager/org/apache/jsp/_401_jsp.java new file mode 100644 index 0000000..a6e85e8 --- /dev/null +++ b/P51/apache-tomcat-6.0.14/work/Catalina/localhost/manager/org/apache/jsp/_401_jsp.java @@ -0,0 +1,103 @@ +package org.apache.jsp; + +import javax.servlet.*; +import javax.servlet.http.*; +import javax.servlet.jsp.*; + +public final class _401_jsp extends org.apache.jasper.runtime.HttpJspBase + implements org.apache.jasper.runtime.JspSourceDependent { + + private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); + + private static java.util.List _jspx_dependants; + + private javax.el.ExpressionFactory _el_expressionfactory; + private org.apache.AnnotationProcessor _jsp_annotationprocessor; + + public Object getDependants() { + return _jspx_dependants; + } + + public void _jspInit() { + _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); + _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); + } + + public void _jspDestroy() { + } + + public void _jspService(HttpServletRequest request, HttpServletResponse response) + throws java.io.IOException, ServletException { + + PageContext pageContext = null; + HttpSession session = null; + ServletContext application = null; + ServletConfig config = null; + JspWriter out = null; + Object page = this; + JspWriter _jspx_out = null; + PageContext _jspx_page_context = null; + + + try { + response.setContentType("text/html"); + pageContext = _jspxFactory.getPageContext(this, request, response, + null, true, 8192, true); + _jspx_page_context = pageContext; + application = pageContext.getServletContext(); + config = pageContext.getServletConfig(); + session = pageContext.getSession(); + out = pageContext.getOut(); + _jspx_out = out; + + + response.setHeader("WWW-Authenticate", "Basic realm=\"Tomcat Manager Application\""); + + out.write("\r\n"); + out.write("\r\n"); + out.write(" \r\n"); + out.write(" 401 Unauthorized\r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write(" \r\n"); + out.write("

    401 Unauthorized

    \r\n"); + out.write("

    \r\n"); + out.write(" You are not authorized to view this page. If you have not changed\r\n"); + out.write(" any configuration files, please examine the file\r\n"); + out.write(" conf/tomcat-users.xml in your installation. That\r\n"); + out.write(" file will contain the credentials to let you use this webapp.\r\n"); + out.write("

    \r\n"); + out.write("

    \r\n"); + out.write(" You will need to add manager role to the config file listed above.\r\n"); + out.write(" For example:\r\n"); + out.write("

    \r\n");
    +      out.write("<role rolename=\"manager\"/>\r\n");
    +      out.write("<user username=\"tomcat\" password=\"s3cret\" roles=\"manager\"/>\r\n");
    +      out.write("
    \r\n"); + out.write("

    \r\n"); + out.write("

    \r\n"); + out.write(" For more information - please see the\r\n"); + out.write(" Manager App HOW-TO.\r\n"); + out.write("

    \r\n"); + out.write(" \r\n"); + out.write("\r\n"); + out.write("\r\n"); + } catch (Throwable t) { + if (!(t instanceof SkipPageException)){ + out = _jspx_out; + if (out != null && out.getBufferSize() != 0) + try { out.clearBuffer(); } catch (java.io.IOException e) {} + if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); + } + } finally { + _jspxFactory.releasePageContext(_jspx_page_context); + } + } +} diff --git a/P51/compteur.java b/P51/compteur.java new file mode 100644 index 0000000..e24288c --- /dev/null +++ b/P51/compteur.java @@ -0,0 +1,4 @@ +class Compteur { + + +} diff --git a/P51/compteur_solution.java b/P51/compteur_solution.java new file mode 100644 index 0000000..ecbdddb --- /dev/null +++ b/P51/compteur_solution.java @@ -0,0 +1,67 @@ +import java.io.*; +import java.util.*; + +public class Compteur extends Thread { + + private int n = 0; + private String nom; + + // constructeur + + Compteur( String nom, int n ) + { + this.nom = nom; + this.n = n; + } + + // methode run, code du thread + + public void run() + { + for ( int i = 1 ; i <= n ; i++ ) { + try { + sleep( (int)(Math.random()*5000) ); + } catch ( InterruptedException ex ) { + } + System.out.println( nom + " : " + i ); + + } + System.out.println( "*** " + nom + " a fini de compter jusqu' " + + n ); + + } + + private static void parseArgs( String[] args ) + { + if ( (args.length % 2) != 0 ) { + System.err.println( "usage : Compteurs ..." + ); + System.exit( 1 ); + } + } + + public static void main ( String[] args ) + { + + // test des arguments + + parseArgs( args ); + + // creation de la table de compteurs + + Compteur[] compteurs; + int nb_compteurs = args.length / 2; + compteurs = new Compteur[nb_compteurs]; + + // creation des compteurs + + for ( int i = 0, j = 0 ; i < args.length ; i += 2, j++ ) + compteurs[j] = new Compteur( args[i], + Integer.parseInt( args[i+1] ) ); + + // lancement des compteurs + + for ( int i = 0 ; i < nb_compteurs ; i++ ) + compteurs[i].start(); + } +} diff --git a/P51/connexionBDD/.Connexion.java.swp b/P51/connexionBDD/.Connexion.java.swp new file mode 100644 index 0000000..b1f6c97 Binary files /dev/null and b/P51/connexionBDD/.Connexion.java.swp differ diff --git a/P51/connexionBDD/Connexion.class b/P51/connexionBDD/Connexion.class new file mode 100644 index 0000000..77d4872 Binary files /dev/null and b/P51/connexionBDD/Connexion.class differ diff --git a/P51/connexionBDD/Connexion.java b/P51/connexionBDD/Connexion.java new file mode 100644 index 0000000..10a5866 --- /dev/null +++ b/P51/connexionBDD/Connexion.java @@ -0,0 +1,160 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.SQLException; + +/** + * @author 3dossmanno + */ +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + /** + * @return the port + * @uml.property name="port" + */ + public String getPort(){ + return this.port; + } + + /** + * @param port the port to set + * @uml.property name="port" + */ + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + DatabaseMetaData metaData; + + metaData = connection.getMetaData(); + System.out.println(metaData.getDriverName()); + System.out.println(metaData.getDriverVersion());// getVersion + System.out.println(metaData.getConnection().toString());// getConnectionName ??? + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/P51/connexionBDD/Connexion.java~ b/P51/connexionBDD/Connexion.java~ new file mode 100644 index 0000000..b9708de --- /dev/null +++ b/P51/connexionBDD/Connexion.java~ @@ -0,0 +1,140 @@ +package fr.blankoworld.connexionBDD; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + public String[] connect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me connecter !"; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp; + + // puis nous tentons d'appliquer la creme + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[1] = "Acces a la base: Accepte."; + } + catch(SQLException sqle) { + tableau[1] = "Accès à la base: Refuse."; + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + tableau[1] = "Connexion fermee."; + } catch(Exception e){ + e.printStackTrace(); + } + } + } + + + + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/P51/connexionBDD/Principal.class b/P51/connexionBDD/Principal.class new file mode 100644 index 0000000..a241f60 Binary files /dev/null and b/P51/connexionBDD/Principal.class differ diff --git a/P51/connexionBDD/Principal.java b/P51/connexionBDD/Principal.java new file mode 100644 index 0000000..9a47284 --- /dev/null +++ b/P51/connexionBDD/Principal.java @@ -0,0 +1,95 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("## Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("## Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("## Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("## Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("## Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes (Commence 1 !) +// int i = rsmd.getColumnCount(); +// System.out.println("Nombre de colonne: " + i); + + // Donner les enttes de colonnes +// for(int j = 1; j < i; j++){ +// System.out.print(rsmd.getColumnName(j) + " "); +// } + System.out.println(resultat.toString()); + + System.out.println(rsmd.getColumnName(2) + " " + rsmd.getColumnName(3)); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("## Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("## Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("## Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("## Fin"); + } + + } \ No newline at end of file diff --git a/P51/ihm/IHMConnexion$1.class b/P51/ihm/IHMConnexion$1.class new file mode 100644 index 0000000..31dacee Binary files /dev/null and b/P51/ihm/IHMConnexion$1.class differ diff --git a/P51/ihm/IHMConnexion$2.class b/P51/ihm/IHMConnexion$2.class new file mode 100644 index 0000000..1486f9a Binary files /dev/null and b/P51/ihm/IHMConnexion$2.class differ diff --git a/P51/ihm/IHMConnexion.class b/P51/ihm/IHMConnexion.class new file mode 100644 index 0000000..75c3639 Binary files /dev/null and b/P51/ihm/IHMConnexion.class differ diff --git a/P51/ihm/IHMConnexion.java b/P51/ihm/IHMConnexion.java new file mode 100644 index 0000000..78b864a --- /dev/null +++ b/P51/ihm/IHMConnexion.java @@ -0,0 +1,211 @@ +package fr.blankoworld.ihm; + +import fr.blankoworld.connexionBDD.Connexion; +import fr.blankoworld.ihm.IHMPrincipale; +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +/** + * @author 3dossmanno + */ +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + private JButton jOk; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypte) : " + this.jtextMdp.getPassword().toString() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + + String rose = new String(this.jtextMdp.getPassword()); + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(rose); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + + public void driverExist(){ + // On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(connexionToBdd.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + this.jtextServeur.setEnabled(false); + this.jtextPort.setEnabled(false); + this.jtextBase.setEnabled(false); + this.jtextIdentifiant.setEnabled(false); + this.jtextMdp.setEnabled(false); + + this.jOk.setEnabled(false); + + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + else{ + JOptionPane.showMessageDialog(this, "Pilote trouve.", "Information", JOptionPane.INFORMATION_MESSAGE); + } + } +} diff --git a/P51/ihm/IHMPrincipale$1.class b/P51/ihm/IHMPrincipale$1.class new file mode 100644 index 0000000..c2b5744 Binary files /dev/null and b/P51/ihm/IHMPrincipale$1.class differ diff --git a/P51/ihm/IHMPrincipale$2.class b/P51/ihm/IHMPrincipale$2.class new file mode 100644 index 0000000..b65bbb6 Binary files /dev/null and b/P51/ihm/IHMPrincipale$2.class differ diff --git a/P51/ihm/IHMPrincipale$3.class b/P51/ihm/IHMPrincipale$3.class new file mode 100644 index 0000000..f70f3ab Binary files /dev/null and b/P51/ihm/IHMPrincipale$3.class differ diff --git a/P51/ihm/IHMPrincipale$4.class b/P51/ihm/IHMPrincipale$4.class new file mode 100644 index 0000000..f42fbb0 Binary files /dev/null and b/P51/ihm/IHMPrincipale$4.class differ diff --git a/P51/ihm/IHMPrincipale$5.class b/P51/ihm/IHMPrincipale$5.class new file mode 100644 index 0000000..e9bc58a Binary files /dev/null and b/P51/ihm/IHMPrincipale$5.class differ diff --git a/P51/ihm/IHMPrincipale.class b/P51/ihm/IHMPrincipale.class new file mode 100644 index 0000000..00efcd4 Binary files /dev/null and b/P51/ihm/IHMPrincipale.class differ diff --git a/P51/ihm/IHMPrincipale.java b/P51/ihm/IHMPrincipale.java new file mode 100644 index 0000000..b47fc10 --- /dev/null +++ b/P51/ihm/IHMPrincipale.java @@ -0,0 +1,234 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import fr.blankoworld.connexionBDD.Connexion; +import fr.blankoworld.ihm.IHMConnexion; +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +/** + * @author 3dossmanno + */ +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/P51/ihm/IHMPrincipale.java~ b/P51/ihm/IHMPrincipale.java~ new file mode 100644 index 0000000..9eb0df4 --- /dev/null +++ b/P51/ihm/IHMPrincipale.java~ @@ -0,0 +1,216 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/P51/ihm/IHMRequete.class b/P51/ihm/IHMRequete.class new file mode 100644 index 0000000..aa75f8d Binary files /dev/null and b/P51/ihm/IHMRequete.class differ diff --git a/P51/ihm/IHMRequete.java b/P51/ihm/IHMRequete.java new file mode 100644 index 0000000..5af9a5d --- /dev/null +++ b/P51/ihm/IHMRequete.java @@ -0,0 +1,70 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.Insets; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextPane; + + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + // Creation de la zone de texte + private JTextPane panneauTexte; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMRequete().setVisible(true); + } + + public IHMRequete(){ + // Creation d'une etiquette + JLabel jRequete = new JLabel("Entrez votre requete : "); + + // Creation des boutons + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Annuler"); + + // Creation de la zone de texte + panneauTexte = new JTextPane(); + panneauTexte.setCaretPosition(0); + panneauTexte.setMargin(new Insets(5,5,5,5)); + JScrollPane zoneTexteRequete = new JScrollPane(panneauTexte); + zoneTexteRequete.setPreferredSize(new Dimension(200, 130)); + + // Creation des panneaux bas et centre + JPanel Panneau_Bas = new JPanel(); + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new BorderLayout()); + + // Ajout des boutons a chacun des panneaux + Panneau_Centre.add(jRequete, BorderLayout.NORTH); + Panneau_Centre.add(zoneTexteRequete, BorderLayout.CENTER); + + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Gestionnaire de contenus + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(400,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Requete"); + + } +} diff --git a/P51/jsp-api.jar b/P51/jsp-api.jar new file mode 100644 index 0000000..d6beb34 Binary files /dev/null and b/P51/jsp-api.jar differ diff --git a/P51/ojdbc14.jar b/P51/ojdbc14.jar new file mode 100644 index 0000000..2a33709 Binary files /dev/null and b/P51/ojdbc14.jar differ diff --git a/P51/servlet-api.jar b/P51/servlet-api.jar new file mode 100644 index 0000000..8b23ffc Binary files /dev/null and b/P51/servlet-api.jar differ diff --git a/P5B/cobol/exercices/carmag b/P5B/cobol/exercices/carmag new file mode 100644 index 0000000..05fc7af Binary files /dev/null and b/P5B/cobol/exercices/carmag differ diff --git a/P5B/cobol/exercices/carmag.cbl b/P5B/cobol/exercices/carmag.cbl new file mode 100644 index 0000000..183b9ac --- /dev/null +++ b/P5B/cobol/exercices/carmag.cbl @@ -0,0 +1,163 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. carmag0. + + AUTHOR. OD. + ***--------------------------------------------------------------- + + *----------------------------------------------------------------* + * PROGRAMME * + * CREATION TABLEAU IMPAIR * + *----------------------------------------------------------------* + + ENVIRONMENT DIVISION. + ***--------------------------------------------------------------- + + DATA DIVISION. + WORKING-STORAGE SECTION. + *--------------------------* + * DEFINITION DES VARIABLES * + *--------------------------* + * Nombre entre au clavier + 77 NBR-DPRT PICTURE 999 VALUE ZERO. + * Tableau du carre magique + 01 TABLE-CARMAG. + * - Numero de ligne + 05 LGN OCCURS 25. + * - Colonnes de la ligne + 10 CLN OCCURS 25. + * - - Contenu de chaque colonne : chiffre + 15 CNTN PICTURE 999. + * Nombre pour verifier le nombre saisie + 77 NBR PICTURE 999 VALUE ZERO. + 88 IMPAIR VALUE 1. + * Valeur a inserer dans le tableau final + 77 VALEUR PICTURE 999 VALUE 1. + * Curseur ligne + 77 CRSR-LGN PICTURE 999 VALUE 1. + * Curseur colonne + 77 CRSR-CLN PICTURE 999 VALUE 1. + * Total d'un calcul puis reutilisation pour diverses taches + 77 TOTAL PICTURE 999 VALUE ZERO. + * Nombre de cases dans le tableau a afficher + 77 NBR-CRR PICTURE 999 VALUE ZERO. + * Reste dans la division euclidienne + 77 RST PICTURE 999 VALUE ZERO. + ***--------------------------------------------------------------- + + PROCEDURE DIVISION. + * + * Nom du programme + * + PROGRAMME SECTION. + * Debut du programme (initialisation) + DEBUT. + DISPLAY "Debut de la saisie...". + PERFORM SAISIE UNTIL IMPAIR. + DISPLAY "Saisie terminee !". + * Corps du programme (contenu) + CORPS. + DISPLAY "Taille du tableau : " NBR-DPRT. + PERFORM REMPLISSAGE. + * Fin du programme + FIN. + DISPLAY "Carre magique fini !!!". + STOP RUN. + + * + * Arborescence de niveau 2 : Saisie de l'utilisateur + * + SAISIR SECTION. + SAISIE. + DISPLAY "Saisissez un chiffre impair inferieur a 26 : " + WITH NO ADVANCING. + ACCEPT NBR-DPRT. + PERFORM VERIF. + VERIF. + DIVIDE NBR-DPRT BY 2 GIVING TOTAL REMAINDER RST. + IF (RST NOT EQUAL TO ZERO AND NBR-DPRT LESS THAN 26) THEN + MOVE 1 TO NBR. + + * + * Arborescence niveau 2 : REMPLISSAGE PUIS AFFICHAGE + * + REMPLISSAGE SECTION. + * Affectation de la premiere valeur, ligne une, colonne du milieu + VAL-UNE. + DISPLAY "Affectation valeur une...". + * COMPUTE TOTAL ROUNDED = NBR-DPRT / 2. + DIVIDE 2 INTO NBR-DPRT GIVING TOTAL ROUNDED. + * Affectation de la premiere valeur a la colonne trouvee + MOVE 1 TO CNTN(1,TOTAL). + * Affectation du numero de colonne vers le curseur des colonnes + MOVE TOTAL TO CRSR-CLN. + DISPLAY "Affectation terminee ! Colonne actuelle : " TOTAL. + VAL-SUIV. + DISPLAY "Affectation des valeurs suivantes...". + MULTIPLY NBR-DPRT BY NBR-DPRT GIVING TOTAL. + MOVE TOTAL TO NBR-CRR. + PERFORM TRAITEMENT UNTIL VALEUR EQUAL TO NBR-CRR. + DISPLAY "Affectations terminees ! Total : " VALEUR. + AFFICHAGE. + DISPLAY "AFFICHAGE DU TABLEAU". + MOVE 1 TO CRSR-LGN. + MOVE 1 TO CRSR-CLN. + PERFORM PARCOURS VARYING CRSR-LGN FROM 1 BY 1 UNTIL CRSR-LGN + > NBR-DPRT. + * AFTER CRSR-CLN FROM 1 BY 1 UNTIL CRSR-CLN + * > NBR-DPRT. + DISPLAY "AFFICHAGE TERMINE". + + * + * Arborescence niveau 3 : TRAITEMENT PLACEMENT + * + TRAITEMENT SECTION. + INCREMENTE. + ADD 1 TO VALEUR. + MLTPL. + DIVIDE VALEUR BY NBR-DPRT GIVING TOTAL REMAINDER RST. + IF (RST EQUAL TO 1) THEN + PERFORM SS-PLCMT + ELSE PERFORM SR-PLCMT. + VERIFICATION. + PERFORM VERIFIER. + PLACEMENT. + DISPLAY "|_Affectation de : " VALEUR. + MOVE VALEUR TO CNTN(CRSR-LGN,CRSR-CLN). + DISPLAY "| Affectee a : " CRSR-LGN ", "CRSR-CLN. + + * + * Arborescence niveau 3 : Affichage du tableau + * + AFFICHER SECTION. + PARCOURS. + PERFORM AFFICHE VARYING CRSR-CLN FROM 1 BY 1 + UNTIL CRSR-CLN >= NBR-DPRT. + DISPLAY "|" CNTN(CRSR-LGN,CRSR-CLN) "|". + AFFICHE. + DISPLAY "|" CNTN(CRSR-LGN,CRSR-CLN) "|" + WITH NO ADVANCING. + + * + * Arborescence niveau 4 : MULIPLE + 1 + * + MULTPL SECTION. + SS-PLCMT. + ADD 1 TO CRSR-LGN. + SR-PLCMT. + SUBTRACT 1 FROM CRSR-LGN. + SUBTRACT 1 FROM CRSR-CLN. + + * + * Arborescence niveau 4 : VERIFICATION LIGNE / COLONNE + * + VERIFIER SECTION. + LIGNE. + IF (CRSR-LGN < 1) THEN + MOVE NBR-DPRT TO CRSR-LGN. + IF (CRSR-LGN > NBR-DPRT) THEN + MOVE 1 TO CRSR-LGN. + COLONNE. + IF (CRSR-CLN < 1) THEN + MOVE NBR-DPRT TO CRSR-CLN. + IF (CRSR-CLN > NBR-DPRT) THEN + MOVE 1 TO CRSR-CLN. diff --git a/P5B/cobol/exercices/carmag0 b/P5B/cobol/exercices/carmag0 new file mode 100644 index 0000000..47f2707 Binary files /dev/null and b/P5B/cobol/exercices/carmag0 differ diff --git a/P5B/cobol/exercices/carmag0.cbl b/P5B/cobol/exercices/carmag0.cbl new file mode 100644 index 0000000..75bd221 --- /dev/null +++ b/P5B/cobol/exercices/carmag0.cbl @@ -0,0 +1,50 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. carmag0. + AUTHOR. OD. + *----------------------------------------------------------------* + * PROGRAMME * + * CREATION TABLEAU IMPAIR * + *----------------------------------------------------------------* + + ENVIRONMENT DIVISION. + + DATA DIVISION. + WORKING-STORAGE SECTION. + *--------------------------* + * DEFINITION DES VARIABLES * + *--------------------------* + * Nombre entre + 77 NBR-DPRT PICTURE 99 VALUE ZERO. + * Tableau du carr magique + 01 TABLE-CARMAG. + * - Numro de ligne + 05 NM-LGN OCCURS 31. + * - Colonnes de la ligne + 10 CLN OCCURS 31. + * - - Contenu de chaque colonne : chiffre + 15 CNTN PICTURE 99. + * Curseur ligne + 77 CRSR-LGN PICTURE 99 VALUE 1. + 77 CRSR-CLN PICTURE 99 VALUE 1. + + PROCEDURE DIVISION. + PROGRAMME SECTION. + DEBUT. + MOVE 3 TO NBR-DPRT. + CORPS. + DISPLAY "Taille du tableau : " NBR-DPRT. + PERFORM PARCOURS. + FIN. + DISPLAY "Carr magique termin.". + STOP RUN. + + TRAITEMENTS SECTION. + PARCOURS. + PERFORM REMP VARYING CRSR-LGN FROM 1 BY 1 UNTIL CRSR-LGN + > NBR-DPRT AFTER CRSR-CLN FROM 1 BY 1 UNTIL CRSR-CLN + > NBR-DPRT. + + REMP. + MOVE 1 TO CNTN(CRSR-LGN, CRSR-CLN). + DISPLAY "Coordonnes (" CRSR-LGN ", " CRSR-CLN ") : " + CNTN(CRSR-LGN, CRSR-CLN). diff --git a/P5B/cobol/exercices/carmag1 b/P5B/cobol/exercices/carmag1 new file mode 100644 index 0000000..72227be Binary files /dev/null and b/P5B/cobol/exercices/carmag1 differ diff --git a/P5B/cobol/exercices/carmag1.cbl b/P5B/cobol/exercices/carmag1.cbl new file mode 100644 index 0000000..8669780 --- /dev/null +++ b/P5B/cobol/exercices/carmag1.cbl @@ -0,0 +1,62 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. carmag0. + AUTHOR. OD. + *----------------------------------------------------------------* + * PROGRAMME * + * CREATION TABLEAU IMPAIR * + *----------------------------------------------------------------* + + ENVIRONMENT DIVISION. + + DATA DIVISION. + WORKING-STORAGE SECTION. + *--------------------------* + * DEFINITION DES VARIABLES * + *--------------------------* + * Nombre entre + 77 NBR-DPRT PICTURE 99 VALUE ZERO. + * Tableau du carr magique + 01 TABLE-CARMAG. + * - Numro de ligne + 05 NM-LGN OCCURS 31. + * - Colonnes de la ligne + 10 CLN OCCURS 31. + * - - Contenu de chaque colonne : chiffre + 15 CNTN PICTURE 99. + * Curseur ligne + 77 CRSR-LGN PICTURE 99 VALUE 1. + 77 CRSR-CLN PICTURE 99 VALUE 1. + * Total d'un calcul + 77 TOTAL PICTURE 99 VALUE ZERO. + + PROCEDURE DIVISION. + * Nom du programme + PROGRAMME SECTION. + * Dbut du programme (initialisation) + DEBUT. + MOVE 3 TO NBR-DPRT. + * Corps du programme (contenu) + CORPS. + DISPLAY "Taille du tableau : " NBR-DPRT. + PERFORM REMPLI. + * Fin du programme + FIN. + DISPLAY "Carr magique termin.". + STOP RUN. + + * Section dédiée aux traitements à effectuer + TRAITEMENTS SECTION. + * Remplissage du tableau + REMPLI. + COMPUTE TOTAL ROUNDED = NBR-DPRT / 2. + DISPLAY TOTAL. + MOVE 1 TO CNTN(1,TOTAL). + + AFFICHAGE SECTION. + PARCOURS-TABLEAU. + PERFORM AFFICHE VARYING CRSR-LGN FROM 1 BY 1 UNTIL CRSR-LGN + > NBR-DPRT AFTER CRSR-CLN FROM 1 BY 1 UNTIL CRSR-CLN + > NBR-DPRT. + AFFICHE. + DISPLAY "Coordonnées (" CRSR-LGN ", " CRSR-CLN ") : " + CNTN(CRSR-LGN, CRSR-CLN). diff --git a/P5B/cobol/exercices/conson b/P5B/cobol/exercices/conson new file mode 100644 index 0000000..7b41ade Binary files /dev/null and b/P5B/cobol/exercices/conson differ diff --git a/P5B/cobol/exercices/conson.cbl b/P5B/cobol/exercices/conson.cbl new file mode 100644 index 0000000..01e99b6 --- /dev/null +++ b/P5B/cobol/exercices/conson.cbl @@ -0,0 +1,83 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. conson. + AUTHOR. OD. + *----------------------------------------------* + * PROGRAMME QUI CONSONNE UN MOT (NORMALEMENT) * + *----------------------------------------------* + + ENVIRONMENT DIVISION. + DATA DIVISION. + + WORKING-STORAGE SECTION. + *--------------------------* + * DEFINITION DES VARIABLES * + *--------------------------* + + 77 MOT PICTURE X(30) VALUE SPACE. + 77 RETOUR PICTURE X(30) VALUE SPACE. + 77 RESULTAT PICTURE X(6) VALUE SPACE. + 77 LETTRE PICTURE X VALUE SPACE. + 77 CHIFFRE PICTURE 99 VALUE 2. + 77 POINTEUR1 PICTURE 99 VALUE 2. + 77 POINTEUR2 PICTURE 9 VALUE 2. + 01 VOYELLES. + 05 LTR-AMAJ PICTURE X VALUE "A". + 05 LTR-EMAJ PICTURE X VALUE "E". + 05 LTR-IMAJ PICTURE X VALUE "I". + 05 LTR-OMAJ PICTURE X VALUE "O". + 05 LTR-UMAJ PICTURE X VALUE "U". + 05 LTR-YMAJ PICTURE X VALUE "Y". + 05 LTR-AMIN PICTURE X VALUE "a". + 05 LTR-EMIN PICTURE X VALUE "e". + 05 LTR-IMIN PICTURE X VALUE "i". + 05 LTR-OMIN PICTURE X VALUE "o". + 05 LTR-UMIN PICTURE X VALUE "u". + 05 LTR-YMIN PICTURE X VALUE "y". + 01 ESPACES PICTURE X(12) VALUE SPACE. + + PROCEDURE DIVISION. + *NOM DU PROGRAMME + PRINCIPAL SECTION. + + DEBUT. + PERFORM SAISIE. + CORPS. + PERFORM TRAITEMENT. + FIN. + DISPLAY "Mot consonn : " RESULTAT. + DISPLAY "FIN DU TRAITEMENT". STOP RUN. + + *SAISIE DU MOT + SAISIR SECTION. + SAISIE. + DISPLAY "Saisissez un mot : " + WITH NO ADVANCING. + ACCEPT MOT. + + *TRAITEMENT DU MOT + TRAITER SECTION. + TRAITEMENT. + INSPECT MOT CONVERTING VOYELLES TO ESPACES AFTER MOT(1:1). + MOVE MOT(1:1) TO RETOUR. + PERFORM CONCATENER UNTIL CHIFFRE EQUAL TO 30. + PERFORM TRANSMISSION. + + *CONCATENER LA CHAINE OBTENUE POUR SUPPRIMER LES ESPACES + CONCATENER. + MOVE MOT(CHIFFRE:1) TO LETTRE. + IF (POINTEUR1 < 10) THEN + MOVE POINTEUR1 TO POINTEUR2 + END-IF + SUBTRACT 1 FROM POINTEUR2. + IF LETTRE IS EQUAL TO RETOUR(POINTEUR2:1) THEN + MOVE SPACE TO LETTRE. + IF (LETTRE IS NOT EQUAL TO SPACE OR POINTEUR1 IS EQUAL TO + 6) THEN + STRING LETTRE(1:1) INTO RETOUR WITH POINTER POINTEUR1 + END-IF. + ADD 1 TO CHIFFRE. + + *TRANSMET LE RESULTAT DES 6 PREMIERS CARACTERES A LA VARIABLE + * RESULAT + TRANSMISSION. + MOVE RETOUR(1:6) TO RESULTAT. diff --git a/P5B/cobol/exercices/impair b/P5B/cobol/exercices/impair new file mode 100644 index 0000000..f78b279 Binary files /dev/null and b/P5B/cobol/exercices/impair differ diff --git a/P5B/cobol/exercices/impair.cbl b/P5B/cobol/exercices/impair.cbl new file mode 100644 index 0000000..43ace52 --- /dev/null +++ b/P5B/cobol/exercices/impair.cbl @@ -0,0 +1,57 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. multpl. + AUTHOR. OD. + *----------------------------------------------------------------* + * PROGRAMME * + * VERIFICATION NOMBRE MULTIPLE D'UN AUTRE (IMPAIR) * + *----------------------------------------------------------------* + + ENVIRONMENT DIVISION. + + DATA DIVISION. + WORKING-STORAGE SECTION. + *--------------------------* + * DEFINITION DES VARIABLES * + *--------------------------* + * Nombre de dpart + 77 NBR-DPRT PICTURE 99 VALUE ZERO. + * Resultat dans la division euclidienne + 77 DV-ECLDN PICTURE 99 VALUE ZERO. + * Reste dans la division euclidienne par 2 + 77 RST PICTURE 9 VALUE ZERO. + * Nombre impair ou pas ? (simulation d'un boolen) + 77 NBR PICTURE 99 VALUE ZERO. + 88 IMPAIR VALUE 1. + * Rsultat + 77 RSLTT PICTURE X(30). + + PROCEDURE DIVISION. + *--------------------* + * DEBUT DU PROGRAMME * + *--------------------* + + PROGRAMME SECTION. + + DEBUT. + PERFORM SAISIE UNTIL IMPAIR. + CORPS. + PERFORM PARITE. + FIN. + DISPLAY RSLTT. + STOP RUN. + + SAISIR SECTION. + SAISIE. + DISPLAY "Saisissez un chiffre impair : " + WITH NO ADVANCING. + ACCEPT NBR-DPRT. + PERFORM VERIF. + VERIF. + DIVIDE NBR-DPRT BY 2 GIVING DV-ECLDN REMAINDER RST. + DISPLAY RST. + IF (RST NOT EQUAL TO ZERO) THEN + MOVE 1 TO NBR. + PARITE. + IF (IMPAIR) THEN + MOVE "Le nombre est impair." TO RSLTT + ELSE MOVE "Le nombre n'est pas impair." TO RSLTT. diff --git a/P5B/cobol/exercices/insee b/P5B/cobol/exercices/insee new file mode 100644 index 0000000..3701fb3 Binary files /dev/null and b/P5B/cobol/exercices/insee differ diff --git a/P5B/cobol/exercices/insee.cbl b/P5B/cobol/exercices/insee.cbl new file mode 100644 index 0000000..320e361 --- /dev/null +++ b/P5B/cobol/exercices/insee.cbl @@ -0,0 +1,114 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. insee. + AUTHOR. OD. + *---------------------------------------------------------------* + * PROGRAMME * + * CONTROLE VALIDITE NUMERO INSEE * + *---------------------------------------------------------------* + + ENVIRONMENT DIVISION. + DATA DIVISION. + + WORKING-STORAGE SECTION. + *--------------------------* + * DEFINITION DES VARIABLES * + *--------------------------* + + 01 CD-INSEE. + * Code Homme/Femme, 1 = homme, 2 = femme + 05 CD-SX PICTURE 9 VALUE ZERO. + * Code anne de naissance + 05 CD-NSSNC PICTURE 99 VALUE ZERO. + * Code mois de naissance + 05 CD-MS-NSSNC PICTURE 99 VALUE ZERO. + * Code dpartement + * Enlever les dpartements non existants, et 2A pour Corse, + * ainsi que 2B + 05 CD-DPRTMNT PICTURE XX. + * Code commune + 05 CD-CMMNE PICTURE 999 VALUE ZERO. + * Code registre + 05 CD-RGSTR PICTURE 999 VALUE ZERO. + * Cl de contrle + 05 CL-CTRL PICTURE 99 VALUE ZERO. + + * ERREURS + * Boolen permettant de dire s'il y a erreur ou pas + * Initialis 0 pour l'instant + 01 ERR-BLN PICTURE 9 VALUE LOW-VALUE. + * Nom erreur + 01 ERR-NM PICTURE X(20) VALUE SPACE. + + PROCEDURE DIVISION. + * Nom du programme, ici PROGRAMME + PROGRAMME SECTION. + + * Demande du numro + DEBUT. + DISPLAY "Tapez votre numro INSEE : " WITH NO ADVANCING. + ACCEPT CD-INSEE. + + * Affichage des valeurs entres + AFFICHAGE. + DISPLAY "Sexe : " CD-SX. + DISPLAY "Anne de naissance : " CD-NSSNC. + DISPLAY "Mois de naissance : " CD-MS-NSSNC. + DISPLAY "Dpartement de naissance : " CD-DPRTMNT. + DISPLAY "Commune : " CD-CMMNE. + DISPLAY "Code registre : " CD-RGSTR. + DISPLAY "Cl de contrle : " CL-CTRL. + * STOP RUN. + + * Contrles de validit + CONTROLE SECTION. + + * Contrle du sexe + SEXE. + IF NOT (CD-SX EQUAL TO 1 OR CD-SX EQUAL TO 2) THEN + MOVE HIGH-VALUE TO ERR-BLN + MOVE "sexe." TO ERR-NM. + * Contrle sur type code sexe + SEXETYPE. + IF CD-SX IS NOT NUMERIC THEN + MOVE HIGH-VALUE TO ERR-BLN + MOVE "sexe non numrique." TO ERR-NM. + + * Contrle sur mois de naissance + MOISNAISSANCE. + IF (CD-MS-NSSNC EQUAL TO 0 OR CD-MS-NSSNC GREATER THAN 12) + THEN + MOVE HIGH-VALUE TO ERR-BLN + MOVE "mois de naissance." TO ERR-NM. + * Contrle sur type code mois de naissance + MOISNAISSANCETYPE. + IF CD-MS-NSSNC IS NOT NUMERIC THEN + MOVE HIGH-VALUE TO ERR-BLN + MOVE "anne de naissance non numrique." TO ERR-NM. + + * Contrle sur dpartement + DEPARTEMENT. + IF CD-DPRTMNT EQUAL TO "2A" THEN + MOVE "19" TO CD-DPRTMNT + IF CD-DPRTMNT EQUAL TO "2B" THEN + MOVE "18" TO CD-DPRTMNT + IF (CD-DPRTMNT EQUAL TO "96" OR CD-DPRTMNT EQUAL TO 0) + THEN + MOVE HIGH-VALUE TO ERR-BLN + MOVE "mauvais dpartement". + * Contrle sur type code dpartement + DEPARTEMENTTYPE. + IF CD-DPRTMNT IS NOT NUMERIC THEN + MOVE HIGH-VALUE TO ERR-BLN + MOVE + + + * Affichage du rsultat + RESULTAT SECTION. + + * Affichage de l'erreur + ERREUR. + IF ERR-BLN EQUAL TO HIGH-VALUE THEN + DISPLAY "Erreur sur : " ERR-NM + ELSE + DISPLAY "Aucune erreur.". + STOP RUN. diff --git a/P5B/cobol/exercices/insee.so b/P5B/cobol/exercices/insee.so new file mode 100644 index 0000000..8bc55df Binary files /dev/null and b/P5B/cobol/exercices/insee.so differ diff --git a/P5B/cobol/exercices/mult b/P5B/cobol/exercices/mult new file mode 100644 index 0000000..89db07f Binary files /dev/null and b/P5B/cobol/exercices/mult differ diff --git a/P5B/cobol/exercices/mult.cbl b/P5B/cobol/exercices/mult.cbl new file mode 100644 index 0000000..642386b --- /dev/null +++ b/P5B/cobol/exercices/mult.cbl @@ -0,0 +1,24 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. mult. + AUTHOR. GR. + * Ce programme effectue la multiplication de 2 entiers + * + + ENVIRONMENT DIVISION. + DATA DIVISION. + + WORKING-STORAGE SECTION. + 77 Num1 PIC 999 VALUE ZERO. + 77 Num2 PIC 999 VALUE ZERO. + 77 Res PIC Z(5)9. + + PROCEDURE DIVISION. + PROGRAMME SECTION. + P1. + DISPLAY "Taper le 1er nombre (<999) : " WITH NO ADVANCING. + ACCEPT Num1. + DISPLAY "Taper le second nombre : " WITH NO ADVANCING. + ACCEPT Num2. + MULTIPLY Num1 BY Num2 GIVING Res. + DISPLAY "Rsultat = " Res. + STOP RUN. diff --git a/P5B/cobol/exercices/multpl b/P5B/cobol/exercices/multpl new file mode 100644 index 0000000..55e048b Binary files /dev/null and b/P5B/cobol/exercices/multpl differ diff --git a/P5B/cobol/exercices/multpl.cbl b/P5B/cobol/exercices/multpl.cbl new file mode 100644 index 0000000..995dffd --- /dev/null +++ b/P5B/cobol/exercices/multpl.cbl @@ -0,0 +1,64 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. multpl. + AUTHOR. OD. + *----------------------------------------------------------------* + * PROGRAMME * + * VERIFICATION NOMBRE MULTIPLE D'UN AUTRE +1 * + *----------------------------------------------------------------* + + ENVIRONMENT DIVISION. + + DATA DIVISION. + WORKING-STORAGE SECTION. + *--------------------------* + * DEFINITION DES VARIABLES * + *--------------------------* + * Nombre de dpart + 77 NBR-DPRT PICTURE 99 VALUE ZERO. + * Nombre à tester + 77 NBR-TEST PICTURE 99 VALUE ZERO. + * Resultat dans la division euclidienne + 77 DV-ECLDN PICTURE 99 VALUE ZERO. + * Reste dans la division euclidienne par 2 + 77 RST PICTURE 9 VALUE ZERO. + * Nombre impair ou pas ? (simulation d'un boolen) + 77 NBR PICTURE 99 VALUE ZERO. + 88 MLTPL VALUE 1. + * Rsultat + 77 RSLTT PICTURE X(30). + + PROCEDURE DIVISION. + *--------------------* + * DEBUT DU PROGRAMME * + *--------------------* + + PROGRAMME SECTION. + + DEBUT. + PERFORM SAISIE. + CORPS. + PERFORM PARITE. + FIN. + DISPLAY RSLTT. + STOP RUN. + + SAISIR SECTION. + SAISIE. + DISPLAY "Saisissez un chiffre de base : " + WITH NO ADVANCING. + ACCEPT NBR-DPRT. + DISPLAY "Saisissez le chiffre suivant : " + WITH NO ADVANCING. + ACCEPT NBR-TEST. + PERFORM VERIF. + VERIF. + DIVIDE NBR-TEST BY NBR-DPRT GIVING DV-ECLDN REMAINDER RST. + DISPLAY "RESTE : " RST. + IF (RST EQUAL TO 1) THEN + MOVE 1 TO NBR. + PARITE. + IF (MLTPL) THEN + MOVE "Le nombre est un multiple incrémentde un" + TO RSLTT + ELSE MOVE "Le nombre n'est pas un multiple incrment + - " de un." TO RSLTT. diff --git a/P5B/cobol/exercices/palind b/P5B/cobol/exercices/palind new file mode 100644 index 0000000..19ed7bc Binary files /dev/null and b/P5B/cobol/exercices/palind differ diff --git a/P5B/cobol/exercices/palind.so b/P5B/cobol/exercices/palind.so new file mode 100644 index 0000000..d11b9ad Binary files /dev/null and b/P5B/cobol/exercices/palind.so differ diff --git a/P5B/cobol/exercices/palind0.cbl b/P5B/cobol/exercices/palind0.cbl new file mode 100644 index 0000000..8c92431 --- /dev/null +++ b/P5B/cobol/exercices/palind0.cbl @@ -0,0 +1,70 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. palind. + AUTHOR. OD. + *-------------------------------------------* + * PROGRAMME DE VERIFICATION D'UN PALINDROME * + *-------------------------------------------* + + ENVIRONMENT DIVISION. + DATA DIVISION. + + WORKING-STORAGE SECTION. + *--------------------------* + * DEFINITION DES VARIABLES * + *--------------------------* + 77 MOT PICTURE X(255) VALUE SPACE. + 77 RESULTAT PICTURE X(30) VALUE SPACE. + 77 DEBUT-MOT PICTURE 99 VALUE 1. + 77 FIN-MOT PICTURE 99 VALUE 29. + 77 LETTRE PICTURE X VALUE SPACE. + 77 VALIDE PICTURE 9 VALUE 1. + 88 CORRECT VALUE 1. + + PROCEDURE DIVISION. + *NOM DU PROGRAMME + PRINCIPAL SECTION. + + DEBUT. + PERFORM SAISIE. + CORPS. + PERFORM TRAITEMENT. + FIN. + DISPLAY RESULTAT. + DISPLAY "FIN DU TRAITEMENT". + STOP RUN. + + *SAISIE DU MOT + SAISIR SECTION. + SAISIE. + DISPLAY "Saisissez une phrase : " WITH NO ADVANCING. + ACCEPT MOT. + *------* + * TEST * + *------* + DISPLAY MOT. + + *TRAITEMENT DE LA PHRASE + TRAITEMENT SECTION. + TRAITER. + PERFORM PARCOURIR UNTIL VALIDE IS NOT EQUAL TO 1. + + *PARCOURS DE LA CHAINE DE CARACTRE, ET LONGUEUR DE CELLE CI + PARCOURIR. + MOVE ZERO TO VALIDE. + DISPLAY DEBUT-MOT. + DISPLAY FIN-MOT. + MOVE 1 TO VALIDE. + * IF (MOT(DEBUT-MOT:1) EQUAL TO SPACE) THEN + * ADD 1 TO DEBUT-MOT + * END-IF. + * MOVE MOT(FIN-MOT:1) TO LETTRE. + * PERFORM CAL-CHFFRE UNTIL LETTRE NOT EQUAL TO SPACE. + * IF (MOT(DEBUT-MOT:1) EQUAL TO MOT(FIN-MOT:1)) + * MOVE 1 TO VALIDE + * END-IF. + + *CALCUL DU CHIFFRE DE LA LETTRE COMPARER + CAL-CHFFRE. + IF (MOT(FIN-MOT:1) EQUAL TO SPACE) THEN + SUBTRACT 1 FROM FIN-MOT + END-IF. diff --git a/P5B/cobol/exercices/palind1 b/P5B/cobol/exercices/palind1 new file mode 100644 index 0000000..942f713 Binary files /dev/null and b/P5B/cobol/exercices/palind1 differ diff --git a/P5B/cobol/exercices/palind1.cbl b/P5B/cobol/exercices/palind1.cbl new file mode 100644 index 0000000..5dc2e7a --- /dev/null +++ b/P5B/cobol/exercices/palind1.cbl @@ -0,0 +1,90 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. palind. + AUTHOR. OD. + *-------------------------------------------* + * PROGRAMME DE VERIFICATION D'UN PALINDROME * + *-------------------------------------------* + + ENVIRONMENT DIVISION. + DATA DIVISION. + + WORKING-STORAGE SECTION. + *--------------------------* + * DEFINITION DES VARIABLES * + *--------------------------* + * MOT DONNE PAR L'UTILISATEUR + 77 MT-UTIL PICTURE X(255) VALUE SPACE. + * MOT SANS ESPACE + 77 MT-SS-SPC PICTURE X(255) VALUE SPACE. + * MOT INVERSE + 77 MT-INV PICTURE X(255) VALUE SPACE. + * RESULTAT DU PROGRAMME (ICI ON DIRA "CECI EST UN PALINDROME") + * OU PAS) + 77 RESULTAT PICTURE X(30) VALUE SPACE. + * BOOLEEN + 77 PLND PICTURE 9 VALUE ZERO. + * 88 EST VALUE ZERO. + * 88 ESTPAS VALUE 1. + * CURSEURS + * - CURSEUR-DEPART + 77 CRSR-DP PICTURE 999 VALUE 1. + * - CURSEUR-ARRIVEE + 77 CRSR-RRV PICTURE 999 VALUE 1. + + PROCEDURE DIVISION. + *NOM DU PROGRAMME + PRINCIPAL SECTION. + + DEBUT. + PERFORM SAISIE. + CORPS. + PERFORM TRAITER. + FIN. + DISPLAY RESULTAT. + DISPLAY "FIN DU TRAITEMENT". + STOP RUN. + + *SAISIE DU MOT + SAISIR SECTION. + SAISIE. + DISPLAY "Saisissez une phrase : " WITH NO ADVANCING. + ACCEPT MT-UTIL. + DISPLAY "MOT SAISI : " MT-UTIL. + + *TRAITEMENT DE LA PHRASE + TRAITEMENT SECTION. + TRAITER. + PERFORM SPPR-SPC UNTIL CRSR-DP EQUAL TO 255. + MOVE 255 TO CRSR-DP. + MOVE 1 TO CRSR-RRV. + PERFORM COPIER UNTIL CRSR-DP EQUAL TO ZERO. + PERFORM COMPARER. + PERFORM DEDUIRE. + + *SUPPRESSION DES ESPACES DU MOT DE DEPART + SPPR-SPC. + IF (MT-UTIL(CRSR-DP:1) NOT EQUAL TO SPACE) THEN + STRING MT-UTIL(CRSR-DP:1) DELIMITED BY SIZE INTO + MT-SS-SPC WITH POINTER CRSR-RRV. + ADD 1 TO CRSR-DP. + + *COPIE DE LA CHAINE DE DEPART VERS UNE CHAINE D'ARRIVEE + COPIER. + IF (MT-UTIL(CRSR-DP:1) NOT EQUAL TO SPACE) THEN + STRING MT-UTIL(CRSR-DP:1) DELIMITED BY SIZE INTO MT-INV + WITH POINTER CRSR-RRV. + SUBTRACT 1 FROM CRSR-DP. + + *COMPARAISON DE LA CHAINE DE CARACTRE + COMPARER. + DISPLAY "MOT DEPART : " MT-SS-SPC. + DISPLAY "MOT ARRIVEE : " MT-INV. + IF (MT-SS-SPC EQUAL TO MT-INV) THEN + MOVE 1 TO PLND + ELSE MOVE ZERO TO PLND. + + *DEDUCTION LOGIQUE DU RESULTAT + DEDUIRE. + IF (PLND EQUAL ZERO) THEN + MOVE "CE N'EST PAS UN PALINDROME" TO RESULTAT + ELSE MOVE "C'EST UN PALINDROME" TO RESULTAT. diff --git a/P5B/cobol/exercices/palind2.cbl b/P5B/cobol/exercices/palind2.cbl new file mode 100644 index 0000000..82d066f --- /dev/null +++ b/P5B/cobol/exercices/palind2.cbl @@ -0,0 +1,91 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. palind. + AUTHOR. OD. + *-------------------------------------------* + * PROGRAMME DE VERIFICATION D'UN PALINDROME * + *-------------------------------------------* + + ENVIRONMENT DIVISION. + DATA DIVISION. + + WORKING-STORAGE SECTION. + *--------------------------* + * DEFINITION DES VARIABLES * + *--------------------------* + * LE MOT DONNE PAR L'UTILISATEUR + 77 MOT PICTURE X(255) VALUE SPACE. + * RESULTAT DU PROGRAMME (ICI ON DIRA "CECI EST UN PALINDROME") + * OU PAS) + 77 RESULTAT PICTURE X(30) VALUE SPACE. + * DEBUT-MOT ET DBUT-FIN SUBISSENT UNE INCREMENTATION + * CE SONT LES CURSEURS + 77 DEBUT-MOT PICTURE 99 VALUE 1. + 77 FIN-MOT PICTURE 99 VALUE 30. + * LETTREG CONTIENDRA UNE LETTRE DU MOT, CELLE COTE GAUCHE + * LETTRED, CELLE COTE DROITE + 77 LETTREG PICTURE X VALUE SPACE. + 77 LETTRED PICTURE X VALUE SPACE. + * DEFINITION DE QUELQUES VALEUR NUMERIQUES + * POUR LES CONTROLES + 01 ETUDE-ENONCE. + 05 COMP-VALID PICTURE 9 VALUE 1. + 88 COMP-CORRECT VALUE 1. + 05 CARAC-DEB PICTURE 9 VALUE 1. + 88 CARACD-CORRECT VALUE 1. + 05 CARAC-FIN PICTURE 9 VALUE 1. + 88 CARACF-CORRECT VALUE 1. + + PROCEDURE DIVISION. + *NOM DU PROGRAMME + PRINCIPAL SECTION. + + DEBUT. + PERFORM SAISIE. + CORPS. + PERFORM TRAITER. + FIN. + DISPLAY RESULTAT. + DISPLAY "FIN DU TRAITEMENT". + STOP RUN. + + *SAISIE DU MOT + SAISIR SECTION. + SAISIE. + DISPLAY "Saisissez une phrase : " WITH NO ADVANCING. + ACCEPT MOT. + *------* + * TEST * + *------* + DISPLAY MOT. + + *TRAITEMENT DE LA PHRASE + TRAITEMENT SECTION. + TRAITER. + PERFORM COMPARER UNTIL NOT COMP-CORRECT. + *VALIDE IS NOT EQUAL TO 1. + + *COMPARAISON DE LA CHAINE DE CARACTRE + COMPARER. + DISPLAY DEBUT-MOT. + DISPLAY FIN-MOT. + * PERFORM PARCOURS-FIN UNTIL NOT CARACF-CORRECT. + MOVE ZERO TO COMP-VALID. + + *PARCOURS DE LA CHAINE DE FIN + PARCOURS-FIN. + DISPLAY "DERNIERE LETTRE DU MOT : " MOT(FIN-MOT:1). + IF (MOT(FIN-MOT:1) EQUAL TO SPACE) THEN + SUBTRACT 1 FROM FIN-MOT + ELSE MOVE 1 TO CARAC-FIN + END-IF. + * MOVE MOT(FIN-MOT:1) TO LETTRE. + * PERFORM CAL-CHFFRE UNTIL LETTRE NOT EQUAL TO SPACE. + * IF (MOT(DEBUT-MOT:1) EQUAL TO MOT(FIN-MOT:1)) + * MOVE 1 TO VALIDE + * END-IF. + + *CALCUL DU CHIFFRE DE LA LETTRE COMPARER + CAL-CHFFRE. + IF (MOT(FIN-MOT:1) EQUAL TO SPACE) THEN + SUBTRACT 1 FROM FIN-MOT + END-IF. diff --git a/P5B/cobol/exercices/vehic b/P5B/cobol/exercices/vehic new file mode 100644 index 0000000..800fe8b Binary files /dev/null and b/P5B/cobol/exercices/vehic differ diff --git a/P5B/cobol/exercices/vehic.cbl b/P5B/cobol/exercices/vehic.cbl new file mode 100644 index 0000000..19a5459 --- /dev/null +++ b/P5B/cobol/exercices/vehic.cbl @@ -0,0 +1,138 @@ + IDENTIFICATION DIVISION. + PROGRAM-ID. vehic. + AUTHOR. OD. + ***--------------------------------------------------------------- + ENVIRONMENT DIVISION. + INPUT-OUTPUT SECTION. + FILE-CONTROL. + SELECT ARTICLES ASSIGN TO "$fichier" + ORGANIZATION IS INDEXED + RECORD KEY IS MTRCL + ALTERNATE RECORD KEY IS NO-SMN WITH DUPLICATES + ALTERNATE RECORD KEY IS RSLT WITH DUPLICATES + FILE STATUS VAL-ERREUR. + ***--------------------------------------------------------------- + DATA DIVISION. + FILE SECTION. + FD ARTICLES. + * STRUCTURE FOURNIE DANS L'EXERCICE + 01 VHCL. + 05 INDICATIF. + 10 MTRCL PIC X(8). + 10 NO-SMN PIC 99. + 05 FILLER PIC X(8). + 05 RSLT OCCURS 7. + 10 KM PIC 9(4) VALUE ZERO. + 10 FRS PIC 9(4)V99 VALUE ZERO. + WORKING-STORAGE SECTION. + * VALEUR DE L'ERREUR POTENTIELLE DE TRAITEMENT DU FICHIER + 77 VAL-ERREUR PIC 99 VALUE ZERO. + * VALEUR ENTRE POUR LE CHOIX DU MENU + 77 VAL-MENU PIC X. + 88 MENU-O VALUE "O" "o". + 88 MENU-N VALUE "N" "n". + 88 MENU-UN VALUE "1". + 88 MENU-DX VALUE "2". + 88 MENU-TRS VALUE "3". + 88 MENU-QTR VALUE "4". + 88 MENU-QTT VALUE "0". + * LA SEMAINE ! + 01 SEMAINES. + 05 FILLER PIC X(8) VALUE "LUNDI". + 05 FILLER PIC X(8) VALUE "MARDI". + 05 FILLER PIC X(8) VALUE "MERCREDI". + 05 FILLER PIC X(8) VALUE "JEUDI". + 05 FILLER PIC X(8) VALUE "VENDREDI". + 05 FILLER PIC X(8) VALUE "SAMEDI". + 05 FILLER PIC X(8) VALUE "DIMANCHE". + 01 SEM-T REDEFINES SEMAINES. + 05 JOURS PIC X(8) OCCURS 7. + 77 ITERATION PIC 9 VALUE 1. + * SAISIE DE L'UTILISATEUR POUR LE MATRICULE + 77 SAIS-MTRCL PIC X(8) VALUE "0000XX00". + * SAISIE DE L'UTILISATEUR POUR LE NUMERO DE SEMAINE + 77 SAIS-NO-SMN PIC 99 VALUE 00. + * SAISIE DE L'UTILISATEUR POUR LE NOMBRE DE KILOMETRES + 77 SAIS-KM PIC 9(4) VALUE ZERO. + * SAISIE DE L'UTILISATEUR POUR LES FRAIS + 77 SAIS-FRS PIC 9(4)V99 VALUE ZERO. + * UTILISATION D'UN ESPACE VIDE POUR L'ENREGISTREMENT + 77 SAIS-VIDE PIC X(8) VALUE SPACE. + ***--------------------------------------------------------------- + PROCEDURE DIVISION. + * + * SECTION PRINCIPAL, APPELE PROGRAMME + * + PROGRAMME SECTION. + INIT. + OPEN I-O ARTICLES. + DISPLAY VAL-ERREUR. + CORPS. + PERFORM MENU-DPRT UNTIL MENU-N. + FIN. + CLOSE ARTICLES. + DISPLAY "PROGRAMME TERMINE !". + STOP RUN. + + * + * PERMET L'AFFICHAGE DU MENU + * + MENU SECTION. + MENU-DPRT. + DISPLAY "PROCEDER UN TRAITEMENT ? (o/n) : " + WITH NO ADVANCING. + ACCEPT VAL-MENU. + IF MENU-O THEN + PERFORM MENU-AFFICHE. + + MENU-AFFICHE. + DISPLAY "(1) - CONSULTER UN ARTICLE DONNE". + DISPLAY "(2) - AJOUT D'UN ARTICLE". + DISPLAY "(3) - CALCUL DU PRIX DE REVIENT". + DISPLAY "(4) - SEMAINE O PLUS ROUL". + DISPLAY "(0) - QUITTER". + DISPLAY "VOTRE CHOIX : " WITH NO ADVANCING. + ACCEPT VAL-MENU. + IF MENU-UN THEN PERFORM CONSULTATION + ELSE IF MENU-DX THEN PERFORM AJOUT + ELSE IF MENU-TRS THEN PERFORM CALCUL + ELSE IF MENU-QTR THEN PERFORM ROULE + ELSE IF MENU-QTT THEN PERFORM FIN. + + * + * PERMET LA CONSULTATION D'UN ARTICLE + * + CONSULTER SECTION. + CONSULTATION. + + * + * PERMET L'AJOUT D'UN ARTICLE + * + AJOUTER SECTION. + AJOUT. + DISPLAY "NUMERO DE SEMAINE : " WITH NO ADVANCING. + ACCEPT NO-SMN. + DISPLAY "IMMATRICULATION : " WITH NO ADVANCING. + ACCEPT MTRCL. + PERFORM AJOUT-SEM UNTIL ITERATION EQUAL TO 8. + WRITE VHCL. + AJOUT-SEM. + DISPLAY JOURS(ITERATION). + DISPLAY "KILOMETRAGE : " WITH NO ADVANCING. + ACCEPT KM(ITERATION). + DISPLAY "FRAIS : " WITH NO ADVANCING. + ACCEPT FRS(ITERATION). + ADD 1 TO ITERATION. + + * + * PERMET LE CALCUL DU PRIX DE REVIENT KILOMTRIQUE DEPUIS LE DBUT + * D'ANNE + * + CALCULER SECTION. + CALCUL. + + * + * PERMET DE TROUVER LA SEMAINE O UN VHICULE A LE PLUS ROUL + * + ROULER SECTION. + ROULE. diff --git a/P5B/cobol/exercices/vehic.dat b/P5B/cobol/exercices/vehic.dat new file mode 100644 index 0000000..a694eaf Binary files /dev/null and b/P5B/cobol/exercices/vehic.dat differ diff --git a/P5B/cobol/exercices/vehic.dat.1 b/P5B/cobol/exercices/vehic.dat.1 new file mode 100644 index 0000000..795bdd0 Binary files /dev/null and b/P5B/cobol/exercices/vehic.dat.1 differ diff --git a/P5B/cobol/exercices/vehic.dat.2 b/P5B/cobol/exercices/vehic.dat.2 new file mode 100644 index 0000000..23ab9c7 Binary files /dev/null and b/P5B/cobol/exercices/vehic.dat.2 differ diff --git a/P5B/cobol/exercices/vehic2 b/P5B/cobol/exercices/vehic2 new file mode 100644 index 0000000..aca2773 Binary files /dev/null and b/P5B/cobol/exercices/vehic2 differ diff --git a/P5B/cobol/exercices/vehic2.cbl b/P5B/cobol/exercices/vehic2.cbl new file mode 100644 index 0000000..97febc5 --- /dev/null +++ b/P5B/cobol/exercices/vehic2.cbl @@ -0,0 +1,40 @@ + identification division. + program-id. vehic2. + author. od. + environment division. + input-output section. + file-control. + select articles assign to "$fichier" + organization is indexed + record key is mtrcl + alternate record key is no-smn with duplicates + alternate record key is rslt with duplicates + file status val-erreur. + ***--------------------------------------------------------------- + data division. + file section. + fd articles. + * structure fournie dans l'exercice + 01 vhcl. + 05 indicatif. + 10 mtrcl pic x(8). + 10 no-smn pic 99. + 05 filler pic x(8). + 05 rslt occurs 7. + 10 km pic 9(4) value zero. + 10 frs pic 9(4)v99 value zero. + working-storage section. + 77 val-erreur pic 99 value zero. + 77 enregistrement pic x(88) value zero. + procedure division. + programme section. + init. + open input articles. + display val-erreur. + corps. + read articles. + display mtrcl. + fin. + close articleS. + display "fin de traitement". + stop run. diff --git a/P5B/ruby/161007/TRAVAIL_A_FAIRE b/P5B/ruby/161007/TRAVAIL_A_FAIRE new file mode 100644 index 0000000..d1d75c9 --- /dev/null +++ b/P5B/ruby/161007/TRAVAIL_A_FAIRE @@ -0,0 +1,90 @@ + EXEMPLES ET EXERCICES + + + + +1. adresses sites + +Quelques adresses utiles : + +http://www.rubycentral.com/book/ // le livre de reference +http://www.rubycentral.com/ref/ // ref. classes avec listes des fonctions par classe +http://www.ruby-doc.org/core/ // voir les classes IO File File::Stat Dir FileTest Process + + + +2. exemples de scripts + +NB: tester d'abord les exemples avant de faire les exercices proposs. + + + A. manipulation du SGF + ====================== + +Bcp de classes participent la manipulation des objets "systme" : File, Dir, IO, etc... + + +- exemple 1 : cration d'un fichier et remplissage partir d'infos saisies au clavier (testSgf_1.rb) + +- exemple 2 : ouverture et affichage des informations sur un fichier (stat) (testSgf_2.rb) + +- exemple 3 : ouverture d'un fichier avec vrification existence et recherche des lignes ou + apparait un motif donne . + Le nom du fichier et le motif sont passs en paramtres au script (testSgf_3.rb) + +- exemple 4 : afficher la liste des fichiers d'un repertoire donne (testSgf_4.rb) + + +- Exercices faire + + - Exercice 1 : crire un script < histo > qui construit et affiche l'histogramme de repartition + par taille des fichiers du repertoire . + Nous aimerions connatre la taille totale de fichiers examins, le nombre total de ces derniers et le nombre total de blocs. + Ainsi que la taille moyenne d'un fichier. + On definit classes de repartition de taille identique + + usage : histo.rb + + - Exercice 2 : crire un script qui recherche tous les fichiers contenant un motif donn. + On affichera le nom du fichier et la ligne contenant le motif. Attention, + si plusieurs lignes du mme fichier contiennent , on n'affichera qu'une fois + le chemin absolu du fichier. + + usage : cherche [filtre] [path] + + + B. manipulation de processus, signaux + ===================================== + +- exemple 1 : cration d'un processus fils (testProc_1.rb) + Si on comment les lignes if avec les exit, on obtient ceci : + + Pere 28716 Grand pere 28715 pid fils1 : nil pid fils2 : nil + + Pere 28715 Grand pere 28713 pid fils1 : nil pid fils2 : 28716 + + Pere 28717 Grand pere 28713 pid fils1 : 28715 pid fils2 : nil + + Pere 28713 Grand pere 22590 pid fils1 : 28715 pid fils2 : 28717 + + Donc le petit fils ne connait pas les autres + Le fils 2 se connait + Le fils 1 aussi + Et le pre connait les fils 1 et 2 + +- exemple 2 : communication entre un proc. pre et un proc. fils avec un tube (testProc_2.rb) + +- exemple 3 : communication entre un proc. pre et un proc. fils avec un tube (2) (testProc_3.rb) + Si on enlve le wr.close du Process.fork, alors le programme bloque, car quelqu'un utilise toujours le WR ! + +- exemple 4 : chronomtre (testSig_1.rb) + + +- Exercices faire + + - Exercice 1 : crire un script qui excute la commande "ls -l" en affichant le rsultat + en majuscule. On utilisera 2 processus et un tube pour communiquer. + Le proc. fils excute la commande et le proc. pre affiche en majuscule. + + +NB: pour passer en mode debug, lancer : ruby -r debug ./testFile.rb diff --git a/P5B/ruby/161007/histo.rb b/P5B/ruby/161007/histo.rb new file mode 100644 index 0000000..cef8936 --- /dev/null +++ b/P5B/ruby/161007/histo.rb @@ -0,0 +1,52 @@ +#!/usr/bin/ruby -w + +# Affiche un histogramme du nombre de fichiers tris par classe de grandeur "tailleClasse" sur un nombre "nombreDeClasse". + +# Rcupration des argument +if ARGV.length < 3 + puts "Utilisation : ./histo.rb < nomRep > < nbreDeClasse > < tailleClasse (en octet) >" + exit +end + +# attribution d'lments + +rep=ARGV[0] +nbr=ARGV[1].to_i +taille=ARGV[2].to_i + +# initialisation de certaines variables + +nbrFichiers = 0 +tailleTotale = 0 +tailleTotaleBlocs = 0 +histogramme = [] +for i in 0 ... nbr do + histogramme[i] = 0 +end + +# Nous allons dans le rpertoire courant +Dir.chdir(rep) + +repertoireOuvert=Dir.open(rep) + +repertoireOuvert.each do |entree| + if File.file?(entree) + fichier = File.open(entree,"r") + stats = fichier.stat + colonne = stats.size / taille + histogramme[colonne] = histogramme[colonne].to_i + 1 + nbrFichiers = nbrFichiers + 1 + tailleTotale = tailleTotale + stats.size + tailleTotaleBlocs = tailleTotaleBlocs + stats.blocks.to_i + end +end + +histogramme.each do |element| + print(element.to_s, " | ") +end + +puts "\nNombre total de fichiers examins : #{nbrFichiers}" +puts "Taille totale : #{tailleTotale}" +puts "Nombre total de blocs lus : #{tailleTotaleBlocs}" +tailleMoyenneFichier = tailleTotale / nbrFichiers +puts "Taille moyenne d'un fichier : #{tailleMoyenneFichier}" \ No newline at end of file diff --git a/P5B/ruby/161007/testProc_1.rb b/P5B/ruby/161007/testProc_1.rb new file mode 100644 index 0000000..fa98a20 --- /dev/null +++ b/P5B/ruby/161007/testProc_1.rb @@ -0,0 +1,25 @@ +#! /usr/bin/ruby -w +# +system("clear") + +# creation d'un fils et d'un petit fils + +pid1 = Process.fork + +if pid1 == nil + Process.exit!(-1) #on sort si on est dans le fils +end + +pid2 = Process.fork + +if pid2 == nil # on sort si on est dans le fils + Process.exit!(0) +end + +print "\nPere \t" , Process.pid , "\tGrand pere\t", Process.ppid(), "\tpid fils1 :\t" , pid1, "\tpid fils2 :\t" , +pid2, "\n" + + +sleep 2.5 + +print "\nFin" diff --git a/P5B/ruby/161007/testProc_2.rb b/P5B/ruby/161007/testProc_2.rb new file mode 100644 index 0000000..d414893 --- /dev/null +++ b/P5B/ruby/161007/testProc_2.rb @@ -0,0 +1,22 @@ +#!/usr/bin/ruby -w + +# utilisation d'un tube entre 2 processus + +rd, wr = IO.pipe # creation d'un tube avec 2 descripteurs pour lect/ecri + +if fork # le pere ferme le desc. pour ecrire dans le tube + wr.close + ch=rd.read # est bloque tant que rien dans le tube + puts "message recu par le Pere : " + ch + rd.close + Process.wait # on attend la fin du fils + puts "le pere termine" + +else # le fils + rd.close # ferme tube en lecture + puts "envoi d'un message " + wr.write "ceci est un test" + puts "le fils termine dans 2 secondes" + sleep 2 + wr.close +end diff --git a/P5B/ruby/161007/testProc_3.rb b/P5B/ruby/161007/testProc_3.rb new file mode 100644 index 0000000..cd9ff29 --- /dev/null +++ b/P5B/ruby/161007/testProc_3.rb @@ -0,0 +1,34 @@ +#!/usr/bin/ruby -w + +system("clear") +rd, wr = IO.pipe + +print "\nPere : creation processus fils" + +if Process.fork + wr.close + print "\nPere : lecture donnee depuis tube rd" + sleep 1 + + while ! rd.eof + c=rd.readchar + print "\ncaractere recu...." + putc c + print "\nattente...." + sleep 3 + end + print "\nfin lecteur*\n" + rd.close + +else + rd.close + sleep 1 + print "\nFils : envoi donnee vers tube wr" + for i in 'a'..'g' + print "\n------>envoi du caractere ", i + wr.write i + sleep 1 + end + print "\nfin redacteur*\n" + wr.close +end diff --git a/P5B/ruby/161007/testSgf_1.rb b/P5B/ruby/161007/testSgf_1.rb new file mode 100644 index 0000000..430a145 --- /dev/null +++ b/P5B/ruby/161007/testSgf_1.rb @@ -0,0 +1,32 @@ +#!/usr/bin/ruby -w + +# lecture de donnee au clavier ou en redirigeant l'entree std +# fin de fichier provoquee par Ctrl D ou fin entree std + +f = File.new("testfile","w+") + + +while s=gets do + f.write(s) # ou f.puts s +end + +puts "\n\nrelecture du fichier \n" + +f.rewind # revient au debut idem a f.lineno = 0 +puts f.lineno + +while not f.eof do + puts f.read +end + +# insertion dans le fichier + +f.seek(0, IO::SEEK_SET) +f.seek(100,IO::SEEK_CUR) + +f.puts( "INSERTION A LA POSITION 100") + +# verifier que l'insertion est bien effectuee en position 100 +# utiliser la cde od -c testfile + +puts "*stop*" diff --git a/P5B/ruby/161007/testSgf_2.rb b/P5B/ruby/161007/testSgf_2.rb new file mode 100644 index 0000000..82a317e --- /dev/null +++ b/P5B/ruby/161007/testSgf_2.rb @@ -0,0 +1,22 @@ +#!/usr/bin/ruby -w + +# affichage infos sur un fichier + +f = File.open("testfile","r") + +# on recupere les infos grace a la methode stat -> objet aStat + +s = f.stat + +puts "\n\naffichage info fichier \n" + + +puts s # -> affiche reference memoire objet s ! + + +puts "chemin absolu :" + File.expand_path(f.path) +puts "taille du fichier : " + s.size.to_s +puts "nombre de blocs : " + s.blocks.to_s +puts "fichier regulier: " + s.file?.to_s +puts "repertoire : " + s.directory?.to_s +puts "numro de possesseur : " + s.uid.to_s \ No newline at end of file diff --git a/P5B/ruby/161007/testSgf_3.rb b/P5B/ruby/161007/testSgf_3.rb new file mode 100644 index 0000000..e5f4b92 --- /dev/null +++ b/P5B/ruby/161007/testSgf_3.rb @@ -0,0 +1,32 @@ +#!/usr/bin/ruby -w + +# recherche d'une chaine dans un fichier donne +# nom et chaine sont passes en argument + +if ARGV.length < 2 + puts "usage : ./testFile_3 nom_fich motif" + exit +end + +nomFich = ARGV[0] +motif = ARGV[1] + +# test si fichier existe et fichier regulier + +if not File.file?(nomFich) + puts "erreur fichier" + exit +end + +f = File.open(nomFich,"r") # ouverture du fichier + + +puts "\n_______________________________________________\n" +puts "\n\naffichage des lignes du fichier contenant " + motif +puts "\n_______________________________________________\n" + +f.grep(/#{motif}/) do |line| + puts line.chomp + " (" + f.lineno.to_s + " )" # On affiche la ligne et le motif +end + +puts "fin" diff --git a/P5B/ruby/161007/testSgf_4.rb b/P5B/ruby/161007/testSgf_4.rb new file mode 100644 index 0000000..cc71b5b --- /dev/null +++ b/P5B/ruby/161007/testSgf_4.rb @@ -0,0 +1,39 @@ +#!/usr/bin/ruby -w + +# affiche la liste des fichiers du repertoire en argument + + +if ARGV.length < 1 + puts "usage : ./testSgf_4.rb < nomRep >" + exit +end + +rep=ARGV[0] + +#changement de repertoire + + +Dir.chdir(rep) + +d=Dir.open(rep) + +d.each { |u| puts u } + +puts "_____________REPERTOIRE_______________" + +# si on veut filter les fichiers du repertoire + + +Dir["*.rb"].each do |f| + puts f +end + + +puts "_____________ARBORESCENCE_____________" + +# si on veut parcourir toute la sous-arborescence + + +Dir["**/*.rb"].each do |f| + puts f +end diff --git a/P5B/ruby/161007/testSig_1.rb b/P5B/ruby/161007/testSig_1.rb new file mode 100644 index 0000000..a6f20c5 --- /dev/null +++ b/P5B/ruby/161007/testSig_1.rb @@ -0,0 +1,18 @@ +#!/usr/bin/ruby -w + +nsec=0 + +trap("SIGINT" ){ #attention a la place de la parenthese ouvrante +puts "\n"+nsec.to_s + " secondes ecoulees \n" +} + + +trap("SIGQUIT" ){ #attention a la place de la parenthese ouvrante +puts "\nFin du chronomtre "+nsec.to_s + " secondes ecoulees \n" +exit +} + +while true + sleep 1 + nsec = nsec + 1 +end \ No newline at end of file diff --git a/P5B/ruby/161007/testfile b/P5B/ruby/161007/testfile new file mode 100644 index 0000000..18aefd3 Binary files /dev/null and b/P5B/ruby/161007/testfile differ diff --git a/P5B/ruby/161007/url.net b/P5B/ruby/161007/url.net new file mode 100644 index 0000000..c8e5440 --- /dev/null +++ b/P5B/ruby/161007/url.net @@ -0,0 +1,10 @@ + +Quelques adresses utiles + + +http://www.rubycentral.com/book/ // le livre de reference + +http://www.ruby-doc.org/docs/ProgrammingRuby/ // ref. classes avec listes des fonctions par classe + +http://www.ruby-doc.org/core/ // voir les classes IO File File::Stat Dir FileTest Process + diff --git a/P5B/ruby/3dossmanno_annuaire.tar.gz b/P5B/ruby/3dossmanno_annuaire.tar.gz new file mode 100644 index 0000000..30f8824 Binary files /dev/null and b/P5B/ruby/3dossmanno_annuaire.tar.gz differ diff --git a/P5B/ruby/3dossmanno_annuaire.zip b/P5B/ruby/3dossmanno_annuaire.zip new file mode 100644 index 0000000..5748186 Binary files /dev/null and b/P5B/ruby/3dossmanno_annuaire.zip differ diff --git a/P5B/ruby/3dossmanno_annuaire/README b/P5B/ruby/3dossmanno_annuaire/README new file mode 100644 index 0000000..7cd111f --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/README @@ -0,0 +1,211 @@ +== Welcome to Rails + +Rails is a web-application and persistence framework that includes everything +needed to create database-backed web-applications according to the +Model-View-Control pattern of separation. This pattern splits the view (also +called the presentation) into "dumb" templates that are primarily responsible +for inserting pre-built data in between HTML tags. The model contains the +"smart" domain objects (such as Account, Product, Person, Post) that holds all +the business logic and knows how to persist themselves to a database. The +controller handles the incoming requests (such as Save New Account, Update +Product, Show Post) by manipulating the model and directing data to the view. + +In Rails, the model is handled by what's called an object-relational mapping +layer entitled Active Record. This layer allows you to present the data from +database rows as objects and embellish these data objects with business logic +methods. You can read more about Active Record in +link:files/vendor/rails/activerecord/README.html. + +The controller and view are handled by the Action Pack, which handles both +layers by its two parts: Action View and Action Controller. These two layers +are bundled in a single package due to their heavy interdependence. This is +unlike the relationship between the Active Record and Action Pack that is much +more separate. Each of these packages can be used independently outside of +Rails. You can read more about Action Pack in +link:files/vendor/rails/actionpack/README.html. + + +== Getting started + +1. At the command prompt, start a new rails application using the rails command + and your application name. Ex: rails myapp + (If you've downloaded rails in a complete tgz or zip, this step is already done) +2. Change directory into myapp and start the web server: script/server (run with --help for options) +3. Go to http://localhost:3000/ and get "Welcome aboard: You’re riding the Rails!" +4. Follow the guidelines to start developing your application + + +== Web Servers + +By default, Rails will try to use Mongrel and lighttpd if they are installed, otherwise +Rails will use the WEBrick, the webserver that ships with Ruby. When you run script/server, +Rails will check if Mongrel exists, then lighttpd and finally fall back to WEBrick. This ensures +that you can always get up and running quickly. + +Mongrel is a Ruby-based webserver with a C-component (which requires compilation) that is +suitable for development and deployment of Rails applications. If you have Ruby Gems installed, +getting up and running with mongrel is as easy as: gem install mongrel. +More info at: http://mongrel.rubyforge.org + +If Mongrel is not installed, Rails will look for lighttpd. It's considerably faster than +Mongrel and WEBrick and also suited for production use, but requires additional +installation and currently only works well on OS X/Unix (Windows users are encouraged +to start with Mongrel). We recommend version 1.4.11 and higher. You can download it from +http://www.lighttpd.net. + +And finally, if neither Mongrel or lighttpd are installed, Rails will use the built-in Ruby +web server, WEBrick. WEBrick is a small Ruby web server suitable for development, but not +for production. + +But of course its also possible to run Rails on any platform that supports FCGI. +Apache, LiteSpeed, IIS are just a few. For more information on FCGI, +please visit: http://wiki.rubyonrails.com/rails/pages/FastCGI + + +== Debugging Rails + +Sometimes your application goes wrong. Fortunately there are a lot of tools that +will help you debug it and get it back on the rails. + +First area to check is the application log files. Have "tail -f" commands running +on the server.log and development.log. Rails will automatically display debugging +and runtime information to these files. Debugging info will also be shown in the +browser on requests from 127.0.0.1. + +You can also log your own messages directly into the log file from your code using +the Ruby logger class from inside your controllers. Example: + + class WeblogController < ActionController::Base + def destroy + @weblog = Weblog.find(params[:id]) + @weblog.destroy + logger.info("#{Time.now} Destroyed Weblog ID ##{@weblog.id}!") + end + end + +The result will be a message in your log file along the lines of: + + Mon Oct 08 14:22:29 +1000 2007 Destroyed Weblog ID #1 + +More information on how to use the logger is at http://www.ruby-doc.org/core/ + +Also, Ruby documentation can be found at http://www.ruby-lang.org/ including: + +* The Learning Ruby (Pickaxe) Book: http://www.ruby-doc.org/docs/ProgrammingRuby/ +* Learn to Program: http://pine.fm/LearnToProgram/ (a beginners guide) + +These two online (and free) books will bring you up to speed on the Ruby language +and also on programming in general. + + +== Breakpoints + +Breakpoint support is available through the script/breakpointer client. This +means that you can break out of execution at any point in the code, investigate +and change the model, AND then resume execution! Example: + + class WeblogController < ActionController::Base + def index + @posts = Post.find(:all) + breakpoint "Breaking out from the list" + end + end + +So the controller will accept the action, run the first line, then present you +with a IRB prompt in the breakpointer window. Here you can do things like: + +Executing breakpoint "Breaking out from the list" at .../webrick_server.rb:16 in 'breakpoint' + + >> @posts.inspect + => "[#nil, \"body\"=>nil, \"id\"=>\"1\"}>, + #\"Rails you know!\", \"body\"=>\"Only ten..\", \"id\"=>\"2\"}>]" + >> @posts.first.title = "hello from a breakpoint" + => "hello from a breakpoint" + +...and even better is that you can examine how your runtime objects actually work: + + >> f = @posts.first + => #nil, "body"=>nil, "id"=>"1"}> + >> f. + Display all 152 possibilities? (y or n) + +Finally, when you're ready to resume execution, you press CTRL-D + + +== Console + +You can interact with the domain model by starting the console through script/console. +Here you'll have all parts of the application configured, just like it is when the +application is running. You can inspect domain models, change values, and save to the +database. Starting the script without arguments will launch it in the development environment. +Passing an argument will specify a different environment, like script/console production. + +To reload your controllers and models after launching the console run reload! + +To reload your controllers and models after launching the console run reload! + + + +== Description of contents + +app + Holds all the code that's specific to this particular application. + +app/controllers + Holds controllers that should be named like weblogs_controller.rb for + automated URL mapping. All controllers should descend from ApplicationController + which itself descends from ActionController::Base. + +app/models + Holds models that should be named like post.rb. + Most models will descend from ActiveRecord::Base. + +app/views + Holds the template files for the view that should be named like + weblogs/index.rhtml for the WeblogsController#index action. All views use eRuby + syntax. + +app/views/layouts + Holds the template files for layouts to be used with views. This models the common + header/footer method of wrapping views. In your views, define a layout using the + layout :default and create a file named default.rhtml. Inside default.rhtml, + call <% yield %> to render the view using this layout. + +app/helpers + Holds view helpers that should be named like weblogs_helper.rb. These are generated + for you automatically when using script/generate for controllers. Helpers can be used to + wrap functionality for your views into methods. + +config + Configuration files for the Rails environment, the routing map, the database, and other dependencies. + +components + Self-contained mini-applications that can bundle together controllers, models, and views. + +db + Contains the database schema in schema.rb. db/migrate contains all + the sequence of Migrations for your schema. + +doc + This directory is where your application documentation will be stored when generated + using rake doc:app + +lib + Application specific libraries. Basically, any kind of custom code that doesn't + belong under controllers, models, or helpers. This directory is in the load path. + +public + The directory available for the web server. Contains subdirectories for images, stylesheets, + and javascripts. Also contains the dispatchers and the default HTML files. This should be + set as the DOCUMENT_ROOT of your web server. + +script + Helper scripts for automation and generation. + +test + Unit and functional tests along with fixtures. When using the script/generate scripts, template + test files will be generated for you and placed in this directory. + +vendor + External libraries that the application depends on. Also includes the plugins subdirectory. + This directory is in the load path. diff --git a/P5B/ruby/3dossmanno_annuaire/Rakefile b/P5B/ruby/3dossmanno_annuaire/Rakefile new file mode 100644 index 0000000..3bb0e85 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/Rakefile @@ -0,0 +1,10 @@ +# Add your own tasks in files placed in lib/tasks ending in .rake, +# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake. + +require(File.join(File.dirname(__FILE__), 'config', 'boot')) + +require 'rake' +require 'rake/testtask' +require 'rake/rdoctask' + +require 'tasks/rails' diff --git a/P5B/ruby/3dossmanno_annuaire/app/controllers/application.rb b/P5B/ruby/3dossmanno_annuaire/app/controllers/application.rb new file mode 100644 index 0000000..8fcbae2 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/controllers/application.rb @@ -0,0 +1,7 @@ +# Filters added to this controller apply to all controllers in the application. +# Likewise, all the methods added will be available for all controllers. + +class ApplicationController < ActionController::Base + # Pick a unique cookie name to distinguish our session data from others' + session :session_key => '_3dossmanno_annuaire_session_id' +end diff --git a/P5B/ruby/3dossmanno_annuaire/app/controllers/sessions_controller.rb b/P5B/ruby/3dossmanno_annuaire/app/controllers/sessions_controller.rb new file mode 100644 index 0000000..922beea --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/controllers/sessions_controller.rb @@ -0,0 +1,31 @@ +# This controller handles the login/logout function of the site. +class SessionsController < ApplicationController + # Be sure to include AuthenticationSystem in Application Controller instead + include AuthenticatedSystem + + # render new.rhtml + def new + end + + def create + self.current_user = User.authenticate(params[:login], params[:password]) + if logged_in? + if params[:remember_me] == "1" + self.current_user.remember_me + cookies[:auth_token] = { :value => self.current_user.remember_token , :expires => self.current_user.remember_token_expires_at } + end + redirect_back_or_default('/') + flash[:notice] = "Logged in successfully" + else + render :action => 'new' + end + end + + def destroy + self.current_user.forget_me if logged_in? + cookies.delete :auth_token + reset_session + flash[:notice] = "You have been logged out." + redirect_back_or_default('/') + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/app/controllers/users_controller.rb b/P5B/ruby/3dossmanno_annuaire/app/controllers/users_controller.rb new file mode 100644 index 0000000..6c5ea10 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/controllers/users_controller.rb @@ -0,0 +1,30 @@ +class UsersController < ApplicationController + # Be sure to include AuthenticationSystem in Application Controller instead + include AuthenticatedSystem + + # render new.rhtml + def new + end + + def create + cookies.delete :auth_token + reset_session + @user = User.new(params[:user]) + @user.save! + self.current_user = @user + redirect_back_or_default('/') + flash[:notice] = "Thanks for signing up!" + rescue ActiveRecord::RecordInvalid + render :action => 'new' + end + + def activate + self.current_user = params[:activation_code].blank? ? :false : User.find_by_activation_code(params[:activation_code]) + if logged_in? && !current_user.activated? + current_user.activate + flash[:notice] = "Signup complete!" + end + redirect_back_or_default('/') + end + +end diff --git a/P5B/ruby/3dossmanno_annuaire/app/controllers/utilisateurs_controller.rb b/P5B/ruby/3dossmanno_annuaire/app/controllers/utilisateurs_controller.rb new file mode 100644 index 0000000..a6b4e91 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/controllers/utilisateurs_controller.rb @@ -0,0 +1,79 @@ +class UtilisateursController < ApplicationController + # GET /utilisateurs + # GET /utilisateurs.xml + def index + @utilisateurs = Utilisateur.find(:all) + + respond_to do |format| + format.html # index.rhtml + format.xml { render :xml => @utilisateurs.to_xml } + end + end + + # GET /utilisateurs/1 + # GET /utilisateurs/1.xml + def show + @utilisateur = Utilisateur.find(params[:id]) + + respond_to do |format| + format.html # show.rhtml + format.xml { render :xml => @utilisateur.to_xml } + end + end + + # GET /utilisateurs/new + def new + @utilisateur = Utilisateur.new + end + + # GET /utilisateurs/1;edit + def edit + @utilisateur = Utilisateur.find(params[:id]) + end + + # POST /utilisateurs + # POST /utilisateurs.xml + def create + @utilisateur = Utilisateur.new(params[:utilisateur]) + + respond_to do |format| + if @utilisateur.save + flash[:notice] = 'Utilisateur was successfully created.' + format.html { redirect_to utilisateur_url(@utilisateur) } + format.xml { head :created, :location => utilisateur_url(@utilisateur) } + else + format.html { render :action => "new" } + format.xml { render :xml => @utilisateur.errors.to_xml } + end + end + end + + # PUT /utilisateurs/1 + # PUT /utilisateurs/1.xml + def update + @utilisateur = Utilisateur.find(params[:id]) + + respond_to do |format| + if @utilisateur.update_attributes(params[:utilisateur]) + flash[:notice] = 'Utilisateur was successfully updated.' + format.html { redirect_to utilisateur_url(@utilisateur) } + format.xml { head :ok } + else + format.html { render :action => "edit" } + format.xml { render :xml => @utilisateur.errors.to_xml } + end + end + end + + # DELETE /utilisateurs/1 + # DELETE /utilisateurs/1.xml + def destroy + @utilisateur = Utilisateur.find(params[:id]) + @utilisateur.destroy + + respond_to do |format| + format.html { redirect_to utilisateurs_url } + format.xml { head :ok } + end + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/app/helpers/application_helper.rb b/P5B/ruby/3dossmanno_annuaire/app/helpers/application_helper.rb new file mode 100644 index 0000000..22a7940 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/helpers/application_helper.rb @@ -0,0 +1,3 @@ +# Methods added to this helper will be available to all templates in the application. +module ApplicationHelper +end diff --git a/P5B/ruby/3dossmanno_annuaire/app/helpers/sessions_helper.rb b/P5B/ruby/3dossmanno_annuaire/app/helpers/sessions_helper.rb new file mode 100644 index 0000000..f54a8fc --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/helpers/sessions_helper.rb @@ -0,0 +1,2 @@ +module SessionsHelper +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/app/helpers/users_helper.rb b/P5B/ruby/3dossmanno_annuaire/app/helpers/users_helper.rb new file mode 100644 index 0000000..476a5ae --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/helpers/users_helper.rb @@ -0,0 +1,2 @@ +module UsersHelper +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/app/helpers/utilisateurs_helper.rb b/P5B/ruby/3dossmanno_annuaire/app/helpers/utilisateurs_helper.rb new file mode 100644 index 0000000..a9f7393 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/helpers/utilisateurs_helper.rb @@ -0,0 +1,2 @@ +module UtilisateursHelper +end diff --git a/P5B/ruby/3dossmanno_annuaire/app/models/user.rb b/P5B/ruby/3dossmanno_annuaire/app/models/user.rb new file mode 100644 index 0000000..c00faec --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/models/user.rb @@ -0,0 +1,98 @@ +require 'digest/sha1' +class User < ActiveRecord::Base + # Virtual attribute for the unencrypted password + attr_accessor :password + + validates_presence_of :login, :email + validates_presence_of :password, :if => :password_required? + validates_presence_of :password_confirmation, :if => :password_required? + validates_length_of :password, :within => 4..40, :if => :password_required? + validates_confirmation_of :password, :if => :password_required? + validates_length_of :login, :within => 3..40 + validates_length_of :email, :within => 3..100 + validates_uniqueness_of :login, :email, :case_sensitive => false + before_save :encrypt_password + before_create :make_activation_code + # prevents a user from submitting a crafted form that bypasses activation + # anything else you want your user to change should be added here. + attr_accessible :login, :email, :password, :password_confirmation + + # Activates the user in the database. + def activate + @activated = true + self.activated_at = Time.now.utc + self.activation_code = nil + save(false) + end + + def activated? + # the existence of an activation code means they have not activated yet + activation_code.nil? + end + + # Returns true if the user has just been activated. + def recently_activated? + @activated + end + + # Authenticates a user by their login name and unencrypted password. Returns the user or nil. + def self.authenticate(login, password) + u = find :first, :conditions => ['login = ? and activated_at IS NOT NULL', login] # need to get the salt + u && u.authenticated?(password) ? u : nil + end + + # Encrypts some data with the salt. + def self.encrypt(password, salt) + Digest::SHA1.hexdigest("--#{salt}--#{password}--") + end + + # Encrypts the password with the user salt + def encrypt(password) + self.class.encrypt(password, salt) + end + + def authenticated?(password) + crypted_password == encrypt(password) + end + + def remember_token? + remember_token_expires_at && Time.now.utc < remember_token_expires_at + end + + # These create and unset the fields required for remembering users between browser closes + def remember_me + remember_me_for 2.weeks + end + + def remember_me_for(time) + remember_me_until time.from_now.utc + end + + def remember_me_until(time) + self.remember_token_expires_at = time + self.remember_token = encrypt("#{email}--#{remember_token_expires_at}") + save(false) + end + + def forget_me + self.remember_token_expires_at = nil + self.remember_token = nil + save(false) + end + + protected + # before filter + def encrypt_password + return if password.blank? + self.salt = Digest::SHA1.hexdigest("--#{Time.now.to_s}--#{login}--") if new_record? + self.crypted_password = encrypt(password) + end + + def password_required? + crypted_password.blank? || !password.blank? + end + + def make_activation_code + self.activation_code = Digest::SHA1.hexdigest( Time.now.to_s.split(//).sort_by {rand}.join ) + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/app/models/user_mailer.rb b/P5B/ruby/3dossmanno_annuaire/app/models/user_mailer.rb new file mode 100644 index 0000000..b105a43 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/models/user_mailer.rb @@ -0,0 +1,24 @@ +class UserMailer < ActionMailer::Base + def signup_notification(user) + setup_email(user) + @subject += 'Please activate your new account' + + @body[:url] = "http://YOURSITE/activate/#{user.activation_code}" + + end + + def activation(user) + setup_email(user) + @subject += 'Your account has been activated!' + @body[:url] = "http://YOURSITE/" + end + + protected + def setup_email(user) + @recipients = "#{user.email}" + @from = "ADMINEMAIL" + @subject = "[YOURSITE] " + @sent_on = Time.now + @body[:user] = user + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/app/models/user_observer.rb b/P5B/ruby/3dossmanno_annuaire/app/models/user_observer.rb new file mode 100644 index 0000000..03616f8 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/models/user_observer.rb @@ -0,0 +1,11 @@ +class UserObserver < ActiveRecord::Observer + def after_create(user) + UserMailer.deliver_signup_notification(user) + end + + def after_save(user) + + UserMailer.deliver_activation(user) if user.recently_activated? + + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/app/models/utilisateur.rb b/P5B/ruby/3dossmanno_annuaire/app/models/utilisateur.rb new file mode 100644 index 0000000..551991b --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/models/utilisateur.rb @@ -0,0 +1,2 @@ +class Utilisateur < ActiveRecord::Base +end diff --git a/P5B/ruby/3dossmanno_annuaire/app/views/layouts/utilisateurs.rhtml b/P5B/ruby/3dossmanno_annuaire/app/views/layouts/utilisateurs.rhtml new file mode 100644 index 0000000..755f0f1 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/views/layouts/utilisateurs.rhtml @@ -0,0 +1,17 @@ + + + + + + Utilisateurs: <%= controller.action_name %> + <%= stylesheet_link_tag 'scaffold' %> + + + +

    <%= flash[:notice] %>

    + +<%= yield %> + + + diff --git a/P5B/ruby/3dossmanno_annuaire/app/views/sessions/new.rhtml b/P5B/ruby/3dossmanno_annuaire/app/views/sessions/new.rhtml new file mode 100644 index 0000000..3f333eb --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/views/sessions/new.rhtml @@ -0,0 +1,14 @@ +<% form_tag session_path do -%> +


    +<%= text_field_tag 'login' %>

    + +


    +<%= password_field_tag 'password' %>

    + + + +

    <%= submit_tag 'Log in' %>

    +<% end -%> diff --git a/P5B/ruby/3dossmanno_annuaire/app/views/user_mailer/activation.rhtml b/P5B/ruby/3dossmanno_annuaire/app/views/user_mailer/activation.rhtml new file mode 100644 index 0000000..3e9c253 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/views/user_mailer/activation.rhtml @@ -0,0 +1,3 @@ +<%= @user.login %>, your account has been activated. You may now start adding your plugins: + + <%= @url %> \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/app/views/user_mailer/signup_notification.rhtml b/P5B/ruby/3dossmanno_annuaire/app/views/user_mailer/signup_notification.rhtml new file mode 100644 index 0000000..4333d27 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/views/user_mailer/signup_notification.rhtml @@ -0,0 +1,8 @@ +Your account has been created. + + Username: <%= @user.login %> + Password: <%= @user.password %> + +Visit this url to activate your account: + + <%= @url %> \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/app/views/users/new.rhtml b/P5B/ruby/3dossmanno_annuaire/app/views/users/new.rhtml new file mode 100644 index 0000000..f808bd0 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/views/users/new.rhtml @@ -0,0 +1,16 @@ +<%= error_messages_for :user %> +<% form_for :user, :url => users_path do |f| -%> +


    +<%= f.text_field :login %>

    + +


    +<%= f.text_field :email %>

    + +


    +<%= f.password_field :password %>

    + +


    +<%= f.password_field :password_confirmation %>

    + +

    <%= submit_tag 'Sign up' %>

    +<% end -%> diff --git a/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/edit.rhtml b/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/edit.rhtml new file mode 100644 index 0000000..4537ac8 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/edit.rhtml @@ -0,0 +1,62 @@ +

    Edition utilisateur

    + +<%= error_messages_for :utilisateur %> + +<% form_for(:utilisateur, :url => utilisateur_path(@utilisateur), :html => { :method => :put }) do |f| %> +

    + Nom
    + <%= f.text_field :nom %> +

    + +

    + Prnom
    + <%= f.text_field :prenom %> +

    + +

    + Classe
    + <%= f.text_field :classe %> +

    + +

    + Adresse courriel
    + <%= f.text_field :email %> +

    + +

    + Age
    + <%= f.text_field :age %> +

    + +

    + Rue
    + <%= f.text_field :rue %> +

    + +

    + Code postal
    + <%= f.text_field :codePostal %> +

    + +

    + Ville
    + <%= f.text_field :ville %> +

    + +

    + Photo
    + <%= f.text_field :photo %> +

    + +

    + Type
    + <%= f.text_field :type %> +

    + +

    + <%= submit_tag "Mise jour" %> +

    +<% end %> + +<%= link_to 'Montrer', utilisateur_path(@utilisateur) %> | +<%= link_to 'Retour', utilisateurs_path %> diff --git a/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/index.rhtml b/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/index.rhtml new file mode 100644 index 0000000..b655c22 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/index.rhtml @@ -0,0 +1,38 @@ +

    Listing utilisateurs

    + + + + + + + + + + + + + + + +<% for utilisateur in @utilisateurs %> + + + + + + + + + + + + + + + +<% end %> +
    NomPrnomClasseEmailAgeRueCode PostalVillePhotoType
    <%=h utilisateur.nom %><%=h utilisateur.prenom %><%=h utilisateur.classe %><%=h utilisateur.email %><%=h utilisateur.age %><%=h utilisateur.rue %><%=h utilisateur.codePostal %><%=h utilisateur.ville %><%=h utilisateur.photo %><%=h utilisateur.type %><%= link_to 'Montrer', utilisateur_path(utilisateur) %><%= link_to 'Editer', edit_utilisateur_path(utilisateur) %><%= link_to 'Supprimer', utilisateur_path(utilisateur), :confirm => 'Etes vous sr ?', :method => :delete %>
    + +
    + +<%= link_to 'Nouvel utilisateur', new_utilisateur_path %> diff --git a/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/new.rhtml b/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/new.rhtml new file mode 100644 index 0000000..493d327 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/new.rhtml @@ -0,0 +1,61 @@ +

    New utilisateur

    + +<%= error_messages_for :utilisateur %> + +<% form_for(:utilisateur, :url => utilisateurs_path) do |f| %> +

    + Nom
    + <%= f.text_field :nom %> +

    + +

    + Prenom
    + <%= f.text_field :prenom %> +

    + +

    + Classe
    + <%= f.text_field :classe %> +

    + +

    + Email
    + <%= f.text_field :email %> +

    + +

    + Age
    + <%= f.text_field :age %> +

    + +

    + Rue
    + <%= f.text_field :rue %> +

    + +

    + Codepostal
    + <%= f.text_field :codePostal %> +

    + +

    + Ville
    + <%= f.text_field :ville %> +

    + +

    + Photo
    + <%= f.text_field :photo %> +

    + +

    + Type
    + <%= f.text_field :type %> +

    + +

    + <%= submit_tag "Create" %> +

    +<% end %> + +<%= link_to 'Back', utilisateurs_path %> \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/show.rhtml b/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/show.rhtml new file mode 100644 index 0000000..a046041 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/app/views/utilisateurs/show.rhtml @@ -0,0 +1,53 @@ +

    + Nom: + <%=h @utilisateur.nom %> +

    + +

    + Prenom: + <%=h @utilisateur.prenom %> +

    + +

    + Classe: + <%=h @utilisateur.classe %> +

    + +

    + Email: + <%=h @utilisateur.email %> +

    + +

    + Age: + <%=h @utilisateur.age %> +

    + +

    + Rue: + <%=h @utilisateur.rue %> +

    + +

    + Codepostal: + <%=h @utilisateur.codePostal %> +

    + +

    + Ville: + <%=h @utilisateur.ville %> +

    + +

    + Photo: + <%=h @utilisateur.photo %> +

    + +

    + Type: + <%=h @utilisateur.type %> +

    + + +<%= link_to 'Edit', edit_utilisateur_path(@utilisateur) %> | +<%= link_to 'Back', utilisateurs_path %> \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/config/amazon_s3.yml b/P5B/ruby/3dossmanno_annuaire/config/amazon_s3.yml new file mode 100644 index 0000000..81cb807 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/config/amazon_s3.yml @@ -0,0 +1,14 @@ +development: + bucket_name: appname_development + access_key_id: + secret_access_key: + +test: + bucket_name: appname_test + access_key_id: + secret_access_key: + +production: + bucket_name: appname + access_key_id: + secret_access_key: diff --git a/P5B/ruby/3dossmanno_annuaire/config/boot.rb b/P5B/ruby/3dossmanno_annuaire/config/boot.rb new file mode 100644 index 0000000..0f034f0 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/config/boot.rb @@ -0,0 +1,39 @@ +# Don't change this file. Configuration is done in config/environment.rb and config/environments/*.rb + +RAILS_ROOT = "#{File.dirname(__FILE__)}/.." unless defined?(RAILS_ROOT) + +unless defined?(Rails::Initializer) + if File.directory?("#{RAILS_ROOT}/vendor/rails") + require "#{RAILS_ROOT}/vendor/rails/railties/lib/initializer" + else + require 'rubygems' + + rails_gem_version = + if defined? RAILS_GEM_VERSION + RAILS_GEM_VERSION + else + File.read("#{File.dirname(__FILE__)}/environment.rb") =~ /^[^#]*RAILS_GEM_VERSION\s+=\s+'([\d.]+)'/ + $1 + end + + if rails_gem_version + rails_gem = Gem.cache.search('rails', "=#{rails_gem_version}.0").sort_by { |g| g.version.version }.last + + if rails_gem + gem "rails", "=#{rails_gem.version.version}" + require rails_gem.full_gem_path + '/lib/initializer' + else + STDERR.puts %(Cannot find gem for Rails =#{rails_gem_version}.0: + Install the missing gem with 'gem install -v=#{rails_gem_version} rails', or + change environment.rb to define RAILS_GEM_VERSION with your desired version. + ) + exit 1 + end + else + gem "rails" + require 'initializer' + end + end + + Rails::Initializer.run(:set_load_path) +end diff --git a/P5B/ruby/3dossmanno_annuaire/config/database.yml b/P5B/ruby/3dossmanno_annuaire/config/database.yml new file mode 100644 index 0000000..a499a50 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/config/database.yml @@ -0,0 +1,38 @@ +# MySQL (default setup). Versions 4.1 and 5.0 are recommended. +# +# Install the MySQL driver: +# gem install mysql +# On MacOS X: +# gem install mysql -- --include=/usr/local/lib +# On Windows: +# gem install mysql +# Choose the win32 build. +# Install MySQL and put its /bin directory on your path. +# +# And be sure to use new-style password hashing: +# http://dev.mysql.com/doc/refman/5.0/en/old-client.html +development: + adapter: mysql + database: 073dossmanno_dev + username: 3dossmanno + password: 3dossmanno + host: pipit + encoding: utf8 + +# Warning: The database defined as 'test' will be erased and +# re-generated from your development database when you run 'rake'. +# Do not set this db to the same as development or production. +test: + adapter: mysql + database: 073dossmanno_test + username: 3dossmanno + password: 3dossmanno + host: pipit + encoding: utf8 + +production: + adapter: mysql + database: 3dossmanno_annuaire_production + username: root + password: + host: localhost diff --git a/P5B/ruby/3dossmanno_annuaire/config/environment.rb b/P5B/ruby/3dossmanno_annuaire/config/environment.rb new file mode 100644 index 0000000..4233311 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/config/environment.rb @@ -0,0 +1,60 @@ +# Be sure to restart your web server when you modify this file. + +# Uncomment below to force Rails into production mode when +# you don't control web/app server and can't set it the proper way +# ENV['RAILS_ENV'] ||= 'production' + +# Specifies gem version of Rails to use when vendor/rails is not present +RAILS_GEM_VERSION = '1.2.5' unless defined? RAILS_GEM_VERSION + +# Bootstrap the Rails environment, frameworks, and default configuration +require File.join(File.dirname(__FILE__), 'boot') + +Rails::Initializer.run do |config| + # Settings in config/environments/* take precedence over those specified here + + # Skip frameworks you're not going to use (only works if using vendor/rails) + # config.frameworks -= [ :action_web_service, :action_mailer ] + + # Only load the plugins named here, by default all plugins in vendor/plugins are loaded + # config.plugins = %W( exception_notification ssl_requirement ) + + # Add additional load paths for your own custom dirs + # config.load_paths += %W( #{RAILS_ROOT}/extras ) + + # Force all environments to use the same logger level + # (by default production uses :info, the others :debug) + # config.log_level = :debug + + # Use the database for sessions instead of the file system + # (create the session table with 'rake db:sessions:create') + # config.action_controller.session_store = :active_record_store + + # Use SQL instead of Active Record's schema dumper when creating the test database. + # This is necessary if your schema can't be completely dumped by the schema dumper, + # like if you have constraints or database-specific column types + # config.active_record.schema_format = :sql + + # Activate observers that should always be running + # config.active_record.observers = :cacher, :garbage_collector + + # Make Active Record use UTC-base instead of local time + # config.active_record.default_timezone = :utc + + # Add new inflection rules using the following format + # (all these examples are active by default): + # Inflector.inflections do |inflect| + # inflect.plural /^(ox)$/i, '\1en' + # inflect.singular /^(ox)en/i, '\1' + # inflect.irregular 'person', 'people' + # inflect.uncountable %w( fish sheep ) + # end + + # See Rails::Configuration for more options +end + +# Add new mime types for use in respond_to blocks: +# Mime::Type.register "text/richtext", :rtf +# Mime::Type.register "application/x-mobile", :mobile + +# Include your application configuration below diff --git a/P5B/ruby/3dossmanno_annuaire/config/environments/development.rb b/P5B/ruby/3dossmanno_annuaire/config/environments/development.rb new file mode 100644 index 0000000..0589aa9 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/config/environments/development.rb @@ -0,0 +1,21 @@ +# Settings specified here will take precedence over those in config/environment.rb + +# In the development environment your application's code is reloaded on +# every request. This slows down response time but is perfect for development +# since you don't have to restart the webserver when you make code changes. +config.cache_classes = false + +# Log error messages when you accidentally call methods on nil. +config.whiny_nils = true + +# Enable the breakpoint server that script/breakpointer connects to +config.breakpoint_server = true + +# Show full error reports and disable caching +config.action_controller.consider_all_requests_local = true +config.action_controller.perform_caching = false +config.action_view.cache_template_extensions = false +config.action_view.debug_rjs = true + +# Don't care if the mailer can't send +config.action_mailer.raise_delivery_errors = false diff --git a/P5B/ruby/3dossmanno_annuaire/config/environments/production.rb b/P5B/ruby/3dossmanno_annuaire/config/environments/production.rb new file mode 100644 index 0000000..cb295b8 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/config/environments/production.rb @@ -0,0 +1,18 @@ +# Settings specified here will take precedence over those in config/environment.rb + +# The production environment is meant for finished, "live" apps. +# Code is not reloaded between requests +config.cache_classes = true + +# Use a different logger for distributed setups +# config.logger = SyslogLogger.new + +# Full error reports are disabled and caching is turned on +config.action_controller.consider_all_requests_local = false +config.action_controller.perform_caching = true + +# Enable serving of images, stylesheets, and javascripts from an asset server +# config.action_controller.asset_host = "http://assets.example.com" + +# Disable delivery errors, bad email addresses will be ignored +# config.action_mailer.raise_delivery_errors = false diff --git a/P5B/ruby/3dossmanno_annuaire/config/environments/test.rb b/P5B/ruby/3dossmanno_annuaire/config/environments/test.rb new file mode 100644 index 0000000..f0689b9 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/config/environments/test.rb @@ -0,0 +1,19 @@ +# Settings specified here will take precedence over those in config/environment.rb + +# The test environment is used exclusively to run your application's +# test suite. You never need to work with it otherwise. Remember that +# your test database is "scratch space" for the test suite and is wiped +# and recreated between test runs. Don't rely on the data there! +config.cache_classes = true + +# Log error messages when you accidentally call methods on nil. +config.whiny_nils = true + +# Show full error reports and disable caching +config.action_controller.consider_all_requests_local = true +config.action_controller.perform_caching = false + +# Tell ActionMailer not to deliver emails to the real world. +# The :test delivery method accumulates sent emails in the +# ActionMailer::Base.deliveries array. +config.action_mailer.delivery_method = :test \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/config/routes.rb b/P5B/ruby/3dossmanno_annuaire/config/routes.rb new file mode 100644 index 0000000..d1477d0 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/config/routes.rb @@ -0,0 +1,28 @@ +ActionController::Routing::Routes.draw do |map| + map.resources :utilisateurs + + map.ressources :users + map.resource :session, :controller => 'sessions' + + # The priority is based upon order of creation: first created -> highest priority. + + # Sample of regular route: + # map.connect 'products/:id', :controller => 'catalog', :action => 'view' + # Keep in mind you can assign values other than :controller and :action + + # Sample of named route: + # map.purchase 'products/:id/purchase', :controller => 'catalog', :action => 'purchase' + # This route can be invoked with purchase_url(:id => product.id) + + # You can have the root of your site routed by hooking up '' + # -- just remember to delete public/index.html. + # map.connect '', :controller => "welcome" + + # Allow downloading Web Service WSDL as a file with an extension + # instead of a file named 'wsdl' + #map.connect ':controller/service.wsdl', :action => 'wsdl' + + # Install the default route as the lowest priority. + map.connect ':controller/:action/:id.:format' + map.connect ':controller/:action/:id' +end diff --git a/P5B/ruby/3dossmanno_annuaire/db/migrate/001_create_utilisateurs.rb b/P5B/ruby/3dossmanno_annuaire/db/migrate/001_create_utilisateurs.rb new file mode 100644 index 0000000..1c962ed --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/db/migrate/001_create_utilisateurs.rb @@ -0,0 +1,23 @@ +class CreateUtilisateurs < ActiveRecord::Migration + db_name = ActiveRecord::Base::connection.current_database() + execute "ALTER DATABASE #{db_name} CHARACTER SET utf8 COLLATE utf8_general_ci" + + def self.up + create_table :utilisateurs do |t| + t.column :nom, :string + t.column :prenom, :string + t.column :classe, :string + t.column :email, :string + t.column :age, :int[3] + t.column :rue, :string + t.column :codePostal, :int[5] + t.column :ville, :string + t.column :photo, :image + t.column :type, :string + end + end + + def self.down + drop_table :utilisateurs + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/db/migrate/002_create_users.rb b/P5B/ruby/3dossmanno_annuaire/db/migrate/002_create_users.rb new file mode 100644 index 0000000..52fa1de --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/db/migrate/002_create_users.rb @@ -0,0 +1,21 @@ +class CreateUsers < ActiveRecord::Migration + def self.up + create_table "users", :force => true do |t| + t.column :login, :string + t.column :email, :string + t.column :crypted_password, :string, :limit => 40 + t.column :salt, :string, :limit => 40 + t.column :created_at, :datetime + t.column :updated_at, :datetime + t.column :remember_token, :string + t.column :remember_token_expires_at, :datetime + + t.column :activation_code, :string, :limit => 40 + t.column :activated_at, :datetime + end + end + + def self.down + drop_table "users" + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/db/schema.rb b/P5B/ruby/3dossmanno_annuaire/db/schema.rb new file mode 100644 index 0000000..4128ad7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/db/schema.rb @@ -0,0 +1,37 @@ +# This file is autogenerated. Instead of editing this file, please use the +# migrations feature of ActiveRecord to incrementally modify your database, and +# then regenerate this schema definition. + +ActiveRecord::Schema.define(:version => 6) do + + create_table "addresses", :force => true do |t| + t.column "street", :text + t.column "postal_code", :string + t.column "city", :string + t.column "country", :string + end + + create_table "customers", :force => true do |t| + t.column "firstname", :string + t.column "name", :string + end + + create_table "products", :force => true do |t| + t.column "designation", :string + t.column "description", :text + t.column "created_at", :datetime + t.column "updated_at", :datetime + t.column "supplier_id", :integer + t.column "customer_id", :integer + t.column "type", :string + end + + create_table "suppliers", :force => true do |t| + t.column "name", :string + t.column "description", :text + t.column "code", :string + t.column "created_at", :datetime + t.column "updated_at", :datetime + end + +end diff --git a/P5B/ruby/3dossmanno_annuaire/doc/README_FOR_APP b/P5B/ruby/3dossmanno_annuaire/doc/README_FOR_APP new file mode 100644 index 0000000..ac6c149 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/doc/README_FOR_APP @@ -0,0 +1,2 @@ +Use this README file to introduce your application and point to useful places in the API for learning more. +Run "rake appdoc" to generate API documentation for your models and controllers. \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/lib/authenticated_system.rb b/P5B/ruby/3dossmanno_annuaire/lib/authenticated_system.rb new file mode 100644 index 0000000..70207d1 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/lib/authenticated_system.rb @@ -0,0 +1,127 @@ +module AuthenticatedSystem + protected + # Returns true or false if the user is logged in. + # Preloads @current_user with the user model if they're logged in. + def logged_in? + current_user != :false + end + + # Accesses the current user from the session. Set it to :false if login fails + # so that future calls do not hit the database. + def current_user + @current_user ||= (login_from_session || login_from_basic_auth || login_from_cookie || :false) + end + + # Store the given user in the session. + def current_user=(new_user) + session[:user] = (new_user.nil? || new_user.is_a?(Symbol)) ? nil : new_user.id + @current_user = new_user + end + + # Check if the user is authorized + # + # Override this method in your controllers if you want to restrict access + # to only a few actions or if you want to check if the user + # has the correct rights. + # + # Example: + # + # # only allow nonbobs + # def authorized? + # current_user.login != "bob" + # end + def authorized? + logged_in? + end + + # Filter method to enforce a login requirement. + # + # To require logins for all actions, use this in your controllers: + # + # before_filter :login_required + # + # To require logins for specific actions, use this in your controllers: + # + # before_filter :login_required, :only => [ :edit, :update ] + # + # To skip this in a subclassed controller: + # + # skip_before_filter :login_required + # + def login_required + authorized? || access_denied + end + + # Redirect as appropriate when an access request fails. + # + # The default action is to redirect to the login screen. + # + # Override this method in your controllers if you want to have special + # behavior in case the user is not authorized + # to access the requested action. For example, a popup window might + # simply close itself. + def access_denied + respond_to do |accepts| + accepts.html do + store_location + redirect_to :controller => '/sessions', :action => 'new' + end + accepts.xml do + headers["Status"] = "Unauthorized" + headers["WWW-Authenticate"] = %(Basic realm="Web Password") + render :text => "Could't authenticate you", :status => '401 Unauthorized' + end + end + false + end + + # Store the URI of the current request in the session. + # + # We can return to this location by calling #redirect_back_or_default. + def store_location + session[:return_to] = request.request_uri + end + + # Redirect to the URI stored by the most recent store_location call or + # to the passed default. + def redirect_back_or_default(default) + session[:return_to] ? redirect_to_url(session[:return_to]) : redirect_to(default) + session[:return_to] = nil + end + + # Inclusion hook to make #current_user and #logged_in? + # available as ActionView helper methods. + def self.included(base) + base.send :helper_method, :current_user, :logged_in? + end + + # Called from #current_user. First attempt to login by the user id stored in the session. + def login_from_session + self.current_user = User.find_by_id(session[:user]) if session[:user] + end + + # Called from #current_user. Now, attempt to login by basic authentication information. + def login_from_basic_auth + username, passwd = get_auth_data + self.current_user = User.authenticate(username, passwd) if username && passwd + end + + # Called from #current_user. Finaly, attempt to login by an expiring token in the cookie. + def login_from_cookie + user = cookies[:auth_token] && User.find_by_remember_token(cookies[:auth_token]) + if user && user.remember_token? + user.remember_me + cookies[:auth_token] = { :value => user.remember_token, :expires => user.remember_token_expires_at } + self.current_user = user + end + end + + private + @@http_auth_headers = %w(X-HTTP_AUTHORIZATION HTTP_AUTHORIZATION Authorization) + # gets BASIC auth info + def get_auth_data + auth_key = @@http_auth_headers.detect { |h| request.env.has_key?(h) } + auth_data = request.env[auth_key].to_s.split unless auth_key.blank? + return auth_data && auth_data[0] == 'Basic' ? Base64.decode64(auth_data[1]).split(':')[0..1] : [nil, nil] + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/lib/authenticated_test_helper.rb b/P5B/ruby/3dossmanno_annuaire/lib/authenticated_test_helper.rb new file mode 100644 index 0000000..a3703df --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/lib/authenticated_test_helper.rb @@ -0,0 +1,26 @@ +module AuthenticatedTestHelper + # Sets the current user in the session from the user fixtures. + def login_as(user) + @request.session[:user] = user ? users(user).id : nil + end + + def authorize_as(user) + @request.env["HTTP_AUTHORIZATION"] = user ? "Basic #{Base64.encode64("#{users(user).login}:test")}" : nil + end + + # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3 + def assert_difference(expressions, difference = 1, message = nil, &block) + expression_evaluations = [expressions].flatten.collect{|expression| lambda { eval(expression, block.binding) } } + + original_values = expression_evaluations.inject([]) { |memo, expression| memo << expression.call } + yield + expression_evaluations.each_with_index do |expression, i| + assert_equal original_values[i] + difference, expression.call, message + end + end + + # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3 + def assert_no_difference(expressions, message = nil, &block) + assert_difference expressions, 0, message, &block + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/log/development.log b/P5B/ruby/3dossmanno_annuaire/log/development.log new file mode 100644 index 0000000..f8bbd37 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/log/development.log @@ -0,0 +1,344 @@ + + +Processing UtilisateursController#index (for 127.0.0.1 at 2007-11-06 16:55:22) [GET] + Session ID: ebdec02688b41592bff1775fab8da692 + Parameters: {"action"=>"index", "controller"=>"utilisateurs"} + SQL (0.000391) SET NAMES 'utf8' + SQL (0.000354) SET SQL_AUTO_IS_NULL=0 + Utilisateur Load (0.002877) SELECT * FROM utilisateurs  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/utilisateurs +Rendering utilisateurs/index + + +ActionView::TemplateError (undefined method `nom' for #) on line #19 of app/views/utilisateurs/index.rhtml: +16: +17: <% for utilisateur in @utilisateurs %> +18: +19: <%=h utilisateur.nom %> +20: <%=h utilisateur.prenom %> +21: <%=h utilisateur.classe %> +22: <%=h utilisateur.email %> + + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1863:in `method_missing' + /home/3dossmanno/P5b/ruby/3dossmanno_annuaire/app/views/utilisateurs/index.rhtml:19:in `_run_rhtml_47app47views47utilisateurs47index46rhtml' + /home/3dossmanno/P5b/ruby/3dossmanno_annuaire/app/views/utilisateurs/index.rhtml:17:in `each' + /home/3dossmanno/P5b/ruby/3dossmanno_annuaire/app/views/utilisateurs/index.rhtml:17:in `_run_rhtml_47app47views47utilisateurs47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/3dossmanno_annuaire/app/controllers/utilisateurs_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/3dossmanno_annuaire/app/controllers/utilisateurs_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + SQL (0.000346) SET NAMES 'utf8' + SQL (0.000330) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.022462) SELECT version FROM schema_info + SQL (0.000648) SELECT * FROM schema_info + SQL (0.001260) SHOW TABLES + SQL (0.004494) SHOW FIELDS FROM addresses + SQL (0.002046) SHOW KEYS FROM addresses + SQL (0.002521) SHOW FIELDS FROM customers + SQL (0.002087) SHOW KEYS FROM customers + SQL (0.003737) SHOW FIELDS FROM products + SQL (0.002598) SHOW KEYS FROM products + SQL (0.003038) SHOW FIELDS FROM suppliers + SQL (0.001972) SHOW KEYS FROM suppliers + SQL (0.002987) SHOW FIELDS FROM utilisateurs0 + SQL (0.001915) SHOW KEYS FROM utilisateurs0 + SQL (0.000324) SET NAMES 'utf8' + SQL (0.000273) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000576) SELECT version FROM schema_info + SQL (0.001038) SELECT * FROM schema_info + SQL (0.000964) SHOW TABLES + SQL (0.002343) SHOW FIELDS FROM addresses + SQL (0.002067) SHOW KEYS FROM addresses + SQL (0.002952) SHOW FIELDS FROM customers + SQL (0.002650) SHOW KEYS FROM customers + SQL (0.002664) SHOW FIELDS FROM products + SQL (0.002058) SHOW KEYS FROM products + SQL (0.002585) SHOW FIELDS FROM suppliers + SQL (0.002202) SHOW KEYS FROM suppliers + SQL (0.003190) SHOW FIELDS FROM utilisateurs0 + SQL (0.002052) SHOW KEYS FROM utilisateurs0 + SQL (0.000327) SET NAMES 'utf8' + SQL (0.000335) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000615) SELECT version FROM schema_info + SQL (0.000554) SELECT * FROM schema_info + SQL (0.001139) SHOW TABLES + SQL (0.002539) SHOW FIELDS FROM addresses + SQL (0.001794) SHOW KEYS FROM addresses + SQL (0.002117) SHOW FIELDS FROM customers + SQL (0.002836) SHOW KEYS FROM customers + SQL (0.005304) SHOW FIELDS FROM products + SQL (0.001824) SHOW KEYS FROM products + SQL (0.003148) SHOW FIELDS FROM suppliers + SQL (0.001822) SHOW KEYS FROM suppliers + SQL (0.000324) SET NAMES 'utf8' + SQL (0.000316) SET SQL_AUTO_IS_NULL=0 + SQL (0.000321) SET NAMES 'utf8' + SQL (0.000577) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000590) SELECT version FROM schema_info + SQL (0.000495) SELECT * FROM schema_info + SQL (0.001012) SHOW TABLES + SQL (0.002332) SHOW FIELDS FROM addresses + SQL (0.002280) SHOW KEYS FROM addresses + SQL (0.002149) SHOW FIELDS FROM customers + SQL (0.001880) SHOW KEYS FROM customers + SQL (0.004202) SHOW FIELDS FROM products + SQL (0.001842) SHOW KEYS FROM products + SQL (0.003232) SHOW FIELDS FROM suppliers + SQL (0.002026) SHOW KEYS FROM suppliers + SQL (0.000344) SET NAMES 'utf8' + SQL (0.000322) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000619) SELECT version FROM schema_info + SQL (0.000462) SELECT * FROM schema_info + SQL (0.001309) SHOW TABLES + SQL (0.007139) SHOW FIELDS FROM addresses + SQL (0.003189) SHOW KEYS FROM addresses + SQL (0.003171) SHOW FIELDS FROM customers + SQL (0.003555) SHOW KEYS FROM customers + SQL (0.003635) SHOW FIELDS FROM products + SQL (0.001912) SHOW KEYS FROM products + SQL (0.002762) SHOW FIELDS FROM suppliers + SQL (0.001890) SHOW KEYS FROM suppliers + SQL (0.000317) SET NAMES 'utf8' + SQL (0.000278) SET SQL_AUTO_IS_NULL=0 + SQL (0.000683) SET NAMES 'utf8' + SQL (0.000319) SET SQL_AUTO_IS_NULL=0 + SQL (0.000329) SET NAMES 'utf8' + SQL (0.000274) SET SQL_AUTO_IS_NULL=0 + SQL (0.000324) SET NAMES 'utf8' + SQL (0.000282) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000521) SELECT DATABASE() as db + SQL (0.012236) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.000509) SELECT version FROM schema_info + SQL (0.000509) SELECT * FROM schema_info + SQL (0.000950) SHOW TABLES + SQL (0.003472) SHOW FIELDS FROM addresses + SQL (0.002259) SHOW KEYS FROM addresses + SQL (0.002701) SHOW FIELDS FROM customers + SQL (0.002017) SHOW KEYS FROM customers + SQL (0.002611) SHOW FIELDS FROM products + SQL (0.001984) SHOW KEYS FROM products + SQL (0.002393) SHOW FIELDS FROM suppliers + SQL (0.002449) SHOW KEYS FROM suppliers + SQL (0.000329) SET NAMES 'utf8' + SQL (0.000316) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000779) SELECT DATABASE() as db + SQL (0.000577) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.000632) SELECT version FROM schema_info + SQL (0.000588) SELECT * FROM schema_info + SQL (0.001240) SHOW TABLES + SQL (0.003601) SHOW FIELDS FROM addresses + SQL (0.001946) SHOW KEYS FROM addresses + SQL (0.002402) SHOW FIELDS FROM customers + SQL (0.001833) SHOW KEYS FROM customers + SQL (0.002700) SHOW FIELDS FROM products + SQL (0.001880) SHOW KEYS FROM products + SQL (0.002815) SHOW FIELDS FROM suppliers + SQL (0.001944) SHOW KEYS FROM suppliers + SQL (0.000322) SET NAMES 'utf8' + SQL (0.000276) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000446) SELECT version FROM schema_info + SQL (0.000403) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000623) SELECT DATABASE() as db + SQL (0.000526) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.000530) SELECT version FROM schema_info +Migrating to CreateUtilisateurs (1) + SQL (0.000000) Mysql::Error: #42S02Unknown table 'utilisateurs': DROP TABLE utilisateurs + SQL (0.000317) SET NAMES 'utf8' + SQL (0.000281) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000722) SELECT DATABASE() as db + SQL (0.000765) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.000464) SELECT version FROM schema_info + SQL (0.000457) SELECT * FROM schema_info + SQL (0.000916) SHOW TABLES + SQL (0.002459) SHOW FIELDS FROM addresses + SQL (0.001870) SHOW KEYS FROM addresses + SQL (0.002171) SHOW FIELDS FROM customers + SQL (0.001915) SHOW KEYS FROM customers + SQL (0.002727) SHOW FIELDS FROM products + SQL (0.001986) SHOW KEYS FROM products + SQL (0.004044) SHOW FIELDS FROM suppliers + SQL (0.002829) SHOW KEYS FROM suppliers + + +Processing UtilisateursController#index (for 127.0.0.1 at 2007-11-06 17:19:40) [GET] + Session ID: ebdec02688b41592bff1775fab8da692 + Parameters: {"action"=>"index", "controller"=>"utilisateurs"} + Utilisateur Load (0.000000) Mysql::Error: #42S02Table '073dossmanno_dev.utilisateurs' doesn't exist: SELECT * FROM utilisateurs  + + +ActiveRecord::StatementInvalid (Mysql::Error: #42S02Table '073dossmanno_dev.utilisateurs' doesn't exist: SELECT * FROM utilisateurs ): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract_adapter.rb:128:in `log' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:243:in `execute' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:399:in `select' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/database_statements.rb:7:in `select_all' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/3dossmanno_annuaire/app/controllers/utilisateurs_controller.rb:5:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + SQL (0.000319) SET NAMES 'utf8' + SQL (0.000279) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000713) SELECT DATABASE() as db + SQL (0.000554) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.000445) SELECT version FROM schema_info + SQL (0.000507) SELECT * FROM schema_info + SQL (0.001107) SHOW TABLES + SQL (0.002537) SHOW FIELDS FROM addresses + SQL (0.001859) SHOW KEYS FROM addresses + SQL (0.002061) SHOW FIELDS FROM customers + SQL (0.001905) SHOW KEYS FROM customers + SQL (0.003183) SHOW FIELDS FROM products + SQL (0.002289) SHOW KEYS FROM products + SQL (0.002503) SHOW FIELDS FROM suppliers + SQL (0.001893) SHOW KEYS FROM suppliers + SQL (0.000364) SET NAMES 'utf8' + SQL (0.001224) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000591) SELECT DATABASE() as db + SQL (0.000540) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.000439) SELECT version FROM schema_info + SQL (0.000649) SELECT * FROM schema_info + SQL (0.000913) SHOW TABLES + SQL (0.002435) SHOW FIELDS FROM addresses + SQL (0.002132) SHOW KEYS FROM addresses + SQL (0.002260) SHOW FIELDS FROM customers + SQL (0.001886) SHOW KEYS FROM customers + SQL (0.003226) SHOW FIELDS FROM products + SQL (0.002654) SHOW KEYS FROM products + SQL (0.003384) SHOW FIELDS FROM suppliers + SQL (0.001831) SHOW KEYS FROM suppliers + SQL (0.000451) SET NAMES 'utf8' + SQL (0.000278) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000537) SELECT DATABASE() as db + SQL (0.001057) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.000505) SELECT version FROM schema_info + SQL (0.000430) SELECT * FROM schema_info + SQL (0.000894) SHOW TABLES + SQL (0.002388) SHOW FIELDS FROM addresses + SQL (0.001876) SHOW KEYS FROM addresses + SQL (0.002298) SHOW FIELDS FROM customers + SQL (0.002201) SHOW KEYS FROM customers + SQL (0.004052) SHOW FIELDS FROM products + SQL (0.002114) SHOW KEYS FROM products + SQL (0.002437) SHOW FIELDS FROM suppliers + SQL (0.002394) SHOW KEYS FROM suppliers diff --git a/P5B/ruby/3dossmanno_annuaire/log/production.log b/P5B/ruby/3dossmanno_annuaire/log/production.log new file mode 100644 index 0000000..e69de29 diff --git a/P5B/ruby/3dossmanno_annuaire/log/server.log b/P5B/ruby/3dossmanno_annuaire/log/server.log new file mode 100644 index 0000000..e69de29 diff --git a/P5B/ruby/3dossmanno_annuaire/log/test.log b/P5B/ruby/3dossmanno_annuaire/log/test.log new file mode 100644 index 0000000..e69de29 diff --git a/P5B/ruby/3dossmanno_annuaire/public/.htaccess b/P5B/ruby/3dossmanno_annuaire/public/.htaccess new file mode 100644 index 0000000..d3c9983 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/.htaccess @@ -0,0 +1,40 @@ +# General Apache options +AddHandler fastcgi-script .fcgi +AddHandler cgi-script .cgi +Options +FollowSymLinks +ExecCGI + +# If you don't want Rails to look in certain directories, +# use the following rewrite rules so that Apache won't rewrite certain requests +# +# Example: +# RewriteCond %{REQUEST_URI} ^/notrails.* +# RewriteRule .* - [L] + +# Redirect all requests not available on the filesystem to Rails +# By default the cgi dispatcher is used which is very slow +# +# For better performance replace the dispatcher with the fastcgi one +# +# Example: +# RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] +RewriteEngine On + +# If your Rails application is accessed via an Alias directive, +# then you MUST also set the RewriteBase in this htaccess file. +# +# Example: +# Alias /myrailsapp /path/to/myrailsapp/public +# RewriteBase /myrailsapp + +RewriteRule ^$ index.html [QSA] +RewriteRule ^([^.]+)$ $1.html [QSA] +RewriteCond %{REQUEST_FILENAME} !-f +RewriteRule ^(.*)$ dispatch.cgi [QSA,L] + +# In case Rails experiences terminal errors +# Instead of displaying this message you can supply a file here which will be rendered instead +# +# Example: +# ErrorDocument 500 /500.html + +ErrorDocument 500 "

    Application error

    Rails application failed to start properly" \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/public/404.html b/P5B/ruby/3dossmanno_annuaire/public/404.html new file mode 100644 index 0000000..eff660b --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/404.html @@ -0,0 +1,30 @@ + + + + + + + The page you were looking for doesn't exist (404) + + + + + +
    +

    The page you were looking for doesn't exist.

    +

    You may have mistyped the address or the page may have moved.

    +
    + + \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/public/500.html b/P5B/ruby/3dossmanno_annuaire/public/500.html new file mode 100644 index 0000000..f0aee0e --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/500.html @@ -0,0 +1,30 @@ + + + + + + + We're sorry, but something went wrong + + + + + +
    +

    We're sorry, but something went wrong.

    +

    We've been notified about this issue and we'll take a look at it shortly.

    +
    + + \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/public/dispatch.cgi b/P5B/ruby/3dossmanno_annuaire/public/dispatch.cgi new file mode 100644 index 0000000..3848806 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/dispatch.cgi @@ -0,0 +1,10 @@ +#!/usr/bin/ruby1.8 + +require File.dirname(__FILE__) + "/../config/environment" unless defined?(RAILS_ROOT) + +# If you're using RubyGems and mod_ruby, this require should be changed to an absolute path one, like: +# "/usr/local/lib/ruby/gems/1.8/gems/rails-0.8.0/lib/dispatcher" -- otherwise performance is severely impaired +require "dispatcher" + +ADDITIONAL_LOAD_PATHS.reverse.each { |dir| $:.unshift(dir) if File.directory?(dir) } if defined?(Apache::RubyRun) +Dispatcher.dispatch \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/public/dispatch.fcgi b/P5B/ruby/3dossmanno_annuaire/public/dispatch.fcgi new file mode 100644 index 0000000..3169ba2 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/dispatch.fcgi @@ -0,0 +1,24 @@ +#!/usr/bin/ruby1.8 +# +# You may specify the path to the FastCGI crash log (a log of unhandled +# exceptions which forced the FastCGI instance to exit, great for debugging) +# and the number of requests to process before running garbage collection. +# +# By default, the FastCGI crash log is RAILS_ROOT/log/fastcgi.crash.log +# and the GC period is nil (turned off). A reasonable number of requests +# could range from 10-100 depending on the memory footprint of your app. +# +# Example: +# # Default log path, normal GC behavior. +# RailsFCGIHandler.process! +# +# # Default log path, 50 requests between GC. +# RailsFCGIHandler.process! nil, 50 +# +# # Custom log path, normal GC behavior. +# RailsFCGIHandler.process! '/var/log/myapp_fcgi_crash.log' +# +require File.dirname(__FILE__) + "/../config/environment" +require 'fcgi_handler' + +RailsFCGIHandler.process! diff --git a/P5B/ruby/3dossmanno_annuaire/public/dispatch.rb b/P5B/ruby/3dossmanno_annuaire/public/dispatch.rb new file mode 100644 index 0000000..3848806 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/dispatch.rb @@ -0,0 +1,10 @@ +#!/usr/bin/ruby1.8 + +require File.dirname(__FILE__) + "/../config/environment" unless defined?(RAILS_ROOT) + +# If you're using RubyGems and mod_ruby, this require should be changed to an absolute path one, like: +# "/usr/local/lib/ruby/gems/1.8/gems/rails-0.8.0/lib/dispatcher" -- otherwise performance is severely impaired +require "dispatcher" + +ADDITIONAL_LOAD_PATHS.reverse.each { |dir| $:.unshift(dir) if File.directory?(dir) } if defined?(Apache::RubyRun) +Dispatcher.dispatch \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/public/favicon.ico b/P5B/ruby/3dossmanno_annuaire/public/favicon.ico new file mode 100644 index 0000000..e69de29 diff --git a/P5B/ruby/3dossmanno_annuaire/public/images/rails.png b/P5B/ruby/3dossmanno_annuaire/public/images/rails.png new file mode 100644 index 0000000..b8441f1 Binary files /dev/null and b/P5B/ruby/3dossmanno_annuaire/public/images/rails.png differ diff --git a/P5B/ruby/3dossmanno_annuaire/public/index.html b/P5B/ruby/3dossmanno_annuaire/public/index.html new file mode 100644 index 0000000..a2daab7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/index.html @@ -0,0 +1,277 @@ + + + + + Ruby on Rails: Welcome aboard + + + + + + +
    + + +
    + + + + +
    +

    Getting started

    +

    Here’s how to get rolling:

    + +
      +
    1. +

      Create your databases and edit config/database.yml

      +

      Rails needs to know your login and password.

      +
    2. + +
    3. +

      Use script/generate to create your models and controllers

      +

      To see all available options, run it without parameters.

      +
    4. + +
    5. +

      Set up a default route and remove or rename this file

      +

      Routes are setup in config/routes.rb.

      +
    6. +
    +
    +
    + + +
    + + \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/public/javascripts/application.js b/P5B/ruby/3dossmanno_annuaire/public/javascripts/application.js new file mode 100644 index 0000000..fe45776 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/javascripts/application.js @@ -0,0 +1,2 @@ +// Place your application-specific JavaScript functions and classes here +// This file is automatically included by javascript_include_tag :defaults diff --git a/P5B/ruby/3dossmanno_annuaire/public/javascripts/controls.js b/P5B/ruby/3dossmanno_annuaire/public/javascripts/controls.js new file mode 100644 index 0000000..8c273f8 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/javascripts/controls.js @@ -0,0 +1,833 @@ +// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// (c) 2005, 2006 Ivan Krstic (http://blogs.law.harvard.edu/ivan) +// (c) 2005, 2006 Jon Tirsen (http://www.tirsen.com) +// Contributors: +// Richard Livsey +// Rahul Bhargava +// Rob Wills +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +// Autocompleter.Base handles all the autocompletion functionality +// that's independent of the data source for autocompletion. This +// includes drawing the autocompletion menu, observing keyboard +// and mouse events, and similar. +// +// Specific autocompleters need to provide, at the very least, +// a getUpdatedChoices function that will be invoked every time +// the text inside the monitored textbox changes. This method +// should get the text for which to provide autocompletion by +// invoking this.getToken(), NOT by directly accessing +// this.element.value. This is to allow incremental tokenized +// autocompletion. Specific auto-completion logic (AJAX, etc) +// belongs in getUpdatedChoices. +// +// Tokenized incremental autocompletion is enabled automatically +// when an autocompleter is instantiated with the 'tokens' option +// in the options parameter, e.g.: +// new Ajax.Autocompleter('id','upd', '/url/', { tokens: ',' }); +// will incrementally autocomplete with a comma as the token. +// Additionally, ',' in the above example can be replaced with +// a token array, e.g. { tokens: [',', '\n'] } which +// enables autocompletion on multiple tokens. This is most +// useful when one of the tokens is \n (a newline), as it +// allows smart autocompletion after linebreaks. + +if(typeof Effect == 'undefined') + throw("controls.js requires including script.aculo.us' effects.js library"); + +var Autocompleter = {} +Autocompleter.Base = function() {}; +Autocompleter.Base.prototype = { + baseInitialize: function(element, update, options) { + this.element = $(element); + this.update = $(update); + this.hasFocus = false; + this.changed = false; + this.active = false; + this.index = 0; + this.entryCount = 0; + + if(this.setOptions) + this.setOptions(options); + else + this.options = options || {}; + + this.options.paramName = this.options.paramName || this.element.name; + this.options.tokens = this.options.tokens || []; + this.options.frequency = this.options.frequency || 0.4; + this.options.minChars = this.options.minChars || 1; + this.options.onShow = this.options.onShow || + function(element, update){ + if(!update.style.position || update.style.position=='absolute') { + update.style.position = 'absolute'; + Position.clone(element, update, { + setHeight: false, + offsetTop: element.offsetHeight + }); + } + Effect.Appear(update,{duration:0.15}); + }; + this.options.onHide = this.options.onHide || + function(element, update){ new Effect.Fade(update,{duration:0.15}) }; + + if(typeof(this.options.tokens) == 'string') + this.options.tokens = new Array(this.options.tokens); + + this.observer = null; + + this.element.setAttribute('autocomplete','off'); + + Element.hide(this.update); + + Event.observe(this.element, "blur", this.onBlur.bindAsEventListener(this)); + Event.observe(this.element, "keypress", this.onKeyPress.bindAsEventListener(this)); + }, + + show: function() { + if(Element.getStyle(this.update, 'display')=='none') this.options.onShow(this.element, this.update); + if(!this.iefix && + (navigator.appVersion.indexOf('MSIE')>0) && + (navigator.userAgent.indexOf('Opera')<0) && + (Element.getStyle(this.update, 'position')=='absolute')) { + new Insertion.After(this.update, + ''); + this.iefix = $(this.update.id+'_iefix'); + } + if(this.iefix) setTimeout(this.fixIEOverlapping.bind(this), 50); + }, + + fixIEOverlapping: function() { + Position.clone(this.update, this.iefix, {setTop:(!this.update.style.height)}); + this.iefix.style.zIndex = 1; + this.update.style.zIndex = 2; + Element.show(this.iefix); + }, + + hide: function() { + this.stopIndicator(); + if(Element.getStyle(this.update, 'display')!='none') this.options.onHide(this.element, this.update); + if(this.iefix) Element.hide(this.iefix); + }, + + startIndicator: function() { + if(this.options.indicator) Element.show(this.options.indicator); + }, + + stopIndicator: function() { + if(this.options.indicator) Element.hide(this.options.indicator); + }, + + onKeyPress: function(event) { + if(this.active) + switch(event.keyCode) { + case Event.KEY_TAB: + case Event.KEY_RETURN: + this.selectEntry(); + Event.stop(event); + case Event.KEY_ESC: + this.hide(); + this.active = false; + Event.stop(event); + return; + case Event.KEY_LEFT: + case Event.KEY_RIGHT: + return; + case Event.KEY_UP: + this.markPrevious(); + this.render(); + if(navigator.appVersion.indexOf('AppleWebKit')>0) Event.stop(event); + return; + case Event.KEY_DOWN: + this.markNext(); + this.render(); + if(navigator.appVersion.indexOf('AppleWebKit')>0) Event.stop(event); + return; + } + else + if(event.keyCode==Event.KEY_TAB || event.keyCode==Event.KEY_RETURN || + (navigator.appVersion.indexOf('AppleWebKit') > 0 && event.keyCode == 0)) return; + + this.changed = true; + this.hasFocus = true; + + if(this.observer) clearTimeout(this.observer); + this.observer = + setTimeout(this.onObserverEvent.bind(this), this.options.frequency*1000); + }, + + activate: function() { + this.changed = false; + this.hasFocus = true; + this.getUpdatedChoices(); + }, + + onHover: function(event) { + var element = Event.findElement(event, 'LI'); + if(this.index != element.autocompleteIndex) + { + this.index = element.autocompleteIndex; + this.render(); + } + Event.stop(event); + }, + + onClick: function(event) { + var element = Event.findElement(event, 'LI'); + this.index = element.autocompleteIndex; + this.selectEntry(); + this.hide(); + }, + + onBlur: function(event) { + // needed to make click events working + setTimeout(this.hide.bind(this), 250); + this.hasFocus = false; + this.active = false; + }, + + render: function() { + if(this.entryCount > 0) { + for (var i = 0; i < this.entryCount; i++) + this.index==i ? + Element.addClassName(this.getEntry(i),"selected") : + Element.removeClassName(this.getEntry(i),"selected"); + + if(this.hasFocus) { + this.show(); + this.active = true; + } + } else { + this.active = false; + this.hide(); + } + }, + + markPrevious: function() { + if(this.index > 0) this.index-- + else this.index = this.entryCount-1; + this.getEntry(this.index).scrollIntoView(true); + }, + + markNext: function() { + if(this.index < this.entryCount-1) this.index++ + else this.index = 0; + this.getEntry(this.index).scrollIntoView(false); + }, + + getEntry: function(index) { + return this.update.firstChild.childNodes[index]; + }, + + getCurrentEntry: function() { + return this.getEntry(this.index); + }, + + selectEntry: function() { + this.active = false; + this.updateElement(this.getCurrentEntry()); + }, + + updateElement: function(selectedElement) { + if (this.options.updateElement) { + this.options.updateElement(selectedElement); + return; + } + var value = ''; + if (this.options.select) { + var nodes = document.getElementsByClassName(this.options.select, selectedElement) || []; + if(nodes.length>0) value = Element.collectTextNodes(nodes[0], this.options.select); + } else + value = Element.collectTextNodesIgnoreClass(selectedElement, 'informal'); + + var lastTokenPos = this.findLastToken(); + if (lastTokenPos != -1) { + var newValue = this.element.value.substr(0, lastTokenPos + 1); + var whitespace = this.element.value.substr(lastTokenPos + 1).match(/^\s+/); + if (whitespace) + newValue += whitespace[0]; + this.element.value = newValue + value; + } else { + this.element.value = value; + } + this.element.focus(); + + if (this.options.afterUpdateElement) + this.options.afterUpdateElement(this.element, selectedElement); + }, + + updateChoices: function(choices) { + if(!this.changed && this.hasFocus) { + this.update.innerHTML = choices; + Element.cleanWhitespace(this.update); + Element.cleanWhitespace(this.update.down()); + + if(this.update.firstChild && this.update.down().childNodes) { + this.entryCount = + this.update.down().childNodes.length; + for (var i = 0; i < this.entryCount; i++) { + var entry = this.getEntry(i); + entry.autocompleteIndex = i; + this.addObservers(entry); + } + } else { + this.entryCount = 0; + } + + this.stopIndicator(); + this.index = 0; + + if(this.entryCount==1 && this.options.autoSelect) { + this.selectEntry(); + this.hide(); + } else { + this.render(); + } + } + }, + + addObservers: function(element) { + Event.observe(element, "mouseover", this.onHover.bindAsEventListener(this)); + Event.observe(element, "click", this.onClick.bindAsEventListener(this)); + }, + + onObserverEvent: function() { + this.changed = false; + if(this.getToken().length>=this.options.minChars) { + this.startIndicator(); + this.getUpdatedChoices(); + } else { + this.active = false; + this.hide(); + } + }, + + getToken: function() { + var tokenPos = this.findLastToken(); + if (tokenPos != -1) + var ret = this.element.value.substr(tokenPos + 1).replace(/^\s+/,'').replace(/\s+$/,''); + else + var ret = this.element.value; + + return /\n/.test(ret) ? '' : ret; + }, + + findLastToken: function() { + var lastTokenPos = -1; + + for (var i=0; i lastTokenPos) + lastTokenPos = thisTokenPos; + } + return lastTokenPos; + } +} + +Ajax.Autocompleter = Class.create(); +Object.extend(Object.extend(Ajax.Autocompleter.prototype, Autocompleter.Base.prototype), { + initialize: function(element, update, url, options) { + this.baseInitialize(element, update, options); + this.options.asynchronous = true; + this.options.onComplete = this.onComplete.bind(this); + this.options.defaultParams = this.options.parameters || null; + this.url = url; + }, + + getUpdatedChoices: function() { + entry = encodeURIComponent(this.options.paramName) + '=' + + encodeURIComponent(this.getToken()); + + this.options.parameters = this.options.callback ? + this.options.callback(this.element, entry) : entry; + + if(this.options.defaultParams) + this.options.parameters += '&' + this.options.defaultParams; + + new Ajax.Request(this.url, this.options); + }, + + onComplete: function(request) { + this.updateChoices(request.responseText); + } + +}); + +// The local array autocompleter. Used when you'd prefer to +// inject an array of autocompletion options into the page, rather +// than sending out Ajax queries, which can be quite slow sometimes. +// +// The constructor takes four parameters. The first two are, as usual, +// the id of the monitored textbox, and id of the autocompletion menu. +// The third is the array you want to autocomplete from, and the fourth +// is the options block. +// +// Extra local autocompletion options: +// - choices - How many autocompletion choices to offer +// +// - partialSearch - If false, the autocompleter will match entered +// text only at the beginning of strings in the +// autocomplete array. Defaults to true, which will +// match text at the beginning of any *word* in the +// strings in the autocomplete array. If you want to +// search anywhere in the string, additionally set +// the option fullSearch to true (default: off). +// +// - fullSsearch - Search anywhere in autocomplete array strings. +// +// - partialChars - How many characters to enter before triggering +// a partial match (unlike minChars, which defines +// how many characters are required to do any match +// at all). Defaults to 2. +// +// - ignoreCase - Whether to ignore case when autocompleting. +// Defaults to true. +// +// It's possible to pass in a custom function as the 'selector' +// option, if you prefer to write your own autocompletion logic. +// In that case, the other options above will not apply unless +// you support them. + +Autocompleter.Local = Class.create(); +Autocompleter.Local.prototype = Object.extend(new Autocompleter.Base(), { + initialize: function(element, update, array, options) { + this.baseInitialize(element, update, options); + this.options.array = array; + }, + + getUpdatedChoices: function() { + this.updateChoices(this.options.selector(this)); + }, + + setOptions: function(options) { + this.options = Object.extend({ + choices: 10, + partialSearch: true, + partialChars: 2, + ignoreCase: true, + fullSearch: false, + selector: function(instance) { + var ret = []; // Beginning matches + var partial = []; // Inside matches + var entry = instance.getToken(); + var count = 0; + + for (var i = 0; i < instance.options.array.length && + ret.length < instance.options.choices ; i++) { + + var elem = instance.options.array[i]; + var foundPos = instance.options.ignoreCase ? + elem.toLowerCase().indexOf(entry.toLowerCase()) : + elem.indexOf(entry); + + while (foundPos != -1) { + if (foundPos == 0 && elem.length != entry.length) { + ret.push("
  • " + elem.substr(0, entry.length) + "" + + elem.substr(entry.length) + "
  • "); + break; + } else if (entry.length >= instance.options.partialChars && + instance.options.partialSearch && foundPos != -1) { + if (instance.options.fullSearch || /\s/.test(elem.substr(foundPos-1,1))) { + partial.push("
  • " + elem.substr(0, foundPos) + "" + + elem.substr(foundPos, entry.length) + "" + elem.substr( + foundPos + entry.length) + "
  • "); + break; + } + } + + foundPos = instance.options.ignoreCase ? + elem.toLowerCase().indexOf(entry.toLowerCase(), foundPos + 1) : + elem.indexOf(entry, foundPos + 1); + + } + } + if (partial.length) + ret = ret.concat(partial.slice(0, instance.options.choices - ret.length)) + return "
      " + ret.join('') + "
    "; + } + }, options || {}); + } +}); + +// AJAX in-place editor +// +// see documentation on http://wiki.script.aculo.us/scriptaculous/show/Ajax.InPlaceEditor + +// Use this if you notice weird scrolling problems on some browsers, +// the DOM might be a bit confused when this gets called so do this +// waits 1 ms (with setTimeout) until it does the activation +Field.scrollFreeActivate = function(field) { + setTimeout(function() { + Field.activate(field); + }, 1); +} + +Ajax.InPlaceEditor = Class.create(); +Ajax.InPlaceEditor.defaultHighlightColor = "#FFFF99"; +Ajax.InPlaceEditor.prototype = { + initialize: function(element, url, options) { + this.url = url; + this.element = $(element); + + this.options = Object.extend({ + paramName: "value", + okButton: true, + okText: "ok", + cancelLink: true, + cancelText: "cancel", + savingText: "Saving...", + clickToEditText: "Click to edit", + okText: "ok", + rows: 1, + onComplete: function(transport, element) { + new Effect.Highlight(element, {startcolor: this.options.highlightcolor}); + }, + onFailure: function(transport) { + alert("Error communicating with the server: " + transport.responseText.stripTags()); + }, + callback: function(form) { + return Form.serialize(form); + }, + handleLineBreaks: true, + loadingText: 'Loading...', + savingClassName: 'inplaceeditor-saving', + loadingClassName: 'inplaceeditor-loading', + formClassName: 'inplaceeditor-form', + highlightcolor: Ajax.InPlaceEditor.defaultHighlightColor, + highlightendcolor: "#FFFFFF", + externalControl: null, + submitOnBlur: false, + ajaxOptions: {}, + evalScripts: false + }, options || {}); + + if(!this.options.formId && this.element.id) { + this.options.formId = this.element.id + "-inplaceeditor"; + if ($(this.options.formId)) { + // there's already a form with that name, don't specify an id + this.options.formId = null; + } + } + + if (this.options.externalControl) { + this.options.externalControl = $(this.options.externalControl); + } + + this.originalBackground = Element.getStyle(this.element, 'background-color'); + if (!this.originalBackground) { + this.originalBackground = "transparent"; + } + + this.element.title = this.options.clickToEditText; + + this.onclickListener = this.enterEditMode.bindAsEventListener(this); + this.mouseoverListener = this.enterHover.bindAsEventListener(this); + this.mouseoutListener = this.leaveHover.bindAsEventListener(this); + Event.observe(this.element, 'click', this.onclickListener); + Event.observe(this.element, 'mouseover', this.mouseoverListener); + Event.observe(this.element, 'mouseout', this.mouseoutListener); + if (this.options.externalControl) { + Event.observe(this.options.externalControl, 'click', this.onclickListener); + Event.observe(this.options.externalControl, 'mouseover', this.mouseoverListener); + Event.observe(this.options.externalControl, 'mouseout', this.mouseoutListener); + } + }, + enterEditMode: function(evt) { + if (this.saving) return; + if (this.editing) return; + this.editing = true; + this.onEnterEditMode(); + if (this.options.externalControl) { + Element.hide(this.options.externalControl); + } + Element.hide(this.element); + this.createForm(); + this.element.parentNode.insertBefore(this.form, this.element); + if (!this.options.loadTextURL) Field.scrollFreeActivate(this.editField); + // stop the event to avoid a page refresh in Safari + if (evt) { + Event.stop(evt); + } + return false; + }, + createForm: function() { + this.form = document.createElement("form"); + this.form.id = this.options.formId; + Element.addClassName(this.form, this.options.formClassName) + this.form.onsubmit = this.onSubmit.bind(this); + + this.createEditField(); + + if (this.options.textarea) { + var br = document.createElement("br"); + this.form.appendChild(br); + } + + if (this.options.okButton) { + okButton = document.createElement("input"); + okButton.type = "submit"; + okButton.value = this.options.okText; + okButton.className = 'editor_ok_button'; + this.form.appendChild(okButton); + } + + if (this.options.cancelLink) { + cancelLink = document.createElement("a"); + cancelLink.href = "#"; + cancelLink.appendChild(document.createTextNode(this.options.cancelText)); + cancelLink.onclick = this.onclickCancel.bind(this); + cancelLink.className = 'editor_cancel'; + this.form.appendChild(cancelLink); + } + }, + hasHTMLLineBreaks: function(string) { + if (!this.options.handleLineBreaks) return false; + return string.match(/
    /i); + }, + convertHTMLLineBreaks: function(string) { + return string.replace(/
    /gi, "\n").replace(//gi, "\n").replace(/<\/p>/gi, "\n").replace(/

    /gi, ""); + }, + createEditField: function() { + var text; + if(this.options.loadTextURL) { + text = this.options.loadingText; + } else { + text = this.getText(); + } + + var obj = this; + + if (this.options.rows == 1 && !this.hasHTMLLineBreaks(text)) { + this.options.textarea = false; + var textField = document.createElement("input"); + textField.obj = this; + textField.type = "text"; + textField.name = this.options.paramName; + textField.value = text; + textField.style.backgroundColor = this.options.highlightcolor; + textField.className = 'editor_field'; + var size = this.options.size || this.options.cols || 0; + if (size != 0) textField.size = size; + if (this.options.submitOnBlur) + textField.onblur = this.onSubmit.bind(this); + this.editField = textField; + } else { + this.options.textarea = true; + var textArea = document.createElement("textarea"); + textArea.obj = this; + textArea.name = this.options.paramName; + textArea.value = this.convertHTMLLineBreaks(text); + textArea.rows = this.options.rows; + textArea.cols = this.options.cols || 40; + textArea.className = 'editor_field'; + if (this.options.submitOnBlur) + textArea.onblur = this.onSubmit.bind(this); + this.editField = textArea; + } + + if(this.options.loadTextURL) { + this.loadExternalText(); + } + this.form.appendChild(this.editField); + }, + getText: function() { + return this.element.innerHTML; + }, + loadExternalText: function() { + Element.addClassName(this.form, this.options.loadingClassName); + this.editField.disabled = true; + new Ajax.Request( + this.options.loadTextURL, + Object.extend({ + asynchronous: true, + onComplete: this.onLoadedExternalText.bind(this) + }, this.options.ajaxOptions) + ); + }, + onLoadedExternalText: function(transport) { + Element.removeClassName(this.form, this.options.loadingClassName); + this.editField.disabled = false; + this.editField.value = transport.responseText.stripTags(); + Field.scrollFreeActivate(this.editField); + }, + onclickCancel: function() { + this.onComplete(); + this.leaveEditMode(); + return false; + }, + onFailure: function(transport) { + this.options.onFailure(transport); + if (this.oldInnerHTML) { + this.element.innerHTML = this.oldInnerHTML; + this.oldInnerHTML = null; + } + return false; + }, + onSubmit: function() { + // onLoading resets these so we need to save them away for the Ajax call + var form = this.form; + var value = this.editField.value; + + // do this first, sometimes the ajax call returns before we get a chance to switch on Saving... + // which means this will actually switch on Saving... *after* we've left edit mode causing Saving... + // to be displayed indefinitely + this.onLoading(); + + if (this.options.evalScripts) { + new Ajax.Request( + this.url, Object.extend({ + parameters: this.options.callback(form, value), + onComplete: this.onComplete.bind(this), + onFailure: this.onFailure.bind(this), + asynchronous:true, + evalScripts:true + }, this.options.ajaxOptions)); + } else { + new Ajax.Updater( + { success: this.element, + // don't update on failure (this could be an option) + failure: null }, + this.url, Object.extend({ + parameters: this.options.callback(form, value), + onComplete: this.onComplete.bind(this), + onFailure: this.onFailure.bind(this) + }, this.options.ajaxOptions)); + } + // stop the event to avoid a page refresh in Safari + if (arguments.length > 1) { + Event.stop(arguments[0]); + } + return false; + }, + onLoading: function() { + this.saving = true; + this.removeForm(); + this.leaveHover(); + this.showSaving(); + }, + showSaving: function() { + this.oldInnerHTML = this.element.innerHTML; + this.element.innerHTML = this.options.savingText; + Element.addClassName(this.element, this.options.savingClassName); + this.element.style.backgroundColor = this.originalBackground; + Element.show(this.element); + }, + removeForm: function() { + if(this.form) { + if (this.form.parentNode) Element.remove(this.form); + this.form = null; + } + }, + enterHover: function() { + if (this.saving) return; + this.element.style.backgroundColor = this.options.highlightcolor; + if (this.effect) { + this.effect.cancel(); + } + Element.addClassName(this.element, this.options.hoverClassName) + }, + leaveHover: function() { + if (this.options.backgroundColor) { + this.element.style.backgroundColor = this.oldBackground; + } + Element.removeClassName(this.element, this.options.hoverClassName) + if (this.saving) return; + this.effect = new Effect.Highlight(this.element, { + startcolor: this.options.highlightcolor, + endcolor: this.options.highlightendcolor, + restorecolor: this.originalBackground + }); + }, + leaveEditMode: function() { + Element.removeClassName(this.element, this.options.savingClassName); + this.removeForm(); + this.leaveHover(); + this.element.style.backgroundColor = this.originalBackground; + Element.show(this.element); + if (this.options.externalControl) { + Element.show(this.options.externalControl); + } + this.editing = false; + this.saving = false; + this.oldInnerHTML = null; + this.onLeaveEditMode(); + }, + onComplete: function(transport) { + this.leaveEditMode(); + this.options.onComplete.bind(this)(transport, this.element); + }, + onEnterEditMode: function() {}, + onLeaveEditMode: function() {}, + dispose: function() { + if (this.oldInnerHTML) { + this.element.innerHTML = this.oldInnerHTML; + } + this.leaveEditMode(); + Event.stopObserving(this.element, 'click', this.onclickListener); + Event.stopObserving(this.element, 'mouseover', this.mouseoverListener); + Event.stopObserving(this.element, 'mouseout', this.mouseoutListener); + if (this.options.externalControl) { + Event.stopObserving(this.options.externalControl, 'click', this.onclickListener); + Event.stopObserving(this.options.externalControl, 'mouseover', this.mouseoverListener); + Event.stopObserving(this.options.externalControl, 'mouseout', this.mouseoutListener); + } + } +}; + +Ajax.InPlaceCollectionEditor = Class.create(); +Object.extend(Ajax.InPlaceCollectionEditor.prototype, Ajax.InPlaceEditor.prototype); +Object.extend(Ajax.InPlaceCollectionEditor.prototype, { + createEditField: function() { + if (!this.cached_selectTag) { + var selectTag = document.createElement("select"); + var collection = this.options.collection || []; + var optionTag; + collection.each(function(e,i) { + optionTag = document.createElement("option"); + optionTag.value = (e instanceof Array) ? e[0] : e; + if((typeof this.options.value == 'undefined') && + ((e instanceof Array) ? this.element.innerHTML == e[1] : e == optionTag.value)) optionTag.selected = true; + if(this.options.value==optionTag.value) optionTag.selected = true; + optionTag.appendChild(document.createTextNode((e instanceof Array) ? e[1] : e)); + selectTag.appendChild(optionTag); + }.bind(this)); + this.cached_selectTag = selectTag; + } + + this.editField = this.cached_selectTag; + if(this.options.loadTextURL) this.loadExternalText(); + this.form.appendChild(this.editField); + this.options.callback = function(form, value) { + return "value=" + encodeURIComponent(value); + } + } +}); + +// Delayed observer, like Form.Element.Observer, +// but waits for delay after last key input +// Ideal for live-search fields + +Form.Element.DelayedObserver = Class.create(); +Form.Element.DelayedObserver.prototype = { + initialize: function(element, delay, callback) { + this.delay = delay || 0.5; + this.element = $(element); + this.callback = callback; + this.timer = null; + this.lastValue = $F(this.element); + Event.observe(this.element,'keyup',this.delayedListener.bindAsEventListener(this)); + }, + delayedListener: function(event) { + if(this.lastValue == $F(this.element)) return; + if(this.timer) clearTimeout(this.timer); + this.timer = setTimeout(this.onTimerEvent.bind(this), this.delay * 1000); + this.lastValue = $F(this.element); + }, + onTimerEvent: function() { + this.timer = null; + this.callback(this.element, $F(this.element)); + } +}; diff --git a/P5B/ruby/3dossmanno_annuaire/public/javascripts/dragdrop.js b/P5B/ruby/3dossmanno_annuaire/public/javascripts/dragdrop.js new file mode 100644 index 0000000..c71ddb8 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/javascripts/dragdrop.js @@ -0,0 +1,942 @@ +// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// (c) 2005, 2006 Sammi Williams (http://www.oriontransfer.co.nz, sammi@oriontransfer.co.nz) +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +if(typeof Effect == 'undefined') + throw("dragdrop.js requires including script.aculo.us' effects.js library"); + +var Droppables = { + drops: [], + + remove: function(element) { + this.drops = this.drops.reject(function(d) { return d.element==$(element) }); + }, + + add: function(element) { + element = $(element); + var options = Object.extend({ + greedy: true, + hoverclass: null, + tree: false + }, arguments[1] || {}); + + // cache containers + if(options.containment) { + options._containers = []; + var containment = options.containment; + if((typeof containment == 'object') && + (containment.constructor == Array)) { + containment.each( function(c) { options._containers.push($(c)) }); + } else { + options._containers.push($(containment)); + } + } + + if(options.accept) options.accept = [options.accept].flatten(); + + Element.makePositioned(element); // fix IE + options.element = element; + + this.drops.push(options); + }, + + findDeepestChild: function(drops) { + deepest = drops[0]; + + for (i = 1; i < drops.length; ++i) + if (Element.isParent(drops[i].element, deepest.element)) + deepest = drops[i]; + + return deepest; + }, + + isContained: function(element, drop) { + var containmentNode; + if(drop.tree) { + containmentNode = element.treeNode; + } else { + containmentNode = element.parentNode; + } + return drop._containers.detect(function(c) { return containmentNode == c }); + }, + + isAffected: function(point, element, drop) { + return ( + (drop.element!=element) && + ((!drop._containers) || + this.isContained(element, drop)) && + ((!drop.accept) || + (Element.classNames(element).detect( + function(v) { return drop.accept.include(v) } ) )) && + Position.within(drop.element, point[0], point[1]) ); + }, + + deactivate: function(drop) { + if(drop.hoverclass) + Element.removeClassName(drop.element, drop.hoverclass); + this.last_active = null; + }, + + activate: function(drop) { + if(drop.hoverclass) + Element.addClassName(drop.element, drop.hoverclass); + this.last_active = drop; + }, + + show: function(point, element) { + if(!this.drops.length) return; + var affected = []; + + if(this.last_active) this.deactivate(this.last_active); + this.drops.each( function(drop) { + if(Droppables.isAffected(point, element, drop)) + affected.push(drop); + }); + + if(affected.length>0) { + drop = Droppables.findDeepestChild(affected); + Position.within(drop.element, point[0], point[1]); + if(drop.onHover) + drop.onHover(element, drop.element, Position.overlap(drop.overlap, drop.element)); + + Droppables.activate(drop); + } + }, + + fire: function(event, element) { + if(!this.last_active) return; + Position.prepare(); + + if (this.isAffected([Event.pointerX(event), Event.pointerY(event)], element, this.last_active)) + if (this.last_active.onDrop) + this.last_active.onDrop(element, this.last_active.element, event); + }, + + reset: function() { + if(this.last_active) + this.deactivate(this.last_active); + } +} + +var Draggables = { + drags: [], + observers: [], + + register: function(draggable) { + if(this.drags.length == 0) { + this.eventMouseUp = this.endDrag.bindAsEventListener(this); + this.eventMouseMove = this.updateDrag.bindAsEventListener(this); + this.eventKeypress = this.keyPress.bindAsEventListener(this); + + Event.observe(document, "mouseup", this.eventMouseUp); + Event.observe(document, "mousemove", this.eventMouseMove); + Event.observe(document, "keypress", this.eventKeypress); + } + this.drags.push(draggable); + }, + + unregister: function(draggable) { + this.drags = this.drags.reject(function(d) { return d==draggable }); + if(this.drags.length == 0) { + Event.stopObserving(document, "mouseup", this.eventMouseUp); + Event.stopObserving(document, "mousemove", this.eventMouseMove); + Event.stopObserving(document, "keypress", this.eventKeypress); + } + }, + + activate: function(draggable) { + if(draggable.options.delay) { + this._timeout = setTimeout(function() { + Draggables._timeout = null; + window.focus(); + Draggables.activeDraggable = draggable; + }.bind(this), draggable.options.delay); + } else { + window.focus(); // allows keypress events if window isn't currently focused, fails for Safari + this.activeDraggable = draggable; + } + }, + + deactivate: function() { + this.activeDraggable = null; + }, + + updateDrag: function(event) { + if(!this.activeDraggable) return; + var pointer = [Event.pointerX(event), Event.pointerY(event)]; + // Mozilla-based browsers fire successive mousemove events with + // the same coordinates, prevent needless redrawing (moz bug?) + if(this._lastPointer && (this._lastPointer.inspect() == pointer.inspect())) return; + this._lastPointer = pointer; + + this.activeDraggable.updateDrag(event, pointer); + }, + + endDrag: function(event) { + if(this._timeout) { + clearTimeout(this._timeout); + this._timeout = null; + } + if(!this.activeDraggable) return; + this._lastPointer = null; + this.activeDraggable.endDrag(event); + this.activeDraggable = null; + }, + + keyPress: function(event) { + if(this.activeDraggable) + this.activeDraggable.keyPress(event); + }, + + addObserver: function(observer) { + this.observers.push(observer); + this._cacheObserverCallbacks(); + }, + + removeObserver: function(element) { // element instead of observer fixes mem leaks + this.observers = this.observers.reject( function(o) { return o.element==element }); + this._cacheObserverCallbacks(); + }, + + notify: function(eventName, draggable, event) { // 'onStart', 'onEnd', 'onDrag' + if(this[eventName+'Count'] > 0) + this.observers.each( function(o) { + if(o[eventName]) o[eventName](eventName, draggable, event); + }); + if(draggable.options[eventName]) draggable.options[eventName](draggable, event); + }, + + _cacheObserverCallbacks: function() { + ['onStart','onEnd','onDrag'].each( function(eventName) { + Draggables[eventName+'Count'] = Draggables.observers.select( + function(o) { return o[eventName]; } + ).length; + }); + } +} + +/*--------------------------------------------------------------------------*/ + +var Draggable = Class.create(); +Draggable._dragging = {}; + +Draggable.prototype = { + initialize: function(element) { + var defaults = { + handle: false, + reverteffect: function(element, top_offset, left_offset) { + var dur = Math.sqrt(Math.abs(top_offset^2)+Math.abs(left_offset^2))*0.02; + new Effect.Move(element, { x: -left_offset, y: -top_offset, duration: dur, + queue: {scope:'_draggable', position:'end'} + }); + }, + endeffect: function(element) { + var toOpacity = typeof element._opacity == 'number' ? element._opacity : 1.0; + new Effect.Opacity(element, {duration:0.2, from:0.7, to:toOpacity, + queue: {scope:'_draggable', position:'end'}, + afterFinish: function(){ + Draggable._dragging[element] = false + } + }); + }, + zindex: 1000, + revert: false, + scroll: false, + scrollSensitivity: 20, + scrollSpeed: 15, + snap: false, // false, or xy or [x,y] or function(x,y){ return [x,y] } + delay: 0 + }; + + if(!arguments[1] || typeof arguments[1].endeffect == 'undefined') + Object.extend(defaults, { + starteffect: function(element) { + element._opacity = Element.getOpacity(element); + Draggable._dragging[element] = true; + new Effect.Opacity(element, {duration:0.2, from:element._opacity, to:0.7}); + } + }); + + var options = Object.extend(defaults, arguments[1] || {}); + + this.element = $(element); + + if(options.handle && (typeof options.handle == 'string')) + this.handle = this.element.down('.'+options.handle, 0); + + if(!this.handle) this.handle = $(options.handle); + if(!this.handle) this.handle = this.element; + + if(options.scroll && !options.scroll.scrollTo && !options.scroll.outerHTML) { + options.scroll = $(options.scroll); + this._isScrollChild = Element.childOf(this.element, options.scroll); + } + + Element.makePositioned(this.element); // fix IE + + this.delta = this.currentDelta(); + this.options = options; + this.dragging = false; + + this.eventMouseDown = this.initDrag.bindAsEventListener(this); + Event.observe(this.handle, "mousedown", this.eventMouseDown); + + Draggables.register(this); + }, + + destroy: function() { + Event.stopObserving(this.handle, "mousedown", this.eventMouseDown); + Draggables.unregister(this); + }, + + currentDelta: function() { + return([ + parseInt(Element.getStyle(this.element,'left') || '0'), + parseInt(Element.getStyle(this.element,'top') || '0')]); + }, + + initDrag: function(event) { + if(typeof Draggable._dragging[this.element] != 'undefined' && + Draggable._dragging[this.element]) return; + if(Event.isLeftClick(event)) { + // abort on form elements, fixes a Firefox issue + var src = Event.element(event); + if(src.tagName && ( + src.tagName=='INPUT' || + src.tagName=='SELECT' || + src.tagName=='OPTION' || + src.tagName=='BUTTON' || + src.tagName=='TEXTAREA')) return; + + var pointer = [Event.pointerX(event), Event.pointerY(event)]; + var pos = Position.cumulativeOffset(this.element); + this.offset = [0,1].map( function(i) { return (pointer[i] - pos[i]) }); + + Draggables.activate(this); + Event.stop(event); + } + }, + + startDrag: function(event) { + this.dragging = true; + + if(this.options.zindex) { + this.originalZ = parseInt(Element.getStyle(this.element,'z-index') || 0); + this.element.style.zIndex = this.options.zindex; + } + + if(this.options.ghosting) { + this._clone = this.element.cloneNode(true); + Position.absolutize(this.element); + this.element.parentNode.insertBefore(this._clone, this.element); + } + + if(this.options.scroll) { + if (this.options.scroll == window) { + var where = this._getWindowScroll(this.options.scroll); + this.originalScrollLeft = where.left; + this.originalScrollTop = where.top; + } else { + this.originalScrollLeft = this.options.scroll.scrollLeft; + this.originalScrollTop = this.options.scroll.scrollTop; + } + } + + Draggables.notify('onStart', this, event); + + if(this.options.starteffect) this.options.starteffect(this.element); + }, + + updateDrag: function(event, pointer) { + if(!this.dragging) this.startDrag(event); + Position.prepare(); + Droppables.show(pointer, this.element); + Draggables.notify('onDrag', this, event); + + this.draw(pointer); + if(this.options.change) this.options.change(this); + + if(this.options.scroll) { + this.stopScrolling(); + + var p; + if (this.options.scroll == window) { + with(this._getWindowScroll(this.options.scroll)) { p = [ left, top, left+width, top+height ]; } + } else { + p = Position.page(this.options.scroll); + p[0] += this.options.scroll.scrollLeft + Position.deltaX; + p[1] += this.options.scroll.scrollTop + Position.deltaY; + p.push(p[0]+this.options.scroll.offsetWidth); + p.push(p[1]+this.options.scroll.offsetHeight); + } + var speed = [0,0]; + if(pointer[0] < (p[0]+this.options.scrollSensitivity)) speed[0] = pointer[0]-(p[0]+this.options.scrollSensitivity); + if(pointer[1] < (p[1]+this.options.scrollSensitivity)) speed[1] = pointer[1]-(p[1]+this.options.scrollSensitivity); + if(pointer[0] > (p[2]-this.options.scrollSensitivity)) speed[0] = pointer[0]-(p[2]-this.options.scrollSensitivity); + if(pointer[1] > (p[3]-this.options.scrollSensitivity)) speed[1] = pointer[1]-(p[3]-this.options.scrollSensitivity); + this.startScrolling(speed); + } + + // fix AppleWebKit rendering + if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0); + + Event.stop(event); + }, + + finishDrag: function(event, success) { + this.dragging = false; + + if(this.options.ghosting) { + Position.relativize(this.element); + Element.remove(this._clone); + this._clone = null; + } + + if(success) Droppables.fire(event, this.element); + Draggables.notify('onEnd', this, event); + + var revert = this.options.revert; + if(revert && typeof revert == 'function') revert = revert(this.element); + + var d = this.currentDelta(); + if(revert && this.options.reverteffect) { + this.options.reverteffect(this.element, + d[1]-this.delta[1], d[0]-this.delta[0]); + } else { + this.delta = d; + } + + if(this.options.zindex) + this.element.style.zIndex = this.originalZ; + + if(this.options.endeffect) + this.options.endeffect(this.element); + + Draggables.deactivate(this); + Droppables.reset(); + }, + + keyPress: function(event) { + if(event.keyCode!=Event.KEY_ESC) return; + this.finishDrag(event, false); + Event.stop(event); + }, + + endDrag: function(event) { + if(!this.dragging) return; + this.stopScrolling(); + this.finishDrag(event, true); + Event.stop(event); + }, + + draw: function(point) { + var pos = Position.cumulativeOffset(this.element); + if(this.options.ghosting) { + var r = Position.realOffset(this.element); + pos[0] += r[0] - Position.deltaX; pos[1] += r[1] - Position.deltaY; + } + + var d = this.currentDelta(); + pos[0] -= d[0]; pos[1] -= d[1]; + + if(this.options.scroll && (this.options.scroll != window && this._isScrollChild)) { + pos[0] -= this.options.scroll.scrollLeft-this.originalScrollLeft; + pos[1] -= this.options.scroll.scrollTop-this.originalScrollTop; + } + + var p = [0,1].map(function(i){ + return (point[i]-pos[i]-this.offset[i]) + }.bind(this)); + + if(this.options.snap) { + if(typeof this.options.snap == 'function') { + p = this.options.snap(p[0],p[1],this); + } else { + if(this.options.snap instanceof Array) { + p = p.map( function(v, i) { + return Math.round(v/this.options.snap[i])*this.options.snap[i] }.bind(this)) + } else { + p = p.map( function(v) { + return Math.round(v/this.options.snap)*this.options.snap }.bind(this)) + } + }} + + var style = this.element.style; + if((!this.options.constraint) || (this.options.constraint=='horizontal')) + style.left = p[0] + "px"; + if((!this.options.constraint) || (this.options.constraint=='vertical')) + style.top = p[1] + "px"; + + if(style.visibility=="hidden") style.visibility = ""; // fix gecko rendering + }, + + stopScrolling: function() { + if(this.scrollInterval) { + clearInterval(this.scrollInterval); + this.scrollInterval = null; + Draggables._lastScrollPointer = null; + } + }, + + startScrolling: function(speed) { + if(!(speed[0] || speed[1])) return; + this.scrollSpeed = [speed[0]*this.options.scrollSpeed,speed[1]*this.options.scrollSpeed]; + this.lastScrolled = new Date(); + this.scrollInterval = setInterval(this.scroll.bind(this), 10); + }, + + scroll: function() { + var current = new Date(); + var delta = current - this.lastScrolled; + this.lastScrolled = current; + if(this.options.scroll == window) { + with (this._getWindowScroll(this.options.scroll)) { + if (this.scrollSpeed[0] || this.scrollSpeed[1]) { + var d = delta / 1000; + this.options.scroll.scrollTo( left + d*this.scrollSpeed[0], top + d*this.scrollSpeed[1] ); + } + } + } else { + this.options.scroll.scrollLeft += this.scrollSpeed[0] * delta / 1000; + this.options.scroll.scrollTop += this.scrollSpeed[1] * delta / 1000; + } + + Position.prepare(); + Droppables.show(Draggables._lastPointer, this.element); + Draggables.notify('onDrag', this); + if (this._isScrollChild) { + Draggables._lastScrollPointer = Draggables._lastScrollPointer || $A(Draggables._lastPointer); + Draggables._lastScrollPointer[0] += this.scrollSpeed[0] * delta / 1000; + Draggables._lastScrollPointer[1] += this.scrollSpeed[1] * delta / 1000; + if (Draggables._lastScrollPointer[0] < 0) + Draggables._lastScrollPointer[0] = 0; + if (Draggables._lastScrollPointer[1] < 0) + Draggables._lastScrollPointer[1] = 0; + this.draw(Draggables._lastScrollPointer); + } + + if(this.options.change) this.options.change(this); + }, + + _getWindowScroll: function(w) { + var T, L, W, H; + with (w.document) { + if (w.document.documentElement && documentElement.scrollTop) { + T = documentElement.scrollTop; + L = documentElement.scrollLeft; + } else if (w.document.body) { + T = body.scrollTop; + L = body.scrollLeft; + } + if (w.innerWidth) { + W = w.innerWidth; + H = w.innerHeight; + } else if (w.document.documentElement && documentElement.clientWidth) { + W = documentElement.clientWidth; + H = documentElement.clientHeight; + } else { + W = body.offsetWidth; + H = body.offsetHeight + } + } + return { top: T, left: L, width: W, height: H }; + } +} + +/*--------------------------------------------------------------------------*/ + +var SortableObserver = Class.create(); +SortableObserver.prototype = { + initialize: function(element, observer) { + this.element = $(element); + this.observer = observer; + this.lastValue = Sortable.serialize(this.element); + }, + + onStart: function() { + this.lastValue = Sortable.serialize(this.element); + }, + + onEnd: function() { + Sortable.unmark(); + if(this.lastValue != Sortable.serialize(this.element)) + this.observer(this.element) + } +} + +var Sortable = { + SERIALIZE_RULE: /^[^_\-](?:[A-Za-z0-9\-\_]*)[_](.*)$/, + + sortables: {}, + + _findRootElement: function(element) { + while (element.tagName != "BODY") { + if(element.id && Sortable.sortables[element.id]) return element; + element = element.parentNode; + } + }, + + options: function(element) { + element = Sortable._findRootElement($(element)); + if(!element) return; + return Sortable.sortables[element.id]; + }, + + destroy: function(element){ + var s = Sortable.options(element); + + if(s) { + Draggables.removeObserver(s.element); + s.droppables.each(function(d){ Droppables.remove(d) }); + s.draggables.invoke('destroy'); + + delete Sortable.sortables[s.element.id]; + } + }, + + create: function(element) { + element = $(element); + var options = Object.extend({ + element: element, + tag: 'li', // assumes li children, override with tag: 'tagname' + dropOnEmpty: false, + tree: false, + treeTag: 'ul', + overlap: 'vertical', // one of 'vertical', 'horizontal' + constraint: 'vertical', // one of 'vertical', 'horizontal', false + containment: element, // also takes array of elements (or id's); or false + handle: false, // or a CSS class + only: false, + delay: 0, + hoverclass: null, + ghosting: false, + scroll: false, + scrollSensitivity: 20, + scrollSpeed: 15, + format: this.SERIALIZE_RULE, + onChange: Prototype.emptyFunction, + onUpdate: Prototype.emptyFunction + }, arguments[1] || {}); + + // clear any old sortable with same element + this.destroy(element); + + // build options for the draggables + var options_for_draggable = { + revert: true, + scroll: options.scroll, + scrollSpeed: options.scrollSpeed, + scrollSensitivity: options.scrollSensitivity, + delay: options.delay, + ghosting: options.ghosting, + constraint: options.constraint, + handle: options.handle }; + + if(options.starteffect) + options_for_draggable.starteffect = options.starteffect; + + if(options.reverteffect) + options_for_draggable.reverteffect = options.reverteffect; + else + if(options.ghosting) options_for_draggable.reverteffect = function(element) { + element.style.top = 0; + element.style.left = 0; + }; + + if(options.endeffect) + options_for_draggable.endeffect = options.endeffect; + + if(options.zindex) + options_for_draggable.zindex = options.zindex; + + // build options for the droppables + var options_for_droppable = { + overlap: options.overlap, + containment: options.containment, + tree: options.tree, + hoverclass: options.hoverclass, + onHover: Sortable.onHover + } + + var options_for_tree = { + onHover: Sortable.onEmptyHover, + overlap: options.overlap, + containment: options.containment, + hoverclass: options.hoverclass + } + + // fix for gecko engine + Element.cleanWhitespace(element); + + options.draggables = []; + options.droppables = []; + + // drop on empty handling + if(options.dropOnEmpty || options.tree) { + Droppables.add(element, options_for_tree); + options.droppables.push(element); + } + + (this.findElements(element, options) || []).each( function(e) { + // handles are per-draggable + var handle = options.handle ? + $(e).down('.'+options.handle,0) : e; + options.draggables.push( + new Draggable(e, Object.extend(options_for_draggable, { handle: handle }))); + Droppables.add(e, options_for_droppable); + if(options.tree) e.treeNode = element; + options.droppables.push(e); + }); + + if(options.tree) { + (Sortable.findTreeElements(element, options) || []).each( function(e) { + Droppables.add(e, options_for_tree); + e.treeNode = element; + options.droppables.push(e); + }); + } + + // keep reference + this.sortables[element.id] = options; + + // for onupdate + Draggables.addObserver(new SortableObserver(element, options.onUpdate)); + + }, + + // return all suitable-for-sortable elements in a guaranteed order + findElements: function(element, options) { + return Element.findChildren( + element, options.only, options.tree ? true : false, options.tag); + }, + + findTreeElements: function(element, options) { + return Element.findChildren( + element, options.only, options.tree ? true : false, options.treeTag); + }, + + onHover: function(element, dropon, overlap) { + if(Element.isParent(dropon, element)) return; + + if(overlap > .33 && overlap < .66 && Sortable.options(dropon).tree) { + return; + } else if(overlap>0.5) { + Sortable.mark(dropon, 'before'); + if(dropon.previousSibling != element) { + var oldParentNode = element.parentNode; + element.style.visibility = "hidden"; // fix gecko rendering + dropon.parentNode.insertBefore(element, dropon); + if(dropon.parentNode!=oldParentNode) + Sortable.options(oldParentNode).onChange(element); + Sortable.options(dropon.parentNode).onChange(element); + } + } else { + Sortable.mark(dropon, 'after'); + var nextElement = dropon.nextSibling || null; + if(nextElement != element) { + var oldParentNode = element.parentNode; + element.style.visibility = "hidden"; // fix gecko rendering + dropon.parentNode.insertBefore(element, nextElement); + if(dropon.parentNode!=oldParentNode) + Sortable.options(oldParentNode).onChange(element); + Sortable.options(dropon.parentNode).onChange(element); + } + } + }, + + onEmptyHover: function(element, dropon, overlap) { + var oldParentNode = element.parentNode; + var droponOptions = Sortable.options(dropon); + + if(!Element.isParent(dropon, element)) { + var index; + + var children = Sortable.findElements(dropon, {tag: droponOptions.tag, only: droponOptions.only}); + var child = null; + + if(children) { + var offset = Element.offsetSize(dropon, droponOptions.overlap) * (1.0 - overlap); + + for (index = 0; index < children.length; index += 1) { + if (offset - Element.offsetSize (children[index], droponOptions.overlap) >= 0) { + offset -= Element.offsetSize (children[index], droponOptions.overlap); + } else if (offset - (Element.offsetSize (children[index], droponOptions.overlap) / 2) >= 0) { + child = index + 1 < children.length ? children[index + 1] : null; + break; + } else { + child = children[index]; + break; + } + } + } + + dropon.insertBefore(element, child); + + Sortable.options(oldParentNode).onChange(element); + droponOptions.onChange(element); + } + }, + + unmark: function() { + if(Sortable._marker) Sortable._marker.hide(); + }, + + mark: function(dropon, position) { + // mark on ghosting only + var sortable = Sortable.options(dropon.parentNode); + if(sortable && !sortable.ghosting) return; + + if(!Sortable._marker) { + Sortable._marker = + ($('dropmarker') || Element.extend(document.createElement('DIV'))). + hide().addClassName('dropmarker').setStyle({position:'absolute'}); + document.getElementsByTagName("body").item(0).appendChild(Sortable._marker); + } + var offsets = Position.cumulativeOffset(dropon); + Sortable._marker.setStyle({left: offsets[0]+'px', top: offsets[1] + 'px'}); + + if(position=='after') + if(sortable.overlap == 'horizontal') + Sortable._marker.setStyle({left: (offsets[0]+dropon.clientWidth) + 'px'}); + else + Sortable._marker.setStyle({top: (offsets[1]+dropon.clientHeight) + 'px'}); + + Sortable._marker.show(); + }, + + _tree: function(element, options, parent) { + var children = Sortable.findElements(element, options) || []; + + for (var i = 0; i < children.length; ++i) { + var match = children[i].id.match(options.format); + + if (!match) continue; + + var child = { + id: encodeURIComponent(match ? match[1] : null), + element: element, + parent: parent, + children: [], + position: parent.children.length, + container: $(children[i]).down(options.treeTag) + } + + /* Get the element containing the children and recurse over it */ + if (child.container) + this._tree(child.container, options, child) + + parent.children.push (child); + } + + return parent; + }, + + tree: function(element) { + element = $(element); + var sortableOptions = this.options(element); + var options = Object.extend({ + tag: sortableOptions.tag, + treeTag: sortableOptions.treeTag, + only: sortableOptions.only, + name: element.id, + format: sortableOptions.format + }, arguments[1] || {}); + + var root = { + id: null, + parent: null, + children: [], + container: element, + position: 0 + } + + return Sortable._tree(element, options, root); + }, + + /* Construct a [i] index for a particular node */ + _constructIndex: function(node) { + var index = ''; + do { + if (node.id) index = '[' + node.position + ']' + index; + } while ((node = node.parent) != null); + return index; + }, + + sequence: function(element) { + element = $(element); + var options = Object.extend(this.options(element), arguments[1] || {}); + + return $(this.findElements(element, options) || []).map( function(item) { + return item.id.match(options.format) ? item.id.match(options.format)[1] : ''; + }); + }, + + setSequence: function(element, new_sequence) { + element = $(element); + var options = Object.extend(this.options(element), arguments[2] || {}); + + var nodeMap = {}; + this.findElements(element, options).each( function(n) { + if (n.id.match(options.format)) + nodeMap[n.id.match(options.format)[1]] = [n, n.parentNode]; + n.parentNode.removeChild(n); + }); + + new_sequence.each(function(ident) { + var n = nodeMap[ident]; + if (n) { + n[1].appendChild(n[0]); + delete nodeMap[ident]; + } + }); + }, + + serialize: function(element) { + element = $(element); + var options = Object.extend(Sortable.options(element), arguments[1] || {}); + var name = encodeURIComponent( + (arguments[1] && arguments[1].name) ? arguments[1].name : element.id); + + if (options.tree) { + return Sortable.tree(element, arguments[1]).children.map( function (item) { + return [name + Sortable._constructIndex(item) + "[id]=" + + encodeURIComponent(item.id)].concat(item.children.map(arguments.callee)); + }).flatten().join('&'); + } else { + return Sortable.sequence(element, arguments[1]).map( function(item) { + return name + "[]=" + encodeURIComponent(item); + }).join('&'); + } + } +} + +// Returns true if child is contained within element +Element.isParent = function(child, element) { + if (!child.parentNode || child == element) return false; + if (child.parentNode == element) return true; + return Element.isParent(child.parentNode, element); +} + +Element.findChildren = function(element, only, recursive, tagName) { + if(!element.hasChildNodes()) return null; + tagName = tagName.toUpperCase(); + if(only) only = [only].flatten(); + var elements = []; + $A(element.childNodes).each( function(e) { + if(e.tagName && e.tagName.toUpperCase()==tagName && + (!only || (Element.classNames(e).detect(function(v) { return only.include(v) })))) + elements.push(e); + if(recursive) { + var grandchildren = Element.findChildren(e, only, recursive, tagName); + if(grandchildren) elements.push(grandchildren); + } + }); + + return (elements.length>0 ? elements.flatten() : []); +} + +Element.offsetSize = function (element, type) { + return element['offset' + ((type=='vertical' || type=='height') ? 'Height' : 'Width')]; +} diff --git a/P5B/ruby/3dossmanno_annuaire/public/javascripts/effects.js b/P5B/ruby/3dossmanno_annuaire/public/javascripts/effects.js new file mode 100644 index 0000000..3b02eda --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/javascripts/effects.js @@ -0,0 +1,1088 @@ +// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// Contributors: +// Justin Palmer (http://encytemedia.com/) +// Mark Pilgrim (http://diveintomark.org/) +// Martin Bialasinki +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +// converts rgb() and #xxx to #xxxxxx format, +// returns self (or first argument) if not convertable +String.prototype.parseColor = function() { + var color = '#'; + if(this.slice(0,4) == 'rgb(') { + var cols = this.slice(4,this.length-1).split(','); + var i=0; do { color += parseInt(cols[i]).toColorPart() } while (++i<3); + } else { + if(this.slice(0,1) == '#') { + if(this.length==4) for(var i=1;i<4;i++) color += (this.charAt(i) + this.charAt(i)).toLowerCase(); + if(this.length==7) color = this.toLowerCase(); + } + } + return(color.length==7 ? color : (arguments[0] || this)); +} + +/*--------------------------------------------------------------------------*/ + +Element.collectTextNodes = function(element) { + return $A($(element).childNodes).collect( function(node) { + return (node.nodeType==3 ? node.nodeValue : + (node.hasChildNodes() ? Element.collectTextNodes(node) : '')); + }).flatten().join(''); +} + +Element.collectTextNodesIgnoreClass = function(element, className) { + return $A($(element).childNodes).collect( function(node) { + return (node.nodeType==3 ? node.nodeValue : + ((node.hasChildNodes() && !Element.hasClassName(node,className)) ? + Element.collectTextNodesIgnoreClass(node, className) : '')); + }).flatten().join(''); +} + +Element.setContentZoom = function(element, percent) { + element = $(element); + element.setStyle({fontSize: (percent/100) + 'em'}); + if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0); + return element; +} + +Element.getOpacity = function(element){ + element = $(element); + var opacity; + if (opacity = element.getStyle('opacity')) + return parseFloat(opacity); + if (opacity = (element.getStyle('filter') || '').match(/alpha\(opacity=(.*)\)/)) + if(opacity[1]) return parseFloat(opacity[1]) / 100; + return 1.0; +} + +Element.setOpacity = function(element, value){ + element= $(element); + if (value == 1){ + element.setStyle({ opacity: + (/Gecko/.test(navigator.userAgent) && !/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? + 0.999999 : 1.0 }); + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.setStyle({filter: Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'')}); + } else { + if(value < 0.00001) value = 0; + element.setStyle({opacity: value}); + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.setStyle( + { filter: element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'') + + 'alpha(opacity='+value*100+')' }); + } + return element; +} + +Element.getInlineOpacity = function(element){ + return $(element).style.opacity || ''; +} + +Element.forceRerendering = function(element) { + try { + element = $(element); + var n = document.createTextNode(' '); + element.appendChild(n); + element.removeChild(n); + } catch(e) { } +}; + +/*--------------------------------------------------------------------------*/ + +Array.prototype.call = function() { + var args = arguments; + this.each(function(f){ f.apply(this, args) }); +} + +/*--------------------------------------------------------------------------*/ + +var Effect = { + _elementDoesNotExistError: { + name: 'ElementDoesNotExistError', + message: 'The specified DOM element does not exist, but is required for this effect to operate' + }, + tagifyText: function(element) { + if(typeof Builder == 'undefined') + throw("Effect.tagifyText requires including script.aculo.us' builder.js library"); + + var tagifyStyle = 'position:relative'; + if(/MSIE/.test(navigator.userAgent) && !window.opera) tagifyStyle += ';zoom:1'; + + element = $(element); + $A(element.childNodes).each( function(child) { + if(child.nodeType==3) { + child.nodeValue.toArray().each( function(character) { + element.insertBefore( + Builder.node('span',{style: tagifyStyle}, + character == ' ' ? String.fromCharCode(160) : character), + child); + }); + Element.remove(child); + } + }); + }, + multiple: function(element, effect) { + var elements; + if(((typeof element == 'object') || + (typeof element == 'function')) && + (element.length)) + elements = element; + else + elements = $(element).childNodes; + + var options = Object.extend({ + speed: 0.1, + delay: 0.0 + }, arguments[2] || {}); + var masterDelay = options.delay; + + $A(elements).each( function(element, index) { + new effect(element, Object.extend(options, { delay: index * options.speed + masterDelay })); + }); + }, + PAIRS: { + 'slide': ['SlideDown','SlideUp'], + 'blind': ['BlindDown','BlindUp'], + 'appear': ['Appear','Fade'] + }, + toggle: function(element, effect) { + element = $(element); + effect = (effect || 'appear').toLowerCase(); + var options = Object.extend({ + queue: { position:'end', scope:(element.id || 'global'), limit: 1 } + }, arguments[2] || {}); + Effect[element.visible() ? + Effect.PAIRS[effect][1] : Effect.PAIRS[effect][0]](element, options); + } +}; + +var Effect2 = Effect; // deprecated + +/* ------------- transitions ------------- */ + +Effect.Transitions = { + linear: Prototype.K, + sinoidal: function(pos) { + return (-Math.cos(pos*Math.PI)/2) + 0.5; + }, + reverse: function(pos) { + return 1-pos; + }, + flicker: function(pos) { + return ((-Math.cos(pos*Math.PI)/4) + 0.75) + Math.random()/4; + }, + wobble: function(pos) { + return (-Math.cos(pos*Math.PI*(9*pos))/2) + 0.5; + }, + pulse: function(pos, pulses) { + pulses = pulses || 5; + return ( + Math.round((pos % (1/pulses)) * pulses) == 0 ? + ((pos * pulses * 2) - Math.floor(pos * pulses * 2)) : + 1 - ((pos * pulses * 2) - Math.floor(pos * pulses * 2)) + ); + }, + none: function(pos) { + return 0; + }, + full: function(pos) { + return 1; + } +}; + +/* ------------- core effects ------------- */ + +Effect.ScopedQueue = Class.create(); +Object.extend(Object.extend(Effect.ScopedQueue.prototype, Enumerable), { + initialize: function() { + this.effects = []; + this.interval = null; + }, + _each: function(iterator) { + this.effects._each(iterator); + }, + add: function(effect) { + var timestamp = new Date().getTime(); + + var position = (typeof effect.options.queue == 'string') ? + effect.options.queue : effect.options.queue.position; + + switch(position) { + case 'front': + // move unstarted effects after this effect + this.effects.findAll(function(e){ return e.state=='idle' }).each( function(e) { + e.startOn += effect.finishOn; + e.finishOn += effect.finishOn; + }); + break; + case 'with-last': + timestamp = this.effects.pluck('startOn').max() || timestamp; + break; + case 'end': + // start effect after last queued effect has finished + timestamp = this.effects.pluck('finishOn').max() || timestamp; + break; + } + + effect.startOn += timestamp; + effect.finishOn += timestamp; + + if(!effect.options.queue.limit || (this.effects.length < effect.options.queue.limit)) + this.effects.push(effect); + + if(!this.interval) + this.interval = setInterval(this.loop.bind(this), 40); + }, + remove: function(effect) { + this.effects = this.effects.reject(function(e) { return e==effect }); + if(this.effects.length == 0) { + clearInterval(this.interval); + this.interval = null; + } + }, + loop: function() { + var timePos = new Date().getTime(); + this.effects.invoke('loop', timePos); + } +}); + +Effect.Queues = { + instances: $H(), + get: function(queueName) { + if(typeof queueName != 'string') return queueName; + + if(!this.instances[queueName]) + this.instances[queueName] = new Effect.ScopedQueue(); + + return this.instances[queueName]; + } +} +Effect.Queue = Effect.Queues.get('global'); + +Effect.DefaultOptions = { + transition: Effect.Transitions.sinoidal, + duration: 1.0, // seconds + fps: 25.0, // max. 25fps due to Effect.Queue implementation + sync: false, // true for combining + from: 0.0, + to: 1.0, + delay: 0.0, + queue: 'parallel' +} + +Effect.Base = function() {}; +Effect.Base.prototype = { + position: null, + start: function(options) { + this.options = Object.extend(Object.extend({},Effect.DefaultOptions), options || {}); + this.currentFrame = 0; + this.state = 'idle'; + this.startOn = this.options.delay*1000; + this.finishOn = this.startOn + (this.options.duration*1000); + this.event('beforeStart'); + if(!this.options.sync) + Effect.Queues.get(typeof this.options.queue == 'string' ? + 'global' : this.options.queue.scope).add(this); + }, + loop: function(timePos) { + if(timePos >= this.startOn) { + if(timePos >= this.finishOn) { + this.render(1.0); + this.cancel(); + this.event('beforeFinish'); + if(this.finish) this.finish(); + this.event('afterFinish'); + return; + } + var pos = (timePos - this.startOn) / (this.finishOn - this.startOn); + var frame = Math.round(pos * this.options.fps * this.options.duration); + if(frame > this.currentFrame) { + this.render(pos); + this.currentFrame = frame; + } + } + }, + render: function(pos) { + if(this.state == 'idle') { + this.state = 'running'; + this.event('beforeSetup'); + if(this.setup) this.setup(); + this.event('afterSetup'); + } + if(this.state == 'running') { + if(this.options.transition) pos = this.options.transition(pos); + pos *= (this.options.to-this.options.from); + pos += this.options.from; + this.position = pos; + this.event('beforeUpdate'); + if(this.update) this.update(pos); + this.event('afterUpdate'); + } + }, + cancel: function() { + if(!this.options.sync) + Effect.Queues.get(typeof this.options.queue == 'string' ? + 'global' : this.options.queue.scope).remove(this); + this.state = 'finished'; + }, + event: function(eventName) { + if(this.options[eventName + 'Internal']) this.options[eventName + 'Internal'](this); + if(this.options[eventName]) this.options[eventName](this); + }, + inspect: function() { + return '#'; + } +} + +Effect.Parallel = Class.create(); +Object.extend(Object.extend(Effect.Parallel.prototype, Effect.Base.prototype), { + initialize: function(effects) { + this.effects = effects || []; + this.start(arguments[1]); + }, + update: function(position) { + this.effects.invoke('render', position); + }, + finish: function(position) { + this.effects.each( function(effect) { + effect.render(1.0); + effect.cancel(); + effect.event('beforeFinish'); + if(effect.finish) effect.finish(position); + effect.event('afterFinish'); + }); + } +}); + +Effect.Event = Class.create(); +Object.extend(Object.extend(Effect.Event.prototype, Effect.Base.prototype), { + initialize: function() { + var options = Object.extend({ + duration: 0 + }, arguments[0] || {}); + this.start(options); + }, + update: Prototype.emptyFunction +}); + +Effect.Opacity = Class.create(); +Object.extend(Object.extend(Effect.Opacity.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + // make this work on IE on elements without 'layout' + if(/MSIE/.test(navigator.userAgent) && !window.opera && (!this.element.currentStyle.hasLayout)) + this.element.setStyle({zoom: 1}); + var options = Object.extend({ + from: this.element.getOpacity() || 0.0, + to: 1.0 + }, arguments[1] || {}); + this.start(options); + }, + update: function(position) { + this.element.setOpacity(position); + } +}); + +Effect.Move = Class.create(); +Object.extend(Object.extend(Effect.Move.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + x: 0, + y: 0, + mode: 'relative' + }, arguments[1] || {}); + this.start(options); + }, + setup: function() { + // Bug in Opera: Opera returns the "real" position of a static element or + // relative element that does not have top/left explicitly set. + // ==> Always set top and left for position relative elements in your stylesheets + // (to 0 if you do not need them) + this.element.makePositioned(); + this.originalLeft = parseFloat(this.element.getStyle('left') || '0'); + this.originalTop = parseFloat(this.element.getStyle('top') || '0'); + if(this.options.mode == 'absolute') { + // absolute movement, so we need to calc deltaX and deltaY + this.options.x = this.options.x - this.originalLeft; + this.options.y = this.options.y - this.originalTop; + } + }, + update: function(position) { + this.element.setStyle({ + left: Math.round(this.options.x * position + this.originalLeft) + 'px', + top: Math.round(this.options.y * position + this.originalTop) + 'px' + }); + } +}); + +// for backwards compatibility +Effect.MoveBy = function(element, toTop, toLeft) { + return new Effect.Move(element, + Object.extend({ x: toLeft, y: toTop }, arguments[3] || {})); +}; + +Effect.Scale = Class.create(); +Object.extend(Object.extend(Effect.Scale.prototype, Effect.Base.prototype), { + initialize: function(element, percent) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + scaleX: true, + scaleY: true, + scaleContent: true, + scaleFromCenter: false, + scaleMode: 'box', // 'box' or 'contents' or {} with provided values + scaleFrom: 100.0, + scaleTo: percent + }, arguments[2] || {}); + this.start(options); + }, + setup: function() { + this.restoreAfterFinish = this.options.restoreAfterFinish || false; + this.elementPositioning = this.element.getStyle('position'); + + this.originalStyle = {}; + ['top','left','width','height','fontSize'].each( function(k) { + this.originalStyle[k] = this.element.style[k]; + }.bind(this)); + + this.originalTop = this.element.offsetTop; + this.originalLeft = this.element.offsetLeft; + + var fontSize = this.element.getStyle('font-size') || '100%'; + ['em','px','%','pt'].each( function(fontSizeType) { + if(fontSize.indexOf(fontSizeType)>0) { + this.fontSize = parseFloat(fontSize); + this.fontSizeType = fontSizeType; + } + }.bind(this)); + + this.factor = (this.options.scaleTo - this.options.scaleFrom)/100; + + this.dims = null; + if(this.options.scaleMode=='box') + this.dims = [this.element.offsetHeight, this.element.offsetWidth]; + if(/^content/.test(this.options.scaleMode)) + this.dims = [this.element.scrollHeight, this.element.scrollWidth]; + if(!this.dims) + this.dims = [this.options.scaleMode.originalHeight, + this.options.scaleMode.originalWidth]; + }, + update: function(position) { + var currentScale = (this.options.scaleFrom/100.0) + (this.factor * position); + if(this.options.scaleContent && this.fontSize) + this.element.setStyle({fontSize: this.fontSize * currentScale + this.fontSizeType }); + this.setDimensions(this.dims[0] * currentScale, this.dims[1] * currentScale); + }, + finish: function(position) { + if(this.restoreAfterFinish) this.element.setStyle(this.originalStyle); + }, + setDimensions: function(height, width) { + var d = {}; + if(this.options.scaleX) d.width = Math.round(width) + 'px'; + if(this.options.scaleY) d.height = Math.round(height) + 'px'; + if(this.options.scaleFromCenter) { + var topd = (height - this.dims[0])/2; + var leftd = (width - this.dims[1])/2; + if(this.elementPositioning == 'absolute') { + if(this.options.scaleY) d.top = this.originalTop-topd + 'px'; + if(this.options.scaleX) d.left = this.originalLeft-leftd + 'px'; + } else { + if(this.options.scaleY) d.top = -topd + 'px'; + if(this.options.scaleX) d.left = -leftd + 'px'; + } + } + this.element.setStyle(d); + } +}); + +Effect.Highlight = Class.create(); +Object.extend(Object.extend(Effect.Highlight.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ startcolor: '#ffff99' }, arguments[1] || {}); + this.start(options); + }, + setup: function() { + // Prevent executing on elements not in the layout flow + if(this.element.getStyle('display')=='none') { this.cancel(); return; } + // Disable background image during the effect + this.oldStyle = { + backgroundImage: this.element.getStyle('background-image') }; + this.element.setStyle({backgroundImage: 'none'}); + if(!this.options.endcolor) + this.options.endcolor = this.element.getStyle('background-color').parseColor('#ffffff'); + if(!this.options.restorecolor) + this.options.restorecolor = this.element.getStyle('background-color'); + // init color calculations + this._base = $R(0,2).map(function(i){ return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16) }.bind(this)); + this._delta = $R(0,2).map(function(i){ return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i] }.bind(this)); + }, + update: function(position) { + this.element.setStyle({backgroundColor: $R(0,2).inject('#',function(m,v,i){ + return m+(Math.round(this._base[i]+(this._delta[i]*position)).toColorPart()); }.bind(this)) }); + }, + finish: function() { + this.element.setStyle(Object.extend(this.oldStyle, { + backgroundColor: this.options.restorecolor + })); + } +}); + +Effect.ScrollTo = Class.create(); +Object.extend(Object.extend(Effect.ScrollTo.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + this.start(arguments[1] || {}); + }, + setup: function() { + Position.prepare(); + var offsets = Position.cumulativeOffset(this.element); + if(this.options.offset) offsets[1] += this.options.offset; + var max = window.innerHeight ? + window.height - window.innerHeight : + document.body.scrollHeight - + (document.documentElement.clientHeight ? + document.documentElement.clientHeight : document.body.clientHeight); + this.scrollStart = Position.deltaY; + this.delta = (offsets[1] > max ? max : offsets[1]) - this.scrollStart; + }, + update: function(position) { + Position.prepare(); + window.scrollTo(Position.deltaX, + this.scrollStart + (position*this.delta)); + } +}); + +/* ------------- combination effects ------------- */ + +Effect.Fade = function(element) { + element = $(element); + var oldOpacity = element.getInlineOpacity(); + var options = Object.extend({ + from: element.getOpacity() || 1.0, + to: 0.0, + afterFinishInternal: function(effect) { + if(effect.options.to!=0) return; + effect.element.hide().setStyle({opacity: oldOpacity}); + }}, arguments[1] || {}); + return new Effect.Opacity(element,options); +} + +Effect.Appear = function(element) { + element = $(element); + var options = Object.extend({ + from: (element.getStyle('display') == 'none' ? 0.0 : element.getOpacity() || 0.0), + to: 1.0, + // force Safari to render floated elements properly + afterFinishInternal: function(effect) { + effect.element.forceRerendering(); + }, + beforeSetup: function(effect) { + effect.element.setOpacity(effect.options.from).show(); + }}, arguments[1] || {}); + return new Effect.Opacity(element,options); +} + +Effect.Puff = function(element) { + element = $(element); + var oldStyle = { + opacity: element.getInlineOpacity(), + position: element.getStyle('position'), + top: element.style.top, + left: element.style.left, + width: element.style.width, + height: element.style.height + }; + return new Effect.Parallel( + [ new Effect.Scale(element, 200, + { sync: true, scaleFromCenter: true, scaleContent: true, restoreAfterFinish: true }), + new Effect.Opacity(element, { sync: true, to: 0.0 } ) ], + Object.extend({ duration: 1.0, + beforeSetupInternal: function(effect) { + Position.absolutize(effect.effects[0].element) + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().setStyle(oldStyle); } + }, arguments[1] || {}) + ); +} + +Effect.BlindUp = function(element) { + element = $(element); + element.makeClipping(); + return new Effect.Scale(element, 0, + Object.extend({ scaleContent: false, + scaleX: false, + restoreAfterFinish: true, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping(); + } + }, arguments[1] || {}) + ); +} + +Effect.BlindDown = function(element) { + element = $(element); + var elementDimensions = element.getDimensions(); + return new Effect.Scale(element, 100, Object.extend({ + scaleContent: false, + scaleX: false, + scaleFrom: 0, + scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width}, + restoreAfterFinish: true, + afterSetup: function(effect) { + effect.element.makeClipping().setStyle({height: '0px'}).show(); + }, + afterFinishInternal: function(effect) { + effect.element.undoClipping(); + } + }, arguments[1] || {})); +} + +Effect.SwitchOff = function(element) { + element = $(element); + var oldOpacity = element.getInlineOpacity(); + return new Effect.Appear(element, Object.extend({ + duration: 0.4, + from: 0, + transition: Effect.Transitions.flicker, + afterFinishInternal: function(effect) { + new Effect.Scale(effect.element, 1, { + duration: 0.3, scaleFromCenter: true, + scaleX: false, scaleContent: false, restoreAfterFinish: true, + beforeSetup: function(effect) { + effect.element.makePositioned().makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().undoPositioned().setStyle({opacity: oldOpacity}); + } + }) + } + }, arguments[1] || {})); +} + +Effect.DropOut = function(element) { + element = $(element); + var oldStyle = { + top: element.getStyle('top'), + left: element.getStyle('left'), + opacity: element.getInlineOpacity() }; + return new Effect.Parallel( + [ new Effect.Move(element, {x: 0, y: 100, sync: true }), + new Effect.Opacity(element, { sync: true, to: 0.0 }) ], + Object.extend( + { duration: 0.5, + beforeSetup: function(effect) { + effect.effects[0].element.makePositioned(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle); + } + }, arguments[1] || {})); +} + +Effect.Shake = function(element) { + element = $(element); + var oldStyle = { + top: element.getStyle('top'), + left: element.getStyle('left') }; + return new Effect.Move(element, + { x: 20, y: 0, duration: 0.05, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: 40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: 40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -20, y: 0, duration: 0.05, afterFinishInternal: function(effect) { + effect.element.undoPositioned().setStyle(oldStyle); + }}) }}) }}) }}) }}) }}); +} + +Effect.SlideDown = function(element) { + element = $(element).cleanWhitespace(); + // SlideDown need to have the content of the element wrapped in a container element with fixed height! + var oldInnerBottom = element.down().getStyle('bottom'); + var elementDimensions = element.getDimensions(); + return new Effect.Scale(element, 100, Object.extend({ + scaleContent: false, + scaleX: false, + scaleFrom: window.opera ? 0 : 1, + scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width}, + restoreAfterFinish: true, + afterSetup: function(effect) { + effect.element.makePositioned(); + effect.element.down().makePositioned(); + if(window.opera) effect.element.setStyle({top: ''}); + effect.element.makeClipping().setStyle({height: '0px'}).show(); + }, + afterUpdateInternal: function(effect) { + effect.element.down().setStyle({bottom: + (effect.dims[0] - effect.element.clientHeight) + 'px' }); + }, + afterFinishInternal: function(effect) { + effect.element.undoClipping().undoPositioned(); + effect.element.down().undoPositioned().setStyle({bottom: oldInnerBottom}); } + }, arguments[1] || {}) + ); +} + +Effect.SlideUp = function(element) { + element = $(element).cleanWhitespace(); + var oldInnerBottom = element.down().getStyle('bottom'); + return new Effect.Scale(element, window.opera ? 0 : 1, + Object.extend({ scaleContent: false, + scaleX: false, + scaleMode: 'box', + scaleFrom: 100, + restoreAfterFinish: true, + beforeStartInternal: function(effect) { + effect.element.makePositioned(); + effect.element.down().makePositioned(); + if(window.opera) effect.element.setStyle({top: ''}); + effect.element.makeClipping().show(); + }, + afterUpdateInternal: function(effect) { + effect.element.down().setStyle({bottom: + (effect.dims[0] - effect.element.clientHeight) + 'px' }); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().undoPositioned().setStyle({bottom: oldInnerBottom}); + effect.element.down().undoPositioned(); + } + }, arguments[1] || {}) + ); +} + +// Bug in opera makes the TD containing this element expand for a instance after finish +Effect.Squish = function(element) { + return new Effect.Scale(element, window.opera ? 1 : 0, { + restoreAfterFinish: true, + beforeSetup: function(effect) { + effect.element.makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping(); + } + }); +} + +Effect.Grow = function(element) { + element = $(element); + var options = Object.extend({ + direction: 'center', + moveTransition: Effect.Transitions.sinoidal, + scaleTransition: Effect.Transitions.sinoidal, + opacityTransition: Effect.Transitions.full + }, arguments[1] || {}); + var oldStyle = { + top: element.style.top, + left: element.style.left, + height: element.style.height, + width: element.style.width, + opacity: element.getInlineOpacity() }; + + var dims = element.getDimensions(); + var initialMoveX, initialMoveY; + var moveX, moveY; + + switch (options.direction) { + case 'top-left': + initialMoveX = initialMoveY = moveX = moveY = 0; + break; + case 'top-right': + initialMoveX = dims.width; + initialMoveY = moveY = 0; + moveX = -dims.width; + break; + case 'bottom-left': + initialMoveX = moveX = 0; + initialMoveY = dims.height; + moveY = -dims.height; + break; + case 'bottom-right': + initialMoveX = dims.width; + initialMoveY = dims.height; + moveX = -dims.width; + moveY = -dims.height; + break; + case 'center': + initialMoveX = dims.width / 2; + initialMoveY = dims.height / 2; + moveX = -dims.width / 2; + moveY = -dims.height / 2; + break; + } + + return new Effect.Move(element, { + x: initialMoveX, + y: initialMoveY, + duration: 0.01, + beforeSetup: function(effect) { + effect.element.hide().makeClipping().makePositioned(); + }, + afterFinishInternal: function(effect) { + new Effect.Parallel( + [ new Effect.Opacity(effect.element, { sync: true, to: 1.0, from: 0.0, transition: options.opacityTransition }), + new Effect.Move(effect.element, { x: moveX, y: moveY, sync: true, transition: options.moveTransition }), + new Effect.Scale(effect.element, 100, { + scaleMode: { originalHeight: dims.height, originalWidth: dims.width }, + sync: true, scaleFrom: window.opera ? 1 : 0, transition: options.scaleTransition, restoreAfterFinish: true}) + ], Object.extend({ + beforeSetup: function(effect) { + effect.effects[0].element.setStyle({height: '0px'}).show(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldStyle); + } + }, options) + ) + } + }); +} + +Effect.Shrink = function(element) { + element = $(element); + var options = Object.extend({ + direction: 'center', + moveTransition: Effect.Transitions.sinoidal, + scaleTransition: Effect.Transitions.sinoidal, + opacityTransition: Effect.Transitions.none + }, arguments[1] || {}); + var oldStyle = { + top: element.style.top, + left: element.style.left, + height: element.style.height, + width: element.style.width, + opacity: element.getInlineOpacity() }; + + var dims = element.getDimensions(); + var moveX, moveY; + + switch (options.direction) { + case 'top-left': + moveX = moveY = 0; + break; + case 'top-right': + moveX = dims.width; + moveY = 0; + break; + case 'bottom-left': + moveX = 0; + moveY = dims.height; + break; + case 'bottom-right': + moveX = dims.width; + moveY = dims.height; + break; + case 'center': + moveX = dims.width / 2; + moveY = dims.height / 2; + break; + } + + return new Effect.Parallel( + [ new Effect.Opacity(element, { sync: true, to: 0.0, from: 1.0, transition: options.opacityTransition }), + new Effect.Scale(element, window.opera ? 1 : 0, { sync: true, transition: options.scaleTransition, restoreAfterFinish: true}), + new Effect.Move(element, { x: moveX, y: moveY, sync: true, transition: options.moveTransition }) + ], Object.extend({ + beforeStartInternal: function(effect) { + effect.effects[0].element.makePositioned().makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle(oldStyle); } + }, options) + ); +} + +Effect.Pulsate = function(element) { + element = $(element); + var options = arguments[1] || {}; + var oldOpacity = element.getInlineOpacity(); + var transition = options.transition || Effect.Transitions.sinoidal; + var reverser = function(pos){ return transition(1-Effect.Transitions.pulse(pos, options.pulses)) }; + reverser.bind(transition); + return new Effect.Opacity(element, + Object.extend(Object.extend({ duration: 2.0, from: 0, + afterFinishInternal: function(effect) { effect.element.setStyle({opacity: oldOpacity}); } + }, options), {transition: reverser})); +} + +Effect.Fold = function(element) { + element = $(element); + var oldStyle = { + top: element.style.top, + left: element.style.left, + width: element.style.width, + height: element.style.height }; + element.makeClipping(); + return new Effect.Scale(element, 5, Object.extend({ + scaleContent: false, + scaleX: false, + afterFinishInternal: function(effect) { + new Effect.Scale(element, 1, { + scaleContent: false, + scaleY: false, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().setStyle(oldStyle); + } }); + }}, arguments[1] || {})); +}; + +Effect.Morph = Class.create(); +Object.extend(Object.extend(Effect.Morph.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + style: '' + }, arguments[1] || {}); + this.start(options); + }, + setup: function(){ + function parseColor(color){ + if(!color || ['rgba(0, 0, 0, 0)','transparent'].include(color)) color = '#ffffff'; + color = color.parseColor(); + return $R(0,2).map(function(i){ + return parseInt( color.slice(i*2+1,i*2+3), 16 ) + }); + } + this.transforms = this.options.style.parseStyle().map(function(property){ + var originalValue = this.element.getStyle(property[0]); + return $H({ + style: property[0], + originalValue: property[1].unit=='color' ? + parseColor(originalValue) : parseFloat(originalValue || 0), + targetValue: property[1].unit=='color' ? + parseColor(property[1].value) : property[1].value, + unit: property[1].unit + }); + }.bind(this)).reject(function(transform){ + return ( + (transform.originalValue == transform.targetValue) || + ( + transform.unit != 'color' && + (isNaN(transform.originalValue) || isNaN(transform.targetValue)) + ) + ) + }); + }, + update: function(position) { + var style = $H(), value = null; + this.transforms.each(function(transform){ + value = transform.unit=='color' ? + $R(0,2).inject('#',function(m,v,i){ + return m+(Math.round(transform.originalValue[i]+ + (transform.targetValue[i] - transform.originalValue[i])*position)).toColorPart() }) : + transform.originalValue + Math.round( + ((transform.targetValue - transform.originalValue) * position) * 1000)/1000 + transform.unit; + style[transform.style] = value; + }); + this.element.setStyle(style); + } +}); + +Effect.Transform = Class.create(); +Object.extend(Effect.Transform.prototype, { + initialize: function(tracks){ + this.tracks = []; + this.options = arguments[1] || {}; + this.addTracks(tracks); + }, + addTracks: function(tracks){ + tracks.each(function(track){ + var data = $H(track).values().first(); + this.tracks.push($H({ + ids: $H(track).keys().first(), + effect: Effect.Morph, + options: { style: data } + })); + }.bind(this)); + return this; + }, + play: function(){ + return new Effect.Parallel( + this.tracks.map(function(track){ + var elements = [$(track.ids) || $$(track.ids)].flatten(); + return elements.map(function(e){ return new track.effect(e, Object.extend({ sync:true }, track.options)) }); + }).flatten(), + this.options + ); + } +}); + +Element.CSS_PROPERTIES = ['azimuth', 'backgroundAttachment', 'backgroundColor', 'backgroundImage', + 'backgroundPosition', 'backgroundRepeat', 'borderBottomColor', 'borderBottomStyle', + 'borderBottomWidth', 'borderCollapse', 'borderLeftColor', 'borderLeftStyle', 'borderLeftWidth', + 'borderRightColor', 'borderRightStyle', 'borderRightWidth', 'borderSpacing', 'borderTopColor', + 'borderTopStyle', 'borderTopWidth', 'bottom', 'captionSide', 'clear', 'clip', 'color', 'content', + 'counterIncrement', 'counterReset', 'cssFloat', 'cueAfter', 'cueBefore', 'cursor', 'direction', + 'display', 'elevation', 'emptyCells', 'fontFamily', 'fontSize', 'fontSizeAdjust', 'fontStretch', + 'fontStyle', 'fontVariant', 'fontWeight', 'height', 'left', 'letterSpacing', 'lineHeight', + 'listStyleImage', 'listStylePosition', 'listStyleType', 'marginBottom', 'marginLeft', 'marginRight', + 'marginTop', 'markerOffset', 'marks', 'maxHeight', 'maxWidth', 'minHeight', 'minWidth', 'opacity', + 'orphans', 'outlineColor', 'outlineOffset', 'outlineStyle', 'outlineWidth', 'overflowX', 'overflowY', + 'paddingBottom', 'paddingLeft', 'paddingRight', 'paddingTop', 'page', 'pageBreakAfter', 'pageBreakBefore', + 'pageBreakInside', 'pauseAfter', 'pauseBefore', 'pitch', 'pitchRange', 'position', 'quotes', + 'richness', 'right', 'size', 'speakHeader', 'speakNumeral', 'speakPunctuation', 'speechRate', 'stress', + 'tableLayout', 'textAlign', 'textDecoration', 'textIndent', 'textShadow', 'textTransform', 'top', + 'unicodeBidi', 'verticalAlign', 'visibility', 'voiceFamily', 'volume', 'whiteSpace', 'widows', + 'width', 'wordSpacing', 'zIndex']; + +Element.CSS_LENGTH = /^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/; + +String.prototype.parseStyle = function(){ + var element = Element.extend(document.createElement('div')); + element.innerHTML = '

    '; + var style = element.down().style, styleRules = $H(); + + Element.CSS_PROPERTIES.each(function(property){ + if(style[property]) styleRules[property] = style[property]; + }); + + var result = $H(); + + styleRules.each(function(pair){ + var property = pair[0], value = pair[1], unit = null; + + if(value.parseColor('#zzzzzz') != '#zzzzzz') { + value = value.parseColor(); + unit = 'color'; + } else if(Element.CSS_LENGTH.test(value)) + var components = value.match(/^([\+\-]?[0-9\.]+)(.*)$/), + value = parseFloat(components[1]), unit = (components.length == 3) ? components[2] : null; + + result[property.underscore().dasherize()] = $H({ value:value, unit:unit }); + }.bind(this)); + + return result; +}; + +Element.morph = function(element, style) { + new Effect.Morph(element, Object.extend({ style: style }, arguments[2] || {})); + return element; +}; + +['setOpacity','getOpacity','getInlineOpacity','forceRerendering','setContentZoom', + 'collectTextNodes','collectTextNodesIgnoreClass','morph'].each( + function(f) { Element.Methods[f] = Element[f]; } +); + +Element.Methods.visualEffect = function(element, effect, options) { + s = effect.gsub(/_/, '-').camelize(); + effect_class = s.charAt(0).toUpperCase() + s.substring(1); + new Effect[effect_class](element, options); + return $(element); +}; + +Element.addMethods(); \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/public/javascripts/prototype.js b/P5B/ruby/3dossmanno_annuaire/public/javascripts/prototype.js new file mode 100644 index 0000000..5058221 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/javascripts/prototype.js @@ -0,0 +1,2515 @@ +/* Prototype JavaScript framework, version 1.5.0 + * (c) 2005-2007 Sam Stephenson + * + * Prototype is freely distributable under the terms of an MIT-style license. + * For details, see the Prototype web site: http://prototype.conio.net/ + * +/*--------------------------------------------------------------------------*/ + +var Prototype = { + Version: '1.5.0', + BrowserFeatures: { + XPath: !!document.evaluate + }, + + ScriptFragment: '(?:)((\n|\r|.)*?)(?:<\/script>)', + emptyFunction: function() {}, + K: function(x) { return x } +} + +var Class = { + create: function() { + return function() { + this.initialize.apply(this, arguments); + } + } +} + +var Abstract = new Object(); + +Object.extend = function(destination, source) { + for (var property in source) { + destination[property] = source[property]; + } + return destination; +} + +Object.extend(Object, { + inspect: function(object) { + try { + if (object === undefined) return 'undefined'; + if (object === null) return 'null'; + return object.inspect ? object.inspect() : object.toString(); + } catch (e) { + if (e instanceof RangeError) return '...'; + throw e; + } + }, + + keys: function(object) { + var keys = []; + for (var property in object) + keys.push(property); + return keys; + }, + + values: function(object) { + var values = []; + for (var property in object) + values.push(object[property]); + return values; + }, + + clone: function(object) { + return Object.extend({}, object); + } +}); + +Function.prototype.bind = function() { + var __method = this, args = $A(arguments), object = args.shift(); + return function() { + return __method.apply(object, args.concat($A(arguments))); + } +} + +Function.prototype.bindAsEventListener = function(object) { + var __method = this, args = $A(arguments), object = args.shift(); + return function(event) { + return __method.apply(object, [( event || window.event)].concat(args).concat($A(arguments))); + } +} + +Object.extend(Number.prototype, { + toColorPart: function() { + var digits = this.toString(16); + if (this < 16) return '0' + digits; + return digits; + }, + + succ: function() { + return this + 1; + }, + + times: function(iterator) { + $R(0, this, true).each(iterator); + return this; + } +}); + +var Try = { + these: function() { + var returnValue; + + for (var i = 0, length = arguments.length; i < length; i++) { + var lambda = arguments[i]; + try { + returnValue = lambda(); + break; + } catch (e) {} + } + + return returnValue; + } +} + +/*--------------------------------------------------------------------------*/ + +var PeriodicalExecuter = Class.create(); +PeriodicalExecuter.prototype = { + initialize: function(callback, frequency) { + this.callback = callback; + this.frequency = frequency; + this.currentlyExecuting = false; + + this.registerCallback(); + }, + + registerCallback: function() { + this.timer = setInterval(this.onTimerEvent.bind(this), this.frequency * 1000); + }, + + stop: function() { + if (!this.timer) return; + clearInterval(this.timer); + this.timer = null; + }, + + onTimerEvent: function() { + if (!this.currentlyExecuting) { + try { + this.currentlyExecuting = true; + this.callback(this); + } finally { + this.currentlyExecuting = false; + } + } + } +} +String.interpret = function(value){ + return value == null ? '' : String(value); +} + +Object.extend(String.prototype, { + gsub: function(pattern, replacement) { + var result = '', source = this, match; + replacement = arguments.callee.prepareReplacement(replacement); + + while (source.length > 0) { + if (match = source.match(pattern)) { + result += source.slice(0, match.index); + result += String.interpret(replacement(match)); + source = source.slice(match.index + match[0].length); + } else { + result += source, source = ''; + } + } + return result; + }, + + sub: function(pattern, replacement, count) { + replacement = this.gsub.prepareReplacement(replacement); + count = count === undefined ? 1 : count; + + return this.gsub(pattern, function(match) { + if (--count < 0) return match[0]; + return replacement(match); + }); + }, + + scan: function(pattern, iterator) { + this.gsub(pattern, iterator); + return this; + }, + + truncate: function(length, truncation) { + length = length || 30; + truncation = truncation === undefined ? '...' : truncation; + return this.length > length ? + this.slice(0, length - truncation.length) + truncation : this; + }, + + strip: function() { + return this.replace(/^\s+/, '').replace(/\s+$/, ''); + }, + + stripTags: function() { + return this.replace(/<\/?[^>]+>/gi, ''); + }, + + stripScripts: function() { + return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), ''); + }, + + extractScripts: function() { + var matchAll = new RegExp(Prototype.ScriptFragment, 'img'); + var matchOne = new RegExp(Prototype.ScriptFragment, 'im'); + return (this.match(matchAll) || []).map(function(scriptTag) { + return (scriptTag.match(matchOne) || ['', ''])[1]; + }); + }, + + evalScripts: function() { + return this.extractScripts().map(function(script) { return eval(script) }); + }, + + escapeHTML: function() { + var div = document.createElement('div'); + var text = document.createTextNode(this); + div.appendChild(text); + return div.innerHTML; + }, + + unescapeHTML: function() { + var div = document.createElement('div'); + div.innerHTML = this.stripTags(); + return div.childNodes[0] ? (div.childNodes.length > 1 ? + $A(div.childNodes).inject('',function(memo,node){ return memo+node.nodeValue }) : + div.childNodes[0].nodeValue) : ''; + }, + + toQueryParams: function(separator) { + var match = this.strip().match(/([^?#]*)(#.*)?$/); + if (!match) return {}; + + return match[1].split(separator || '&').inject({}, function(hash, pair) { + if ((pair = pair.split('='))[0]) { + var name = decodeURIComponent(pair[0]); + var value = pair[1] ? decodeURIComponent(pair[1]) : undefined; + + if (hash[name] !== undefined) { + if (hash[name].constructor != Array) + hash[name] = [hash[name]]; + if (value) hash[name].push(value); + } + else hash[name] = value; + } + return hash; + }); + }, + + toArray: function() { + return this.split(''); + }, + + succ: function() { + return this.slice(0, this.length - 1) + + String.fromCharCode(this.charCodeAt(this.length - 1) + 1); + }, + + camelize: function() { + var parts = this.split('-'), len = parts.length; + if (len == 1) return parts[0]; + + var camelized = this.charAt(0) == '-' + ? parts[0].charAt(0).toUpperCase() + parts[0].substring(1) + : parts[0]; + + for (var i = 1; i < len; i++) + camelized += parts[i].charAt(0).toUpperCase() + parts[i].substring(1); + + return camelized; + }, + + capitalize: function(){ + return this.charAt(0).toUpperCase() + this.substring(1).toLowerCase(); + }, + + underscore: function() { + return this.gsub(/::/, '/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\d])([A-Z])/,'#{1}_#{2}').gsub(/-/,'_').toLowerCase(); + }, + + dasherize: function() { + return this.gsub(/_/,'-'); + }, + + inspect: function(useDoubleQuotes) { + var escapedString = this.replace(/\\/g, '\\\\'); + if (useDoubleQuotes) + return '"' + escapedString.replace(/"/g, '\\"') + '"'; + else + return "'" + escapedString.replace(/'/g, '\\\'') + "'"; + } +}); + +String.prototype.gsub.prepareReplacement = function(replacement) { + if (typeof replacement == 'function') return replacement; + var template = new Template(replacement); + return function(match) { return template.evaluate(match) }; +} + +String.prototype.parseQuery = String.prototype.toQueryParams; + +var Template = Class.create(); +Template.Pattern = /(^|.|\r|\n)(#\{(.*?)\})/; +Template.prototype = { + initialize: function(template, pattern) { + this.template = template.toString(); + this.pattern = pattern || Template.Pattern; + }, + + evaluate: function(object) { + return this.template.gsub(this.pattern, function(match) { + var before = match[1]; + if (before == '\\') return match[2]; + return before + String.interpret(object[match[3]]); + }); + } +} + +var $break = new Object(); +var $continue = new Object(); + +var Enumerable = { + each: function(iterator) { + var index = 0; + try { + this._each(function(value) { + try { + iterator(value, index++); + } catch (e) { + if (e != $continue) throw e; + } + }); + } catch (e) { + if (e != $break) throw e; + } + return this; + }, + + eachSlice: function(number, iterator) { + var index = -number, slices = [], array = this.toArray(); + while ((index += number) < array.length) + slices.push(array.slice(index, index+number)); + return slices.map(iterator); + }, + + all: function(iterator) { + var result = true; + this.each(function(value, index) { + result = result && !!(iterator || Prototype.K)(value, index); + if (!result) throw $break; + }); + return result; + }, + + any: function(iterator) { + var result = false; + this.each(function(value, index) { + if (result = !!(iterator || Prototype.K)(value, index)) + throw $break; + }); + return result; + }, + + collect: function(iterator) { + var results = []; + this.each(function(value, index) { + results.push((iterator || Prototype.K)(value, index)); + }); + return results; + }, + + detect: function(iterator) { + var result; + this.each(function(value, index) { + if (iterator(value, index)) { + result = value; + throw $break; + } + }); + return result; + }, + + findAll: function(iterator) { + var results = []; + this.each(function(value, index) { + if (iterator(value, index)) + results.push(value); + }); + return results; + }, + + grep: function(pattern, iterator) { + var results = []; + this.each(function(value, index) { + var stringValue = value.toString(); + if (stringValue.match(pattern)) + results.push((iterator || Prototype.K)(value, index)); + }) + return results; + }, + + include: function(object) { + var found = false; + this.each(function(value) { + if (value == object) { + found = true; + throw $break; + } + }); + return found; + }, + + inGroupsOf: function(number, fillWith) { + fillWith = fillWith === undefined ? null : fillWith; + return this.eachSlice(number, function(slice) { + while(slice.length < number) slice.push(fillWith); + return slice; + }); + }, + + inject: function(memo, iterator) { + this.each(function(value, index) { + memo = iterator(memo, value, index); + }); + return memo; + }, + + invoke: function(method) { + var args = $A(arguments).slice(1); + return this.map(function(value) { + return value[method].apply(value, args); + }); + }, + + max: function(iterator) { + var result; + this.each(function(value, index) { + value = (iterator || Prototype.K)(value, index); + if (result == undefined || value >= result) + result = value; + }); + return result; + }, + + min: function(iterator) { + var result; + this.each(function(value, index) { + value = (iterator || Prototype.K)(value, index); + if (result == undefined || value < result) + result = value; + }); + return result; + }, + + partition: function(iterator) { + var trues = [], falses = []; + this.each(function(value, index) { + ((iterator || Prototype.K)(value, index) ? + trues : falses).push(value); + }); + return [trues, falses]; + }, + + pluck: function(property) { + var results = []; + this.each(function(value, index) { + results.push(value[property]); + }); + return results; + }, + + reject: function(iterator) { + var results = []; + this.each(function(value, index) { + if (!iterator(value, index)) + results.push(value); + }); + return results; + }, + + sortBy: function(iterator) { + return this.map(function(value, index) { + return {value: value, criteria: iterator(value, index)}; + }).sort(function(left, right) { + var a = left.criteria, b = right.criteria; + return a < b ? -1 : a > b ? 1 : 0; + }).pluck('value'); + }, + + toArray: function() { + return this.map(); + }, + + zip: function() { + var iterator = Prototype.K, args = $A(arguments); + if (typeof args.last() == 'function') + iterator = args.pop(); + + var collections = [this].concat(args).map($A); + return this.map(function(value, index) { + return iterator(collections.pluck(index)); + }); + }, + + size: function() { + return this.toArray().length; + }, + + inspect: function() { + return '#'; + } +} + +Object.extend(Enumerable, { + map: Enumerable.collect, + find: Enumerable.detect, + select: Enumerable.findAll, + member: Enumerable.include, + entries: Enumerable.toArray +}); +var $A = Array.from = function(iterable) { + if (!iterable) return []; + if (iterable.toArray) { + return iterable.toArray(); + } else { + var results = []; + for (var i = 0, length = iterable.length; i < length; i++) + results.push(iterable[i]); + return results; + } +} + +Object.extend(Array.prototype, Enumerable); + +if (!Array.prototype._reverse) + Array.prototype._reverse = Array.prototype.reverse; + +Object.extend(Array.prototype, { + _each: function(iterator) { + for (var i = 0, length = this.length; i < length; i++) + iterator(this[i]); + }, + + clear: function() { + this.length = 0; + return this; + }, + + first: function() { + return this[0]; + }, + + last: function() { + return this[this.length - 1]; + }, + + compact: function() { + return this.select(function(value) { + return value != null; + }); + }, + + flatten: function() { + return this.inject([], function(array, value) { + return array.concat(value && value.constructor == Array ? + value.flatten() : [value]); + }); + }, + + without: function() { + var values = $A(arguments); + return this.select(function(value) { + return !values.include(value); + }); + }, + + indexOf: function(object) { + for (var i = 0, length = this.length; i < length; i++) + if (this[i] == object) return i; + return -1; + }, + + reverse: function(inline) { + return (inline !== false ? this : this.toArray())._reverse(); + }, + + reduce: function() { + return this.length > 1 ? this : this[0]; + }, + + uniq: function() { + return this.inject([], function(array, value) { + return array.include(value) ? array : array.concat([value]); + }); + }, + + clone: function() { + return [].concat(this); + }, + + size: function() { + return this.length; + }, + + inspect: function() { + return '[' + this.map(Object.inspect).join(', ') + ']'; + } +}); + +Array.prototype.toArray = Array.prototype.clone; + +function $w(string){ + string = string.strip(); + return string ? string.split(/\s+/) : []; +} + +if(window.opera){ + Array.prototype.concat = function(){ + var array = []; + for(var i = 0, length = this.length; i < length; i++) array.push(this[i]); + for(var i = 0, length = arguments.length; i < length; i++) { + if(arguments[i].constructor == Array) { + for(var j = 0, arrayLength = arguments[i].length; j < arrayLength; j++) + array.push(arguments[i][j]); + } else { + array.push(arguments[i]); + } + } + return array; + } +} +var Hash = function(obj) { + Object.extend(this, obj || {}); +}; + +Object.extend(Hash, { + toQueryString: function(obj) { + var parts = []; + + this.prototype._each.call(obj, function(pair) { + if (!pair.key) return; + + if (pair.value && pair.value.constructor == Array) { + var values = pair.value.compact(); + if (values.length < 2) pair.value = values.reduce(); + else { + key = encodeURIComponent(pair.key); + values.each(function(value) { + value = value != undefined ? encodeURIComponent(value) : ''; + parts.push(key + '=' + encodeURIComponent(value)); + }); + return; + } + } + if (pair.value == undefined) pair[1] = ''; + parts.push(pair.map(encodeURIComponent).join('=')); + }); + + return parts.join('&'); + } +}); + +Object.extend(Hash.prototype, Enumerable); +Object.extend(Hash.prototype, { + _each: function(iterator) { + for (var key in this) { + var value = this[key]; + if (value && value == Hash.prototype[key]) continue; + + var pair = [key, value]; + pair.key = key; + pair.value = value; + iterator(pair); + } + }, + + keys: function() { + return this.pluck('key'); + }, + + values: function() { + return this.pluck('value'); + }, + + merge: function(hash) { + return $H(hash).inject(this, function(mergedHash, pair) { + mergedHash[pair.key] = pair.value; + return mergedHash; + }); + }, + + remove: function() { + var result; + for(var i = 0, length = arguments.length; i < length; i++) { + var value = this[arguments[i]]; + if (value !== undefined){ + if (result === undefined) result = value; + else { + if (result.constructor != Array) result = [result]; + result.push(value) + } + } + delete this[arguments[i]]; + } + return result; + }, + + toQueryString: function() { + return Hash.toQueryString(this); + }, + + inspect: function() { + return '#'; + } +}); + +function $H(object) { + if (object && object.constructor == Hash) return object; + return new Hash(object); +}; +ObjectRange = Class.create(); +Object.extend(ObjectRange.prototype, Enumerable); +Object.extend(ObjectRange.prototype, { + initialize: function(start, end, exclusive) { + this.start = start; + this.end = end; + this.exclusive = exclusive; + }, + + _each: function(iterator) { + var value = this.start; + while (this.include(value)) { + iterator(value); + value = value.succ(); + } + }, + + include: function(value) { + if (value < this.start) + return false; + if (this.exclusive) + return value < this.end; + return value <= this.end; + } +}); + +var $R = function(start, end, exclusive) { + return new ObjectRange(start, end, exclusive); +} + +var Ajax = { + getTransport: function() { + return Try.these( + function() {return new XMLHttpRequest()}, + function() {return new ActiveXObject('Msxml2.XMLHTTP')}, + function() {return new ActiveXObject('Microsoft.XMLHTTP')} + ) || false; + }, + + activeRequestCount: 0 +} + +Ajax.Responders = { + responders: [], + + _each: function(iterator) { + this.responders._each(iterator); + }, + + register: function(responder) { + if (!this.include(responder)) + this.responders.push(responder); + }, + + unregister: function(responder) { + this.responders = this.responders.without(responder); + }, + + dispatch: function(callback, request, transport, json) { + this.each(function(responder) { + if (typeof responder[callback] == 'function') { + try { + responder[callback].apply(responder, [request, transport, json]); + } catch (e) {} + } + }); + } +}; + +Object.extend(Ajax.Responders, Enumerable); + +Ajax.Responders.register({ + onCreate: function() { + Ajax.activeRequestCount++; + }, + onComplete: function() { + Ajax.activeRequestCount--; + } +}); + +Ajax.Base = function() {}; +Ajax.Base.prototype = { + setOptions: function(options) { + this.options = { + method: 'post', + asynchronous: true, + contentType: 'application/x-www-form-urlencoded', + encoding: 'UTF-8', + parameters: '' + } + Object.extend(this.options, options || {}); + + this.options.method = this.options.method.toLowerCase(); + if (typeof this.options.parameters == 'string') + this.options.parameters = this.options.parameters.toQueryParams(); + } +} + +Ajax.Request = Class.create(); +Ajax.Request.Events = + ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete']; + +Ajax.Request.prototype = Object.extend(new Ajax.Base(), { + _complete: false, + + initialize: function(url, options) { + this.transport = Ajax.getTransport(); + this.setOptions(options); + this.request(url); + }, + + request: function(url) { + this.url = url; + this.method = this.options.method; + var params = this.options.parameters; + + if (!['get', 'post'].include(this.method)) { + // simulate other verbs over post + params['_method'] = this.method; + this.method = 'post'; + } + + params = Hash.toQueryString(params); + if (params && /Konqueror|Safari|KHTML/.test(navigator.userAgent)) params += '&_=' + + // when GET, append parameters to URL + if (this.method == 'get' && params) + this.url += (this.url.indexOf('?') > -1 ? '&' : '?') + params; + + try { + Ajax.Responders.dispatch('onCreate', this, this.transport); + + this.transport.open(this.method.toUpperCase(), this.url, + this.options.asynchronous); + + if (this.options.asynchronous) + setTimeout(function() { this.respondToReadyState(1) }.bind(this), 10); + + this.transport.onreadystatechange = this.onStateChange.bind(this); + this.setRequestHeaders(); + + var body = this.method == 'post' ? (this.options.postBody || params) : null; + + this.transport.send(body); + + /* Force Firefox to handle ready state 4 for synchronous requests */ + if (!this.options.asynchronous && this.transport.overrideMimeType) + this.onStateChange(); + + } + catch (e) { + this.dispatchException(e); + } + }, + + onStateChange: function() { + var readyState = this.transport.readyState; + if (readyState > 1 && !((readyState == 4) && this._complete)) + this.respondToReadyState(this.transport.readyState); + }, + + setRequestHeaders: function() { + var headers = { + 'X-Requested-With': 'XMLHttpRequest', + 'X-Prototype-Version': Prototype.Version, + 'Accept': 'text/javascript, text/html, application/xml, text/xml, */*' + }; + + if (this.method == 'post') { + headers['Content-type'] = this.options.contentType + + (this.options.encoding ? '; charset=' + this.options.encoding : ''); + + /* Force "Connection: close" for older Mozilla browsers to work + * around a bug where XMLHttpRequest sends an incorrect + * Content-length header. See Mozilla Bugzilla #246651. + */ + if (this.transport.overrideMimeType && + (navigator.userAgent.match(/Gecko\/(\d{4})/) || [0,2005])[1] < 2005) + headers['Connection'] = 'close'; + } + + // user-defined headers + if (typeof this.options.requestHeaders == 'object') { + var extras = this.options.requestHeaders; + + if (typeof extras.push == 'function') + for (var i = 0, length = extras.length; i < length; i += 2) + headers[extras[i]] = extras[i+1]; + else + $H(extras).each(function(pair) { headers[pair.key] = pair.value }); + } + + for (var name in headers) + this.transport.setRequestHeader(name, headers[name]); + }, + + success: function() { + return !this.transport.status + || (this.transport.status >= 200 && this.transport.status < 300); + }, + + respondToReadyState: function(readyState) { + var state = Ajax.Request.Events[readyState]; + var transport = this.transport, json = this.evalJSON(); + + if (state == 'Complete') { + try { + this._complete = true; + (this.options['on' + this.transport.status] + || this.options['on' + (this.success() ? 'Success' : 'Failure')] + || Prototype.emptyFunction)(transport, json); + } catch (e) { + this.dispatchException(e); + } + + if ((this.getHeader('Content-type') || 'text/javascript').strip(). + match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i)) + this.evalResponse(); + } + + try { + (this.options['on' + state] || Prototype.emptyFunction)(transport, json); + Ajax.Responders.dispatch('on' + state, this, transport, json); + } catch (e) { + this.dispatchException(e); + } + + if (state == 'Complete') { + // avoid memory leak in MSIE: clean up + this.transport.onreadystatechange = Prototype.emptyFunction; + } + }, + + getHeader: function(name) { + try { + return this.transport.getResponseHeader(name); + } catch (e) { return null } + }, + + evalJSON: function() { + try { + var json = this.getHeader('X-JSON'); + return json ? eval('(' + json + ')') : null; + } catch (e) { return null } + }, + + evalResponse: function() { + try { + return eval(this.transport.responseText); + } catch (e) { + this.dispatchException(e); + } + }, + + dispatchException: function(exception) { + (this.options.onException || Prototype.emptyFunction)(this, exception); + Ajax.Responders.dispatch('onException', this, exception); + } +}); + +Ajax.Updater = Class.create(); + +Object.extend(Object.extend(Ajax.Updater.prototype, Ajax.Request.prototype), { + initialize: function(container, url, options) { + this.container = { + success: (container.success || container), + failure: (container.failure || (container.success ? null : container)) + } + + this.transport = Ajax.getTransport(); + this.setOptions(options); + + var onComplete = this.options.onComplete || Prototype.emptyFunction; + this.options.onComplete = (function(transport, param) { + this.updateContent(); + onComplete(transport, param); + }).bind(this); + + this.request(url); + }, + + updateContent: function() { + var receiver = this.container[this.success() ? 'success' : 'failure']; + var response = this.transport.responseText; + + if (!this.options.evalScripts) response = response.stripScripts(); + + if (receiver = $(receiver)) { + if (this.options.insertion) + new this.options.insertion(receiver, response); + else + receiver.update(response); + } + + if (this.success()) { + if (this.onComplete) + setTimeout(this.onComplete.bind(this), 10); + } + } +}); + +Ajax.PeriodicalUpdater = Class.create(); +Ajax.PeriodicalUpdater.prototype = Object.extend(new Ajax.Base(), { + initialize: function(container, url, options) { + this.setOptions(options); + this.onComplete = this.options.onComplete; + + this.frequency = (this.options.frequency || 2); + this.decay = (this.options.decay || 1); + + this.updater = {}; + this.container = container; + this.url = url; + + this.start(); + }, + + start: function() { + this.options.onComplete = this.updateComplete.bind(this); + this.onTimerEvent(); + }, + + stop: function() { + this.updater.options.onComplete = undefined; + clearTimeout(this.timer); + (this.onComplete || Prototype.emptyFunction).apply(this, arguments); + }, + + updateComplete: function(request) { + if (this.options.decay) { + this.decay = (request.responseText == this.lastText ? + this.decay * this.options.decay : 1); + + this.lastText = request.responseText; + } + this.timer = setTimeout(this.onTimerEvent.bind(this), + this.decay * this.frequency * 1000); + }, + + onTimerEvent: function() { + this.updater = new Ajax.Updater(this.container, this.url, this.options); + } +}); +function $(element) { + if (arguments.length > 1) { + for (var i = 0, elements = [], length = arguments.length; i < length; i++) + elements.push($(arguments[i])); + return elements; + } + if (typeof element == 'string') + element = document.getElementById(element); + return Element.extend(element); +} + +if (Prototype.BrowserFeatures.XPath) { + document._getElementsByXPath = function(expression, parentElement) { + var results = []; + var query = document.evaluate(expression, $(parentElement) || document, + null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); + for (var i = 0, length = query.snapshotLength; i < length; i++) + results.push(query.snapshotItem(i)); + return results; + }; +} + +document.getElementsByClassName = function(className, parentElement) { + if (Prototype.BrowserFeatures.XPath) { + var q = ".//*[contains(concat(' ', @class, ' '), ' " + className + " ')]"; + return document._getElementsByXPath(q, parentElement); + } else { + var children = ($(parentElement) || document.body).getElementsByTagName('*'); + var elements = [], child; + for (var i = 0, length = children.length; i < length; i++) { + child = children[i]; + if (Element.hasClassName(child, className)) + elements.push(Element.extend(child)); + } + return elements; + } +}; + +/*--------------------------------------------------------------------------*/ + +if (!window.Element) + var Element = new Object(); + +Element.extend = function(element) { + if (!element || _nativeExtensions || element.nodeType == 3) return element; + + if (!element._extended && element.tagName && element != window) { + var methods = Object.clone(Element.Methods), cache = Element.extend.cache; + + if (element.tagName == 'FORM') + Object.extend(methods, Form.Methods); + if (['INPUT', 'TEXTAREA', 'SELECT'].include(element.tagName)) + Object.extend(methods, Form.Element.Methods); + + Object.extend(methods, Element.Methods.Simulated); + + for (var property in methods) { + var value = methods[property]; + if (typeof value == 'function' && !(property in element)) + element[property] = cache.findOrStore(value); + } + } + + element._extended = true; + return element; +}; + +Element.extend.cache = { + findOrStore: function(value) { + return this[value] = this[value] || function() { + return value.apply(null, [this].concat($A(arguments))); + } + } +}; + +Element.Methods = { + visible: function(element) { + return $(element).style.display != 'none'; + }, + + toggle: function(element) { + element = $(element); + Element[Element.visible(element) ? 'hide' : 'show'](element); + return element; + }, + + hide: function(element) { + $(element).style.display = 'none'; + return element; + }, + + show: function(element) { + $(element).style.display = ''; + return element; + }, + + remove: function(element) { + element = $(element); + element.parentNode.removeChild(element); + return element; + }, + + update: function(element, html) { + html = typeof html == 'undefined' ? '' : html.toString(); + $(element).innerHTML = html.stripScripts(); + setTimeout(function() {html.evalScripts()}, 10); + return element; + }, + + replace: function(element, html) { + element = $(element); + html = typeof html == 'undefined' ? '' : html.toString(); + if (element.outerHTML) { + element.outerHTML = html.stripScripts(); + } else { + var range = element.ownerDocument.createRange(); + range.selectNodeContents(element); + element.parentNode.replaceChild( + range.createContextualFragment(html.stripScripts()), element); + } + setTimeout(function() {html.evalScripts()}, 10); + return element; + }, + + inspect: function(element) { + element = $(element); + var result = '<' + element.tagName.toLowerCase(); + $H({'id': 'id', 'className': 'class'}).each(function(pair) { + var property = pair.first(), attribute = pair.last(); + var value = (element[property] || '').toString(); + if (value) result += ' ' + attribute + '=' + value.inspect(true); + }); + return result + '>'; + }, + + recursivelyCollect: function(element, property) { + element = $(element); + var elements = []; + while (element = element[property]) + if (element.nodeType == 1) + elements.push(Element.extend(element)); + return elements; + }, + + ancestors: function(element) { + return $(element).recursivelyCollect('parentNode'); + }, + + descendants: function(element) { + return $A($(element).getElementsByTagName('*')); + }, + + immediateDescendants: function(element) { + if (!(element = $(element).firstChild)) return []; + while (element && element.nodeType != 1) element = element.nextSibling; + if (element) return [element].concat($(element).nextSiblings()); + return []; + }, + + previousSiblings: function(element) { + return $(element).recursivelyCollect('previousSibling'); + }, + + nextSiblings: function(element) { + return $(element).recursivelyCollect('nextSibling'); + }, + + siblings: function(element) { + element = $(element); + return element.previousSiblings().reverse().concat(element.nextSiblings()); + }, + + match: function(element, selector) { + if (typeof selector == 'string') + selector = new Selector(selector); + return selector.match($(element)); + }, + + up: function(element, expression, index) { + return Selector.findElement($(element).ancestors(), expression, index); + }, + + down: function(element, expression, index) { + return Selector.findElement($(element).descendants(), expression, index); + }, + + previous: function(element, expression, index) { + return Selector.findElement($(element).previousSiblings(), expression, index); + }, + + next: function(element, expression, index) { + return Selector.findElement($(element).nextSiblings(), expression, index); + }, + + getElementsBySelector: function() { + var args = $A(arguments), element = $(args.shift()); + return Selector.findChildElements(element, args); + }, + + getElementsByClassName: function(element, className) { + return document.getElementsByClassName(className, element); + }, + + readAttribute: function(element, name) { + element = $(element); + if (document.all && !window.opera) { + var t = Element._attributeTranslations; + if (t.values[name]) return t.values[name](element, name); + if (t.names[name]) name = t.names[name]; + var attribute = element.attributes[name]; + if(attribute) return attribute.nodeValue; + } + return element.getAttribute(name); + }, + + getHeight: function(element) { + return $(element).getDimensions().height; + }, + + getWidth: function(element) { + return $(element).getDimensions().width; + }, + + classNames: function(element) { + return new Element.ClassNames(element); + }, + + hasClassName: function(element, className) { + if (!(element = $(element))) return; + var elementClassName = element.className; + if (elementClassName.length == 0) return false; + if (elementClassName == className || + elementClassName.match(new RegExp("(^|\\s)" + className + "(\\s|$)"))) + return true; + return false; + }, + + addClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element).add(className); + return element; + }, + + removeClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element).remove(className); + return element; + }, + + toggleClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element)[element.hasClassName(className) ? 'remove' : 'add'](className); + return element; + }, + + observe: function() { + Event.observe.apply(Event, arguments); + return $A(arguments).first(); + }, + + stopObserving: function() { + Event.stopObserving.apply(Event, arguments); + return $A(arguments).first(); + }, + + // removes whitespace-only text node children + cleanWhitespace: function(element) { + element = $(element); + var node = element.firstChild; + while (node) { + var nextNode = node.nextSibling; + if (node.nodeType == 3 && !/\S/.test(node.nodeValue)) + element.removeChild(node); + node = nextNode; + } + return element; + }, + + empty: function(element) { + return $(element).innerHTML.match(/^\s*$/); + }, + + descendantOf: function(element, ancestor) { + element = $(element), ancestor = $(ancestor); + while (element = element.parentNode) + if (element == ancestor) return true; + return false; + }, + + scrollTo: function(element) { + element = $(element); + var pos = Position.cumulativeOffset(element); + window.scrollTo(pos[0], pos[1]); + return element; + }, + + getStyle: function(element, style) { + element = $(element); + if (['float','cssFloat'].include(style)) + style = (typeof element.style.styleFloat != 'undefined' ? 'styleFloat' : 'cssFloat'); + style = style.camelize(); + var value = element.style[style]; + if (!value) { + if (document.defaultView && document.defaultView.getComputedStyle) { + var css = document.defaultView.getComputedStyle(element, null); + value = css ? css[style] : null; + } else if (element.currentStyle) { + value = element.currentStyle[style]; + } + } + + if((value == 'auto') && ['width','height'].include(style) && (element.getStyle('display') != 'none')) + value = element['offset'+style.capitalize()] + 'px'; + + if (window.opera && ['left', 'top', 'right', 'bottom'].include(style)) + if (Element.getStyle(element, 'position') == 'static') value = 'auto'; + if(style == 'opacity') { + if(value) return parseFloat(value); + if(value = (element.getStyle('filter') || '').match(/alpha\(opacity=(.*)\)/)) + if(value[1]) return parseFloat(value[1]) / 100; + return 1.0; + } + return value == 'auto' ? null : value; + }, + + setStyle: function(element, style) { + element = $(element); + for (var name in style) { + var value = style[name]; + if(name == 'opacity') { + if (value == 1) { + value = (/Gecko/.test(navigator.userAgent) && + !/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? 0.999999 : 1.0; + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.style.filter = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,''); + } else if(value == '') { + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.style.filter = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,''); + } else { + if(value < 0.00001) value = 0; + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.style.filter = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'') + + 'alpha(opacity='+value*100+')'; + } + } else if(['float','cssFloat'].include(name)) name = (typeof element.style.styleFloat != 'undefined') ? 'styleFloat' : 'cssFloat'; + element.style[name.camelize()] = value; + } + return element; + }, + + getDimensions: function(element) { + element = $(element); + var display = $(element).getStyle('display'); + if (display != 'none' && display != null) // Safari bug + return {width: element.offsetWidth, height: element.offsetHeight}; + + // All *Width and *Height properties give 0 on elements with display none, + // so enable the element temporarily + var els = element.style; + var originalVisibility = els.visibility; + var originalPosition = els.position; + var originalDisplay = els.display; + els.visibility = 'hidden'; + els.position = 'absolute'; + els.display = 'block'; + var originalWidth = element.clientWidth; + var originalHeight = element.clientHeight; + els.display = originalDisplay; + els.position = originalPosition; + els.visibility = originalVisibility; + return {width: originalWidth, height: originalHeight}; + }, + + makePositioned: function(element) { + element = $(element); + var pos = Element.getStyle(element, 'position'); + if (pos == 'static' || !pos) { + element._madePositioned = true; + element.style.position = 'relative'; + // Opera returns the offset relative to the positioning context, when an + // element is position relative but top and left have not been defined + if (window.opera) { + element.style.top = 0; + element.style.left = 0; + } + } + return element; + }, + + undoPositioned: function(element) { + element = $(element); + if (element._madePositioned) { + element._madePositioned = undefined; + element.style.position = + element.style.top = + element.style.left = + element.style.bottom = + element.style.right = ''; + } + return element; + }, + + makeClipping: function(element) { + element = $(element); + if (element._overflow) return element; + element._overflow = element.style.overflow || 'auto'; + if ((Element.getStyle(element, 'overflow') || 'visible') != 'hidden') + element.style.overflow = 'hidden'; + return element; + }, + + undoClipping: function(element) { + element = $(element); + if (!element._overflow) return element; + element.style.overflow = element._overflow == 'auto' ? '' : element._overflow; + element._overflow = null; + return element; + } +}; + +Object.extend(Element.Methods, {childOf: Element.Methods.descendantOf}); + +Element._attributeTranslations = {}; + +Element._attributeTranslations.names = { + colspan: "colSpan", + rowspan: "rowSpan", + valign: "vAlign", + datetime: "dateTime", + accesskey: "accessKey", + tabindex: "tabIndex", + enctype: "encType", + maxlength: "maxLength", + readonly: "readOnly", + longdesc: "longDesc" +}; + +Element._attributeTranslations.values = { + _getAttr: function(element, attribute) { + return element.getAttribute(attribute, 2); + }, + + _flag: function(element, attribute) { + return $(element).hasAttribute(attribute) ? attribute : null; + }, + + style: function(element) { + return element.style.cssText.toLowerCase(); + }, + + title: function(element) { + var node = element.getAttributeNode('title'); + return node.specified ? node.nodeValue : null; + } +}; + +Object.extend(Element._attributeTranslations.values, { + href: Element._attributeTranslations.values._getAttr, + src: Element._attributeTranslations.values._getAttr, + disabled: Element._attributeTranslations.values._flag, + checked: Element._attributeTranslations.values._flag, + readonly: Element._attributeTranslations.values._flag, + multiple: Element._attributeTranslations.values._flag +}); + +Element.Methods.Simulated = { + hasAttribute: function(element, attribute) { + var t = Element._attributeTranslations; + attribute = t.names[attribute] || attribute; + return $(element).getAttributeNode(attribute).specified; + } +}; + +// IE is missing .innerHTML support for TABLE-related elements +if (document.all && !window.opera){ + Element.Methods.update = function(element, html) { + element = $(element); + html = typeof html == 'undefined' ? '' : html.toString(); + var tagName = element.tagName.toUpperCase(); + if (['THEAD','TBODY','TR','TD'].include(tagName)) { + var div = document.createElement('div'); + switch (tagName) { + case 'THEAD': + case 'TBODY': + div.innerHTML = '' + html.stripScripts() + '
    '; + depth = 2; + break; + case 'TR': + div.innerHTML = '' + html.stripScripts() + '
    '; + depth = 3; + break; + case 'TD': + div.innerHTML = '
    ' + html.stripScripts() + '
    '; + depth = 4; + } + $A(element.childNodes).each(function(node){ + element.removeChild(node) + }); + depth.times(function(){ div = div.firstChild }); + + $A(div.childNodes).each( + function(node){ element.appendChild(node) }); + } else { + element.innerHTML = html.stripScripts(); + } + setTimeout(function() {html.evalScripts()}, 10); + return element; + } +}; + +Object.extend(Element, Element.Methods); + +var _nativeExtensions = false; + +if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)) + ['', 'Form', 'Input', 'TextArea', 'Select'].each(function(tag) { + var className = 'HTML' + tag + 'Element'; + if(window[className]) return; + var klass = window[className] = {}; + klass.prototype = document.createElement(tag ? tag.toLowerCase() : 'div').__proto__; + }); + +Element.addMethods = function(methods) { + Object.extend(Element.Methods, methods || {}); + + function copy(methods, destination, onlyIfAbsent) { + onlyIfAbsent = onlyIfAbsent || false; + var cache = Element.extend.cache; + for (var property in methods) { + var value = methods[property]; + if (!onlyIfAbsent || !(property in destination)) + destination[property] = cache.findOrStore(value); + } + } + + if (typeof HTMLElement != 'undefined') { + copy(Element.Methods, HTMLElement.prototype); + copy(Element.Methods.Simulated, HTMLElement.prototype, true); + copy(Form.Methods, HTMLFormElement.prototype); + [HTMLInputElement, HTMLTextAreaElement, HTMLSelectElement].each(function(klass) { + copy(Form.Element.Methods, klass.prototype); + }); + _nativeExtensions = true; + } +} + +var Toggle = new Object(); +Toggle.display = Element.toggle; + +/*--------------------------------------------------------------------------*/ + +Abstract.Insertion = function(adjacency) { + this.adjacency = adjacency; +} + +Abstract.Insertion.prototype = { + initialize: function(element, content) { + this.element = $(element); + this.content = content.stripScripts(); + + if (this.adjacency && this.element.insertAdjacentHTML) { + try { + this.element.insertAdjacentHTML(this.adjacency, this.content); + } catch (e) { + var tagName = this.element.tagName.toUpperCase(); + if (['TBODY', 'TR'].include(tagName)) { + this.insertContent(this.contentFromAnonymousTable()); + } else { + throw e; + } + } + } else { + this.range = this.element.ownerDocument.createRange(); + if (this.initializeRange) this.initializeRange(); + this.insertContent([this.range.createContextualFragment(this.content)]); + } + + setTimeout(function() {content.evalScripts()}, 10); + }, + + contentFromAnonymousTable: function() { + var div = document.createElement('div'); + div.innerHTML = '' + this.content + '
    '; + return $A(div.childNodes[0].childNodes[0].childNodes); + } +} + +var Insertion = new Object(); + +Insertion.Before = Class.create(); +Insertion.Before.prototype = Object.extend(new Abstract.Insertion('beforeBegin'), { + initializeRange: function() { + this.range.setStartBefore(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.parentNode.insertBefore(fragment, this.element); + }).bind(this)); + } +}); + +Insertion.Top = Class.create(); +Insertion.Top.prototype = Object.extend(new Abstract.Insertion('afterBegin'), { + initializeRange: function() { + this.range.selectNodeContents(this.element); + this.range.collapse(true); + }, + + insertContent: function(fragments) { + fragments.reverse(false).each((function(fragment) { + this.element.insertBefore(fragment, this.element.firstChild); + }).bind(this)); + } +}); + +Insertion.Bottom = Class.create(); +Insertion.Bottom.prototype = Object.extend(new Abstract.Insertion('beforeEnd'), { + initializeRange: function() { + this.range.selectNodeContents(this.element); + this.range.collapse(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.appendChild(fragment); + }).bind(this)); + } +}); + +Insertion.After = Class.create(); +Insertion.After.prototype = Object.extend(new Abstract.Insertion('afterEnd'), { + initializeRange: function() { + this.range.setStartAfter(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.parentNode.insertBefore(fragment, + this.element.nextSibling); + }).bind(this)); + } +}); + +/*--------------------------------------------------------------------------*/ + +Element.ClassNames = Class.create(); +Element.ClassNames.prototype = { + initialize: function(element) { + this.element = $(element); + }, + + _each: function(iterator) { + this.element.className.split(/\s+/).select(function(name) { + return name.length > 0; + })._each(iterator); + }, + + set: function(className) { + this.element.className = className; + }, + + add: function(classNameToAdd) { + if (this.include(classNameToAdd)) return; + this.set($A(this).concat(classNameToAdd).join(' ')); + }, + + remove: function(classNameToRemove) { + if (!this.include(classNameToRemove)) return; + this.set($A(this).without(classNameToRemove).join(' ')); + }, + + toString: function() { + return $A(this).join(' '); + } +}; + +Object.extend(Element.ClassNames.prototype, Enumerable); +var Selector = Class.create(); +Selector.prototype = { + initialize: function(expression) { + this.params = {classNames: []}; + this.expression = expression.toString().strip(); + this.parseExpression(); + this.compileMatcher(); + }, + + parseExpression: function() { + function abort(message) { throw 'Parse error in selector: ' + message; } + + if (this.expression == '') abort('empty expression'); + + var params = this.params, expr = this.expression, match, modifier, clause, rest; + while (match = expr.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=)(?:"([^"]*)"|([^\]\s]*)))?\]$/i)) { + params.attributes = params.attributes || []; + params.attributes.push({name: match[2], operator: match[3], value: match[4] || match[5] || ''}); + expr = match[1]; + } + + if (expr == '*') return this.params.wildcard = true; + + while (match = expr.match(/^([^a-z0-9_-])?([a-z0-9_-]+)(.*)/i)) { + modifier = match[1], clause = match[2], rest = match[3]; + switch (modifier) { + case '#': params.id = clause; break; + case '.': params.classNames.push(clause); break; + case '': + case undefined: params.tagName = clause.toUpperCase(); break; + default: abort(expr.inspect()); + } + expr = rest; + } + + if (expr.length > 0) abort(expr.inspect()); + }, + + buildMatchExpression: function() { + var params = this.params, conditions = [], clause; + + if (params.wildcard) + conditions.push('true'); + if (clause = params.id) + conditions.push('element.readAttribute("id") == ' + clause.inspect()); + if (clause = params.tagName) + conditions.push('element.tagName.toUpperCase() == ' + clause.inspect()); + if ((clause = params.classNames).length > 0) + for (var i = 0, length = clause.length; i < length; i++) + conditions.push('element.hasClassName(' + clause[i].inspect() + ')'); + if (clause = params.attributes) { + clause.each(function(attribute) { + var value = 'element.readAttribute(' + attribute.name.inspect() + ')'; + var splitValueBy = function(delimiter) { + return value + ' && ' + value + '.split(' + delimiter.inspect() + ')'; + } + + switch (attribute.operator) { + case '=': conditions.push(value + ' == ' + attribute.value.inspect()); break; + case '~=': conditions.push(splitValueBy(' ') + '.include(' + attribute.value.inspect() + ')'); break; + case '|=': conditions.push( + splitValueBy('-') + '.first().toUpperCase() == ' + attribute.value.toUpperCase().inspect() + ); break; + case '!=': conditions.push(value + ' != ' + attribute.value.inspect()); break; + case '': + case undefined: conditions.push('element.hasAttribute(' + attribute.name.inspect() + ')'); break; + default: throw 'Unknown operator ' + attribute.operator + ' in selector'; + } + }); + } + + return conditions.join(' && '); + }, + + compileMatcher: function() { + this.match = new Function('element', 'if (!element.tagName) return false; \ + element = $(element); \ + return ' + this.buildMatchExpression()); + }, + + findElements: function(scope) { + var element; + + if (element = $(this.params.id)) + if (this.match(element)) + if (!scope || Element.childOf(element, scope)) + return [element]; + + scope = (scope || document).getElementsByTagName(this.params.tagName || '*'); + + var results = []; + for (var i = 0, length = scope.length; i < length; i++) + if (this.match(element = scope[i])) + results.push(Element.extend(element)); + + return results; + }, + + toString: function() { + return this.expression; + } +} + +Object.extend(Selector, { + matchElements: function(elements, expression) { + var selector = new Selector(expression); + return elements.select(selector.match.bind(selector)).map(Element.extend); + }, + + findElement: function(elements, expression, index) { + if (typeof expression == 'number') index = expression, expression = false; + return Selector.matchElements(elements, expression || '*')[index || 0]; + }, + + findChildElements: function(element, expressions) { + return expressions.map(function(expression) { + return expression.match(/[^\s"]+(?:"[^"]*"[^\s"]+)*/g).inject([null], function(results, expr) { + var selector = new Selector(expr); + return results.inject([], function(elements, result) { + return elements.concat(selector.findElements(result || element)); + }); + }); + }).flatten(); + } +}); + +function $$() { + return Selector.findChildElements(document, $A(arguments)); +} +var Form = { + reset: function(form) { + $(form).reset(); + return form; + }, + + serializeElements: function(elements, getHash) { + var data = elements.inject({}, function(result, element) { + if (!element.disabled && element.name) { + var key = element.name, value = $(element).getValue(); + if (value != undefined) { + if (result[key]) { + if (result[key].constructor != Array) result[key] = [result[key]]; + result[key].push(value); + } + else result[key] = value; + } + } + return result; + }); + + return getHash ? data : Hash.toQueryString(data); + } +}; + +Form.Methods = { + serialize: function(form, getHash) { + return Form.serializeElements(Form.getElements(form), getHash); + }, + + getElements: function(form) { + return $A($(form).getElementsByTagName('*')).inject([], + function(elements, child) { + if (Form.Element.Serializers[child.tagName.toLowerCase()]) + elements.push(Element.extend(child)); + return elements; + } + ); + }, + + getInputs: function(form, typeName, name) { + form = $(form); + var inputs = form.getElementsByTagName('input'); + + if (!typeName && !name) return $A(inputs).map(Element.extend); + + for (var i = 0, matchingInputs = [], length = inputs.length; i < length; i++) { + var input = inputs[i]; + if ((typeName && input.type != typeName) || (name && input.name != name)) + continue; + matchingInputs.push(Element.extend(input)); + } + + return matchingInputs; + }, + + disable: function(form) { + form = $(form); + form.getElements().each(function(element) { + element.blur(); + element.disabled = 'true'; + }); + return form; + }, + + enable: function(form) { + form = $(form); + form.getElements().each(function(element) { + element.disabled = ''; + }); + return form; + }, + + findFirstElement: function(form) { + return $(form).getElements().find(function(element) { + return element.type != 'hidden' && !element.disabled && + ['input', 'select', 'textarea'].include(element.tagName.toLowerCase()); + }); + }, + + focusFirstElement: function(form) { + form = $(form); + form.findFirstElement().activate(); + return form; + } +} + +Object.extend(Form, Form.Methods); + +/*--------------------------------------------------------------------------*/ + +Form.Element = { + focus: function(element) { + $(element).focus(); + return element; + }, + + select: function(element) { + $(element).select(); + return element; + } +} + +Form.Element.Methods = { + serialize: function(element) { + element = $(element); + if (!element.disabled && element.name) { + var value = element.getValue(); + if (value != undefined) { + var pair = {}; + pair[element.name] = value; + return Hash.toQueryString(pair); + } + } + return ''; + }, + + getValue: function(element) { + element = $(element); + var method = element.tagName.toLowerCase(); + return Form.Element.Serializers[method](element); + }, + + clear: function(element) { + $(element).value = ''; + return element; + }, + + present: function(element) { + return $(element).value != ''; + }, + + activate: function(element) { + element = $(element); + element.focus(); + if (element.select && ( element.tagName.toLowerCase() != 'input' || + !['button', 'reset', 'submit'].include(element.type) ) ) + element.select(); + return element; + }, + + disable: function(element) { + element = $(element); + element.disabled = true; + return element; + }, + + enable: function(element) { + element = $(element); + element.blur(); + element.disabled = false; + return element; + } +} + +Object.extend(Form.Element, Form.Element.Methods); +var Field = Form.Element; +var $F = Form.Element.getValue; + +/*--------------------------------------------------------------------------*/ + +Form.Element.Serializers = { + input: function(element) { + switch (element.type.toLowerCase()) { + case 'checkbox': + case 'radio': + return Form.Element.Serializers.inputSelector(element); + default: + return Form.Element.Serializers.textarea(element); + } + }, + + inputSelector: function(element) { + return element.checked ? element.value : null; + }, + + textarea: function(element) { + return element.value; + }, + + select: function(element) { + return this[element.type == 'select-one' ? + 'selectOne' : 'selectMany'](element); + }, + + selectOne: function(element) { + var index = element.selectedIndex; + return index >= 0 ? this.optionValue(element.options[index]) : null; + }, + + selectMany: function(element) { + var values, length = element.length; + if (!length) return null; + + for (var i = 0, values = []; i < length; i++) { + var opt = element.options[i]; + if (opt.selected) values.push(this.optionValue(opt)); + } + return values; + }, + + optionValue: function(opt) { + // extend element because hasAttribute may not be native + return Element.extend(opt).hasAttribute('value') ? opt.value : opt.text; + } +} + +/*--------------------------------------------------------------------------*/ + +Abstract.TimedObserver = function() {} +Abstract.TimedObserver.prototype = { + initialize: function(element, frequency, callback) { + this.frequency = frequency; + this.element = $(element); + this.callback = callback; + + this.lastValue = this.getValue(); + this.registerCallback(); + }, + + registerCallback: function() { + setInterval(this.onTimerEvent.bind(this), this.frequency * 1000); + }, + + onTimerEvent: function() { + var value = this.getValue(); + var changed = ('string' == typeof this.lastValue && 'string' == typeof value + ? this.lastValue != value : String(this.lastValue) != String(value)); + if (changed) { + this.callback(this.element, value); + this.lastValue = value; + } + } +} + +Form.Element.Observer = Class.create(); +Form.Element.Observer.prototype = Object.extend(new Abstract.TimedObserver(), { + getValue: function() { + return Form.Element.getValue(this.element); + } +}); + +Form.Observer = Class.create(); +Form.Observer.prototype = Object.extend(new Abstract.TimedObserver(), { + getValue: function() { + return Form.serialize(this.element); + } +}); + +/*--------------------------------------------------------------------------*/ + +Abstract.EventObserver = function() {} +Abstract.EventObserver.prototype = { + initialize: function(element, callback) { + this.element = $(element); + this.callback = callback; + + this.lastValue = this.getValue(); + if (this.element.tagName.toLowerCase() == 'form') + this.registerFormCallbacks(); + else + this.registerCallback(this.element); + }, + + onElementEvent: function() { + var value = this.getValue(); + if (this.lastValue != value) { + this.callback(this.element, value); + this.lastValue = value; + } + }, + + registerFormCallbacks: function() { + Form.getElements(this.element).each(this.registerCallback.bind(this)); + }, + + registerCallback: function(element) { + if (element.type) { + switch (element.type.toLowerCase()) { + case 'checkbox': + case 'radio': + Event.observe(element, 'click', this.onElementEvent.bind(this)); + break; + default: + Event.observe(element, 'change', this.onElementEvent.bind(this)); + break; + } + } + } +} + +Form.Element.EventObserver = Class.create(); +Form.Element.EventObserver.prototype = Object.extend(new Abstract.EventObserver(), { + getValue: function() { + return Form.Element.getValue(this.element); + } +}); + +Form.EventObserver = Class.create(); +Form.EventObserver.prototype = Object.extend(new Abstract.EventObserver(), { + getValue: function() { + return Form.serialize(this.element); + } +}); +if (!window.Event) { + var Event = new Object(); +} + +Object.extend(Event, { + KEY_BACKSPACE: 8, + KEY_TAB: 9, + KEY_RETURN: 13, + KEY_ESC: 27, + KEY_LEFT: 37, + KEY_UP: 38, + KEY_RIGHT: 39, + KEY_DOWN: 40, + KEY_DELETE: 46, + KEY_HOME: 36, + KEY_END: 35, + KEY_PAGEUP: 33, + KEY_PAGEDOWN: 34, + + element: function(event) { + return event.target || event.srcElement; + }, + + isLeftClick: function(event) { + return (((event.which) && (event.which == 1)) || + ((event.button) && (event.button == 1))); + }, + + pointerX: function(event) { + return event.pageX || (event.clientX + + (document.documentElement.scrollLeft || document.body.scrollLeft)); + }, + + pointerY: function(event) { + return event.pageY || (event.clientY + + (document.documentElement.scrollTop || document.body.scrollTop)); + }, + + stop: function(event) { + if (event.preventDefault) { + event.preventDefault(); + event.stopPropagation(); + } else { + event.returnValue = false; + event.cancelBubble = true; + } + }, + + // find the first node with the given tagName, starting from the + // node the event was triggered on; traverses the DOM upwards + findElement: function(event, tagName) { + var element = Event.element(event); + while (element.parentNode && (!element.tagName || + (element.tagName.toUpperCase() != tagName.toUpperCase()))) + element = element.parentNode; + return element; + }, + + observers: false, + + _observeAndCache: function(element, name, observer, useCapture) { + if (!this.observers) this.observers = []; + if (element.addEventListener) { + this.observers.push([element, name, observer, useCapture]); + element.addEventListener(name, observer, useCapture); + } else if (element.attachEvent) { + this.observers.push([element, name, observer, useCapture]); + element.attachEvent('on' + name, observer); + } + }, + + unloadCache: function() { + if (!Event.observers) return; + for (var i = 0, length = Event.observers.length; i < length; i++) { + Event.stopObserving.apply(this, Event.observers[i]); + Event.observers[i][0] = null; + } + Event.observers = false; + }, + + observe: function(element, name, observer, useCapture) { + element = $(element); + useCapture = useCapture || false; + + if (name == 'keypress' && + (navigator.appVersion.match(/Konqueror|Safari|KHTML/) + || element.attachEvent)) + name = 'keydown'; + + Event._observeAndCache(element, name, observer, useCapture); + }, + + stopObserving: function(element, name, observer, useCapture) { + element = $(element); + useCapture = useCapture || false; + + if (name == 'keypress' && + (navigator.appVersion.match(/Konqueror|Safari|KHTML/) + || element.detachEvent)) + name = 'keydown'; + + if (element.removeEventListener) { + element.removeEventListener(name, observer, useCapture); + } else if (element.detachEvent) { + try { + element.detachEvent('on' + name, observer); + } catch (e) {} + } + } +}); + +/* prevent memory leaks in IE */ +if (navigator.appVersion.match(/\bMSIE\b/)) + Event.observe(window, 'unload', Event.unloadCache, false); +var Position = { + // set to true if needed, warning: firefox performance problems + // NOT neeeded for page scrolling, only if draggable contained in + // scrollable elements + includeScrollOffsets: false, + + // must be called before calling withinIncludingScrolloffset, every time the + // page is scrolled + prepare: function() { + this.deltaX = window.pageXOffset + || document.documentElement.scrollLeft + || document.body.scrollLeft + || 0; + this.deltaY = window.pageYOffset + || document.documentElement.scrollTop + || document.body.scrollTop + || 0; + }, + + realOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.scrollTop || 0; + valueL += element.scrollLeft || 0; + element = element.parentNode; + } while (element); + return [valueL, valueT]; + }, + + cumulativeOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + element = element.offsetParent; + } while (element); + return [valueL, valueT]; + }, + + positionedOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + element = element.offsetParent; + if (element) { + if(element.tagName=='BODY') break; + var p = Element.getStyle(element, 'position'); + if (p == 'relative' || p == 'absolute') break; + } + } while (element); + return [valueL, valueT]; + }, + + offsetParent: function(element) { + if (element.offsetParent) return element.offsetParent; + if (element == document.body) return element; + + while ((element = element.parentNode) && element != document.body) + if (Element.getStyle(element, 'position') != 'static') + return element; + + return document.body; + }, + + // caches x/y coordinate pair to use with overlap + within: function(element, x, y) { + if (this.includeScrollOffsets) + return this.withinIncludingScrolloffsets(element, x, y); + this.xcomp = x; + this.ycomp = y; + this.offset = this.cumulativeOffset(element); + + return (y >= this.offset[1] && + y < this.offset[1] + element.offsetHeight && + x >= this.offset[0] && + x < this.offset[0] + element.offsetWidth); + }, + + withinIncludingScrolloffsets: function(element, x, y) { + var offsetcache = this.realOffset(element); + + this.xcomp = x + offsetcache[0] - this.deltaX; + this.ycomp = y + offsetcache[1] - this.deltaY; + this.offset = this.cumulativeOffset(element); + + return (this.ycomp >= this.offset[1] && + this.ycomp < this.offset[1] + element.offsetHeight && + this.xcomp >= this.offset[0] && + this.xcomp < this.offset[0] + element.offsetWidth); + }, + + // within must be called directly before + overlap: function(mode, element) { + if (!mode) return 0; + if (mode == 'vertical') + return ((this.offset[1] + element.offsetHeight) - this.ycomp) / + element.offsetHeight; + if (mode == 'horizontal') + return ((this.offset[0] + element.offsetWidth) - this.xcomp) / + element.offsetWidth; + }, + + page: function(forElement) { + var valueT = 0, valueL = 0; + + var element = forElement; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + + // Safari fix + if (element.offsetParent==document.body) + if (Element.getStyle(element,'position')=='absolute') break; + + } while (element = element.offsetParent); + + element = forElement; + do { + if (!window.opera || element.tagName=='BODY') { + valueT -= element.scrollTop || 0; + valueL -= element.scrollLeft || 0; + } + } while (element = element.parentNode); + + return [valueL, valueT]; + }, + + clone: function(source, target) { + var options = Object.extend({ + setLeft: true, + setTop: true, + setWidth: true, + setHeight: true, + offsetTop: 0, + offsetLeft: 0 + }, arguments[2] || {}) + + // find page position of source + source = $(source); + var p = Position.page(source); + + // find coordinate system to use + target = $(target); + var delta = [0, 0]; + var parent = null; + // delta [0,0] will do fine with position: fixed elements, + // position:absolute needs offsetParent deltas + if (Element.getStyle(target,'position') == 'absolute') { + parent = Position.offsetParent(target); + delta = Position.page(parent); + } + + // correct by body offsets (fixes Safari) + if (parent == document.body) { + delta[0] -= document.body.offsetLeft; + delta[1] -= document.body.offsetTop; + } + + // set position + if(options.setLeft) target.style.left = (p[0] - delta[0] + options.offsetLeft) + 'px'; + if(options.setTop) target.style.top = (p[1] - delta[1] + options.offsetTop) + 'px'; + if(options.setWidth) target.style.width = source.offsetWidth + 'px'; + if(options.setHeight) target.style.height = source.offsetHeight + 'px'; + }, + + absolutize: function(element) { + element = $(element); + if (element.style.position == 'absolute') return; + Position.prepare(); + + var offsets = Position.positionedOffset(element); + var top = offsets[1]; + var left = offsets[0]; + var width = element.clientWidth; + var height = element.clientHeight; + + element._originalLeft = left - parseFloat(element.style.left || 0); + element._originalTop = top - parseFloat(element.style.top || 0); + element._originalWidth = element.style.width; + element._originalHeight = element.style.height; + + element.style.position = 'absolute'; + element.style.top = top + 'px'; + element.style.left = left + 'px'; + element.style.width = width + 'px'; + element.style.height = height + 'px'; + }, + + relativize: function(element) { + element = $(element); + if (element.style.position == 'relative') return; + Position.prepare(); + + element.style.position = 'relative'; + var top = parseFloat(element.style.top || 0) - (element._originalTop || 0); + var left = parseFloat(element.style.left || 0) - (element._originalLeft || 0); + + element.style.top = top + 'px'; + element.style.left = left + 'px'; + element.style.height = element._originalHeight; + element.style.width = element._originalWidth; + } +} + +// Safari returns margins on body which is incorrect if the child is absolutely +// positioned. For performance reasons, redefine Position.cumulativeOffset for +// KHTML/WebKit only. +if (/Konqueror|Safari|KHTML/.test(navigator.userAgent)) { + Position.cumulativeOffset = function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + if (element.offsetParent == document.body) + if (Element.getStyle(element, 'position') == 'absolute') break; + + element = element.offsetParent; + } while (element); + + return [valueL, valueT]; + } +} + +Element.addMethods(); \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/public/robots.txt b/P5B/ruby/3dossmanno_annuaire/public/robots.txt new file mode 100644 index 0000000..4ab9e89 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/robots.txt @@ -0,0 +1 @@ +# See http://www.robotstxt.org/wc/norobots.html for documentation on how to use the robots.txt file \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/public/stylesheets/scaffold.css b/P5B/ruby/3dossmanno_annuaire/public/stylesheets/scaffold.css new file mode 100644 index 0000000..8f239a3 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/public/stylesheets/scaffold.css @@ -0,0 +1,74 @@ +body { background-color: #fff; color: #333; } + +body, p, ol, ul, td { + font-family: verdana, arial, helvetica, sans-serif; + font-size: 13px; + line-height: 18px; +} + +pre { + background-color: #eee; + padding: 10px; + font-size: 11px; +} + +a { color: #000; } +a:visited { color: #666; } +a:hover { color: #fff; background-color:#000; } + +.fieldWithErrors { + padding: 2px; + background-color: red; + display: table; +} + +#errorExplanation { + width: 400px; + border: 2px solid red; + padding: 7px; + padding-bottom: 12px; + margin-bottom: 20px; + background-color: #f0f0f0; +} + +#errorExplanation h2 { + text-align: left; + font-weight: bold; + padding: 5px 5px 5px 15px; + font-size: 12px; + margin: -7px; + background-color: #c00; + color: #fff; +} + +#errorExplanation p { + color: #333; + margin-bottom: 0; + padding: 5px; +} + +#errorExplanation ul li { + font-size: 12px; + list-style: square; +} + +div.uploadStatus { + margin: 5px; +} + +div.progressBar { + margin: 5px; +} + +div.progressBar div.border { + background-color: #fff; + border: 1px solid grey; + width: 100%; +} + +div.progressBar div.background { + background-color: #333; + height: 18px; + width: 0%; +} + diff --git a/P5B/ruby/3dossmanno_annuaire/script/about b/P5B/ruby/3dossmanno_annuaire/script/about new file mode 100644 index 0000000..7b07d46 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/about @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/about' \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/script/breakpointer b/P5B/ruby/3dossmanno_annuaire/script/breakpointer new file mode 100644 index 0000000..64af76e --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/breakpointer @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/breakpointer' \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/script/console b/P5B/ruby/3dossmanno_annuaire/script/console new file mode 100644 index 0000000..42f28f7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/console @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/console' \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/script/destroy b/P5B/ruby/3dossmanno_annuaire/script/destroy new file mode 100644 index 0000000..fa0e6fc --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/destroy @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/destroy' \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/script/generate b/P5B/ruby/3dossmanno_annuaire/script/generate new file mode 100644 index 0000000..ef976e0 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/generate @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/generate' \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/script/performance/benchmarker b/P5B/ruby/3dossmanno_annuaire/script/performance/benchmarker new file mode 100644 index 0000000..c842d35 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/performance/benchmarker @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../../config/boot' +require 'commands/performance/benchmarker' diff --git a/P5B/ruby/3dossmanno_annuaire/script/performance/profiler b/P5B/ruby/3dossmanno_annuaire/script/performance/profiler new file mode 100644 index 0000000..d855ac8 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/performance/profiler @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../../config/boot' +require 'commands/performance/profiler' diff --git a/P5B/ruby/3dossmanno_annuaire/script/plugin b/P5B/ruby/3dossmanno_annuaire/script/plugin new file mode 100644 index 0000000..26ca64c --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/plugin @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/plugin' \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/script/process/inspector b/P5B/ruby/3dossmanno_annuaire/script/process/inspector new file mode 100644 index 0000000..bf25ad8 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/process/inspector @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../../config/boot' +require 'commands/process/inspector' diff --git a/P5B/ruby/3dossmanno_annuaire/script/process/reaper b/P5B/ruby/3dossmanno_annuaire/script/process/reaper new file mode 100644 index 0000000..c77f045 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/process/reaper @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../../config/boot' +require 'commands/process/reaper' diff --git a/P5B/ruby/3dossmanno_annuaire/script/process/spawner b/P5B/ruby/3dossmanno_annuaire/script/process/spawner new file mode 100644 index 0000000..7118f39 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/process/spawner @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../../config/boot' +require 'commands/process/spawner' diff --git a/P5B/ruby/3dossmanno_annuaire/script/runner b/P5B/ruby/3dossmanno_annuaire/script/runner new file mode 100644 index 0000000..ccc30f9 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/runner @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/runner' \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/script/server b/P5B/ruby/3dossmanno_annuaire/script/server new file mode 100644 index 0000000..dfabcb8 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/script/server @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/server' \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/test/fixtures/users.yml b/P5B/ruby/3dossmanno_annuaire/test/fixtures/users.yml new file mode 100644 index 0000000..1042d2f --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/test/fixtures/users.yml @@ -0,0 +1,17 @@ +quentin: + id: 1 + login: quentin + email: quentin@example.com + salt: 7e3041ebc2fc05a40c60028e2c4901a81035d3cd + crypted_password: 00742970dc9e6319f8019fd54864d3ea740f04b1 # test + created_at: <%= 5.days.ago.to_s :db %> + activation_code: 8f24789ae988411ccf33ab0c30fe9106fab32e9b + activated_at: <%= 5.days.ago.to_s :db %> +aaron: + id: 2 + login: aaron + email: aaron@example.com + salt: 7e3041ebc2fc05a40c60028e2c4901a81035d3cd + crypted_password: 00742970dc9e6319f8019fd54864d3ea740f04b1 # test + created_at: <%= 1.days.ago.to_s :db %> + activation_code: 8f24789ae988411ccf33ab0c30fe9106fab32e9a diff --git a/P5B/ruby/3dossmanno_annuaire/test/fixtures/utilisateurs.yml b/P5B/ruby/3dossmanno_annuaire/test/fixtures/utilisateurs.yml new file mode 100644 index 0000000..f58f9c6 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/test/fixtures/utilisateurs.yml @@ -0,0 +1,25 @@ +# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html +one: + id: 1 + nom: PFALZGRAF + prenom: Christian + classe: LPCDED + email: christian@pfalzy.net + age: 24 + rue: + codePostal: + ville: + photo: + type: +two: + id: 2 + nom: DOSSMANN + prenom: Olivier + classe: LPCDED + email: f@f.f + age: 23 + rue: 3, rue des platanes + codePostal: 67550 + ville: VENDENHEIM + photo: + type: diff --git a/P5B/ruby/3dossmanno_annuaire/test/functional/sessions_controller_test.rb b/P5B/ruby/3dossmanno_annuaire/test/functional/sessions_controller_test.rb new file mode 100644 index 0000000..05fb3c0 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/test/functional/sessions_controller_test.rb @@ -0,0 +1,85 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'sessions_controller' + +# Re-raise errors caught by the controller. +class SessionsController; def rescue_action(e) raise e end; end + +class SessionsControllerTest < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead + # Then, you can remove it from this and the units test. + include AuthenticatedTestHelper + + fixtures :users + + def setup + @controller = SessionsController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_login_and_redirect + post :create, :login => 'quentin', :password => 'test' + assert session[:user] + assert_response :redirect + end + + def test_should_fail_login_and_not_redirect + post :create, :login => 'quentin', :password => 'bad password' + assert_nil session[:user] + assert_response :success + end + + def test_should_logout + login_as :quentin + get :destroy + assert_nil session[:user] + assert_response :redirect + end + + def test_should_remember_me + post :create, :login => 'quentin', :password => 'test', :remember_me => "1" + assert_not_nil @response.cookies["auth_token"] + end + + def test_should_not_remember_me + post :create, :login => 'quentin', :password => 'test', :remember_me => "0" + assert_nil @response.cookies["auth_token"] + end + + def test_should_delete_token_on_logout + login_as :quentin + get :destroy + assert_equal @response.cookies["auth_token"], [] + end + + def test_should_login_with_cookie + users(:quentin).remember_me + @request.cookies["auth_token"] = cookie_for(:quentin) + get :new + assert @controller.send(:logged_in?) + end + + def test_should_fail_expired_cookie_login + users(:quentin).remember_me + users(:quentin).update_attribute :remember_token_expires_at, 5.minutes.ago + @request.cookies["auth_token"] = cookie_for(:quentin) + get :new + assert !@controller.send(:logged_in?) + end + + def test_should_fail_cookie_login + users(:quentin).remember_me + @request.cookies["auth_token"] = auth_token('invalid_auth_token') + get :new + assert !@controller.send(:logged_in?) + end + + protected + def auth_token(token) + CGI::Cookie.new('name' => 'auth_token', 'value' => token) + end + + def cookie_for(user) + auth_token users(user).remember_token + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/test/functional/users_controller_test.rb b/P5B/ruby/3dossmanno_annuaire/test/functional/users_controller_test.rb new file mode 100644 index 0000000..daf7ff9 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/test/functional/users_controller_test.rb @@ -0,0 +1,86 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'users_controller' + +# Re-raise errors caught by the controller. +class UsersController; def rescue_action(e) raise e end; end + +class UsersControllerTest < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead + # Then, you can remove it from this and the units test. + include AuthenticatedTestHelper + + fixtures :users + + def setup + @controller = UsersController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_allow_signup + assert_difference 'User.count' do + create_user + assert_response :redirect + end + end + + def test_should_require_login_on_signup + assert_no_difference 'User.count' do + create_user(:login => nil) + assert assigns(:user).errors.on(:login) + assert_response :success + end + end + + def test_should_require_password_on_signup + assert_no_difference 'User.count' do + create_user(:password => nil) + assert assigns(:user).errors.on(:password) + assert_response :success + end + end + + def test_should_require_password_confirmation_on_signup + assert_no_difference 'User.count' do + create_user(:password_confirmation => nil) + assert assigns(:user).errors.on(:password_confirmation) + assert_response :success + end + end + + def test_should_require_email_on_signup + assert_no_difference 'User.count' do + create_user(:email => nil) + assert assigns(:user).errors.on(:email) + assert_response :success + end + end + + def test_should_activate_user + assert_nil User.authenticate('aaron', 'test') + get :activate, :activation_code => users(:aaron).activation_code + assert_redirected_to '/' + assert_not_nil flash[:notice] + assert_equal users(:aaron), User.authenticate('aaron', 'test') + end + + def test_should_not_activate_user_without_key + get :activate + assert_nil flash[:notice] + rescue ActionController::RoutingError + # in the event your routes deny this, we'll just bow out gracefully. + end + + def test_should_not_activate_user_with_blank_key + get :activate, :activation_code => '' + assert_nil flash[:notice] + rescue ActionController::RoutingError + # well played, sir + end + + protected + def create_user(options = {}) + post :create, :user => { :login => 'quire', :email => 'quire@example.com', + :password => 'quire', :password_confirmation => 'quire' }.merge(options) + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/test/functional/utilisateurs_controller_test.rb b/P5B/ruby/3dossmanno_annuaire/test/functional/utilisateurs_controller_test.rb new file mode 100644 index 0000000..7108d97 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/test/functional/utilisateurs_controller_test.rb @@ -0,0 +1,57 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'utilisateurs_controller' + +# Re-raise errors caught by the controller. +class UtilisateursController; def rescue_action(e) raise e end; end + +class UtilisateursControllerTest < Test::Unit::TestCase + fixtures :utilisateurs + + def setup + @controller = UtilisateursController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_get_index + get :index + assert_response :success + assert assigns(:utilisateurs) + end + + def test_should_get_new + get :new + assert_response :success + end + + def test_should_create_utilisateur + old_count = Utilisateur.count + post :create, :utilisateur => { } + assert_equal old_count+1, Utilisateur.count + + assert_redirected_to utilisateur_path(assigns(:utilisateur)) + end + + def test_should_show_utilisateur + get :show, :id => 1 + assert_response :success + end + + def test_should_get_edit + get :edit, :id => 1 + assert_response :success + end + + def test_should_update_utilisateur + put :update, :id => 1, :utilisateur => { } + assert_redirected_to utilisateur_path(assigns(:utilisateur)) + end + + def test_should_destroy_utilisateur + old_count = Utilisateur.count + delete :destroy, :id => 1 + assert_equal old_count-1, Utilisateur.count + + assert_redirected_to utilisateurs_path + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/test/test_helper.rb b/P5B/ruby/3dossmanno_annuaire/test/test_helper.rb new file mode 100644 index 0000000..a299c7f --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/test/test_helper.rb @@ -0,0 +1,28 @@ +ENV["RAILS_ENV"] = "test" +require File.expand_path(File.dirname(__FILE__) + "/../config/environment") +require 'test_help' + +class Test::Unit::TestCase + # Transactional fixtures accelerate your tests by wrapping each test method + # in a transaction that's rolled back on completion. This ensures that the + # test database remains unchanged so your fixtures don't have to be reloaded + # between every test method. Fewer database queries means faster tests. + # + # Read Mike Clark's excellent walkthrough at + # http://clarkware.com/cgi/blosxom/2005/10/24#Rails10FastTesting + # + # Every Active Record database supports transactions except MyISAM tables + # in MySQL. Turn off transactional fixtures in this case; however, if you + # don't care one way or the other, switching from MyISAM to InnoDB tables + # is recommended. + self.use_transactional_fixtures = true + + # Instantiated fixtures are slow, but give you @david where otherwise you + # would need people(:david). If you don't want to migrate your existing + # test cases which use the @david style and don't mind the speed hit (each + # instantiated fixtures translates to a database query per test method), + # then set this back to true. + self.use_instantiated_fixtures = false + + # Add more helper methods to be used by all tests here... +end diff --git a/P5B/ruby/3dossmanno_annuaire/test/unit/user_mailer_test.rb b/P5B/ruby/3dossmanno_annuaire/test/unit/user_mailer_test.rb new file mode 100644 index 0000000..0632c21 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/test/unit/user_mailer_test.rb @@ -0,0 +1,31 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'user_mailer' + +class UserMailerTest < Test::Unit::TestCase + FIXTURES_PATH = File.dirname(__FILE__) + '/../fixtures' + CHARSET = "utf-8" + + include ActionMailer::Quoting + + def setup + ActionMailer::Base.delivery_method = :test + ActionMailer::Base.perform_deliveries = true + ActionMailer::Base.deliveries = [] + + @expected = TMail::Mail.new + @expected.set_content_type "text", "plain", { "charset" => CHARSET } + end + + def test_dummy_test + #do nothing + end + + private + def read_fixture(action) + IO.readlines("#{FIXTURES_PATH}/user_mailer/#{action}") + end + + def encode(subject) + quoted_printable(subject, CHARSET) + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/test/unit/user_test.rb b/P5B/ruby/3dossmanno_annuaire/test/unit/user_test.rb new file mode 100644 index 0000000..5ef347f --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/test/unit/user_test.rb @@ -0,0 +1,101 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class UserTest < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead. + # Then, you can remove it from this and the functional test. + include AuthenticatedTestHelper + fixtures :users + + def test_should_create_user + assert_difference 'User.count' do + user = create_user + assert !user.new_record?, "#{user.errors.full_messages.to_sentence}" + end + end + + def test_should_require_login + assert_no_difference 'User.count' do + u = create_user(:login => nil) + assert u.errors.on(:login) + end + end + + def test_should_require_password + assert_no_difference 'User.count' do + u = create_user(:password => nil) + assert u.errors.on(:password) + end + end + + def test_should_require_password_confirmation + assert_no_difference 'User.count' do + u = create_user(:password_confirmation => nil) + assert u.errors.on(:password_confirmation) + end + end + + def test_should_require_email + assert_no_difference 'User.count' do + u = create_user(:email => nil) + assert u.errors.on(:email) + end + end + + def test_should_reset_password + users(:quentin).update_attributes(:password => 'new password', :password_confirmation => 'new password') + assert_equal users(:quentin), User.authenticate('quentin', 'new password') + end + + def test_should_not_rehash_password + users(:quentin).update_attributes(:login => 'quentin2') + assert_equal users(:quentin), User.authenticate('quentin2', 'test') + end + + def test_should_authenticate_user + assert_equal users(:quentin), User.authenticate('quentin', 'test') + end + + def test_should_set_remember_token + users(:quentin).remember_me + assert_not_nil users(:quentin).remember_token + assert_not_nil users(:quentin).remember_token_expires_at + end + + def test_should_unset_remember_token + users(:quentin).remember_me + assert_not_nil users(:quentin).remember_token + users(:quentin).forget_me + assert_nil users(:quentin).remember_token + end + + def test_should_remember_me_for_one_week + before = 1.week.from_now.utc + users(:quentin).remember_me_for 1.week + after = 1.week.from_now.utc + assert_not_nil users(:quentin).remember_token + assert_not_nil users(:quentin).remember_token_expires_at + assert users(:quentin).remember_token_expires_at.between?(before, after) + end + + def test_should_remember_me_until_one_week + time = 1.week.from_now.utc + users(:quentin).remember_me_until time + assert_not_nil users(:quentin).remember_token + assert_not_nil users(:quentin).remember_token_expires_at + assert_equal users(:quentin).remember_token_expires_at, time + end + + def test_should_remember_me_default_two_weeks + before = 2.weeks.from_now.utc + users(:quentin).remember_me + after = 2.weeks.from_now.utc + assert_not_nil users(:quentin).remember_token + assert_not_nil users(:quentin).remember_token_expires_at + assert users(:quentin).remember_token_expires_at.between?(before, after) + end + + protected + def create_user(options = {}) + User.create({ :login => 'quire', :email => 'quire@example.com', :password => 'quire', :password_confirmation => 'quire' }.merge(options)) + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/test/unit/utilisateur_test.rb b/P5B/ruby/3dossmanno_annuaire/test/unit/utilisateur_test.rb new file mode 100644 index 0000000..cc14bdf --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/test/unit/utilisateur_test.rb @@ -0,0 +1,10 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class UtilisateurTest < Test::Unit::TestCase + fixtures :utilisateurs + + # Replace this with your real tests. + def test_truth + assert true + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/tmp/sessions/ruby_sess.1842b7fdca75021e b/P5B/ruby/3dossmanno_annuaire/tmp/sessions/ruby_sess.1842b7fdca75021e new file mode 100644 index 0000000..629e5cc Binary files /dev/null and b/P5B/ruby/3dossmanno_annuaire/tmp/sessions/ruby_sess.1842b7fdca75021e differ diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/CHANGELOG b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/CHANGELOG new file mode 100644 index 0000000..3dd22dd --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/CHANGELOG @@ -0,0 +1,19 @@ +* April 2, 2007 * + +* don't copy the #full_filename to the default #temp_paths array if it doesn't exist +* add default ID partitioning for attachments +* add #binmode call to Tempfile (note: ruby should be doing this!) [Eric Beland] +* Check for current type of :thumbnails option. +* allow customization of the S3 configuration file path with the :s3_config_path option. +* Don't try to remove thumbnails if there aren't any. Closes #3 [ben stiglitz] + +* BC * (before changelog) + +* add default #temp_paths entry [mattly] +* add MiniMagick support to attachment_fu [Isacc] +* update #destroy_file to clear out any empty directories too [carlivar] +* fix references to S3Backend module [Hunter Hillegas] +* make #current_data public with db_file and s3 backends [ebryn] +* oops, actually svn add the files for s3 backend. [Jeffrey Hardy] +* experimental s3 support, egad, no tests.... [Jeffrey Hardy] +* doh, fix a few bad references to ActsAsAttachment [sixty4bit] \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/README b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/README new file mode 100644 index 0000000..d9da4ef --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/README @@ -0,0 +1,162 @@ +attachment-fu +===================== + +attachment_fu is a plugin by Rick Olson (aka technoweenie ) and is the successor to acts_as_attachment. To get a basic run-through of its capabilities, check out Mike Clark's tutorial . + + +attachment_fu functionality +=========================== + +attachment_fu facilitates file uploads in Ruby on Rails. There are a few storage options for the actual file data, but the plugin always at a minimum stores metadata for each file in the database. + +There are three storage options for files uploaded through attachment_fu: + File system + Database file + Amazon S3 + +Each method of storage many options associated with it that will be covered in the following section. Something to note, however, is that the Amazon S3 storage requires you to modify config/amazon_s3.yml and the Database file storage requires an extra table. + + +attachment_fu models +==================== + +For all three of these storage options a table of metadata is required. This table will contain information about the file (hence the 'meta') and its location. This table has no restrictions on naming, unlike the extra table required for database storage, which must have a table name of db_files (and by convention a model of DbFile). + +In the model there are two methods made available by this plugins: has_attachment and validates_as_attachment. + +has_attachment(options = {}) + This method accepts the options in a hash: + :content_type # Allowed content types. + # Allows all by default. Use :image to allow all standard image types. + :min_size # Minimum size allowed. + # 1 byte is the default. + :max_size # Maximum size allowed. + # 1.megabyte is the default. + :size # Range of sizes allowed. + # (1..1.megabyte) is the default. This overrides the :min_size and :max_size options. + :resize_to # Used by RMagick to resize images. + # Pass either an array of width/height, or a geometry string. + :thumbnails # Specifies a set of thumbnails to generate. + # This accepts a hash of filename suffixes and RMagick resizing options. + # This option need only be included if you want thumbnailing. + :thumbnail_class # Set which model class to use for thumbnails. + # This current attachment class is used by default. + :path_prefix # path to store the uploaded files. + # Uses public/#{table_name} by default for the filesystem, and just #{table_name} for the S3 backend. + # Setting this sets the :storage to :file_system. + :storage # Specifies the storage system to use.. + # Defaults to :db_file. Options are :file_system, :db_file, and :s3. + :processor # Sets the image processor to use for resizing of the attached image. + # Options include ImageScience, Rmagick, and MiniMagick. Default is whatever is installed. + + + Examples: + has_attachment :max_size => 1.kilobyte + has_attachment :size => 1.megabyte..2.megabytes + has_attachment :content_type => 'application/pdf' + has_attachment :content_type => ['application/pdf', 'application/msword', 'text/plain'] + has_attachment :content_type => :image, :resize_to => [50,50] + has_attachment :content_type => ['application/pdf', :image], :resize_to => 'x50' + has_attachment :thumbnails => { :thumb => [50, 50], :geometry => 'x50' } + has_attachment :storage => :file_system, :path_prefix => 'public/files' + has_attachment :storage => :file_system, :path_prefix => 'public/files', + :content_type => :image, :resize_to => [50,50] + has_attachment :storage => :file_system, :path_prefix => 'public/files', + :thumbnails => { :thumb => [50, 50], :geometry => 'x50' } + has_attachment :storage => :s3 + +validates_as_attachment + This method prevents files outside of the valid range (:min_size to :max_size, or the :size range) from being saved. It does not however, halt the upload of such files. They will be uploaded into memory regardless of size before validation. + + Example: + validates_as_attachment + + +attachment_fu migrations +======================== + +Fields for attachment_fu metadata tables... + in general: + size, :integer # file size in bytes + content_type, :string # mime type, ex: application/mp3 + filename, :string # sanitized filename + that reference images: + height, :integer # in pixels + width, :integer # in pixels + that reference images that will be thumbnailed: + parent_id, :integer # id of parent image (on the same table, a self-referencing foreign-key). + # Only populated if the current object is a thumbnail. + thumbnail, :string # the 'type' of thumbnail this attachment record describes. + # Only populated if the current object is a thumbnail. + # Usage: + # [ In Model 'Avatar' ] + # has_attachment :content_type => :image, + # :storage => :file_system, + # :max_size => 500.kilobytes, + # :resize_to => '320x200>', + # :thumbnails => { :small => '10x10>', + # :thumb => '100x100>' } + # [ Elsewhere ] + # @user.avatar.thumbnails.first.thumbnail #=> 'small' + that reference files stored in the database (:db_file): + db_file_id, :integer # id of the file in the database (foreign key) + +Field for attachment_fu db_files table: + data, :binary # binary file data, for use in database file storage + + +attachment_fu views +=================== + +There are two main views tasks that will be directly affected by attachment_fu: upload forms and displaying uploaded images. + +There are two parts of the upload form that differ from typical usage. + 1. Include ':multipart => true' in the html options of the form_for tag. + Example: + <% form_for(:attachment_metadata, :url => { :action => "create" }, :html => { :multipart => true }) do |form| %> + + 2. Use the file_field helper with :uploaded_data as the field name. + Example: + <%= form.file_field :uploaded_data %> + +Displaying uploaded images is made easy by the public_filename method of the ActiveRecord attachment objects using file system and s3 storage. + +public_filename(thumbnail = nil) + Returns the public path to the file. If a thumbnail prefix is specified it will return the public file path to the corresponding thumbnail. + Examples: + attachment_obj.public_filename #=> /attachments/2/file.jpg + attachment_obj.public_filename(:thumb) #=> /attachments/2/file_thumb.jpg + attachment_obj.public_filename(:small) #=> /attachments/2/file_small.jpg + +When serving files from database storage, doing more than simply downloading the file is beyond the scope of this document. + + +attachment_fu controllers +========================= + +There are two considerations to take into account when using attachment_fu in controllers. + +The first is when the files have no publicly accessible path and need to be downloaded through an action. + +Example: + def readme + send_file '/path/to/readme.txt', :type => 'plain/text', :disposition => 'inline' + end + +See the possible values for send_file for reference. + + +The second is when saving the file when submitted from a form. +Example in view: + <%= form.file_field :attachable, :uploaded_data %> + +Example in controller: + def create + @attachable_file = AttachmentMetadataModel.new(params[:attachable]) + if @attachable_file.save + flash[:notice] = 'Attachment was successfully created.' + redirect_to attachable_url(@attachable_file) + else + render :action => :new + end + end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/Rakefile b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/Rakefile new file mode 100644 index 0000000..0851dd4 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/Rakefile @@ -0,0 +1,22 @@ +require 'rake' +require 'rake/testtask' +require 'rake/rdoctask' + +desc 'Default: run unit tests.' +task :default => :test + +desc 'Test the attachment_fu plugin.' +Rake::TestTask.new(:test) do |t| + t.libs << 'lib' + t.pattern = 'test/**/*_test.rb' + t.verbose = true +end + +desc 'Generate documentation for the attachment_fu plugin.' +Rake::RDocTask.new(:rdoc) do |rdoc| + rdoc.rdoc_dir = 'rdoc' + rdoc.title = 'ActsAsAttachment' + rdoc.options << '--line-numbers --inline-source' + rdoc.rdoc_files.include('README') + rdoc.rdoc_files.include('lib/**/*.rb') +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/amazon_s3.yml.tpl b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/amazon_s3.yml.tpl new file mode 100644 index 0000000..81cb807 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/amazon_s3.yml.tpl @@ -0,0 +1,14 @@ +development: + bucket_name: appname_development + access_key_id: + secret_access_key: + +test: + bucket_name: appname_test + access_key_id: + secret_access_key: + +production: + bucket_name: appname + access_key_id: + secret_access_key: diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/init.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/init.rb new file mode 100644 index 0000000..0239e56 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/init.rb @@ -0,0 +1,14 @@ +require 'tempfile' + +Tempfile.class_eval do + # overwrite so tempfiles use the extension of the basename. important for rmagick and image science + def make_tmpname(basename, n) + ext = nil + sprintf("%s%d-%d%s", basename.to_s.gsub(/\.\w+$/) { |s| ext = s; '' }, $$, n, ext) + end +end + +require 'geometry' +ActiveRecord::Base.send(:extend, Technoweenie::AttachmentFu::ActMethods) +Technoweenie::AttachmentFu.tempfile_path = ATTACHMENT_FU_TEMPFILE_PATH if Object.const_defined?(:ATTACHMENT_FU_TEMPFILE_PATH) +FileUtils.mkdir_p Technoweenie::AttachmentFu.tempfile_path \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/install.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/install.rb new file mode 100644 index 0000000..2938164 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/install.rb @@ -0,0 +1,5 @@ +require 'fileutils' + +s3_config = File.dirname(__FILE__) + '/../../../config/amazon_s3.yml' +FileUtils.cp File.dirname(__FILE__) + '/amazon_s3.yml.tpl', s3_config unless File.exist?(s3_config) +puts IO.read(File.join(File.dirname(__FILE__), 'README')) \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/geometry.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/geometry.rb new file mode 100644 index 0000000..2d6e381 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/geometry.rb @@ -0,0 +1,93 @@ +# This Geometry class was yanked from RMagick. However, it lets ImageMagick handle the actual change_geometry. +# Use #new_dimensions_for to get new dimensons +# Used so I can use spiffy RMagick geometry strings with ImageScience +class Geometry + # ! and @ are removed until support for them is added + FLAGS = ['', '%', '<', '>']#, '!', '@'] + RFLAGS = { '%' => :percent, + '!' => :aspect, + '<' => :>, + '>' => :<, + '@' => :area } + + attr_accessor :width, :height, :x, :y, :flag + + def initialize(width=nil, height=nil, x=nil, y=nil, flag=nil) + # Support floating-point width and height arguments so Geometry + # objects can be used to specify Image#density= arguments. + raise ArgumentError, "width must be >= 0: #{width}" if width < 0 + raise ArgumentError, "height must be >= 0: #{height}" if height < 0 + @width = width.to_f + @height = height.to_f + @x = x.to_i + @y = y.to_i + @flag = flag + end + + # Construct an object from a geometry string + RE = /\A(\d*)(?:x(\d+))?([-+]\d+)?([-+]\d+)?([%!<>@]?)\Z/ + + def self.from_s(str) + raise(ArgumentError, "no geometry string specified") unless str + + if m = RE.match(str) + new(m[1].to_i, m[2].to_i, m[3].to_i, m[4].to_i, RFLAGS[m[5]]) + else + raise ArgumentError, "invalid geometry format" + end + end + + # Convert object to a geometry string + def to_s + str = '' + str << "%g" % @width if @width > 0 + str << 'x' if (@width > 0 || @height > 0) + str << "%g" % @height if @height > 0 + str << "%+d%+d" % [@x, @y] if (@x != 0 || @y != 0) + str << FLAGS[@flag.to_i] + end + + # attempts to get new dimensions for the current geometry string given these old dimensions. + # This doesn't implement the aspect flag (!) or the area flag (@). PDI + def new_dimensions_for(orig_width, orig_height) + new_width = orig_width + new_height = orig_height + + case @flag + when :percent + scale_x = @width.zero? ? 100 : @width + scale_y = @height.zero? ? @width : @height + new_width = scale_x.to_f * (orig_width.to_f / 100.0) + new_height = scale_y.to_f * (orig_height.to_f / 100.0) + when :<, :>, nil + scale_factor = + if new_width.zero? || new_height.zero? + 1.0 + else + if @width.nonzero? && @height.nonzero? + [@width.to_f / new_width.to_f, @height.to_f / new_height.to_f].min + else + @width.nonzero? ? (@width.to_f / new_width.to_f) : (@height.to_f / new_height.to_f) + end + end + new_width = scale_factor * new_width.to_f + new_height = scale_factor * new_height.to_f + new_width = orig_width if @flag && orig_width.send(@flag, new_width) + new_height = orig_height if @flag && orig_height.send(@flag, new_height) + end + + [new_width, new_height].collect! { |v| v.round } + end +end + +class Array + # allows you to get new dimensions for the current array of dimensions with a given geometry string + # + # [50, 64] / '40>' # => [40, 51] + def /(geometry) + raise ArgumentError, "Only works with a [width, height] pair" if size != 2 + raise ArgumentError, "Must pass a valid geometry string or object" unless geometry.is_a?(String) || geometry.is_a?(Geometry) + geometry = Geometry.from_s(geometry) if geometry.is_a?(String) + geometry.new_dimensions_for first, last + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu.rb new file mode 100644 index 0000000..c10369f --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu.rb @@ -0,0 +1,405 @@ +module Technoweenie # :nodoc: + module AttachmentFu # :nodoc: + @@default_processors = %w(ImageScience Rmagick MiniMagick) + @@tempfile_path = File.join(RAILS_ROOT, 'tmp', 'attachment_fu') + @@content_types = ['image/jpeg', 'image/pjpeg', 'image/gif', 'image/png', 'image/x-png', 'image/jpg'] + mattr_reader :content_types, :tempfile_path, :default_processors + mattr_writer :tempfile_path + + class ThumbnailError < StandardError; end + class AttachmentError < StandardError; end + + module ActMethods + # Options: + # * :content_type - Allowed content types. Allows all by default. Use :image to allow all standard image types. + # * :min_size - Minimum size allowed. 1 byte is the default. + # * :max_size - Maximum size allowed. 1.megabyte is the default. + # * :size - Range of sizes allowed. (1..1.megabyte) is the default. This overrides the :min_size and :max_size options. + # * :resize_to - Used by RMagick to resize images. Pass either an array of width/height, or a geometry string. + # * :thumbnails - Specifies a set of thumbnails to generate. This accepts a hash of filename suffixes and RMagick resizing options. + # * :thumbnail_class - Set what class to use for thumbnails. This attachment class is used by default. + # * :path_prefix - path to store the uploaded files. Uses public/#{table_name} by default for the filesystem, and just #{table_name} + # for the S3 backend. Setting this sets the :storage to :file_system. + # * :storage - Use :file_system to specify the attachment data is stored with the file system. Defaults to :db_system. + # + # Examples: + # has_attachment :max_size => 1.kilobyte + # has_attachment :size => 1.megabyte..2.megabytes + # has_attachment :content_type => 'application/pdf' + # has_attachment :content_type => ['application/pdf', 'application/msword', 'text/plain'] + # has_attachment :content_type => :image, :resize_to => [50,50] + # has_attachment :content_type => ['application/pdf', :image], :resize_to => 'x50' + # has_attachment :thumbnails => { :thumb => [50, 50], :geometry => 'x50' } + # has_attachment :storage => :file_system, :path_prefix => 'public/files' + # has_attachment :storage => :file_system, :path_prefix => 'public/files', + # :content_type => :image, :resize_to => [50,50] + # has_attachment :storage => :file_system, :path_prefix => 'public/files', + # :thumbnails => { :thumb => [50, 50], :geometry => 'x50' } + # has_attachment :storage => :s3 + def has_attachment(options = {}) + # this allows you to redefine the acts' options for each subclass, however + options[:min_size] ||= 1 + options[:max_size] ||= 1.megabyte + options[:size] ||= (options[:min_size]..options[:max_size]) + options[:thumbnails] ||= {} + options[:thumbnail_class] ||= self + options[:s3_access] ||= :public_read + options[:content_type] = [options[:content_type]].flatten.collect! { |t| t == :image ? Technoweenie::AttachmentFu.content_types : t }.flatten unless options[:content_type].nil? + + unless options[:thumbnails].is_a?(Hash) + raise ArgumentError, ":thumbnails option should be a hash: e.g. :thumbnails => { :foo => '50x50' }" + end + + # doing these shenanigans so that #attachment_options is available to processors and backends + class_inheritable_accessor :attachment_options + self.attachment_options = options + + # only need to define these once on a class + unless included_modules.include?(InstanceMethods) + attr_accessor :thumbnail_resize_options + + attachment_options[:storage] ||= (attachment_options[:file_system_path] || attachment_options[:path_prefix]) ? :file_system : :db_file + attachment_options[:path_prefix] ||= attachment_options[:file_system_path] + if attachment_options[:path_prefix].nil? + attachment_options[:path_prefix] = attachment_options[:storage] == :s3 ? table_name : File.join("public", table_name) + end + attachment_options[:path_prefix] = attachment_options[:path_prefix][1..-1] if options[:path_prefix].first == '/' + + with_options :foreign_key => 'parent_id' do |m| + m.has_many :thumbnails, :class_name => attachment_options[:thumbnail_class].to_s + m.belongs_to :parent, :class_name => base_class.to_s + end + before_destroy :destroy_thumbnails + + before_validation :set_size_from_temp_path + after_save :after_process_attachment + after_destroy :destroy_file + extend ClassMethods + include InstanceMethods + include Technoweenie::AttachmentFu::Backends.const_get("#{options[:storage].to_s.classify}Backend") + case attachment_options[:processor] + when :none + when nil + processors = Technoweenie::AttachmentFu.default_processors.dup + begin + include Technoweenie::AttachmentFu::Processors.const_get("#{processors.first}Processor") if processors.any? + rescue LoadError, MissingSourceFile + processors.shift + retry + end + else + begin + include Technoweenie::AttachmentFu::Processors.const_get("#{options[:processor].to_s.classify}Processor") + rescue LoadError, MissingSourceFile + puts "Problems loading #{options[:processor]}Processor: #{$!}" + end + end + after_validation :process_attachment + end + end + end + + module ClassMethods + delegate :content_types, :to => Technoweenie::AttachmentFu + + # Performs common validations for attachment models. + def validates_as_attachment + validates_presence_of :size, :content_type, :filename + validate :attachment_attributes_valid? + end + + # Returns true or false if the given content type is recognized as an image. + def image?(content_type) + content_types.include?(content_type) + end + + # Callback after an image has been resized. + # + # class Foo < ActiveRecord::Base + # acts_as_attachment + # after_resize do |record, img| + # record.aspect_ratio = img.columns.to_f / img.rows.to_f + # end + # end + def after_resize(&block) + write_inheritable_array(:after_resize, [block]) + end + + # Callback after an attachment has been saved either to the file system or the DB. + # Only called if the file has been changed, not necessarily if the record is updated. + # + # class Foo < ActiveRecord::Base + # acts_as_attachment + # after_attachment_saved do |record| + # ... + # end + # end + def after_attachment_saved(&block) + write_inheritable_array(:after_attachment_saved, [block]) + end + + # Callback before a thumbnail is saved. Use this to pass any necessary extra attributes that may be required. + # + # class Foo < ActiveRecord::Base + # acts_as_attachment + # before_thumbnail_saved do |record, thumbnail| + # ... + # end + # end + def before_thumbnail_saved(&block) + write_inheritable_array(:before_thumbnail_saved, [block]) + end + + # Get the thumbnail class, which is the current attachment class by default. + # Configure this with the :thumbnail_class option. + def thumbnail_class + attachment_options[:thumbnail_class] = attachment_options[:thumbnail_class].constantize unless attachment_options[:thumbnail_class].is_a?(Class) + attachment_options[:thumbnail_class] + end + + # Copies the given file path to a new tempfile, returning the closed tempfile. + def copy_to_temp_file(file, temp_base_name) + returning Tempfile.new(temp_base_name, Technoweenie::AttachmentFu.tempfile_path) do |tmp| + tmp.close + FileUtils.cp file, tmp.path + end + end + + # Writes the given data to a new tempfile, returning the closed tempfile. + def write_to_temp_file(data, temp_base_name) + returning Tempfile.new(temp_base_name, Technoweenie::AttachmentFu.tempfile_path) do |tmp| + tmp.binmode + tmp.write data + tmp.close + end + end + end + + module InstanceMethods + # Checks whether the attachment's content type is an image content type + def image? + self.class.image?(content_type) + end + + # Returns true/false if an attachment is thumbnailable. A thumbnailable attachment has an image content type and the parent_id attribute. + def thumbnailable? + image? && respond_to?(:parent_id) && parent_id.nil? + end + + # Returns the class used to create new thumbnails for this attachment. + def thumbnail_class + self.class.thumbnail_class + end + + # Gets the thumbnail name for a filename. 'foo.jpg' becomes 'foo_thumbnail.jpg' + def thumbnail_name_for(thumbnail = nil) + return filename if thumbnail.blank? + ext = nil + basename = filename.gsub /\.\w+$/ do |s| + ext = s; '' + end + "#{basename}_#{thumbnail}#{ext}" + end + + # Creates or updates the thumbnail for the current attachment. + def create_or_update_thumbnail(temp_file, file_name_suffix, *size) + thumbnailable? || raise(ThumbnailError.new("Can't create a thumbnail if the content type is not an image or there is no parent_id column")) + returning find_or_initialize_thumbnail(file_name_suffix) do |thumb| + thumb.attributes = { + :content_type => content_type, + :filename => thumbnail_name_for(file_name_suffix), + :temp_path => temp_file, + :thumbnail_resize_options => size + } + callback_with_args :before_thumbnail_saved, thumb + thumb.save! + end + end + + # Sets the content type. + def content_type=(new_type) + write_attribute :content_type, new_type.to_s.strip + end + + # Sanitizes a filename. + def filename=(new_name) + write_attribute :filename, sanitize_filename(new_name) + end + + # Returns the width/height in a suitable format for the image_tag helper: (100x100) + def image_size + [width.to_s, height.to_s] * 'x' + end + + # Returns true if the attachment data will be written to the storage system on the next save + def save_attachment? + File.file?(temp_path.to_s) + end + + # nil placeholder in case this field is used in a form. + def uploaded_data() nil; end + + # This method handles the uploaded file object. If you set the field name to uploaded_data, you don't need + # any special code in your controller. + # + # <% form_for :attachment, :html => { :multipart => true } do |f| -%> + #

    <%= f.file_field :uploaded_data %>

    + #

    <%= submit_tag :Save %> + # <% end -%> + # + # @attachment = Attachment.create! params[:attachment] + # + # TODO: Allow it to work with Merb tempfiles too. + def uploaded_data=(file_data) + return nil if file_data.nil? || file_data.size == 0 + self.content_type = file_data.content_type + self.filename = file_data.original_filename if respond_to?(:filename) + if file_data.is_a?(StringIO) + file_data.rewind + self.temp_data = file_data.read + else + self.temp_path = file_data.path + end + end + + # Gets the latest temp path from the collection of temp paths. While working with an attachment, + # multiple Tempfile objects may be created for various processing purposes (resizing, for example). + # An array of all the tempfile objects is stored so that the Tempfile instance is held on to until + # it's not needed anymore. The collection is cleared after saving the attachment. + def temp_path + p = temp_paths.first + p.respond_to?(:path) ? p.path : p.to_s + end + + # Gets an array of the currently used temp paths. Defaults to a copy of #full_filename. + def temp_paths + @temp_paths ||= (new_record? || !File.exist?(full_filename)) ? [] : [copy_to_temp_file(full_filename)] + end + + # Adds a new temp_path to the array. This should take a string or a Tempfile. This class makes no + # attempt to remove the files, so Tempfiles should be used. Tempfiles remove themselves when they go out of scope. + # You can also use string paths for temporary files, such as those used for uploaded files in a web server. + def temp_path=(value) + temp_paths.unshift value + temp_path + end + + # Gets the data from the latest temp file. This will read the file into memory. + def temp_data + save_attachment? ? File.read(temp_path) : nil + end + + # Writes the given data to a Tempfile and adds it to the collection of temp files. + def temp_data=(data) + self.temp_path = write_to_temp_file data unless data.nil? + end + + # Copies the given file to a randomly named Tempfile. + def copy_to_temp_file(file) + self.class.copy_to_temp_file file, random_tempfile_filename + end + + # Writes the given file to a randomly named Tempfile. + def write_to_temp_file(data) + self.class.write_to_temp_file data, random_tempfile_filename + end + + # Stub for creating a temp file from the attachment data. This should be defined in the backend module. + def create_temp_file() end + + # Allows you to work with a processed representation (RMagick, ImageScience, etc) of the attachment in a block. + # + # @attachment.with_image do |img| + # self.data = img.thumbnail(100, 100).to_blob + # end + # + def with_image(&block) + self.class.with_image(temp_path, &block) + end + + protected + # Generates a unique filename for a Tempfile. + def random_tempfile_filename + "#{rand Time.now.to_i}#{filename || 'attachment'}" + end + + def sanitize_filename(filename) + returning filename.strip do |name| + # NOTE: File.basename doesn't work right with Windows paths on Unix + # get only the filename, not the whole path + name.gsub! /^.*(\\|\/)/, '' + + # Finally, replace all non alphanumeric, underscore or periods with underscore + name.gsub! /[^\w\.\-]/, '_' + end + end + + # before_validation callback. + def set_size_from_temp_path + self.size = File.size(temp_path) if save_attachment? + end + + # validates the size and content_type attributes according to the current model's options + def attachment_attributes_valid? + [:size, :content_type].each do |attr_name| + enum = attachment_options[attr_name] + errors.add attr_name, ActiveRecord::Errors.default_error_messages[:inclusion] unless enum.nil? || enum.include?(send(attr_name)) + end + end + + # Initializes a new thumbnail with the given suffix. + def find_or_initialize_thumbnail(file_name_suffix) + respond_to?(:parent_id) ? + thumbnail_class.find_or_initialize_by_thumbnail_and_parent_id(file_name_suffix.to_s, id) : + thumbnail_class.find_or_initialize_by_thumbnail(file_name_suffix.to_s) + end + + # Stub for a #process_attachment method in a processor + def process_attachment + @saved_attachment = save_attachment? + end + + # Cleans up after processing. Thumbnails are created, the attachment is stored to the backend, and the temp_paths are cleared. + def after_process_attachment + if @saved_attachment + if respond_to?(:process_attachment_with_processing) && thumbnailable? && !attachment_options[:thumbnails].blank? && parent_id.nil? + temp_file = temp_path || create_temp_file + attachment_options[:thumbnails].each { |suffix, size| create_or_update_thumbnail(temp_file, suffix, *size) } + end + save_to_storage + @temp_paths.clear + @saved_attachment = nil + callback :after_attachment_saved + end + end + + # Resizes the given processed img object with either the attachment resize options or the thumbnail resize options. + def resize_image_or_thumbnail!(img) + if (!respond_to?(:parent_id) || parent_id.nil?) && attachment_options[:resize_to] # parent image + resize_image(img, attachment_options[:resize_to]) + elsif thumbnail_resize_options # thumbnail + resize_image(img, thumbnail_resize_options) + end + end + + # Yanked from ActiveRecord::Callbacks, modified so I can pass args to the callbacks besides self. + # Only accept blocks, however + def callback_with_args(method, arg = self) + notify(method) + + result = nil + callbacks_for(method).each do |callback| + result = callback.call(self, arg) + return false if result == false + end + + return result + end + + # Removes the thumbnails for the attachment, if it has any + def destroy_thumbnails + self.thumbnails.each { |thumbnail| thumbnail.destroy } if thumbnailable? + end + end + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/db_file_backend.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/db_file_backend.rb new file mode 100644 index 0000000..23881e7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/db_file_backend.rb @@ -0,0 +1,39 @@ +module Technoweenie # :nodoc: + module AttachmentFu # :nodoc: + module Backends + # Methods for DB backed attachments + module DbFileBackend + def self.included(base) #:nodoc: + Object.const_set(:DbFile, Class.new(ActiveRecord::Base)) unless Object.const_defined?(:DbFile) + base.belongs_to :db_file, :class_name => '::DbFile', :foreign_key => 'db_file_id' + end + + # Creates a temp file with the current db data. + def create_temp_file + write_to_temp_file current_data + end + + # Gets the current data from the database + def current_data + db_file.data + end + + protected + # Destroys the file. Called in the after_destroy callback + def destroy_file + db_file.destroy if db_file + end + + # Saves the data to the DbFile model + def save_to_storage + if save_attachment? + (db_file || build_db_file).data = temp_data + db_file.save! + self.class.update_all ['db_file_id = ?', self.db_file_id = db_file.id], ['id = ?', id] + end + true + end + end + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/file_system_backend.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/file_system_backend.rb new file mode 100644 index 0000000..464b9c7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/file_system_backend.rb @@ -0,0 +1,97 @@ +require 'ftools' +module Technoweenie # :nodoc: + module AttachmentFu # :nodoc: + module Backends + # Methods for file system backed attachments + module FileSystemBackend + def self.included(base) #:nodoc: + base.before_update :rename_file + end + + # Gets the full path to the filename in this format: + # + # # This assumes a model name like MyModel + # # public/#{table_name} is the default filesystem path + # RAILS_ROOT/public/my_models/5/blah.jpg + # + # Overwrite this method in your model to customize the filename. + # The optional thumbnail argument will output the thumbnail's filename. + def full_filename(thumbnail = nil) + file_system_path = (thumbnail ? thumbnail_class : self).attachment_options[:path_prefix].to_s + File.join(RAILS_ROOT, file_system_path, *partitioned_path(thumbnail_name_for(thumbnail))) + end + + # Used as the base path that #public_filename strips off full_filename to create the public path + def base_path + @base_path ||= File.join(RAILS_ROOT, 'public') + end + + # The attachment ID used in the full path of a file + def attachment_path_id + ((respond_to?(:parent_id) && parent_id) || id).to_i + end + + # overrwrite this to do your own app-specific partitioning. + # you can thank Jamis Buck for this: http://www.37signals.com/svn/archives2/id_partitioning.php + def partitioned_path(*args) + ("%08d" % attachment_path_id).scan(/..../) + args + end + + # Gets the public path to the file + # The optional thumbnail argument will output the thumbnail's filename. + def public_filename(thumbnail = nil) + full_filename(thumbnail).gsub %r(^#{Regexp.escape(base_path)}), '' + end + + def filename=(value) + @old_filename = full_filename unless filename.nil? || @old_filename + write_attribute :filename, sanitize_filename(value) + end + + # Creates a temp file from the currently saved file. + def create_temp_file + copy_to_temp_file full_filename + end + + protected + # Destroys the file. Called in the after_destroy callback + def destroy_file + FileUtils.rm full_filename + # remove directory also if it is now empty + Dir.rmdir(File.dirname(full_filename)) if (Dir.entries(File.dirname(full_filename))-['.','..']).empty? + rescue + logger.info "Exception destroying #{full_filename.inspect}: [#{$!.class.name}] #{$1.to_s}" + logger.warn $!.backtrace.collect { |b| " > #{b}" }.join("\n") + end + + # Renames the given file before saving + def rename_file + return unless @old_filename && @old_filename != full_filename + if save_attachment? && File.exists?(@old_filename) + FileUtils.rm @old_filename + elsif File.exists?(@old_filename) + FileUtils.mv @old_filename, full_filename + end + @old_filename = nil + true + end + + # Saves the file to the file system + def save_to_storage + if save_attachment? + # TODO: This overwrites the file if it exists, maybe have an allow_overwrite option? + FileUtils.mkdir_p(File.dirname(full_filename)) + File.cp(temp_path, full_filename) + File.chmod(attachment_options[:chmod] || 0644, full_filename) + end + @old_filename = nil + true + end + + def current_data + File.file?(full_filename) ? File.read(full_filename) : nil + end + end + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/s3_backend.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/s3_backend.rb new file mode 100644 index 0000000..b3c575e --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/s3_backend.rb @@ -0,0 +1,309 @@ +module Technoweenie # :nodoc: + module AttachmentFu # :nodoc: + module Backends + # = AWS::S3 Storage Backend + # + # Enables use of {Amazon's Simple Storage Service}[http://aws.amazon.com/s3] as a storage mechanism + # + # == Requirements + # + # Requires the {AWS::S3 Library}[http://amazon.rubyforge.org] for S3 by Marcel Molina Jr. installed either + # as a gem or a as a Rails plugin. + # + # == Configuration + # + # Configuration is done via RAILS_ROOT/config/amazon_s3.yml and is loaded according to the RAILS_ENV. + # The minimum connection options that you must specify are a bucket name, your access key id and your secret access key. + # If you don't already have your access keys, all you need to sign up for the S3 service is an account at Amazon. + # You can sign up for S3 and get access keys by visiting http://aws.amazon.com/s3. + # + # Example configuration (RAILS_ROOT/config/amazon_s3.yml) + # + # development: + # bucket_name: appname_development + # access_key_id: + # secret_access_key: + # + # test: + # bucket_name: appname_test + # access_key_id: + # secret_access_key: + # + # production: + # bucket_name: appname + # access_key_id: + # secret_access_key: + # + # You can change the location of the config path by passing a full path to the :s3_config_path option. + # + # has_attachment :storage => :s3, :s3_config_path => (RAILS_ROOT + '/config/s3.yml') + # + # === Required configuration parameters + # + # * :access_key_id - The access key id for your S3 account. Provided by Amazon. + # * :secret_access_key - The secret access key for your S3 account. Provided by Amazon. + # * :bucket_name - A unique bucket name (think of the bucket_name as being like a database name). + # + # If any of these required arguments is missing, a MissingAccessKey exception will be raised from AWS::S3. + # + # == About bucket names + # + # Bucket names have to be globaly unique across the S3 system. And you can only have up to 100 of them, + # so it's a good idea to think of a bucket as being like a database, hence the correspondance in this + # implementation to the development, test, and production environments. + # + # The number of objects you can store in a bucket is, for all intents and purposes, unlimited. + # + # === Optional configuration parameters + # + # * :server - The server to make requests to. Defaults to s3.amazonaws.com. + # * :port - The port to the requests should be made on. Defaults to 80 or 443 if :use_ssl is set. + # * :use_ssl - If set to true, :port will be implicitly set to 443, unless specified otherwise. Defaults to false. + # + # == Usage + # + # To specify S3 as the storage mechanism for a model, set the acts_as_attachment :storage option to :s3. + # + # class Photo < ActiveRecord::Base + # has_attachment :storage => :s3 + # end + # + # === Customizing the path + # + # By default, files are prefixed using a pseudo hierarchy in the form of :table_name/:id, which results + # in S3 urls that look like: http(s)://:server/:bucket_name/:table_name/:id/:filename with :table_name + # representing the customizable portion of the path. You can customize this prefix using the :path_prefix + # option: + # + # class Photo < ActiveRecord::Base + # has_attachment :storage => :s3, :path_prefix => 'my/custom/path' + # end + # + # Which would result in URLs like http(s)://:server/:bucket_name/my/custom/path/:id/:filename. + # + # === Permissions + # + # By default, files are stored on S3 with public access permissions. You can customize this using + # the :s3_access option to has_attachment. Available values are + # :private, :public_read_write, and :authenticated_read. + # + # === Other options + # + # Of course, all the usual configuration options apply, such as content_type and thumbnails: + # + # class Photo < ActiveRecord::Base + # has_attachment :storage => :s3, :content_type => ['application/pdf', :image], :resize_to => 'x50' + # has_attachment :storage => :s3, :thumbnails => { :thumb => [50, 50], :geometry => 'x50' } + # end + # + # === Accessing S3 URLs + # + # You can get an object's URL using the s3_url accessor. For example, assuming that for your postcard app + # you had a bucket name like 'postcard_world_development', and an attachment model called Photo: + # + # @postcard.s3_url # => http(s)://s3.amazonaws.com/postcard_world_development/photos/1/mexico.jpg + # + # The resulting url is in the form: http(s)://:server/:bucket_name/:table_name/:id/:file. + # The optional thumbnail argument will output the thumbnail's filename (if any). + # + # Additionally, you can get an object's base path relative to the bucket root using + # base_path: + # + # @photo.file_base_path # => photos/1 + # + # And the full path (including the filename) using full_filename: + # + # @photo.full_filename # => photos/ + # + # Niether base_path or full_filename include the bucket name as part of the path. + # You can retrieve the bucket name using the bucket_name method. + module S3Backend + class RequiredLibraryNotFoundError < StandardError; end + class ConfigFileNotFoundError < StandardError; end + + def self.included(base) #:nodoc: + mattr_reader :bucket_name, :s3_config + + begin + require 'aws/s3' + include AWS::S3 + rescue LoadError + raise RequiredLibraryNotFoundError.new('AWS::S3 could not be loaded') + end + + begin + @@s3_config_path = base.attachment_options[:s3_config_path] || (RAILS_ROOT + '/config/amazon_s3.yml') + @@s3_config = YAML.load_file(@@s3_config_path)[ENV['RAILS_ENV']].symbolize_keys + #rescue + # raise ConfigFileNotFoundError.new('File %s not found' % @@s3_config_path) + end + + @@bucket_name = s3_config[:bucket_name] + + Base.establish_connection!( + :access_key_id => s3_config[:access_key_id], + :secret_access_key => s3_config[:secret_access_key], + :server => s3_config[:server], + :port => s3_config[:port], + :use_ssl => s3_config[:use_ssl] + ) + + # Bucket.create(@@bucket_name) + + base.before_update :rename_file + end + + def self.protocol + @protocol ||= s3_config[:use_ssl] ? 'https://' : 'http://' + end + + def self.hostname + @hostname ||= s3_config[:server] || AWS::S3::DEFAULT_HOST + end + + def self.port_string + @port_string ||= s3_config[:port] == (s3_config[:use_ssl] ? 443 : 80) ? '' : ":#{s3_config[:port]}" + end + + module ClassMethods + def s3_protocol + Technoweenie::AttachmentFu::Backends::S3Backend.protocol + end + + def s3_hostname + Technoweenie::AttachmentFu::Backends::S3Backend.hostname + end + + def s3_port_string + Technoweenie::AttachmentFu::Backends::S3Backend.port_string + end + end + + # Overwrites the base filename writer in order to store the old filename + def filename=(value) + @old_filename = filename unless filename.nil? || @old_filename + write_attribute :filename, sanitize_filename(value) + end + + # The attachment ID used in the full path of a file + def attachment_path_id + ((respond_to?(:parent_id) && parent_id) || id).to_s + end + + # The pseudo hierarchy containing the file relative to the bucket name + # Example: :table_name/:id + def base_path + File.join(attachment_options[:path_prefix], attachment_path_id) + end + + # The full path to the file relative to the bucket name + # Example: :table_name/:id/:filename + def full_filename(thumbnail = nil) + File.join(base_path, thumbnail_name_for(thumbnail)) + end + + # All public objects are accessible via a GET request to the S3 servers. You can generate a + # url for an object using the s3_url method. + # + # @photo.s3_url + # + # The resulting url is in the form: http(s)://:server/:bucket_name/:table_name/:id/:file where + # the :server variable defaults to AWS::S3 URL::DEFAULT_HOST (s3.amazonaws.com) and can be + # set using the configuration parameters in RAILS_ROOT/config/amazon_s3.yml. + # + # The optional thumbnail argument will output the thumbnail's filename (if any). + def s3_url(thumbnail = nil) + File.join(s3_protocol + s3_hostname + s3_port_string, bucket_name, full_filename(thumbnail)) + end + alias :public_filename :s3_url + + # All private objects are accessible via an authenticated GET request to the S3 servers. You can generate an + # authenticated url for an object like this: + # + # @photo.authenticated_s3_url + # + # By default authenticated urls expire 5 minutes after they were generated. + # + # Expiration options can be specified either with an absolute time using the :expires option, + # or with a number of seconds relative to now with the :expires_in option: + # + # # Absolute expiration date (October 13th, 2025) + # @photo.authenticated_s3_url(:expires => Time.mktime(2025,10,13).to_i) + # + # # Expiration in five hours from now + # @photo.authenticated_s3_url(:expires_in => 5.hours) + # + # You can specify whether the url should go over SSL with the :use_ssl option. + # By default, the ssl settings for the current connection will be used: + # + # @photo.authenticated_s3_url(:use_ssl => true) + # + # Finally, the optional thumbnail argument will output the thumbnail's filename (if any): + # + # @photo.authenticated_s3_url('thumbnail', :expires_in => 5.hours, :use_ssl => true) + def authenticated_s3_url(*args) + thumbnail = args.first.is_a?(String) ? args.first : nil + options = args.last.is_a?(Hash) ? args.last : {} + S3Object.url_for(full_filename(thumbnail), bucket_name, options) + end + + def create_temp_file + write_to_temp_file current_data + end + + def current_data + S3Object.value full_filename, bucket_name + end + + def s3_protocol + Technoweenie::AttachmentFu::Backends::S3Backend.protocol + end + + def s3_hostname + Technoweenie::AttachmentFu::Backends::S3Backend.hostname + end + + def s3_port_string + Technoweenie::AttachmentFu::Backends::S3Backend.port_string + end + + protected + # Called in the after_destroy callback + def destroy_file + S3Object.delete full_filename, bucket_name + end + + def rename_file + return unless @old_filename && @old_filename != filename + + old_full_filename = File.join(base_path, @old_filename) + + S3Object.rename( + old_full_filename, + full_filename, + bucket_name, + :access => attachment_options[:s3_access] + ) + + @old_filename = nil + true + end + + def save_to_storage + if save_attachment? + S3Object.store( + full_filename, + (temp_path ? File.open(temp_path) : temp_data), + bucket_name, + :content_type => content_type, + :access => attachment_options[:s3_access] + ) + end + + @old_filename = nil + true + end + end + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/image_science_processor.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/image_science_processor.rb new file mode 100644 index 0000000..37c1415 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/image_science_processor.rb @@ -0,0 +1,55 @@ +require 'image_science' +module Technoweenie # :nodoc: + module AttachmentFu # :nodoc: + module Processors + module ImageScienceProcessor + def self.included(base) + base.send :extend, ClassMethods + base.alias_method_chain :process_attachment, :processing + end + + module ClassMethods + # Yields a block containing an RMagick Image for the given binary data. + def with_image(file, &block) + ::ImageScience.with_image file, &block + end + end + + protected + def process_attachment_with_processing + return unless process_attachment_without_processing && image? + with_image do |img| + self.width = img.width if respond_to?(:width) + self.height = img.height if respond_to?(:height) + resize_image_or_thumbnail! img + end + end + + # Performs the actual resizing operation for a thumbnail + def resize_image(img, size) + # create a dummy temp file to write to + filename.sub! /gif$/, 'png' + self.temp_path = write_to_temp_file(filename) + grab_dimensions = lambda do |img| + self.width = img.width if respond_to?(:width) + self.height = img.height if respond_to?(:height) + img.save temp_path + callback_with_args :after_resize, img + end + + size = size.first if size.is_a?(Array) && size.length == 1 + if size.is_a?(Fixnum) || (size.is_a?(Array) && size.first.is_a?(Fixnum)) + if size.is_a?(Fixnum) + img.thumbnail(size, &grab_dimensions) + else + img.resize(size[0], size[1], &grab_dimensions) + end + else + new_size = [img.width, img.height] / size.to_s + img.resize(new_size[0], new_size[1], &grab_dimensions) + end + end + end + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/mini_magick_processor.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/mini_magick_processor.rb new file mode 100644 index 0000000..e5a534c --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/mini_magick_processor.rb @@ -0,0 +1,56 @@ +require 'mini_magick' +module Technoweenie # :nodoc: + module AttachmentFu # :nodoc: + module Processors + module MiniMagickProcessor + def self.included(base) + base.send :extend, ClassMethods + base.alias_method_chain :process_attachment, :processing + end + + module ClassMethods + # Yields a block containing an MiniMagick Image for the given binary data. + def with_image(file, &block) + begin + binary_data = file.is_a?(MiniMagick::Image) ? file : MiniMagick::Image.from_file(file) unless !Object.const_defined?(:MiniMagick) + rescue + # Log the failure to load the image. + logger.debug("Exception working with image: #{$!}") + binary_data = nil + end + block.call binary_data if block && binary_data + ensure + !binary_data.nil? + end + end + + protected + def process_attachment_with_processing + return unless process_attachment_without_processing + with_image do |img| + resize_image_or_thumbnail! img + self.width = img[:width] if respond_to?(:width) + self.height = img[:height] if respond_to?(:height) + callback_with_args :after_resize, img + end if image? + end + + # Performs the actual resizing operation for a thumbnail + def resize_image(img, size) + size = size.first if size.is_a?(Array) && size.length == 1 + if size.is_a?(Fixnum) || (size.is_a?(Array) && size.first.is_a?(Fixnum)) + if size.is_a?(Fixnum) + size = [size, size] + img.resize(size.join('x')) + else + img.resize(size.join('x') + '!') + end + else + img.resize(size.to_s) + end + self.temp_path = img + end + end + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/rmagick_processor.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/rmagick_processor.rb new file mode 100644 index 0000000..7999edb --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/rmagick_processor.rb @@ -0,0 +1,53 @@ +require 'RMagick' +module Technoweenie # :nodoc: + module AttachmentFu # :nodoc: + module Processors + module RmagickProcessor + def self.included(base) + base.send :extend, ClassMethods + base.alias_method_chain :process_attachment, :processing + end + + module ClassMethods + # Yields a block containing an RMagick Image for the given binary data. + def with_image(file, &block) + begin + binary_data = file.is_a?(Magick::Image) ? file : Magick::Image.read(file).first unless !Object.const_defined?(:Magick) + rescue + # Log the failure to load the image. This should match ::Magick::ImageMagickError + # but that would cause acts_as_attachment to require rmagick. + logger.debug("Exception working with image: #{$!}") + binary_data = nil + end + block.call binary_data if block && binary_data + ensure + !binary_data.nil? + end + end + + protected + def process_attachment_with_processing + return unless process_attachment_without_processing + with_image do |img| + resize_image_or_thumbnail! img + self.width = img.columns if respond_to?(:width) + self.height = img.rows if respond_to?(:height) + callback_with_args :after_resize, img + end if image? + end + + # Performs the actual resizing operation for a thumbnail + def resize_image(img, size) + size = size.first if size.is_a?(Array) && size.length == 1 && !size.first.is_a?(Fixnum) + if size.is_a?(Fixnum) || (size.is_a?(Array) && size.first.is_a?(Fixnum)) + size = [size, size] if size.is_a?(Fixnum) + img.thumbnail!(*size) + else + img.change_geometry(size.to_s) { |cols, rows, image| image.resize!(cols, rows) } + end + self.temp_path = write_to_temp_file(img.to_blob) + end + end + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/amazon_s3.yml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/amazon_s3.yml new file mode 100644 index 0000000..0024c8e --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/amazon_s3.yml @@ -0,0 +1,6 @@ +test: + bucket_name: afu + access_key_id: YOURACCESSKEY + secret_access_key: YOURSECRETACCESSKEY + server: 127.0.0.1 + port: 3002 \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/backends/db_file_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/backends/db_file_test.rb new file mode 100644 index 0000000..e95bb49 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/backends/db_file_test.rb @@ -0,0 +1,16 @@ +require File.expand_path(File.join(File.dirname(__FILE__), '..', 'test_helper')) + +class DbFileTest < Test::Unit::TestCase + include BaseAttachmentTests + attachment_model Attachment + + def test_should_call_after_attachment_saved(klass = Attachment) + attachment_model.saves = 0 + assert_created do + upload_file :filename => '/files/rails.png' + end + assert_equal 1, attachment_model.saves + end + + test_against_subclass :test_should_call_after_attachment_saved, Attachment +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/backends/file_system_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/backends/file_system_test.rb new file mode 100644 index 0000000..d3250c1 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/backends/file_system_test.rb @@ -0,0 +1,80 @@ +require File.expand_path(File.join(File.dirname(__FILE__), '..', 'test_helper')) + +class FileSystemTest < Test::Unit::TestCase + include BaseAttachmentTests + attachment_model FileAttachment + + def test_filesystem_size_for_file_attachment(klass = FileAttachment) + attachment_model klass + assert_created 1 do + attachment = upload_file :filename => '/files/rails.png' + assert_equal attachment.size, File.open(attachment.full_filename).stat.size + end + end + + test_against_subclass :test_filesystem_size_for_file_attachment, FileAttachment + + def test_should_not_overwrite_file_attachment(klass = FileAttachment) + attachment_model klass + assert_created 2 do + real = upload_file :filename => '/files/rails.png' + assert_valid real + assert !real.new_record?, real.errors.full_messages.join("\n") + assert !real.size.zero? + + fake = upload_file :filename => '/files/fake/rails.png' + assert_valid fake + assert !fake.size.zero? + + assert_not_equal File.open(real.full_filename).stat.size, File.open(fake.full_filename).stat.size + end + end + + test_against_subclass :test_should_not_overwrite_file_attachment, FileAttachment + + def test_should_store_file_attachment_in_filesystem(klass = FileAttachment) + attachment_model klass + attachment = nil + assert_created do + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert File.exists?(attachment.full_filename), "#{attachment.full_filename} does not exist" + end + attachment + end + + test_against_subclass :test_should_store_file_attachment_in_filesystem, FileAttachment + + def test_should_delete_old_file_when_updating(klass = FileAttachment) + attachment_model klass + attachment = upload_file :filename => '/files/rails.png' + old_filename = attachment.full_filename + assert_not_created do + use_temp_file 'files/rails.png' do |file| + attachment.filename = 'rails2.png' + attachment.temp_path = File.join(fixture_path, file) + attachment.save! + assert File.exists?(attachment.full_filename), "#{attachment.full_filename} does not exist" + assert !File.exists?(old_filename), "#{old_filename} still exists" + end + end + end + + test_against_subclass :test_should_delete_old_file_when_updating, FileAttachment + + def test_should_delete_old_file_when_renaming(klass = FileAttachment) + attachment_model klass + attachment = upload_file :filename => '/files/rails.png' + old_filename = attachment.full_filename + assert_not_created do + attachment.filename = 'rails2.png' + attachment.save + assert File.exists?(attachment.full_filename), "#{attachment.full_filename} does not exist" + assert !File.exists?(old_filename), "#{old_filename} still exists" + assert !attachment.reload.size.zero? + assert_equal 'rails2.png', attachment.filename + end + end + + test_against_subclass :test_should_delete_old_file_when_renaming, FileAttachment +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/backends/remote/s3_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/backends/remote/s3_test.rb new file mode 100644 index 0000000..82520a0 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/backends/remote/s3_test.rb @@ -0,0 +1,103 @@ +require File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'test_helper')) +require 'net/http' + +class S3Test < Test::Unit::TestCase + if File.exist?(File.join(File.dirname(__FILE__), '../../amazon_s3.yml')) + include BaseAttachmentTests + attachment_model S3Attachment + + def test_should_create_correct_bucket_name(klass = S3Attachment) + attachment_model klass + attachment = upload_file :filename => '/files/rails.png' + assert_equal attachment.s3_config[:bucket_name], attachment.bucket_name + end + + test_against_subclass :test_should_create_correct_bucket_name, S3Attachment + + def test_should_create_default_path_prefix(klass = S3Attachment) + attachment_model klass + attachment = upload_file :filename => '/files/rails.png' + assert_equal File.join(attachment_model.table_name, attachment.attachment_path_id), attachment.base_path + end + + test_against_subclass :test_should_create_default_path_prefix, S3Attachment + + def test_should_create_custom_path_prefix(klass = S3WithPathPrefixAttachment) + attachment_model klass + attachment = upload_file :filename => '/files/rails.png' + assert_equal File.join('some/custom/path/prefix', attachment.attachment_path_id), attachment.base_path + end + + test_against_subclass :test_should_create_custom_path_prefix, S3WithPathPrefixAttachment + + def test_should_create_valid_url(klass = S3Attachment) + attachment_model klass + attachment = upload_file :filename => '/files/rails.png' + assert_equal "#{s3_protocol}#{s3_hostname}#{s3_port_string}/#{attachment.bucket_name}/#{attachment.full_filename}", attachment.s3_url + end + + test_against_subclass :test_should_create_valid_url, S3Attachment + + def test_should_create_authenticated_url(klass = S3Attachment) + attachment_model klass + attachment = upload_file :filename => '/files/rails.png' + assert_match /^http.+AWSAccessKeyId.+Expires.+Signature.+/, attachment.authenticated_s3_url(:use_ssl => true) + end + + test_against_subclass :test_should_create_authenticated_url, S3Attachment + + def test_should_save_attachment(klass = S3Attachment) + attachment_model klass + assert_created do + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert attachment.image? + assert !attachment.size.zero? + assert_kind_of Net::HTTPOK, http_response_for(attachment.s3_url) + end + end + + test_against_subclass :test_should_save_attachment, S3Attachment + + def test_should_delete_attachment_from_s3_when_attachment_record_destroyed(klass = S3Attachment) + attachment_model klass + attachment = upload_file :filename => '/files/rails.png' + + urls = [attachment.s3_url] + attachment.thumbnails.collect(&:s3_url) + + urls.each {|url| assert_kind_of Net::HTTPOK, http_response_for(url) } + attachment.destroy + urls.each do |url| + begin + http_response_for(url) + rescue Net::HTTPForbidden, Net::HTTPNotFound + nil + end + end + end + + test_against_subclass :test_should_delete_attachment_from_s3_when_attachment_record_destroyed, S3Attachment + + protected + def http_response_for(url) + url = URI.parse(url) + Net::HTTP.start(url.host, url.port) {|http| http.request_head(url.path) } + end + + def s3_protocol + Technoweenie::AttachmentFu::Backends::S3Backend.protocol + end + + def s3_hostname + Technoweenie::AttachmentFu::Backends::S3Backend.hostname + end + + def s3_port_string + Technoweenie::AttachmentFu::Backends::S3Backend.port_string + end + else + def test_flunk_s3 + puts "s3 config file not loaded, tests not running" + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/base_attachment_tests.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/base_attachment_tests.rb new file mode 100644 index 0000000..c9dbbd7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/base_attachment_tests.rb @@ -0,0 +1,57 @@ +module BaseAttachmentTests + def test_should_create_file_from_uploaded_file + assert_created do + attachment = upload_file :filename => '/files/foo.txt' + assert_valid attachment + assert !attachment.db_file.new_record? if attachment.respond_to?(:db_file) + assert attachment.image? + assert !attachment.size.zero? + #assert_equal 3, attachment.size + assert_nil attachment.width + assert_nil attachment.height + end + end + + def test_reassign_attribute_data + assert_created 1 do + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert attachment.size > 0, "no data was set" + + attachment.temp_data = 'wtf' + assert attachment.save_attachment? + attachment.save! + + assert_equal 'wtf', attachment_model.find(attachment.id).send(:current_data) + end + end + + def test_no_reassign_attribute_data_on_nil + assert_created 1 do + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert attachment.size > 0, "no data was set" + + attachment.temp_data = nil + assert !attachment.save_attachment? + end + end + + def test_should_overwrite_old_contents_when_updating + attachment = upload_file :filename => '/files/rails.png' + assert_not_created do # no new db_file records + use_temp_file 'files/rails.png' do |file| + attachment.filename = 'rails2.png' + attachment.temp_path = File.join(fixture_path, file) + attachment.save! + end + end + end + + def test_should_save_without_updating_file + attachment = upload_file :filename => '/files/foo.txt' + assert_valid attachment + assert !attachment.save_attachment? + assert_nothing_raised { attachment.save! } + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/basic_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/basic_test.rb new file mode 100644 index 0000000..2094eb1 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/basic_test.rb @@ -0,0 +1,64 @@ +require File.expand_path(File.join(File.dirname(__FILE__), 'test_helper')) + +class BasicTest < Test::Unit::TestCase + def test_should_set_default_min_size + assert_equal 1, Attachment.attachment_options[:min_size] + end + + def test_should_set_default_max_size + assert_equal 1.megabyte, Attachment.attachment_options[:max_size] + end + + def test_should_set_default_size + assert_equal (1..1.megabyte), Attachment.attachment_options[:size] + end + + def test_should_set_default_thumbnails_option + assert_equal Hash.new, Attachment.attachment_options[:thumbnails] + end + + def test_should_set_default_thumbnail_class + assert_equal Attachment, Attachment.attachment_options[:thumbnail_class] + end + + def test_should_normalize_content_types_to_array + assert_equal %w(pdf), PdfAttachment.attachment_options[:content_type] + assert_equal %w(pdf doc txt), DocAttachment.attachment_options[:content_type] + assert_equal ['image/jpeg', 'image/pjpeg', 'image/gif', 'image/png', 'image/x-png'], ImageAttachment.attachment_options[:content_type] + assert_equal ['pdf', 'image/jpeg', 'image/pjpeg', 'image/gif', 'image/png', 'image/x-png'], ImageOrPdfAttachment.attachment_options[:content_type] + end + + def test_should_sanitize_content_type + @attachment = Attachment.new :content_type => ' foo ' + assert_equal 'foo', @attachment.content_type + end + + def test_should_sanitize_filenames + @attachment = Attachment.new :filename => 'blah/foo.bar' + assert_equal 'foo.bar', @attachment.filename + + @attachment.filename = 'blah\\foo.bar' + assert_equal 'foo.bar', @attachment.filename + + @attachment.filename = 'f o!O-.bar' + assert_equal 'f_o_O-.bar', @attachment.filename + end + + def test_should_convert_thumbnail_name + @attachment = FileAttachment.new :filename => 'foo.bar' + assert_equal 'foo.bar', @attachment.thumbnail_name_for(nil) + assert_equal 'foo.bar', @attachment.thumbnail_name_for('') + assert_equal 'foo_blah.bar', @attachment.thumbnail_name_for(:blah) + assert_equal 'foo_blah.blah.bar', @attachment.thumbnail_name_for('blah.blah') + + @attachment.filename = 'foo.bar.baz' + assert_equal 'foo.bar_blah.baz', @attachment.thumbnail_name_for(:blah) + end + + def test_should_require_valid_thumbnails_option + klass = Class.new(ActiveRecord::Base) + assert_raise ArgumentError do + klass.has_attachment :thumbnails => [] + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/database.yml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/database.yml new file mode 100644 index 0000000..1c6ece7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/database.yml @@ -0,0 +1,18 @@ +sqlite: + :adapter: sqlite + :dbfile: attachment_fu_plugin.sqlite.db +sqlite3: + :adapter: sqlite3 + :dbfile: attachment_fu_plugin.sqlite3.db +postgresql: + :adapter: postgresql + :username: postgres + :password: postgres + :database: attachment_fu_plugin_test + :min_messages: ERROR +mysql: + :adapter: mysql + :host: localhost + :username: rails + :password: + :database: attachment_fu_plugin_test \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/extra_attachment_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/extra_attachment_test.rb new file mode 100644 index 0000000..15b1852 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/extra_attachment_test.rb @@ -0,0 +1,57 @@ +require File.expand_path(File.join(File.dirname(__FILE__), 'test_helper')) + +class OrphanAttachmentTest < Test::Unit::TestCase + include BaseAttachmentTests + attachment_model OrphanAttachment + + def test_should_create_image_from_uploaded_file + assert_created do + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert !attachment.db_file.new_record? if attachment.respond_to?(:db_file) + assert attachment.image? + assert !attachment.size.zero? + end + end + + def test_should_create_file_from_uploaded_file + assert_created do + attachment = upload_file :filename => '/files/foo.txt' + assert_valid attachment + assert !attachment.db_file.new_record? if attachment.respond_to?(:db_file) + assert attachment.image? + assert !attachment.size.zero? + end + end + + def test_should_create_image_from_uploaded_file_with_custom_content_type + assert_created do + attachment = upload_file :content_type => 'foo/bar', :filename => '/files/rails.png' + assert_valid attachment + assert !attachment.image? + assert !attachment.db_file.new_record? if attachment.respond_to?(:db_file) + assert !attachment.size.zero? + #assert_equal 1784, attachment.size + end + end + + def test_should_create_thumbnail + attachment = upload_file :filename => '/files/rails.png' + + assert_raise Technoweenie::AttachmentFu::ThumbnailError do + attachment.create_or_update_thumbnail(attachment.create_temp_file, 'thumb', 50, 50) + end + end + + def test_should_create_thumbnail_with_geometry_string + attachment = upload_file :filename => '/files/rails.png' + + assert_raise Technoweenie::AttachmentFu::ThumbnailError do + attachment.create_or_update_thumbnail(attachment.create_temp_file, 'thumb', 'x50') + end + end +end + +class MinimalAttachmentTest < OrphanAttachmentTest + attachment_model MinimalAttachment +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/attachment.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/attachment.rb new file mode 100644 index 0000000..77d60c3 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/attachment.rb @@ -0,0 +1,127 @@ +class Attachment < ActiveRecord::Base + @@saves = 0 + cattr_accessor :saves + has_attachment :processor => :rmagick + validates_as_attachment + after_attachment_saved do |record| + self.saves += 1 + end +end + +class SmallAttachment < Attachment + has_attachment :max_size => 1.kilobyte +end + +class BigAttachment < Attachment + has_attachment :size => 1.megabyte..2.megabytes +end + +class PdfAttachment < Attachment + has_attachment :content_type => 'pdf' +end + +class DocAttachment < Attachment + has_attachment :content_type => %w(pdf doc txt) +end + +class ImageAttachment < Attachment + has_attachment :content_type => :image, :resize_to => [50,50] +end + +class ImageOrPdfAttachment < Attachment + has_attachment :content_type => ['pdf', :image], :resize_to => 'x50' +end + +class ImageWithThumbsAttachment < Attachment + has_attachment :thumbnails => { :thumb => [50, 50], :geometry => 'x50' }, :resize_to => [55,55] + after_resize do |record, img| + record.aspect_ratio = img.columns.to_f / img.rows.to_f + end +end + +class FileAttachment < ActiveRecord::Base + has_attachment :path_prefix => 'vendor/plugins/attachment_fu/test/files', :processor => :rmagick + validates_as_attachment +end + +class ImageFileAttachment < FileAttachment + has_attachment :path_prefix => 'vendor/plugins/attachment_fu/test/files', + :content_type => :image, :resize_to => [50,50] +end + +class ImageWithThumbsFileAttachment < FileAttachment + has_attachment :path_prefix => 'vendor/plugins/attachment_fu/test/files', + :thumbnails => { :thumb => [50, 50], :geometry => 'x50' }, :resize_to => [55,55] + after_resize do |record, img| + record.aspect_ratio = img.columns.to_f / img.rows.to_f + end +end + +class ImageWithThumbsClassFileAttachment < FileAttachment + # use file_system_path to test backwards compatibility + has_attachment :file_system_path => 'vendor/plugins/attachment_fu/test/files', + :thumbnails => { :thumb => [50, 50] }, :resize_to => [55,55], + :thumbnail_class => 'ImageThumbnail' +end + +class ImageThumbnail < FileAttachment + has_attachment :path_prefix => 'vendor/plugins/attachment_fu/test/files/thumbnails' +end + +# no parent +class OrphanAttachment < ActiveRecord::Base + has_attachment :processor => :rmagick + validates_as_attachment +end + +# no filename, no size, no content_type +class MinimalAttachment < ActiveRecord::Base + has_attachment :path_prefix => 'vendor/plugins/attachment_fu/test/files', :processor => :rmagick + validates_as_attachment + + def filename + "#{id}.file" + end +end + +begin + class ImageScienceAttachment < ActiveRecord::Base + has_attachment :path_prefix => 'vendor/plugins/attachment_fu/test/files', + :processor => :image_science, :thumbnails => { :thumb => [50, 51], :geometry => '31>' }, :resize_to => 55 + end +rescue MissingSourceFile + puts $!.message + puts "no ImageScience" +end + +begin + class MiniMagickAttachment < ActiveRecord::Base + has_attachment :path_prefix => 'vendor/plugins/attachment_fu/test/files', + :processor => :mini_magick, :thumbnails => { :thumb => [50, 51], :geometry => '31>' }, :resize_to => 55 + end +rescue MissingSourceFile + puts $!.message + puts "no Mini Magick" +end + +begin + class MiniMagickAttachment < ActiveRecord::Base + has_attachment :path_prefix => 'vendor/plugins/attachment_fu/test/files', + :processor => :mini_magick, :thumbnails => { :thumb => [50, 51], :geometry => '31>' }, :resize_to => 55 + end +rescue MissingSourceFile +end + +begin + class S3Attachment < ActiveRecord::Base + has_attachment :storage => :s3, :processor => :rmagick, :s3_config_path => File.join(File.dirname(__FILE__), '../amazon_s3.yml') + validates_as_attachment + end + + class S3WithPathPrefixAttachment < S3Attachment + has_attachment :storage => :s3, :path_prefix => 'some/custom/path/prefix', :processor => :rmagick + validates_as_attachment + end +rescue Technoweenie::AttachmentFu::Backends::S3Backend::ConfigFileNotFoundError + puts "S3 error: #{$!}" +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/files/fake/rails.png b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/files/fake/rails.png new file mode 100644 index 0000000..0543c64 Binary files /dev/null and b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/files/fake/rails.png differ diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/files/foo.txt b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/files/foo.txt new file mode 100644 index 0000000..1910281 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/files/foo.txt @@ -0,0 +1 @@ +foo \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/files/rails.png b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/files/rails.png new file mode 100644 index 0000000..b8441f1 Binary files /dev/null and b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/fixtures/files/rails.png differ diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/geometry_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/geometry_test.rb new file mode 100644 index 0000000..ade4f48 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/geometry_test.rb @@ -0,0 +1,101 @@ +require 'test/unit' +require File.expand_path(File.join(File.dirname(__FILE__), '../lib/geometry')) unless Object.const_defined?(:Geometry) + +class GeometryTest < Test::Unit::TestCase + def test_should_resize + assert_geometry 50, 64, + "50x50" => [39, 50], + "60x60" => [47, 60], + "100x100" => [78, 100] + end + + def test_should_resize_no_width + assert_geometry 50, 64, + "x50" => [39, 50], + "x60" => [47, 60], + "x100" => [78, 100] + end + + def test_should_resize_no_height + assert_geometry 50, 64, + "50" => [50, 64], + "60" => [60, 77], + "100" => [100, 128] + end + + def test_should_resize_with_percent + assert_geometry 50, 64, + "50x50%" => [25, 32], + "60x60%" => [30, 38], + "120x112%" => [60, 72] + end + + def test_should_resize_with_percent_and_no_width + assert_geometry 50, 64, + "x50%" => [50, 32], + "x60%" => [50, 38], + "x112%" => [50, 72] + end + + def test_should_resize_with_percent_and_no_height + assert_geometry 50, 64, + "50%" => [25, 32], + "60%" => [30, 38], + "120%" => [60, 77] + end + + def test_should_resize_with_less + assert_geometry 50, 64, + "50x50<" => [50, 64], + "60x60<" => [50, 64], + "100x100<" => [78, 100], + "100x112<" => [88, 112], + "40x70<" => [50, 64] + end + + def test_should_resize_with_less_and_no_width + assert_geometry 50, 64, + "x50<" => [50, 64], + "x60<" => [50, 64], + "x100<" => [78, 100] + end + + def test_should_resize_with_less_and_no_height + assert_geometry 50, 64, + "50<" => [50, 64], + "60<" => [60, 77], + "100<" => [100, 128] + end + + def test_should_resize_with_greater + assert_geometry 50, 64, + "50x50>" => [39, 50], + "60x60>" => [47, 60], + "100x100>" => [50, 64], + "100x112>" => [50, 64], + "40x70>" => [40, 51] + end + + def test_should_resize_with_greater_and_no_width + assert_geometry 50, 64, + "x40>" => [31, 40], + "x60>" => [47, 60], + "x100>" => [50, 64] + end + + def test_should_resize_with_greater_and_no_height + assert_geometry 50, 64, + "40>" => [40, 51], + "60>" => [50, 64], + "100>" => [50, 64] + end + + protected + def assert_geometry(width, height, values) + values.each do |geo, result| + # run twice to verify the Geometry string isn't modified after a run + geo = Geometry.from_s(geo) + 2.times { assert_equal result, [width, height] / geo } + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/processors/image_science_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/processors/image_science_test.rb new file mode 100644 index 0000000..636918d --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/processors/image_science_test.rb @@ -0,0 +1,31 @@ +require File.expand_path(File.join(File.dirname(__FILE__), '..', 'test_helper')) + +class ImageScienceTest < Test::Unit::TestCase + attachment_model ImageScienceAttachment + + if Object.const_defined?(:ImageScience) + def test_should_resize_image + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert attachment.image? + # test image science thumbnail + assert_equal 42, attachment.width + assert_equal 55, attachment.height + + thumb = attachment.thumbnails.detect { |t| t.filename =~ /_thumb/ } + geo = attachment.thumbnails.detect { |t| t.filename =~ /_geometry/ } + + # test exact resize dimensions + assert_equal 50, thumb.width + assert_equal 51, thumb.height + + # test geometry string + assert_equal 31, geo.width + assert_equal 41, geo.height + end + else + def test_flunk + puts "ImageScience not loaded, tests not running" + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/processors/mini_magick_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/processors/mini_magick_test.rb new file mode 100644 index 0000000..244a4a2 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/processors/mini_magick_test.rb @@ -0,0 +1,31 @@ +require File.expand_path(File.join(File.dirname(__FILE__), '..', 'test_helper')) + +class MiniMagickTest < Test::Unit::TestCase + attachment_model MiniMagickAttachment + + if Object.const_defined?(:MiniMagick) + def test_should_resize_image + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert attachment.image? + # test MiniMagick thumbnail + assert_equal 43, attachment.width + assert_equal 55, attachment.height + + thumb = attachment.thumbnails.detect { |t| t.filename =~ /_thumb/ } + geo = attachment.thumbnails.detect { |t| t.filename =~ /_geometry/ } + + # test exact resize dimensions + assert_equal 50, thumb.width + assert_equal 51, thumb.height + + # test geometry string + assert_equal 31, geo.width + assert_equal 40, geo.height + end + else + def test_flunk + puts "MiniMagick not loaded, tests not running" + end + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/processors/rmagick_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/processors/rmagick_test.rb new file mode 100644 index 0000000..13d177a --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/processors/rmagick_test.rb @@ -0,0 +1,241 @@ +require File.expand_path(File.join(File.dirname(__FILE__), '..', 'test_helper')) + +class RmagickTest < Test::Unit::TestCase + attachment_model Attachment + + if Object.const_defined?(:Magick) + def test_should_create_image_from_uploaded_file + assert_created do + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert !attachment.db_file.new_record? if attachment.respond_to?(:db_file) + assert attachment.image? + assert !attachment.size.zero? + #assert_equal 1784, attachment.size + assert_equal 50, attachment.width + assert_equal 64, attachment.height + assert_equal '50x64', attachment.image_size + end + end + + def test_should_create_image_from_uploaded_file_with_custom_content_type + assert_created do + attachment = upload_file :content_type => 'foo/bar', :filename => '/files/rails.png' + assert_valid attachment + assert !attachment.image? + assert !attachment.db_file.new_record? if attachment.respond_to?(:db_file) + assert !attachment.size.zero? + #assert_equal 1784, attachment.size + assert_nil attachment.width + assert_nil attachment.height + assert_equal [], attachment.thumbnails + end + end + + def test_should_create_thumbnail + attachment = upload_file :filename => '/files/rails.png' + + assert_created do + basename, ext = attachment.filename.split '.' + thumbnail = attachment.create_or_update_thumbnail(attachment.create_temp_file, 'thumb', 50, 50) + assert_valid thumbnail + assert !thumbnail.size.zero? + #assert_in_delta 4673, thumbnail.size, 2 + assert_equal 50, thumbnail.width + assert_equal 50, thumbnail.height + assert_equal [thumbnail.id], attachment.thumbnails.collect(&:id) + assert_equal attachment.id, thumbnail.parent_id if thumbnail.respond_to?(:parent_id) + assert_equal "#{basename}_thumb.#{ext}", thumbnail.filename + end + end + + def test_should_create_thumbnail_with_geometry_string + attachment = upload_file :filename => '/files/rails.png' + + assert_created do + basename, ext = attachment.filename.split '.' + thumbnail = attachment.create_or_update_thumbnail(attachment.create_temp_file, 'thumb', 'x50') + assert_valid thumbnail + assert !thumbnail.size.zero? + #assert_equal 3915, thumbnail.size + assert_equal 39, thumbnail.width + assert_equal 50, thumbnail.height + assert_equal [thumbnail], attachment.thumbnails + assert_equal attachment.id, thumbnail.parent_id if thumbnail.respond_to?(:parent_id) + assert_equal "#{basename}_thumb.#{ext}", thumbnail.filename + end + end + + def test_should_resize_image(klass = ImageAttachment) + attachment_model klass + assert_equal [50, 50], attachment_model.attachment_options[:resize_to] + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert !attachment.db_file.new_record? if attachment.respond_to?(:db_file) + assert attachment.image? + assert !attachment.size.zero? + #assert_in_delta 4673, attachment.size, 2 + assert_equal 50, attachment.width + assert_equal 50, attachment.height + end + + test_against_subclass :test_should_resize_image, ImageAttachment + + def test_should_resize_image_with_geometry(klass = ImageOrPdfAttachment) + attachment_model klass + assert_equal 'x50', attachment_model.attachment_options[:resize_to] + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert !attachment.db_file.new_record? if attachment.respond_to?(:db_file) + assert attachment.image? + assert !attachment.size.zero? + #assert_equal 3915, attachment.size + assert_equal 39, attachment.width + assert_equal 50, attachment.height + end + + test_against_subclass :test_should_resize_image_with_geometry, ImageOrPdfAttachment + + def test_should_give_correct_thumbnail_filenames(klass = ImageWithThumbsFileAttachment) + attachment_model klass + assert_created 3 do + attachment = upload_file :filename => '/files/rails.png' + thumb = attachment.thumbnails.detect { |t| t.filename =~ /_thumb/ } + geo = attachment.thumbnails.detect { |t| t.filename =~ /_geometry/ } + + [attachment, thumb, geo].each { |record| assert_valid record } + + assert_match /rails\.png$/, attachment.full_filename + assert_match /rails_geometry\.png$/, attachment.full_filename(:geometry) + assert_match /rails_thumb\.png$/, attachment.full_filename(:thumb) + end + end + + test_against_subclass :test_should_give_correct_thumbnail_filenames, ImageWithThumbsFileAttachment + + def test_should_automatically_create_thumbnails(klass = ImageWithThumbsAttachment) + attachment_model klass + assert_created 3 do + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + assert !attachment.size.zero? + #assert_equal 1784, attachment.size + assert_equal 55, attachment.width + assert_equal 55, attachment.height + assert_equal 2, attachment.thumbnails.length + assert_equal 1.0, attachment.aspect_ratio + + thumb = attachment.thumbnails.detect { |t| t.filename =~ /_thumb/ } + assert !thumb.new_record?, thumb.errors.full_messages.join("\n") + assert !thumb.size.zero? + #assert_in_delta 4673, thumb.size, 2 + assert_equal 50, thumb.width + assert_equal 50, thumb.height + assert_equal 1.0, thumb.aspect_ratio + + geo = attachment.thumbnails.detect { |t| t.filename =~ /_geometry/ } + assert !geo.new_record?, geo.errors.full_messages.join("\n") + assert !geo.size.zero? + #assert_equal 3915, geo.size + assert_equal 50, geo.width + assert_equal 50, geo.height + assert_equal 1.0, geo.aspect_ratio + end + end + + test_against_subclass :test_should_automatically_create_thumbnails, ImageWithThumbsAttachment + + # same as above method, but test it on a file model + test_against_class :test_should_automatically_create_thumbnails, ImageWithThumbsFileAttachment + test_against_subclass :test_should_automatically_create_thumbnails_on_class, ImageWithThumbsFileAttachment + + def test_should_use_thumbnail_subclass(klass = ImageWithThumbsClassFileAttachment) + attachment_model klass + attachment = nil + assert_difference ImageThumbnail, :count do + attachment = upload_file :filename => '/files/rails.png' + assert_valid attachment + end + assert_kind_of ImageThumbnail, attachment.thumbnails.first + assert_equal attachment.id, attachment.thumbnails.first.parent.id + assert_kind_of FileAttachment, attachment.thumbnails.first.parent + assert_equal 'rails_thumb.png', attachment.thumbnails.first.filename + assert_equal attachment.thumbnails.first.full_filename, attachment.full_filename(attachment.thumbnails.first.thumbnail), + "#full_filename does not use thumbnail class' path." + assert_equal attachment.destroy attachment + end + + test_against_subclass :test_should_use_thumbnail_subclass, ImageWithThumbsClassFileAttachment + + def test_should_remove_old_thumbnail_files_when_updating(klass = ImageWithThumbsFileAttachment) + attachment_model klass + attachment = nil + assert_created 3 do + attachment = upload_file :filename => '/files/rails.png' + end + + old_filenames = [attachment.full_filename] + attachment.thumbnails.collect(&:full_filename) + + assert_not_created do + use_temp_file "files/rails.png" do |file| + attachment.filename = 'rails2.png' + attachment.temp_path = File.join(fixture_path, file) + attachment.save + new_filenames = [attachment.reload.full_filename] + attachment.thumbnails.collect { |t| t.reload.full_filename } + new_filenames.each { |f| assert File.exists?(f), "#{f} does not exist" } + old_filenames.each { |f| assert !File.exists?(f), "#{f} still exists" } + end + end + end + + test_against_subclass :test_should_remove_old_thumbnail_files_when_updating, ImageWithThumbsFileAttachment + + def test_should_delete_file_when_in_file_system_when_attachment_record_destroyed(klass = ImageWithThumbsFileAttachment) + attachment_model klass + attachment = upload_file :filename => '/files/rails.png' + filenames = [attachment.full_filename] + attachment.thumbnails.collect(&:full_filename) + filenames.each { |f| assert File.exists?(f), "#{f} never existed to delete on destroy" } + attachment.destroy + filenames.each { |f| assert !File.exists?(f), "#{f} still exists" } + end + + test_against_subclass :test_should_delete_file_when_in_file_system_when_attachment_record_destroyed, ImageWithThumbsFileAttachment + + def test_should_overwrite_old_thumbnail_records_when_updating(klass = ImageWithThumbsAttachment) + attachment_model klass + attachment = nil + assert_created 3 do + attachment = upload_file :filename => '/files/rails.png' + end + assert_not_created do # no new db_file records + use_temp_file "files/rails.png" do |file| + attachment.filename = 'rails2.png' + attachment.temp_path = File.join(fixture_path, file) + attachment.save! + end + end + end + + test_against_subclass :test_should_overwrite_old_thumbnail_records_when_updating, ImageWithThumbsAttachment + + def test_should_overwrite_old_thumbnail_records_when_renaming(klass = ImageWithThumbsAttachment) + attachment_model klass + attachment = nil + assert_created 3 do + attachment = upload_file :class => klass, :filename => '/files/rails.png' + end + assert_not_created do # no new db_file records + attachment.filename = 'rails2.png' + attachment.save + assert !attachment.reload.size.zero? + assert_equal 'rails2.png', attachment.filename + end + end + + test_against_subclass :test_should_overwrite_old_thumbnail_records_when_renaming, ImageWithThumbsAttachment + else + def test_flunk + puts "RMagick not installed, no tests running" + end + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/schema.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/schema.rb new file mode 100644 index 0000000..b2e284d --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/schema.rb @@ -0,0 +1,86 @@ +ActiveRecord::Schema.define(:version => 0) do + create_table :attachments, :force => true do |t| + t.column :db_file_id, :integer + t.column :parent_id, :integer + t.column :thumbnail, :string + t.column :filename, :string, :limit => 255 + t.column :content_type, :string, :limit => 255 + t.column :size, :integer + t.column :width, :integer + t.column :height, :integer + t.column :aspect_ratio, :float + end + + create_table :file_attachments, :force => true do |t| + t.column :parent_id, :integer + t.column :thumbnail, :string + t.column :filename, :string, :limit => 255 + t.column :content_type, :string, :limit => 255 + t.column :size, :integer + t.column :width, :integer + t.column :height, :integer + t.column :type, :string + t.column :aspect_ratio, :float + end + + create_table :image_science_attachments, :force => true do |t| + t.column :parent_id, :integer + t.column :thumbnail, :string + t.column :filename, :string, :limit => 255 + t.column :content_type, :string, :limit => 255 + t.column :size, :integer + t.column :width, :integer + t.column :height, :integer + t.column :type, :string + end + + create_table :mini_magick_attachments, :force => true do |t| + t.column :parent_id, :integer + t.column :thumbnail, :string + t.column :filename, :string, :limit => 255 + t.column :content_type, :string, :limit => 255 + t.column :size, :integer + t.column :width, :integer + t.column :height, :integer + t.column :type, :string + end + + create_table :mini_magick_attachments, :force => true do |t| + t.column :parent_id, :integer + t.column :thumbnail, :string + t.column :filename, :string, :limit => 255 + t.column :content_type, :string, :limit => 255 + t.column :size, :integer + t.column :width, :integer + t.column :height, :integer + t.column :type, :string + end + + create_table :orphan_attachments, :force => true do |t| + t.column :db_file_id, :integer + t.column :filename, :string, :limit => 255 + t.column :content_type, :string, :limit => 255 + t.column :size, :integer + end + + create_table :minimal_attachments, :force => true do |t| + t.column :size, :integer + t.column :content_type, :string, :limit => 255 + end + + create_table :db_files, :force => true do |t| + t.column :data, :binary + end + + create_table :s3_attachments, :force => true do |t| + t.column :parent_id, :integer + t.column :thumbnail, :string + t.column :filename, :string, :limit => 255 + t.column :content_type, :string, :limit => 255 + t.column :size, :integer + t.column :width, :integer + t.column :height, :integer + t.column :type, :string + t.column :aspect_ratio, :float + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/test_helper.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/test_helper.rb new file mode 100644 index 0000000..66a0b72 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/test_helper.rb @@ -0,0 +1,142 @@ +$:.unshift(File.dirname(__FILE__) + '/../lib') + +ENV['RAILS_ENV'] = 'test' + +require 'test/unit' +require File.expand_path(File.join(File.dirname(__FILE__), '../../../../config/environment.rb')) +require 'breakpoint' +require 'active_record/fixtures' +require 'action_controller/test_process' + +config = YAML::load(IO.read(File.dirname(__FILE__) + '/database.yml')) +ActiveRecord::Base.logger = Logger.new(File.dirname(__FILE__) + "/debug.log") + +db_adapter = ENV['DB'] + +# no db passed, try one of these fine config-free DBs before bombing. +db_adapter ||= + begin + require 'rubygems' + require 'sqlite' + 'sqlite' + rescue MissingSourceFile + begin + require 'sqlite3' + 'sqlite3' + rescue MissingSourceFile + end + end + +if db_adapter.nil? + raise "No DB Adapter selected. Pass the DB= option to pick one, or install Sqlite or Sqlite3." +end + +ActiveRecord::Base.establish_connection(config[db_adapter]) + +load(File.dirname(__FILE__) + "/schema.rb") + +Test::Unit::TestCase.fixture_path = File.dirname(__FILE__) + "/fixtures" +$LOAD_PATH.unshift(Test::Unit::TestCase.fixture_path) + +class Test::Unit::TestCase #:nodoc: + include ActionController::TestProcess + def create_fixtures(*table_names) + if block_given? + Fixtures.create_fixtures(Test::Unit::TestCase.fixture_path, table_names) { yield } + else + Fixtures.create_fixtures(Test::Unit::TestCase.fixture_path, table_names) + end + end + + def setup + Attachment.saves = 0 + DbFile.transaction { [Attachment, FileAttachment, OrphanAttachment, MinimalAttachment, DbFile].each { |klass| klass.delete_all } } + attachment_model self.class.attachment_model + end + + def teardown + FileUtils.rm_rf File.join(File.dirname(__FILE__), 'files') + end + + self.use_transactional_fixtures = true + self.use_instantiated_fixtures = false + + def self.attachment_model(klass = nil) + @attachment_model = klass if klass + @attachment_model + end + + def self.test_against_class(test_method, klass, subclass = false) + define_method("#{test_method}_on_#{:sub if subclass}class") do + klass = Class.new(klass) if subclass + attachment_model klass + send test_method, klass + end + end + + def self.test_against_subclass(test_method, klass) + test_against_class test_method, klass, true + end + + protected + def upload_file(options = {}) + use_temp_file options[:filename] do |file| + att = attachment_model.create :uploaded_data => fixture_file_upload(file, options[:content_type] || 'image/png') + att.reload unless att.new_record? + return att + end + end + + def use_temp_file(fixture_filename) + temp_path = File.join('/tmp', File.basename(fixture_filename)) + FileUtils.mkdir_p File.join(fixture_path, 'tmp') + FileUtils.cp File.join(fixture_path, fixture_filename), File.join(fixture_path, temp_path) + yield temp_path + ensure + FileUtils.rm_rf File.join(fixture_path, 'tmp') + end + + def assert_created(num = 1) + assert_difference attachment_model.base_class, :count, num do + if attachment_model.included_modules.include? DbFile + assert_difference DbFile, :count, num do + yield + end + else + yield + end + end + end + + def assert_not_created + assert_created(0) { yield } + end + + def should_reject_by_size_with(klass) + attachment_model klass + assert_not_created do + attachment = upload_file :filename => '/files/rails.png' + assert attachment.new_record? + assert attachment.errors.on(:size) + assert_nil attachment.db_file if attachment.respond_to?(:db_file) + end + end + + def assert_difference(object, method = nil, difference = 1) + initial_value = object.send(method) + yield + assert_equal initial_value + difference, object.send(method) + end + + def assert_no_difference(object, method, &block) + assert_difference object, method, 0, &block + end + + def attachment_model(klass = nil) + @attachment_model = klass if klass + @attachment_model + end +end + +require File.join(File.dirname(__FILE__), 'fixtures/attachment') +require File.join(File.dirname(__FILE__), 'base_attachment_tests') \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/validation_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/validation_test.rb new file mode 100644 index 0000000..a14cf99 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/attachment_fu/test/validation_test.rb @@ -0,0 +1,55 @@ +require File.expand_path(File.join(File.dirname(__FILE__), 'test_helper')) + +class ValidationTest < Test::Unit::TestCase + def test_should_invalidate_big_files + @attachment = SmallAttachment.new + assert !@attachment.valid? + assert @attachment.errors.on(:size) + + @attachment.size = 2000 + assert !@attachment.valid? + assert @attachment.errors.on(:size), @attachment.errors.full_messages.to_sentence + + @attachment.size = 1000 + assert !@attachment.valid? + assert_nil @attachment.errors.on(:size) + end + + def test_should_invalidate_small_files + @attachment = BigAttachment.new + assert !@attachment.valid? + assert @attachment.errors.on(:size) + + @attachment.size = 2000 + assert !@attachment.valid? + assert @attachment.errors.on(:size), @attachment.errors.full_messages.to_sentence + + @attachment.size = 1.megabyte + assert !@attachment.valid? + assert_nil @attachment.errors.on(:size) + end + + def test_should_validate_content_type + @attachment = PdfAttachment.new + assert !@attachment.valid? + assert @attachment.errors.on(:content_type) + + @attachment.content_type = 'foo' + assert !@attachment.valid? + assert @attachment.errors.on(:content_type) + + @attachment.content_type = 'pdf' + assert !@attachment.valid? + assert_nil @attachment.errors.on(:content_type) + end + + def test_should_require_filename + @attachment = Attachment.new + assert !@attachment.valid? + assert @attachment.errors.on(:filename) + + @attachment.filename = 'foo' + assert !@attachment.valid? + assert_nil @attachment.errors.on(:filename) + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/mysql_tasks/README b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/mysql_tasks/README new file mode 100644 index 0000000..5e24094 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/mysql_tasks/README @@ -0,0 +1,12 @@ += MysqlTasks + +Some rake tasks to automate common database tasks (create/destroy & backup/restore). + +== Components + +rake db:mysql:create # Create database (using database.yml config) +rake db:mysql:destroy # Destroy database (using database.yml config) +rake db:mysql:backup # Dump schema and data to an SQL file (/db/backup_YYYY_MM_DD.sql) +rake db:mysql:restore # Load schema and data from an SQL file (/db/restore.sql) + +Specifying RAILS_ENV works if you want to perform operations on test or production databases. \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/mysql_tasks/tasks/mysql_tasks.rake b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/mysql_tasks/tasks/mysql_tasks.rake new file mode 100644 index 0000000..1c4def8 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/mysql_tasks/tasks/mysql_tasks.rake @@ -0,0 +1,59 @@ +namespace :db do + namespace :mysql do + desc "Dump schema and data to an SQL file (/db/backup_YYYY_MM_DD.sql)" + task :backup => :environment do + current_date = Time.now.strftime("%Y_%m_%d") + archive = "#{RAILS_ROOT}/db/backup_#{current_date}.sql" + database, user, password = retrieve_db_info + + cmd = "/usr/bin/env mysqldump --opt --skip-add-locks -u#{user} " + puts cmd + "... [password filtered]" + cmd += " -p'#{password}' " unless password.nil? + cmd += " #{database} > #{archive}" + result = system(cmd) + end + + desc "Load schema and data from an SQL file (/db/restore.sql)" + task :restore => :environment do + archive = "#{RAILS_ROOT}/db/restore.sql" + database, user, password = retrieve_db_info + + cmd = "/usr/bin/env mysql -u #{user} #{database} < #{archive}" + puts cmd + "... [password filtered]" + cmd += " -p'#{password}'" + result = system(cmd) + end + + desc "Create database (using database.yml config)" + task :create => :environment do + database, user, password = retrieve_db_info + + sql = "CREATE DATABASE #{database};" + sql += "GRANT ALL PRIVILEGES ON #{database}.* TO #{user}@localhost IDENTIFIED BY '#{password}';" + mysql_execute(user, password, sql) + end + + desc "Destroy database (using database.yml config)" + task :destroy => :environment do + database, user, password = retrieve_db_info + sql = "DROP DATABASE #{database};" + mysql_execute(user, password, sql) + end + end +end + + private + def retrieve_db_info + result = File.read "#{RAILS_ROOT}/config/database.yml" + result.strip! + config_file = YAML::load(ERB.new(result).result) + return [ + config_file[RAILS_ENV]['database'], + config_file[RAILS_ENV]['username'], + config_file[RAILS_ENV]['password'] + ] + end + + def mysql_execute(username, password, sql) + system("/usr/bin/env mysql -u #{username} -p'#{password}' --execute=\"#{sql}\"") + end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/README b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/README new file mode 100644 index 0000000..75d410d --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/README @@ -0,0 +1,29 @@ +Restful Authentication Generator +==== + +This is a basic restful authentication generator for rails, taken from acts as authenticated. Currently it requires Rails 1.2 (or edge). + +To use: + + ./script/generate authenticated user sessions --include-activation + +The first parameter specifies the model that gets created in signup (typically a user or account model). A model with migration is created, as well as a basic controller with the create method. + +The second parameter specifies the sessions controller name. This is the controller that handles the actual login/logout function on the site. + +The third parameter (--include-activation) generates the code for a ActionMailer and its respective Activation Code through email. + +You can pass --skip-migration to skip the user migration. + +From here, you will need to add the resource routes in config/routes.rb. + + map.resources :users + map.resource :session + +If you're on rails 1.2.3 you may need to specify the controller name for the session singular resource: + + map.resource :session, :controller => 'sessions' + +Also, add an observer to config/environment.rb if you chose the --include-activation option + config.active_record.observers = :user_observer # or whatever you named your model + diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/Rakefile b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/Rakefile new file mode 100644 index 0000000..03e0f37 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/Rakefile @@ -0,0 +1,22 @@ +require 'rake' +require 'rake/testtask' +require 'rake/rdoctask' + +desc 'Default: run unit tests.' +task :default => :test + +desc 'Test the restful_authentication plugin.' +Rake::TestTask.new(:test) do |t| + t.libs << 'lib' + t.pattern = 'test/**/*_test.rb' + t.verbose = true +end + +desc 'Generate documentation for the restful_authentication plugin.' +Rake::RDocTask.new(:rdoc) do |rdoc| + rdoc.rdoc_dir = 'rdoc' + rdoc.title = 'RestfulAuthentication' + rdoc.options << '--line-numbers' << '--inline-source' + rdoc.rdoc_files.include('README') + rdoc.rdoc_files.include('lib/**/*.rb') +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/USAGE b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/USAGE new file mode 100644 index 0000000..72794d7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/USAGE @@ -0,0 +1 @@ +./script/generate authenticated USERMODEL CONTROLLERNAME \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/authenticated_generator.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/authenticated_generator.rb new file mode 100644 index 0000000..6dc57a0 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/authenticated_generator.rb @@ -0,0 +1,218 @@ +class AuthenticatedGenerator < Rails::Generator::NamedBase + attr_reader :controller_name, + :controller_class_path, + :controller_file_path, + :controller_class_nesting, + :controller_class_nesting_depth, + :controller_class_name, + :controller_singular_name, + :controller_plural_name + alias_method :controller_file_name, :controller_singular_name + alias_method :controller_table_name, :controller_plural_name + attr_reader :model_controller_name, + :model_controller_class_path, + :model_controller_file_path, + :model_controller_class_nesting, + :model_controller_class_nesting_depth, + :model_controller_class_name, + :model_controller_singular_name, + :model_controller_plural_name + alias_method :model_controller_file_name, :model_controller_singular_name + alias_method :model_controller_table_name, :model_controller_plural_name + + def initialize(runtime_args, runtime_options = {}) + super + + @controller_name = args.shift || 'sessions' + @model_controller_name = @name.pluralize + + # sessions controller + base_name, @controller_class_path, @controller_file_path, @controller_class_nesting, @controller_class_nesting_depth = extract_modules(@controller_name) + @controller_class_name_without_nesting, @controller_singular_name, @controller_plural_name = inflect_names(base_name) + + if @controller_class_nesting.empty? + @controller_class_name = @controller_class_name_without_nesting + else + @controller_class_name = "#{@controller_class_nesting}::#{@controller_class_name_without_nesting}" + end + + # model controller + base_name, @model_controller_class_path, @model_controller_file_path, @model_controller_class_nesting, @model_controller_class_nesting_depth = extract_modules(@model_controller_name) + @model_controller_class_name_without_nesting, @model_controller_singular_name, @model_controller_plural_name = inflect_names(base_name) + + if @model_controller_class_nesting.empty? + @model_controller_class_name = @model_controller_class_name_without_nesting + else + @model_controller_class_name = "#{@model_controller_class_nesting}::#{@model_controller_class_name_without_nesting}" + end + end + + def manifest + recorded_session = record do |m| + # Check for class naming collisions. + m.class_collisions controller_class_path, "#{controller_class_name}Controller", # Sessions Controller + "#{controller_class_name}Helper" + m.class_collisions model_controller_class_path, "#{model_controller_class_name}Controller", # Model Controller + "#{model_controller_class_name}Helper" + m.class_collisions class_path, "#{class_name}", "#{class_name}Mailer", "#{class_name}MailerTest", "#{class_name}Observer" + m.class_collisions [], 'AuthenticatedSystem', 'AuthenticatedTestHelper' + + # Controller, helper, views, and test directories. + m.directory File.join('app/models', class_path) + m.directory File.join('app/controllers', controller_class_path) + m.directory File.join('app/controllers', model_controller_class_path) + m.directory File.join('app/helpers', controller_class_path) + m.directory File.join('app/views', controller_class_path, controller_file_name) + m.directory File.join('app/views', class_path, "#{file_name}_mailer") if options[:include_activation] + m.directory File.join('test/functional', controller_class_path) + m.directory File.join('app/controllers', model_controller_class_path) + m.directory File.join('app/helpers', model_controller_class_path) + m.directory File.join('app/views', model_controller_class_path, model_controller_file_name) + m.directory File.join('test/functional', model_controller_class_path) + m.directory File.join('test/unit', class_path) + + m.template 'model.rb', + File.join('app/models', + class_path, + "#{file_name}.rb") + + if options[:include_activation] + %w( mailer observer ).each do |model_type| + m.template "#{model_type}.rb", File.join('app/models', + class_path, + "#{file_name}_#{model_type}.rb") + end + end + + m.template 'controller.rb', + File.join('app/controllers', + controller_class_path, + "#{controller_file_name}_controller.rb") + + m.template 'model_controller.rb', + File.join('app/controllers', + model_controller_class_path, + "#{model_controller_file_name}_controller.rb") + + m.template 'authenticated_system.rb', + File.join('lib', 'authenticated_system.rb') + + m.template 'authenticated_test_helper.rb', + File.join('lib', 'authenticated_test_helper.rb') + + m.template 'functional_test.rb', + File.join('test/functional', + controller_class_path, + "#{controller_file_name}_controller_test.rb") + + m.template 'model_functional_test.rb', + File.join('test/functional', + model_controller_class_path, + "#{model_controller_file_name}_controller_test.rb") + + m.template 'helper.rb', + File.join('app/helpers', + controller_class_path, + "#{controller_file_name}_helper.rb") + + m.template 'model_helper.rb', + File.join('app/helpers', + model_controller_class_path, + "#{model_controller_file_name}_helper.rb") + + m.template 'unit_test.rb', + File.join('test/unit', + class_path, + "#{file_name}_test.rb") + + if options[:include_activation] + m.template 'mailer_test.rb', File.join('test/unit', class_path, "#{file_name}_mailer_test.rb") + end + + m.template 'fixtures.yml', + File.join('test/fixtures', + "#{table_name}.yml") + + # Controller templates + m.template 'login.rhtml', File.join('app/views', controller_class_path, controller_file_name, "new.rhtml") + m.template 'signup.rhtml', File.join('app/views', model_controller_class_path, model_controller_file_name, "new.rhtml") + + if options[:include_activation] + # Mailer templates + %w( activation signup_notification ).each do |action| + m.template "#{action}.rhtml", + File.join('app/views', "#{file_name}_mailer", "#{action}.rhtml") + end + end + + unless options[:skip_migration] + m.migration_template 'migration.rb', 'db/migrate', :assigns => { + :migration_name => "Create#{class_name.pluralize.gsub(/::/, '')}" + }, :migration_file_name => "create_#{file_path.gsub(/\//, '_').pluralize}" + end + end + + action = nil + action = $0.split("/")[1] + case action + when "generate" + puts + puts ("-" * 70) + puts "Don't forget to:" + puts + puts " - add restful routes in config/routes.rb" + puts " map.resources :#{model_controller_file_name}" + puts " map.resource :#{controller_singular_name.singularize}" + puts + puts " Rails 1.2.3 may need a :controller option for the singular resource:" + puts " - map.resource :#{controller_singular_name.singularize}, :controller => '#{controller_file_name}'" + puts + if options[:include_activation] + puts " map.activate '/activate/:activation_code', :controller => '#{model_controller_file_name}', :action => 'activate'" + puts + puts " - add an observer to config/environment.rb" + puts " config.active_record.observers = :#{file_name}_observer" + end + puts + puts "Try these for some familiar login URLs if you like:" + puts + puts " map.signup '/signup', :controller => '#{model_controller_file_name}', :action => 'new'" + puts " map.login '/login', :controller => '#{controller_file_name}', :action => 'new'" + puts " map.logout '/logout', :controller => '#{controller_file_name}', :action => 'destroy'" + puts + puts ("-" * 70) + puts + when "destroy" + puts + puts ("-" * 70) + puts + puts "Thanks for using restful_authentication" + puts + puts "Don't forget to comment out the observer line in environment.rb" + puts " (This was optional so it may not even be there)" + puts " # config.active_record.observers = :#{file_name}_observer" + puts + puts ("-" * 70) + puts + else + puts + end + + recorded_session + end + + protected + # Override with your own usage banner. + def banner + "Usage: #{$0} authenticated ModelName [ControllerName]" + end + + def add_options!(opt) + opt.separator '' + opt.separator 'Options:' + opt.on("--skip-migration", + "Don't generate a migration file for this model") { |v| options[:skip_migration] = v } + opt.on("--include-activation", + "Generate signup 'activation code' confirmation via email") { |v| options[:include_activation] = v } + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/activation.rhtml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/activation.rhtml new file mode 100644 index 0000000..2258e1f --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/activation.rhtml @@ -0,0 +1,3 @@ +<%%= @<%= file_name %>.login %>, your account has been activated. You may now start adding your plugins: + + <%%= @url %> \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_system.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_system.rb new file mode 100644 index 0000000..62b684d --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_system.rb @@ -0,0 +1,127 @@ +module AuthenticatedSystem + protected + # Returns true or false if the user is logged in. + # Preloads @current_<%= file_name %> with the user model if they're logged in. + def logged_in? + current_<%= file_name %> != :false + end + + # Accesses the current <%= file_name %> from the session. Set it to :false if login fails + # so that future calls do not hit the database. + def current_<%= file_name %> + @current_user ||= (login_from_session || login_from_basic_auth || login_from_cookie || :false) + end + + # Store the given <%= file_name %> in the session. + def current_<%= file_name %>=(new_<%= file_name %>) + session[:<%= file_name %>] = (new_<%= file_name %>.nil? || new_<%= file_name %>.is_a?(Symbol)) ? nil : new_<%= file_name %>.id + @current_<%= file_name %> = new_<%= file_name %> + end + + # Check if the <%= file_name %> is authorized + # + # Override this method in your controllers if you want to restrict access + # to only a few actions or if you want to check if the <%= file_name %> + # has the correct rights. + # + # Example: + # + # # only allow nonbobs + # def authorized? + # current_<%= file_name %>.login != "bob" + # end + def authorized? + logged_in? + end + + # Filter method to enforce a login requirement. + # + # To require logins for all actions, use this in your controllers: + # + # before_filter :login_required + # + # To require logins for specific actions, use this in your controllers: + # + # before_filter :login_required, :only => [ :edit, :update ] + # + # To skip this in a subclassed controller: + # + # skip_before_filter :login_required + # + def login_required + authorized? || access_denied + end + + # Redirect as appropriate when an access request fails. + # + # The default action is to redirect to the login screen. + # + # Override this method in your controllers if you want to have special + # behavior in case the <%= file_name %> is not authorized + # to access the requested action. For example, a popup window might + # simply close itself. + def access_denied + respond_to do |accepts| + accepts.html do + store_location + redirect_to :controller => '/<%= controller_file_name %>', :action => 'new' + end + accepts.xml do + headers["Status"] = "Unauthorized" + headers["WWW-Authenticate"] = %(Basic realm="Web Password") + render :text => "Could't authenticate you", :status => '401 Unauthorized' + end + end + false + end + + # Store the URI of the current request in the session. + # + # We can return to this location by calling #redirect_back_or_default. + def store_location + session[:return_to] = request.request_uri + end + + # Redirect to the URI stored by the most recent store_location call or + # to the passed default. + def redirect_back_or_default(default) + session[:return_to] ? redirect_to_url(session[:return_to]) : redirect_to(default) + session[:return_to] = nil + end + + # Inclusion hook to make #current_<%= file_name %> and #logged_in? + # available as ActionView helper methods. + def self.included(base) + base.send :helper_method, :current_<%= file_name %>, :logged_in? + end + + # Called from #current_user. First attempt to login by the user id stored in the session. + def login_from_session + self.current_<%= file_name %> = <%= class_name %>.find_by_id(session[:<%= file_name %>]) if session[:<%= file_name %>] + end + + # Called from #current_user. Now, attempt to login by basic authentication information. + def login_from_basic_auth + username, passwd = get_auth_data + self.current_<%= file_name %> = <%= class_name %>.authenticate(username, passwd) if username && passwd + end + + # Called from #current_user. Finaly, attempt to login by an expiring token in the cookie. + def login_from_cookie + <%= file_name %> = cookies[:auth_token] && <%= class_name %>.find_by_remember_token(cookies[:auth_token]) + if <%= file_name %> && <%= file_name %>.remember_token? + <%= file_name %>.remember_me + cookies[:auth_token] = { :value => <%= file_name %>.remember_token, :expires => <%= file_name %>.remember_token_expires_at } + self.current_<%= file_name %> = <%= file_name %> + end + end + + private + @@http_auth_headers = %w(X-HTTP_AUTHORIZATION HTTP_AUTHORIZATION Authorization) + # gets BASIC auth info + def get_auth_data + auth_key = @@http_auth_headers.detect { |h| request.env.has_key?(h) } + auth_data = request.env[auth_key].to_s.split unless auth_key.blank? + return auth_data && auth_data[0] == 'Basic' ? Base64.decode64(auth_data[1]).split(':')[0..1] : [nil, nil] + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_test_helper.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_test_helper.rb new file mode 100644 index 0000000..a814224 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_test_helper.rb @@ -0,0 +1,26 @@ +module AuthenticatedTestHelper + # Sets the current <%= file_name %> in the session from the <%= file_name %> fixtures. + def login_as(<%= file_name %>) + @request.session[:<%= file_name %>] = <%= file_name %> ? <%= table_name %>(<%= file_name %>).id : nil + end + + def authorize_as(user) + @request.env["HTTP_AUTHORIZATION"] = user ? "Basic #{Base64.encode64("#{users(user).login}:test")}" : nil + end + + # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3 + def assert_difference(expressions, difference = 1, message = nil, &block) + expression_evaluations = [expressions].flatten.collect{|expression| lambda { eval(expression, block.binding) } } + + original_values = expression_evaluations.inject([]) { |memo, expression| memo << expression.call } + yield + expression_evaluations.each_with_index do |expression, i| + assert_equal original_values[i] + difference, expression.call, message + end + end + + # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3 + def assert_no_difference(expressions, message = nil, &block) + assert_difference expressions, 0, message, &block + end +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/controller.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/controller.rb new file mode 100644 index 0000000..50f8dc5 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/controller.rb @@ -0,0 +1,31 @@ +# This controller handles the login/logout function of the site. +class <%= controller_class_name %>Controller < ApplicationController + # Be sure to include AuthenticationSystem in Application Controller instead + include AuthenticatedSystem + + # render new.rhtml + def new + end + + def create + self.current_<%= file_name %> = <%= class_name %>.authenticate(params[:login], params[:password]) + if logged_in? + if params[:remember_me] == "1" + self.current_<%= file_name %>.remember_me + cookies[:auth_token] = { :value => self.current_<%= file_name %>.remember_token , :expires => self.current_<%= file_name %>.remember_token_expires_at } + end + redirect_back_or_default('/') + flash[:notice] = "Logged in successfully" + else + render :action => 'new' + end + end + + def destroy + self.current_<%= file_name %>.forget_me if logged_in? + cookies.delete :auth_token + reset_session + flash[:notice] = "You have been logged out." + redirect_back_or_default('/') + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/fixtures.yml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/fixtures.yml new file mode 100644 index 0000000..9c4ae10 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/fixtures.yml @@ -0,0 +1,17 @@ +quentin: + id: 1 + login: quentin + email: quentin@example.com + salt: 7e3041ebc2fc05a40c60028e2c4901a81035d3cd + crypted_password: 00742970dc9e6319f8019fd54864d3ea740f04b1 # test + created_at: <%%= 5.days.ago.to_s :db %> +<% if options[:include_activation] %> activation_code: 8f24789ae988411ccf33ab0c30fe9106fab32e9b <% end %> +<% if options[:include_activation] %> activated_at: <%%= 5.days.ago.to_s :db %> <% end %> +aaron: + id: 2 + login: aaron + email: aaron@example.com + salt: 7e3041ebc2fc05a40c60028e2c4901a81035d3cd + crypted_password: 00742970dc9e6319f8019fd54864d3ea740f04b1 # test + created_at: <%%= 1.days.ago.to_s :db %> +<% if options[:include_activation] %> activation_code: 8f24789ae988411ccf33ab0c30fe9106fab32e9a <% end %> diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/functional_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/functional_test.rb new file mode 100644 index 0000000..cf46554 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/functional_test.rb @@ -0,0 +1,85 @@ +require File.dirname(__FILE__) + '/../test_helper' +require '<%= controller_file_name %>_controller' + +# Re-raise errors caught by the controller. +class <%= controller_class_name %>Controller; def rescue_action(e) raise e end; end + +class <%= controller_class_name %>ControllerTest < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead + # Then, you can remove it from this and the units test. + include AuthenticatedTestHelper + + fixtures :<%= table_name %> + + def setup + @controller = <%= controller_class_name %>Controller.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_login_and_redirect + post :create, :login => 'quentin', :password => 'test' + assert session[:<%= file_name %>] + assert_response :redirect + end + + def test_should_fail_login_and_not_redirect + post :create, :login => 'quentin', :password => 'bad password' + assert_nil session[:<%= file_name %>] + assert_response :success + end + + def test_should_logout + login_as :quentin + get :destroy + assert_nil session[:<%= file_name %>] + assert_response :redirect + end + + def test_should_remember_me + post :create, :login => 'quentin', :password => 'test', :remember_me => "1" + assert_not_nil @response.cookies["auth_token"] + end + + def test_should_not_remember_me + post :create, :login => 'quentin', :password => 'test', :remember_me => "0" + assert_nil @response.cookies["auth_token"] + end + + def test_should_delete_token_on_logout + login_as :quentin + get :destroy + assert_equal @response.cookies["auth_token"], [] + end + + def test_should_login_with_cookie + <%= table_name %>(:quentin).remember_me + @request.cookies["auth_token"] = cookie_for(:quentin) + get :new + assert @controller.send(:logged_in?) + end + + def test_should_fail_expired_cookie_login + <%= table_name %>(:quentin).remember_me + <%= table_name %>(:quentin).update_attribute :remember_token_expires_at, 5.minutes.ago + @request.cookies["auth_token"] = cookie_for(:quentin) + get :new + assert !@controller.send(:logged_in?) + end + + def test_should_fail_cookie_login + <%= table_name %>(:quentin).remember_me + @request.cookies["auth_token"] = auth_token('invalid_auth_token') + get :new + assert !@controller.send(:logged_in?) + end + + protected + def auth_token(token) + CGI::Cookie.new('name' => 'auth_token', 'value' => token) + end + + def cookie_for(<%= file_name %>) + auth_token <%= table_name %>(<%= file_name %>).remember_token + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/helper.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/helper.rb new file mode 100644 index 0000000..ed5759e --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/helper.rb @@ -0,0 +1,2 @@ +module <%= controller_class_name %>Helper +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/login.rhtml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/login.rhtml new file mode 100644 index 0000000..452a5d5 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/login.rhtml @@ -0,0 +1,14 @@ +<%% form_tag <%= controller_singular_name.singularize %>_path do -%> +


    +<%%= text_field_tag 'login' %>

    + +


    +<%%= password_field_tag 'password' %>

    + + + +

    <%%= submit_tag 'Log in' %>

    +<%% end -%> diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer.rb new file mode 100644 index 0000000..f6e092b --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer.rb @@ -0,0 +1,25 @@ +class <%= class_name %>Mailer < ActionMailer::Base + def signup_notification(<%= file_name %>) + setup_email(<%= file_name %>) + @subject += 'Please activate your new account' + <% if options[:include_activation] %> + @body[:url] = "http://YOURSITE/activate/#{<%= file_name %>.activation_code}" + <% else %> + @body[:url] = "http://YOURSITE/login/" <% end %> + end + + def activation(<%= file_name %>) + setup_email(<%= file_name %>) + @subject += 'Your account has been activated!' + @body[:url] = "http://YOURSITE/" + end + + protected + def setup_email(<%= file_name %>) + @recipients = "#{<%= file_name %>.email}" + @from = "ADMINEMAIL" + @subject = "[YOURSITE] " + @sent_on = Time.now + @body[:<%= file_name %>] = <%= file_name %> + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer_test.rb new file mode 100644 index 0000000..c3f3dfb --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer_test.rb @@ -0,0 +1,31 @@ +require File.dirname(__FILE__) + '/../test_helper' +require '<%= file_name %>_mailer' + +class <%= class_name %>MailerTest < Test::Unit::TestCase + FIXTURES_PATH = File.dirname(__FILE__) + '/../fixtures' + CHARSET = "utf-8" + + include ActionMailer::Quoting + + def setup + ActionMailer::Base.delivery_method = :test + ActionMailer::Base.perform_deliveries = true + ActionMailer::Base.deliveries = [] + + @expected = TMail::Mail.new + @expected.set_content_type "text", "plain", { "charset" => CHARSET } + end + + def test_dummy_test + #do nothing + end + + private + def read_fixture(action) + IO.readlines("#{FIXTURES_PATH}/<%= file_name %>_mailer/#{action}") + end + + def encode(subject) + quoted_printable(subject, CHARSET) + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/migration.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/migration.rb new file mode 100644 index 0000000..239baf7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/migration.rb @@ -0,0 +1,21 @@ +class <%= migration_name %> < ActiveRecord::Migration + def self.up + create_table "<%= table_name %>", :force => true do |t| + t.column :login, :string + t.column :email, :string + t.column :crypted_password, :string, :limit => 40 + t.column :salt, :string, :limit => 40 + t.column :created_at, :datetime + t.column :updated_at, :datetime + t.column :remember_token, :string + t.column :remember_token_expires_at, :datetime + <% if options[:include_activation] %> + t.column :activation_code, :string, :limit => 40 + t.column :activated_at, :datetime<% end %> + end + end + + def self.down + drop_table "<%= table_name %>" + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model.rb new file mode 100644 index 0000000..7f3f9e7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model.rb @@ -0,0 +1,98 @@ +require 'digest/sha1' +class <%= class_name %> < ActiveRecord::Base + # Virtual attribute for the unencrypted password + attr_accessor :password + + validates_presence_of :login, :email + validates_presence_of :password, :if => :password_required? + validates_presence_of :password_confirmation, :if => :password_required? + validates_length_of :password, :within => 4..40, :if => :password_required? + validates_confirmation_of :password, :if => :password_required? + validates_length_of :login, :within => 3..40 + validates_length_of :email, :within => 3..100 + validates_uniqueness_of :login, :email, :case_sensitive => false + before_save :encrypt_password + <% if options[:include_activation] %>before_create :make_activation_code <% end %> + # prevents a user from submitting a crafted form that bypasses activation + # anything else you want your user to change should be added here. + attr_accessible :login, :email, :password, :password_confirmation + <% if options[:include_activation] %> + # Activates the user in the database. + def activate + @activated = true + self.activated_at = Time.now.utc + self.activation_code = nil + save(false) + end + + def activated? + # the existence of an activation code means they have not activated yet + activation_code.nil? + end + + # Returns true if the user has just been activated. + def recently_activated? + @activated + end +<% end %> + # Authenticates a user by their login name and unencrypted password. Returns the user or nil. + def self.authenticate(login, password) + u = <% if options[:include_activation] %>find :first, :conditions => ['login = ? and activated_at IS NOT NULL', login]<% else %>find_by_login(login)<% end %> # need to get the salt + u && u.authenticated?(password) ? u : nil + end + + # Encrypts some data with the salt. + def self.encrypt(password, salt) + Digest::SHA1.hexdigest("--#{salt}--#{password}--") + end + + # Encrypts the password with the user salt + def encrypt(password) + self.class.encrypt(password, salt) + end + + def authenticated?(password) + crypted_password == encrypt(password) + end + + def remember_token? + remember_token_expires_at && Time.now.utc < remember_token_expires_at + end + + # These create and unset the fields required for remembering users between browser closes + def remember_me + remember_me_for 2.weeks + end + + def remember_me_for(time) + remember_me_until time.from_now.utc + end + + def remember_me_until(time) + self.remember_token_expires_at = time + self.remember_token = encrypt("#{email}--#{remember_token_expires_at}") + save(false) + end + + def forget_me + self.remember_token_expires_at = nil + self.remember_token = nil + save(false) + end + + protected + # before filter + def encrypt_password + return if password.blank? + self.salt = Digest::SHA1.hexdigest("--#{Time.now.to_s}--#{login}--") if new_record? + self.crypted_password = encrypt(password) + end + + def password_required? + crypted_password.blank? || !password.blank? + end + <% if options[:include_activation] %> + def make_activation_code + self.activation_code = Digest::SHA1.hexdigest( Time.now.to_s.split(//).sort_by {rand}.join ) + end <% end %> +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model_controller.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model_controller.rb new file mode 100644 index 0000000..c4e8d77 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model_controller.rb @@ -0,0 +1,30 @@ +class <%= model_controller_class_name %>Controller < ApplicationController + # Be sure to include AuthenticationSystem in Application Controller instead + include AuthenticatedSystem + + # render new.rhtml + def new + end + + def create + cookies.delete :auth_token + reset_session + @<%= file_name %> = <%= class_name %>.new(params[:<%= file_name %>]) + @<%= file_name %>.save! + self.current_<%= file_name %> = @<%= file_name %> + redirect_back_or_default('/') + flash[:notice] = "Thanks for signing up!" + rescue ActiveRecord::RecordInvalid + render :action => 'new' + end +<% if options[:include_activation] %> + def activate + self.current_<%= file_name %> = params[:activation_code].blank? ? :false : <%= class_name %>.find_by_activation_code(params[:activation_code]) + if logged_in? && !current_<%= file_name %>.activated? + current_<%= file_name %>.activate + flash[:notice] = "Signup complete!" + end + redirect_back_or_default('/') + end +<% end %> +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model_functional_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model_functional_test.rb new file mode 100644 index 0000000..29165ae --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model_functional_test.rb @@ -0,0 +1,86 @@ +require File.dirname(__FILE__) + '/../test_helper' +require '<%= model_controller_file_name %>_controller' + +# Re-raise errors caught by the controller. +class <%= model_controller_class_name %>Controller; def rescue_action(e) raise e end; end + +class <%= model_controller_class_name %>ControllerTest < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead + # Then, you can remove it from this and the units test. + include AuthenticatedTestHelper + + fixtures :<%= table_name %> + + def setup + @controller = <%= model_controller_class_name %>Controller.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_allow_signup + assert_difference '<%= class_name %>.count' do + create_<%= file_name %> + assert_response :redirect + end + end + + def test_should_require_login_on_signup + assert_no_difference '<%= class_name %>.count' do + create_<%= file_name %>(:login => nil) + assert assigns(:<%= file_name %>).errors.on(:login) + assert_response :success + end + end + + def test_should_require_password_on_signup + assert_no_difference '<%= class_name %>.count' do + create_<%= file_name %>(:password => nil) + assert assigns(:<%= file_name %>).errors.on(:password) + assert_response :success + end + end + + def test_should_require_password_confirmation_on_signup + assert_no_difference '<%= class_name %>.count' do + create_<%= file_name %>(:password_confirmation => nil) + assert assigns(:<%= file_name %>).errors.on(:password_confirmation) + assert_response :success + end + end + + def test_should_require_email_on_signup + assert_no_difference '<%= class_name %>.count' do + create_<%= file_name %>(:email => nil) + assert assigns(:<%= file_name %>).errors.on(:email) + assert_response :success + end + end + <% if options[:include_activation] %> + def test_should_activate_user + assert_nil <%= class_name %>.authenticate('aaron', 'test') + get :activate, :activation_code => <%= table_name %>(:aaron).activation_code + assert_redirected_to '/' + assert_not_nil flash[:notice] + assert_equal <%= table_name %>(:aaron), <%= class_name %>.authenticate('aaron', 'test') + end + + def test_should_not_activate_user_without_key + get :activate + assert_nil flash[:notice] + rescue ActionController::RoutingError + # in the event your routes deny this, we'll just bow out gracefully. + end + + def test_should_not_activate_user_with_blank_key + get :activate, :activation_code => '' + assert_nil flash[:notice] + rescue ActionController::RoutingError + # well played, sir + end<% end %> + + protected + def create_<%= file_name %>(options = {}) + post :create, :<%= file_name %> => { :login => 'quire', :email => 'quire@example.com', + :password => 'quire', :password_confirmation => 'quire' }.merge(options) + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model_helper.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model_helper.rb new file mode 100644 index 0000000..722ad3c --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/model_helper.rb @@ -0,0 +1,2 @@ +module <%= model_controller_class_name %>Helper +end \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/observer.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/observer.rb new file mode 100644 index 0000000..bbf6f5e --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/observer.rb @@ -0,0 +1,11 @@ +class <%= class_name %>Observer < ActiveRecord::Observer + def after_create(<%= file_name %>) + <%= class_name %>Mailer.deliver_signup_notification(<%= file_name %>) + end + + def after_save(<%= file_name %>) + <% if options[:include_activation] %> + <%= class_name %>Mailer.deliver_activation(<%= file_name %>) if <%= file_name %>.recently_activated? + <% end %> + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/signup.rhtml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/signup.rhtml new file mode 100644 index 0000000..66b8269 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/signup.rhtml @@ -0,0 +1,16 @@ +<%%= error_messages_for :<%= file_name %> %> +<%% form_for :<%= file_name %>, :url => <%= table_name %>_path do |f| -%> +


    +<%%= f.text_field :login %>

    + +


    +<%%= f.text_field :email %>

    + +


    +<%%= f.password_field :password %>

    + +


    +<%%= f.password_field :password_confirmation %>

    + +

    <%%= submit_tag 'Sign up' %>

    +<%% end -%> diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/signup_notification.rhtml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/signup_notification.rhtml new file mode 100644 index 0000000..6b0d675 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/signup_notification.rhtml @@ -0,0 +1,8 @@ +Your account has been created. + + Username: <%%= @<%= file_name %>.login %> + Password: <%%= @<%= file_name %>.password %> + +Visit this url to activate your account: + + <%%= @url %> \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/unit_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/unit_test.rb new file mode 100644 index 0000000..ecaa440 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/generators/authenticated/templates/unit_test.rb @@ -0,0 +1,101 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class <%= class_name %>Test < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead. + # Then, you can remove it from this and the functional test. + include AuthenticatedTestHelper + fixtures :<%= table_name %> + + def test_should_create_<%= file_name %> + assert_difference '<%= class_name %>.count' do + <%= file_name %> = create_<%= file_name %> + assert !<%= file_name %>.new_record?, "#{<%= file_name %>.errors.full_messages.to_sentence}" + end + end + + def test_should_require_login + assert_no_difference '<%= class_name %>.count' do + u = create_<%= file_name %>(:login => nil) + assert u.errors.on(:login) + end + end + + def test_should_require_password + assert_no_difference '<%= class_name %>.count' do + u = create_<%= file_name %>(:password => nil) + assert u.errors.on(:password) + end + end + + def test_should_require_password_confirmation + assert_no_difference '<%= class_name %>.count' do + u = create_<%= file_name %>(:password_confirmation => nil) + assert u.errors.on(:password_confirmation) + end + end + + def test_should_require_email + assert_no_difference '<%= class_name %>.count' do + u = create_<%= file_name %>(:email => nil) + assert u.errors.on(:email) + end + end + + def test_should_reset_password + <%= table_name %>(:quentin).update_attributes(:password => 'new password', :password_confirmation => 'new password') + assert_equal <%= table_name %>(:quentin), <%= class_name %>.authenticate('quentin', 'new password') + end + + def test_should_not_rehash_password + <%= table_name %>(:quentin).update_attributes(:login => 'quentin2') + assert_equal <%= table_name %>(:quentin), <%= class_name %>.authenticate('quentin2', 'test') + end + + def test_should_authenticate_<%= file_name %> + assert_equal <%= table_name %>(:quentin), <%= class_name %>.authenticate('quentin', 'test') + end + + def test_should_set_remember_token + <%= table_name %>(:quentin).remember_me + assert_not_nil <%= table_name %>(:quentin).remember_token + assert_not_nil <%= table_name %>(:quentin).remember_token_expires_at + end + + def test_should_unset_remember_token + <%= table_name %>(:quentin).remember_me + assert_not_nil <%= table_name %>(:quentin).remember_token + <%= table_name %>(:quentin).forget_me + assert_nil <%= table_name %>(:quentin).remember_token + end + + def test_should_remember_me_for_one_week + before = 1.week.from_now.utc + <%= table_name %>(:quentin).remember_me_for 1.week + after = 1.week.from_now.utc + assert_not_nil <%= table_name %>(:quentin).remember_token + assert_not_nil <%= table_name %>(:quentin).remember_token_expires_at + assert <%= table_name %>(:quentin).remember_token_expires_at.between?(before, after) + end + + def test_should_remember_me_until_one_week + time = 1.week.from_now.utc + <%= table_name %>(:quentin).remember_me_until time + assert_not_nil <%= table_name %>(:quentin).remember_token + assert_not_nil <%= table_name %>(:quentin).remember_token_expires_at + assert_equal <%= table_name %>(:quentin).remember_token_expires_at, time + end + + def test_should_remember_me_default_two_weeks + before = 2.weeks.from_now.utc + <%= table_name %>(:quentin).remember_me + after = 2.weeks.from_now.utc + assert_not_nil <%= table_name %>(:quentin).remember_token + assert_not_nil <%= table_name %>(:quentin).remember_token_expires_at + assert <%= table_name %>(:quentin).remember_token_expires_at.between?(before, after) + end + + protected + def create_<%= file_name %>(options = {}) + <%= class_name %>.create({ :login => 'quire', :email => 'quire@example.com', :password => 'quire', :password_confirmation => 'quire' }.merge(options)) + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/install.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/install.rb new file mode 100644 index 0000000..a63be40 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/restful_authentication/install.rb @@ -0,0 +1 @@ +puts IO.read(File.join(File.dirname(__FILE__), 'README')) \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/LICENSE b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/LICENSE new file mode 100644 index 0000000..96a48cb --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/LICENSE @@ -0,0 +1,18 @@ +Copyright (c) 2007 PJ Hyett and Mislav Marohnić + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/README b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/README new file mode 100644 index 0000000..24bda40 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/README @@ -0,0 +1,119 @@ += WillPaginate + +Pagination is just limiting the number of records displayed. Why should you let +it get in your way while doing more important tasks on your project? This +plugin makes magic happen. Ever wanted to be able to do just this: + + Post.paginate :page => 1 + +... and then render the page links with a single call to a view helper? Well, +now you can. Simply: + + script/plugin install svn://errtheblog.com/svn/plugins/will_paginate + +Ryan Bates made an awesome screencast[http://railscasts.com/episodes/51], check +it out. + + +== Example usage: + +Use a paginate finder in the controller: + + @posts = Post.paginate_by_board_id @board.id, :page => params[:page] + +Yeah, +paginate+ works just like +find+ -- it just doesn't fetch all the +records. Don't forget to tell it which page you want, or it will complain! +Read more on WillPaginate::Finder::ClassMethods. + +Render the posts in your view like you would normally do. When you need to render +pagination, just stick this in: + + <%= will_paginate @posts %> + +You're done. (Copy and paste the example fancy CSS styles from the bottom.) You +can find the option list at WillPaginate::ViewHelpers. + +How does it know how much items to fetch per page? It asks your model by calling ++Post.per_page+. You can define it like this: + + class Post < ActiveRecord::Base + cattr_reader :per_page + @@per_page = 50 + end + +... or like this: + + class Post < ActiveRecord::Base + def self.per_page + 50 + end + end + +... or don't worry about it at all. (WillPaginate defines it to be 30 if missing.) +You can also specify the count explicitly when calling +paginate+: + + @posts = Post.paginate :page => params[:page], :per_page => 50 + +The +paginate+ finder wraps the original finder and returns your resultset that now has +some new properties. You can use the collection as you would with any ActiveRecord +resultset, but WillPaginate view helpers also need that object to be able to render pagination: + +
      + <% for post in @posts -%> +
    1. Render `post` in some nice way.
    2. + <% end -%> +
    + +

    Now let's render us some pagination!

    + <%= will_paginate @posts %> + + +== Authors, credits, contact! + +REPORT BUGS on Lighthouse: http://err.lighthouseapp.com/projects/466-plugins/overview + +BROWSE SOURCE on Warehouse: http://plugins.require.errtheblog.com/browser/will_paginate + +Want to discuss, request features, ask questions? Join the Google group: +http://groups.google.com/group/will_paginate + + Ruby port by: PJ Hyett, Mislav Marohnić (Sulien) + Original announcement: http://errtheblog.com/post/929 + Original PHP source: http://www.strangerstudios.com/sandbox/pagination/diggstyle.php + Contributors: Chris Wanstrath, Dr. Nic Williams, K. Adam Christensen, + Mike Garey, Bence Golda, Matt Aimonetti, Charles Brian Quinn, + Desi McAdam, James Coglan, Matijs van Zuijlen + +== Want Digg style? + +Copy the following css into your stylesheet for a good start: + + .pagination { + padding: 3px; + margin: 3px; + } + .pagination a { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #aaaadd; + text-decoration: none; + color: #000099; + } + .pagination a:hover, .pagination a:active { + border: 1px solid #000099; + color: #000; + } + .pagination span.current { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #000099; + font-weight: bold; + background-color: #000099; + color: #FFF; + } + .pagination span.disabled { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #eee; + color: #ddd; + } diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/Rakefile b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/Rakefile new file mode 100644 index 0000000..9a81ef5 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/Rakefile @@ -0,0 +1,26 @@ +require 'rake' +require 'rake/testtask' +require 'rake/rdoctask' + +desc 'Default: run unit tests.' +task :default => :test + +desc 'Test the will_paginate plugin.' +Rake::TestTask.new(:test) do |t| + t.pattern = 'test/**/*_test.rb' + t.verbose = true +end + +desc 'Generate RDoc documentation for the will_paginate plugin.' +Rake::RDocTask.new(:rdoc) do |rdoc| + files = ['README', 'LICENSE', 'lib/**/*.rb'] + rdoc.rdoc_files.add(files) + rdoc.main = "README" # page to start on + rdoc.title = "will_paginate" + + templates = %w[/Users/chris/ruby/projects/err/rock/template.rb /var/www/rock/template.rb] + rdoc.template = templates.find { |t| File.exists? t } + + rdoc.rdoc_dir = 'doc' # rdoc output folder + rdoc.options << '--inline-source' +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/init.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/init.rb new file mode 100644 index 0000000..9a774d1 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/init.rb @@ -0,0 +1,4 @@ +unless ActiveRecord::Base.respond_to? :paginate + require 'will_paginate' + WillPaginate.enable +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate.rb new file mode 100644 index 0000000..74e69c1 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate.rb @@ -0,0 +1,57 @@ +require 'active_support' + +# = You *will* paginate! +# +# First read about WillPaginate::Finder::ClassMethods, then see +# WillPaginate::ViewHelpers. The magical array you're handling in-between is +# WillPaginate::Collection. +# +# Happy paginating! +module WillPaginate + class << self + def enable + enable_actionpack + enable_activerecord + end + + def enable_actionpack + return if ActionView::Base.instance_methods.include? 'will_paginate' + require 'will_paginate/view_helpers' + ActionView::Base.class_eval { include ViewHelpers } + end + + def enable_activerecord + return if ActiveRecord::Base.respond_to? :paginate + require 'will_paginate/finder' + ActiveRecord::Base.class_eval { include Finder } + + associations = ActiveRecord::Associations + collection = associations::AssociationCollection + + # to support paginating finders on associations, we have to mix in the + # method_missing magic from WillPaginate::Finder::ClassMethods to AssociationProxy + # subclasses, but in a different way for Rails 1.2.x and 2.0 + (collection.instance_methods.include?(:create!) ? + collection : collection.subclasses.map(&:constantize) + ).push(associations::HasManyThroughAssociation).each do |klass| + klass.class_eval do + include Finder::ClassMethods + alias_method_chain :method_missing, :paginate + end + end + end + end + + module Deprecation + extend ActiveSupport::Deprecation + + def self.warn(message, callstack = caller) + message = 'WillPaginate: ' + message.strip.gsub(/ {3,}/, ' ') + behavior.call(message, callstack) if behavior && !silenced? + end + + def self.silenced? + ActiveSupport::Deprecation.silenced? + end + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/collection.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/collection.rb new file mode 100644 index 0000000..d435a5f --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/collection.rb @@ -0,0 +1,113 @@ +module WillPaginate + # Arrays returned from paginating finds are, in fact, instances of this. + # You may think of WillPaginate::Collection as an ordinary array with some + # extra properties. Those properties are used by view helpers to generate + # correct page links. + # + # WillPaginate::Collection also assists in rolling out your own pagination + # solutions: see +create+. + # + class Collection < Array + attr_reader :current_page, :per_page, :total_entries + + # Arguments to this constructor are the current page number, per-page limit + # and the total number of entries. The last argument is optional because it + # is best to do lazy counting; in other words, count *conditionally* after + # populating the collection using the +replace+ method. + # + def initialize(page, per_page, total = nil) + @current_page = page.to_i + @per_page = per_page.to_i + + self.total_entries = total if total + end + + # Just like +new+, but yields the object after instantiation and returns it + # afterwards. This is very useful for manual pagination: + # + # @entries = WillPaginate::Collection.create(1, 10) do |pager| + # result = Post.find(:all, :limit => pager.per_page, :offset => pager.offset) + # # inject the result array into the paginated collection: + # pager.replace(result) + # + # unless pager.total_entries + # # the pager didn't manage to guess the total count, do it manually + # pager.total_entries = Post.count + # end + # end + # + # The possibilities with this are endless. For another example, here is how + # WillPaginate defines pagination on Array instances: + # + # Array.class_eval do + # def paginate(page = 1, per_page = 15) + # WillPaginate::Collection.create(page, per_page, size) do |pager| + # pager.replace self[pager.offset, pager.per_page].to_a + # end + # end + # end + # + def self.create(page, per_page, total = nil, &block) + pager = new(page, per_page, total) + yield pager + pager + end + + # The total number of pages. + def page_count + @total_pages + end + + # Helper method that is true when someone tries to fetch a page with a larger + # number than the last page or with a number smaller than 1 + def out_of_bounds? + current_page > page_count or current_page < 1 + end + + # Current offset of the paginated collection. If we're on the first page, + # it is always 0. If we're on the 2nd page and there are 30 entries per page, + # the offset is 30. This property is useful if you want to render ordinals + # besides your records: simply start with offset + 1. + # + def offset + (current_page - 1) * per_page + end + + # current_page - 1 or nil if there is no previous page + def previous_page + current_page > 1 ? (current_page - 1) : nil + end + + # current_page + 1 or nil if there is no next page + def next_page + current_page < page_count ? (current_page + 1) : nil + end + + def total_entries=(number) + @total_entries = number.to_i + @total_pages = (@total_entries / per_page.to_f).ceil + end + + # This is a magic wrapper for the original Array#replace method. It serves + # for populating the paginated collection after initialization. + # + # Why magic? Because it tries to guess the total number of entries judging + # by the size of given array. If it is shorter than +per_page+ limit, then we + # know we're on the last page. This trick is very useful for avoiding + # unnecessary hits to the database to do the counting after we fetched the + # data for the current page. + # + # However, after using +replace+ you should always test the value of + # +total_entries+ and set it to a proper value if it's +nil+. See the example + # in +create+. + def replace(array) + returning super do + # The collection is shorter then page limit? Rejoice, because + # then we know that we are on the last page! + if total_entries.nil? and length > 0 and length < per_page + self.total_entries = offset + length + end + end + end + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/core_ext.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/core_ext.rb new file mode 100644 index 0000000..23cc430 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/core_ext.rb @@ -0,0 +1,61 @@ +require 'set' + +unless Hash.instance_methods.include? 'except' + Hash.class_eval do + # Returns a new hash without the given keys. + def except(*keys) + rejected = Set.new(respond_to?(:convert_key) ? keys.map { |key| convert_key(key) } : keys) + reject { |key,| rejected.include?(key) } + end + + # Replaces the hash without only the given keys. + def except!(*keys) + replace(except(*keys)) + end + end +end + +unless Hash.instance_methods.include? 'slice' + Hash.class_eval do + # Returns a new hash with only the given keys. + def slice(*keys) + allowed = Set.new(respond_to?(:convert_key) ? keys.map { |key| convert_key(key) } : keys) + reject { |key,| !allowed.include?(key) } + end + + # Replaces the hash with only the given keys. + def slice!(*keys) + replace(slice(*keys)) + end + end +end + +require 'will_paginate/collection' + +unless Array.instance_methods.include? 'paginate' + # http://www.desimcadam.com/archives/8 + Array.class_eval do + def paginate(options_or_page = {}, per_page = nil) + if options_or_page.nil? or Fixnum === options_or_page + if defined? WillPaginate::Deprecation + WillPaginate::Deprecation.warn <<-DEPR + Array#paginate now conforms to the main, ActiveRecord::Base#paginate API. You should \ + call it with a parameters hash (:page, :per_page). The old API (numbers as arguments) \ + has been deprecated and is going to be unsupported in future versions of will_paginate. + DEPR + end + page = options_or_page + options = {} + else + options = options_or_page + page = options[:page] || 1 + raise ArgumentError, "wrong number of arguments (1 hash or 2 Fixnums expected)" if per_page + per_page = options[:per_page] + end + + WillPaginate::Collection.create(page || 1, per_page || 30, options[:total_entries] || size) do |pager| + pager.replace self[pager.offset, pager.per_page].to_a + end + end + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/finder.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/finder.rb new file mode 100644 index 0000000..df43c86 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/finder.rb @@ -0,0 +1,174 @@ +require 'will_paginate/core_ext' + +module WillPaginate + # A mixin for ActiveRecord::Base. Provides +per_page+ class method + # and makes +paginate+ finders possible with some method_missing magic. + # + # Find out more in WillPaginate::Finder::ClassMethods + # + module Finder + def self.included(base) + base.extend ClassMethods + class << base + alias_method_chain :method_missing, :paginate + define_method(:per_page) { 30 } unless respond_to?(:per_page) + end + end + + # = Paginating finders for ActiveRecord models + # + # WillPaginate doesn't really add extra methods to your ActiveRecord models (except +per_page+ + # unless it's already available). It simply intercepts + # the calls to paginating finders such as +paginate+, +paginate_by_user_id+ (and so on) and + # translates them to ordinary finders: +find+, +find_by_user_id+, etc. It does so with some + # method_missing magic, but you don't need to care for that. You simply use paginating finders + # same way you used ordinary ones. You only need to tell them what page you want in options. + # + # @topics = Topic.paginate :all, :page => params[:page] + # + # In paginating finders, "all" is implicit. No sense in paginating a single record, right? So: + # + # Post.paginate => Post.find :all + # Post.paginate_all_by_something => Post.find_all_by_something + # Post.paginate_by_something => Post.find_all_by_something + # + # Knowing that, the above example can be written simply as: + # + # @topics = Topic.paginate :page => params[:page] + # + # Don't forget to pass the +page+ parameter! Without it, paginating finders will raise an error. + # + # == Options + # Options for paginating finders are: + # + # page REQUIRED, but defaults to 1 if false or nil + # per_page (default is read from the model, which is 30 if not overridden) + # total entries not needed unless you want to count the records yourself somehow + # count hash of options that are used only for the call to count + # + module ClassMethods + # This methods wraps +find_by_sql+ by simply adding LIMIT and OFFSET to your SQL string + # based on the params otherwise used by paginating finds: +page+ and +per_page+. + # + # Example: + # + # @developers = Developer.paginate_by_sql ['select * from developers where salary > ?', 80000], + # :page => params[:page], :per_page => 3 + # + def paginate_by_sql(sql, options) + options, page, per_page = wp_parse_options!(options) + + WillPaginate::Collection.create(page, per_page) do |pager| + query = sanitize_sql(sql) + count_query = "SELECT COUNT(*) FROM (#{query}) AS count_table" unless options[:total_entries] + options.update :offset => pager.offset, :limit => pager.per_page + + add_limit! query, options + pager.replace find_by_sql(query) + + pager.total_entries = options[:total_entries] || count_by_sql(count_query) unless pager.total_entries + end + end + + def respond_to?(method, include_priv = false) + case method.to_sym + when :paginate, :paginate_by_sql + true + else + super(method.to_s.sub(/^paginate/, 'find'), include_priv) + end + end + + protected + + def method_missing_with_paginate(method, *args, &block) + # did somebody tried to paginate? if not, let them be + unless method.to_s.index('paginate') == 0 + return method_missing_without_paginate(method, *args, &block) + end + + options, page, per_page, total_entries = wp_parse_options!(args.pop) + # an array of IDs may have been given: + total_entries ||= (Array === args.first and args.first.size) + + # paginate finders are really just find_* with limit and offset + finder = method.to_s.sub /^paginate/, 'find' + + # :all is implicit + if finder == 'find' + args.unshift(:all) if args.empty? + elsif finder.index('find_by_') == 0 + finder.sub! /^find/, 'find_all' + end + + WillPaginate::Collection.create(page, per_page, total_entries) do |pager| + args << options.except(:count).merge(:offset => pager.offset, :limit => pager.per_page) + pager.replace send(finder, *args) + + # magic counting for user convenience: + pager.total_entries = wp_count!(options, args, finder) unless pager.total_entries + end + end + + def wp_count!(options, args, finder) + excludees = [:count, :order, :limit, :offset] + unless options[:select] and options[:select] =~ /^\s*DISTINCT/i + excludees << :select # only exclude the select param if it doesn't begin with DISTINCT + end + # count expects (almost) the same options as find + count_options = options.except *excludees + + # merge the hash found in :count + # this allows you to specify :select, :order, or anything else just for the count query + count_options.update(options.delete(:count) || {}) if options.key? :count + + # we may have to scope ... + counter = Proc.new { count(count_options) } + + # we may be in a model or an association proxy! + klass = (@owner and @reflection) ? @reflection.klass : self + + count = if finder =~ /^find_/ and klass.respond_to?(scoper = finder.sub(/^find_/, 'with_')) + # scope_out adds a 'with_finder' method which acts like with_scope, if it's present + # then execute the count with the scoping provided by the with_finder + send(scoper, &counter) + elsif conditions = wp_extract_finder_conditions(finder, args) + # extracted the conditions from calls like "paginate_by_foo_and_bar" + with_scope(:find => { :conditions => conditions }, &counter) + else + counter.call + end + + count.respond_to?(:length) ? count.length : count + end + + def wp_parse_options!(options) + raise ArgumentError, 'hash parameters expected' unless options.respond_to? :symbolize_keys! + options.symbolize_keys! + raise ArgumentError, ':page parameter required' unless options.key? :page + + if options[:count] and options[:total_entries] + raise ArgumentError, ':count and :total_entries are mutually exclusive parameters' + end + + page = options.delete(:page) || 1 + per_page = options.delete(:per_page) || self.per_page + total = options.delete(:total_entries) + [options, page, per_page, total] + end + + private + + # thanks to active record for making us duplicate this code + def wp_extract_finder_conditions(finder, arguments) + return unless match = /^find_(all_by|by)_([_a-zA-Z]\w*)$/.match(finder.to_s) + + attribute_names = extract_attribute_names_from_match(match) + unless all_attributes_exists?(attribute_names) + raise "I can't make sense of `#{finder}`. Try doing the count manually" + end + construct_attributes_from_arguments(attribute_names, arguments) + end + end + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/view_helpers.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/view_helpers.rb new file mode 100644 index 0000000..b3702fc --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/lib/will_paginate/view_helpers.rb @@ -0,0 +1,136 @@ +require 'will_paginate/core_ext' + +module WillPaginate + # = Global options for pagination helpers + # + # Options for pagination helpers are optional and get their default values from the + # WillPaginate::ViewHelpers.pagination_options hash. You can write to this hash to + # override default options on the global level: + # + # WillPaginate::ViewHelpers.pagination_options[:prev_label] = 'Previous page' + # + # By putting this into your environment.rb you can easily translate link texts to previous + # and next pages, as well as override some other defaults to your liking. + module ViewHelpers + # default options that can be overridden on the global level + @@pagination_options = { :class => 'pagination', + :prev_label => '« Previous', + :next_label => 'Next »', + :inner_window => 4, # links around the current page + :outer_window => 1, # links around beginning and end + :separator => ' ', # single space is friendly to spiders and non-graphic browsers + :param_name => :page + } + mattr_reader :pagination_options + + # Renders Digg-style pagination. (We know you wanna!) + # Returns nil if there is only one page in total (can't paginate that). + # + # Options for will_paginate view helper: + # + # class: CSS class name for the generated DIV (default "pagination") + # prev_label: default '« Previous', + # next_label: default 'Next »', + # inner_window: how many links are shown around the current page, defaults to 4 + # outer_window: how many links are around the first and the last page, defaults to 1 + # separator: string separator for page HTML elements, default " " (single space) + # param_name: parameter name for page number in URLs, defaults to "page" + # + # All extra options are passed to the generated container DIV, so eventually + # they become its HTML attributes. + # + def will_paginate(entries = @entries, options = {}) + total_pages = + + if entries.page_count > 1 + renderer = WillPaginate::LinkRenderer.new entries, options, self + links = renderer.items + + content_tag :div, links, renderer.html_options + end + end + end + + # This class does the heavy lifting of actually building the pagination + # links. It is used by +will_paginate+ helper internally, but avoid using it + # directly (for now) because its API is not set in stone yet. + class LinkRenderer + + def initialize(collection, options, template) + @collection = collection + @options = options.symbolize_keys.reverse_merge WillPaginate::ViewHelpers.pagination_options + @template = template + end + + def items + returning windowed_paginator do |links| + # next and previous buttons + links.unshift page_link_or_span(@collection.previous_page, 'disabled', @options[:prev_label]) + links.push page_link_or_span(@collection.next_page, 'disabled', @options[:next_label]) + end.join(@options[:separator]) + end + + def html_options + @options.except *(WillPaginate::ViewHelpers.pagination_options.keys - [:class]) + end + + protected + + def windowed_paginator + inner_window, outer_window = @options[:inner_window].to_i, @options[:outer_window].to_i + min = page - inner_window + max = page + inner_window + # adjust lower or upper limit if other is out of bounds + if max > total_pages then min -= max - total_pages + elsif min < 1 then max += 1 - min + end + + current = min..max + beginning = 1..(1 + outer_window) + tail = (total_pages - outer_window)..total_pages + visible = [beginning, current, tail].map(&:to_a).flatten.sort.uniq + + links, prev = [], 0 + + visible.each do |n| + next if n < 1 + break if n > total_pages + + unless n - prev > 1 + prev = n + links << page_link_or_span((n != page ? n : nil), 'current', n) + else + # ellipsis represents the gap between windows + prev = n - 1 + links << '...' + redo + end + end + + links + end + + def page_link_or_span(page, span_class, text) + unless page + @template.content_tag :span, text, :class => span_class + else + # page links should preserve GET/POST parameters + @template.link_to text, @template.params.merge(param => page != 1 ? page : nil) + end + end + + private + + def page + @collection.current_page + end + + def total_pages + @collection.page_count + end + + def param + @options[:param_name].to_sym + end + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/array_pagination_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/array_pagination_test.rb new file mode 100644 index 0000000..e3eaa08 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/array_pagination_test.rb @@ -0,0 +1,121 @@ +require File.dirname(__FILE__) + '/helper' +require 'will_paginate' +require 'will_paginate/core_ext' + +class ArrayPaginationTest < Test::Unit::TestCase + def test_simple + collection = ('a'..'e').to_a + + [{ :page => 1, :per_page => 3, :expected => %w( a b c ) }, + { :page => 2, :per_page => 3, :expected => %w( d e ) }, + { :page => 1, :per_page => 5, :expected => %w( a b c d e ) }, + { :page => 3, :per_page => 5, :expected => [] }, + { :page => -1, :per_page => 5, :expected => [] }, + { :page => 1, :per_page => -5, :expected => [] }, + ]. + each do |conditions| + assert_equal conditions[:expected], collection.paginate(conditions.slice(:page, :per_page)) + end + end + + def test_defaults + result = (1..50).to_a.paginate + assert_equal 1, result.current_page + assert_equal 30, result.size + end + + def test_deprecated_api + assert_deprecated 'paginate API' do + result = (1..50).to_a.paginate(2, 10) + assert_equal 2, result.current_page + assert_equal (11..20).to_a, result + assert_equal 50, result.total_entries + end + + assert_deprecated { [].paginate nil } + end + + def test_total_entries_has_precedence + result = %w(a b c).paginate :total_entries => 5 + assert_equal 5, result.total_entries + end + + def test_argument_error_with_params_and_another_argument + assert_raise ArgumentError do + [].paginate({}, 5) + end + end + + def test_paginated_collection + entries = %w(a b c) + collection = create(2, 3, 10) do |pager| + assert_equal entries, pager.replace(entries) + end + + assert_equal entries, collection + assert_respond_to_all collection, %w(page_count each offset size current_page per_page total_entries) + assert_kind_of Array, collection + assert_instance_of Array, collection.entries + assert_equal 3, collection.offset + assert_equal 4, collection.page_count + assert !collection.out_of_bounds? + end + + def test_out_of_bounds + entries = create(2, 3, 2){} + assert entries.out_of_bounds? + + entries = create(0, 3, 2){} + assert entries.out_of_bounds? + + entries = create(1, 3, 2){} + assert !entries.out_of_bounds? + end + + def test_guessing_total_count + entries = create do |pager| + # collection is shorter than limit + pager.replace array + end + assert_equal 8, entries.total_entries + + entries = create(2, 5, 10) do |pager| + # collection is shorter than limit, but we have an explicit count + pager.replace array + end + assert_equal 10, entries.total_entries + + entries = create do |pager| + # collection is the same as limit; we can't guess + pager.replace array(5) + end + assert_equal nil, entries.total_entries + + entries = create do |pager| + # collection is empty; we can't guess + pager.replace array(0) + end + assert_equal nil, entries.total_entries + end + + private + def create(page = 2, limit = 5, total = nil, &block) + WillPaginate::Collection.create(page, limit, total, &block) + end + + def array(size = 3) + Array.new(size) + end + + def collect_deprecations + old_behavior = WillPaginate::Deprecation.behavior + deprecations = [] + WillPaginate::Deprecation.behavior = Proc.new do |message, callstack| + deprecations << message + end + result = yield + [result, deprecations] + ensure + WillPaginate::Deprecation.behavior = old_behavior + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/boot.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/boot.rb new file mode 100644 index 0000000..b8db87f --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/boot.rb @@ -0,0 +1,24 @@ +plugin_root = File.join(File.dirname(__FILE__), '..') + +# first look for a symlink to a copy of the framework +if framework_root = ["#{plugin_root}/rails", "#{plugin_root}/../../rails"].find { |p| File.directory? p } + puts "found framework root: #{framework_root}" + # this allows for a plugin to be tested outside an app + $:.unshift "#{framework_root}/activesupport/lib", "#{framework_root}/activerecord/lib", "#{framework_root}/actionpack/lib" +else + # is the plugin installed in an application? + app_root = plugin_root + '/../../..' + + if File.directory? app_root + '/config' + puts 'using config/boot.rb' + ENV['RAILS_ENV'] = 'test' + require File.expand_path(app_root + '/config/boot') + else + # simply use installed gems if available + puts 'using rubygems' + require 'rubygems' + gem 'actionpack'; gem 'activerecord' + end +end + +$:.unshift "#{plugin_root}/lib" diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/console b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/console new file mode 100644 index 0000000..53b8de4 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/console @@ -0,0 +1,9 @@ +#!/usr/bin/env ruby +irb = RUBY_PLATFORM =~ /(:?mswin|mingw)/ ? 'irb.bat' : 'irb' +libs = [] +dirname = File.dirname(__FILE__) + +libs << 'irb/completion' +libs << File.join(dirname, 'lib', 'load_fixtures') + +exec "#{irb}#{libs.map{ |l| " -r #{l}" }.join} --simple-prompt" diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/finder_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/finder_test.rb new file mode 100644 index 0000000..12b5c68 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/finder_test.rb @@ -0,0 +1,285 @@ +require File.dirname(__FILE__) + '/helper' +require File.dirname(__FILE__) + '/lib/activerecord_test_case' + +require 'will_paginate' +WillPaginate.enable_activerecord + +class FinderTest < ActiveRecordTestCase + fixtures :topics, :replies, :users, :projects, :developers_projects + + def test_new_methods_presence + assert_respond_to_all Topic, %w(per_page paginate paginate_by_sql) + end + + def test_simple_paginate + entries = Topic.paginate :page => nil + assert_equal 1, entries.current_page + assert_nil entries.previous_page + assert_nil entries.next_page + assert_equal 1, entries.page_count + assert_equal 4, entries.size + + entries = Topic.paginate :page => 2 + assert_equal 2, entries.current_page + assert_equal 1, entries.previous_page + assert_equal 1, entries.page_count + assert entries.empty? + end + + def test_parameter_api + # :page parameter in options is required! + assert_raise(ArgumentError){ Topic.paginate } + assert_raise(ArgumentError){ Topic.paginate({}) } + + # explicit :all should not break anything + assert_equal Topic.paginate(:page => nil), Topic.paginate(:all, :page => 1) + + # :count could be nil and we should still not cry + assert_nothing_raised { Topic.paginate :page => 1, :count => nil } + end + + def test_paginate_with_per_page + entries = Topic.paginate :page => 1, :per_page => 1 + assert_equal 1, entries.size + assert_equal 4, entries.page_count + + # Developer class has explicit per_page at 10 + entries = Developer.paginate :page => 1 + assert_equal 10, entries.size + assert_equal 2, entries.page_count + + entries = Developer.paginate :page => 1, :per_page => 5 + assert_equal 11, entries.total_entries + assert_equal 5, entries.size + assert_equal 3, entries.page_count + end + + def test_paginate_with_order + entries = Topic.paginate :page => 1, :order => 'created_at desc' + expected = [topics(:futurama), topics(:harvey_birdman), topics(:rails), topics(:ar)].reverse + assert_equal expected, entries.to_a + assert_equal 1, entries.page_count + end + + def test_paginate_with_conditions + entries = Topic.paginate :page => 1, :conditions => ["created_at > ?", 30.minutes.ago] + expected = [topics(:rails), topics(:ar)] + assert_equal expected, entries.to_a + assert_equal 1, entries.page_count + end + + def test_paginate_with_include_and_conditions + entries = Topic.paginate \ + :page => 1, + :include => :replies, + :conditions => "replies.content LIKE 'Bird%' ", + :per_page => 10 + + expected = Topic.find :all, + :include => 'replies', + :conditions => "replies.content LIKE 'Bird%' ", + :limit => 10 + + assert_equal expected, entries.to_a + assert_equal 1, entries.total_entries + end + + def test_paginate_with_include_and_order + entries = Topic.paginate \ + :page => 1, + :include => :replies, + :order => 'replies.created_at asc, topics.created_at asc', + :per_page => 10 + + expected = Topic.find :all, + :include => 'replies', + :order => 'replies.created_at asc, topics.created_at asc', + :limit => 10 + + assert_equal expected, entries.to_a + assert_equal 4, entries.total_entries + end + + def test_paginate_associations_with_include + entries, project = nil, projects(:active_record) + + assert_nothing_raised "THIS IS A BUG in Rails 1.2.3 that was fixed in [7326]. " + + "Please upgrade to the 1-2-stable branch or edge Rails." do + entries = project.topics.paginate \ + :page => 1, + :include => :replies, + :conditions => "replies.content LIKE 'Nice%' ", + :per_page => 10 + end + + expected = Topic.find :all, + :include => 'replies', + :conditions => "project_id = #{project.id} AND replies.content LIKE 'Nice%' ", + :limit => 10 + + assert_equal expected, entries.to_a + end + + def test_paginate_associations + dhh = users :david + expected_name_ordered = [projects(:action_controller), projects(:active_record)] + expected_id_ordered = [projects(:active_record), projects(:action_controller)] + + # with association-specified order + entries = dhh.projects.paginate(:page => 1) + assert_equal expected_name_ordered, entries + assert_equal 2, entries.total_entries + + # with explicit order + entries = dhh.projects.paginate(:page => 1, :order => 'projects.id') + assert_equal expected_id_ordered, entries + assert_equal 2, entries.total_entries + + assert_nothing_raised { dhh.projects.find(:all, :order => 'projects.id', :limit => 4) } + entries = dhh.projects.paginate(:page => 1, :order => 'projects.id', :per_page => 4) + assert_equal expected_id_ordered, entries + + # has_many with implicit order + topic = Topic.find(1) + expected = [replies(:spam), replies(:witty_retort)] + assert_equal expected.map(&:id).sort, topic.replies.paginate(:page => 1).map(&:id).sort + assert_equal expected.reverse, topic.replies.paginate(:page => 1, :order => 'replies.id ASC') + end + + def test_paginate_association_extension + project = Project.find(:first) + entries = project.replies.paginate_recent :page => 1 + assert_equal [replies(:brave)], entries + end + + def test_paginate_with_joins + entries = Developer.paginate :page => 1, + :joins => 'LEFT JOIN developers_projects ON users.id = developers_projects.developer_id', + :conditions => 'project_id = 1' + assert_equal 2, entries.size + developer_names = entries.map { |d| d.name } + assert developer_names.include?('David') + assert developer_names.include?('Jamis') + + expected = entries.to_a + entries = Developer.paginate :page => 1, + :joins => 'LEFT JOIN developers_projects ON users.id = developers_projects.developer_id', + :conditions => 'project_id = 1', :count => { :select => "users.id" } + assert_equal expected, entries.to_a + end + + def test_paginate_with_group + entries = Developer.paginate :page => 1, :per_page => 10, :group => 'salary' + expected = [ users(:david), users(:jamis), users(:dev_10), users(:poor_jamis) ].map(&:salary).sort + assert_equal expected, entries.map(&:salary).sort + end + + def test_paginate_with_dynamic_finder + expected = [replies(:witty_retort), replies(:spam)] + assert_equal expected, Reply.paginate_by_topic_id(1, :page => 1) + + entries = Developer.paginate :conditions => { :salary => 100000 }, :page => 1, :per_page => 5 + assert_equal 8, entries.total_entries + assert_equal entries, Developer.paginate_by_salary(100000, :page => 1, :per_page => 5) + + # dynamic finder + conditions + entries = Developer.paginate_by_salary(100000, :page => 1, + :conditions => ['id > ?', 6]) + assert_equal 4, entries.total_entries + assert_equal (7..10).to_a, entries.map(&:id) + + assert_raises NoMethodError do + Developer.paginate_by_inexistent_attribute 100000, :page => 1 + end + end + + def test_paginate_by_sql + assert_respond_to Developer, :paginate_by_sql + entries = Developer.paginate_by_sql ['select * from users where salary > ?', 80000], + :page => 2, :per_page => 3, :total_entries => 9 + + assert_equal (5..7).to_a, entries.map(&:id) + assert_equal 9, entries.total_entries + end + + def test_count_by_sql + entries = Developer.paginate_by_sql ['select * from users where salary > ?', 60000], + :page => 2, :per_page => 3 + + assert_equal 12, entries.total_entries + end + + def test_count_distinct + entries = Developer.paginate :select => 'DISTINCT salary', :page => 1, :per_page => 4 + assert_equal 4, entries.size + assert_equal 4, entries.total_entries + end + + def test_scoped_paginate + entries = + Developer.with_poor_ones do + Developer.paginate :page => 1 + end + + assert_equal 2, entries.size + assert_equal 2, entries.total_entries + end + + # Are we on edge? Find out by testing find_all which was removed in [6998] + unless Developer.respond_to? :find_all + def test_paginate_array_of_ids + # AR finders also accept arrays of IDs + # (this was broken in Rails before [6912]) + entries = Developer.paginate((1..8).to_a, :per_page => 3, :page => 2) + assert_equal (4..6).to_a, entries.map(&:id) + assert_equal 8, entries.total_entries + end + end + + uses_mocha 'parameter' do + def test_implicit_all_with_dynamic_finders + Topic.expects(:find_all_by_foo).returns([]) + Topic.expects(:wp_extract_finder_conditions) + Topic.expects(:count) + Topic.paginate_by_foo :page => 1 + end + + def test_guessing_the_total_count + Topic.expects(:find).returns(Array.new(2)) + Topic.expects(:count).never + + entries = Topic.paginate :page => 2, :per_page => 4 + assert_equal 6, entries.total_entries + end + + def test_extra_parameters_stay_untouched + Topic.expects(:find).with() { |*args| args.last.key? :foo }.returns(Array.new(5)) + Topic.expects(:count).with(){ |*args| args.last.key? :foo }.returns(1) + + Topic.paginate :foo => 'bar', :page => 1, :per_page => 4 + end + + def test_count_doesnt_use_select_options + Developer.expects(:find).with() { |*args| args.last.key? :select }.returns(Array.new(5)) + Developer.expects(:count).with(){ |*args| !args.last.key?(:select) }.returns(1) + + Developer.paginate :select => 'users.*', :page => 1, :per_page => 4 + end + + def test_should_use_scoped_finders_if_present + # scope-out compatibility + Topic.expects(:find_best).returns(Array.new(5)) + Topic.expects(:with_best).returns(1) + + Topic.paginate_best :page => 1, :per_page => 4 + end + + def test_ability_to_use_with_custom_finders + # acts_as_taggable defines `find_tagged_with(tag, options)` + Topic.expects(:find_tagged_with).with('will_paginate', :offset => 0, :limit => 5).returns([]) + Topic.expects(:count).with({}).returns(0) + + Topic.paginate_tagged_with 'will_paginate', :page => 1, :per_page => 5 + end + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/admin.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/admin.rb new file mode 100644 index 0000000..1d5e7f3 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/admin.rb @@ -0,0 +1,3 @@ +class Admin < User + has_many :companies, :finder_sql => 'SELECT * FROM companies' +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/developer.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/developer.rb new file mode 100644 index 0000000..6650a98 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/developer.rb @@ -0,0 +1,11 @@ +class Developer < User + has_and_belongs_to_many :projects, :include => :topics, :order => 'projects.name' + + def self.with_poor_ones(&block) + with_scope :find => { :conditions => ['salary <= ?', 80000], :order => 'salary' } do + yield + end + end + + def self.per_page() 10 end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/developers_projects.yml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/developers_projects.yml new file mode 100644 index 0000000..cee359c --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/developers_projects.yml @@ -0,0 +1,13 @@ +david_action_controller: + developer_id: 1 + project_id: 2 + joined_on: 2004-10-10 + +david_active_record: + developer_id: 1 + project_id: 1 + joined_on: 2004-10-10 + +jamis_active_record: + developer_id: 2 + project_id: 1 \ No newline at end of file diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/project.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/project.rb new file mode 100644 index 0000000..0f85ef5 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/project.rb @@ -0,0 +1,15 @@ +class Project < ActiveRecord::Base + has_and_belongs_to_many :developers, :uniq => true + + has_many :topics + # :finder_sql => 'SELECT * FROM topics WHERE (topics.project_id = #{id})', + # :counter_sql => 'SELECT COUNT(*) FROM topics WHERE (topics.project_id = #{id})' + + has_many :replies, :through => :topics do + def find_recent(params = {}) + with_scope :find => { :conditions => ['replies.created_at > ?', 15.minutes.ago] } do + find :all, params + end + end + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/projects.yml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/projects.yml new file mode 100644 index 0000000..02800c7 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/projects.yml @@ -0,0 +1,7 @@ +action_controller: + id: 2 + name: Active Controller + +active_record: + id: 1 + name: Active Record diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/replies.yml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/replies.yml new file mode 100644 index 0000000..4421908 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/replies.yml @@ -0,0 +1,34 @@ +witty_retort: + id: 1 + topic_id: 1 + content: Birdman is better! + created_at: <%= 6.hours.ago.to_s(:db) %> + updated_at: nil + +another: + id: 2 + topic_id: 2 + content: Nuh uh! + created_at: <%= 1.hour.ago.to_s(:db) %> + updated_at: nil + +spam: + id: 3 + topic_id: 1 + content: Nice site! + created_at: <%= 1.hour.ago.to_s(:db) %> + updated_at: nil + +decisive: + id: 4 + topic_id: 4 + content: "I'm getting to the bottom of this" + created_at: <%= 30.minutes.ago.to_s(:db) %> + updated_at: nil + +brave: + id: 5 + topic_id: 4 + content: "AR doesn't scare me a bit" + created_at: <%= 10.minutes.ago.to_s(:db) %> + updated_at: nil diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/reply.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/reply.rb new file mode 100644 index 0000000..ea84042 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/reply.rb @@ -0,0 +1,5 @@ +class Reply < ActiveRecord::Base + belongs_to :topic, :include => [:replies] + + validates_presence_of :content +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/schema.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/schema.rb new file mode 100644 index 0000000..2c6d3e1 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/schema.rb @@ -0,0 +1,38 @@ +ActiveRecord::Schema.define do + + create_table "developers_projects", :id => false, :force => true do |t| + t.column "developer_id", :integer, :null => false + t.column "project_id", :integer, :null => false + t.column "joined_on", :date + t.column "access_level", :integer, :default => 1 + end + + create_table "projects", :force => true do |t| + t.column "name", :text + end + + create_table "replies", :force => true do |t| + t.column "content", :text + t.column "created_at", :datetime + t.column "updated_at", :datetime + t.column "topic_id", :integer + end + + create_table "topics", :force => true do |t| + t.column "project_id", :integer + t.column "title", :string + t.column "subtitle", :string + t.column "content", :text + t.column "created_at", :datetime + t.column "updated_at", :datetime + end + + create_table "users", :force => true do |t| + t.column "name", :text + t.column "salary", :integer, :default => 70000 + t.column "created_at", :datetime + t.column "updated_at", :datetime + t.column "type", :text + end + +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/topic.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/topic.rb new file mode 100644 index 0000000..12b8747 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/topic.rb @@ -0,0 +1,4 @@ +class Topic < ActiveRecord::Base + has_many :replies, :dependent => :destroy, :order => 'replies.created_at DESC' + belongs_to :project +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/topics.yml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/topics.yml new file mode 100644 index 0000000..0a26904 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/topics.yml @@ -0,0 +1,30 @@ +futurama: + id: 1 + title: Isnt futurama awesome? + subtitle: It really is, isnt it. + content: I like futurama + created_at: <%= 1.day.ago.to_s(:db) %> + updated_at: + +harvey_birdman: + id: 2 + title: Harvey Birdman is the king of all men + subtitle: yup + content: He really is + created_at: <%= 2.hours.ago.to_s(:db) %> + updated_at: + +rails: + id: 3 + project_id: 1 + title: Rails is nice + subtitle: It makes me happy + content: except when I have to hack internals to fix pagination. even then really. + created_at: <%= 20.minutes.ago.to_s(:db) %> + +ar: + id: 4 + project_id: 1 + title: ActiveRecord sometimes freaks me out + content: "I mean, what's the deal with eager loading?" + created_at: <%= 15.minutes.ago.to_s(:db) %> diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/user.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/user.rb new file mode 100644 index 0000000..4a57cf0 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/user.rb @@ -0,0 +1,2 @@ +class User < ActiveRecord::Base +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/users.yml b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/users.yml new file mode 100644 index 0000000..ed2c03a --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/fixtures/users.yml @@ -0,0 +1,35 @@ +david: + id: 1 + name: David + salary: 80000 + type: Developer + +jamis: + id: 2 + name: Jamis + salary: 150000 + type: Developer + +<% for digit in 3..10 %> +dev_<%= digit %>: + id: <%= digit %> + name: fixture_<%= digit %> + salary: 100000 + type: Developer +<% end %> + +poor_jamis: + id: 11 + name: Jamis + salary: 9000 + type: Developer + +admin: + id: 12 + name: admin + type: Admin + +goofy: + id: 13 + name: Goofy + type: Admin diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/helper.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/helper.rb new file mode 100644 index 0000000..307e29a --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/helper.rb @@ -0,0 +1,25 @@ +require 'test/unit' +require 'rubygems' + +# gem install redgreen for colored test output +begin require 'redgreen'; rescue LoadError; end + +require File.join(File.dirname(__FILE__), 'boot') unless defined?(ActiveRecord) + +class Test::Unit::TestCase + protected + def assert_respond_to_all object, methods + methods.each do |method| + [method.to_s, method.to_sym].each { |m| assert_respond_to object, m } + end + end +end + +# Wrap tests that use Mocha and skip if unavailable. +def uses_mocha(test_name) + require 'mocha' unless Object.const_defined?(:Mocha) + yield +rescue LoadError => load_error + raise unless load_error.message =~ /mocha/i + $stderr.puts "Skipping #{test_name} tests. `gem install mocha` and try again." +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/lib/activerecord_test_case.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/lib/activerecord_test_case.rb new file mode 100644 index 0000000..2b20dff --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/lib/activerecord_test_case.rb @@ -0,0 +1,23 @@ +require File.join(File.dirname(__FILE__), 'activerecord_test_connector') + +class ActiveRecordTestCase < Test::Unit::TestCase + # Set our fixture path + if ActiveRecordTestConnector.able_to_connect + self.fixture_path = File.join(File.dirname(__FILE__), '..', 'fixtures') + self.use_transactional_fixtures = false + end + + def self.fixtures(*args) + super if ActiveRecordTestConnector.connected + end + + def run(*args) + super if ActiveRecordTestConnector.connected + end + + # Default so Test::Unit::TestCase doesn't complain + def test_truth + end +end + +ActiveRecordTestConnector.setup diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/lib/activerecord_test_connector.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/lib/activerecord_test_connector.rb new file mode 100644 index 0000000..0435f47 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/lib/activerecord_test_connector.rb @@ -0,0 +1,67 @@ +require 'active_record' +require 'active_record/version' +require 'active_record/fixtures' + +class ActiveRecordTestConnector + cattr_accessor :able_to_connect + cattr_accessor :connected + + # Set our defaults + self.connected = false + self.able_to_connect = true + + def self.setup + unless self.connected || !self.able_to_connect + setup_connection + load_schema + # require_fixture_models + Dependencies.load_paths.unshift(File.dirname(__FILE__) + "/../fixtures") + self.connected = true + end + rescue Exception => e # errors from ActiveRecord setup + $stderr.puts "\nSkipping ActiveRecord assertion tests: #{e}" + #$stderr.puts " #{e.backtrace.join("\n ")}\n" + self.able_to_connect = false + end + + private + + def self.setup_connection + if Object.const_defined?(:ActiveRecord) + defaults = { :database => ':memory:' } + ActiveRecord::Base.logger = Logger.new STDOUT if $0 == 'irb' + + begin + options = defaults.merge :adapter => 'sqlite3', :timeout => 500 + ActiveRecord::Base.establish_connection(options) + ActiveRecord::Base.configurations = { 'sqlite3_ar_integration' => options } + ActiveRecord::Base.connection + rescue Exception # errors from establishing a connection + $stderr.puts 'SQLite 3 unavailable; trying SQLite 2.' + options = defaults.merge :adapter => 'sqlite' + ActiveRecord::Base.establish_connection(options) + ActiveRecord::Base.configurations = { 'sqlite2_ar_integration' => options } + ActiveRecord::Base.connection + end + + unless Object.const_defined?(:QUOTED_TYPE) + Object.send :const_set, :QUOTED_TYPE, ActiveRecord::Base.connection.quote_column_name('type') + end + else + raise "Can't setup connection since ActiveRecord isn't loaded." + end + end + + def self.load_schema + ActiveRecord::Base.silence do + ActiveRecord::Migration.verbose = false + load File.dirname(__FILE__) + "/../fixtures/schema.rb" + end + end + + def self.require_fixture_models + models = Dir.glob(File.dirname(__FILE__) + "/../fixtures/*.rb") + models = (models.grep(/user.rb/) + models).uniq + models.each { |f| require f } + end +end diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/lib/load_fixtures.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/lib/load_fixtures.rb new file mode 100644 index 0000000..c9f4d1f --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/lib/load_fixtures.rb @@ -0,0 +1,13 @@ +dirname = File.dirname(__FILE__) +require File.join(dirname, '..', 'boot') +require File.join(dirname, 'activerecord_test_connector') + +# setup the connection +ActiveRecordTestConnector.setup + +# load all fixtures +fixture_path = File.join(dirname, '..', 'fixtures') +Fixtures.create_fixtures(fixture_path, ActiveRecord::Base.connection.tables) + +require 'will_paginate' +WillPaginate.enable_activerecord diff --git a/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/pagination_test.rb b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/pagination_test.rb new file mode 100644 index 0000000..9d22953 --- /dev/null +++ b/P5B/ruby/3dossmanno_annuaire/vendor/plugins/will_paginate/test/pagination_test.rb @@ -0,0 +1,146 @@ +require File.dirname(__FILE__) + '/helper' +require 'action_controller' +require 'action_controller/test_process' + +ActionController::Routing::Routes.reload rescue nil +ActionController::Routing::Routes.draw do |map| + map.connect ':controller/:action/:id' +end + +ActionController::Base.perform_caching = false + +require 'will_paginate' +WillPaginate.enable_actionpack + +class PaginationTest < Test::Unit::TestCase + + class PaginationController < ActionController::Base + def list_developers + @options = params.delete(:options) || {} + + @developers = (1..11).to_a.paginate( + :page => params[@options[:param_name] || :page] || 1, + :per_page => params[:per_page] || 4 + ) + + render :inline => '<%= will_paginate @developers, @options %>' + end + + protected + def rescue_errors(e) raise e end + def rescue_action(e) raise e end + end + + def setup + @controller = PaginationController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + super + end + + def test_will_paginate + get :list_developers + + entries = assigns :developers + assert entries + assert_equal 4, entries.size + + assert_select 'div.pagination', 1, 'no main DIV' do |el| + assert_select 'a[href]', 3 do |elements| + validate_page_numbers [2,3,2], elements + assert_select elements.last, ':last-child', "Next »" + end + assert_select 'span', 2 + assert_select 'span.disabled:first-child', "« Previous" + assert_select 'span.current', entries.current_page.to_s + end + end + + def test_will_paginate_with_options + get :list_developers, :page => 2, :options => { + :class => 'will_paginate', :prev_label => 'Prev', :next_label => 'Next' + } + assert_response :success + + entries = assigns :developers + assert entries + assert_equal 4, entries.size + + assert_select 'div.will_paginate', 1, 'no main DIV' do + assert_select 'a[href]', 4 do |elements| + validate_page_numbers [nil,nil,3,3], elements + assert_select elements.first, 'a', "Prev" + assert_select elements.last, 'a', "Next" + end + assert_select 'span.current', entries.current_page.to_s + end + end + + def test_will_paginate_preserves_parameters + get :list_developers, :foo => { :bar => 'baz' } + assert_response :success + + assert_select 'div.pagination', 1, 'no main DIV' do + assert_select 'a[href]', 3 do |elements| + elements.each do |el| + assert_match /foo%5Bbar%5D=baz/, el['href'], "THIS IS A BUG in Rails 1.2 which " + + "has been fixed in Rails 2.0." + # there is no need to worry *unless* you too are using hashes in parameters which + # need to be preserved over pages + end + end + end + end + + def test_will_paginate_with_custom_page_param + get :list_developers, :developers_page => 2, :options => { :param_name => :developers_page } + assert_response :success + + entries = assigns :developers + assert entries + assert_equal 4, entries.size + + assert_select 'div.pagination', 1, 'no main DIV' do + assert_select 'a[href]', 4 do |elements| + validate_page_numbers [nil,nil,3,3], elements, :developers_page + end + assert_select 'span.current', entries.current_page.to_s + end + end + + def test_will_paginate_windows + get :list_developers, :page => 6, :per_page => 1, :options => { :inner_window => 2 } + assert_response :success + + entries = assigns :developers + assert entries + assert_equal 1, entries.size + + assert_select 'div.pagination', 1, 'no main DIV' do + assert_select 'a[href]', 10 do |elements| + validate_page_numbers [5,nil,2,4,5,7,8,10,11,7], elements + assert_select elements.first, 'a', "« Previous" + assert_select elements.last, 'a', "Next »" + end + assert_select 'span.current', entries.current_page.to_s + end + end + + def test_no_pagination + get :list_developers, :per_page => 12 + entries = assigns :developers + assert_equal 1, entries.page_count + assert_equal 11, entries.size + + assert_equal '', @response.body + end + +protected + + def validate_page_numbers expected, links, param_name = :page + assert_equal(expected, links.map { |e| + e['href'] =~ /\W#{param_name}=([^&]*)/ + $1 ? $1.to_i : $1 + }) + end +end diff --git a/P5B/ruby/BatailleNavaleSimple.rb b/P5B/ruby/BatailleNavaleSimple.rb new file mode 100644 index 0000000..0d76efd --- /dev/null +++ b/P5B/ruby/BatailleNavaleSimple.rb @@ -0,0 +1,30 @@ +#!/usr/bin/ruby -w + +puts "Tapez l'adresse de fichier : " +fichier = gets.chomp! + +if not File.file?(fichier) + puts "Erreur : ce n'est pas un fichier ou bien fichier inexistant !" + exit +end + +print("Fichier ", fichier, " charg.\n") + +lignes = File.readlines(fichier) + +incrementeur = 0 +fin=lignes.length + +puts fin + + +# SIGINT = Control + C +trap("SIGINT" ){ #attention a la place de l'accolade ouvrante + puts incrementeur +} + +while true + incrementeur = incrementeur + 1 + incrementeur = incrementeur %fin + incrementeur = 0 if incrementeur = fin +end \ No newline at end of file diff --git a/P5B/ruby/InstructionProgramme b/P5B/ruby/InstructionProgramme new file mode 100644 index 0000000..4b8d568 --- /dev/null +++ b/P5B/ruby/InstructionProgramme @@ -0,0 +1,17 @@ + + +Dans le programme : + - Saisir le nom du fichier + - Vrification minimale (si fichier existe) + - Fichier contient : liste d'objets (personnes, animaux, etc ...), avec un lment par ligne + - En une instruction : copie complte du fichier dans un tableau => IO.readlines + - Boucle principale : tourner dans le tableau (variance de l'indice du tableau du premier au dernier (0 dernier n - 1)) => tirages non alatoires + - Dans cette boucle on tappe, sous rcption d'un signal (Ctrl + C ou kill -2) : lmination de l'lement qui est l'indice courant + - A un moment donn le programme s'arrte quand il n'y a plus qu'une entre (quand longueur tableau = 1) + - Affichage du rsultat et des personnes limines au fur et mesure + + + +Dans une section critique mettre des verrous +Utiliser des modulos dans la boucle +etc ... \ No newline at end of file diff --git a/P5B/ruby/chrono.rb b/P5B/ruby/chrono.rb new file mode 100644 index 0000000..2fd69d2 --- /dev/null +++ b/P5B/ruby/chrono.rb @@ -0,0 +1,27 @@ +#!/usr/bin/ruby -w + +# creation d'un processus chrono qui compte les secondes +# sur le signal SIGINT ( CTRL C) le processus affiche la valeur du compteur +# sur le signal SIGQUIT le processus affiche le compteur et quitte. +# +# tester aussi le comportement du pgme en le lancant dans une fenetre et envoi des signaux depuis une autre +# kill -2 pid provoque affichage du compteur +# kill -3 pid provoque affichage et arret + +nsec=0 + +# SIGINT = Control + C +trap("SIGINT" ){ #attention a la place de l'accolade ouvrante +puts "\n" + nsec.to_s + " secondes ecoulees \n" +} + +# Ctrl + AltGr + Touche 8 ("_") +trap("SIGQUIT" ){ #attention a la place de l'accolade ouvrante +puts "\nFin du chronomtre "+nsec.to_s + " secondes ecoulees \n" +exit +} + +while true + sleep 1 + nsec = nsec + 1 +end diff --git a/P5B/ruby/class_Heure.rb b/P5B/ruby/class_Heure.rb new file mode 100644 index 0000000..8fa2de3 --- /dev/null +++ b/P5B/ruby/class_Heure.rb @@ -0,0 +1,41 @@ +class Heure + + def initialize(h = 0, m = 0, s = 0) + @heure = h + @minute = m + @seconde = s + end + + def heure() + @heure + end + + def minute() + @minute + end + + def seconde() + @seconde + end + + def heure=(h) + @heure = h + end + + def minute=(m) + @minute = m + end + + def seconde=(s) + @seconde = s + end + +end + +x = Heure.new(15,20) +puts "Heure : #{x.heure}" +puts "Minutes : #{x.minute}" +puts "Secondes : #{x.seconde}" + +x.heure = 16 +puts "Heure modifie : #{x.heure}" diff --git a/P5B/ruby/each_even.rb b/P5B/ruby/each_even.rb new file mode 100644 index 0000000..9822f9d --- /dev/null +++ b/P5B/ruby/each_even.rb @@ -0,0 +1,10 @@ +def each_even(n) + for i in 0...n + yield(2*i) + end +end + +each_even(10) do | i | + puts i +end + diff --git a/P5B/ruby/election.rb b/P5B/ruby/election.rb new file mode 100644 index 0000000..416214c --- /dev/null +++ b/P5B/ruby/election.rb @@ -0,0 +1,50 @@ +#!/usr/bin/ruby -w + +# election Miss RUBY +# on charge un tableau (Array) de prenoms a partir d'un fichier +# On parcourt "circulairement" cette liste . A chaque rception du +# signal SIGINT, l'element courant est supprim. +# Quand il ne reste plus qu'un seul nom, on affiche la gagnante +# +#-------------------------------------------------------------------------- + +print "Entrer le nom du fichier\n"; +fich= gets; +fich = fich.chomp + +# test si c'est un fichier rgulier +unless File.file?(fich) + puts "PB ! Fichier inexistant" + exit +end + +# procedure d'elimination d'une candidate +trap("SIGINT" ){ #attention a la place de l'accolade ouvrante + +puts $girls[$i] + " est eliminee !" +$girls.slice!($i) # on elimine la candidate $i +# $girls[$i,1] = [] # variante +} + +# chargement de toutes les lignes du fichier (de nom saisi)dans un tableau +$girls = IO.readlines(fich); + +$i=0 ; # indice de la candidate courante +# notation $i et $t indispensable (var. globales) pour que visible partout +# le dfini AVANT en a besoin ! + +while true + if $girls.length == 1 + puts $girls[0] + "est elue Miss RUBY! Bravo!!" + exit + else + if $i < $girls.length - 1 + $i = $i + 1 + else + $i = 0 + end + end +end + + + diff --git a/P5B/ruby/exercices/GtkBase.rb b/P5B/ruby/exercices/GtkBase.rb new file mode 100644 index 0000000..3bf9015 --- /dev/null +++ b/P5B/ruby/exercices/GtkBase.rb @@ -0,0 +1,27 @@ +require 'gtk2' + + +#gtk interface +class Gui + + def choice_radio + + Gtk.init + window = Gtk::Window.new + + window.set_title('lecteur de webradio Gtk') + window.set_default_size(200,100) + + window.show_all + Gtk.main + end + + def initialize + configuration = Conf.new + @radios = configuration.read + self.choice_radio + print @radios + end +end + +Gui.new #launch interface diff --git a/P5B/ruby/exercices/class_Carre.rb b/P5B/ruby/exercices/class_Carre.rb new file mode 100644 index 0000000..45f04db --- /dev/null +++ b/P5B/ruby/exercices/class_Carre.rb @@ -0,0 +1,55 @@ +module Inject + def inject(val) + each do | element | + val = yield(val, element) + end + val + end + + def somme + inject(0) do | s, element | + s + element + end + end + + def produit + inject(1) do | p, element | + p * element + end + end +end + +class Impairs + include Inject + def initialize(n) + @cardinal = n + end + + def each + i = 1 + @cardinal.times do + yield i + i = i +2 + end + end +end + +class Integer + def premiers_impairs + Impairs.new(self) + end +end + +def carre(n) + n.premiers_impairs.somme +end + +3.premiers_impairs.each do | i | + puts i.to_s +end + +puts "Somme : #{3.premiers_impairs.somme}" +puts "Produit : #{3.premiers_impairs.produit}" + +puts "Carré de 3 : #{carre(3)}" + diff --git a/P5B/ruby/exercices/class_Impair.rb b/P5B/ruby/exercices/class_Impair.rb new file mode 100644 index 0000000..65c2978 --- /dev/null +++ b/P5B/ruby/exercices/class_Impair.rb @@ -0,0 +1,18 @@ +class Impairs + def initialize(n) + @cardinal = n + end + + def each + i = 1 + @cardinal.times do + yield i + i = i + 2 + end + end +end + +Impairs.new(3).each do | i | + puts i.to_s +end + diff --git a/P5B/ruby/exercices/class_Inject.rb b/P5B/ruby/exercices/class_Inject.rb new file mode 100644 index 0000000..1532a1e --- /dev/null +++ b/P5B/ruby/exercices/class_Inject.rb @@ -0,0 +1,48 @@ +module Inject + def inject(val) + each do | element | + val = yield(val, element) + end + val + end + + def somme + inject(0) do | s, element | + s + element + end + end + + def produit + inject(1) do | p, element | + p * element + end + end +end + +class Impairs + include Inject + def initialize(n) + @cardinal = n + end + + def each + i = 1 + @cardinal.times do + yield i + i = i +2 + end + end +end + +class Integer + def premiers_impairs + Impairs.new(self) + end +end + +3.premiers_impairs.each do | i | + puts i.to_s +end + +puts "Somme : #{3.premiers_impairs.somme}" +puts "Produit : #{3.premiers_impairs.produit}" diff --git a/P5B/ruby/exercices/class_Integer.rb b/P5B/ruby/exercices/class_Integer.rb new file mode 100644 index 0000000..884e98f --- /dev/null +++ b/P5B/ruby/exercices/class_Integer.rb @@ -0,0 +1,24 @@ +class Impairs + def initialize(n) + @cardinal = n + end + + def each + i = 1 + @cardinal.times do + yield i + i = i +2 + end + end +end + +class Integer + def premiers_impairs + Impairs.new(self) + end +end + +3.premiers_impairs.each do | i | + puts i.to_s +end + diff --git a/P5B/ruby/exercices/fact_iterareur.rb b/P5B/ruby/exercices/fact_iterareur.rb new file mode 100644 index 0000000..c11ff16 --- /dev/null +++ b/P5B/ruby/exercices/fact_iterareur.rb @@ -0,0 +1,16 @@ +def each_fact(n) + res = 1 + for i in 0 .. n + res = res * i unless i == 0 + yield(res) + end + res +end + +res = 0 + +each_fact(10) do | i | + res = res + i +end + +puts res diff --git a/P5B/ruby/exercices/factorielle.rb b/P5B/ruby/exercices/factorielle.rb new file mode 100644 index 0000000..7baac08 --- /dev/null +++ b/P5B/ruby/exercices/factorielle.rb @@ -0,0 +1,16 @@ +def fact(n) + if n == 0 + then + 1 + else + res = 1 + i = n + until i == 0 + res = res * i + i = i - 1 + end + res + end +end + +puts fact(5) diff --git a/P5B/ruby/factorielle.rb b/P5B/ruby/factorielle.rb new file mode 100644 index 0000000..350c1be --- /dev/null +++ b/P5B/ruby/factorielle.rb @@ -0,0 +1,11 @@ +def fact(n) + if n == 0 + then + 1 + else + n * fact(n-1) + end +end + +puts fact(5) +puts "Hello World" diff --git a/P5B/ruby/mon_projet/README b/P5B/ruby/mon_projet/README new file mode 100644 index 0000000..7cd111f --- /dev/null +++ b/P5B/ruby/mon_projet/README @@ -0,0 +1,211 @@ +== Welcome to Rails + +Rails is a web-application and persistence framework that includes everything +needed to create database-backed web-applications according to the +Model-View-Control pattern of separation. This pattern splits the view (also +called the presentation) into "dumb" templates that are primarily responsible +for inserting pre-built data in between HTML tags. The model contains the +"smart" domain objects (such as Account, Product, Person, Post) that holds all +the business logic and knows how to persist themselves to a database. The +controller handles the incoming requests (such as Save New Account, Update +Product, Show Post) by manipulating the model and directing data to the view. + +In Rails, the model is handled by what's called an object-relational mapping +layer entitled Active Record. This layer allows you to present the data from +database rows as objects and embellish these data objects with business logic +methods. You can read more about Active Record in +link:files/vendor/rails/activerecord/README.html. + +The controller and view are handled by the Action Pack, which handles both +layers by its two parts: Action View and Action Controller. These two layers +are bundled in a single package due to their heavy interdependence. This is +unlike the relationship between the Active Record and Action Pack that is much +more separate. Each of these packages can be used independently outside of +Rails. You can read more about Action Pack in +link:files/vendor/rails/actionpack/README.html. + + +== Getting started + +1. At the command prompt, start a new rails application using the rails command + and your application name. Ex: rails myapp + (If you've downloaded rails in a complete tgz or zip, this step is already done) +2. Change directory into myapp and start the web server: script/server (run with --help for options) +3. Go to http://localhost:3000/ and get "Welcome aboard: You’re riding the Rails!" +4. Follow the guidelines to start developing your application + + +== Web Servers + +By default, Rails will try to use Mongrel and lighttpd if they are installed, otherwise +Rails will use the WEBrick, the webserver that ships with Ruby. When you run script/server, +Rails will check if Mongrel exists, then lighttpd and finally fall back to WEBrick. This ensures +that you can always get up and running quickly. + +Mongrel is a Ruby-based webserver with a C-component (which requires compilation) that is +suitable for development and deployment of Rails applications. If you have Ruby Gems installed, +getting up and running with mongrel is as easy as: gem install mongrel. +More info at: http://mongrel.rubyforge.org + +If Mongrel is not installed, Rails will look for lighttpd. It's considerably faster than +Mongrel and WEBrick and also suited for production use, but requires additional +installation and currently only works well on OS X/Unix (Windows users are encouraged +to start with Mongrel). We recommend version 1.4.11 and higher. You can download it from +http://www.lighttpd.net. + +And finally, if neither Mongrel or lighttpd are installed, Rails will use the built-in Ruby +web server, WEBrick. WEBrick is a small Ruby web server suitable for development, but not +for production. + +But of course its also possible to run Rails on any platform that supports FCGI. +Apache, LiteSpeed, IIS are just a few. For more information on FCGI, +please visit: http://wiki.rubyonrails.com/rails/pages/FastCGI + + +== Debugging Rails + +Sometimes your application goes wrong. Fortunately there are a lot of tools that +will help you debug it and get it back on the rails. + +First area to check is the application log files. Have "tail -f" commands running +on the server.log and development.log. Rails will automatically display debugging +and runtime information to these files. Debugging info will also be shown in the +browser on requests from 127.0.0.1. + +You can also log your own messages directly into the log file from your code using +the Ruby logger class from inside your controllers. Example: + + class WeblogController < ActionController::Base + def destroy + @weblog = Weblog.find(params[:id]) + @weblog.destroy + logger.info("#{Time.now} Destroyed Weblog ID ##{@weblog.id}!") + end + end + +The result will be a message in your log file along the lines of: + + Mon Oct 08 14:22:29 +1000 2007 Destroyed Weblog ID #1 + +More information on how to use the logger is at http://www.ruby-doc.org/core/ + +Also, Ruby documentation can be found at http://www.ruby-lang.org/ including: + +* The Learning Ruby (Pickaxe) Book: http://www.ruby-doc.org/docs/ProgrammingRuby/ +* Learn to Program: http://pine.fm/LearnToProgram/ (a beginners guide) + +These two online (and free) books will bring you up to speed on the Ruby language +and also on programming in general. + + +== Breakpoints + +Breakpoint support is available through the script/breakpointer client. This +means that you can break out of execution at any point in the code, investigate +and change the model, AND then resume execution! Example: + + class WeblogController < ActionController::Base + def index + @posts = Post.find(:all) + breakpoint "Breaking out from the list" + end + end + +So the controller will accept the action, run the first line, then present you +with a IRB prompt in the breakpointer window. Here you can do things like: + +Executing breakpoint "Breaking out from the list" at .../webrick_server.rb:16 in 'breakpoint' + + >> @posts.inspect + => "[#nil, \"body\"=>nil, \"id\"=>\"1\"}>, + #\"Rails you know!\", \"body\"=>\"Only ten..\", \"id\"=>\"2\"}>]" + >> @posts.first.title = "hello from a breakpoint" + => "hello from a breakpoint" + +...and even better is that you can examine how your runtime objects actually work: + + >> f = @posts.first + => #nil, "body"=>nil, "id"=>"1"}> + >> f. + Display all 152 possibilities? (y or n) + +Finally, when you're ready to resume execution, you press CTRL-D + + +== Console + +You can interact with the domain model by starting the console through script/console. +Here you'll have all parts of the application configured, just like it is when the +application is running. You can inspect domain models, change values, and save to the +database. Starting the script without arguments will launch it in the development environment. +Passing an argument will specify a different environment, like script/console production. + +To reload your controllers and models after launching the console run reload! + +To reload your controllers and models after launching the console run reload! + + + +== Description of contents + +app + Holds all the code that's specific to this particular application. + +app/controllers + Holds controllers that should be named like weblogs_controller.rb for + automated URL mapping. All controllers should descend from ApplicationController + which itself descends from ActionController::Base. + +app/models + Holds models that should be named like post.rb. + Most models will descend from ActiveRecord::Base. + +app/views + Holds the template files for the view that should be named like + weblogs/index.rhtml for the WeblogsController#index action. All views use eRuby + syntax. + +app/views/layouts + Holds the template files for layouts to be used with views. This models the common + header/footer method of wrapping views. In your views, define a layout using the + layout :default and create a file named default.rhtml. Inside default.rhtml, + call <% yield %> to render the view using this layout. + +app/helpers + Holds view helpers that should be named like weblogs_helper.rb. These are generated + for you automatically when using script/generate for controllers. Helpers can be used to + wrap functionality for your views into methods. + +config + Configuration files for the Rails environment, the routing map, the database, and other dependencies. + +components + Self-contained mini-applications that can bundle together controllers, models, and views. + +db + Contains the database schema in schema.rb. db/migrate contains all + the sequence of Migrations for your schema. + +doc + This directory is where your application documentation will be stored when generated + using rake doc:app + +lib + Application specific libraries. Basically, any kind of custom code that doesn't + belong under controllers, models, or helpers. This directory is in the load path. + +public + The directory available for the web server. Contains subdirectories for images, stylesheets, + and javascripts. Also contains the dispatchers and the default HTML files. This should be + set as the DOCUMENT_ROOT of your web server. + +script + Helper scripts for automation and generation. + +test + Unit and functional tests along with fixtures. When using the script/generate scripts, template + test files will be generated for you and placed in this directory. + +vendor + External libraries that the application depends on. Also includes the plugins subdirectory. + This directory is in the load path. diff --git a/P5B/ruby/mon_projet/Rakefile b/P5B/ruby/mon_projet/Rakefile new file mode 100644 index 0000000..3bb0e85 --- /dev/null +++ b/P5B/ruby/mon_projet/Rakefile @@ -0,0 +1,10 @@ +# Add your own tasks in files placed in lib/tasks ending in .rake, +# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake. + +require(File.join(File.dirname(__FILE__), 'config', 'boot')) + +require 'rake' +require 'rake/testtask' +require 'rake/rdoctask' + +require 'tasks/rails' diff --git a/P5B/ruby/mon_projet/app/controllers/addresses_controller.rb b/P5B/ruby/mon_projet/app/controllers/addresses_controller.rb new file mode 100644 index 0000000..a2d34da --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/addresses_controller.rb @@ -0,0 +1,79 @@ +class AddressesController < ApplicationController + # GET /addresses + # GET /addresses.xml + def index + @addresses = Address.find(:all) + + respond_to do |format| + format.html # index.rhtml + format.xml { render :xml => @addresses.to_xml } + end + end + + # GET /addresses/1 + # GET /addresses/1.xml + def show + @address = Address.find(params[:id]) + + respond_to do |format| + format.html # show.rhtml + format.xml { render :xml => @address.to_xml } + end + end + + # GET /addresses/new + def new + @address = Address.new + end + + # GET /addresses/1;edit + def edit + @address = Address.find(params[:id]) + end + + # POST /addresses + # POST /addresses.xml + def create + @address = Address.new(params[:address]) + + respond_to do |format| + if @address.save + flash[:notice] = 'Address was successfully created.' + format.html { redirect_to address_url(@address) } + format.xml { head :created, :location => address_url(@address) } + else + format.html { render :action => "new" } + format.xml { render :xml => @address.errors.to_xml } + end + end + end + + # PUT /addresses/1 + # PUT /addresses/1.xml + def update + @address = Address.find(params[:id]) + + respond_to do |format| + if @address.update_attributes(params[:address]) + flash[:notice] = 'Address was successfully updated.' + format.html { redirect_to address_url(@address) } + format.xml { head :ok } + else + format.html { render :action => "edit" } + format.xml { render :xml => @address.errors.to_xml } + end + end + end + + # DELETE /addresses/1 + # DELETE /addresses/1.xml + def destroy + @address = Address.find(params[:id]) + @address.destroy + + respond_to do |format| + format.html { redirect_to addresses_url } + format.xml { head :ok } + end + end +end diff --git a/P5B/ruby/mon_projet/app/controllers/admin/admin_controller.rb b/P5B/ruby/mon_projet/app/controllers/admin/admin_controller.rb new file mode 100644 index 0000000..d9fb3f7 --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/admin/admin_controller.rb @@ -0,0 +1,3 @@ +class Admin::AdminController < ApplicationController + before_filter :login_required +end diff --git a/P5B/ruby/mon_projet/app/controllers/admin/customers_controller.rb b/P5B/ruby/mon_projet/app/controllers/admin/customers_controller.rb new file mode 100644 index 0000000..66738e0 --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/admin/customers_controller.rb @@ -0,0 +1,80 @@ +#class CustomersController < ApplicationController +class Admin::CustomersController < Admin::AdminController + # GET /customers + # GET /customers.xml + def index + @customers = Customer.find(:all) + + respond_to do |format| + format.html # index.rhtml + format.xml { render :xml => @customers.to_xml } + end + end + + # GET /customers/1 + # GET /customers/1.xml + def show + @customer = Customer.find(params[:id]) + + respond_to do |format| + format.html # show.rhtml + format.xml { render :xml => @customer.to_xml } + end + end + + # GET /customers/new + def new + @customer = Customer.new + end + + # GET /customers/1;edit + def edit + @customer = Customer.find(params[:id]) + end + + # POST /customers + # POST /customers.xml + def create + @customer = Customer.new(params[:customer]) + + respond_to do |format| + if @customer.save + flash[:notice] = 'Customer was successfully created.' + format.html { redirect_to customer_url(@customer) } + format.xml { head :created, :location => customer_url(@customer) } + else + format.html { render :action => "new" } + format.xml { render :xml => @customer.errors.to_xml } + end + end + end + + # PUT /customers/1 + # PUT /customers/1.xml + def update + @customer = Customer.find(params[:id]) + + respond_to do |format| + if @customer.update_attributes(params[:customer]) + flash[:notice] = 'Customer was successfully updated.' + format.html { redirect_to customer_url(@customer) } + format.xml { head :ok } + else + format.html { render :action => "edit" } + format.xml { render :xml => @customer.errors.to_xml } + end + end + end + + # DELETE /customers/1 + # DELETE /customers/1.xml + def destroy + @customer = Customer.find(params[:id]) + @customer.destroy + + respond_to do |format| + format.html { redirect_to customers_url } + format.xml { head :ok } + end + end +end diff --git a/P5B/ruby/mon_projet/app/controllers/admin/products_controller.rb b/P5B/ruby/mon_projet/app/controllers/admin/products_controller.rb new file mode 100644 index 0000000..70acc5f --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/admin/products_controller.rb @@ -0,0 +1,92 @@ +# ajout de la biblioth�que PP +require "pp" + +#class ProductsController < ApplicationController +class Admin::ProductsController < Admin::AdminController + + in_place_edit_for :product, :designation + + # GET /products + # GET /products.xml + def index + @products = Product.find(:all) + + respond_to do |format| + format.html # index.rhtml + format.xml { render :xml => @products.to_xml } + end + end + + # GET /products/1 + # GET /products/1.xml + def show + @product = Product.find(params[:id]) + + respond_to do |format| + format.html # show.rhtml + format.xml { render :xml => @product.to_xml } + end + end + + # GET /products/new + def new + @product = Product.new + end + + # GET /products/1;edit + def edit + @product = Product.find(params[:id]) + end + + # POST /products + # POST /products.xml + def create + @product = Product.new(params[:product]) + + @product.type = params[:type] if params[:type] + + respond_to do |format| + if @product.save + flash[:notice] = 'Le produit a été crée avec succès.' + format.html { redirect_to product_url(@product) } + format.xml { head :created, :location => product_url(@product) } + else #si erreur alors + format.html { render :action => "new" } + format.xml { render :xml => @product.errors.to_xml } + pp(@product) + end + end + end + + # PUT /products/1 + # PUT /products/1.xml + def update + + @product = Product.find(params[:id]) + + @product.type = params[:type] if params[:type] + + respond_to do |format| + if @product.update_attributes(params[:product]) + flash[:notice] = 'Le produit a été mis à jour avec succès.' + format.html { redirect_to product_url(@product) } + format.xml { head :ok } + else + format.html { render :action => "edit" } + format.xml { render :xml => @product.errors.to_xml } + end + end + end + + # DELETE /products/1 + # DELETE /products/1.xml + def destroy + @product = Product.find(params[:id]) + @product.destroy + + respond_to do |format| + format.html { redirect_to products_url } + format.xml { head :ok } + end + end +end diff --git a/P5B/ruby/mon_projet/app/controllers/admin/products_controller.rb~ b/P5B/ruby/mon_projet/app/controllers/admin/products_controller.rb~ new file mode 100644 index 0000000..70acc5f --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/admin/products_controller.rb~ @@ -0,0 +1,92 @@ +# ajout de la biblioth�que PP +require "pp" + +#class ProductsController < ApplicationController +class Admin::ProductsController < Admin::AdminController + + in_place_edit_for :product, :designation + + # GET /products + # GET /products.xml + def index + @products = Product.find(:all) + + respond_to do |format| + format.html # index.rhtml + format.xml { render :xml => @products.to_xml } + end + end + + # GET /products/1 + # GET /products/1.xml + def show + @product = Product.find(params[:id]) + + respond_to do |format| + format.html # show.rhtml + format.xml { render :xml => @product.to_xml } + end + end + + # GET /products/new + def new + @product = Product.new + end + + # GET /products/1;edit + def edit + @product = Product.find(params[:id]) + end + + # POST /products + # POST /products.xml + def create + @product = Product.new(params[:product]) + + @product.type = params[:type] if params[:type] + + respond_to do |format| + if @product.save + flash[:notice] = 'Le produit a été crée avec succès.' + format.html { redirect_to product_url(@product) } + format.xml { head :created, :location => product_url(@product) } + else #si erreur alors + format.html { render :action => "new" } + format.xml { render :xml => @product.errors.to_xml } + pp(@product) + end + end + end + + # PUT /products/1 + # PUT /products/1.xml + def update + + @product = Product.find(params[:id]) + + @product.type = params[:type] if params[:type] + + respond_to do |format| + if @product.update_attributes(params[:product]) + flash[:notice] = 'Le produit a été mis à jour avec succès.' + format.html { redirect_to product_url(@product) } + format.xml { head :ok } + else + format.html { render :action => "edit" } + format.xml { render :xml => @product.errors.to_xml } + end + end + end + + # DELETE /products/1 + # DELETE /products/1.xml + def destroy + @product = Product.find(params[:id]) + @product.destroy + + respond_to do |format| + format.html { redirect_to products_url } + format.xml { head :ok } + end + end +end diff --git a/P5B/ruby/mon_projet/app/controllers/admin/suppliers_controller.rb b/P5B/ruby/mon_projet/app/controllers/admin/suppliers_controller.rb new file mode 100644 index 0000000..17c1731 --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/admin/suppliers_controller.rb @@ -0,0 +1,80 @@ +#class SuppliersController < ApplicationController +class Admin::SuppliersController < Admin::AdminController + # GET /suppliers + # GET /suppliers.xml + def index + @suppliers = Supplier.find(:all) + + respond_to do |format| + format.html # index.rhtml + format.xml { render :xml => @suppliers.to_xml } + end + end + + # GET /suppliers/1 + # GET /suppliers/1.xml + def show + @supplier = Supplier.find(params[:id]) + + respond_to do |format| + format.html # show.rhtml + format.xml { render :xml => @supplier.to_xml } + end + end + + # GET /suppliers/new + def new + @supplier = Supplier.new + end + + # GET /suppliers/1;edit + def edit + @supplier = Supplier.find(params[:id]) + end + + # POST /suppliers + # POST /suppliers.xml + def create + @supplier = Supplier.new(params[:supplier]) + + respond_to do |format| + if @supplier.save + flash[:notice] = 'Supplier was successfully created.' + format.html { redirect_to supplier_url(@supplier) } + format.xml { head :created, :location => supplier_url(@supplier) } + else + format.html { render :action => "new" } + format.xml { render :xml => @supplier.errors.to_xml } + end + end + end + + # PUT /suppliers/1 + # PUT /suppliers/1.xml + def update + @supplier = Supplier.find(params[:id]) + + respond_to do |format| + if @supplier.update_attributes(params[:supplier]) + flash[:notice] = 'Supplier was successfully updated.' + format.html { redirect_to supplier_url(@supplier) } + format.xml { head :ok } + else + format.html { render :action => "edit" } + format.xml { render :xml => @supplier.errors.to_xml } + end + end + end + + # DELETE /suppliers/1 + # DELETE /suppliers/1.xml + def destroy + @supplier = Supplier.find(params[:id]) + @supplier.destroy + + respond_to do |format| + format.html { redirect_to suppliers_url } + format.xml { head :ok } + end + end +end diff --git a/P5B/ruby/mon_projet/app/controllers/application.rb b/P5B/ruby/mon_projet/app/controllers/application.rb new file mode 100644 index 0000000..b72e81e --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/application.rb @@ -0,0 +1,9 @@ +# Filters added to this controller apply to all controllers in the application. +# Likewise, all the methods added will be available for all controllers. + +class ApplicationController < ActionController::Base + # Be sure to include AuthenticationSystem in Application Controller instead + include AuthenticatedSystem + # Pick a unique cookie name to distinguish our session data from others' + session :session_key => '_mon_projet_session_id' +end diff --git a/P5B/ruby/mon_projet/app/controllers/products_controller.rb b/P5B/ruby/mon_projet/app/controllers/products_controller.rb new file mode 100644 index 0000000..07d65c8 --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/products_controller.rb @@ -0,0 +1,22 @@ +class ProductsController < ApplicationController + + def index + #@products = Product.find(:all) + + @products = Product.paginate :page => params[:page], :per_page => 3 + + respond_to do |format| + format.html # index.rhtml + format.xml { render :xml => @products.to_xml } + end + end + + def show + @product = Product.find(params[:id]) + + respond_to do |format| + format.html # show.rhtml + format.xml { render :xml => @product.to_xml } + end + end +end diff --git a/P5B/ruby/mon_projet/app/controllers/products_controller.rb~ b/P5B/ruby/mon_projet/app/controllers/products_controller.rb~ new file mode 100644 index 0000000..5f395a0 --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/products_controller.rb~ @@ -0,0 +1,22 @@ +class ProductsController < ApplicationController + + def index + #@products = Product.find(:all) + + @posts = Product.paginate :page => params[:page], :per_page => 3 + + respond_to do |format| + format.html # index.rhtml + format.xml { render :xml => @products.to_xml } + end + end + + def show + @product = Product.find(params[:id]) + + respond_to do |format| + format.html # show.rhtml + format.xml { render :xml => @product.to_xml } + end + end +end diff --git a/P5B/ruby/mon_projet/app/controllers/sessions_controller.rb b/P5B/ruby/mon_projet/app/controllers/sessions_controller.rb new file mode 100644 index 0000000..2ab5817 --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/sessions_controller.rb @@ -0,0 +1,31 @@ +# This controller handles the login/logout function of the site. +class SessionsController < ApplicationController + # Be sure to include AuthenticationSystem in Application Controller instead + include AuthenticatedSystem + + # render new.rhtml + def new + end + + def create + self.current_utilisateur = Utilisateur.authenticate(params[:login], params[:password]) + if logged_in? + if params[:remember_me] == "1" + self.current_utilisateur.remember_me + cookies[:auth_token] = { :value => self.current_utilisateur.remember_token , :expires => self.current_utilisateur.remember_token_expires_at } + end + redirect_back_or_default('/') + flash[:notice] = "Logged in successfully" + else + render :action => 'new' + end + end + + def destroy + self.current_utilisateur.forget_me if logged_in? + cookies.delete :auth_token + reset_session + flash[:notice] = "You have been logged out." + redirect_back_or_default('/') + end +end diff --git a/P5B/ruby/mon_projet/app/controllers/utilisateurs_controller.rb b/P5B/ruby/mon_projet/app/controllers/utilisateurs_controller.rb new file mode 100644 index 0000000..cbed476 --- /dev/null +++ b/P5B/ruby/mon_projet/app/controllers/utilisateurs_controller.rb @@ -0,0 +1,28 @@ +class UtilisateursController < ApplicationController + + # render new.rhtml + def new + end + + def create + cookies.delete :auth_token + reset_session + @utilisateur = Utilisateur.new(params[:utilisateur]) + @utilisateur.save! + self.current_utilisateur = @utilisateur + redirect_back_or_default('/') + flash[:notice] = "Thanks for signing up!" + rescue ActiveRecord::RecordInvalid + render :action => 'new' + end + + def activate + self.current_utilisateur = params[:activation_code].blank? ? :false : Utilisateur.find_by_activation_code(params[:activation_code]) + if logged_in? && !current_utilisateur.activated? + current_utilisateur.activate + flash[:notice] = "Signup complete!" + end + redirect_back_or_default('/') + end + +end diff --git a/P5B/ruby/mon_projet/app/helpers/addresses_helper.rb b/P5B/ruby/mon_projet/app/helpers/addresses_helper.rb new file mode 100644 index 0000000..5f4dc13 --- /dev/null +++ b/P5B/ruby/mon_projet/app/helpers/addresses_helper.rb @@ -0,0 +1,2 @@ +module AddressesHelper +end diff --git a/P5B/ruby/mon_projet/app/helpers/admin/admin_helper.rb b/P5B/ruby/mon_projet/app/helpers/admin/admin_helper.rb new file mode 100644 index 0000000..53c4d49 --- /dev/null +++ b/P5B/ruby/mon_projet/app/helpers/admin/admin_helper.rb @@ -0,0 +1,2 @@ +module Admin::AdminHelper +end diff --git a/P5B/ruby/mon_projet/app/helpers/application_helper.rb b/P5B/ruby/mon_projet/app/helpers/application_helper.rb new file mode 100644 index 0000000..22a7940 --- /dev/null +++ b/P5B/ruby/mon_projet/app/helpers/application_helper.rb @@ -0,0 +1,3 @@ +# Methods added to this helper will be available to all templates in the application. +module ApplicationHelper +end diff --git a/P5B/ruby/mon_projet/app/helpers/customers_helper.rb b/P5B/ruby/mon_projet/app/helpers/customers_helper.rb new file mode 100644 index 0000000..a07ce29 --- /dev/null +++ b/P5B/ruby/mon_projet/app/helpers/customers_helper.rb @@ -0,0 +1,2 @@ +module CustomersHelper +end diff --git a/P5B/ruby/mon_projet/app/helpers/products_helper.rb b/P5B/ruby/mon_projet/app/helpers/products_helper.rb new file mode 100644 index 0000000..ab5c42b --- /dev/null +++ b/P5B/ruby/mon_projet/app/helpers/products_helper.rb @@ -0,0 +1,2 @@ +module ProductsHelper +end diff --git a/P5B/ruby/mon_projet/app/helpers/sessions_helper.rb b/P5B/ruby/mon_projet/app/helpers/sessions_helper.rb new file mode 100644 index 0000000..f54a8fc --- /dev/null +++ b/P5B/ruby/mon_projet/app/helpers/sessions_helper.rb @@ -0,0 +1,2 @@ +module SessionsHelper +end \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/helpers/suppliers_helper.rb b/P5B/ruby/mon_projet/app/helpers/suppliers_helper.rb new file mode 100644 index 0000000..8994104 --- /dev/null +++ b/P5B/ruby/mon_projet/app/helpers/suppliers_helper.rb @@ -0,0 +1,2 @@ +module SuppliersHelper +end diff --git a/P5B/ruby/mon_projet/app/helpers/utilisateurs_helper.rb b/P5B/ruby/mon_projet/app/helpers/utilisateurs_helper.rb new file mode 100644 index 0000000..d7cb455 --- /dev/null +++ b/P5B/ruby/mon_projet/app/helpers/utilisateurs_helper.rb @@ -0,0 +1,2 @@ +module UtilisateursHelper +end \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/models/address.rb b/P5B/ruby/mon_projet/app/models/address.rb new file mode 100644 index 0000000..c026cd8 --- /dev/null +++ b/P5B/ruby/mon_projet/app/models/address.rb @@ -0,0 +1,2 @@ +class Address < ActiveRecord::Base +end diff --git a/P5B/ruby/mon_projet/app/models/customer.rb b/P5B/ruby/mon_projet/app/models/customer.rb new file mode 100644 index 0000000..3138553 --- /dev/null +++ b/P5B/ruby/mon_projet/app/models/customer.rb @@ -0,0 +1,3 @@ +class Customer < ActiveRecord::Base + has_many :products +end diff --git a/P5B/ruby/mon_projet/app/models/product.rb b/P5B/ruby/mon_projet/app/models/product.rb new file mode 100644 index 0000000..0a3d227 --- /dev/null +++ b/P5B/ruby/mon_projet/app/models/product.rb @@ -0,0 +1,5 @@ +class Product < ActiveRecord::Base +belongs_to :supplier +belongs_to :customer +validates_presence_of :designation, :message => "ne peut être vide." +end diff --git a/P5B/ruby/mon_projet/app/models/product.rb~ b/P5B/ruby/mon_projet/app/models/product.rb~ new file mode 100644 index 0000000..0a3d227 --- /dev/null +++ b/P5B/ruby/mon_projet/app/models/product.rb~ @@ -0,0 +1,5 @@ +class Product < ActiveRecord::Base +belongs_to :supplier +belongs_to :customer +validates_presence_of :designation, :message => "ne peut être vide." +end diff --git a/P5B/ruby/mon_projet/app/models/supplier.rb b/P5B/ruby/mon_projet/app/models/supplier.rb new file mode 100644 index 0000000..89e1df7 --- /dev/null +++ b/P5B/ruby/mon_projet/app/models/supplier.rb @@ -0,0 +1,3 @@ +class Supplier < ActiveRecord::Base + has_many :products +end diff --git a/P5B/ruby/mon_projet/app/models/utilisateur.rb b/P5B/ruby/mon_projet/app/models/utilisateur.rb new file mode 100644 index 0000000..66d8720 --- /dev/null +++ b/P5B/ruby/mon_projet/app/models/utilisateur.rb @@ -0,0 +1,98 @@ +require 'digest/sha1' +class Utilisateur < ActiveRecord::Base + # Virtual attribute for the unencrypted password + attr_accessor :password + + validates_presence_of :login, :email + validates_presence_of :password, :if => :password_required? + validates_presence_of :password_confirmation, :if => :password_required? + validates_length_of :password, :within => 4..40, :if => :password_required? + validates_confirmation_of :password, :if => :password_required? + validates_length_of :login, :within => 3..40 + validates_length_of :email, :within => 3..100 + validates_uniqueness_of :login, :email, :case_sensitive => false + before_save :encrypt_password + before_create :make_activation_code + # prevents a user from submitting a crafted form that bypasses activation + # anything else you want your user to change should be added here. + attr_accessible :login, :email, :password, :password_confirmation + + # Activates the user in the database. + def activate + @activated = true + self.activated_at = Time.now.utc + self.activation_code = nil + save(false) + end + + def activated? + # the existence of an activation code means they have not activated yet + activation_code.nil? + end + + # Returns true if the user has just been activated. + def recently_activated? + @activated + end + + # Authenticates a user by their login name and unencrypted password. Returns the user or nil. + def self.authenticate(login, password) + u = find :first, :conditions => ['login = ? and activated_at IS NOT NULL', login] # need to get the salt + u && u.authenticated?(password) ? u : nil + end + + # Encrypts some data with the salt. + def self.encrypt(password, salt) + Digest::SHA1.hexdigest("--#{salt}--#{password}--") + end + + # Encrypts the password with the user salt + def encrypt(password) + self.class.encrypt(password, salt) + end + + def authenticated?(password) + crypted_password == encrypt(password) + end + + def remember_token? + remember_token_expires_at && Time.now.utc < remember_token_expires_at + end + + # These create and unset the fields required for remembering users between browser closes + def remember_me + remember_me_for 2.weeks + end + + def remember_me_for(time) + remember_me_until time.from_now.utc + end + + def remember_me_until(time) + self.remember_token_expires_at = time + self.remember_token = encrypt("#{email}--#{remember_token_expires_at}") + save(false) + end + + def forget_me + self.remember_token_expires_at = nil + self.remember_token = nil + save(false) + end + + protected + # before filter + def encrypt_password + return if password.blank? + self.salt = Digest::SHA1.hexdigest("--#{Time.now.to_s}--#{login}--") if new_record? + self.crypted_password = encrypt(password) + end + + def password_required? + crypted_password.blank? || !password.blank? + end + + def make_activation_code + self.activation_code = Digest::SHA1.hexdigest( Time.now.to_s.split(//).sort_by {rand}.join ) + end +end diff --git a/P5B/ruby/mon_projet/app/models/utilisateur_mailer.rb b/P5B/ruby/mon_projet/app/models/utilisateur_mailer.rb new file mode 100644 index 0000000..0b944cd --- /dev/null +++ b/P5B/ruby/mon_projet/app/models/utilisateur_mailer.rb @@ -0,0 +1,24 @@ +class UtilisateurMailer < ActionMailer::Base + def signup_notification(utilisateur) + setup_email(utilisateur) + @subject += 'Please activate your new account' + + @body[:url] = "http://YOURSITE/activate/#{utilisateur.activation_code}" + + end + + def activation(utilisateur) + setup_email(utilisateur) + @subject += 'Your account has been activated!' + @body[:url] = "http://YOURSITE/" + end + + protected + def setup_email(utilisateur) + @recipients = "#{utilisateur.email}" + @from = "ADMINEMAIL" + @subject = "[YOURSITE] " + @sent_on = Time.now + @body[:utilisateur] = utilisateur + end +end diff --git a/P5B/ruby/mon_projet/app/models/utilisateur_observer.rb b/P5B/ruby/mon_projet/app/models/utilisateur_observer.rb new file mode 100644 index 0000000..e293a64 --- /dev/null +++ b/P5B/ruby/mon_projet/app/models/utilisateur_observer.rb @@ -0,0 +1,11 @@ +class UtilisateurObserver < ActiveRecord::Observer + def after_create(utilisateur) + UtilisateurMailer.deliver_signup_notification(utilisateur) + end + + def after_save(utilisateur) + + UtilisateurMailer.deliver_activation(utilisateur) if utilisateur.recently_activated? + + end +end diff --git a/P5B/ruby/mon_projet/app/models/velo.rb b/P5B/ruby/mon_projet/app/models/velo.rb new file mode 100644 index 0000000..05c1336 --- /dev/null +++ b/P5B/ruby/mon_projet/app/models/velo.rb @@ -0,0 +1,2 @@ +class Velo < Product +end \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/models/voiture.rb b/P5B/ruby/mon_projet/app/models/voiture.rb new file mode 100644 index 0000000..43b08b0 --- /dev/null +++ b/P5B/ruby/mon_projet/app/models/voiture.rb @@ -0,0 +1,2 @@ +class Voiture < Product +end diff --git a/P5B/ruby/mon_projet/app/views/admin/addresses/edit.rhtml b/P5B/ruby/mon_projet/app/views/admin/addresses/edit.rhtml new file mode 100644 index 0000000..44b4e43 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/addresses/edit.rhtml @@ -0,0 +1,32 @@ +

    Editing address

    + +<%= error_messages_for :address %> + +<% form_for(:address, :url => address_path(@address), :html => { :method => :put }) do |f| %> +

    + Street
    + <%= f.text_area :street %> +

    + +

    + Postal code
    + <%= f.text_field :postal_code %> +

    + +

    + City
    + <%= f.text_field :city %> +

    + +

    + Country
    + <%= f.text_field :country %> +

    + +

    + <%= submit_tag "Update" %> +

    +<% end %> + +<%= link_to 'Show', address_path(@address) %> | +<%= link_to 'Back', addresses_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/addresses/index.rhtml b/P5B/ruby/mon_projet/app/views/admin/addresses/index.rhtml new file mode 100644 index 0000000..b055056 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/addresses/index.rhtml @@ -0,0 +1,26 @@ +

    Listing addresses

    + + + + + + + + + +<% for address in @addresses %> + + + + + + + + + +<% end %> +
    StreetPostal codeCityCountry
    <%=h address.street %><%=h address.postal_code %><%=h address.city %><%=h address.country %><%= link_to 'Show', address_path(address) %><%= link_to 'Edit', edit_address_path(address) %><%= link_to 'Destroy', address_path(address), :confirm => 'Are you sure?', :method => :delete %>
    + +
    + +<%= link_to 'New address', new_address_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/addresses/new.rhtml b/P5B/ruby/mon_projet/app/views/admin/addresses/new.rhtml new file mode 100644 index 0000000..59466a2 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/addresses/new.rhtml @@ -0,0 +1,31 @@ +

    New address

    + +<%= error_messages_for :address %> + +<% form_for(:address, :url => addresses_path) do |f| %> +

    + Street
    + <%= f.text_area :street %> +

    + +

    + Postal code
    + <%= f.text_field :postal_code %> +

    + +

    + City
    + <%= f.text_field :city %> +

    + +

    + Country
    + <%= f.text_field :country %> +

    + +

    + <%= submit_tag "Create" %> +

    +<% end %> + +<%= link_to 'Back', addresses_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/addresses/show.rhtml b/P5B/ruby/mon_projet/app/views/admin/addresses/show.rhtml new file mode 100644 index 0000000..98d62c4 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/addresses/show.rhtml @@ -0,0 +1,23 @@ +

    + Street: + <%=h @address.street %> +

    + +

    + Postal code: + <%=h @address.postal_code %> +

    + +

    + City: + <%=h @address.city %> +

    + +

    + Country: + <%=h @address.country %> +

    + + +<%= link_to 'Edit', edit_address_path(@address) %> | +<%= link_to 'Back', addresses_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/customers/edit.rhtml b/P5B/ruby/mon_projet/app/views/admin/customers/edit.rhtml new file mode 100644 index 0000000..09bebb8 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/customers/edit.rhtml @@ -0,0 +1,22 @@ +

    Editing customer

    + +<%= error_messages_for :customer %> + +<% form_for(:customer, :url => customer_path(@customer), :html => { :method => :put }) do |f| %> +

    + Firstname
    + <%= f.text_field :firstname %> +

    + +

    + Name
    + <%= f.text_field :name %> +

    + +

    + <%= submit_tag "Update" %> +

    +<% end %> + +<%= link_to 'Show', customer_path(@customer) %> | +<%= link_to 'Back', customers_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/customers/index.rhtml b/P5B/ruby/mon_projet/app/views/admin/customers/index.rhtml new file mode 100644 index 0000000..b714a75 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/customers/index.rhtml @@ -0,0 +1,22 @@ +

    Listing customers

    + + + + + + + +<% for customer in @customers %> + + + + + + + +<% end %> +
    FirstnameName
    <%=h customer.firstname %><%=h customer.name %><%= link_to 'Show', customer_path(customer) %><%= link_to 'Edit', edit_customer_path(customer) %><%= link_to 'Destroy', customer_path(customer), :confirm => 'Are you sure?', :method => :delete %>
    + +
    + +<%= link_to 'New customer', new_customer_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/customers/new.rhtml b/P5B/ruby/mon_projet/app/views/admin/customers/new.rhtml new file mode 100644 index 0000000..dd6ffcf --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/customers/new.rhtml @@ -0,0 +1,21 @@ +

    New customer

    + +<%= error_messages_for :customer %> + +<% form_for(:customer, :url => customers_path) do |f| %> +

    + Firstname
    + <%= f.text_field :firstname %> +

    + +

    + Name
    + <%= f.text_field :name %> +

    + +

    + <%= submit_tag "Create" %> +

    +<% end %> + +<%= link_to 'Back', customers_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/customers/show.rhtml b/P5B/ruby/mon_projet/app/views/admin/customers/show.rhtml new file mode 100644 index 0000000..ad9faea --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/customers/show.rhtml @@ -0,0 +1,13 @@ +

    + Firstname: + <%=h @customer.firstname %> +

    + +

    + Name: + <%=h @customer.name %> +

    + + +<%= link_to 'Edit', edit_customer_path(@customer) %> | +<%= link_to 'Back', customers_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/products/_form.rhtml b/P5B/ruby/mon_projet/app/views/admin/products/_form.rhtml new file mode 100644 index 0000000..8c3bd4b --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/products/_form.rhtml @@ -0,0 +1,29 @@ +

    + Designation
    + <%= f.text_field :designation %> +

    + +

    + Description
    + <%= f.text_area :description %> +

    + +

    + Crée le
    + <%= f.datetime_select :created_at %> +

    + +

    + Mis à jour le
    + <%= f.datetime_select :updated_at %> +

    + +

    + Fournisseur
    + <%= f.select("supplier_id", Supplier.find(:all).collect {|p| [ p.code, p.id ] }, { :include_blank => true }) %> +

    + +

    + Type de produit
    + <%= select_tag "type", options_for_select([["Voiture", "Voiture"], ["Vélo", "Velo"]]) %> +

    \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/products/edit.rhtml b/P5B/ruby/mon_projet/app/views/admin/products/edit.rhtml new file mode 100644 index 0000000..88804b8 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/products/edit.rhtml @@ -0,0 +1,15 @@ +

    Edition d'un produit

    + +<%= error_messages_for :product %> + +<% form_for(:product, :url => admin_product_path(@product), :html => { :method => :put }) do |f| %> + + <%= render :partial => "form", :locals => { :f => f } %> + +

    + <%= submit_tag "Mise à jour" %> +

    +<% end %> + +<%= link_to 'Voir', admin_product_path(@product) %> | +<%= link_to 'Retour', admin_products_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/products/index.rhtml b/P5B/ruby/mon_projet/app/views/admin/products/index.rhtml new file mode 100644 index 0000000..222f5ff --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/products/index.rhtml @@ -0,0 +1,34 @@ +

    Liste des produits

    + + + + + + + + + + + +<% for product in @products %> + + + + + + + + + + + +<% end %> +
    DésignationDescriptionCrée leMis à jour leFournisseurType
    <%=h product.designation %><%=h product.description %><%=h product.created_at.strftime("le %d/%m/%Y") %><%=h product.updated_at.strftime("%d/%m/%Y") %><%= link_to product.supplier_id, supplier_path(product.supplier_id) %><%=h product.type%><%= link_to 'Voir', admin_product_path(product) %><%= link_to 'Editer', edit_admin_product_path(product) %><%= link_to 'Supprimer', admin_product_path(product), :confirm => 'Etes vous sûr ?', :method => :delete %>
    + +
    + +<%= link_to 'Nouveau produit', new_admin_product_path %> +
    + +

    Utilisateur connecté : <%= current_utilisateur.login if current_utilisateur %> +

    \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/products/new.rhtml b/P5B/ruby/mon_projet/app/views/admin/products/new.rhtml new file mode 100644 index 0000000..a9e959e --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/products/new.rhtml @@ -0,0 +1,13 @@ +

    Nouvel élément

    + +<%= error_messages_for :product %> + +<% form_for(:product, :url => admin_products_path) do |f| %> + + <%= render :partial => "form", :locals => { :f => f} %> +

    + <%= submit_tag "Créer" %> +

    +<% end %> + +<%= link_to 'Retour', admin_products_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/products/show.rhtml b/P5B/ruby/mon_projet/app/views/admin/products/show.rhtml new file mode 100644 index 0000000..2e424a3 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/products/show.rhtml @@ -0,0 +1,23 @@ +

    + Désignation: + <%=h @product.designation %> +

    + +

    + Description: + <%=h @product.description %> +

    + +

    + Crée le: + <%=h @product.created_at %> +

    + +

    + Mis à jour le : + <%=h @product.updated_at %> +

    + + +<%= link_to 'Editer', admin_edit_product_path(@product) %> | +<%= link_to 'Retour', admin_products_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/suppliers/edit.rhtml b/P5B/ruby/mon_projet/app/views/admin/suppliers/edit.rhtml new file mode 100644 index 0000000..0e6665f --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/suppliers/edit.rhtml @@ -0,0 +1,37 @@ +

    Editing supplier

    + +<%= error_messages_for :supplier %> + +<% form_for(:supplier, :url => supplier_path(@supplier), :html => { :method => :put }) do |f| %> +

    + Name
    + <%= f.text_field :name %> +

    + +

    + Description
    + <%= f.text_area :description %> +

    + +

    + Code
    + <%= f.text_field :code %> +

    + +

    + Created at
    + <%= f.datetime_select :created_at %> +

    + +

    + Updated at
    + <%= f.datetime_select :updated_at %> +

    + +

    + <%= submit_tag "Update" %> +

    +<% end %> + +<%= link_to 'Show', supplier_path(@supplier) %> | +<%= link_to 'Back', suppliers_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/suppliers/index.rhtml b/P5B/ruby/mon_projet/app/views/admin/suppliers/index.rhtml new file mode 100644 index 0000000..77f0973 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/suppliers/index.rhtml @@ -0,0 +1,28 @@ +

    Listing suppliers

    + + + + + + + + + + +<% for supplier in @suppliers %> + + + + + + + + + + +<% end %> +
    NameDescriptionCodeCreated atUpdated at
    <%=h supplier.name %><%=h supplier.description %><%=h supplier.code %><%=h supplier.created_at %><%=h supplier.updated_at %><%= link_to 'Show', supplier_path(supplier) %><%= link_to 'Edit', edit_supplier_path(supplier) %><%= link_to 'Destroy', supplier_path(supplier), :confirm => 'Are you sure?', :method => :delete %>
    + +
    + +<%= link_to 'New supplier', new_supplier_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/suppliers/new.rhtml b/P5B/ruby/mon_projet/app/views/admin/suppliers/new.rhtml new file mode 100644 index 0000000..7843e70 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/suppliers/new.rhtml @@ -0,0 +1,36 @@ +

    New supplier

    + +<%= error_messages_for :supplier %> + +<% form_for(:supplier, :url => suppliers_path) do |f| %> +

    + Name
    + <%= f.text_field :name %> +

    + +

    + Description
    + <%= f.text_area :description %> +

    + +

    + Code
    + <%= f.text_field :code %> +

    + +

    + Created at
    + <%= f.datetime_select :created_at %> +

    + +

    + Updated at
    + <%= f.datetime_select :updated_at %> +

    + +

    + <%= submit_tag "Create" %> +

    +<% end %> + +<%= link_to 'Back', suppliers_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/admin/suppliers/show.rhtml b/P5B/ruby/mon_projet/app/views/admin/suppliers/show.rhtml new file mode 100644 index 0000000..1789ed8 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/admin/suppliers/show.rhtml @@ -0,0 +1,28 @@ +

    + Name: + <%=h @supplier.name %> +

    + +

    + Description: + <%=h @supplier.description %> +

    + +

    + Code: + <%=h @supplier.code %> +

    + +

    + Created at: + <%=h @supplier.created_at %> +

    + +

    + Updated at: + <%=h @supplier.updated_at %> +

    + + +<%= link_to 'Edit', edit_supplier_path(@supplier) %> | +<%= link_to 'Back', suppliers_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/layouts/application.rhtml b/P5B/ruby/mon_projet/app/views/layouts/application.rhtml new file mode 100644 index 0000000..cf38c93 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/layouts/application.rhtml @@ -0,0 +1,18 @@ + + + + + + Produits: <%= controller.action_name %> + <%= stylesheet_link_tag 'scaffold' %> + <%= javascript_include_tag :defaults %> + + + +

    <%= flash[:notice] %>

    + +<%= yield %> + + + diff --git a/P5B/ruby/mon_projet/app/views/layouts/application.rhtml~ b/P5B/ruby/mon_projet/app/views/layouts/application.rhtml~ new file mode 100644 index 0000000..32d3cdb --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/layouts/application.rhtml~ @@ -0,0 +1,18 @@ + + + + + + Produits: <%= controller.action_name %> + <%= stylesheet_link_tag 'scaffold' %> + <%= javascript_include_tag defaults %> + + + +

    <%= flash[:notice] %>

    + +<%= yield %> + + + diff --git a/P5B/ruby/mon_projet/app/views/products/index.rhtml b/P5B/ruby/mon_projet/app/views/products/index.rhtml new file mode 100644 index 0000000..d91a2c8 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/products/index.rhtml @@ -0,0 +1,25 @@ +

    Liste des produits

    + + + + + + + + + +<% for product in @products %> + + <%= @product = product %> + + + + + + +<% end %> +
    DésignationDescriptionFournisseurType
    <%= in_place_editor_field :product, :designation %><%=h product.description %><%= link_to product.supplier_id, supplier_path(product.supplier_id) %><%=h product.type%><%= link_to 'Voir', product_path(product) %>
    + +<%= will_paginate @products %> + +
    \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/products/index.rhtml~ b/P5B/ruby/mon_projet/app/views/products/index.rhtml~ new file mode 100644 index 0000000..a45abdd --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/products/index.rhtml~ @@ -0,0 +1,25 @@ +

    Liste des produits

    + + + + + + + + + +<% for product in @products %> + + <%= @product = product %> + + + + + + +<% end %> +
    DésignationDescriptionFournisseurType
    <%=h in_place_editor_field :product, :designation %><%=h product.description %><%= link_to product.supplier_id, supplier_path(product.supplier_id) %><%=h product.type%><%= link_to 'Voir', product_path(product) %>
    + +<%= will_paginate @products %> + +
    \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/products/show.rhtml b/P5B/ruby/mon_projet/app/views/products/show.rhtml new file mode 100644 index 0000000..35739f8 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/products/show.rhtml @@ -0,0 +1,11 @@ +

    + Désignation: + <%=h @product.designation %> +

    + +

    + Description: + <%=h @product.description %> +

    + +<%= link_to 'Retour', products_path %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/sessions/new.rhtml b/P5B/ruby/mon_projet/app/views/sessions/new.rhtml new file mode 100644 index 0000000..3f333eb --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/sessions/new.rhtml @@ -0,0 +1,14 @@ +<% form_tag session_path do -%> +


    +<%= text_field_tag 'login' %>

    + +


    +<%= password_field_tag 'password' %>

    + + + +

    <%= submit_tag 'Log in' %>

    +<% end -%> diff --git a/P5B/ruby/mon_projet/app/views/utilisateur_mailer/activation.rhtml b/P5B/ruby/mon_projet/app/views/utilisateur_mailer/activation.rhtml new file mode 100644 index 0000000..c541c89 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/utilisateur_mailer/activation.rhtml @@ -0,0 +1,3 @@ +<%= @utilisateur.login %>, your account has been activated. You may now start adding your plugins: + + <%= @url %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/utilisateur_mailer/signup_notification.rhtml b/P5B/ruby/mon_projet/app/views/utilisateur_mailer/signup_notification.rhtml new file mode 100644 index 0000000..651a832 --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/utilisateur_mailer/signup_notification.rhtml @@ -0,0 +1,8 @@ +Your account has been created. + + Username: <%= @utilisateur.login %> + Password: <%= @utilisateur.password %> + +Visit this url to activate your account: + + <%= @url %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/app/views/utilisateurs/new.rhtml b/P5B/ruby/mon_projet/app/views/utilisateurs/new.rhtml new file mode 100644 index 0000000..6813e9b --- /dev/null +++ b/P5B/ruby/mon_projet/app/views/utilisateurs/new.rhtml @@ -0,0 +1,16 @@ +<%= error_messages_for :utilisateur %> +<% form_for :utilisateur, :url => utilisateurs_path do |f| -%> +


    +<%= f.text_field :login %>

    + +


    +<%= f.text_field :email %>

    + +


    +<%= f.password_field :password %>

    + +


    +<%= f.password_field :password_confirmation %>

    + +

    <%= submit_tag 'Sign up' %>

    +<% end -%> diff --git a/P5B/ruby/mon_projet/config/boot.rb b/P5B/ruby/mon_projet/config/boot.rb new file mode 100644 index 0000000..0f034f0 --- /dev/null +++ b/P5B/ruby/mon_projet/config/boot.rb @@ -0,0 +1,39 @@ +# Don't change this file. Configuration is done in config/environment.rb and config/environments/*.rb + +RAILS_ROOT = "#{File.dirname(__FILE__)}/.." unless defined?(RAILS_ROOT) + +unless defined?(Rails::Initializer) + if File.directory?("#{RAILS_ROOT}/vendor/rails") + require "#{RAILS_ROOT}/vendor/rails/railties/lib/initializer" + else + require 'rubygems' + + rails_gem_version = + if defined? RAILS_GEM_VERSION + RAILS_GEM_VERSION + else + File.read("#{File.dirname(__FILE__)}/environment.rb") =~ /^[^#]*RAILS_GEM_VERSION\s+=\s+'([\d.]+)'/ + $1 + end + + if rails_gem_version + rails_gem = Gem.cache.search('rails', "=#{rails_gem_version}.0").sort_by { |g| g.version.version }.last + + if rails_gem + gem "rails", "=#{rails_gem.version.version}" + require rails_gem.full_gem_path + '/lib/initializer' + else + STDERR.puts %(Cannot find gem for Rails =#{rails_gem_version}.0: + Install the missing gem with 'gem install -v=#{rails_gem_version} rails', or + change environment.rb to define RAILS_GEM_VERSION with your desired version. + ) + exit 1 + end + else + gem "rails" + require 'initializer' + end + end + + Rails::Initializer.run(:set_load_path) +end diff --git a/P5B/ruby/mon_projet/config/database.yml b/P5B/ruby/mon_projet/config/database.yml new file mode 100644 index 0000000..e196d15 --- /dev/null +++ b/P5B/ruby/mon_projet/config/database.yml @@ -0,0 +1,37 @@ +# MySQL (default setup). Versions 4.1 and 5.0 are recommended. +# +# Install the MySQL driver: +# gem install mysql +# On MacOS X: +# gem install mysql -- --include=/usr/local/lib +# On Windows: +# gem install mysql +# Choose the win32 build. +# Install MySQL and put its /bin directory on your path. +# +# And be sure to use new-style password hashing: +# http://dev.mysql.com/doc/refman/5.0/en/old-client.html +development: + adapter: mysql + database: 073dossmanno_dev # 07login_dev + username: 3dossmanno + password: 3dossmanno + host: pipit + encoding: utf8 + +# Warning: The database defined as 'test' will be erased and +# re-generated from your development database when you run 'rake'. +# Do not set this db to the same as development or production. +test: + adapter: mysql + database: 073dossmanno_test # 07login_test + username: 3dossmanno + password: 3dossmanno + host: pipit + +production: + adapter: mysql + database: mon_projet_production + username: root + password: + host: localhost diff --git a/P5B/ruby/mon_projet/config/environment.rb b/P5B/ruby/mon_projet/config/environment.rb new file mode 100644 index 0000000..4233311 --- /dev/null +++ b/P5B/ruby/mon_projet/config/environment.rb @@ -0,0 +1,60 @@ +# Be sure to restart your web server when you modify this file. + +# Uncomment below to force Rails into production mode when +# you don't control web/app server and can't set it the proper way +# ENV['RAILS_ENV'] ||= 'production' + +# Specifies gem version of Rails to use when vendor/rails is not present +RAILS_GEM_VERSION = '1.2.5' unless defined? RAILS_GEM_VERSION + +# Bootstrap the Rails environment, frameworks, and default configuration +require File.join(File.dirname(__FILE__), 'boot') + +Rails::Initializer.run do |config| + # Settings in config/environments/* take precedence over those specified here + + # Skip frameworks you're not going to use (only works if using vendor/rails) + # config.frameworks -= [ :action_web_service, :action_mailer ] + + # Only load the plugins named here, by default all plugins in vendor/plugins are loaded + # config.plugins = %W( exception_notification ssl_requirement ) + + # Add additional load paths for your own custom dirs + # config.load_paths += %W( #{RAILS_ROOT}/extras ) + + # Force all environments to use the same logger level + # (by default production uses :info, the others :debug) + # config.log_level = :debug + + # Use the database for sessions instead of the file system + # (create the session table with 'rake db:sessions:create') + # config.action_controller.session_store = :active_record_store + + # Use SQL instead of Active Record's schema dumper when creating the test database. + # This is necessary if your schema can't be completely dumped by the schema dumper, + # like if you have constraints or database-specific column types + # config.active_record.schema_format = :sql + + # Activate observers that should always be running + # config.active_record.observers = :cacher, :garbage_collector + + # Make Active Record use UTC-base instead of local time + # config.active_record.default_timezone = :utc + + # Add new inflection rules using the following format + # (all these examples are active by default): + # Inflector.inflections do |inflect| + # inflect.plural /^(ox)$/i, '\1en' + # inflect.singular /^(ox)en/i, '\1' + # inflect.irregular 'person', 'people' + # inflect.uncountable %w( fish sheep ) + # end + + # See Rails::Configuration for more options +end + +# Add new mime types for use in respond_to blocks: +# Mime::Type.register "text/richtext", :rtf +# Mime::Type.register "application/x-mobile", :mobile + +# Include your application configuration below diff --git a/P5B/ruby/mon_projet/config/environments/development.rb b/P5B/ruby/mon_projet/config/environments/development.rb new file mode 100644 index 0000000..0589aa9 --- /dev/null +++ b/P5B/ruby/mon_projet/config/environments/development.rb @@ -0,0 +1,21 @@ +# Settings specified here will take precedence over those in config/environment.rb + +# In the development environment your application's code is reloaded on +# every request. This slows down response time but is perfect for development +# since you don't have to restart the webserver when you make code changes. +config.cache_classes = false + +# Log error messages when you accidentally call methods on nil. +config.whiny_nils = true + +# Enable the breakpoint server that script/breakpointer connects to +config.breakpoint_server = true + +# Show full error reports and disable caching +config.action_controller.consider_all_requests_local = true +config.action_controller.perform_caching = false +config.action_view.cache_template_extensions = false +config.action_view.debug_rjs = true + +# Don't care if the mailer can't send +config.action_mailer.raise_delivery_errors = false diff --git a/P5B/ruby/mon_projet/config/environments/production.rb b/P5B/ruby/mon_projet/config/environments/production.rb new file mode 100644 index 0000000..cb295b8 --- /dev/null +++ b/P5B/ruby/mon_projet/config/environments/production.rb @@ -0,0 +1,18 @@ +# Settings specified here will take precedence over those in config/environment.rb + +# The production environment is meant for finished, "live" apps. +# Code is not reloaded between requests +config.cache_classes = true + +# Use a different logger for distributed setups +# config.logger = SyslogLogger.new + +# Full error reports are disabled and caching is turned on +config.action_controller.consider_all_requests_local = false +config.action_controller.perform_caching = true + +# Enable serving of images, stylesheets, and javascripts from an asset server +# config.action_controller.asset_host = "http://assets.example.com" + +# Disable delivery errors, bad email addresses will be ignored +# config.action_mailer.raise_delivery_errors = false diff --git a/P5B/ruby/mon_projet/config/environments/test.rb b/P5B/ruby/mon_projet/config/environments/test.rb new file mode 100644 index 0000000..f0689b9 --- /dev/null +++ b/P5B/ruby/mon_projet/config/environments/test.rb @@ -0,0 +1,19 @@ +# Settings specified here will take precedence over those in config/environment.rb + +# The test environment is used exclusively to run your application's +# test suite. You never need to work with it otherwise. Remember that +# your test database is "scratch space" for the test suite and is wiped +# and recreated between test runs. Don't rely on the data there! +config.cache_classes = true + +# Log error messages when you accidentally call methods on nil. +config.whiny_nils = true + +# Show full error reports and disable caching +config.action_controller.consider_all_requests_local = true +config.action_controller.perform_caching = false + +# Tell ActionMailer not to deliver emails to the real world. +# The :test delivery method accumulates sent emails in the +# ActionMailer::Base.deliveries array. +config.action_mailer.delivery_method = :test \ No newline at end of file diff --git a/P5B/ruby/mon_projet/config/routes.rb b/P5B/ruby/mon_projet/config/routes.rb new file mode 100644 index 0000000..5e78c02 --- /dev/null +++ b/P5B/ruby/mon_projet/config/routes.rb @@ -0,0 +1,44 @@ +ActionController::Routing::Routes.draw do |map| + map.resources :addresses + + map.resources :customers + + map.resources :suppliers # ajouté automatiquement par ""./script/generate scaffold_resource supplier name:string description:text code:string created_at:datetime updated_at:datetime has_many:products"" dans uen console + + map.resources :products #idem, et permet de dire qu'il y a une ressource nommée PRODUCTS + + map.resources :utilisateurs + map.resource :session, :controller => 'sessions' + + #BACK OFFICE + map.resource :admin do |admin| + admin.resources :products, :controller => 'admin/products', :name_prefix => 'admin_' + admin.resources :suppliers, :controller => 'admin/suppliers', :name_prefix => 'admin_' + end + + #FRONT OFFICE + map.resources :products, :suppliers + + # The priority is based upon order of creation: first created -> highest priority. + + # Sample of regular route: + # map.connect 'products/:id', :controller => 'catalog', :action => 'view' + # Keep in mind you can assign values other than :controller and :action + + # Sample of named route: + # map.purchase 'products/:id/purchase', :controller => 'catalog', :action => 'purchase' + # This route can be invoked with purchase_url(:id => product.id) + + # You can have the root of your site routed by hooking up '' + # -- just remember to delete public/index.html. + # map.connect '', :controller => "welcome" + map.connect '', :controller => "products" + + # Allow downloading Web Service WSDL as a file with an extension + # instead of a file named 'wsdl' + #map.connect ':controller/service.wsdl', :action => 'wsdl' + + # Install the default route as the lowest priority. + map.connect ':controller/:action/:id.:format' + map.connect ':controller/:action/:id' +end diff --git a/P5B/ruby/mon_projet/db/migrate/001_create_products.rb b/P5B/ruby/mon_projet/db/migrate/001_create_products.rb new file mode 100644 index 0000000..2d14426 --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/001_create_products.rb @@ -0,0 +1,19 @@ +class CreateProducts < ActiveRecord::Migration + def self.up + db_name = ActiveRecord::Base::connection.current_database() + execute "ALTER DATABASE #{db_name} CHARACTER SET utf8 COLLATE utf8_general_ci" + + create_table :products do |t| + t.column :designation, :string + t.column :description, :text + t.column :created_at, :datetime + t.column :updated_at, :datetime + t.column :supplier_id, :int + t.column :customer_id, :int + end + end + + def self.down + drop_table :products + end +end diff --git a/P5B/ruby/mon_projet/db/migrate/001_create_products.rb~ b/P5B/ruby/mon_projet/db/migrate/001_create_products.rb~ new file mode 100644 index 0000000..d009453 --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/001_create_products.rb~ @@ -0,0 +1,18 @@ +class CreateProducts < ActiveRecord::Migration + def self.up + db_name = ActiveRecord::Base::connection.current_database() + execute "ALTER DATABASE #{db_name} CHARACTER SET utf8 COLLATE utf8_general_ci" + + create_table :products do |t| + t.column :designation, :string + t.column :description, :text + t.column :created_at, :datetime + t.column :updated_at, :datetime + t.column :supplier_id, :int + end + end + + def self.down + drop_table :products + end +end diff --git a/P5B/ruby/mon_projet/db/migrate/002_create_suppliers.rb b/P5B/ruby/mon_projet/db/migrate/002_create_suppliers.rb new file mode 100644 index 0000000..1e8d165 --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/002_create_suppliers.rb @@ -0,0 +1,18 @@ +class CreateSuppliers < ActiveRecord::Migration + def self.up + db_name = ActiveRecord::Base::connection.current_database() + execute "ALTER DATABASE #{db_name} CHARACTER SET utf8 COLLATE utf8_general_ci" + + create_table :suppliers do |t| + t.column :name, :string + t.column :description, :text + t.column :code, :string + t.column :created_at, :datetime + t.column :updated_at, :datetime + end + end + + def self.down + drop_table :suppliers + end +end diff --git a/P5B/ruby/mon_projet/db/migrate/002_create_suppliers.rb~ b/P5B/ruby/mon_projet/db/migrate/002_create_suppliers.rb~ new file mode 100644 index 0000000..0a0ec1d --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/002_create_suppliers.rb~ @@ -0,0 +1,19 @@ +class CreateSuppliers < ActiveRecord::Migration + has_many :products + def self.up + db_name = ActiveRecord::Base::connection.current_database() + execute "ALTER DATABASE #{db_name} CHARACTER SET utf8 COLLATE utf8_general_ci" + + create_table :suppliers do |t| + t.column :name, :string + t.column :description, :text + t.column :code, :string + t.column :created_at, :datetime + t.column :updated_at, :datetime + end + end + + def self.down + drop_table :suppliers + end +end diff --git a/P5B/ruby/mon_projet/db/migrate/003_create_customers.rb b/P5B/ruby/mon_projet/db/migrate/003_create_customers.rb new file mode 100644 index 0000000..4a925fd --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/003_create_customers.rb @@ -0,0 +1,15 @@ +class CreateCustomers < ActiveRecord::Migration + def self.up + db_name = ActiveRecord::Base::connection.current_database() + execute "ALTER DATABASE #{db_name} CHARACTER SET utf8 COLLATE utf8_general_ci" + + create_table :customers do |t| + t.column :firstname, :string + t.column :name, :string + end + end + + def self.down + drop_table :customers + end +end diff --git a/P5B/ruby/mon_projet/db/migrate/003_create_customers.rb~ b/P5B/ruby/mon_projet/db/migrate/003_create_customers.rb~ new file mode 100644 index 0000000..646bd4b --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/003_create_customers.rb~ @@ -0,0 +1,12 @@ +class CreateCustomers < ActiveRecord::Migration + def self.up + create_table :customers do |t| + t.column :firstname, :string + t.column :name, :string + end + end + + def self.down + drop_table :customers + end +end diff --git a/P5B/ruby/mon_projet/db/migrate/004_create_addresses.rb b/P5B/ruby/mon_projet/db/migrate/004_create_addresses.rb new file mode 100644 index 0000000..0857e74 --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/004_create_addresses.rb @@ -0,0 +1,17 @@ +class CreateAddresses < ActiveRecord::Migration + def self.up + db_name = ActiveRecord::Base::connection.current_database() + execute "ALTER DATABASE #{db_name} CHARACTER SET utf8 COLLATE utf8_general_ci" + + create_table :addresses do |t| + t.column :street, :text + t.column :postal_code, :string + t.column :city, :string + t.column :country, :string + end + end + + def self.down + drop_table :addresses + end +end diff --git a/P5B/ruby/mon_projet/db/migrate/004_create_addresses.rb~ b/P5B/ruby/mon_projet/db/migrate/004_create_addresses.rb~ new file mode 100644 index 0000000..bda1e62 --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/004_create_addresses.rb~ @@ -0,0 +1,14 @@ +class CreateAddresses < ActiveRecord::Migration + def self.up + create_table :addresses do |t| + t.column :street, :text + t.column :postal_code, :string + t.column :city, :string + t.column :country, :string + end + end + + def self.down + drop_table :addresses + end +end diff --git a/P5B/ruby/mon_projet/db/migrate/005_add_type_to_products.rb b/P5B/ruby/mon_projet/db/migrate/005_add_type_to_products.rb new file mode 100644 index 0000000..c79e572 --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/005_add_type_to_products.rb @@ -0,0 +1,9 @@ +class AddTypeToProducts < ActiveRecord::Migration + def self.up + add_column :products, :type, :string + end + + def self.down + remove_column :products, :type + end +end diff --git a/P5B/ruby/mon_projet/db/migrate/005_add_type_to_products.rb~ b/P5B/ruby/mon_projet/db/migrate/005_add_type_to_products.rb~ new file mode 100644 index 0000000..d741747 --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/005_add_type_to_products.rb~ @@ -0,0 +1,9 @@ +class AddTypeToProducts < ActiveRecord::Migration + def self.up + add_column :products; :type, :string + end + + def self.down + remove_column :products, :type + end +end diff --git a/P5B/ruby/mon_projet/db/migrate/006_create_utilisateurs.rb b/P5B/ruby/mon_projet/db/migrate/006_create_utilisateurs.rb new file mode 100644 index 0000000..8798b4b --- /dev/null +++ b/P5B/ruby/mon_projet/db/migrate/006_create_utilisateurs.rb @@ -0,0 +1,21 @@ +class CreateUtilisateurs < ActiveRecord::Migration + def self.up + create_table "utilisateurs", :force => true do |t| + t.column :login, :string + t.column :email, :string + t.column :crypted_password, :string, :limit => 40 + t.column :salt, :string, :limit => 40 + t.column :created_at, :datetime + t.column :updated_at, :datetime + t.column :remember_token, :string + t.column :remember_token_expires_at, :datetime + + t.column :activation_code, :string, :limit => 40 + t.column :activated_at, :datetime + end + end + + def self.down + drop_table "utilisateurs" + end +end diff --git a/P5B/ruby/mon_projet/db/schema.rb b/P5B/ruby/mon_projet/db/schema.rb new file mode 100644 index 0000000..24bf2e0 --- /dev/null +++ b/P5B/ruby/mon_projet/db/schema.rb @@ -0,0 +1,50 @@ +# This file is autogenerated. Instead of editing this file, please use the +# migrations feature of ActiveRecord to incrementally modify your database, and +# then regenerate this schema definition. + +ActiveRecord::Schema.define(:version => 6) do + + create_table "addresses", :force => true do |t| + t.column "street", :text + t.column "postal_code", :string + t.column "city", :string + t.column "country", :string + end + + create_table "customers", :force => true do |t| + t.column "firstname", :string + t.column "name", :string + end + + create_table "products", :force => true do |t| + t.column "designation", :string + t.column "description", :text + t.column "created_at", :datetime + t.column "updated_at", :datetime + t.column "supplier_id", :integer + t.column "customer_id", :integer + t.column "type", :string + end + + create_table "suppliers", :force => true do |t| + t.column "name", :string + t.column "description", :text + t.column "code", :string + t.column "created_at", :datetime + t.column "updated_at", :datetime + end + + create_table "utilisateurs", :force => true do |t| + t.column "login", :string + t.column "email", :string + t.column "crypted_password", :string, :limit => 40 + t.column "salt", :string, :limit => 40 + t.column "created_at", :datetime + t.column "updated_at", :datetime + t.column "remember_token", :string + t.column "remember_token_expires_at", :datetime + t.column "activation_code", :string, :limit => 40 + t.column "activated_at", :datetime + end + +end diff --git a/P5B/ruby/mon_projet/doc/README_FOR_APP b/P5B/ruby/mon_projet/doc/README_FOR_APP new file mode 100644 index 0000000..ac6c149 --- /dev/null +++ b/P5B/ruby/mon_projet/doc/README_FOR_APP @@ -0,0 +1,2 @@ +Use this README file to introduce your application and point to useful places in the API for learning more. +Run "rake appdoc" to generate API documentation for your models and controllers. \ No newline at end of file diff --git a/P5B/ruby/mon_projet/lib/authenticated_system.rb b/P5B/ruby/mon_projet/lib/authenticated_system.rb new file mode 100644 index 0000000..dc8bc39 --- /dev/null +++ b/P5B/ruby/mon_projet/lib/authenticated_system.rb @@ -0,0 +1,127 @@ +module AuthenticatedSystem + protected + # Returns true or false if the user is logged in. + # Preloads @current_utilisateur with the user model if they're logged in. + def logged_in? + current_utilisateur != :false + end + + # Accesses the current utilisateur from the session. Set it to :false if login fails + # so that future calls do not hit the database. + def current_utilisateur + @current_user ||= (login_from_session || login_from_basic_auth || login_from_cookie || :false) + end + + # Store the given utilisateur in the session. + def current_utilisateur=(new_utilisateur) + session[:utilisateur] = (new_utilisateur.nil? || new_utilisateur.is_a?(Symbol)) ? nil : new_utilisateur.id + @current_utilisateur = new_utilisateur + end + + # Check if the utilisateur is authorized + # + # Override this method in your controllers if you want to restrict access + # to only a few actions or if you want to check if the utilisateur + # has the correct rights. + # + # Example: + # + # # only allow nonbobs + # def authorized? + # current_utilisateur.login != "bob" + # end + def authorized? + logged_in? + end + + # Filter method to enforce a login requirement. + # + # To require logins for all actions, use this in your controllers: + # + # before_filter :login_required + # + # To require logins for specific actions, use this in your controllers: + # + # before_filter :login_required, :only => [ :edit, :update ] + # + # To skip this in a subclassed controller: + # + # skip_before_filter :login_required + # + def login_required + authorized? || access_denied + end + + # Redirect as appropriate when an access request fails. + # + # The default action is to redirect to the login screen. + # + # Override this method in your controllers if you want to have special + # behavior in case the utilisateur is not authorized + # to access the requested action. For example, a popup window might + # simply close itself. + def access_denied + respond_to do |accepts| + accepts.html do + store_location + redirect_to :controller => '/sessions', :action => 'new' + end + accepts.xml do + headers["Status"] = "Unauthorized" + headers["WWW-Authenticate"] = %(Basic realm="Web Password") + render :text => "Could't authenticate you", :status => '401 Unauthorized' + end + end + false + end + + # Store the URI of the current request in the session. + # + # We can return to this location by calling #redirect_back_or_default. + def store_location + session[:return_to] = request.request_uri + end + + # Redirect to the URI stored by the most recent store_location call or + # to the passed default. + def redirect_back_or_default(default) + session[:return_to] ? redirect_to_url(session[:return_to]) : redirect_to(default) + session[:return_to] = nil + end + + # Inclusion hook to make #current_utilisateur and #logged_in? + # available as ActionView helper methods. + def self.included(base) + base.send :helper_method, :current_utilisateur, :logged_in? + end + + # Called from #current_user. First attempt to login by the user id stored in the session. + def login_from_session + self.current_utilisateur = Utilisateur.find_by_id(session[:utilisateur]) if session[:utilisateur] + end + + # Called from #current_user. Now, attempt to login by basic authentication information. + def login_from_basic_auth + username, passwd = get_auth_data + self.current_utilisateur = Utilisateur.authenticate(username, passwd) if username && passwd + end + + # Called from #current_user. Finaly, attempt to login by an expiring token in the cookie. + def login_from_cookie + utilisateur = cookies[:auth_token] && Utilisateur.find_by_remember_token(cookies[:auth_token]) + if utilisateur && utilisateur.remember_token? + utilisateur.remember_me + cookies[:auth_token] = { :value => utilisateur.remember_token, :expires => utilisateur.remember_token_expires_at } + self.current_utilisateur = utilisateur + end + end + + private + @@http_auth_headers = %w(X-HTTP_AUTHORIZATION HTTP_AUTHORIZATION Authorization) + # gets BASIC auth info + def get_auth_data + auth_key = @@http_auth_headers.detect { |h| request.env.has_key?(h) } + auth_data = request.env[auth_key].to_s.split unless auth_key.blank? + return auth_data && auth_data[0] == 'Basic' ? Base64.decode64(auth_data[1]).split(':')[0..1] : [nil, nil] + end +end diff --git a/P5B/ruby/mon_projet/lib/authenticated_test_helper.rb b/P5B/ruby/mon_projet/lib/authenticated_test_helper.rb new file mode 100644 index 0000000..99e516b --- /dev/null +++ b/P5B/ruby/mon_projet/lib/authenticated_test_helper.rb @@ -0,0 +1,26 @@ +module AuthenticatedTestHelper + # Sets the current utilisateur in the session from the utilisateur fixtures. + def login_as(utilisateur) + @request.session[:utilisateur] = utilisateur ? utilisateurs(utilisateur).id : nil + end + + def authorize_as(user) + @request.env["HTTP_AUTHORIZATION"] = user ? "Basic #{Base64.encode64("#{users(user).login}:test")}" : nil + end + + # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3 + def assert_difference(expressions, difference = 1, message = nil, &block) + expression_evaluations = [expressions].flatten.collect{|expression| lambda { eval(expression, block.binding) } } + + original_values = expression_evaluations.inject([]) { |memo, expression| memo << expression.call } + yield + expression_evaluations.each_with_index do |expression, i| + assert_equal original_values[i] + difference, expression.call, message + end + end + + # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3 + def assert_no_difference(expressions, message = nil, &block) + assert_difference expressions, 0, message, &block + end +end \ No newline at end of file diff --git a/P5B/ruby/mon_projet/log/development.log b/P5B/ruby/mon_projet/log/development.log new file mode 100644 index 0000000..596408f --- /dev/null +++ b/P5B/ruby/mon_projet/log/development.log @@ -0,0 +1,14924 @@ + SQL (0.000444) SET SQL_AUTO_IS_NULL=0 + SQL (0.028300) CREATE TABLE schema_info (version int(11)) + SQL (0.001646) INSERT INTO schema_info (version) VALUES(0) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.019329) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.005156) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.003291) UPDATE schema_info SET version = 1 + SQL (0.001658) SELECT * FROM schema_info + SQL (0.002686) SHOW TABLES + SQL (0.007563) SHOW FIELDS FROM products + SQL (0.061884) SHOW KEYS FROM products + SQL (0.000677) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.002198) SELECT version FROM schema_info + SQL (0.000489) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.003986) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.017477) DROP TABLE products + SQL (0.000981) UPDATE schema_info SET version = 0 + SQL (0.000816) SELECT * FROM schema_info + SQL (0.000776) SHOW TABLES + SQL (0.001209) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000854) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.032861) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.000647) UPDATE schema_info SET version = 1 + SQL (0.001214) SELECT * FROM schema_info + SQL (0.001038) SHOW TABLES + SQL (0.004094) SHOW FIELDS FROM products + SQL (0.050076) SHOW KEYS FROM products + SQL (0.000477) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.003317) SELECT version FROM schema_info + SQL (0.000487) SELECT * FROM schema_info + SQL (0.000813) SHOW TABLES + SQL (0.014312) SHOW FIELDS FROM products + SQL (0.002154) SHOW KEYS FROM products + SQL (0.000380) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000550) SELECT version FROM schema_info + SQL (0.000558) SELECT * FROM schema_info + SQL (0.000941) SHOW TABLES + SQL (0.003075) SHOW FIELDS FROM products + SQL (0.004036) SHOW KEYS FROM products + SQL (0.000869) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000761) SELECT version FROM schema_info + SQL (0.010981) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.001293) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.047753) DROP TABLE products + SQL (0.000757) UPDATE schema_info SET version = 0 + SQL (0.002697) SELECT * FROM schema_info + SQL (0.001198) SHOW TABLES + SQL (0.000397) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000841) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000579) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.038746) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.002306) UPDATE schema_info SET version = 1 + SQL (0.001017) SELECT * FROM schema_info + SQL (0.002161) SHOW TABLES + SQL (0.005256) SHOW FIELDS FROM products + SQL (0.055912) SHOW KEYS FROM products + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 11:25:34) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"new", "controller"=>"products"} + + +Mysql::Error (#28000Access denied for user '3dossmanno'@'fou.u-strasbg.fr' (using password: YES)): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/vendor/mysql.rb:523:in `read' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/vendor/mysql.rb:166:in `handle_auth_fallback' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/vendor/mysql.rb:154:in `real_connect' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:389:in `connect' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:152:in `initialize' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:82:in `new' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:82:in `mysql_connection' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:262:in `send' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:262:in `connection_without_query_cache=' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/query_cache.rb:54:in `connection=' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:230:in `retrieve_connection' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:78:in `connection' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:763:in `columns' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:2063:in `attributes_from_column_definition_without_lock' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/locking/optimistic.rb:45:in `attributes_from_column_definition' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1505:in `initialize_without_callbacks' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/callbacks.rb:225:in `initialize' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:26:in `new' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:26:in `new' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:25:44) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + + +Mysql::Error (#28000Access denied for user '3dossmanno'@'fou.u-strasbg.fr' (using password: YES)): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/vendor/mysql.rb:523:in `read' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/vendor/mysql.rb:166:in `handle_auth_fallback' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/vendor/mysql.rb:154:in `real_connect' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:389:in `connect' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:152:in `initialize' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:82:in `new' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:82:in `mysql_connection' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:262:in `send' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:262:in `connection_without_query_cache=' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/query_cache.rb:54:in `connection=' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:230:in `retrieve_connection' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:78:in `connection' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1139:in `add_limit!' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1101:in `construct_finder_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:5:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:26:10) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + + +Mysql::Error (#28000Access denied for user '3dossmanno'@'fou.u-strasbg.fr' (using password: YES)): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/vendor/mysql.rb:523:in `read' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/vendor/mysql.rb:166:in `handle_auth_fallback' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/vendor/mysql.rb:154:in `real_connect' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:389:in `connect' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:152:in `initialize' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:82:in `new' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:82:in `mysql_connection' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:262:in `send' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:262:in `connection_without_query_cache=' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/query_cache.rb:54:in `connection=' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:230:in `retrieve_connection' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:78:in `connection' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1139:in `add_limit!' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1101:in `construct_finder_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:5:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:27:22) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + SQL (0.000534) SET SQL_AUTO_IS_NULL=0 + Product Load (0.009443) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.06241 (16 reqs/sec) | Rendering: 0.00838 (13%) | DB: 0.00998 (15%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 11:27:25) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.008928) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.02783 (35 reqs/sec) | Rendering: 0.01182 (42%) | DB: 0.00893 (32%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#create (for 127.0.0.1 at 2007-10-23 11:27:41) [POST] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"commit"=>"Create", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"Fridge", "updated_at(2i)"=>"10", "created_at(1i)"=>"2007", "updated_at(3i)"=>"23", "created_at(2i)"=>"10", "created_at(3i)"=>"23", "updated_at(4i)"=>"11", "updated_at(5i)"=>"27", "created_at(4i)"=>"11", "created_at(5i)"=>"27", "description"=>"Fridge blue"}, "action"=>"create", "controller"=>"products"} + Product Columns (0.095284) SHOW FIELDS FROM products + SQL (0.001734) BEGIN + SQL (0.038870) INSERT INTO products (`designation`, `updated_at`, `description`, `created_at`) VALUES('Fridge', '2007-10-23 11:27:41', 'Fridge blue', '2007-10-23 11:27:00') + SQL (0.017989) COMMIT +Redirected to http://localhost:11134/products/1 +Completed in 0.23832 (4 reqs/sec) | DB: 0.15388 (64%) | 302 Found [http://localhost/products] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-10-23 11:27:41) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"products"} + Product Columns (0.004275) SHOW FIELDS FROM products + Product Load (0.005239) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.02345 (42 reqs/sec) | Rendering: 0.00618 (26%) | DB: 0.00951 (40%) | 200 OK [http://localhost/products/1] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:27:49) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001918) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.071077) SHOW FIELDS FROM products +Completed in 0.08835 (11 reqs/sec) | Rendering: 0.00685 (7%) | DB: 0.07299 (82%) | 200 OK [http://localhost/products] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 11:29:53) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003615) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.02198 (45 reqs/sec) | Rendering: 0.01110 (50%) | DB: 0.00361 (16%) | 200 OK [http://localhost/products/new] + SQL (0.001080) SET SQL_AUTO_IS_NULL=0 + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:43:11) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.019851) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003372) SHOW FIELDS FROM products +Completed in 0.03940 (25 reqs/sec) | Rendering: 0.00815 (20%) | DB: 0.02322 (58%) | 200 OK [http://localhost/products/] + SQL (0.000401) SET SQL_AUTO_IS_NULL=0 + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:44:59) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001771) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002557) SHOW FIELDS FROM products +Completed in 0.02353 (42 reqs/sec) | Rendering: 0.00768 (32%) | DB: 0.00433 (18%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:45:23) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001049) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003010) SHOW FIELDS FROM products +Completed in 0.01981 (50 reqs/sec) | Rendering: 0.00639 (32%) | DB: 0.00406 (20%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:45:25) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.000978) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002982) SHOW FIELDS FROM products +Completed in 0.02018 (49 reqs/sec) | Rendering: 0.00811 (40%) | DB: 0.00396 (19%) | 200 OK [http://localhost/products/] + SQL (0.003315) SET SQL_AUTO_IS_NULL=0 + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:45:32) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001386) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003545) SHOW FIELDS FROM products +Completed in 0.01726 (57 reqs/sec) | Rendering: 0.00546 (31%) | DB: 0.00493 (28%) | 200 OK [http://localhost/products/] + SQL (0.000000) Mysql::Error: #42000Unknown character set: 'UTF-8': SET NAMES 'UTF-8' + SQL (0.000463) SET NAMES 'UTF8' + SQL (0.000307) SET SQL_AUTO_IS_NULL=0 + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:47:31) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + SQL (0.000363) SET NAMES 'UTF8' + SQL (0.000295) SET SQL_AUTO_IS_NULL=0 + Product Load (0.001785) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003148) SHOW FIELDS FROM products +Completed in 0.05413 (18 reqs/sec) | Rendering: 0.01110 (20%) | DB: 0.00559 (10%) | 200 OK [http://localhost/products/] + SQL (0.000000) Mysql::Error: #42000Unknown character set: 'iso885915': SET NAMES 'iso885915' + SQL (0.000000) Mysql::Error: #42000Unknown character set: 'ISO885915': SET NAMES 'ISO885915' + SQL (0.000382) SET NAMES 'utf8' + SQL (0.000296) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000990) SELECT version FROM schema_info + SQL (0.001380) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000691) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.007826) DROP TABLE products + SQL (0.001357) UPDATE schema_info SET version = 0 + SQL (0.001267) SELECT * FROM schema_info + SQL (0.001018) SHOW TABLES + SQL (0.000656) SET NAMES 'utf8' + SQL (0.000937) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.002591) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.000957) SET NAMES 'utf8' + SQL (0.000956) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000782) SELECT version FROM schema_info + SQL (0.000414) SELECT version FROM schema_info + SQL (0.000680) SELECT version FROM schema_info + SQL (0.002206) SELECT * FROM schema_info + SQL (0.000904) SHOW TABLES + SQL (0.000329) SET NAMES 'utf8' + SQL (0.000272) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000566) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.000718) SELECT DATABASE() as db + SQL (0.020682) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.028148) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.002781) UPDATE schema_info SET version = 1 + SQL (0.003434) SELECT * FROM schema_info + SQL (0.001082) SHOW TABLES + SQL (0.004694) SHOW FIELDS FROM products + SQL (0.002051) SHOW KEYS FROM products + SQL (0.000685) SET NAMES 'utf8' + SQL (0.002640) SET SQL_AUTO_IS_NULL=0 + SQL (0.000451) SET NAMES 'utf8' + SQL (0.000305) SET SQL_AUTO_IS_NULL=0 + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 11:59:47) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + SQL (0.001982) SET NAMES 'utf8' + SQL (0.000408) SET SQL_AUTO_IS_NULL=0 + Product Load (0.001414) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002867) SHOW FIELDS FROM products +Completed in 0.07874 (12 reqs/sec) | Rendering: 0.01430 (18%) | DB: 0.00667 (8%) | 200 OK [http://localhost/products/] + SQL (0.000373) SET NAMES 'utf8' + SQL (0.000334) SET SQL_AUTO_IS_NULL=0 + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 12:12:17) [GET] + Session ID: 5d88bca69742c36b1f86f5326020b63e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001502) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003498) SHOW FIELDS FROM products +Completed in 0.03398 (29 reqs/sec) | Rendering: 0.01274 (37%) | DB: 0.00571 (16%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:04:33) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + SQL (0.000452) SET NAMES 'utf8' + SQL (0.000334) SET SQL_AUTO_IS_NULL=0 + Product Load (0.001173) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002890) SHOW FIELDS FROM products +Completed in 0.08525 (11 reqs/sec) | Rendering: 0.03703 (43%) | DB: 0.00485 (5%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:11:30) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"format"=>"xml", "action"=>"index", "controller"=>"products"} + Product Load (0.001203) SELECT * FROM products  + Product Columns (0.002523) SHOW FIELDS FROM products +Completed in 0.01657 (60 reqs/sec) | Rendering: 0.00010 (0%) | DB: 0.00373 (22%) | 200 OK [http://localhost/products.xml] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:11:47) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"format"=>"html", "action"=>"index", "controller"=>"products"} + Product Load (0.001096) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003215) SHOW FIELDS FROM products +Completed in 0.12752 (7 reqs/sec) | Rendering: 0.11174 (87%) | DB: 0.00431 (3%) | 200 OK [http://localhost/products.html] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:14:20) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001024) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002759) SHOW FIELDS FROM products +Completed in 0.02448 (40 reqs/sec) | Rendering: 0.00962 (39%) | DB: 0.00378 (15%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:14:26) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"format"=>"html", "action"=>"index", "controller"=>"products"} + Product Load (0.001342) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003097) SHOW FIELDS FROM products +Completed in 0.02152 (46 reqs/sec) | Rendering: 0.00804 (37%) | DB: 0.00444 (20%) | 200 OK [http://localhost/products.html] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:21:23) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001081) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002498) SHOW FIELDS FROM products +Completed in 0.02032 (49 reqs/sec) | Rendering: 0.00870 (42%) | DB: 0.00358 (17%) | 200 OK [http://localhost/products/] + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-10-23 14:25:06) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {} + + +ActionController::RoutingError (no route found to match "/productible/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ProductsController#show (for 127.0.0.1 at 2007-10-23 14:25:20) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"products"} + Product Columns (0.002686) SHOW FIELDS FROM products + Product Load (0.001822) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.02859 (34 reqs/sec) | Rendering: 0.00934 (32%) | DB: 0.00451 (15%) | 200 OK [http://localhost/products/1] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-10-23 14:25:35) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"products"} + Product Columns (0.002953) SHOW FIELDS FROM products + Product Load (0.001666) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.01856 (53 reqs/sec) | Rendering: 0.00503 (27%) | DB: 0.00462 (24%) | 200 OK [http://localhost/products/1] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:29:20) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002660) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003105) SHOW FIELDS FROM products + + +ActionView::TemplateError (You have a nil object when you didn't expect it! +The error occurred while evaluating nil.strftime) on line #15 of app/views/products/index.rhtml: +12: +13: <%=h product.designation %> +14: <%=h product.description %> +15: <%=h product.created_at.strftime("%d/%m/%Y") %> +16: <%=h product.updated_at %> +17: <%= link_to 'Voir', product_path(product) %> +18: <%= link_to 'Editer', edit_product_path(product) %> + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:15:in `_run_rhtml_47app47views47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `_run_rhtml_47app47views47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:29:24) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001692) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003469) SHOW FIELDS FROM products + + +ActionView::TemplateError (You have a nil object when you didn't expect it! +The error occurred while evaluating nil.strftime) on line #15 of app/views/products/index.rhtml: +12: +13: <%=h product.designation %> +14: <%=h product.description %> +15: <%=h product.created_at.strftime("%d/%m/%Y") %> +16: <%=h product.updated_at %> +17: <%= link_to 'Voir', product_path(product) %> +18: <%= link_to 'Editer', edit_product_path(product) %> + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:15:in `_run_rhtml_47app47views47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `_run_rhtml_47app47views47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:29:30) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001547) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003535) SHOW FIELDS FROM products + + +ActionView::TemplateError (You have a nil object when you didn't expect it! +The error occurred while evaluating nil.strftime) on line #15 of app/views/products/index.rhtml: +12: +13: <%=h product.designation %> +14: <%=h product.description %> +15: <%=h product.created_at.strftime("%d/%m/%Y") %> +16: <%=h product.updated_at %> +17: <%= link_to 'Voir', product_path(product) %> +18: <%= link_to 'Editer', edit_product_path(product) %> + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:15:in `_run_rhtml_47app47views47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `_run_rhtml_47app47views47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:29:36) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"format"=>"xml", "action"=>"index", "controller"=>"products"} + Product Load (0.001158) SELECT * FROM products  + Product Columns (0.002899) SHOW FIELDS FROM products +Completed in 0.02229 (44 reqs/sec) | Rendering: 0.00015 (0%) | DB: 0.00759 (34%) | 200 OK [http://localhost/products.xml] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:30:02) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"format"=>"xml", "action"=>"index", "controller"=>"products"} + Product Load (0.001000) SELECT * FROM products  + Product Columns (0.002678) SHOW FIELDS FROM products +Completed in 0.01659 (60 reqs/sec) | Rendering: 0.00015 (0%) | DB: 0.00368 (22%) | 200 OK [http://localhost/products.xml] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:31:13) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"format"=>"xml", "action"=>"index", "controller"=>"products"} + Product Load (0.002836) SELECT * FROM products  + Product Columns (0.002728) SHOW FIELDS FROM products +Completed in 0.02121 (47 reqs/sec) | Rendering: 0.00028 (1%) | DB: 0.00556 (26%) | 200 OK [http://localhost/products.xml] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:32:05) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"format"=>"xml", "action"=>"index", "controller"=>"products"} + SQL (0.001877) SET NAMES 'utf8' + SQL (0.000886) SET SQL_AUTO_IS_NULL=0 + Product Load (0.002521) SELECT * FROM products  + Product Columns (0.004374) SHOW FIELDS FROM products +Completed in 0.07341 (13 reqs/sec) | Rendering: 0.00017 (0%) | DB: 0.00966 (13%) | 200 OK [http://localhost/products.xml] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:32:07) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"format"=>"xml", "action"=>"index", "controller"=>"products"} + Product Load (0.001039) SELECT * FROM products  + Product Columns (0.002419) SHOW FIELDS FROM products +Completed in 0.01536 (65 reqs/sec) | Rendering: 0.00013 (0%) | DB: 0.00346 (22%) | 200 OK [http://localhost/products.xml] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:32:10) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002023) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.004388) SHOW FIELDS FROM products + + +ActionView::TemplateError (You have a nil object when you didn't expect it! +The error occurred while evaluating nil.strftime) on line #15 of app/views/products/index.rhtml: +12: +13: <%=h product.designation %> +14: <%=h product.description %> +15: <%=h product.created_at.strftime("%d/%m/%Y") %> +16: <%=h product.updated_at %> +17: <%= link_to 'Voir', product_path(product) %> +18: <%= link_to 'Editer', edit_product_path(product) %> + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:15:in `_run_rhtml_47app47views47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `_run_rhtml_47app47views47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + SQL (0.000694) SET NAMES 'utf8' + SQL (0.000352) SET SQL_AUTO_IS_NULL=0 + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:32:48) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002853) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003127) SHOW FIELDS FROM products +Completed in 0.02630 (38 reqs/sec) | Rendering: 0.01288 (48%) | DB: 0.01037 (39%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:33:00) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001251) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002490) SHOW FIELDS FROM products + + +ActionView::TemplateError (You have a nil object when you didn't expect it! +The error occurred while evaluating nil.strftime) on line #15 of app/views/products/index.rhtml: +12: +13: <%=h product.designation %> +14: <%=h product.description %> +15: <%=h product.created_at.strftime("%d/%m/%Y") %> +16: <%=h product.updated_at %> +17: <%= link_to 'Voir', product_path(product) %> +18: <%= link_to 'Editer', edit_product_path(product) %> + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:15:in `_run_rhtml_47app47views47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `_run_rhtml_47app47views47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:35:16) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.034640) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.012399) SHOW FIELDS FROM products + + +ActionView::TemplateError (You have a nil object when you didn't expect it! +The error occurred while evaluating nil.strftime) on line #15 of app/views/products/index.rhtml: +12: +13: <%=h product.designation %> +14: <%=h product.description %> +15: <%=h product.created_at.strftime("Printed on %m/%d/%Y") %> +16: <%=h product.updated_at %> +17: <%= link_to 'Voir', product_path(product) %> +18: <%= link_to 'Editer', edit_product_path(product) %> + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:15:in `_run_rhtml_47app47views47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `_run_rhtml_47app47views47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:35:17) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002838) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.015450) SHOW FIELDS FROM products + + +ActionView::TemplateError (You have a nil object when you didn't expect it! +The error occurred while evaluating nil.strftime) on line #15 of app/views/products/index.rhtml: +12: +13: <%=h product.designation %> +14: <%=h product.description %> +15: <%=h product.created_at.strftime("Printed on %m/%d/%Y") %> +16: <%=h product.updated_at %> +17: <%= link_to 'Voir', product_path(product) %> +18: <%= link_to 'Editer', edit_product_path(product) %> + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:15:in `_run_rhtml_47app47views47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `_run_rhtml_47app47views47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:35:19) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.004833) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.010988) SHOW FIELDS FROM products + + +ActionView::TemplateError (You have a nil object when you didn't expect it! +The error occurred while evaluating nil.strftime) on line #15 of app/views/products/index.rhtml: +12: +13: <%=h product.designation %> +14: <%=h product.description %> +15: <%=h product.created_at.strftime("Printed on %m/%d/%Y") %> +16: <%=h product.updated_at %> +17: <%= link_to 'Voir', product_path(product) %> +18: <%= link_to 'Editer', edit_product_path(product) %> + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:15:in `_run_rhtml_47app47views47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:11:in `_run_rhtml_47app47views47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + SQL (0.003500) SET NAMES 'utf8' + SQL (0.007179) SET SQL_AUTO_IS_NULL=0 + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:35:47) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + SQL (0.000366) SET NAMES 'utf8' + SQL (0.000298) SET SQL_AUTO_IS_NULL=0 + Product Load (0.001799) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003209) SHOW FIELDS FROM products +Completed in 0.05817 (17 reqs/sec) | Rendering: 0.01183 (20%) | DB: 0.00567 (9%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:36:03) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001229) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.016545) SHOW FIELDS FROM products +Completed in 0.03500 (28 reqs/sec) | Rendering: 0.00880 (25%) | DB: 0.01777 (50%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:36:21) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.005082) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.005518) SHOW FIELDS FROM products +Completed in 0.09797 (10 reqs/sec) | Rendering: 0.00799 (8%) | DB: 0.01060 (10%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:39:22) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001449) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002880) SHOW FIELDS FROM products +Completed in 0.02538 (39 reqs/sec) | Rendering: 0.01255 (49%) | DB: 0.00433 (17%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:40:24) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.022161) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +ERROR: compiling _run_rhtml_47app47views47products47index46rhtml RAISED compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: syntax error, unexpected tCONSTANT, expecting ')' +_erbout.concat(( link_to 'Nouvel lment', new_product_path ).to_s); _erbout + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: unterminated string meets end of file +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: syntax error, unexpected $end, expecting ')' +Function body: def _run_rhtml_47app47views47products47index46rhtml(local_assigns) +_erbout = ''; _erbout.concat "

    Liste des produits

    \n" +_erbout.concat "\n" +_erbout.concat "\n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" + for product in @products ; _erbout.concat "\n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" + end ; _erbout.concat "\n" +_erbout.concat "
    D\351signationDescriptionCr\351e leMis \340 jour le
    "; _erbout.concat((h product.designation ).to_s); _erbout.concat ""; _erbout.concat((h product.description ).to_s); _erbout.concat ""; _erbout.concat((h product.created_at.strftime("%d/%m/%Y") ).to_s); _erbout.concat ""; _erbout.concat((h product.updated_at.strftime("%d/%m/%Y") ).to_s); _erbout.concat ""; _erbout.concat(( link_to 'Voir', product_path(product) ).to_s); _erbout.concat ""; _erbout.concat(( link_to 'Editer', edit_product_path(product) ).to_s); _erbout.concat ""; _erbout.concat(( link_to 'Supprimer', product_path(product), :confirm => 'Etes vous sr ?', :method => :delete ).to_s); _erbout.concat "
    \n" +_erbout.concat "\n" +_erbout.concat "
    \n" +_erbout.concat "\n" +_erbout.concat(( link_to 'Nouvel lment', new_product_path ).to_s); _erbout +end +Backtrace: /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26:in `compile_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' +/home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' +/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:95:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `each' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:23:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:82:in `start' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +./script/server:3 + + +ActionView::TemplateError (compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: syntax error, unexpected tCONSTANT, expecting ')' +_erbout.concat(( link_to 'Nouvel lment', new_product_path ).to_s); _erbout + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: unterminated string meets end of file +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: syntax error, unexpected $end, expecting ')') on line #26 of app/views/products/index.rhtml: +23: +24:
    +25: +26: <%= link_to 'Nouvel lment', new_product_path %> + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26:in `compile_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:40:54) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.008737) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +ERROR: compiling _run_rhtml_47app47views47products47index46rhtml RAISED compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: syntax error, unexpected tCONSTANT, expecting ')' +_erbout.concat(( link_to 'New product', new_product_path ).to_s); _erbout + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: unterminated string meets end of file +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: syntax error, unexpected $end, expecting ')' +Function body: def _run_rhtml_47app47views47products47index46rhtml(local_assigns) +_erbout = ''; _erbout.concat "

    Liste des produits

    \n" +_erbout.concat "\n" +_erbout.concat "\n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" + for product in @products ; _erbout.concat "\n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" +_erbout.concat " \n" + end ; _erbout.concat "\n" +_erbout.concat "
    D\351signationDescriptionCr\351e leMis \340 jour le
    "; _erbout.concat((h product.designation ).to_s); _erbout.concat ""; _erbout.concat((h product.description ).to_s); _erbout.concat ""; _erbout.concat((h product.created_at.strftime("%d/%m/%Y") ).to_s); _erbout.concat ""; _erbout.concat((h product.updated_at.strftime("%d/%m/%Y") ).to_s); _erbout.concat ""; _erbout.concat(( link_to 'Voir', product_path(product) ).to_s); _erbout.concat ""; _erbout.concat(( link_to 'Editer', edit_product_path(product) ).to_s); _erbout.concat ""; _erbout.concat(( link_to 'Supprimer', product_path(product), :confirm => 'Etes vous sr ?', :method => :delete ).to_s); _erbout.concat "
    \n" +_erbout.concat "\n" +_erbout.concat "
    \n" +_erbout.concat "\n" +_erbout.concat(( link_to 'New product', new_product_path ).to_s); _erbout +end +Backtrace: /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26:in `compile_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' +/home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' +/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:95:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `each' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:23:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:82:in `start' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +./script/server:3 + + +ActionView::TemplateError (compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: syntax error, unexpected tCONSTANT, expecting ')' +_erbout.concat(( link_to 'New product', new_product_path ).to_s); _erbout + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: unterminated string meets end of file +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26: syntax error, unexpected $end, expecting ')') on line #26 of app/views/products/index.rhtml: +23: +24:
    +25: +26: <%= link_to 'New product', new_product_path %> + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:26:in `compile_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:7:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:41:27) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001500) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.004188) SHOW FIELDS FROM products +Completed in 0.02347 (42 reqs/sec) | Rendering: 0.00951 (40%) | DB: 0.00569 (24%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:41:40) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001422) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003459) SHOW FIELDS FROM products +Completed in 0.12767 (7 reqs/sec) | Rendering: 0.02303 (18%) | DB: 0.00488 (3%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:41:52) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.008931) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.006119) SHOW FIELDS FROM products +Completed in 0.03351 (29 reqs/sec) | Rendering: 0.01061 (31%) | DB: 0.01505 (44%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:42:06) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001017) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002682) SHOW FIELDS FROM products +Completed in 0.01944 (51 reqs/sec) | Rendering: 0.00837 (43%) | DB: 0.00370 (19%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:42:27) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001634) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003053) SHOW FIELDS FROM products +Completed in 0.02389 (41 reqs/sec) | Rendering: 0.00922 (38%) | DB: 0.00469 (19%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:42:45) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002602) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002500) SHOW FIELDS FROM products +Completed in 0.02548 (39 reqs/sec) | Rendering: 0.00924 (36%) | DB: 0.00510 (20%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:44:00) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.005021) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.005548) SHOW FIELDS FROM products +Completed in 0.02784 (35 reqs/sec) | Rendering: 0.00909 (32%) | DB: 0.01057 (37%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 14:44:02) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002590) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.01896 (52 reqs/sec) | Rendering: 0.00848 (44%) | DB: 0.00259 (13%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#create (for 127.0.0.1 at 2007-10-23 14:44:08) [POST] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"commit"=>"Create", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"", "updated_at(2i)"=>"10", "created_at(1i)"=>"2007", "updated_at(3i)"=>"23", "created_at(2i)"=>"10", "created_at(3i)"=>"23", "updated_at(4i)"=>"14", "updated_at(5i)"=>"44", "created_at(4i)"=>"14", "created_at(5i)"=>"44", "description"=>""}, "action"=>"create", "controller"=>"products"} + Product Columns (0.002981) SHOW FIELDS FROM products + SQL (0.000472) BEGIN + SQL (0.000429) COMMIT +Rendering layoutfalseactionnew within layouts/application +Rendering products/new +Completed in 0.01988 (50 reqs/sec) | Rendering: 0.00547 (27%) | DB: 0.00388 (19%) | 200 OK [http://localhost/products] + + +Processing ProductsController#create (for 127.0.0.1 at 2007-10-23 14:45:50) [POST] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"commit"=>"Create", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"", "updated_at(2i)"=>"10", "created_at(1i)"=>"2007", "updated_at(3i)"=>"23", "created_at(2i)"=>"10", "created_at(3i)"=>"23", "updated_at(4i)"=>"14", "updated_at(5i)"=>"44", "created_at(4i)"=>"14", "created_at(5i)"=>"44", "description"=>""}, "action"=>"create", "controller"=>"products"} + SQL (0.001391) SET NAMES 'utf8' + SQL (0.003333) SET SQL_AUTO_IS_NULL=0 + Product Columns (0.003268) SHOW FIELDS FROM products + SQL (0.000741) BEGIN + SQL (0.000403) COMMIT +Rendering layoutfalseactionnew within layouts/application +Rendering products/new +Completed in 0.12055 (8 reqs/sec) | Rendering: 0.04026 (33%) | DB: 0.00914 (7%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:46:08) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001192) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003061) SHOW FIELDS FROM products +Completed in 0.02184 (45 reqs/sec) | Rendering: 0.00886 (40%) | DB: 0.00425 (19%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 14:46:11) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002847) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.01755 (56 reqs/sec) | Rendering: 0.00629 (35%) | DB: 0.00285 (16%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#create (for 127.0.0.1 at 2007-10-23 14:46:15) [POST] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"commit"=>"Create", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"", "updated_at(2i)"=>"10", "created_at(1i)"=>"2007", "updated_at(3i)"=>"23", "created_at(2i)"=>"10", "created_at(3i)"=>"23", "updated_at(4i)"=>"14", "updated_at(5i)"=>"46", "created_at(4i)"=>"14", "created_at(5i)"=>"46", "description"=>""}, "action"=>"create", "controller"=>"products"} + Product Columns (0.002765) SHOW FIELDS FROM products + SQL (0.000914) BEGIN + SQL (0.000301) COMMIT +Rendering layoutfalseactionnew within layouts/application +Rendering products/new +Completed in 0.02028 (49 reqs/sec) | Rendering: 0.00610 (30%) | DB: 0.00398 (19%) | 200 OK [http://localhost/products] + + +Processing ProductsController#create (for 127.0.0.1 at 2007-10-23 14:46:40) [POST] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"commit"=>"Create", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"", "updated_at(2i)"=>"10", "created_at(1i)"=>"2007", "updated_at(3i)"=>"23", "created_at(2i)"=>"10", "created_at(3i)"=>"23", "updated_at(4i)"=>"14", "updated_at(5i)"=>"46", "created_at(4i)"=>"14", "created_at(5i)"=>"46", "description"=>""}, "action"=>"create", "controller"=>"products"} + Product Columns (0.023646) SHOW FIELDS FROM products + SQL (0.004007) BEGIN + SQL (0.000455) COMMIT +Rendering layoutfalseactionnew within layouts/application +Rendering products/new +Completed in 0.05019 (19 reqs/sec) | Rendering: 0.00529 (10%) | DB: 0.02811 (56%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:51:50) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.092347) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002598) SHOW FIELDS FROM products +Completed in 0.11314 (8 reqs/sec) | Rendering: 0.00785 (6%) | DB: 0.09494 (83%) | 200 OK [http://localhost/products] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 14:51:53) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.102261) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.12066 (8 reqs/sec) | Rendering: 0.00887 (7%) | DB: 0.10226 (84%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:52:04) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002310) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.025152) SHOW FIELDS FROM products +Completed in 0.04680 (21 reqs/sec) | Rendering: 0.00942 (20%) | DB: 0.02746 (58%) | 200 OK [http://localhost/products] + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-10-23 14:56:08) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"suppliers"} + Supplier Load (0.000000) Mysql::Error: #42S02Table '073dossmanno_dev.suppliers' doesn't exist: SELECT * FROM suppliers  + + +ActiveRecord::StatementInvalid (Mysql::Error: #42S02Table '073dossmanno_dev.suppliers' doesn't exist: SELECT * FROM suppliers ): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract_adapter.rb:128:in `log' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:243:in `execute' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:399:in `select' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/database_statements.rb:7:in `select_all' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/suppliers_controller.rb:5:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-10-23 14:56:13) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {} + + +ActionController::RoutingError (no route found to match "/supplier/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-10-23 14:56:19) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {} + + +ActionController::RoutingError (no route found to match "/supplier" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 14:56:32) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001988) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002606) SHOW FIELDS FROM products +Completed in 0.02392 (41 reqs/sec) | Rendering: 0.00807 (33%) | DB: 0.00459 (19%) | 200 OK [http://localhost/products/] + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-10-23 14:56:38) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"suppliers"} + Supplier Load (0.000000) Mysql::Error: #42S02Table '073dossmanno_dev.suppliers' doesn't exist: SELECT * FROM suppliers  + + +ActiveRecord::StatementInvalid (Mysql::Error: #42S02Table '073dossmanno_dev.suppliers' doesn't exist: SELECT * FROM suppliers ): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract_adapter.rb:128:in `log' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:243:in `execute' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:399:in `select' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/database_statements.rb:7:in `select_all' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/suppliers_controller.rb:5:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-10-23 14:56:42) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"suppliers"} + Supplier Load (0.000000) Mysql::Error: #42S02Table '073dossmanno_dev.suppliers' doesn't exist: SELECT * FROM suppliers  + + +ActiveRecord::StatementInvalid (Mysql::Error: #42S02Table '073dossmanno_dev.suppliers' doesn't exist: SELECT * FROM suppliers ): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract_adapter.rb:128:in `log' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:243:in `execute' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:399:in `select' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/database_statements.rb:7:in `select_all' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/suppliers_controller.rb:5:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + SQL (0.000379) SET NAMES 'utf8' + SQL (0.000550) SET SQL_AUTO_IS_NULL=0 + SQL (0.000414) SET NAMES 'utf8' + SQL (0.000489) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.001281) SELECT version FROM schema_info + SQL (0.000961) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.000000) Mysql::Error: #42000You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'products DEFAULT NULL) ENGINE=InnoDB' at line 1: CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `has_many` products DEFAULT NULL) ENGINE=InnoDB + SQL (0.008231) SET NAMES 'utf8' + SQL (0.005213) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.011124) SELECT version FROM schema_info + SQL (0.008951) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000689) SELECT version FROM schema_info + SQL (0.000416) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.009221) DROP TABLE products + SQL (0.000629) UPDATE schema_info SET version = 0 + SQL (0.001276) SELECT * FROM schema_info + SQL (0.001117) SHOW TABLES + SQL (0.000506) SET NAMES 'utf8' + SQL (0.000283) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000878) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.000483) SELECT DATABASE() as db + SQL (0.000482) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.026411) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.000664) UPDATE schema_info SET version = 1 + SQL (0.000744) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.000000) Mysql::Error: #42000You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'products DEFAULT NULL) ENGINE=InnoDB' at line 1: CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `has_many` products DEFAULT NULL) ENGINE=InnoDB + SQL (0.000438) SET NAMES 'utf8' + SQL (0.001250) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000589) SELECT version FROM schema_info + SQL (0.000577) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000630) SELECT version FROM schema_info + SQL (0.000454) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.008912) DROP TABLE products + SQL (0.001904) UPDATE schema_info SET version = 0 + SQL (0.001102) SELECT * FROM schema_info + SQL (0.000929) SHOW TABLES + SQL (0.000679) SET NAMES 'utf8' + SQL (0.000379) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.001014) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.000670) SELECT DATABASE() as db + SQL (0.000635) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.011285) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.001135) UPDATE schema_info SET version = 1 + SQL (0.001380) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.000000) Mysql::Error: #42000You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'products DEFAULT NULL) ENGINE=InnoDB' at line 1: CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `has_many` products DEFAULT NULL) ENGINE=InnoDB + SQL (0.000472) SET NAMES 'utf8' + SQL (0.001650) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000823) SELECT version FROM schema_info + SQL (0.000772) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.003263) SELECT version FROM schema_info + SQL (0.000796) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.008687) DROP TABLE products + SQL (0.000981) UPDATE schema_info SET version = 0 + SQL (0.001856) SELECT * FROM schema_info + SQL (0.023402) SHOW TABLES + SQL (0.000395) SET NAMES 'utf8' + SQL (0.000362) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000766) SELECT version FROM schema_info + SQL (0.001671) SELECT version FROM schema_info + SQL (0.000857) SELECT version FROM schema_info + SQL (0.000689) SELECT * FROM schema_info + SQL (0.001124) SHOW TABLES + SQL (0.000530) SET NAMES 'utf8' + SQL (0.000323) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.001044) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.000760) SELECT DATABASE() as db + SQL (0.000639) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.018080) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.014322) UPDATE schema_info SET version = 1 + SQL (0.001201) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.000000) Mysql::Error: #42000You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'products DEFAULT NULL) ENGINE=InnoDB' at line 1: CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `has_many` products DEFAULT NULL) ENGINE=InnoDB + SQL (0.000669) SET NAMES 'utf8' + SQL (0.000575) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000692) SELECT version FROM schema_info + SQL (0.000761) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.001102) SELECT version FROM schema_info + SQL (0.000618) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.012105) DROP TABLE products + SQL (0.000896) UPDATE schema_info SET version = 0 + SQL (0.001208) SELECT * FROM schema_info + SQL (0.001315) SHOW TABLES + SQL (0.000359) SET NAMES 'utf8' + SQL (0.000278) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000778) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.000528) SELECT DATABASE() as db + SQL (0.000561) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.040545) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.000630) UPDATE schema_info SET version = 1 + SQL (0.000599) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.000000) Mysql::Error: #42000You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'products DEFAULT NULL) ENGINE=InnoDB' at line 1: CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `has_many` products DEFAULT NULL) ENGINE=InnoDB + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-10-23 15:06:26) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"suppliers"} + Supplier Load (0.000000) Mysql::Error: #42S02Table '073dossmanno_dev.suppliers' doesn't exist: SELECT * FROM suppliers  + + +ActiveRecord::StatementInvalid (Mysql::Error: #42S02Table '073dossmanno_dev.suppliers' doesn't exist: SELECT * FROM suppliers ): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract_adapter.rb:128:in `log' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:243:in `execute' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/mysql_adapter.rb:399:in `select' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/connection_adapters/abstract/database_statements.rb:7:in `select_all' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/suppliers_controller.rb:5:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + SQL (0.000349) SET NAMES 'utf8' + SQL (0.000537) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000906) SELECT version FROM schema_info + SQL (0.000867) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.000000) Mysql::Error: #42000You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'products DEFAULT NULL) ENGINE=InnoDB' at line 1: CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `has_many` products DEFAULT NULL) ENGINE=InnoDB + SQL (0.000370) SET NAMES 'utf8' + SQL (0.000442) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000659) SELECT version FROM schema_info + SQL (0.000579) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.001381) SELECT version FROM schema_info + SQL (0.000560) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.006651) DROP TABLE products + SQL (0.000704) UPDATE schema_info SET version = 0 + SQL (0.000772) SELECT * FROM schema_info + SQL (0.000893) SHOW TABLES + SQL (0.000337) SET NAMES 'utf8' + SQL (0.000286) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.002542) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.000532) SELECT DATABASE() as db + SQL (0.000789) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.033917) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.000740) UPDATE schema_info SET version = 1 + SQL (0.000666) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.003437) CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.000663) UPDATE schema_info SET version = 2 + SQL (0.000900) SELECT * FROM schema_info + SQL (0.000820) SHOW TABLES + SQL (0.002802) SHOW FIELDS FROM products + SQL (0.002642) SHOW KEYS FROM products + SQL (0.002548) SHOW FIELDS FROM suppliers + SQL (0.001831) SHOW KEYS FROM suppliers + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-10-23 15:12:49) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"suppliers"} + Supplier Load (0.001699) SELECT * FROM suppliers  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/suppliers +Rendering suppliers/index +Completed in 0.16177 (6 reqs/sec) | Rendering: 0.00981 (6%) | DB: 0.00170 (1%) | 200 OK [http://localhost/suppliers/] + SQL (0.000352) SET NAMES 'utf8' + SQL (0.000304) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000814) SELECT version FROM schema_info + SQL (0.000500) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + + +Processing SuppliersController#new (for 127.0.0.1 at 2007-10-23 15:16:01) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"suppliers"} + Supplier Columns (0.003549) SHOW FIELDS FROM suppliers +Rendering within layouts/suppliers +Rendering suppliers/new +Completed in 0.03098 (32 reqs/sec) | Rendering: 0.01737 (56%) | DB: 0.00355 (11%) | 200 OK [http://localhost/suppliers/new] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:16:13) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001258) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.02181 (45 reqs/sec) | Rendering: 0.00269 (12%) | DB: 0.00126 (5%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 15:16:17) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003148) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.02519 (39 reqs/sec) | Rendering: 0.01051 (41%) | DB: 0.00315 (12%) | 200 OK [http://localhost/products/new] + SQL (0.000338) SET NAMES 'utf8' + SQL (0.000305) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000472) SELECT version FROM schema_info + SQL (0.000420) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000819) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.018841) DROP TABLE suppliers + SQL (0.001073) UPDATE schema_info SET version = 1 + SQL (0.000744) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.002716) DROP TABLE products + SQL (0.001111) UPDATE schema_info SET version = 0 + SQL (0.000854) SELECT * FROM schema_info + SQL (0.000739) SHOW TABLES + SQL (0.000386) SET NAMES 'utf8' + SQL (0.000330) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000826) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.000469) SELECT DATABASE() as db + SQL (0.001071) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.006017) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.000739) UPDATE schema_info SET version = 1 + SQL (0.000778) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.001001) SELECT DATABASE() as db + SQL (0.001381) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.004355) CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.002410) UPDATE schema_info SET version = 2 + SQL (0.000708) SELECT * FROM schema_info + SQL (0.000881) SHOW TABLES + SQL (0.003486) SHOW FIELDS FROM products + SQL (0.001781) SHOW KEYS FROM products + SQL (0.002905) SHOW FIELDS FROM suppliers + SQL (0.001936) SHOW KEYS FROM suppliers + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:16:41) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001601) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.01968 (50 reqs/sec) | Rendering: 0.00348 (17%) | DB: 0.00160 (8%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:16:44) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001540) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.01476 (67 reqs/sec) | Rendering: 0.00235 (15%) | DB: 0.00154 (10%) | 200 OK [http://localhost/products] + SQL (0.000968) SET NAMES 'utf8' + SQL (0.000912) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.002021) SELECT version FROM schema_info + SQL (0.000642) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000606) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.010996) DROP TABLE suppliers + SQL (0.005440) UPDATE schema_info SET version = 1 + SQL (0.000959) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.002506) DROP TABLE products + SQL (0.000730) UPDATE schema_info SET version = 0 + SQL (0.001183) SELECT * FROM schema_info + SQL (0.001874) SHOW TABLES + SQL (0.000421) SET NAMES 'utf8' + SQL (0.000309) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.001043) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.000698) SELECT DATABASE() as db + SQL (0.000654) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.009596) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.000687) UPDATE schema_info SET version = 1 + SQL (0.000826) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.000671) SELECT DATABASE() as db + SQL (0.000629) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.004022) CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.001498) UPDATE schema_info SET version = 2 + SQL (0.001032) SELECT * FROM schema_info + SQL (0.000860) SHOW TABLES + SQL (0.002554) SHOW FIELDS FROM products + SQL (0.002167) SHOW KEYS FROM products + SQL (0.002755) SHOW FIELDS FROM suppliers + SQL (0.002468) SHOW KEYS FROM suppliers + SQL (0.000329) SET NAMES 'utf8' + SQL (0.000325) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000696) SELECT version FROM schema_info + SQL (0.000419) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000744) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.010398) DROP TABLE suppliers + SQL (0.000722) UPDATE schema_info SET version = 1 + SQL (0.000825) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.002704) DROP TABLE products + SQL (0.000666) UPDATE schema_info SET version = 0 + SQL (0.000772) SELECT * FROM schema_info + SQL (0.000937) SHOW TABLES + SQL (0.000345) SET NAMES 'utf8' + SQL (0.000275) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000905) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.001207) SELECT DATABASE() as db + SQL (0.000584) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.011228) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `supplier_id` int DEFAULT NULL) ENGINE=InnoDB + SQL (0.000656) UPDATE schema_info SET version = 1 + SQL (0.001175) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.000523) SELECT DATABASE() as db + SQL (0.000509) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.003863) CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.000666) UPDATE schema_info SET version = 2 + SQL (0.000831) SELECT * FROM schema_info + SQL (0.000794) SHOW TABLES + SQL (0.002794) SHOW FIELDS FROM products + SQL (0.002822) SHOW KEYS FROM products + SQL (0.002630) SHOW FIELDS FROM suppliers + SQL (0.001815) SHOW KEYS FROM suppliers + SQL (0.000362) SET NAMES 'utf8' + SQL (0.000277) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.001277) SELECT version FROM schema_info + SQL (0.000571) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000477) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.010495) DROP TABLE suppliers + SQL (0.000623) UPDATE schema_info SET version = 1 + SQL (0.000718) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.002363) DROP TABLE products + SQL (0.000562) UPDATE schema_info SET version = 0 + SQL (0.000703) SELECT * FROM schema_info + SQL (0.002017) SHOW TABLES + SQL (0.000327) SET NAMES 'utf8' + SQL (0.000283) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000942) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.000478) SELECT DATABASE() as db + SQL (0.000487) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.010820) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `supplier_id` int DEFAULT NULL) ENGINE=InnoDB + SQL (0.000703) UPDATE schema_info SET version = 1 + SQL (0.000846) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.000452) SELECT DATABASE() as db + SQL (0.000492) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.004021) CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.000606) UPDATE schema_info SET version = 2 + SQL (0.001175) SELECT * FROM schema_info + SQL (0.000839) SHOW TABLES + SQL (0.003559) SHOW FIELDS FROM products + SQL (0.001874) SHOW KEYS FROM products + SQL (0.002736) SHOW FIELDS FROM suppliers + SQL (0.001934) SHOW KEYS FROM suppliers + SQL (0.000360) SET NAMES 'utf8' + SQL (0.000306) SET SQL_AUTO_IS_NULL=0 + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:26:41) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.010250) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.010828) SHOW FIELDS FROM products +Completed in 0.03773 (26 reqs/sec) | Rendering: 0.00814 (21%) | DB: 0.02108 (55%) | 200 OK [http://localhost/products] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 15:26:47) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.012757) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.02855 (35 reqs/sec) | Rendering: 0.00694 (24%) | DB: 0.01276 (44%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:26:50) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001379) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002701) SHOW FIELDS FROM products +Completed in 0.02032 (49 reqs/sec) | Rendering: 0.00715 (35%) | DB: 0.00408 (20%) | 200 OK [http://localhost/products] + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-10-23 15:26:59) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"suppliers"} + Supplier Load (0.001753) SELECT * FROM suppliers  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/suppliers +Rendering suppliers/index + Supplier Columns (0.002820) SHOW FIELDS FROM suppliers +Completed in 0.02261 (44 reqs/sec) | Rendering: 0.00769 (34%) | DB: 0.00457 (20%) | 200 OK [http://localhost/suppliers] + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-10-23 15:38:05) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"suppliers"} + Supplier Load (0.001181) SELECT * FROM suppliers  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/suppliers +Rendering suppliers/index + Supplier Columns (0.002694) SHOW FIELDS FROM suppliers +Completed in 0.09808 (10 reqs/sec) | Rendering: 0.08234 (83%) | DB: 0.00388 (3%) | 200 OK [http://localhost/suppliers] + SQL (0.000328) SET NAMES 'utf8' + SQL (0.000462) SET SQL_AUTO_IS_NULL=0 + Product Columns (0.002561) SHOW FIELDS FROM products + Product Load (0.001497) SELECT * FROM products WHERE (products.`id` = 2)  + Supplier Columns (0.002464) SHOW FIELDS FROM suppliers + Supplier Load (0.001406) SELECT * FROM suppliers WHERE (suppliers.`id` = 2)  + Supplier Load (0.001459) SELECT * FROM suppliers WHERE (suppliers.`id` = 1)  + Product Load (0.001474) SELECT * FROM products WHERE (products.supplier_id = 1)  + + +Processing SuppliersController#new (for 127.0.0.1 at 2007-10-23 15:45:34) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"suppliers"} + Supplier Columns (0.003078) SHOW FIELDS FROM suppliers +Rendering within layouts/suppliers +Rendering suppliers/new +Completed in 0.02274 (43 reqs/sec) | Rendering: 0.00980 (43%) | DB: 0.00308 (13%) | 200 OK [http://localhost/suppliers/new] + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-10-23 15:45:39) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"suppliers"} + Supplier Load (0.001245) SELECT * FROM suppliers  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/suppliers +Rendering suppliers/index + Supplier Columns (0.002481) SHOW FIELDS FROM suppliers +Completed in 0.01970 (50 reqs/sec) | Rendering: 0.00639 (32%) | DB: 0.00373 (18%) | 200 OK [http://localhost/suppliers] + + +Processing SuppliersController#new (for 127.0.0.1 at 2007-10-23 15:45:43) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"suppliers"} + Supplier Columns (0.003701) SHOW FIELDS FROM suppliers +Rendering within layouts/suppliers +Rendering suppliers/new +Completed in 0.02508 (39 reqs/sec) | Rendering: 0.00986 (39%) | DB: 0.00370 (14%) | 200 OK [http://localhost/suppliers/new] + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-10-23 15:45:49) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"suppliers"} + Supplier Load (0.001190) SELECT * FROM suppliers  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/suppliers +Rendering suppliers/index + Supplier Columns (0.002847) SHOW FIELDS FROM suppliers +Completed in 0.02040 (49 reqs/sec) | Rendering: 0.00709 (34%) | DB: 0.00404 (19%) | 200 OK [http://localhost/suppliers] + + +Processing SuppliersController#new (for 127.0.0.1 at 2007-10-23 15:45:50) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"suppliers"} + Supplier Columns (0.002690) SHOW FIELDS FROM suppliers +Rendering within layouts/suppliers +Rendering suppliers/new +Completed in 0.01824 (54 reqs/sec) | Rendering: 0.00635 (34%) | DB: 0.00269 (14%) | 200 OK [http://localhost/suppliers/new] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:45:55) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001199) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002613) SHOW FIELDS FROM products +Completed in 0.03665 (27 reqs/sec) | Rendering: 0.02376 (64%) | DB: 0.00381 (10%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 15:45:58) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002665) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.09542 (10 reqs/sec) | Rendering: 0.00648 (6%) | DB: 0.00267 (2%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#create (for 127.0.0.1 at 2007-10-23 15:46:02) [POST] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"commit"=>"Créer", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"", "updated_at(2i)"=>"10", "created_at(1i)"=>"2007", "updated_at(3i)"=>"23", "created_at(2i)"=>"10", "created_at(3i)"=>"23", "updated_at(4i)"=>"15", "updated_at(5i)"=>"45", "created_at(4i)"=>"15", "created_at(5i)"=>"45", "description"=>""}, "action"=>"create", "controller"=>"products"} + Product Columns (0.003041) SHOW FIELDS FROM products + SQL (0.000526) BEGIN + SQL (0.000300) COMMIT +Rendering layoutfalseactionnew within layouts/application +Rendering products/new +Completed in 0.02767 (36 reqs/sec) | Rendering: 0.00560 (20%) | DB: 0.00387 (13%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:46:58) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001483) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003102) SHOW FIELDS FROM products +Completed in 0.02179 (45 reqs/sec) | Rendering: 0.00797 (36%) | DB: 0.00459 (21%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:53:53) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001067) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003079) SHOW FIELDS FROM products +Completed in 0.02418 (41 reqs/sec) | Rendering: 0.00937 (38%) | DB: 0.00415 (17%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:54:47) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001127) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002727) SHOW FIELDS FROM products +Completed in 0.02341 (42 reqs/sec) | Rendering: 0.01136 (48%) | DB: 0.00385 (16%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:55:48) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001130) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002762) SHOW FIELDS FROM products +Completed in 0.02298 (43 reqs/sec) | Rendering: 0.00980 (42%) | DB: 0.00389 (16%) | 200 OK [http://localhost/products] + + +Processing SuppliersController#new (for 127.0.0.1 at 2007-10-23 15:55:51) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"suppliers"} + Supplier Columns (0.006461) SHOW FIELDS FROM suppliers +Rendering within layouts/suppliers +Rendering suppliers/new +Completed in 0.03479 (28 reqs/sec) | Rendering: 0.01476 (42%) | DB: 0.00646 (18%) | 200 OK [http://localhost/suppliers/new] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 15:56:29) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001101) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003157) SHOW FIELDS FROM products +Completed in 0.02156 (46 reqs/sec) | Rendering: 0.00891 (41%) | DB: 0.00426 (19%) | 200 OK [http://localhost/products] + + +Processing SuppliersController#show (for 127.0.0.1 at 2007-10-23 15:56:31) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"suppliers"} + Supplier Columns (0.003336) SHOW FIELDS FROM suppliers + Supplier Load (0.005465) SELECT * FROM suppliers WHERE (suppliers.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/suppliers +Rendering suppliers/show +Completed in 0.02462 (40 reqs/sec) | Rendering: 0.00627 (25%) | DB: 0.00880 (35%) | 200 OK [http://localhost/suppliers/1] + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-10-23 15:56:36) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"suppliers"} + Supplier Load (0.001109) SELECT * FROM suppliers  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/suppliers +Rendering suppliers/index + Supplier Columns (0.002715) SHOW FIELDS FROM suppliers +Completed in 0.02026 (49 reqs/sec) | Rendering: 0.00791 (39%) | DB: 0.00382 (18%) | 200 OK [http://localhost/suppliers] + + +Processing SuppliersController#show (for 127.0.0.1 at 2007-10-23 15:56:42) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"show", "id"=>"2", "controller"=>"suppliers"} + Supplier Columns (0.003612) SHOW FIELDS FROM suppliers + Supplier Load (0.001076) SELECT * FROM suppliers WHERE (suppliers.`id` = 2)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/suppliers +Rendering suppliers/show +Completed in 0.02134 (46 reqs/sec) | Rendering: 0.00474 (22%) | DB: 0.00469 (21%) | 200 OK [http://localhost/suppliers/2] + + +Processing SuppliersController#show (for 127.0.0.1 at 2007-10-23 15:56:50) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"suppliers"} + Supplier Columns (0.002708) SHOW FIELDS FROM suppliers + Supplier Load (0.001353) SELECT * FROM suppliers WHERE (suppliers.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/suppliers +Rendering suppliers/show +Completed in 0.01923 (52 reqs/sec) | Rendering: 0.00500 (25%) | DB: 0.00406 (21%) | 200 OK [http://localhost/suppliers/1] + + +Processing SuppliersController#show (for 127.0.0.1 at 2007-10-23 15:56:59) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"suppliers"} + Supplier Columns (0.002690) SHOW FIELDS FROM suppliers + Supplier Load (0.001049) SELECT * FROM suppliers WHERE (suppliers.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/suppliers +Rendering suppliers/show +Completed in 0.01733 (57 reqs/sec) | Rendering: 0.00402 (23%) | DB: 0.00374 (21%) | 200 OK [http://localhost/suppliers/1] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 15:57:08) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.005085) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.01999 (50 reqs/sec) | Rendering: 0.00622 (31%) | DB: 0.00508 (25%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 16:01:25) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002719) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.02045 (48 reqs/sec) | Rendering: 0.00911 (44%) | DB: 0.00272 (13%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 16:01:46) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002815) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.01886 (53 reqs/sec) | Rendering: 0.00856 (45%) | DB: 0.00282 (14%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 16:02:28) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002932) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.02188 (45 reqs/sec) | Rendering: 0.00806 (36%) | DB: 0.00293 (13%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:02:34) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002719) SHOW FIELDS FROM products + Product Load (0.001942) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Completed in 0.02576 (38 reqs/sec) | Rendering: 0.01136 (44%) | DB: 0.00466 (18%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:09:11) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002666) SHOW FIELDS FROM products + Product Load (0.001022) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (No such file or directory - /home/3dossmanno/P5b/ruby/mon_projet/app/views/./partial.rhtml) in app/views/partial.rhtml: + + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:407:in `read' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:407:in `read_template_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:317:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:283:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:09:49) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002661) SHOW FIELDS FROM products + Product Load (0.000990) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +ERROR: compiling _run_rhtml_47app47views47products47edit46rhtml RAISED compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6: syntax error, unexpected ':', expecting kEND + render :file => "./partial.rhtml" :use_full_path => true + ^ +Function body: def _run_rhtml_47app47views47products47edit46rhtml(local_assigns) +_erbout = ''; _erbout.concat "

    Edition d'un produit

    \n" +_erbout.concat "\n" +_erbout.concat(( error_messages_for :product ).to_s); _erbout.concat "\n" +_erbout.concat "\n" + form_for(:product, :url => product_path(@product), :html => { :method => :put }) do |f| + render :file => "./partial.rhtml" :use_full_path => true +_erbout.concat "\n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " "; _erbout.concat(( submit_tag "Mise à jour" ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" + end ; _erbout.concat "\n" +_erbout.concat "\n" +_erbout.concat(( link_to 'Voir', product_path(@product) ).to_s); _erbout.concat " |\n" +_erbout.concat(( link_to 'Retour', products_path ).to_s); _erbout +end +Backtrace: /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:16:in `compile_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' +/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:95:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `each' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:23:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:82:in `start' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +./script/server:3 + + +ActionView::TemplateError (compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6: syntax error, unexpected ':', expecting kEND + render :file => "./partial.rhtml" :use_full_path => true + ^) on line #6 of app/views/products/edit.rhtml: +3: <%= error_messages_for :product %> +4: +5: <% form_for(:product, :url => product_path(@product), :html => { :method => :put }) do |f| +6: render :file => "./partial.rhtml" :use_full_path => true +7: %> +8: +9:

    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:16:in `compile_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:10:57) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.005191) SHOW FIELDS FROM products + Product Load (0.003504) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +ERROR: compiling _run_rhtml_47app47views47products47edit46rhtml RAISED compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6: syntax error, unexpected ':', expecting kEND +_erbout.concat " "; render :file => "./partial.rhtml" :use_full_path => true ; _erbout.concat "\n" + ^ +Function body: def _run_rhtml_47app47views47products47edit46rhtml(local_assigns) +_erbout = ''; _erbout.concat "

    Edition d'un produit

    \n" +_erbout.concat "\n" +_erbout.concat(( error_messages_for :product ).to_s); _erbout.concat "\n" +_erbout.concat "\n" + form_for(:product, :url => product_path(@product), :html => { :method => :put }) do |f| ; _erbout.concat "\n" +_erbout.concat " "; render :file => "./partial.rhtml" :use_full_path => true ; _erbout.concat "\n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " "; _erbout.concat(( submit_tag "Mise à jour" ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" + end ; _erbout.concat "\n" +_erbout.concat "\n" +_erbout.concat(( link_to 'Voir', product_path(@product) ).to_s); _erbout.concat " |\n" +_erbout.concat(( link_to 'Retour', products_path ).to_s); _erbout +end +Backtrace: /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:15:in `compile_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' +/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:95:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `each' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:23:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:82:in `start' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +./script/server:3 + + +ActionView::TemplateError (compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6: syntax error, unexpected ':', expecting kEND +_erbout.concat " "; render :file => "./partial.rhtml" :use_full_path => true ; _erbout.concat "\n" + ^) on line #6 of app/views/products/edit.rhtml: +3: <%= error_messages_for :product %> +4: +5: <% form_for(:product, :url => product_path(@product), :html => { :method => :put }) do |f| %> +6: <% render :file => "./partial.rhtml" :use_full_path => true %> +7: +8:

    +9: <%= submit_tag "Mise à jour" %> + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:15:in `compile_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:17:03) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.005241) SHOW FIELDS FROM products + Product Load (0.002862) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (`@partial.rhtml' is not allowed as an instance variable name) on line #6 of app/views/products/edit.rhtml: +3: <%= error_messages_for :product %> +4: +5: <% form_for(:product, :url => product_path(@product), :html => { :method => :put }) do |f| %> +6: <% render :partial => "./partial.rhtml" %> +7:

    +8: <%= submit_tag "Mise à jour" %> +9:

    + + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:125:in `instance_variable_get' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:125:in `add_object_to_local_assigns!' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:55:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:20:19) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002680) SHOW FIELDS FROM products + Product Load (0.001313) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (`@_partial.rhtml' is not allowed as an instance variable name) on line #6 of app/views/products/edit.rhtml: +3: <%= error_messages_for :product %> +4: +5: <% form_for(:product, :url => product_path(@product), :html => { :method => :put }) do |f| %> +6: <% render :partial => "products/_partial.rhtml", :collection => @new_f %> +7:

    +8: <%= submit_tag "Mise à jour" %> +9:

    + + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:125:in `instance_variable_get' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:125:in `add_object_to_local_assigns!' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:55:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:20:40) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.004548) SHOW FIELDS FROM products + Product Load (0.001057) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (`@_partial.rhtml' is not allowed as an instance variable name) on line #6 of app/views/products/edit.rhtml: +3: <%= error_messages_for :product %> +4: +5: <% form_for(:product, :url => product_path(@product), :html => { :method => :put }) do |f| %> +6: <% render :partial => "products/_partial.rhtml", :collection => @new_fs %> +7:

    +8: <%= submit_tag "Mise à jour" %> +9:

    + + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:125:in `instance_variable_get' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:125:in `add_object_to_local_assigns!' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:55:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:23:41) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002743) SHOW FIELDS FROM products + Product Load (0.000977) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (undefined local variable or method `f' for #<#:0xb7214820>) on line #3 of app/views/products/_partial.rhtml: +1:

    +2: Designation
    +3: <%= f.text_field :designation %> +4:

    +5: +6:

    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_partial.rhtml:3:in `_run_rhtml_47app47views47products47_partial46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:26:07) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003182) SHOW FIELDS FROM products + Product Load (0.000994) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (undefined local variable or method `f' for #<#:0xb7236b3c>) on line #3 of app/views/products/_partial.rhtml: +1:

    +2: Designation
    +3: <%= f.text_field :designation %> +4:

    +5: +6:

    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_partial.rhtml:3:in `_run_rhtml_47app47views47products47_partial46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:26:12) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002708) SHOW FIELDS FROM products + Product Load (0.001424) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (undefined local variable or method `f' for #<#:0xb724d15c>) on line #3 of app/views/products/_partial.rhtml: +1:

    +2: Designation
    +3: <%= f.text_field :designation %> +4:

    +5: +6:

    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_partial.rhtml:3:in `_run_rhtml_47app47views47products47_partial46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:26:15) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002735) SHOW FIELDS FROM products + Product Load (0.001028) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (undefined local variable or method `f' for #<#:0xb7266440>) on line #3 of app/views/products/_partial.rhtml: +1:

    +2: Designation
    +3: <%= f.text_field :designation %> +4:

    +5: +6:

    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_partial.rhtml:3:in `_run_rhtml_47app47views47products47_partial46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:28:01) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002793) SHOW FIELDS FROM products + Product Load (0.001013) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (undefined local variable or method `f' for #<#:0xb727a5bc>) on line #3 of app/views/products/_partial.rhtml: +1:

    +2: Designation
    +3: <%= f.text_field :designation %> +4:

    +5: +6:

    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_partial.rhtml:3:in `_run_rhtml_47app47views47products47_partial46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:29:44) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002583) SHOW FIELDS FROM products + Product Load (0.000969) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (undefined local variable or method `locals' for #<#:0xb6ff0314>) on line #6 of app/views/products/edit.rhtml: +3: <%= error_messages_for :product %> +4: +5: <% form_for(:product, :url => product_path(@product), :html => { :method => :put }) do |f| %> +6: <% render :partial => "partial", locals => { :f => f } %> +7:

    +8: <%= submit_tag "Mise à jour" %> +9:

    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:30:34) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003130) SHOW FIELDS FROM products + Product Load (0.001116) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_partial (0.00613) +Completed in 0.02849 (35 reqs/sec) | Rendering: 0.01221 (42%) | DB: 0.00425 (14%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:31:42) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002628) SHOW FIELDS FROM products + Product Load (0.000932) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_partial (0.00607) +Completed in 0.02547 (39 reqs/sec) | Rendering: 0.01267 (49%) | DB: 0.00356 (13%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:32:00) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002683) SHOW FIELDS FROM products + Product Load (0.001064) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (`@_partial.rhtml' is not allowed as an instance variable name) on line #6 of app/views/products/edit.rhtml: +3: <%= error_messages_for :product %> +4: +5: <% form_for(:product, :url => product_path(@product), :html => { :method => :put }) do |f| %> +6: <% render :partial => "_partial.rhtml", :locals => { :f => f } %> +7:

    +8: <%= submit_tag "Mise à jour" %> +9:

    + + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:125:in `instance_variable_get' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:125:in `add_object_to_local_assigns!' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:55:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:33:05) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003148) SHOW FIELDS FROM products + Product Load (0.001089) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_partial (0.00462) +Completed in 0.02458 (40 reqs/sec) | Rendering: 0.01080 (43%) | DB: 0.00424 (17%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:33:10) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001108) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002554) SHOW FIELDS FROM products +Completed in 0.01900 (52 reqs/sec) | Rendering: 0.00765 (40%) | DB: 0.00366 (19%) | 200 OK [http://localhost/products] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:33:15) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002673) SHOW FIELDS FROM products + Product Load (0.001075) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_partial (0.00470) +Completed in 0.02018 (49 reqs/sec) | Rendering: 0.00826 (40%) | DB: 0.00375 (18%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:34:05) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003190) SHOW FIELDS FROM products + Product Load (0.001476) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + + +ActionView::TemplateError (You have a nil object when you didn't expect it! +The error occurred while evaluating nil.text_field) on line #3 of app/views/products/_partial.rhtml: +1:

    +2: Designation
    +3: <%= f.text_field :designation %> +4:

    +5: +6:

    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_partial.rhtml:3:in `_run_rhtml_47app47views47products47_partial46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:6:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/edit.rhtml:5:in `_run_rhtml_47app47views47products47edit46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:35:08) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001186) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002777) SHOW FIELDS FROM products +Completed in 0.02361 (42 reqs/sec) | Rendering: 0.01075 (45%) | DB: 0.00396 (16%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:35:20) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001221) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002630) SHOW FIELDS FROM products +Completed in 0.02453 (40 reqs/sec) | Rendering: 0.01143 (46%) | DB: 0.00385 (15%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:38:12) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001120) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003264) SHOW FIELDS FROM products +Completed in 0.01950 (51 reqs/sec) | Rendering: 0.00767 (39%) | DB: 0.00438 (22%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:38:15) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003652) SHOW FIELDS FROM products + Product Load (0.000998) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_partial (0.00489) +Completed in 0.02810 (35 reqs/sec) | Rendering: 0.01448 (51%) | DB: 0.00465 (16%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:38:18) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003140) SHOW FIELDS FROM products + Product Load (0.001052) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_partial (0.00420) +Completed in 0.02188 (45 reqs/sec) | Rendering: 0.00822 (37%) | DB: 0.00419 (19%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:38:41) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.004702) SHOW FIELDS FROM products + Product Load (0.001073) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_partial (0.00610) +Completed in 0.02528 (39 reqs/sec) | Rendering: 0.01189 (47%) | DB: 0.00577 (22%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#update (for 127.0.0.1 at 2007-10-23 16:38:44) [PUT] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"commit"=>"Mise à jour", "_method"=>"put", "action"=>"update", "id"=>"1", "controller"=>"products"} + Product Columns (0.003445) SHOW FIELDS FROM products + Product Load (0.001012) SELECT * FROM products WHERE (products.`id` = 1)  + SQL (0.000320) BEGIN + Product Update (0.000963) UPDATE products SET `created_at` = '2007-10-23 11:05:31', `supplier_id` = 1, `designation` = 'Beurre', `description` = 'Bien beurré', `updated_at` = '2007-10-23 16:38:44' WHERE `id` = 1 + SQL (0.006600) COMMIT +Redirected to http://localhost:11134/products/1 +Completed in 0.02748 (36 reqs/sec) | DB: 0.01234 (44%) | 302 Found [http://localhost/products/1] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-10-23 16:38:44) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"products"} + Product Columns (0.002733) SHOW FIELDS FROM products + Product Load (0.001586) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.01984 (50 reqs/sec) | Rendering: 0.00619 (31%) | DB: 0.00432 (21%) | 200 OK [http://localhost/products/1] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:38:48) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002602) SHOW FIELDS FROM products + Product Load (0.000996) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_partial (0.00417) +Completed in 0.02167 (46 reqs/sec) | Rendering: 0.00767 (35%) | DB: 0.00360 (16%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:40:01) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003594) SHOW FIELDS FROM products + Product Load (0.001240) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_form (0.00642) +Completed in 0.02804 (35 reqs/sec) | Rendering: 0.01432 (51%) | DB: 0.00483 (17%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:40:03) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003216) SHOW FIELDS FROM products + Product Load (0.006245) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_form (0.00550) +Completed in 0.02832 (35 reqs/sec) | Rendering: 0.00936 (33%) | DB: 0.00946 (33%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:40:06) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003051) SHOW FIELDS FROM products + Product Load (0.001046) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_form (0.00714) +Completed in 0.02324 (43 reqs/sec) | Rendering: 0.01068 (45%) | DB: 0.00410 (17%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:40:08) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002978) SHOW FIELDS FROM products + Product Load (0.006739) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_form (0.00440) +Completed in 0.02783 (35 reqs/sec) | Rendering: 0.00889 (31%) | DB: 0.00972 (34%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:40:10) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002687) SHOW FIELDS FROM products + Product Load (0.001077) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_form (0.00478) +Completed in 0.02177 (45 reqs/sec) | Rendering: 0.00860 (39%) | DB: 0.00376 (17%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:40:12) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002730) SHOW FIELDS FROM products + Product Load (0.001226) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_form (0.00483) +Completed in 0.02011 (49 reqs/sec) | Rendering: 0.00848 (42%) | DB: 0.00396 (19%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:40:15) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001539) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002932) SHOW FIELDS FROM products +Completed in 0.01912 (52 reqs/sec) | Rendering: 0.00708 (37%) | DB: 0.00447 (23%) | 200 OK [http://localhost/products] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 16:40:17) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003655) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Completed in 0.02115 (47 reqs/sec) | Rendering: 0.00824 (38%) | DB: 0.00365 (17%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:40:22) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001524) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003108) SHOW FIELDS FROM products +Completed in 0.03010 (33 reqs/sec) | Rendering: 0.01339 (44%) | DB: 0.00463 (15%) | 200 OK [http://localhost/products] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:40:24) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002679) SHOW FIELDS FROM products + Product Load (0.001322) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_form (0.00447) +Completed in 0.02143 (46 reqs/sec) | Rendering: 0.00888 (41%) | DB: 0.00400 (18%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:40:26) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001212) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003044) SHOW FIELDS FROM products +Completed in 0.01964 (50 reqs/sec) | Rendering: 0.00701 (35%) | DB: 0.00426 (21%) | 200 OK [http://localhost/products] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:41:28) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002686) SHOW FIELDS FROM products + Product Load (0.001073) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit +Rendered products/_form (0.00603) +Completed in 0.02522 (39 reqs/sec) | Rendering: 0.01307 (51%) | DB: 0.00376 (14%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:41:36) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001613) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002796) SHOW FIELDS FROM products +Completed in 0.02689 (37 reqs/sec) | Rendering: 0.00997 (37%) | DB: 0.00441 (16%) | 200 OK [http://localhost/products] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 16:42:37) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002947) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +ERROR: compiling _run_rhtml_47app47views47products47new46rhtml RAISED compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7: syntax error, unexpected '{', expecting tASSOC +_erbout.concat " "; _erbout.concat(( render :partial => "form", :locals{ :f => f} ).to_s); _erbout.concat "\n" + ^ +Function body: def _run_rhtml_47app47views47products47new46rhtml(local_assigns) +_erbout = ''; _erbout.concat "

    Nouvel \303\251l\303\251ment

    \n" +_erbout.concat "\n" +_erbout.concat(( error_messages_for :product ).to_s); _erbout.concat "\n" +_erbout.concat "\n" + form_for(:product, :url => products_path) do |f| ; _erbout.concat "\n" +_erbout.concat "\n" +_erbout.concat " "; _erbout.concat(( render :partial => "form", :locals{ :f => f} ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " "; _erbout.concat(( submit_tag "Créer" ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" + end ; _erbout.concat "\n" +_erbout.concat "\n" +_erbout.concat(( link_to 'Retour', products_path ).to_s); _erbout +end +Backtrace: /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:14:in `compile_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' +/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:95:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `each' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:23:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:82:in `start' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +./script/server:3 + + +ActionView::TemplateError (compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7: syntax error, unexpected '{', expecting tASSOC +_erbout.concat " "; _erbout.concat(( render :partial => "form", :locals{ :f => f} ).to_s); _erbout.concat "\n" + ^) on line #7 of app/views/products/new.rhtml: +4: +5: <% form_for(:product, :url => products_path) do |f| %> +6: +7: <%= render :partial => "form", :locals{ :f => f} %> +8:

    +9: <%= submit_tag "Créer" %> +10:

    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:14:in `compile_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 16:43:00) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002702) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +Rendered products/_form (0.00520) +Completed in 0.02055 (48 reqs/sec) | Rendering: 0.01008 (49%) | DB: 0.00270 (13%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:48:22) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001163) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002858) SHOW FIELDS FROM products +Completed in 0.02220 (45 reqs/sec) | Rendering: 0.00889 (40%) | DB: 0.00402 (18%) | 200 OK [http://localhost/products] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 16:48:26) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002964) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + + +ActionView::TemplateError (undefined local variable or method `suppliers' for #<#:0xb71451ec>) on line #23 of app/views/products/_form.rhtml: +20: +21:

    +22: Fournisseur
    +23: <%= select(suppliers, "supplier_id", Supplier.find(:all).collect {|p| [ p.code, p.id ] }, { :include_blank => true }) %> +24:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:23:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 16:48:52) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002514) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001403) SELECT * FROM suppliers  + Supplier Columns (0.003169) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02440) +Completed in 0.04066 (24 reqs/sec) | Rendering: 0.02310 (56%) | DB: 0.00709 (17%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:48:58) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001160) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002603) SHOW FIELDS FROM products +Completed in 0.02022 (49 reqs/sec) | Rendering: 0.00752 (37%) | DB: 0.00376 (18%) | 200 OK [http://localhost/products] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:49:00) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.002701) SHOW FIELDS FROM products + Product Load (0.001811) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + Supplier Load (0.001181) SELECT * FROM suppliers  + Supplier Columns (0.002781) SHOW FIELDS FROM suppliers +Rendered products/_form (0.01926) +Completed in 0.03612 (27 reqs/sec) | Rendering: 0.01901 (52%) | DB: 0.00847 (23%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:49:05) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001313) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002588) SHOW FIELDS FROM products +Completed in 0.01880 (53 reqs/sec) | Rendering: 0.00679 (36%) | DB: 0.00390 (20%) | 200 OK [http://localhost/products] + SQL (0.000448) SET NAMES 'utf8' + SQL (0.000279) SET SQL_AUTO_IS_NULL=0 + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:50:36) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001890) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002673) SHOW FIELDS FROM products +Completed in 0.02794 (35 reqs/sec) | Rendering: 0.01080 (38%) | DB: 0.00456 (16%) | 200 OK [http://localhost/products] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 16:50:40) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003302) SHOW FIELDS FROM products + Product Load (0.002486) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + Supplier Load (0.001624) SELECT * FROM suppliers  + Supplier Columns (0.002544) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02414) +Completed in 0.04184 (23 reqs/sec) | Rendering: 0.02368 (56%) | DB: 0.00996 (23%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:50:44) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.003146) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.155237) SHOW FIELDS FROM products +Completed in 0.17537 (5 reqs/sec) | Rendering: 0.00717 (4%) | DB: 0.15838 (90%) | 200 OK [http://localhost/products] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-10-23 16:50:46) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.004114) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001065) SELECT * FROM suppliers  + Supplier Columns (0.003535) SHOW FIELDS FROM suppliers +Rendered products/_form (0.01912) +Completed in 0.03350 (29 reqs/sec) | Rendering: 0.01704 (50%) | DB: 0.00871 (26%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-10-23 16:50:51) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001546) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003517) SHOW FIELDS FROM products +Completed in 0.02646 (37 reqs/sec) | Rendering: 0.01148 (43%) | DB: 0.00506 (19%) | 200 OK [http://localhost/products] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-10-23 17:01:01) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + Product Columns (0.003214) SHOW FIELDS FROM products + Product Load (0.001216) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering products/edit + Supplier Load (0.001209) SELECT * FROM suppliers  + Supplier Columns (0.002621) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02299) +Completed in 0.04739 (21 reqs/sec) | Rendering: 0.03053 (64%) | DB: 0.00826 (17%) | 200 OK [http://localhost/products/1/edit] + + +Processing ProductsController#update (for 127.0.0.1 at 2007-10-23 17:01:06) [PUT] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"commit"=>"Mise à jour", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"Beurre", "updated_at(2i)"=>"10", "created_at(1i)"=>"2007", "updated_at(3i)"=>"23", "created_at(2i)"=>"10", "created_at(3i)"=>"23", "updated_at(4i)"=>"11", "updated_at(5i)"=>"05", "created_at(4i)"=>"11", "created_at(5i)"=>"05", "description"=>"Bien beurré !", "supplier_id"=>"1"}, "_method"=>"put", "action"=>"update", "id"=>"1", "controller"=>"products"} + Product Columns (0.002848) SHOW FIELDS FROM products + Product Load (0.001401) SELECT * FROM products WHERE (products.`id` = 1)  + SQL (0.000835) BEGIN + Product Update (0.000941) UPDATE products SET `created_at` = '2007-10-23 11:05:00', `supplier_id` = 1, `designation` = 'Beurre', `description` = 'Bien beurré !', `updated_at` = '2007-10-23 17:01:06' WHERE `id` = 1 + SQL (0.011642) COMMIT +Redirected to http://localhost:11134/products/1 +Completed in 0.03283 (30 reqs/sec) | DB: 0.01767 (53%) | 302 Found [http://localhost/products/1] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-10-23 17:01:06) [GET] + Session ID: b1d9856f5c74c95a5696d90be638746e + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"products"} + Product Columns (0.002984) SHOW FIELDS FROM products + Product Load (0.001357) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.02075 (48 reqs/sec) | Rendering: 0.00432 (20%) | DB: 0.00434 (20%) | 200 OK [http://localhost/products/1] + SQL (0.000440) SET NAMES 'utf8' + SQL (0.000354) SET SQL_AUTO_IS_NULL=0 + SQL (0.000422) SET NAMES 'utf8' + SQL (0.000284) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000642) SELECT version FROM schema_info + SQL (0.000405) SELECT version FROM schema_info + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.002179) SELECT version FROM schema_info + SQL (0.005875) SELECT version FROM schema_info + SQL (0.000459) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.011788) DROP TABLE suppliers + SQL (0.000922) UPDATE schema_info SET version = 1 + SQL (0.001179) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.002247) DROP TABLE products + SQL (0.000678) UPDATE schema_info SET version = 0 + SQL (0.001940) SELECT * FROM schema_info + SQL (0.003857) SHOW TABLES + SQL (0.000403) SET NAMES 'utf8' + SQL (0.000362) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000838) SELECT version FROM schema_info +Migrating to CreateProducts (1) + SQL (0.010530) SELECT DATABASE() as db + SQL (0.000863) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.015011) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `supplier_id` int DEFAULT NULL, `customer_id` int DEFAULT NULL) ENGINE=InnoDB + SQL (0.001194) UPDATE schema_info SET version = 1 + SQL (0.000694) SELECT version FROM schema_info +Migrating to CreateSuppliers (2) + SQL (0.001216) SELECT DATABASE() as db + SQL (0.001997) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.004108) CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.000658) UPDATE schema_info SET version = 2 + SQL (0.001100) SELECT version FROM schema_info +Migrating to CreateCustomers (3) + SQL (0.000505) SELECT DATABASE() as db + SQL (0.000516) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.006629) CREATE TABLE customers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `firstname` varchar(255) DEFAULT NULL, `name` varchar(255) DEFAULT NULL) ENGINE=InnoDB + SQL (0.000950) UPDATE schema_info SET version = 3 + SQL (0.000667) SELECT version FROM schema_info +Migrating to CreateAddresses (4) + SQL (0.000460) SELECT DATABASE() as db + SQL (0.000478) ALTER DATABASE 073dossmanno_dev CHARACTER SET utf8 COLLATE utf8_general_ci + SQL (0.004298) CREATE TABLE addresses (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `street` text DEFAULT NULL, `postal_code` varchar(255) DEFAULT NULL, `city` varchar(255) DEFAULT NULL, `country` varchar(255) DEFAULT NULL) ENGINE=InnoDB + SQL (0.000641) UPDATE schema_info SET version = 4 + SQL (0.001813) SELECT * FROM schema_info + SQL (0.000979) SHOW TABLES + SQL (0.003334) SHOW FIELDS FROM addresses + SQL (0.002280) SHOW KEYS FROM addresses + SQL (0.002181) SHOW FIELDS FROM customers + SQL (0.001797) SHOW KEYS FROM customers + SQL (0.004311) SHOW FIELDS FROM products + SQL (0.002807) SHOW KEYS FROM products + SQL (0.002815) SHOW FIELDS FROM suppliers + SQL (0.002618) SHOW KEYS FROM suppliers + SQL (0.000433) SET NAMES 'utf8' + SQL (0.000303) SET SQL_AUTO_IS_NULL=0 + SQL (0.001972) SELECT * FROM schema_info + SQL (0.001113) SHOW TABLES + SQL (0.002839) SHOW FIELDS FROM addresses + SQL (0.002301) SHOW KEYS FROM addresses + SQL (0.002117) SHOW FIELDS FROM customers + SQL (0.001947) SHOW KEYS FROM customers + SQL (0.002763) SHOW FIELDS FROM products + SQL (0.002206) SHOW KEYS FROM products + SQL (0.003048) SHOW FIELDS FROM suppliers + SQL (0.002008) SHOW KEYS FROM suppliers + SQL (0.000363) SET SQL_AUTO_IS_NULL=0 + SQL (0.000758) DROP DATABASE IF EXISTS `073dossmanno_test` + SQL (0.000547) CREATE DATABASE `073dossmanno_test` + SQL (0.000330) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S02Unknown table 'addresses': DROP TABLE addresses + SQL (0.010201) CREATE TABLE addresses (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `street` text DEFAULT NULL, `postal_code` varchar(255) DEFAULT NULL, `city` varchar(255) DEFAULT NULL, `country` varchar(255) DEFAULT NULL) ENGINE=InnoDB + SQL (0.000000) Mysql::Error: #42S02Unknown table 'customers': DROP TABLE customers + SQL (0.031860) CREATE TABLE customers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `firstname` varchar(255) DEFAULT NULL, `name` varchar(255) DEFAULT NULL) ENGINE=InnoDB + SQL (0.000000) Mysql::Error: #42S02Unknown table 'products': DROP TABLE products + SQL (0.003640) CREATE TABLE products (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `designation` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `supplier_id` int(11) DEFAULT NULL, `customer_id` int(11) DEFAULT NULL) ENGINE=InnoDB + SQL (0.000000) Mysql::Error: #42S02Unknown table 'suppliers': DROP TABLE suppliers + SQL (0.004117) CREATE TABLE suppliers (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255) DEFAULT NULL, `description` text DEFAULT NULL, `code` varchar(255) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.002343) CREATE TABLE schema_info (version int(11)) + SQL (0.000784) INSERT INTO schema_info (version) VALUES(0) + SQL (0.002385) SHOW FIELDS FROM schema_info + SQL (0.000647) UPDATE schema_info SET version = 4 + SQL (0.000332) SET NAMES 'utf8' + SQL (0.000647) SET SQL_AUTO_IS_NULL=0 + SQL (0.000362) SET NAMES 'utf8' + SQL (0.000304) SET SQL_AUTO_IS_NULL=0 + Customer Columns (0.002101) SHOW FIELDS FROM customers + Customer Load (0.001118) SELECT * FROM customers WHERE (customers.`id` = 1)  + Product Load (0.001606) SELECT * FROM products WHERE (products.customer_id = 1)  + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 09:03:39) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + SQL (0.016358) SET NAMES 'utf8' + SQL (0.000452) SET SQL_AUTO_IS_NULL=0 + Product Load (0.015843) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003028) SHOW FIELDS FROM products +Completed in 0.25267 (3 reqs/sec) | Rendering: 0.11217 (44%) | DB: 0.03568 (14%) | 200 OK [http://localhost/products/] + + +Processing CustomersController#index (for 127.0.0.1 at 2007-11-06 09:04:06) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"customers"} + Customer Load (0.001476) SELECT * FROM customers  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/customers +Rendering customers/index + Customer Columns (0.003145) SHOW FIELDS FROM customers +Completed in 0.08478 (11 reqs/sec) | Rendering: 0.06344 (74%) | DB: 0.00462 (5%) | 200 OK [http://localhost/customers/] + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 09:04:25) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/adresses/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 09:06:45) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/adresss/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 09:07:26) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/adresses/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing AddressesController#index (for 127.0.0.1 at 2007-11-06 09:07:42) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"addresses"} + Address Load (0.002007) SELECT * FROM addresses  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/addresses +Rendering addresses/index + Address Columns (0.002577) SHOW FIELDS FROM addresses +Completed in 0.11749 (8 reqs/sec) | Rendering: 0.06207 (52%) | DB: 0.00458 (3%) | 200 OK [http://localhost/addresses/] + SQL (0.000326) SET NAMES 'utf8' + SQL (0.000281) SET SQL_AUTO_IS_NULL=0 + Customer Columns (0.002217) SHOW FIELDS FROM customers + Customer Load (0.001049) SELECT * FROM customers WHERE (customers.`id` = 1)  + Product Load (0.003332) SELECT * FROM products WHERE (products.customer_id = 1)  + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 09:10:04) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/cutomers/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing CustomersController#index (for 127.0.0.1 at 2007-11-06 09:10:07) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"customers"} + Customer Load (0.000873) SELECT * FROM customers  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/customers +Rendering customers/index + Customer Columns (0.002267) SHOW FIELDS FROM customers +Completed in 0.02574 (38 reqs/sec) | Rendering: 0.01156 (44%) | DB: 0.00314 (12%) | 200 OK [http://localhost/customers/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 09:10:15) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002053) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003581) SHOW FIELDS FROM products +Completed in 0.02519 (39 reqs/sec) | Rendering: 0.00920 (36%) | DB: 0.00563 (22%) | 200 OK [http://localhost/products/] + + +Processing SuppliersController#show (for 127.0.0.1 at 2007-11-06 09:10:23) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"suppliers"} + Supplier Columns (0.004243) SHOW FIELDS FROM suppliers + Supplier Load (0.001732) SELECT * FROM suppliers WHERE (suppliers.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/suppliers +Rendering suppliers/show +Completed in 0.05300 (18 reqs/sec) | Rendering: 0.01955 (36%) | DB: 0.00598 (11%) | 200 OK [http://localhost/suppliers/1] + SQL (0.000377) SET NAMES 'utf8' + SQL (0.000291) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000350) SET NAMES 'utf8' + SQL (0.000290) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.017465) SELECT version FROM schema_info + SQL (0.000477) SELECT version FROM schema_info + SQL (0.000415) SELECT version FROM schema_info + SQL (0.000411) SELECT version FROM schema_info + SQL (0.000407) SELECT version FROM schema_info +Migrating to AddTypeToProducts (5) + SQL (0.044996) ALTER TABLE products ADD `type` varchar(255) + SQL (0.001797) UPDATE schema_info SET version = 5 + SQL (0.000780) SELECT * FROM schema_info + SQL (0.001035) SHOW TABLES + SQL (0.002564) SHOW FIELDS FROM addresses + SQL (0.002420) SHOW KEYS FROM addresses + SQL (0.002508) SHOW FIELDS FROM customers + SQL (0.002288) SHOW KEYS FROM customers + SQL (0.002808) SHOW FIELDS FROM products + SQL (0.002199) SHOW KEYS FROM products + SQL (0.002998) SHOW FIELDS FROM suppliers + SQL (0.002163) SHOW KEYS FROM suppliers + SQL (0.000373) SET NAMES 'utf8' + SQL (0.000324) SET SQL_AUTO_IS_NULL=0 + Product Load (0.001960) SELECT * FROM products  + Product Load (0.001336) SELECT * FROM products  + Product Load (0.001335) SELECT * FROM products  + Product Load (0.002302) SELECT * FROM products ORDER BY updated_at ASC LIMIT 3 + Product Columns (0.003035) SHOW FIELDS FROM products + Supplier Columns (0.002531) SHOW FIELDS FROM suppliers + Supplier Load (0.002295) SELECT * FROM suppliers WHERE (suppliers.`id` = 2)  + SQL (0.000466) BEGIN + SQL (0.020264) INSERT INTO products (`designation`, `updated_at`, `type`, `customer_id`, `description`, `supplier_id`, `created_at`) VALUES('Une designation', '2007-11-06 09:53:08', NULL, NULL, 'La description d\'un produit ajout en console', 2, '2007-11-06 09:53:08') + SQL (0.002887) COMMIT + Product Load (0.001928) SELECT * FROM products WHERE (products.`id` = 3)  + SQL (0.000537) BEGIN + SQL (0.000751) INSERT INTO products (`designation`, `updated_at`, `type`, `customer_id`, `description`, `supplier_id`, `created_at`) VALUES('nouvelle dsignation', '2007-11-06 10:07:50', NULL, NULL, 'Voici la description sans accents aigus', NULL, '2007-11-06 10:07:50') + SQL (0.004865) COMMIT + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 10:12:19) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002722) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003856) SHOW FIELDS FROM products + + +ActionView::TemplateError (supplier_url failed to generate from {:id=>nil, :action=>"show", :controller=>"suppliers"}, expected: {:controller=>"suppliers", :action=>"show"}, diff: {:id=>nil}) on line #18 of app/views/products/index.rhtml: +15: <%=h product.description %> +16: <%=h product.created_at.strftime("le %d/%m/%Y") %> +17: <%=h product.updated_at.strftime("%d/%m/%Y") %> +18: <%= link_to product.supplier_id, supplier_path(product.supplier_id) %> +19: <%= link_to 'Voir', product_path(product) %> +20: <%= link_to 'Editer', edit_product_path(product) %> +21: <%= link_to 'Supprimer', product_path(product), :confirm => 'Etes vous sûr ?', :method => :delete %> + + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1306:in `raise_named_route_error' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1278:in `generate' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/url_rewriter.rb:107:in `rewrite_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/url_rewriter.rb:70:in `rewrite' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:527:in `url_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/url_helper.rb:27:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/url_helper.rb:27:in `url_for' + (eval):19:in `supplier_path' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:18:in `_run_rhtml_47app47views47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:12:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:12:in `_run_rhtml_47app47views47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:10:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:10:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 10:16:22) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002032) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003061) SHOW FIELDS FROM products +Completed in 0.02544 (39 reqs/sec) | Rendering: 0.00984 (38%) | DB: 0.00895 (35%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:16:26) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003858) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001780) SELECT * FROM suppliers  + Supplier Columns (0.003363) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02382) +Completed in 0.04163 (24 reqs/sec) | Rendering: 0.02322 (55%) | DB: 0.00900 (21%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:24:46) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003341) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001262) SELECT * FROM suppliers  + Supplier Columns (0.002797) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02403) + Supplier Load (0.001138) SELECT * FROM suppliers  + + +ActionView::TemplateError (wrong argument type Fixnum (expected Module)) on line #8 of app/views/products/new.rhtml: +5: <% form_for(:product, :url => products_path) do |f| %> +6: +7: <%= render :partial => "form", :locals => { :f => f} %> +8: <%= f.select("type", Supplier.find(:all).collect {|p| [ p.code, p.id ] }, { :include_blank => true }) %> +9:

    +10: <%= submit_tag "Créer" %> +11:

    + + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:116:in `include?' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:116:in `options_for_select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:349:in `inject' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `inject' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `options_for_select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:302:in `to_select_tag' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:66:in `select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:347:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:8:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:25:04) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.005026) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001256) SELECT * FROM suppliers  + Supplier Columns (0.002707) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02276) + Supplier Load (0.001286) SELECT * FROM suppliers  + + +ActionView::TemplateError (wrong argument type Fixnum (expected Module)) on line #8 of app/views/products/new.rhtml: +5: <% form_for(:product, :url => products_path) do |f| %> +6: +7: <%= render :partial => "form", :locals => { :f => f} %> +8: <%= f.select("type", Supplier.find(:all).collect {|p| [ p.code, p.id ] }, { :include_blank => true }) %> +9:

    +10: <%= submit_tag "Créer" %> +11:

    + + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:116:in `include?' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:116:in `options_for_select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:349:in `inject' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `inject' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `options_for_select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:302:in `to_select_tag' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:66:in `select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:347:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:8:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:37:48) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.118031) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001164) SELECT * FROM suppliers  + Supplier Columns (0.003208) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (wrong argument type String (expected Module)) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select('type', 'items li li3 li4') %> +29:

    + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:123:in `include?' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:123:in `options_for_select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:349:in `inject' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `inject' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `options_for_select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:302:in `to_select_tag' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:66:in `select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:347:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:42:29) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003572) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001371) SELECT * FROM suppliers  + Supplier Columns (0.003610) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (undefined local variable or method `page' for #<#:0xb711bb08>) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= page.select('#items li').each do |value| value end %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:42:57) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003720) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001191) SELECT * FROM suppliers  + Supplier Columns (0.002738) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (undefined local variable or method `page' for #<#:0xb704eba8>) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= page.select('#items li').each do |value| printf value end %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:43:33) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.008732) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001541) SELECT * FROM suppliers  + Supplier Columns (0.002686) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (wrong number of arguments (1 for 2)) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select('#items li').each do |value| puts value end %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:44:06) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.010331) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.006893) SELECT * FROM suppliers  + Supplier Columns (0.009146) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (undefined method `#items li' for #) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select('#items li', '#items li').each do |value| puts value end %> +29:

    + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1863:in `method_missing' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:349:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:349:in `value' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:340:in `value' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:300:in `to_select_tag' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:66:in `select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:347:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:46:12) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.004006) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001223) SELECT * FROM suppliers  + Supplier Columns (0.003362) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (wrong number of arguments (1 for 2)) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select('type').each do |value| puts value end %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:46:33) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003020) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001401) SELECT * FROM suppliers  + Supplier Columns (0.002969) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (wrong number of arguments (1 for 2)) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select('type').each do |value| puts value end %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:46:50) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003548) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.005026) SELECT * FROM suppliers  + Supplier Columns (0.004655) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (undefined method `merge' for "trois":String) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select('type', 'deux', 'trois').each do |value| puts value end %> +29:

    + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:347:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:47:01) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003221) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001212) SELECT * FROM suppliers  + Supplier Columns (0.003181) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02266) + Supplier Load (0.001949) SELECT * FROM suppliers  + + +ActionView::TemplateError (wrong argument type Fixnum (expected Module)) on line #8 of app/views/products/new.rhtml: +5: <% form_for(:product, :url => products_path) do |f| %> +6: +7: <%= render :partial => "form", :locals => { :f => f} %> +8: <%= f.select("type", Supplier.find(:all).collect {|p| [ p.code, p.id ] }, { :include_blank => true }) %> +9:

    +10: <%= submit_tag "Créer" %> +11:

    + + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:116:in `include?' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:116:in `options_for_select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:349:in `inject' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `inject' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:114:in `options_for_select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:302:in `to_select_tag' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:66:in `select' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:347:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:8:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:47:20) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.005226) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001577) SELECT * FROM suppliers  + Supplier Columns (0.003860) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02725) +Completed in 0.04879 (20 reqs/sec) | Rendering: 0.02674 (54%) | DB: 0.01700 (34%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:47:33) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003138) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001409) SELECT * FROM suppliers  + Supplier Columns (0.002898) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (undefined method `merge' for "trois":String) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select('type', 'deux', 'trois').each do |value| puts value end %> +29:

    + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:347:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:47:46) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.004730) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001533) SELECT * FROM suppliers  + Supplier Columns (0.003361) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (wrong number of arguments (1 for 2)) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select('type').each do |value| puts value end %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:48:59) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003792) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001275) SELECT * FROM suppliers  + Supplier Columns (0.002858) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (undefined method `merge' for "deux":String) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select("type", 'un', 'deux', 'trois') %> +29:

    + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_options_helper.rb:347:in `select' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:49:39) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003102) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +ERROR: compiling _run_rhtml_47app47views47products47_form46rhtml RAISED compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select("type", ('un', 'deux', 'trois')) ).to_s); _erbout.concat "\n" + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select("type", ('un', 'deux', 'trois')) ).to_s); _erbout.concat "\n" + ^ +Function body: def _run_rhtml_47app47views47products47_form46rhtml(local_assigns) +f = local_assigns[:f] +form = local_assigns[:form] +form_counter = local_assigns[:form_counter] +_erbout = ''; _erbout.concat "

    \n" +_erbout.concat " Designation
    \n" +_erbout.concat " "; _erbout.concat(( f.text_field :designation ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Description
    \n" +_erbout.concat " "; _erbout.concat(( f.text_area :description ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Cr\303\251e le
    \n" +_erbout.concat " "; _erbout.concat(( f.datetime_select :created_at ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Mis \303\240 jour le
    \n" +_erbout.concat " "; _erbout.concat(( f.datetime_select :updated_at ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Fournisseur
    \n" +_erbout.concat " "; _erbout.concat(( f.select("supplier_id", Supplier.find(:all).collect {|p| [ p.code, p.id ] }, { :include_blank => true }) ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Type de produit
    \n" +_erbout.concat " "; _erbout.concat(( f.select("type", ('un', 'deux', 'trois')) ).to_s); _erbout.concat "\n" +_erbout.concat "

    "; _erbout +end +Backtrace: /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:30:in `compile_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' +/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:95:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `each' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:23:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:82:in `start' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +./script/server:3 + + +ActionView::TemplateError (compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select("type", ('un', 'deux', 'trois')) ).to_s); _erbout.concat "\n" + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select("type", ('un', 'deux', 'trois')) ).to_s); _erbout.concat "\n" + ^) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select("type", ('un', 'deux', 'trois')) %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:30:in `compile_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:50:03) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003504) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +ERROR: compiling _run_rhtml_47app47views47products47_form46rhtml RAISED compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois')) ).to_s); _erbout.concat "\n" + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois')) ).to_s); _erbout.concat "\n" + ^ +Function body: def _run_rhtml_47app47views47products47_form46rhtml(local_assigns) +f = local_assigns[:f] +form = local_assigns[:form] +form_counter = local_assigns[:form_counter] +_erbout = ''; _erbout.concat "

    \n" +_erbout.concat " Designation
    \n" +_erbout.concat " "; _erbout.concat(( f.text_field :designation ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Description
    \n" +_erbout.concat " "; _erbout.concat(( f.text_area :description ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Cr\303\251e le
    \n" +_erbout.concat " "; _erbout.concat(( f.datetime_select :created_at ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Mis \303\240 jour le
    \n" +_erbout.concat " "; _erbout.concat(( f.datetime_select :updated_at ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Fournisseur
    \n" +_erbout.concat " "; _erbout.concat(( f.select("supplier_id", Supplier.find(:all).collect {|p| [ p.code, p.id ] }, { :include_blank => true }) ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Type de produit
    \n" +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois')) ).to_s); _erbout.concat "\n" +_erbout.concat "

    "; _erbout +end +Backtrace: /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:30:in `compile_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' +/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:95:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `each' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:23:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:82:in `start' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +./script/server:3 + + +ActionView::TemplateError (compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois')) ).to_s); _erbout.concat "\n" + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois')) ).to_s); _erbout.concat "\n" + ^) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select(('un', 'deux', 'trois')) %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:30:in `compile_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:50:57) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003314) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +ERROR: compiling _run_rhtml_47app47views47products47_form46rhtml RAISED compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect {|item| [ puts p ]}) ).to_s); _erbout.concat "\n" + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect {|item| [ puts p ]}) ).to_s); _erbout.concat "\n" + ^ +Function body: def _run_rhtml_47app47views47products47_form46rhtml(local_assigns) +f = local_assigns[:f] +form = local_assigns[:form] +form_counter = local_assigns[:form_counter] +_erbout = ''; _erbout.concat "

    \n" +_erbout.concat " Designation
    \n" +_erbout.concat " "; _erbout.concat(( f.text_field :designation ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Description
    \n" +_erbout.concat " "; _erbout.concat(( f.text_area :description ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Cr\303\251e le
    \n" +_erbout.concat " "; _erbout.concat(( f.datetime_select :created_at ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Mis \303\240 jour le
    \n" +_erbout.concat " "; _erbout.concat(( f.datetime_select :updated_at ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Fournisseur
    \n" +_erbout.concat " "; _erbout.concat(( f.select("supplier_id", Supplier.find(:all).collect {|p| [ p.code, p.id ] }, { :include_blank => true }) ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Type de produit
    \n" +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect {|item| [ puts p ]}) ).to_s); _erbout.concat "\n" +_erbout.concat "

    "; _erbout +end +Backtrace: /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:30:in `compile_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' +/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:95:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `each' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:23:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:82:in `start' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +./script/server:3 + + +ActionView::TemplateError (compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect {|item| [ puts p ]}) ).to_s); _erbout.concat "\n" + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect {|item| [ puts p ]}) ).to_s); _erbout.concat "\n" + ^) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select(('un', 'deux', 'trois').collect {|item| [ puts p ]}) %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:30:in `compile_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:51:11) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003319) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +ERROR: compiling _run_rhtml_47app47views47products47_form46rhtml RAISED compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect {|item| [ puts item ]}) ).to_s); _erbout.concat "\n" + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect {|item| [ puts item ]}) ).to_s); _erbout.concat "\n" + ^ +Function body: def _run_rhtml_47app47views47products47_form46rhtml(local_assigns) +f = local_assigns[:f] +form = local_assigns[:form] +form_counter = local_assigns[:form_counter] +_erbout = ''; _erbout.concat "

    \n" +_erbout.concat " Designation
    \n" +_erbout.concat " "; _erbout.concat(( f.text_field :designation ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Description
    \n" +_erbout.concat " "; _erbout.concat(( f.text_area :description ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Cr\303\251e le
    \n" +_erbout.concat " "; _erbout.concat(( f.datetime_select :created_at ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Mis \303\240 jour le
    \n" +_erbout.concat " "; _erbout.concat(( f.datetime_select :updated_at ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Fournisseur
    \n" +_erbout.concat " "; _erbout.concat(( f.select("supplier_id", Supplier.find(:all).collect {|p| [ p.code, p.id ] }, { :include_blank => true }) ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Type de produit
    \n" +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect {|item| [ puts item ]}) ).to_s); _erbout.concat "\n" +_erbout.concat "

    "; _erbout +end +Backtrace: /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:30:in `compile_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' +/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:95:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `each' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:23:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:82:in `start' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +./script/server:3 + + +ActionView::TemplateError (compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect {|item| [ puts item ]}) ).to_s); _erbout.concat "\n" + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect {|item| [ puts item ]}) ).to_s); _erbout.concat "\n" + ^) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select(('un', 'deux', 'trois').collect {|item| [ puts item ]}) %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:30:in `compile_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:51:45) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.005905) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new +ERROR: compiling _run_rhtml_47app47views47products47_form46rhtml RAISED compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect { puts item }) ).to_s); _erbout.concat "\n" + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect { puts item }) ).to_s); _erbout.concat "\n" + ^ +Function body: def _run_rhtml_47app47views47products47_form46rhtml(local_assigns) +f = local_assigns[:f] +form = local_assigns[:form] +form_counter = local_assigns[:form_counter] +_erbout = ''; _erbout.concat "

    \n" +_erbout.concat " Designation
    \n" +_erbout.concat " "; _erbout.concat(( f.text_field :designation ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Description
    \n" +_erbout.concat " "; _erbout.concat(( f.text_area :description ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Cr\303\251e le
    \n" +_erbout.concat " "; _erbout.concat(( f.datetime_select :created_at ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Mis \303\240 jour le
    \n" +_erbout.concat " "; _erbout.concat(( f.datetime_select :updated_at ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Fournisseur
    \n" +_erbout.concat " "; _erbout.concat(( f.select("supplier_id", Supplier.find(:all).collect {|p| [ p.code, p.id ] }, { :include_blank => true }) ).to_s); _erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat "\n" +_erbout.concat "

    \n" +_erbout.concat " Type de produit
    \n" +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect { puts item }) ).to_s); _erbout.concat "\n" +_erbout.concat "

    "; _erbout +end +Backtrace: /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:30:in `compile_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/1.8/benchmark.rb:293:in `measure' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' +/usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' +/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' +/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' +/usr/lib/ruby/1.8/webrick/server.rb:95:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `each' +/usr/lib/ruby/1.8/webrick/server.rb:92:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:23:in `start' +/usr/lib/ruby/1.8/webrick/server.rb:82:in `start' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' +/usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' +/usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' +/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' +./script/server:3 + + +ActionView::TemplateError (compile error +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect { puts item }) ).to_s); _erbout.concat "\n" + ^ +/home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28: syntax error, unexpected ',', expecting ')' +_erbout.concat " "; _erbout.concat(( f.select(('un', 'deux', 'trois').collect { puts item }) ).to_s); _erbout.concat "\n" + ^) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= f.select(('un', 'deux', 'trois').collect { puts item }) %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:30:in `compile_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:318:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:54:27) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003135) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.002214) SELECT * FROM suppliers  + Supplier Columns (0.002869) SHOW FIELDS FROM suppliers +Rendered products/_form (0.03367) +Completed in 0.05172 (19 reqs/sec) | Rendering: 0.03293 (63%) | DB: 0.00822 (15%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:54:53) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003513) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001495) SELECT * FROM suppliers  + Supplier Columns (0.003002) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02667) +Completed in 0.04367 (22 reqs/sec) | Rendering: 0.02586 (59%) | DB: 0.00801 (18%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:55:23) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003168) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001185) SELECT * FROM suppliers  + Supplier Columns (0.002923) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (undefined method `stringify_keys' for "":String) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= select_tag "un", "", "" %> +29:

    + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_tag_helper.rb:82:in `select_tag' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:55:38) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003189) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001477) SELECT * FROM suppliers  + Supplier Columns (0.003524) SHOW FIELDS FROM suppliers + + +ActionView::TemplateError (wrong number of arguments (4 for 3)) on line #28 of app/views/products/_form.rhtml: +25: +26:

    +27: Type de produit
    +28: <%= select_tag "un", "", "deux", "" %> +29:

    + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `select_tag' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/_form.rhtml:28:in `_run_rhtml_47app47views47products47_form46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:275:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:59:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/1.8/benchmark.rb:307:in `realtime' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:26:in `benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/partials.rb:58:in `render_partial' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:287:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:7:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:151:in `fields_for' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/helpers/form_helper.rb:127:in `form_for' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/new.rhtml:5:in `_run_rhtml_47app47views47products47new46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:717:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:247:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1102:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:55:56) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.010472) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001467) SELECT * FROM suppliers  + Supplier Columns (0.003033) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02335) +Completed in 0.04633 (21 reqs/sec) | Rendering: 0.02272 (49%) | DB: 0.01997 (43%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:58:13) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.010272) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001488) SELECT * FROM suppliers  + Supplier Columns (0.004159) SHOW FIELDS FROM suppliers +Rendered products/_form (0.09630) +Completed in 0.14510 (6 reqs/sec) | Rendering: 0.12026 (82%) | DB: 0.01592 (10%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 10:58:32) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003125) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001338) SELECT * FROM suppliers  + Supplier Columns (0.002733) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02533) +Completed in 0.04036 (24 reqs/sec) | Rendering: 0.02435 (60%) | DB: 0.00720 (17%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 11:04:57) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003487) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001349) SELECT * FROM suppliers  + Supplier Columns (0.002748) SHOW FIELDS FROM suppliers +Rendered products/_form (0.04357) +Completed in 0.15517 (6 reqs/sec) | Rendering: 0.06784 (43%) | DB: 0.00758 (4%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#create (for 127.0.0.1 at 2007-11-06 11:05:14) [POST] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"commit"=>"Créer", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"VRose", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"10", "updated_at(5i)"=>"47", "created_at(4i)"=>"10", "created_at(5i)"=>"47", "description"=>"Voiture Rose", "supplier_id"=>"1"}, "type"=>"voiture", "action"=>"create", "controller"=>"products"} + Product Columns (0.003321) SHOW FIELDS FROM products + SQL (0.000403) BEGIN + SQL (0.000960) INSERT INTO products (`designation`, `updated_at`, `type`, `customer_id`, `description`, `supplier_id`, `created_at`) VALUES('VRose', '2007-11-06 11:05:14', NULL, NULL, 'Voiture Rose', 1, '2007-11-06 10:47:00') + SQL (0.008640) COMMIT +Redirected to http://localhost:11114/products/6 +Completed in 0.03068 (32 reqs/sec) | DB: 0.01332 (43%) | 302 Found [http://localhost/products] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 11:05:14) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"6", "controller"=>"products"} + Product Columns (0.003081) SHOW FIELDS FROM products + Product Load (0.002202) SELECT * FROM products WHERE (products.`id` = 6)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.12667 (7 reqs/sec) | Rendering: 0.01271 (10%) | DB: 0.00528 (4%) | 200 OK [http://localhost/products/6] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:05:45) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002058) SELECT * FROM products  + Product Columns (0.002957) SHOW FIELDS FROM products + + +ActiveRecord::SubclassNotFound (The single-table inheritance mechanism failed to locate the subclass: 'beurre'. This error is raised because the column 'type' is reserved for storing the class in case of inheritance. Please rename this column if you didn't intend it to be used for storing the inheritance class or overwrite Product.inheritance_column to use another column for that information.): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1068:in `instantiate_without_callbacks' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/callbacks.rb:204:in `instantiate' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `collect!' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:8:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:06:18) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001446) SELECT * FROM products  + Product Columns (0.002967) SHOW FIELDS FROM products + + +ActiveRecord::SubclassNotFound (The single-table inheritance mechanism failed to locate the subclass: 'beurre'. This error is raised because the column 'type' is reserved for storing the class in case of inheritance. Please rename this column if you didn't intend it to be used for storing the inheritance class or overwrite Product.inheritance_column to use another column for that information.): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1068:in `instantiate_without_callbacks' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/callbacks.rb:204:in `instantiate' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `collect!' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:8:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:06:23) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.010189) SELECT * FROM products  + Product Columns (0.003049) SHOW FIELDS FROM products + + +ActiveRecord::SubclassNotFound (The single-table inheritance mechanism failed to locate the subclass: 'beurre'. This error is raised because the column 'type' is reserved for storing the class in case of inheritance. Please rename this column if you didn't intend it to be used for storing the inheritance class or overwrite Product.inheritance_column to use another column for that information.): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1068:in `instantiate_without_callbacks' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/callbacks.rb:204:in `instantiate' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `collect!' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:8:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:08:37) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002317) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003166) SHOW FIELDS FROM products +Completed in 0.03058 (32 reqs/sec) | Rendering: 0.01373 (44%) | DB: 0.02815 (92%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 11:08:49) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.002943) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001155) SELECT * FROM suppliers  + Supplier Columns (0.002614) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02390) +Completed in 0.04040 (24 reqs/sec) | Rendering: 0.02360 (58%) | DB: 0.00671 (16%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#create (for 127.0.0.1 at 2007-11-06 11:09:07) [POST] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"commit"=>"Créer", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"VVerte", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"11", "updated_at(5i)"=>"08", "created_at(4i)"=>"11", "created_at(5i)"=>"08", "description"=>"Velo Verte", "supplier_id"=>"2"}, "type"=>"velo", "action"=>"create", "controller"=>"products"} + Product Columns (0.003000) SHOW FIELDS FROM products + SQL (0.001036) BEGIN + SQL (0.000802) INSERT INTO products (`designation`, `updated_at`, `type`, `customer_id`, `description`, `supplier_id`, `created_at`) VALUES('VVerte', '2007-11-06 11:09:07', NULL, NULL, 'Velo Verte', 2, '2007-11-06 11:08:00') + SQL (0.004460) COMMIT +Redirected to http://localhost:11114/products/7 +Completed in 0.02622 (38 reqs/sec) | DB: 0.00930 (35%) | 302 Found [http://localhost/products] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 11:09:07) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"7", "controller"=>"products"} + Product Columns (0.002948) SHOW FIELDS FROM products + Product Load (0.001737) SELECT * FROM products WHERE (products.`id` = 7)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.02030 (49 reqs/sec) | Rendering: 0.00546 (26%) | DB: 0.00468 (23%) | 200 OK [http://localhost/products/7] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-11-06 11:11:36) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"edit", "id"=>"7", "controller"=>"products"} + Product Columns (0.002976) SHOW FIELDS FROM products + Product Load (0.001974) SELECT * FROM products WHERE (products.`id` = 7)  +Rendering within layouts/application +Rendering products/edit + Supplier Load (0.001640) SELECT * FROM suppliers  + Supplier Columns (0.005378) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02775) +Completed in 0.05230 (19 reqs/sec) | Rendering: 0.02993 (57%) | DB: 0.01197 (22%) | 200 OK [http://localhost/products/7/edit] + + +Processing ProductsController#update (for 127.0.0.1 at 2007-11-06 11:11:44) [PUT] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"commit"=>"Mise à jour", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"VVerte", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"11", "updated_at(5i)"=>"09", "created_at(4i)"=>"11", "created_at(5i)"=>"08", "description"=>"Velo Verte", "supplier_id"=>"2"}, "_method"=>"put", "type"=>"velo", "action"=>"update", "id"=>"7", "controller"=>"products"} + Product Columns (0.008739) SHOW FIELDS FROM products + Product Load (0.007051) SELECT * FROM products WHERE (products.`id` = 7)  + SQL (0.003114) BEGIN + Product Update (0.006262) UPDATE products SET `created_at` = '2007-11-06 11:08:00', `supplier_id` = 2, `designation` = 'VVerte', `customer_id` = NULL, `type` = 'velo', `description` = 'Velo Verte', `updated_at` = '2007-11-06 11:11:44' WHERE `id` = 7 + SQL (0.012456) COMMIT +Redirected to http://localhost:11114/products/7 +Completed in 0.06052 (16 reqs/sec) | DB: 0.03762 (62%) | 302 Found [http://localhost/products/7] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 11:11:44) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"7", "controller"=>"products"} + Product Columns (0.003677) SHOW FIELDS FROM products + Product Load (0.002218) SELECT * FROM products WHERE (products.`id` = 7)  + + +ActiveRecord::SubclassNotFound (The single-table inheritance mechanism failed to locate the subclass: 'velo'. This error is raised because the column 'type' is reserved for storing the class in case of inheritance. Please rename this column if you didn't intend it to be used for storing the inheritance class or overwrite Product.inheritance_column to use another column for that information.): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1068:in `instantiate_without_callbacks' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/callbacks.rb:204:in `instantiate' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `collect!' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1028:in `find_one' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1014:in `find_from_ids' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:419:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:19:in `show' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 11:12:33) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"7", "controller"=>"products"} + Product Columns (0.003460) SHOW FIELDS FROM products + Product Load (0.001288) SELECT * FROM products WHERE (products.`id` = 7)  + + +ActiveRecord::SubclassNotFound (The single-table inheritance mechanism failed to locate the subclass: 'velo'. This error is raised because the column 'type' is reserved for storing the class in case of inheritance. Please rename this column if you didn't intend it to be used for storing the inheritance class or overwrite Product.inheritance_column to use another column for that information.): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1068:in `instantiate_without_callbacks' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/callbacks.rb:204:in `instantiate' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `collect!' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1028:in `find_one' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1014:in `find_from_ids' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:419:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:19:in `show' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:13:33) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002205) SELECT * FROM products  + Product Columns (0.002913) SHOW FIELDS FROM products + + +ActiveRecord::SubclassNotFound (The single-table inheritance mechanism failed to locate the subclass: 'velo'. This error is raised because the column 'type' is reserved for storing the class in case of inheritance. Please rename this column if you didn't intend it to be used for storing the inheritance class or overwrite Product.inheritance_column to use another column for that information.): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1068:in `instantiate_without_callbacks' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/callbacks.rb:204:in `instantiate' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `collect!' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:427:in `find_by_sql' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:997:in `find_every' + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:418:in `find' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:8:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:14:00) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002022) SELECT * FROM products  + Product Columns (0.002782) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.13165 (7 reqs/sec) | Rendering: 0.01249 (9%) | DB: 0.02056 (15%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 11:14:06) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.004510) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001603) SELECT * FROM suppliers  + Supplier Columns (0.003156) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02656) +Completed in 0.06139 (16 reqs/sec) | Rendering: 0.02904 (47%) | DB: 0.00927 (15%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#create (for 127.0.0.1 at 2007-11-06 11:14:13) [POST] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"commit"=>"Créer", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"qsdqsdqsdqs", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"11", "updated_at(5i)"=>"14", "created_at(4i)"=>"11", "created_at(5i)"=>"14", "description"=>"dqsd", "supplier_id"=>"1"}, "type"=>"Velo", "action"=>"create", "controller"=>"products"} + Product Columns (0.003726) SHOW FIELDS FROM products + SQL (0.000529) BEGIN + SQL (0.000936) INSERT INTO products (`designation`, `updated_at`, `type`, `customer_id`, `description`, `supplier_id`, `created_at`) VALUES('qsdqsdqsdqs', '2007-11-06 11:14:14', NULL, NULL, 'dqsd', 1, '2007-11-06 11:14:00') + SQL (0.007322) COMMIT +Redirected to http://localhost:11114/products/8 +Completed in 0.03307 (30 reqs/sec) | DB: 0.01251 (37%) | 302 Found [http://localhost/products] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 11:14:14) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"8", "controller"=>"products"} + Product Columns (0.003605) SHOW FIELDS FROM products + Product Load (0.002069) SELECT * FROM products WHERE (products.`id` = 8)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.02069 (48 reqs/sec) | Rendering: 0.00437 (21%) | DB: 0.00567 (27%) | 200 OK [http://localhost/products/8] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:14:17) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002151) SELECT * FROM products  + Product Columns (0.003406) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.14059 (7 reqs/sec) | Rendering: 0.11973 (85%) | DB: 0.00556 (3%) | 200 OK [http://localhost/products] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-11-06 11:14:49) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"edit", "id"=>"8", "controller"=>"products"} + Product Columns (0.002876) SHOW FIELDS FROM products + Product Load (0.001175) SELECT * FROM products WHERE (products.`id` = 8)  +Rendering within layouts/application +Rendering products/edit + Supplier Load (0.001183) SELECT * FROM suppliers  + Supplier Columns (0.002550) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02280) +Completed in 0.04335 (23 reqs/sec) | Rendering: 0.02376 (54%) | DB: 0.00778 (17%) | 200 OK [http://localhost/products/8/edit] + + +Processing ProductsController#update (for 127.0.0.1 at 2007-11-06 11:14:53) [PUT] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"commit"=>"Mise à jour", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"qsdqsdqsdqs", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"11", "updated_at(5i)"=>"14", "created_at(4i)"=>"11", "created_at(5i)"=>"14", "description"=>"dqsd", "supplier_id"=>"1"}, "_method"=>"put", "type"=>"Voiture", "action"=>"update", "id"=>"8", "controller"=>"products"} + Product Columns (0.002999) SHOW FIELDS FROM products + Product Load (0.001221) SELECT * FROM products WHERE (products.`id` = 8)  + SQL (0.000484) BEGIN + Product Update (0.001577) UPDATE products SET `created_at` = '2007-11-06 11:14:00', `supplier_id` = 1, `designation` = 'qsdqsdqsdqs', `customer_id` = NULL, `type` = 'Voiture', `description` = 'dqsd', `updated_at` = '2007-11-06 11:14:53' WHERE `id` = 8 + SQL (0.095167) COMMIT +Redirected to http://localhost:11114/products/8 +Completed in 0.24614 (4 reqs/sec) | DB: 0.10145 (41%) | 302 Found [http://localhost/products/8] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 11:14:54) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"8", "controller"=>"products"} + Product Columns (0.003524) SHOW FIELDS FROM products + Product Load (0.002283) SELECT * FROM products WHERE (products.`id` = 8)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show + Voiture Columns (0.003729) SHOW FIELDS FROM products +Completed in 0.04041 (24 reqs/sec) | Rendering: 0.00771 (19%) | DB: 0.00954 (23%) | 200 OK [http://localhost/products/8] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:15:14) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002053) SELECT * FROM products  + Product Columns (0.002784) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.14122 (7 reqs/sec) | Rendering: 0.11409 (80%) | DB: 0.00484 (3%) | 200 OK [http://localhost/products] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 11:16:11) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"products"} + Product Columns (0.003520) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering products/new + Supplier Load (0.001333) SELECT * FROM suppliers  + Supplier Columns (0.003934) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02441) +Completed in 0.04297 (23 reqs/sec) | Rendering: 0.02440 (56%) | DB: 0.00879 (20%) | 200 OK [http://localhost/products/new] + + +Processing ProductsController#create (for 127.0.0.1 at 2007-11-06 11:16:19) [POST] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"commit"=>"Créer", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"fsfshtrtgregs", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"11", "updated_at(5i)"=>"16", "created_at(4i)"=>"11", "created_at(5i)"=>"16", "description"=>"dqsdqsdqsd", "supplier_id"=>"1"}, "type"=>"Voiture", "action"=>"create", "controller"=>"products"} + Product Columns (0.003596) SHOW FIELDS FROM products + SQL (0.000409) BEGIN + SQL (0.000931) INSERT INTO products (`designation`, `updated_at`, `type`, `customer_id`, `description`, `supplier_id`, `created_at`) VALUES('fsfshtrtgregs', '2007-11-06 11:16:19', 'Voiture', NULL, 'dqsdqsdqsd', 1, '2007-11-06 11:16:00') + SQL (0.005182) COMMIT +Redirected to http://localhost:11114/products/9 +Completed in 0.03251 (30 reqs/sec) | DB: 0.01012 (31%) | 302 Found [http://localhost/products] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 11:16:19) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"9", "controller"=>"products"} + Product Columns (0.003383) SHOW FIELDS FROM products + Product Load (0.001971) SELECT * FROM products WHERE (products.`id` = 9)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show + Voiture Columns (0.002985) SHOW FIELDS FROM products +Completed in 0.03085 (32 reqs/sec) | Rendering: 0.00677 (21%) | DB: 0.00834 (27%) | 200 OK [http://localhost/products/9] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:16:38) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.003564) SELECT * FROM products  + Product Columns (0.003138) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.04882 (20 reqs/sec) | Rendering: 0.01865 (38%) | DB: 0.00670 (13%) | 200 OK [http://localhost/products] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-11-06 11:16:41) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"edit", "id"=>"6", "controller"=>"products"} + Product Columns (0.003296) SHOW FIELDS FROM products + Product Load (0.003850) SELECT * FROM products WHERE (products.`id` = 6)  +Rendering within layouts/application +Rendering products/edit + Supplier Load (0.001528) SELECT * FROM suppliers  + Supplier Columns (0.004464) SHOW FIELDS FROM suppliers +Rendered products/_form (0.02459) +Completed in 0.04764 (20 reqs/sec) | Rendering: 0.02322 (48%) | DB: 0.01314 (27%) | 200 OK [http://localhost/products/6/edit] + + +Processing ProductsController#update (for 127.0.0.1 at 2007-11-06 11:16:45) [PUT] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"commit"=>"Mise à jour", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"VRose", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"11", "updated_at(5i)"=>"05", "created_at(4i)"=>"10", "created_at(5i)"=>"47", "description"=>"Voiture Rose", "supplier_id"=>"1"}, "_method"=>"put", "type"=>"Voiture", "action"=>"update", "id"=>"6", "controller"=>"products"} + Product Columns (0.002958) SHOW FIELDS FROM products + Product Load (0.001671) SELECT * FROM products WHERE (products.`id` = 6)  + SQL (0.000368) BEGIN + Product Update (0.001148) UPDATE products SET `created_at` = '2007-11-06 10:47:00', `supplier_id` = 1, `designation` = 'VRose', `customer_id` = NULL, `type` = 'Voiture', `description` = 'Voiture Rose', `updated_at` = '2007-11-06 11:16:45' WHERE `id` = 6 + SQL (0.007881) COMMIT +Redirected to http://localhost:11114/products/6 +Completed in 0.03049 (32 reqs/sec) | DB: 0.01403 (46%) | 302 Found [http://localhost/products/6] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 11:16:45) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"6", "controller"=>"products"} + Product Columns (0.005163) SHOW FIELDS FROM products + Product Load (0.005842) SELECT * FROM products WHERE (products.`id` = 6)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show + Voiture Columns (0.009963) SHOW FIELDS FROM products +Completed in 0.04315 (23 reqs/sec) | Rendering: 0.00497 (11%) | DB: 0.02097 (48%) | 200 OK [http://localhost/products/6] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:16:48) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002975) SELECT * FROM products  + Product Columns (0.003308) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.04547 (21 reqs/sec) | Rendering: 0.01813 (39%) | DB: 0.00628 (13%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:18:23) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001837) SELECT * FROM products  + Product Columns (0.003135) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.04770 (20 reqs/sec) | Rendering: 0.02142 (44%) | DB: 0.00497 (10%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:19:03) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002027) SELECT * FROM products  + Product Columns (0.002910) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.04196 (23 reqs/sec) | Rendering: 0.01830 (43%) | DB: 0.00494 (11%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:28:55) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + SQL (0.000360) SET NAMES 'utf8' + SQL (0.000299) SET SQL_AUTO_IS_NULL=0 + Product Load (0.002440) SELECT * FROM products  + Product Columns (0.003447) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.09177 (10 reqs/sec) | Rendering: 0.02400 (26%) | DB: 0.00655 (7%) | 200 OK [http://localhost/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:31:41) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.004461) SELECT * FROM products  + Product Columns (0.003214) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.14120 (7 reqs/sec) | Rendering: 0.01730 (12%) | DB: 0.00767 (5%) | 200 OK [http://localhost/] + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 11:51:15) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/users/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing UtilisateursController#index (for 127.0.0.1 at 2007-11-06 11:51:23) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"utilisateurs"} + + +ActionController::UnknownAction (No action responded to index): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:51:32) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.009189) SELECT * FROM products  + Product Columns (0.003027) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.07803 (12 reqs/sec) | Rendering: 0.03704 (47%) | DB: 0.01222 (15%) | 200 OK [http://localhost/] + + +Processing SessionsController#index (for 127.0.0.1 at 2007-11-06 11:52:17) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"sessions"} + + +ActionController::UnknownAction (No action responded to index): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#show (for 127.0.0.1 at 2007-11-06 11:52:23) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "controller"=>"session"} + + +NameError (uninitialized constant SessionController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing SessionsController#index (for 127.0.0.1 at 2007-11-06 11:52:28) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"sessions"} + + +ActionController::UnknownAction (No action responded to index): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + SQL (0.000412) SET NAMES 'utf8' + SQL (0.000378) SET SQL_AUTO_IS_NULL=0 + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000000) Mysql::Error: #42S01Table 'schema_info' already exists: CREATE TABLE schema_info (version int(11)) + SQL (0.000937) SELECT version FROM schema_info + SQL (0.000442) SELECT version FROM schema_info + SQL (0.000401) SELECT version FROM schema_info + SQL (0.000508) SELECT version FROM schema_info + SQL (0.000506) SELECT version FROM schema_info + SQL (0.000418) SELECT version FROM schema_info +Migrating to CreateUtilisateurs (6) + SQL (0.000000) Mysql::Error: #42S02Unknown table 'utilisateurs': DROP TABLE utilisateurs + SQL (0.035062) CREATE TABLE utilisateurs (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `login` varchar(255) DEFAULT NULL, `email` varchar(255) DEFAULT NULL, `crypted_password` varchar(40) DEFAULT NULL, `salt` varchar(40) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `remember_token` varchar(255) DEFAULT NULL, `remember_token_expires_at` datetime DEFAULT NULL, `activation_code` varchar(40) DEFAULT NULL, `activated_at` datetime DEFAULT NULL) ENGINE=InnoDB + SQL (0.001393) UPDATE schema_info SET version = 6 + SQL (0.000854) SELECT * FROM schema_info + SQL (0.000864) SHOW TABLES + SQL (0.002439) SHOW FIELDS FROM addresses + SQL (0.001914) SHOW KEYS FROM addresses + SQL (0.002150) SHOW FIELDS FROM customers + SQL (0.001815) SHOW KEYS FROM customers + SQL (0.002668) SHOW FIELDS FROM products + SQL (0.001922) SHOW KEYS FROM products + SQL (0.003099) SHOW FIELDS FROM suppliers + SQL (0.001876) SHOW KEYS FROM suppliers + SQL (0.003208) SHOW FIELDS FROM utilisateurs + SQL (0.001987) SHOW KEYS FROM utilisateurs + SQL (0.000327) SET NAMES 'utf8' + SQL (0.000277) SET SQL_AUTO_IS_NULL=0 + + +Processing UtilisateursController#index (for 127.0.0.1 at 2007-11-06 11:55:23) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"utilisateurs"} + + +ActionController::UnknownAction (No action responded to index): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing SessionsController#index (for 127.0.0.1 at 2007-11-06 11:55:32) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"sessions"} + + +ActionController::UnknownAction (No action responded to index): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 11:56:10) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002248) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.004310) SHOW FIELDS FROM products +Completed in 0.03112 (32 reqs/sec) | Rendering: 0.01243 (39%) | DB: 0.00656 (21%) | 200 OK [http://localhost/] + + +Processing UtilisateursController#show (for 127.0.0.1 at 2007-11-06 11:56:17) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"olivier", "controller"=>"utilisateurs"} + + +ActionController::UnknownAction (No action responded to show): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing UtilisateursController#show (for 127.0.0.1 at 2007-11-06 11:56:20) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"show", "id"=>"olivier", "controller"=>"utilisateurs"} + + +ActionController::UnknownAction (No action responded to show): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing UtilisateursController#index (for 127.0.0.1 at 2007-11-06 11:56:24) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"utilisateurs"} + + +ActionController::UnknownAction (No action responded to index): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing UtilisateursController#new (for 127.0.0.1 at 2007-11-06 11:56:58) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"utilisateurs"} +Rendering within layouts/application +Rendering utilisateurs/new +Completed in 0.00619 (161 reqs/sec) | Rendering: 0.00479 (77%) | DB: 0.00000 (0%) | 200 OK [http://localhost/utilisateurs/new] + + +Processing SessionsController#index (for 127.0.0.1 at 2007-11-06 11:57:11) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"index", "controller"=>"sessions"} + + +ActionController::UnknownAction (No action responded to index): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 11:57:16) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.00795 (125 reqs/sec) | Rendering: 0.00649 (81%) | DB: 0.00000 (0%) | 200 OK [http://localhost/sessions/new] + + +Processing ApplicationController#create (for 127.0.0.1 at 2007-11-06 11:57:28) [POST] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"commit"=>"Log in", "action"=>"create", "controller"=>"session", "login"=>"olivier", "password"=>"test"} + + +NameError (uninitialized constant SessionController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 12:13:04) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.05997 (16 reqs/sec) | Rendering: 0.05855 (97%) | DB: 0.00000 (0%) | 200 OK [http://localhost/sessions/new] + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 12:14:31) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/utilisateurs_mailer/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 12:14:35) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/utilisateurs_mailer/activation" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 12:14:45) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/utilisateur_mailer/activation" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 12:14:49) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/utilisateur_mailer/activation.html" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 12:14:52) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/utilisateur_mailer/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 12:15:03) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/utilisateur_mailer/signup_notification" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 12:15:47) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/utilisateur/nex" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 12:15:49) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {} + + +ActionController::RoutingError (no route found to match "/utilisateur/new" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing UtilisateursController#new (for 127.0.0.1 at 2007-11-06 12:15:53) [GET] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"action"=>"new", "controller"=>"utilisateurs"} +Rendering within layouts/application +Rendering utilisateurs/new +Completed in 0.00683 (146 reqs/sec) | Rendering: 0.00542 (79%) | DB: 0.00000 (0%) | 200 OK [http://localhost/utilisateurs/new] + + +Processing UtilisateursController#create (for 127.0.0.1 at 2007-11-06 12:16:16) [POST] + Session ID: 4ca903d6db3dddd66b913b2e80750eee + Parameters: {"commit"=>"Sign up", "utilisateur"=>{"password_confirmation"=>"test", "password"=>"test", "login"=>"blanko", "email"=>"blanko@pasmoi.org"}, "action"=>"create", "controller"=>"utilisateurs"} +Cookie set: auth_token=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT + Utilisateur Columns (0.003419) SHOW FIELDS FROM utilisateurs + SQL (0.000416) BEGIN + Utilisateur Load (0.002065) SELECT * FROM utilisateurs WHERE (LOWER(utilisateurs.login) = 'blanko') LIMIT 1 + Utilisateur Load (0.002168) SELECT * FROM utilisateurs WHERE (LOWER(utilisateurs.email) = 'blanko@pasmoi.org') LIMIT 1 + SQL (0.000989) INSERT INTO utilisateurs (`salt`, `activated_at`, `updated_at`, `crypted_password`, `activation_code`, `remember_token_expires_at`, `remember_token`, `login`, `created_at`, `email`) VALUES('741c33c433ee875edd5f31e5f9c46c08def6dfd8', NULL, '2007-11-06 12:16:16', '75ee0eb7079afd6e2bc728a33b8f082f9d406511', 'c365ab1447f38daa7b11c22788036a68128eecf5', NULL, NULL, 'blanko', '2007-11-06 12:16:16', 'blanko@pasmoi.org') + SQL (0.013961) COMMIT +Redirected to http://localhost:11114/ +Completed in 0.06850 (14 reqs/sec) | DB: 0.02302 (33%) | 302 Found [http://localhost/utilisateurs] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 12:16:16) [GET] + Session ID: 18c6bbce4da78570655b8fc6cab3ecdb + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001237) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003026) SHOW FIELDS FROM products +Completed in 0.05551 (18 reqs/sec) | Rendering: 0.03792 (68%) | DB: 0.00426 (7%) | 200 OK [http://localhost/] + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 12:16:26) [GET] + Session ID: 18c6bbce4da78570655b8fc6cab3ecdb + Parameters: {} + + +ActionController::RoutingError (no route found to match "/signin" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:23:59) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:24:04) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:24:13) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:27:00) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:27:50) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:27:54) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:28:05) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:28:09) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:28:13) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:29:40) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:29:44) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:29:50) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:30:32) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:30:58) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:31:21) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:32:22) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +MissingSourceFile (no such file to load -- application.rb): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:33:01) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +NoMethodError (undefined method `helper_method' for Object:Class): + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `send' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `included' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5:in `include' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:33:08) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +NoMethodError (undefined method `helper_method' for Object:Class): + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `send' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `included' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5:in `include' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:33:26) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +NoMethodError (undefined method `helper_method' for Object:Class): + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `send' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `included' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5:in `include' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 12:33:32) [GET] + Session ID: be925434e43b3f716983f11c18035e03 + Parameters: {} + + +NoMethodError (undefined method `helper_method' for Object:Class): + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `send' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `included' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5:in `include' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 13:37:09) [GET] + Session ID: d61f22333d3ea07ba69ce64c5909be4a + Parameters: {} + + +NoMethodError (undefined method `helper_method' for Object:Class): + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `send' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `included' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5:in `include' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 13:37:48) [GET] + Session ID: d61f22333d3ea07ba69ce64c5909be4a + Parameters: {} + + +NoMethodError (undefined method `helper_method' for Object:Class): + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `send' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `included' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5:in `include' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 13:37:50) [GET] + Session ID: d61f22333d3ea07ba69ce64c5909be4a + Parameters: {} + + +NoMethodError (undefined method `helper_method' for Object:Class): + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `send' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:95:in `included' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5:in `include' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/application.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:60:in `depend_on' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:442:in `require_dependency' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:109:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing UtilisateursController#new (for 127.0.0.1 at 2007-11-06 13:38:41) [GET] + Session ID: 7630917c8a378a99e6812a3ac83a688f + Parameters: {"action"=>"new", "controller"=>"utilisateurs"} +Rendering within layouts/application +Rendering utilisateurs/new +Completed in 0.01195 (83 reqs/sec) | Rendering: 0.01026 (85%) | 200 OK [http://localhost/utilisateurs/new] + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:38:47) [GET] + Session ID: 7630917c8a378a99e6812a3ac83a688f + Parameters: {"action"=>"index", "controller"=>"products"} + + +NameError (uninitialized constant ProductsController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:38:51) [GET] + Session ID: 7630917c8a378a99e6812a3ac83a688f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + + +NameError (uninitialized constant AdminController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:248:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing UtilisateursController#new (for 127.0.0.1 at 2007-11-06 13:39:02) [GET] + Session ID: 7630917c8a378a99e6812a3ac83a688f + Parameters: {"action"=>"new", "controller"=>"utilisateurs"} +Rendering within layouts/application +Rendering utilisateurs/new +Completed in 0.00402 (248 reqs/sec) | Rendering: 0.00282 (69%) | 200 OK [http://localhost/utilisateurs/new] + + +Processing UtilisateursController#create (for 127.0.0.1 at 2007-11-06 13:39:17) [POST] + Session ID: 7630917c8a378a99e6812a3ac83a688f + Parameters: {"commit"=>"Sign up", "utilisateur"=>{"password_confirmation"=>"test", "password"=>"test", "login"=>"Moi", "email"=>"moi@pastoi.moi"}, "action"=>"create", "controller"=>"utilisateurs"} +Cookie set: auth_token=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT + SQL (0.000351) SET NAMES 'utf8' + SQL (0.000292) SET SQL_AUTO_IS_NULL=0 + Utilisateur Columns (0.003063) SHOW FIELDS FROM utilisateurs + SQL (0.000401) BEGIN + Utilisateur Load (0.001789) SELECT * FROM utilisateurs WHERE (LOWER(utilisateurs.login) = 'moi') LIMIT 1 + Utilisateur Load (0.001539) SELECT * FROM utilisateurs WHERE (LOWER(utilisateurs.email) = 'moi@pastoi.moi') LIMIT 1 + SQL (0.000795) INSERT INTO utilisateurs (`salt`, `activated_at`, `updated_at`, `crypted_password`, `activation_code`, `remember_token_expires_at`, `remember_token`, `login`, `created_at`, `email`) VALUES('9c13f8fab720a756059dec56f4fd3bf4b8024ef2', NULL, '2007-11-06 13:39:17', 'a3d8bf32b2c7b540570240c8bde4ee9e4d4dc097', '81417b582efe77e0d274803af0df964f6104890d', NULL, NULL, 'Moi', '2007-11-06 13:39:17', 'moi@pastoi.moi') + SQL (0.007543) COMMIT +Redirected to http://localhost:11134/ +Completed in 0.07903 (12 reqs/sec) | DB: 0.01577 (19%) | 302 Found [http://localhost/utilisateurs] + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:39:17) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +NameError (uninitialized constant ProductsController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:40:27) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + + +NameError (uninitialized constant AdminController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:248:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:43:16) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + + +NameError (uninitialized constant AdminController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:248:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing SessionsController#index (for 127.0.0.1 at 2007-11-06 13:45:45) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"sessions"} + + +ActionController::UnknownAction (No action responded to index): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 13:45:49) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.00828 (120 reqs/sec) | Rendering: 0.00696 (84%) | DB: 0.00000 (0%) | 200 OK [http://localhost/sessions/new] + + +Processing SessionsController#create (for 127.0.0.1 at 2007-11-06 13:45:58) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Log in", "action"=>"create", "controller"=>"sessions", "login"=>"Moi", "password"=>"test"} + Utilisateur Load (0.002243) SELECT * FROM utilisateurs WHERE (login = 'Moi' and activated_at IS NOT NULL) LIMIT 1 +Rendering layoutfalseactionnew within layouts/application +Rendering sessions/new +Completed in 0.03733 (26 reqs/sec) | Rendering: 0.00378 (10%) | DB: 0.00224 (6%) | 200 OK [http://localhost/session] + + +Processing SessionsController#create (for 127.0.0.1 at 2007-11-06 13:46:05) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Log in", "action"=>"create", "controller"=>"sessions", "login"=>"olivier", "password"=>"test"} + Utilisateur Load (0.002426) SELECT * FROM utilisateurs WHERE (login = 'olivier' and activated_at IS NOT NULL) LIMIT 1 + Utilisateur Columns (0.003411) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002154) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 +Redirected to http://localhost:11134/ +Completed in 0.02377 (42 reqs/sec) | DB: 0.00799 (33%) | 302 Found [http://localhost/session] + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:46:05) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +NameError (uninitialized constant ProductsController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:46:18) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + + +NameError (uninitialized constant AdminController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:5 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:203:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:202:in `load_file' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:94:in `require_or_load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:248:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:48:06) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + + +LoadError (Expected /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb to define Admin::ProductsController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:249:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 13:49:55) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003183) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001504) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001923) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application + + +ActionController::MissingTemplate (Missing template /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1211:in `assert_existence_of_template_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:810:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 13:50:55) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003799) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001853) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001520) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + Product Columns (0.003016) SHOW FIELDS FROM products +Completed in 0.05356 (18 reqs/sec) | Rendering: 0.01415 (26%) | DB: 0.01019 (19%) | 200 OK [http://localhost/admin/products/] + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-11-06 13:51:04) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-11-06 13:51:08) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 13:52:05) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003139) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001592) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + + +LoadError (Expected /home/3dossmanno/P5b/ruby/mon_projet/app/models/admin/product.rb to define Admin::Product): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:249:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:260:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:468:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:9:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 13:53:17) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003181) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001602) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001316) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + Product Columns (0.002917) SHOW FIELDS FROM products +Completed in 0.03532 (28 reqs/sec) | Rendering: 0.00922 (26%) | DB: 0.01375 (38%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 13:55:14) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003212) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001510) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001162) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.02826 (35 reqs/sec) | Rendering: 0.00699 (24%) | DB: 0.00588 (20%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 13:55:20) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.004086) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001521) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001206) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.03003 (33 reqs/sec) | Rendering: 0.00747 (24%) | DB: 0.00681 (22%) | 200 OK [http://localhost/admin/products/] +Admin::CustomersController: missing default helper path admin/customers_helper + + +Processing CustomersController#index (for 127.0.0.1 at 2007-11-06 13:55:48) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/customers"} + Utilisateur Columns (0.003247) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001545) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Customer Load (0.001465) SELECT * FROM customers  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/customers/index + Customer Columns (0.002339) SHOW FIELDS FROM customers +Completed in 0.06446 (15 reqs/sec) | Rendering: 0.02933 (45%) | DB: 0.00860 (13%) | 200 OK [http://localhost/admin/customers/] + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:55:57) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {} + + +ActionController::RoutingError (no route found to match "/admin/addresses\247" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:56:00) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {} + + +ActionController::RoutingError (no route found to match "/admin/addresses/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 13:56:52) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {} + + +ActionController::RoutingError (no route found to match "/admin/" with {:method=>:get}): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1325:in `recognize_path' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1315:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 13:57:02) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003388) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001562) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001214) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.02863 (34 reqs/sec) | Rendering: 0.00787 (27%) | DB: 0.00616 (21%) | 200 OK [http://localhost/admin/products/] + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 14:05:50) [GET] + Session ID: d61f22333d3ea07ba69ce64c5909be4a + Parameters: {} + + +NoMethodError (undefined method `[]' for :admin:Symbol): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:938:in `build' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1199:in `add_route' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:977:in `connect' + /config/routes.rb:37 + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1166:in `draw' + /config/routes.rb:1 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1192:in `load_routes!' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1184:in `reload' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:104:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 14:06:12) [GET] + Session ID: d61f22333d3ea07ba69ce64c5909be4a + Parameters: {} + + +NoMethodError (undefined method `[]' for :admin:Symbol): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:938:in `build' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1199:in `add_route' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:977:in `connect' + /config/routes.rb:37 + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1166:in `draw' + /config/routes.rb:1 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1192:in `load_routes!' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1184:in `reload' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:104:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 14:07:32) [GET] + Session ID: d61f22333d3ea07ba69ce64c5909be4a + Parameters: {} + + +NoMethodError (undefined method `[]' for :admin:Symbol): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:938:in `build' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1199:in `add_route' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:977:in `connect' + /config/routes.rb:14 + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1166:in `draw' + /config/routes.rb:1 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1192:in `load_routes!' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1184:in `reload' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:104:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 14:07:56) [GET] + Session ID: d61f22333d3ea07ba69ce64c5909be4a + Parameters: {} + + +NoMethodError (undefined method `ressources' for #): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:997:in `method_missing' + /config/routes.rb:14 + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1166:in `draw' + /config/routes.rb:1 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1192:in `load_routes!' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1184:in `reload' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:104:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 14:08:19) [GET] + Session ID: d61f22333d3ea07ba69ce64c5909be4a + Parameters: {} + + +NoMethodError (undefined method `ressource' for #): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:997:in `method_missing' + /config/routes.rb:14 + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1166:in `draw' + /config/routes.rb:1 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1192:in `load_routes!' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1184:in `reload' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:104:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 14:08:33) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/controller"} + + +NameError (uninitialized constant Admin::ControllerController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:263:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:08:50) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 14:09:08) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/controller"} + + +NameError (uninitialized constant Admin::ControllerController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:263:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 14:10:56) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/controller"} + + +NameError (uninitialized constant Admin::ControllerController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:263:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::SuppliersController: missing default helper path admin/suppliers_helper + + +Processing SuppliersController#index (for 127.0.0.1 at 2007-11-06 14:11:06) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/suppliers"} + Utilisateur Columns (0.003287) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002044) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Supplier Load (0.001535) SELECT * FROM suppliers  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/suppliers/index + Supplier Columns (0.002840) SHOW FIELDS FROM suppliers +Completed in 0.06372 (15 reqs/sec) | Rendering: 0.02512 (39%) | DB: 0.00971 (15%) | 200 OK [http://localhost/admin/suppliers] + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 14:11:14) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/controller"} + + +NameError (uninitialized constant Admin::ControllerController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:263:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 14:11:22) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/controller"} + + +NameError (uninitialized constant Admin::ControllerController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:263:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:11:51) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003410) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001604) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001265) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.02965 (33 reqs/sec) | Rendering: 0.00665 (22%) | DB: 0.00628 (21%) | 200 OK [http://localhost/admin/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:12:07) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ApplicationController#index (for 127.0.0.1 at 2007-11-06 14:12:21) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"suppliers"} + + +NameError (uninitialized constant SuppliersController): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1317:in `recognize' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:40:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:16:00) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003182) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001598) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001439) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current_user' for #<#:0xb6eee81c>) on line #4 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3:

    Utilisateur connecté : +4: <%=current_user.login if current_user %> +5:

    +6: +7: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:4:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:16:31) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003254) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.004965) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.003672) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `curent_user' for #<#:0xb71529dc>) on line #4 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3:

    Utilisateur connecté : +4: <%=curent_user.login if curent_user %> +5:

    +6: +7:
    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:4:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:16:41) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003377) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001543) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001915) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.03693 (27 reqs/sec) | Rendering: 0.01489 (40%) | DB: 0.00683 (18%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:17:09) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003653) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.003501) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001375) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current_user' for #<#:0xb70011dc>) on line #4 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3:

    Utilisateur connecté : +4: <%=current_user.login if current_user %> +5:

    +6: +7:
    + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:4:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:17:21) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003449) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001823) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.003344) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.03367 (29 reqs/sec) | Rendering: 0.00923 (27%) | DB: 0.00862 (25%) | 200 OK [http://localhost/admin/products/] + + +Processing Base#index (for 127.0.0.1 at 2007-11-06 14:17:55) [GET] + Session ID: d61f22333d3ea07ba69ce64c5909be4a + Parameters: {} + + +SyntaxError ((eval):3:in `send': compile error +(eval):1: syntax error, unexpected '/', expecting '\n' or ';' + def hash_for_admin/products_url(options = nil) + ^ +(eval):3: syntax error, unexpected kEND, expecting $end): + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1105:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1105:in `define_hash_access' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1098:in `define_named_route_methods' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1096:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1096:in `define_named_route_methods' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1026:in `[]=' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1205:in `add_named_route' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:981:in `named_route' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/option_merger.rb:14:in `send' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/option_merger.rb:14:in `method_missing' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:370:in `map_default_collection_actions' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:320:in `map_resource' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/object/misc.rb:28:in `with_options' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:318:in `map_resource' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:251:in `resources' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:251:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:251:in `resources' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/option_merger.rb:14:in `send' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/option_merger.rb:14:in `method_missing' + /config/routes.rb:15 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/object/misc.rb:28:in `with_options' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:340:in `map_singleton_resource' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/object/misc.rb:28:in `with_options' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:333:in `map_singleton_resource' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:311:in `resource' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:311:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/resources.rb:311:in `resource' + /config/routes.rb:14 + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1166:in `draw' + /config/routes.rb:1 + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:488:in `load' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1192:in `load_routes!' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/routing.rb:1184:in `reload' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:104:in `prepare_application' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:39:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:18:05) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.004125) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002094) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001670) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.04291 (23 reqs/sec) | Rendering: 0.01281 (29%) | DB: 0.00789 (18%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:18:31) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.012687) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002459) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.002273) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.04540 (22 reqs/sec) | Rendering: 0.00980 (21%) | DB: 0.01742 (38%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:19:06) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.004158) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002796) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001897) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.04199 (23 reqs/sec) | Rendering: 0.01045 (24%) | DB: 0.00885 (21%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:19:19) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003618) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001562) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001312) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.03783 (26 reqs/sec) | Rendering: 0.01145 (30%) | DB: 0.00649 (17%) | 200 OK [http://localhost/admin/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:21:08) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:21:48) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:21:55) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003642) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001573) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001381) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined method `admin_product_path' for #<#:0xb7007fb4>) on line #21 of app/views/admin/products/index.rhtml: +18: +19: +20: +21: +22: +23: +24: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:21:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:13:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:13:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:22:43) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003791) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.006853) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001480) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.04330 (23 reqs/sec) | Rendering: 0.01018 (23%) | DB: 0.01212 (28%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#edit (for 127.0.0.1 at 2007-11-06 14:22:49) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"edit", "id"=>"1", "controller"=>"admin/products"} + Utilisateur Columns (0.003522) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001862) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001872) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering within layouts/application +Rendering admin/products/edit + Supplier Load (0.001310) SELECT * FROM suppliers  + Supplier Columns (0.004455) SHOW FIELDS FROM suppliers +Rendered admin/products/_form (0.02979) +Completed in 0.06130 (16 reqs/sec) | Rendering: 0.03240 (52%) | DB: 0.01302 (21%) | 200 OK [http://localhost/admin/products/1/edit] + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 14:23:02) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:23:19) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.004434) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001512) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001319) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.03292 (30 reqs/sec) | Rendering: 0.00944 (28%) | DB: 0.00727 (22%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 14:23:21) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"admin/products"} + Utilisateur Columns (0.003472) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001646) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 +Rendering within layouts/application +Rendering admin/products/new + Supplier Load (0.001310) SELECT * FROM suppliers  + Supplier Columns (0.002540) SHOW FIELDS FROM suppliers +Rendered admin/products/_form (0.01972) +Completed in 0.04325 (23 reqs/sec) | Rendering: 0.02012 (46%) | DB: 0.00897 (20%) | 200 OK [http://localhost/admin/products/new] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:23:35) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003320) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001560) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001314) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.03196 (31 reqs/sec) | Rendering: 0.00924 (28%) | DB: 0.00619 (19%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:23:53) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003164) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001731) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001520) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.03032 (32 reqs/sec) | Rendering: 0.00936 (30%) | DB: 0.00641 (21%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 14:23:56) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"admin/products"} + Utilisateur Columns (0.003247) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001759) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 +Rendering within layouts/application +Rendering admin/products/new + Supplier Load (0.001380) SELECT * FROM suppliers  + Supplier Columns (0.002602) SHOW FIELDS FROM suppliers +Rendered admin/products/_form (0.02015) +Completed in 0.04224 (23 reqs/sec) | Rendering: 0.01922 (45%) | DB: 0.00899 (21%) | 200 OK [http://localhost/admin/products/new] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:26:04) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:26:20) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003134) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002242) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001669) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.03465 (28 reqs/sec) | Rendering: 0.01060 (30%) | DB: 0.00705 (20%) | 200 OK [http://localhost/admin/products/] + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 14:26:27) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.00503 (198 reqs/sec) | Rendering: 0.00318 (63%) | DB: 0.00000 (0%) | 200 OK [http://localhost/sessions/new] + + +Processing SessionsController#create (for 127.0.0.1 at 2007-11-06 14:26:33) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Log in", "action"=>"create", "controller"=>"sessions", "login"=>"Moi", "password"=>"test"} + Utilisateur Load (0.007099) SELECT * FROM utilisateurs WHERE (login = 'Moi' and activated_at IS NOT NULL) LIMIT 1 +Rendering layoutfalseactionnew within layouts/application +Rendering sessions/new +Completed in 0.04315 (23 reqs/sec) | Rendering: 0.01185 (27%) | DB: 0.00710 (16%) | 200 OK [http://localhost/session] + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 14:26:51) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.00449 (222 reqs/sec) | Rendering: 0.00287 (63%) | DB: 0.00000 (0%) | 200 OK [http://localhost/session/new] + + +Processing SessionsController#create (for 127.0.0.1 at 2007-11-06 14:27:07) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Log in", "action"=>"create", "controller"=>"sessions", "login"=>"christian", "password"=>"test"} + Utilisateur Load (0.002812) SELECT * FROM utilisateurs WHERE (login = 'christian' and activated_at IS NOT NULL) LIMIT 1 +Rendering layoutfalseactionnew within layouts/application +Rendering sessions/new +Completed in 0.01896 (52 reqs/sec) | Rendering: 0.00297 (15%) | DB: 0.00281 (14%) | 200 OK [http://localhost/session] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:27:47) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} +Redirected to http://localhost:11134/session/new +Filter chain halted as [#] returned_false. +Completed in 0.00357 (280 reqs/sec) | DB: 0.00000 (0%) | 302 Found [http://localhost/admin/products/] + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 14:27:47) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.00581 (172 reqs/sec) | Rendering: 0.00381 (65%) | DB: 0.00000 (0%) | 200 OK [http://localhost/session/new] + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 14:32:33) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.00589 (169 reqs/sec) | Rendering: 0.00392 (66%) | DB: 0.00000 (0%) | 200 OK [http://localhost/session/new] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:32:37) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} +Redirected to http://localhost:11134/session/new +Filter chain halted as [#] returned_false. +Completed in 0.00344 (291 reqs/sec) | DB: 0.00000 (0%) | 302 Found [http://localhost/admin/products/] + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 14:32:38) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.00694 (144 reqs/sec) | Rendering: 0.00448 (64%) | DB: 0.00000 (0%) | 200 OK [http://localhost/session/new] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:32:46) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} +Redirected to http://localhost:11134/session/new +Filter chain halted as [#] returned_false. +Completed in 0.00359 (278 reqs/sec) | DB: 0.00000 (0%) | 302 Found [http://localhost/admin/products/] + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 14:32:46) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.12124 (8 reqs/sec) | Rendering: 0.00628 (5%) | DB: 0.00000 (0%) | 200 OK [http://localhost/session/new] + + +Processing SessionsController#create (for 127.0.0.1 at 2007-11-06 14:32:57) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Log in", "action"=>"create", "controller"=>"sessions", "login"=>"olivier", "password"=>"test"} + Utilisateur Load (0.001773) SELECT * FROM utilisateurs WHERE (login = 'olivier' and activated_at IS NOT NULL) LIMIT 1 + Utilisateur Columns (0.003128) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001591) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 +Redirected to http://localhost:11134/admin/products/ +Completed in 0.02182 (45 reqs/sec) | DB: 0.00649 (29%) | 302 Found [http://localhost/session] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:32:58) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003230) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001822) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001457) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current' for #<#:0xb702198c>) on line #3 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3: <%= current.user.login if current.user %> +4: +5:
    <%=h product.updated_at.strftime("%d/%m/%Y") %><%= link_to product.supplier_id, supplier_path(product.supplier_id) %><%=h product.type%><%= link_to 'Voir', admin_product_path(product) %><%= link_to 'Editer', edit_admin_product_path(product) %><%= link_to 'Supprimer', admin_product_path(product), :confirm => 'Etes vous sûr ?', :method => :delete %>
    +6: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:3:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:33:14) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003689) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.004718) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.002889) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current_user' for #<#:0xb71e4b34>) on line #3 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3: <%= current_user.login if current_user %> +4: +5:
    +6: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:3:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:33:22) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.007331) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001586) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001389) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current_user' for #<#:0xb703ca20>) on line #3 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3: <%= current_user.login if current_user %> +4: +5:
    +6: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:3:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 14:33:29) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.00485 (206 reqs/sec) | Rendering: 0.00303 (62%) | DB: 0.00000 (0%) | 200 OK [http://localhost/sessions/new] + + +Processing SessionsController#create (for 127.0.0.1 at 2007-11-06 14:33:33) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Log in", "action"=>"create", "controller"=>"sessions", "login"=>"Moi", "password"=>"test"} + Utilisateur Load (0.001597) SELECT * FROM utilisateurs WHERE (login = 'Moi' and activated_at IS NOT NULL) LIMIT 1 +Rendering layoutfalseactionnew within layouts/application +Rendering sessions/new +Completed in 0.01788 (55 reqs/sec) | Rendering: 0.00373 (20%) | DB: 0.00160 (8%) | 200 OK [http://localhost/session] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:33:40) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} +Redirected to http://localhost:11134/session/new +Filter chain halted as [#] returned_false. +Completed in 0.00370 (270 reqs/sec) | DB: 0.00000 (0%) | 302 Found [http://localhost/admin/products/] + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 14:33:40) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.00617 (162 reqs/sec) | Rendering: 0.00432 (70%) | DB: 0.00000 (0%) | 200 OK [http://localhost/session/new] + + +Processing SessionsController#create (for 127.0.0.1 at 2007-11-06 14:33:46) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Log in", "action"=>"create", "controller"=>"sessions", "login"=>"Moi", "password"=>"test"} + Utilisateur Load (0.002484) SELECT * FROM utilisateurs WHERE (login = 'Moi' and activated_at IS NOT NULL) LIMIT 1 +Rendering layoutfalseactionnew within layouts/application +Rendering sessions/new +Completed in 0.02063 (48 reqs/sec) | Rendering: 0.00279 (13%) | DB: 0.00248 (12%) | 200 OK [http://localhost/session] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:33:52) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} +Redirected to http://localhost:11134/session/new +Filter chain halted as [#] returned_false. +Completed in 0.00414 (241 reqs/sec) | DB: 0.00000 (0%) | 302 Found [http://localhost/admin/products/] + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 14:33:52) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.00421 (237 reqs/sec) | Rendering: 0.00256 (60%) | DB: 0.00000 (0%) | 200 OK [http://localhost/session/new] + + +Processing SessionsController#create (for 127.0.0.1 at 2007-11-06 14:33:57) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Log in", "action"=>"create", "controller"=>"sessions", "login"=>"olivier", "password"=>"test"} + Utilisateur Load (0.001741) SELECT * FROM utilisateurs WHERE (login = 'olivier' and activated_at IS NOT NULL) LIMIT 1 + Utilisateur Columns (0.003189) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.007183) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 +Redirected to http://localhost:11134/admin/products/ +Completed in 0.02785 (35 reqs/sec) | DB: 0.01211 (43%) | 302 Found [http://localhost/session] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:33:58) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003275) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001684) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001397) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current_user' for #<#:0xb707d46c>) on line #3 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3: <%= current_user.login if current_user %> +4: +5:
    +6: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:3:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:34:30) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003670) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001533) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001280) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current_user' for #<#:0xb72353a4>) on line #3 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3: <%= current_user_login if current_user %> +4: +5:
    +6: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:3:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:35:02) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003418) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001497) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001230) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current_user' for #<#:0xb70a5624>) on line #3 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3: <%= puts "salut" if current_user %> +4: +5:
    +6: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:3:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:35:05) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003182) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001646) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001235) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current_user' for #<#:0xb6e958c0>) on line #3 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3: <%= puts "salut" if current_user %> +4: +5:
    +6: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:3:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:35:14) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003540) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002110) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.002219) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `curent_user' for #<#:0xb70f99a4>) on line #3 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3: <%= puts "salut" if curent_user %> +4: +5:
    +6: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:3:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:35:56) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003452) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001913) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001309) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current_user' for #<#:0xb6ed7c0c>) on line #3 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3: <%= puts "salut" if current_user.exist %> +4: +5:
    +6: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:3:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:36:13) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.009445) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002279) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.002094) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `current_user' for #<#:0xb7125810>) on line #3 of app/views/admin/products/index.rhtml: +1:

    Liste des produits

    +2: +3: <%= current_user.login if current_user %> +4: +5:
    +6: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/admin/products/index.rhtml:3:in `_run_rhtml_47app47views47admin47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:11:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:36:42) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003407) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001620) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001426) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.03141 (31 reqs/sec) | Rendering: 0.01067 (33%) | DB: 0.00645 (20%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:39:21) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.004535) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002648) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001836) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.03979 (25 reqs/sec) | Rendering: 0.01337 (33%) | DB: 0.00902 (22%) | 200 OK [http://localhost/admin/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:42:23) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:42:54) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:44:23) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!): + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:237:in `load_missing_constant' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:100:in `login_from_session' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:12:in `current_utilisateur' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:6:in `logged_in?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:34:in `authorized?' + /home/3dossmanno/P5b/ruby/mon_projet/lib/authenticated_system.rb:52:in `login_required' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:469:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:442:in `run' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:714:in `run_before_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:694:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:45:42) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + SQL (0.000335) SET NAMES 'utf8' + SQL (0.000304) SET SQL_AUTO_IS_NULL=0 + Product Load (0.001320) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.05519 (18 reqs/sec) | Rendering: 0.00509 (9%) | DB: 0.00196 (3%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:47:55) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.004774) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002772) SHOW FIELDS FROM products +Completed in 0.02630 (38 reqs/sec) | Rendering: 0.00846 (32%) | DB: 0.00755 (28%) | 200 OK [http://localhost/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:47:57) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"admin/products"} + Utilisateur Columns (0.003372) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002560) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Columns (0.003002) SHOW FIELDS FROM products + Product Load (0.002673) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering admin/products/show +Completed in 0.04562 (21 reqs/sec) | Rendering: 0.00705 (15%) | DB: 0.01161 (25%) | 200 OK [http://localhost/admin/products/1] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:48:15) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001440) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002948) SHOW FIELDS FROM products +Completed in 0.02205 (45 reqs/sec) | Rendering: 0.00754 (34%) | DB: 0.00439 (19%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:48:17) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"products"} + Product Columns (0.003008) SHOW FIELDS FROM products + Product Load (0.001215) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.01764 (56 reqs/sec) | Rendering: 0.00231 (13%) | DB: 0.00422 (23%) | 200 OK [http://localhost/products/1] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:49:42) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"products"} + Product Columns (0.003415) SHOW FIELDS FROM products + Product Load (0.001538) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.02109 (47 reqs/sec) | Rendering: 0.00531 (25%) | DB: 0.00495 (23%) | 200 OK [http://localhost/products/1] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:49:44) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001381) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003201) SHOW FIELDS FROM products +Completed in 0.02407 (41 reqs/sec) | Rendering: 0.00802 (33%) | DB: 0.00458 (19%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:50:49) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001414) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002924) SHOW FIELDS FROM products +Completed in 0.02436 (41 reqs/sec) | Rendering: 0.00707 (29%) | DB: 0.00434 (17%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:50:52) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"1", "controller"=>"products"} + Product Columns (0.002947) SHOW FIELDS FROM products + Product Load (0.002234) SELECT * FROM products WHERE (products.`id` = 1)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.02019 (49 reqs/sec) | Rendering: 0.00433 (21%) | DB: 0.00518 (25%) | 200 OK [http://localhost/products/1] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:50:55) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001575) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.003144) SHOW FIELDS FROM products +Completed in 0.02094 (47 reqs/sec) | Rendering: 0.00576 (27%) | DB: 0.00472 (22%) | 200 OK [http://localhost/products] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:50:57) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"2", "controller"=>"products"} + Product Columns (0.002882) SHOW FIELDS FROM products + Product Load (0.001771) SELECT * FROM products WHERE (products.`id` = 2)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show +Completed in 0.02193 (45 reqs/sec) | Rendering: 0.00401 (18%) | DB: 0.00465 (21%) | 200 OK [http://localhost/products/2] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:51:00) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001418) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Product Columns (0.002927) SHOW FIELDS FROM products +Completed in 0.02539 (39 reqs/sec) | Rendering: 0.00782 (30%) | DB: 0.00434 (17%) | 200 OK [http://localhost/products] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:51:07) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003371) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001458) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001426) SELECT * FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + Product Columns (0.003318) SHOW FIELDS FROM products +Completed in 0.14542 (6 reqs/sec) | Rendering: 0.01587 (10%) | DB: 0.00957 (6%) | 200 OK [http://localhost/admin/products] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 14:51:37) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"admin/products"} + Utilisateur Columns (0.003175) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001799) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Columns (0.003111) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering admin/products/new + Supplier Load (0.001530) SELECT * FROM suppliers  + Supplier Columns (0.002928) SHOW FIELDS FROM suppliers +Rendered admin/products/_form (0.13219) +Completed in 0.16909 (5 reqs/sec) | Rendering: 0.13283 (78%) | DB: 0.01254 (7%) | 200 OK [http://localhost/admin/products/new] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#create (for 127.0.0.1 at 2007-11-06 14:52:02) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Créer", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"Voiture Rose", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"14", "updated_at(5i)"=>"51", "created_at(4i)"=>"14", "created_at(5i)"=>"51", "description"=>"Une petite voiture rose qui vous seille a merveille !", "supplier_id"=>"2"}, "type"=>"Voiture", "action"=>"create", "controller"=>"admin/products"} + Utilisateur Columns (0.003778) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002414) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Columns (0.003604) SHOW FIELDS FROM products + SQL (0.000487) BEGIN + SQL (0.000997) INSERT INTO products (`designation`, `updated_at`, `type`, `customer_id`, `description`, `supplier_id`, `created_at`) VALUES('Voiture Rose', '2007-11-06 14:52:02', 'Voiture', NULL, 'Une petite voiture rose qui vous seille a merveille !', 2, '2007-11-06 14:51:00') + SQL (0.026004) COMMIT +Redirected to http://localhost:11134/products/3 +Completed in 0.07546 (13 reqs/sec) | DB: 0.03728 (49%) | 302 Found [http://localhost/admin/products] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:52:02) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"3", "controller"=>"products"} + Product Columns (0.003767) SHOW FIELDS FROM products + Product Load (0.001722) SELECT * FROM products WHERE (products.`id` = 3)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show + Voiture Columns (0.004219) SHOW FIELDS FROM products +Completed in 0.03994 (25 reqs/sec) | Rendering: 0.00775 (19%) | DB: 0.00971 (24%) | 200 OK [http://localhost/products/3] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:52:05) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002078) SELECT * FROM products  + Product Columns (0.003099) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.03066 (32 reqs/sec) | Rendering: 0.00838 (27%) | DB: 0.00518 (16%) | 200 OK [http://localhost/products] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:52:16) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003299) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001570) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001524) SELECT * FROM products  + Product Columns (0.003099) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.05031 (19 reqs/sec) | Rendering: 0.01147 (22%) | DB: 0.00949 (18%) | 200 OK [http://localhost/admin/products] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 14:52:19) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"admin/products"} + Utilisateur Columns (0.003623) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001679) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Columns (0.002992) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering admin/products/new + Supplier Load (0.001729) SELECT * FROM suppliers  + Supplier Columns (0.002778) SHOW FIELDS FROM suppliers +Rendered admin/products/_form (0.02210) +Completed in 0.06453 (15 reqs/sec) | Rendering: 0.02114 (32%) | DB: 0.01280 (19%) | 200 OK [http://localhost/admin/products/new] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#create (for 127.0.0.1 at 2007-11-06 14:53:41) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Créer", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"Voiture Verte", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"14", "updated_at(5i)"=>"52", "created_at(4i)"=>"14", "created_at(5i)"=>"52", "description"=>"Idem, mais en vert !", "supplier_id"=>"2"}, "type"=>"Voiture", "action"=>"create", "controller"=>"admin/products"} + Utilisateur Columns (0.004345) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.004028) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Columns (0.003406) SHOW FIELDS FROM products + SQL (0.000432) BEGIN + SQL (0.000879) INSERT INTO products (`designation`, `updated_at`, `type`, `customer_id`, `description`, `supplier_id`, `created_at`) VALUES('Voiture Verte', '2007-11-06 14:53:41', 'Voiture', NULL, 'Idem, mais en vert !', 2, '2007-11-06 14:52:00') + SQL (0.033077) COMMIT +Redirected to http://localhost:11134/products/4 +Completed in 0.07855 (12 reqs/sec) | DB: 0.04617 (58%) | 302 Found [http://localhost/admin/products] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:53:42) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"4", "controller"=>"products"} + Product Columns (0.002910) SHOW FIELDS FROM products + Product Load (0.001821) SELECT * FROM products WHERE (products.`id` = 4)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show + Voiture Columns (0.002870) SHOW FIELDS FROM products +Completed in 0.03028 (33 reqs/sec) | Rendering: 0.00534 (17%) | DB: 0.00760 (25%) | 200 OK [http://localhost/products/4] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:54:25) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"4", "controller"=>"products"} + Product Columns (0.002951) SHOW FIELDS FROM products + Product Load (0.001471) SELECT * FROM products WHERE (products.`id` = 4)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show + Voiture Columns (0.003097) SHOW FIELDS FROM products +Completed in 0.02735 (36 reqs/sec) | Rendering: 0.00397 (14%) | DB: 0.00752 (27%) | 200 OK [http://localhost/products/4] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:54:29) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"4", "controller"=>"products"} + Product Columns (0.003073) SHOW FIELDS FROM products + Product Load (0.001540) SELECT * FROM products WHERE (products.`id` = 4)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show + Voiture Columns (0.003056) SHOW FIELDS FROM products +Completed in 0.03013 (33 reqs/sec) | Rendering: 0.00403 (13%) | DB: 0.00767 (25%) | 200 OK [http://localhost/products/4] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:54:35) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"4", "controller"=>"admin/products"} + Utilisateur Columns (0.003628) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002450) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Columns (0.003458) SHOW FIELDS FROM products + Product Load (0.001277) SELECT * FROM products WHERE (products.`id` = 4)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering admin/products/show + Voiture Columns (0.003831) SHOW FIELDS FROM products +Completed in 0.05840 (17 reqs/sec) | Rendering: 0.00979 (16%) | DB: 0.01464 (25%) | 200 OK [http://localhost/admin/products/4] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:54:41) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003643) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.007107) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.002061) SELECT * FROM products  + Product Columns (0.002925) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.06809 (14 reqs/sec) | Rendering: 0.01850 (27%) | DB: 0.01574 (23%) | 200 OK [http://localhost/admin/products] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 14:54:44) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"admin/products"} + Utilisateur Columns (0.004133) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.004378) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Columns (0.003119) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering admin/products/new + Supplier Load (0.001454) SELECT * FROM suppliers  + Supplier Columns (0.002849) SHOW FIELDS FROM suppliers +Rendered admin/products/_form (0.02224) +Completed in 0.06239 (16 reqs/sec) | Rendering: 0.02169 (34%) | DB: 0.01593 (25%) | 200 OK [http://localhost/admin/products/new] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#create (for 127.0.0.1 at 2007-11-06 14:55:04) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Créer", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"Tricycle", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"14", "updated_at(5i)"=>"54", "created_at(4i)"=>"14", "created_at(5i)"=>"54", "description"=>"Velo a 3 roues", "supplier_id"=>"1"}, "type"=>"Velo", "action"=>"create", "controller"=>"admin/products"} + Utilisateur Columns (0.003205) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001581) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Columns (0.003227) SHOW FIELDS FROM products + SQL (0.000432) BEGIN + SQL (0.000820) INSERT INTO products (`designation`, `updated_at`, `type`, `customer_id`, `description`, `supplier_id`, `created_at`) VALUES('Tricycle', '2007-11-06 14:55:05', 'Velo', NULL, 'Velo a 3 roues', 1, '2007-11-06 14:54:00') + SQL (0.008558) COMMIT +Redirected to http://localhost:11134/products/5 +Completed in 0.04554 (21 reqs/sec) | DB: 0.01782 (39%) | 302 Found [http://localhost/admin/products] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:55:05) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"5", "controller"=>"products"} + Product Columns (0.003034) SHOW FIELDS FROM products + Product Load (0.001664) SELECT * FROM products WHERE (products.`id` = 5)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show + Velo Columns (0.004716) SHOW FIELDS FROM products +Completed in 0.04413 (22 reqs/sec) | Rendering: 0.01052 (23%) | DB: 0.00941 (21%) | 200 OK [http://localhost/products/5] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:55:24) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002112) SELECT * FROM products  + Product Columns (0.003087) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.05059 (19 reqs/sec) | Rendering: 0.00775 (15%) | DB: 0.00520 (10%) | 200 OK [http://localhost/products] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:55:39) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003468) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.006899) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.002511) SELECT * FROM products  + Product Columns (0.003266) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.06854 (14 reqs/sec) | Rendering: 0.01560 (22%) | DB: 0.01614 (23%) | 200 OK [http://localhost/admin/products] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#new (for 127.0.0.1 at 2007-11-06 14:56:35) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"new", "controller"=>"admin/products"} + Utilisateur Columns (0.005127) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001964) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Columns (0.003745) SHOW FIELDS FROM products +Rendering within layouts/application +Rendering admin/products/new + Supplier Load (0.001598) SELECT * FROM suppliers  + Supplier Columns (0.003189) SHOW FIELDS FROM suppliers +Rendered admin/products/_form (0.02642) +Completed in 0.07138 (14 reqs/sec) | Rendering: 0.02646 (37%) | DB: 0.01562 (21%) | 200 OK [http://localhost/admin/products/new] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#create (for 127.0.0.1 at 2007-11-06 14:57:05) [POST] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"commit"=>"Créer", "product"=>{"updated_at(1i)"=>"2007", "designation"=>"Bicycle Standard", "updated_at(2i)"=>"11", "created_at(1i)"=>"2007", "updated_at(3i)"=>"6", "created_at(2i)"=>"11", "created_at(3i)"=>"6", "updated_at(4i)"=>"14", "updated_at(5i)"=>"56", "created_at(4i)"=>"14", "created_at(5i)"=>"56", "description"=>"Un bicycle normal", "supplier_id"=>"1"}, "type"=>"Velo", "action"=>"create", "controller"=>"admin/products"} + Utilisateur Columns (0.003490) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001515) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Columns (0.002980) SHOW FIELDS FROM products + SQL (0.000442) BEGIN + SQL (0.000807) INSERT INTO products (`designation`, `updated_at`, `type`, `customer_id`, `description`, `supplier_id`, `created_at`) VALUES('Bicycle Standard', '2007-11-06 14:57:06', 'Velo', NULL, 'Un bicycle normal', 1, '2007-11-06 14:56:00') + SQL (0.011290) COMMIT +Redirected to http://localhost:11134/products/6 +Completed in 0.04825 (20 reqs/sec) | DB: 0.02052 (42%) | 302 Found [http://localhost/admin/products] + + +Processing ProductsController#show (for 127.0.0.1 at 2007-11-06 14:57:06) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"show", "id"=>"6", "controller"=>"products"} + Product Columns (0.003037) SHOW FIELDS FROM products + Product Load (0.001869) SELECT * FROM products WHERE (products.`id` = 6)  +Rendering layoutfalsecontent_typetext/htmlactionshow within layouts/application +Rendering products/show + Velo Columns (0.004405) SHOW FIELDS FROM products +Completed in 0.03436 (29 reqs/sec) | Rendering: 0.00782 (22%) | DB: 0.00931 (27%) | 200 OK [http://localhost/products/6] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 14:57:10) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002243) SELECT * FROM products  + Product Columns (0.002909) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.03439 (29 reqs/sec) | Rendering: 0.00690 (20%) | DB: 0.00515 (14%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:08:54) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +NoMethodError (undefined method `paginate' for Product:Class): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1238:in `method_missing' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:6:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:09:46) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +NoMethodError (undefined method `paginate' for Product:Class): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1238:in `method_missing' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:6:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:09:48) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +NoMethodError (undefined method `paginate' for Product:Class): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1238:in `method_missing' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:6:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:10:59) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + + +NoMethodError (undefined method `paginate' for Product:Class): + /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/active_record/base.rb:1238:in `method_missing' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:6:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + ./script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:15:49) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + SQL (0.000337) SET NAMES 'utf8' + SQL (0.000624) SET SQL_AUTO_IS_NULL=0 + Product Load (0.001811) SELECT * FROM products LIMIT 0, 3 + Product Columns (0.003580) SHOW FIELDS FROM products + SQL (0.000986) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + + +ActionView::TemplateError (undefined method `designation' for #) on line #14 of app/views/products/index.rhtml: +11: <%= will_paginate @products %> +12: # <% for product in will_paginate @products %> +13: # +14: # +15: # +16: # +17: # + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:14:in `_run_rhtml_47app47views47products47index46rhtml' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:12:in `each' + /home/3dossmanno/P5b/ruby/mon_projet/app/views/products/index.rhtml:12:in `_run_rhtml_47app47views47products47index46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:812:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:744:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:869:in `render_without_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:804:in `render_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:754:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:44:in `silence' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:753:in `render_with_no_layout' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:244:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:8:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/products_controller.rb:8:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:17:15) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002387) SELECT * FROM products LIMIT 0, 3 + Product Columns (0.003080) SHOW FIELDS FROM products + SQL (0.000738) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.03223 (31 reqs/sec) | Rendering: 0.00899 (27%) | DB: 0.00621 (19%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:17:56) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.005752) SELECT * FROM products LIMIT 0, 3 + Product Columns (0.004544) SHOW FIELDS FROM products + SQL (0.000624) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.03725 (26 reqs/sec) | Rendering: 0.01014 (27%) | DB: 0.01092 (29%) | 200 OK [http://localhost/products/] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:18:48) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products", "page"=>"2"} + Product Load (0.002317) SELECT * FROM products LIMIT 3, 3 + Product Columns (0.003054) SHOW FIELDS FROM products + SQL (0.001186) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Voiture Columns (0.003039) SHOW FIELDS FROM products + Velo Columns (0.003082) SHOW FIELDS FROM products +Completed in 0.06929 (14 reqs/sec) | Rendering: 0.01784 (25%) | DB: 0.01268 (18%) | 200 OK [http://localhost/products?page=2] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:18:53) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001935) SELECT * FROM products LIMIT 0, 3 + Product Columns (0.005211) SHOW FIELDS FROM products + SQL (0.001096) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.03796 (26 reqs/sec) | Rendering: 0.01169 (30%) | DB: 0.00824 (21%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:18:55) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products", "page"=>"2"} + Product Load (0.002046) SELECT * FROM products LIMIT 3, 3 + Product Columns (0.003159) SHOW FIELDS FROM products + SQL (0.000996) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Voiture Columns (0.003440) SHOW FIELDS FROM products + Velo Columns (0.003281) SHOW FIELDS FROM products +Completed in 0.04768 (20 reqs/sec) | Rendering: 0.01304 (27%) | DB: 0.01292 (27%) | 200 OK [http://localhost/products?page=2] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:19:03) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.001809) SELECT * FROM products LIMIT 0, 3 + Product Columns (0.003285) SHOW FIELDS FROM products + SQL (0.000853) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.13100 (7 reqs/sec) | Rendering: 0.00886 (6%) | DB: 0.00595 (4%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:40:11) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.002178) SELECT * FROM products LIMIT 0, 3 + Product Columns (0.003043) SHOW FIELDS FROM products + SQL (0.002255) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.03169 (31 reqs/sec) | Rendering: 0.00832 (26%) | DB: 0.00748 (23%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:40:29) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products", "page"=>"2"} + Product Load (0.001638) SELECT * FROM products LIMIT 3, 3 + Product Columns (0.002966) SHOW FIELDS FROM products + SQL (0.000569) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index + Voiture Columns (0.002953) SHOW FIELDS FROM products + Velo Columns (0.009176) SHOW FIELDS FROM products +Completed in 0.05496 (18 reqs/sec) | Rendering: 0.01249 (22%) | DB: 0.01730 (31%) | 200 OK [http://localhost/products?page=2] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 15:40:33) [GET] + Session ID: 156a033ea9c5c9f4051e53411381718f + Parameters: {"action"=>"index", "controller"=>"products"} + Product Load (0.007730) SELECT * FROM products LIMIT 0, 3 + Product Columns (0.003927) SHOW FIELDS FROM products + SQL (0.005343) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.04280 (23 reqs/sec) | Rendering: 0.00838 (19%) | DB: 0.01700 (39%) | 200 OK [http://localhost/products] + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:18:46) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"products"} + SQL (0.000443) SET NAMES 'utf8' + SQL (0.000299) SET SQL_AUTO_IS_NULL=0 + Product Load (0.001269) SELECT * FROM products LIMIT 0, 3 + Product Columns (0.003489) SHOW FIELDS FROM products + SQL (0.000619) SELECT count(*) AS count_all FROM products  +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering products/index +Completed in 0.16325 (6 reqs/sec) | Rendering: 0.09833 (60%) | DB: 0.00612 (3%) | 200 OK [http://localhost/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:18:57) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} +Redirected to http://localhost:11134/session/new +Filter chain halted as [#] returned_false. +Completed in 0.00363 (275 reqs/sec) | DB: 0.00000 (0%) | 302 Found [http://localhost/admin/products/] + + +Processing SessionsController#new (for 127.0.0.1 at 2007-11-06 16:18:57) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"new", "controller"=>"sessions"} +Rendering within layouts/application +Rendering sessions/new +Completed in 0.03592 (27 reqs/sec) | Rendering: 0.03436 (95%) | DB: 0.00000 (0%) | 200 OK [http://localhost/session/new] + + +Processing SessionsController#create (for 127.0.0.1 at 2007-11-06 16:19:03) [POST] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"commit"=>"Log in", "action"=>"create", "controller"=>"sessions", "login"=>"olivier", "password"=>"test"} + Utilisateur Load (0.001951) SELECT * FROM utilisateurs WHERE (login = 'olivier' and activated_at IS NOT NULL) LIMIT 1 + Utilisateur Columns (0.003548) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001754) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 +Redirected to http://localhost:11134/admin/products/ +Completed in 0.02642 (37 reqs/sec) | DB: 0.00725 (27%) | 302 Found [http://localhost/session] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:19:03) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003454) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001553) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.002057) SELECT * FROM products  + Product Columns (0.002823) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.07185 (13 reqs/sec) | Rendering: 0.02020 (28%) | DB: 0.00989 (13%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:20:15) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003184) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001687) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.002057) SELECT * FROM products  + Product Columns (0.002820) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.07082 (14 reqs/sec) | Rendering: 0.02115 (29%) | DB: 0.00975 (13%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:22:57) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003347) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001559) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001785) SELECT * FROM products  + Product Columns (0.003494) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.07011 (14 reqs/sec) | Rendering: 0.02295 (32%) | DB: 0.01019 (14%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:23:12) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003770) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.003988) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001711) SELECT * FROM products  + Product Columns (0.002839) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.06450 (15 reqs/sec) | Rendering: 0.01538 (23%) | DB: 0.01231 (19%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:23:25) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.004633) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.003208) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001680) SELECT * FROM products  + Product Columns (0.003179) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.06357 (15 reqs/sec) | Rendering: 0.01501 (23%) | DB: 0.01270 (19%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:24:35) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003672) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002549) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001651) SELECT * FROM products  + Product Columns (0.002806) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.06838 (14 reqs/sec) | Rendering: 0.01748 (25%) | DB: 0.01068 (15%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:25:52) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003338) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001553) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001701) SELECT * FROM products  + Product Columns (0.002768) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.06874 (14 reqs/sec) | Rendering: 0.02048 (29%) | DB: 0.00936 (13%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:26:24) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003724) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.002008) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.002455) SELECT * FROM products  + Product Columns (0.003161) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.06219 (16 reqs/sec) | Rendering: 0.01608 (25%) | DB: 0.01135 (18%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:27:24) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003423) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001912) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001806) SELECT * FROM products  + Product Columns (0.003077) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.06346 (15 reqs/sec) | Rendering: 0.01674 (26%) | DB: 0.01022 (16%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:30:23) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003463) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.004094) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001735) SELECT * FROM products  + Product Columns (0.002948) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index + + +ActionView::TemplateError (undefined local variable or method `defaults' for #<#:0xb7290bb4>) on line #9 of app/views/layouts/application.rhtml: +6: +7: Produits: <%= controller.action_name %> +8: <%= stylesheet_link_tag 'scaffold' %> +9: <%= javascript_include_tag defaults %> +10: +11: +12: + + /home/3dossmanno/P5b/ruby/mon_projet/app/views/layouts/application.rhtml:9:in `_run_rhtml_47app47views47layouts47application46rhtml' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:325:in `compile_and_render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:301:in `render_template' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_view/base.rb:260:in `render_file' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/layout.rb:254:in `render_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:50:in `render' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:14:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `call' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:167:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `each' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:161:in `respond' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/mime_responds.rb:105:in `respond_to' + /home/3dossmanno/P5b/ruby/mon_projet/app/controllers/admin/products_controller.rb:14:in `index' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:1101:in `perform_action_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:696:in `call_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/rescue.rb:83:in `perform_action' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `send' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:435:in `process_without_filters' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/filters.rb:684:in `process_without_session_management_support' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/session_management.rb:114:in `process' + /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/base.rb:334:in `process' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/dispatcher.rb:41:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:113:in `handle_dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:79:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service' + /usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run' + /usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread' + /usr/lib/ruby/1.8/webrick/server.rb:95:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `each' + /usr/lib/ruby/1.8/webrick/server.rb:92:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:23:in `start' + /usr/lib/ruby/1.8/webrick/server.rb:82:in `start' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/webrick_server.rb:63:in `dispatch' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/servers/webrick.rb:59 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in' + /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require' + /usr/lib/ruby/gems/1.8/gems/rails-1.2.5/lib/commands/server.rb:39 + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' + /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' + script/server:3 + + +Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.13.5/lib/action_controller/templates/rescues/layout.rhtml (500 Internal Error) +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:30:44) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.004599) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001535) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001553) SELECT * FROM products  + Product Columns (0.002864) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.06771 (14 reqs/sec) | Rendering: 0.02432 (35%) | DB: 0.01055 (15%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:30:51) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.008294) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001537) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.006235) SELECT * FROM products  + Product Columns (0.004557) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.20572 (4 reqs/sec) | Rendering: 0.02513 (12%) | DB: 0.02062 (10%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:31:40) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003342) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001659) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.001665) SELECT * FROM products  + Product Columns (0.002803) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.16597 (6 reqs/sec) | Rendering: 0.01972 (11%) | DB: 0.00947 (5%) | 200 OK [http://localhost/admin/products/] +Admin::ProductsController: missing default helper path admin/products_helper + + +Processing ProductsController#index (for 127.0.0.1 at 2007-11-06 16:36:01) [GET] + Session ID: ed7d5a8b2dbf7551d78ebb4637c97e05 + Parameters: {"action"=>"index", "controller"=>"admin/products"} + Utilisateur Columns (0.003339) SHOW FIELDS FROM utilisateurs + Utilisateur Load (0.001554) SELECT * FROM utilisateurs WHERE (utilisateurs.`id` = 1) LIMIT 1 + Product Load (0.002223) SELECT * FROM products  + Product Columns (0.002868) SHOW FIELDS FROM products +Rendering layoutfalsecontent_typetext/htmlactionindex within layouts/application +Rendering admin/products/index +Completed in 0.06644 (15 reqs/sec) | Rendering: 0.02087 (31%) | DB: 0.00998 (15%) | 200 OK [http://localhost/admin/products/] diff --git a/P5B/ruby/mon_projet/log/production.log b/P5B/ruby/mon_projet/log/production.log new file mode 100644 index 0000000..e69de29 diff --git a/P5B/ruby/mon_projet/log/server.log b/P5B/ruby/mon_projet/log/server.log new file mode 100644 index 0000000..e69de29 diff --git a/P5B/ruby/mon_projet/log/test.log b/P5B/ruby/mon_projet/log/test.log new file mode 100644 index 0000000..af1890d --- /dev/null +++ b/P5B/ruby/mon_projet/log/test.log @@ -0,0 +1,9 @@ + SQL (0.000362) SET SQL_AUTO_IS_NULL=0 + SQL (0.000273) BEGIN + SQL (0.000285) ROLLBACK + SQL (0.000494) BEGIN + SQL (0.000234) ROLLBACK + SQL (0.000253) BEGIN + SQL (0.000247) ROLLBACK + SQL (0.000270) BEGIN + SQL (0.000240) ROLLBACK diff --git a/P5B/ruby/mon_projet/public/.htaccess b/P5B/ruby/mon_projet/public/.htaccess new file mode 100644 index 0000000..d3c9983 --- /dev/null +++ b/P5B/ruby/mon_projet/public/.htaccess @@ -0,0 +1,40 @@ +# General Apache options +AddHandler fastcgi-script .fcgi +AddHandler cgi-script .cgi +Options +FollowSymLinks +ExecCGI + +# If you don't want Rails to look in certain directories, +# use the following rewrite rules so that Apache won't rewrite certain requests +# +# Example: +# RewriteCond %{REQUEST_URI} ^/notrails.* +# RewriteRule .* - [L] + +# Redirect all requests not available on the filesystem to Rails +# By default the cgi dispatcher is used which is very slow +# +# For better performance replace the dispatcher with the fastcgi one +# +# Example: +# RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] +RewriteEngine On + +# If your Rails application is accessed via an Alias directive, +# then you MUST also set the RewriteBase in this htaccess file. +# +# Example: +# Alias /myrailsapp /path/to/myrailsapp/public +# RewriteBase /myrailsapp + +RewriteRule ^$ index.html [QSA] +RewriteRule ^([^.]+)$ $1.html [QSA] +RewriteCond %{REQUEST_FILENAME} !-f +RewriteRule ^(.*)$ dispatch.cgi [QSA,L] + +# In case Rails experiences terminal errors +# Instead of displaying this message you can supply a file here which will be rendered instead +# +# Example: +# ErrorDocument 500 /500.html + +ErrorDocument 500 "

    Application error

    Rails application failed to start properly" \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/404.html b/P5B/ruby/mon_projet/public/404.html new file mode 100644 index 0000000..9156c8b --- /dev/null +++ b/P5B/ruby/mon_projet/public/404.html @@ -0,0 +1,30 @@ + + + + + + + La page que vous recherchez n'existe pas (404) + + + + + +
    +

    La page que vous recherchez n'existe pas.

    +

    Vous avez sûrement mal tapé l'adresse ou la page a changé de place.

    +
    + + \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/404.html~ b/P5B/ruby/mon_projet/public/404.html~ new file mode 100644 index 0000000..efddddd --- /dev/null +++ b/P5B/ruby/mon_projet/public/404.html~ @@ -0,0 +1,30 @@ + + + + + + + La page que vous recherchez n'existe pas (404) + + + + + +
    +

    La page que vous recherchez n'existe pas.

    +

    Vous avez sûrement mal tapé l'adresse ou la page a changé de place.

    +
    + + \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/500.html b/P5B/ruby/mon_projet/public/500.html new file mode 100644 index 0000000..db0a7aa --- /dev/null +++ b/P5B/ruby/mon_projet/public/500.html @@ -0,0 +1,30 @@ + + + + + + + Nous sommes désolé, mais quelque chose ne va pas + + + + + +
    +

    Nous sommes désolé, mais quelque chose donne des erreurs.

    +

    Nous sommes en train de notifier les erreurs, et nous y jetterons un oeil dès que possible.

    +
    + + \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/500.html~ b/P5B/ruby/mon_projet/public/500.html~ new file mode 100644 index 0000000..ce163de --- /dev/null +++ b/P5B/ruby/mon_projet/public/500.html~ @@ -0,0 +1,30 @@ + + + + + + + Nous sommes désolé, mais quelque chose ne va pas. + + + + + +
    +

    Nous sommes désolé, mais quelque chose donne des erreurs.

    +

    Nous sommes en train de notifier les erreurs, et nous y jetterons un oeil dès que possible.

    +
    + + \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/dispatch.cgi b/P5B/ruby/mon_projet/public/dispatch.cgi new file mode 100644 index 0000000..3848806 --- /dev/null +++ b/P5B/ruby/mon_projet/public/dispatch.cgi @@ -0,0 +1,10 @@ +#!/usr/bin/ruby1.8 + +require File.dirname(__FILE__) + "/../config/environment" unless defined?(RAILS_ROOT) + +# If you're using RubyGems and mod_ruby, this require should be changed to an absolute path one, like: +# "/usr/local/lib/ruby/gems/1.8/gems/rails-0.8.0/lib/dispatcher" -- otherwise performance is severely impaired +require "dispatcher" + +ADDITIONAL_LOAD_PATHS.reverse.each { |dir| $:.unshift(dir) if File.directory?(dir) } if defined?(Apache::RubyRun) +Dispatcher.dispatch \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/dispatch.fcgi b/P5B/ruby/mon_projet/public/dispatch.fcgi new file mode 100644 index 0000000..3169ba2 --- /dev/null +++ b/P5B/ruby/mon_projet/public/dispatch.fcgi @@ -0,0 +1,24 @@ +#!/usr/bin/ruby1.8 +# +# You may specify the path to the FastCGI crash log (a log of unhandled +# exceptions which forced the FastCGI instance to exit, great for debugging) +# and the number of requests to process before running garbage collection. +# +# By default, the FastCGI crash log is RAILS_ROOT/log/fastcgi.crash.log +# and the GC period is nil (turned off). A reasonable number of requests +# could range from 10-100 depending on the memory footprint of your app. +# +# Example: +# # Default log path, normal GC behavior. +# RailsFCGIHandler.process! +# +# # Default log path, 50 requests between GC. +# RailsFCGIHandler.process! nil, 50 +# +# # Custom log path, normal GC behavior. +# RailsFCGIHandler.process! '/var/log/myapp_fcgi_crash.log' +# +require File.dirname(__FILE__) + "/../config/environment" +require 'fcgi_handler' + +RailsFCGIHandler.process! diff --git a/P5B/ruby/mon_projet/public/dispatch.rb b/P5B/ruby/mon_projet/public/dispatch.rb new file mode 100644 index 0000000..3848806 --- /dev/null +++ b/P5B/ruby/mon_projet/public/dispatch.rb @@ -0,0 +1,10 @@ +#!/usr/bin/ruby1.8 + +require File.dirname(__FILE__) + "/../config/environment" unless defined?(RAILS_ROOT) + +# If you're using RubyGems and mod_ruby, this require should be changed to an absolute path one, like: +# "/usr/local/lib/ruby/gems/1.8/gems/rails-0.8.0/lib/dispatcher" -- otherwise performance is severely impaired +require "dispatcher" + +ADDITIONAL_LOAD_PATHS.reverse.each { |dir| $:.unshift(dir) if File.directory?(dir) } if defined?(Apache::RubyRun) +Dispatcher.dispatch \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/favicon.ico b/P5B/ruby/mon_projet/public/favicon.ico new file mode 100644 index 0000000..e69de29 diff --git a/P5B/ruby/mon_projet/public/images/rails.png b/P5B/ruby/mon_projet/public/images/rails.png new file mode 100644 index 0000000..b8441f1 Binary files /dev/null and b/P5B/ruby/mon_projet/public/images/rails.png differ diff --git a/P5B/ruby/mon_projet/public/index.html.bak b/P5B/ruby/mon_projet/public/index.html.bak new file mode 100644 index 0000000..37b9bfe --- /dev/null +++ b/P5B/ruby/mon_projet/public/index.html.bak @@ -0,0 +1,277 @@ + + + + + Ruby on Rails: Bienvenue ! + + + + + + +
    + + +
    + + + + +
    +

    Getting started

    +

    Here’s how to get rolling:

    + +
      +
    1. +

      Create your databases and edit config/database.yml

      +

      Rails needs to know your login and password.

      +
    2. + +
    3. +

      Use script/generate to create your models and controllers

      +

      To see all available options, run it without parameters.

      +
    4. + +
    5. +

      Set up a default route and remove or rename this file

      +

      Routes are setup in config/routes.rb.

      +
    6. +
    +
    +
    + + +
    + + \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/index.html~ b/P5B/ruby/mon_projet/public/index.html~ new file mode 100644 index 0000000..861c230 --- /dev/null +++ b/P5B/ruby/mon_projet/public/index.html~ @@ -0,0 +1,277 @@ + + + + + Ruby on Rails: Bienvenue ! + + + + + + +
    + + +
    + + + + +
    +

    Getting started

    +

    Here’s how to get rolling:

    + +
      +
    1. +

      Create your databases and edit config/database.yml

      +

      Rails needs to know your login and password.

      +
    2. + +
    3. +

      Use script/generate to create your models and controllers

      +

      To see all available options, run it without parameters.

      +
    4. + +
    5. +

      Set up a default route and remove or rename this file

      +

      Routes are setup in config/routes.rb.

      +
    6. +
    +
    +
    + + +
    + + \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/javascripts/application.js b/P5B/ruby/mon_projet/public/javascripts/application.js new file mode 100644 index 0000000..fe45776 --- /dev/null +++ b/P5B/ruby/mon_projet/public/javascripts/application.js @@ -0,0 +1,2 @@ +// Place your application-specific JavaScript functions and classes here +// This file is automatically included by javascript_include_tag :defaults diff --git a/P5B/ruby/mon_projet/public/javascripts/controls.js b/P5B/ruby/mon_projet/public/javascripts/controls.js new file mode 100644 index 0000000..480c3f1 --- /dev/null +++ b/P5B/ruby/mon_projet/public/javascripts/controls.js @@ -0,0 +1,833 @@ +// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// (c) 2005, 2006 Ivan Krstic (http://blogs.law.harvard.edu/ivan) +// (c) 2005, 2006 Jon Tirsen (http://www.tirsen.com) +// Contributors: +// Richard Livsey +// Rahul Bhargava +// Rob Wills +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +// Autocompleter.Base handles all the autocompletion functionality +// that's independent of the data source for autocompletion. This +// includes drawing the autocompletion menu, observing keyboard +// and mouse events, and similar. +// +// Specific autocompleters need to provide, at the very least, +// a getUpdatedChoices function that will be invoked every time +// the text inside the monitored textbox changes. This method +// should get the text for which to provide autocompletion by +// invoking this.getToken(), NOT by directly accessing +// this.element.value. This is to allow incremental tokenized +// autocompletion. Specific auto-completion logic (AJAX, etc) +// belongs in getUpdatedChoices. +// +// Tokenized incremental autocompletion is enabled automatically +// when an autocompleter is instantiated with the 'tokens' option +// in the options parameter, e.g.: +// new Ajax.Autocompleter('id','upd', '/url/', { tokens: ',' }); +// will incrementally autocomplete with a comma as the token. +// Additionally, ',' in the above example can be replaced with +// a token array, e.g. { tokens: [',', '\n'] } which +// enables autocompletion on multiple tokens. This is most +// useful when one of the tokens is \n (a newline), as it +// allows smart autocompletion after linebreaks. + +if(typeof Effect == 'undefined') + throw("controls.js requires including script.aculo.us' effects.js library"); + +var Autocompleter = {} +Autocompleter.Base = function() {}; +Autocompleter.Base.prototype = { + baseInitialize: function(element, update, options) { + this.element = $(element); + this.update = $(update); + this.hasFocus = false; + this.changed = false; + this.active = false; + this.index = 0; + this.entryCount = 0; + + if(this.setOptions) + this.setOptions(options); + else + this.options = options || {}; + + this.options.paramName = this.options.paramName || this.element.name; + this.options.tokens = this.options.tokens || []; + this.options.frequency = this.options.frequency || 0.4; + this.options.minChars = this.options.minChars || 1; + this.options.onShow = this.options.onShow || + function(element, update){ + if(!update.style.position || update.style.position=='absolute') { + update.style.position = 'absolute'; + Position.clone(element, update, { + setHeight: false, + offsetTop: element.offsetHeight + }); + } + Effect.Appear(update,{duration:0.15}); + }; + this.options.onHide = this.options.onHide || + function(element, update){ new Effect.Fade(update,{duration:0.15}) }; + + if(typeof(this.options.tokens) == 'string') + this.options.tokens = new Array(this.options.tokens); + + this.observer = null; + + this.element.setAttribute('autocomplete','off'); + + Element.hide(this.update); + + Event.observe(this.element, "blur", this.onBlur.bindAsEventListener(this)); + Event.observe(this.element, "keypress", this.onKeyPress.bindAsEventListener(this)); + }, + + show: function() { + if(Element.getStyle(this.update, 'display')=='none') this.options.onShow(this.element, this.update); + if(!this.iefix && + (navigator.appVersion.indexOf('MSIE')>0) && + (navigator.userAgent.indexOf('Opera')<0) && + (Element.getStyle(this.update, 'position')=='absolute')) { + new Insertion.After(this.update, + ''); + this.iefix = $(this.update.id+'_iefix'); + } + if(this.iefix) setTimeout(this.fixIEOverlapping.bind(this), 50); + }, + + fixIEOverlapping: function() { + Position.clone(this.update, this.iefix, {setTop:(!this.update.style.height)}); + this.iefix.style.zIndex = 1; + this.update.style.zIndex = 2; + Element.show(this.iefix); + }, + + hide: function() { + this.stopIndicator(); + if(Element.getStyle(this.update, 'display')!='none') this.options.onHide(this.element, this.update); + if(this.iefix) Element.hide(this.iefix); + }, + + startIndicator: function() { + if(this.options.indicator) Element.show(this.options.indicator); + }, + + stopIndicator: function() { + if(this.options.indicator) Element.hide(this.options.indicator); + }, + + onKeyPress: function(event) { + if(this.active) + switch(event.keyCode) { + case Event.KEY_TAB: + case Event.KEY_RETURN: + this.selectEntry(); + Event.stop(event); + case Event.KEY_ESC: + this.hide(); + this.active = false; + Event.stop(event); + return; + case Event.KEY_LEFT: + case Event.KEY_RIGHT: + return; + case Event.KEY_UP: + this.markPrevious(); + this.render(); + if(navigator.appVersion.indexOf('AppleWebKit')>0) Event.stop(event); + return; + case Event.KEY_DOWN: + this.markNext(); + this.render(); + if(navigator.appVersion.indexOf('AppleWebKit')>0) Event.stop(event); + return; + } + else + if(event.keyCode==Event.KEY_TAB || event.keyCode==Event.KEY_RETURN || + (navigator.appVersion.indexOf('AppleWebKit') > 0 && event.keyCode == 0)) return; + + this.changed = true; + this.hasFocus = true; + + if(this.observer) clearTimeout(this.observer); + this.observer = + setTimeout(this.onObserverEvent.bind(this), this.options.frequency*1000); + }, + + activate: function() { + this.changed = false; + this.hasFocus = true; + this.getUpdatedChoices(); + }, + + onHover: function(event) { + var element = Event.findElement(event, 'LI'); + if(this.index != element.autocompleteIndex) + { + this.index = element.autocompleteIndex; + this.render(); + } + Event.stop(event); + }, + + onClick: function(event) { + var element = Event.findElement(event, 'LI'); + this.index = element.autocompleteIndex; + this.selectEntry(); + this.hide(); + }, + + onBlur: function(event) { + // needed to make click events working + setTimeout(this.hide.bind(this), 250); + this.hasFocus = false; + this.active = false; + }, + + render: function() { + if(this.entryCount > 0) { + for (var i = 0; i < this.entryCount; i++) + this.index==i ? + Element.addClassName(this.getEntry(i),"selected") : + Element.removeClassName(this.getEntry(i),"selected"); + + if(this.hasFocus) { + this.show(); + this.active = true; + } + } else { + this.active = false; + this.hide(); + } + }, + + markPrevious: function() { + if(this.index > 0) this.index-- + else this.index = this.entryCount-1; + this.getEntry(this.index).scrollIntoView(true); + }, + + markNext: function() { + if(this.index < this.entryCount-1) this.index++ + else this.index = 0; + this.getEntry(this.index).scrollIntoView(false); + }, + + getEntry: function(index) { + return this.update.firstChild.childNodes[index]; + }, + + getCurrentEntry: function() { + return this.getEntry(this.index); + }, + + selectEntry: function() { + this.active = false; + this.updateElement(this.getCurrentEntry()); + }, + + updateElement: function(selectedElement) { + if (this.options.updateElement) { + this.options.updateElement(selectedElement); + return; + } + var value = ''; + if (this.options.select) { + var nodes = document.getElementsByClassName(this.options.select, selectedElement) || []; + if(nodes.length>0) value = Element.collectTextNodes(nodes[0], this.options.select); + } else + value = Element.collectTextNodesIgnoreClass(selectedElement, 'informal'); + + var lastTokenPos = this.findLastToken(); + if (lastTokenPos != -1) { + var newValue = this.element.value.substr(0, lastTokenPos + 1); + var whitespace = this.element.value.substr(lastTokenPos + 1).match(/^\s+/); + if (whitespace) + newValue += whitespace[0]; + this.element.value = newValue + value; + } else { + this.element.value = value; + } + this.element.focus(); + + if (this.options.afterUpdateElement) + this.options.afterUpdateElement(this.element, selectedElement); + }, + + updateChoices: function(choices) { + if(!this.changed && this.hasFocus) { + this.update.innerHTML = choices; + Element.cleanWhitespace(this.update); + Element.cleanWhitespace(this.update.down()); + + if(this.update.firstChild && this.update.down().childNodes) { + this.entryCount = + this.update.down().childNodes.length; + for (var i = 0; i < this.entryCount; i++) { + var entry = this.getEntry(i); + entry.autocompleteIndex = i; + this.addObservers(entry); + } + } else { + this.entryCount = 0; + } + + this.stopIndicator(); + this.index = 0; + + if(this.entryCount==1 && this.options.autoSelect) { + this.selectEntry(); + this.hide(); + } else { + this.render(); + } + } + }, + + addObservers: function(element) { + Event.observe(element, "mouseover", this.onHover.bindAsEventListener(this)); + Event.observe(element, "click", this.onClick.bindAsEventListener(this)); + }, + + onObserverEvent: function() { + this.changed = false; + if(this.getToken().length>=this.options.minChars) { + this.startIndicator(); + this.getUpdatedChoices(); + } else { + this.active = false; + this.hide(); + } + }, + + getToken: function() { + var tokenPos = this.findLastToken(); + if (tokenPos != -1) + var ret = this.element.value.substr(tokenPos + 1).replace(/^\s+/,'').replace(/\s+$/,''); + else + var ret = this.element.value; + + return /\n/.test(ret) ? '' : ret; + }, + + findLastToken: function() { + var lastTokenPos = -1; + + for (var i=0; i lastTokenPos) + lastTokenPos = thisTokenPos; + } + return lastTokenPos; + } +} + +Ajax.Autocompleter = Class.create(); +Object.extend(Object.extend(Ajax.Autocompleter.prototype, Autocompleter.Base.prototype), { + initialize: function(element, update, url, options) { + this.baseInitialize(element, update, options); + this.options.asynchronous = true; + this.options.onComplete = this.onComplete.bind(this); + this.options.defaultParams = this.options.parameters || null; + this.url = url; + }, + + getUpdatedChoices: function() { + entry = encodeURIComponent(this.options.paramName) + '=' + + encodeURIComponent(this.getToken()); + + this.options.parameters = this.options.callback ? + this.options.callback(this.element, entry) : entry; + + if(this.options.defaultParams) + this.options.parameters += '&' + this.options.defaultParams; + + new Ajax.Request(this.url, this.options); + }, + + onComplete: function(request) { + this.updateChoices(request.responseText); + } + +}); + +// The local array autocompleter. Used when you'd prefer to +// inject an array of autocompletion options into the page, rather +// than sending out Ajax queries, which can be quite slow sometimes. +// +// The constructor takes four parameters. The first two are, as usual, +// the id of the monitored textbox, and id of the autocompletion menu. +// The third is the array you want to autocomplete from, and the fourth +// is the options block. +// +// Extra local autocompletion options: +// - choices - How many autocompletion choices to offer +// +// - partialSearch - If false, the autocompleter will match entered +// text only at the beginning of strings in the +// autocomplete array. Defaults to true, which will +// match text at the beginning of any *word* in the +// strings in the autocomplete array. If you want to +// search anywhere in the string, additionally set +// the option fullSearch to true (default: off). +// +// - fullSsearch - Search anywhere in autocomplete array strings. +// +// - partialChars - How many characters to enter before triggering +// a partial match (unlike minChars, which defines +// how many characters are required to do any match +// at all). Defaults to 2. +// +// - ignoreCase - Whether to ignore case when autocompleting. +// Defaults to true. +// +// It's possible to pass in a custom function as the 'selector' +// option, if you prefer to write your own autocompletion logic. +// In that case, the other options above will not apply unless +// you support them. + +Autocompleter.Local = Class.create(); +Autocompleter.Local.prototype = Object.extend(new Autocompleter.Base(), { + initialize: function(element, update, array, options) { + this.baseInitialize(element, update, options); + this.options.array = array; + }, + + getUpdatedChoices: function() { + this.updateChoices(this.options.selector(this)); + }, + + setOptions: function(options) { + this.options = Object.extend({ + choices: 10, + partialSearch: true, + partialChars: 2, + ignoreCase: true, + fullSearch: false, + selector: function(instance) { + var ret = []; // Beginning matches + var partial = []; // Inside matches + var entry = instance.getToken(); + var count = 0; + + for (var i = 0; i < instance.options.array.length && + ret.length < instance.options.choices ; i++) { + + var elem = instance.options.array[i]; + var foundPos = instance.options.ignoreCase ? + elem.toLowerCase().indexOf(entry.toLowerCase()) : + elem.indexOf(entry); + + while (foundPos != -1) { + if (foundPos == 0 && elem.length != entry.length) { + ret.push("
  • " + elem.substr(0, entry.length) + "" + + elem.substr(entry.length) + "
  • "); + break; + } else if (entry.length >= instance.options.partialChars && + instance.options.partialSearch && foundPos != -1) { + if (instance.options.fullSearch || /\s/.test(elem.substr(foundPos-1,1))) { + partial.push("
  • " + elem.substr(0, foundPos) + "" + + elem.substr(foundPos, entry.length) + "" + elem.substr( + foundPos + entry.length) + "
  • "); + break; + } + } + + foundPos = instance.options.ignoreCase ? + elem.toLowerCase().indexOf(entry.toLowerCase(), foundPos + 1) : + elem.indexOf(entry, foundPos + 1); + + } + } + if (partial.length) + ret = ret.concat(partial.slice(0, instance.options.choices - ret.length)) + return "
      " + ret.join('') + "
    "; + } + }, options || {}); + } +}); + +// AJAX in-place editor +// +// see documentation on http://wiki.script.aculo.us/scriptaculous/show/Ajax.InPlaceEditor + +// Use this if you notice weird scrolling problems on some browsers, +// the DOM might be a bit confused when this gets called so do this +// waits 1 ms (with setTimeout) until it does the activation +Field.scrollFreeActivate = function(field) { + setTimeout(function() { + Field.activate(field); + }, 1); +} + +Ajax.InPlaceEditor = Class.create(); +Ajax.InPlaceEditor.defaultHighlightColor = "#FFFF99"; +Ajax.InPlaceEditor.prototype = { + initialize: function(element, url, options) { + this.url = url; + this.element = $(element); + + this.options = Object.extend({ + paramName: "valeur", + okButton: true, + okText: "ok", + cancelLink: true, + cancelText: "Annuler", + savingText: "Sauvegarde...", + clickToEditText: "Cliquer pour diter", + okText: "ok", + rows: 1, + onComplete: function(transport, element) { + new Effect.Highlight(element, {startcolor: this.options.highlightcolor}); + }, + onFailure: function(transport) { + alert("Erreur de communication avec le serveur: " + transport.responseText.stripTags()); + }, + callback: function(form) { + return Form.serialize(form); + }, + handleLineBreaks: true, + loadingText: 'Chargement...', + savingClassName: 'inplaceeditor-saving', + loadingClassName: 'inplaceeditor-loading', + formClassName: 'inplaceeditor-form', + highlightcolor: Ajax.InPlaceEditor.defaultHighlightColor, + highlightendcolor: "#FFFFFF", + externalControl: null, + submitOnBlur: false, + ajaxOptions: {}, + evalScripts: false + }, options || {}); + + if(!this.options.formId && this.element.id) { + this.options.formId = this.element.id + "-inplaceeditor"; + if ($(this.options.formId)) { + // there's already a form with that name, don't specify an id + this.options.formId = null; + } + } + + if (this.options.externalControl) { + this.options.externalControl = $(this.options.externalControl); + } + + this.originalBackground = Element.getStyle(this.element, 'background-color'); + if (!this.originalBackground) { + this.originalBackground = "transparent"; + } + + this.element.title = this.options.clickToEditText; + + this.onclickListener = this.enterEditMode.bindAsEventListener(this); + this.mouseoverListener = this.enterHover.bindAsEventListener(this); + this.mouseoutListener = this.leaveHover.bindAsEventListener(this); + Event.observe(this.element, 'click', this.onclickListener); + Event.observe(this.element, 'mouseover', this.mouseoverListener); + Event.observe(this.element, 'mouseout', this.mouseoutListener); + if (this.options.externalControl) { + Event.observe(this.options.externalControl, 'click', this.onclickListener); + Event.observe(this.options.externalControl, 'mouseover', this.mouseoverListener); + Event.observe(this.options.externalControl, 'mouseout', this.mouseoutListener); + } + }, + enterEditMode: function(evt) { + if (this.saving) return; + if (this.editing) return; + this.editing = true; + this.onEnterEditMode(); + if (this.options.externalControl) { + Element.hide(this.options.externalControl); + } + Element.hide(this.element); + this.createForm(); + this.element.parentNode.insertBefore(this.form, this.element); + if (!this.options.loadTextURL) Field.scrollFreeActivate(this.editField); + // stop the event to avoid a page refresh in Safari + if (evt) { + Event.stop(evt); + } + return false; + }, + createForm: function() { + this.form = document.createElement("form"); + this.form.id = this.options.formId; + Element.addClassName(this.form, this.options.formClassName) + this.form.onsubmit = this.onSubmit.bind(this); + + this.createEditField(); + + if (this.options.textarea) { + var br = document.createElement("br"); + this.form.appendChild(br); + } + + if (this.options.okButton) { + okButton = document.createElement("input"); + okButton.type = "submit"; + okButton.value = this.options.okText; + okButton.className = 'editor_ok_button'; + this.form.appendChild(okButton); + } + + if (this.options.cancelLink) { + cancelLink = document.createElement("a"); + cancelLink.href = "#"; + cancelLink.appendChild(document.createTextNode(this.options.cancelText)); + cancelLink.onclick = this.onclickCancel.bind(this); + cancelLink.className = 'editor_cancel'; + this.form.appendChild(cancelLink); + } + }, + hasHTMLLineBreaks: function(string) { + if (!this.options.handleLineBreaks) return false; + return string.match(/
    /i); + }, + convertHTMLLineBreaks: function(string) { + return string.replace(/
    /gi, "\n").replace(//gi, "\n").replace(/<\/p>/gi, "\n").replace(/

    /gi, ""); + }, + createEditField: function() { + var text; + if(this.options.loadTextURL) { + text = this.options.loadingText; + } else { + text = this.getText(); + } + + var obj = this; + + if (this.options.rows == 1 && !this.hasHTMLLineBreaks(text)) { + this.options.textarea = false; + var textField = document.createElement("input"); + textField.obj = this; + textField.type = "text"; + textField.name = this.options.paramName; + textField.value = text; + textField.style.backgroundColor = this.options.highlightcolor; + textField.className = 'editor_field'; + var size = this.options.size || this.options.cols || 0; + if (size != 0) textField.size = size; + if (this.options.submitOnBlur) + textField.onblur = this.onSubmit.bind(this); + this.editField = textField; + } else { + this.options.textarea = true; + var textArea = document.createElement("textarea"); + textArea.obj = this; + textArea.name = this.options.paramName; + textArea.value = this.convertHTMLLineBreaks(text); + textArea.rows = this.options.rows; + textArea.cols = this.options.cols || 40; + textArea.className = 'editor_field'; + if (this.options.submitOnBlur) + textArea.onblur = this.onSubmit.bind(this); + this.editField = textArea; + } + + if(this.options.loadTextURL) { + this.loadExternalText(); + } + this.form.appendChild(this.editField); + }, + getText: function() { + return this.element.innerHTML; + }, + loadExternalText: function() { + Element.addClassName(this.form, this.options.loadingClassName); + this.editField.disabled = true; + new Ajax.Request( + this.options.loadTextURL, + Object.extend({ + asynchronous: true, + onComplete: this.onLoadedExternalText.bind(this) + }, this.options.ajaxOptions) + ); + }, + onLoadedExternalText: function(transport) { + Element.removeClassName(this.form, this.options.loadingClassName); + this.editField.disabled = false; + this.editField.value = transport.responseText.stripTags(); + Field.scrollFreeActivate(this.editField); + }, + onclickCancel: function() { + this.onComplete(); + this.leaveEditMode(); + return false; + }, + onFailure: function(transport) { + this.options.onFailure(transport); + if (this.oldInnerHTML) { + this.element.innerHTML = this.oldInnerHTML; + this.oldInnerHTML = null; + } + return false; + }, + onSubmit: function() { + // onLoading resets these so we need to save them away for the Ajax call + var form = this.form; + var value = this.editField.value; + + // do this first, sometimes the ajax call returns before we get a chance to switch on Saving... + // which means this will actually switch on Saving... *after* we've left edit mode causing Saving... + // to be displayed indefinitely + this.onLoading(); + + if (this.options.evalScripts) { + new Ajax.Request( + this.url, Object.extend({ + parameters: this.options.callback(form, value), + onComplete: this.onComplete.bind(this), + onFailure: this.onFailure.bind(this), + asynchronous:true, + evalScripts:true + }, this.options.ajaxOptions)); + } else { + new Ajax.Updater( + { success: this.element, + // don't update on failure (this could be an option) + failure: null }, + this.url, Object.extend({ + parameters: this.options.callback(form, value), + onComplete: this.onComplete.bind(this), + onFailure: this.onFailure.bind(this) + }, this.options.ajaxOptions)); + } + // stop the event to avoid a page refresh in Safari + if (arguments.length > 1) { + Event.stop(arguments[0]); + } + return false; + }, + onLoading: function() { + this.saving = true; + this.removeForm(); + this.leaveHover(); + this.showSaving(); + }, + showSaving: function() { + this.oldInnerHTML = this.element.innerHTML; + this.element.innerHTML = this.options.savingText; + Element.addClassName(this.element, this.options.savingClassName); + this.element.style.backgroundColor = this.originalBackground; + Element.show(this.element); + }, + removeForm: function() { + if(this.form) { + if (this.form.parentNode) Element.remove(this.form); + this.form = null; + } + }, + enterHover: function() { + if (this.saving) return; + this.element.style.backgroundColor = this.options.highlightcolor; + if (this.effect) { + this.effect.cancel(); + } + Element.addClassName(this.element, this.options.hoverClassName) + }, + leaveHover: function() { + if (this.options.backgroundColor) { + this.element.style.backgroundColor = this.oldBackground; + } + Element.removeClassName(this.element, this.options.hoverClassName) + if (this.saving) return; + this.effect = new Effect.Highlight(this.element, { + startcolor: this.options.highlightcolor, + endcolor: this.options.highlightendcolor, + restorecolor: this.originalBackground + }); + }, + leaveEditMode: function() { + Element.removeClassName(this.element, this.options.savingClassName); + this.removeForm(); + this.leaveHover(); + this.element.style.backgroundColor = this.originalBackground; + Element.show(this.element); + if (this.options.externalControl) { + Element.show(this.options.externalControl); + } + this.editing = false; + this.saving = false; + this.oldInnerHTML = null; + this.onLeaveEditMode(); + }, + onComplete: function(transport) { + this.leaveEditMode(); + this.options.onComplete.bind(this)(transport, this.element); + }, + onEnterEditMode: function() {}, + onLeaveEditMode: function() {}, + dispose: function() { + if (this.oldInnerHTML) { + this.element.innerHTML = this.oldInnerHTML; + } + this.leaveEditMode(); + Event.stopObserving(this.element, 'click', this.onclickListener); + Event.stopObserving(this.element, 'mouseover', this.mouseoverListener); + Event.stopObserving(this.element, 'mouseout', this.mouseoutListener); + if (this.options.externalControl) { + Event.stopObserving(this.options.externalControl, 'click', this.onclickListener); + Event.stopObserving(this.options.externalControl, 'mouseover', this.mouseoverListener); + Event.stopObserving(this.options.externalControl, 'mouseout', this.mouseoutListener); + } + } +}; + +Ajax.InPlaceCollectionEditor = Class.create(); +Object.extend(Ajax.InPlaceCollectionEditor.prototype, Ajax.InPlaceEditor.prototype); +Object.extend(Ajax.InPlaceCollectionEditor.prototype, { + createEditField: function() { + if (!this.cached_selectTag) { + var selectTag = document.createElement("select"); + var collection = this.options.collection || []; + var optionTag; + collection.each(function(e,i) { + optionTag = document.createElement("option"); + optionTag.value = (e instanceof Array) ? e[0] : e; + if((typeof this.options.value == 'undefined') && + ((e instanceof Array) ? this.element.innerHTML == e[1] : e == optionTag.value)) optionTag.selected = true; + if(this.options.value==optionTag.value) optionTag.selected = true; + optionTag.appendChild(document.createTextNode((e instanceof Array) ? e[1] : e)); + selectTag.appendChild(optionTag); + }.bind(this)); + this.cached_selectTag = selectTag; + } + + this.editField = this.cached_selectTag; + if(this.options.loadTextURL) this.loadExternalText(); + this.form.appendChild(this.editField); + this.options.callback = function(form, value) { + return "value=" + encodeURIComponent(value); + } + } +}); + +// Delayed observer, like Form.Element.Observer, +// but waits for delay after last key input +// Ideal for live-search fields + +Form.Element.DelayedObserver = Class.create(); +Form.Element.DelayedObserver.prototype = { + initialize: function(element, delay, callback) { + this.delay = delay || 0.5; + this.element = $(element); + this.callback = callback; + this.timer = null; + this.lastValue = $F(this.element); + Event.observe(this.element,'keyup',this.delayedListener.bindAsEventListener(this)); + }, + delayedListener: function(event) { + if(this.lastValue == $F(this.element)) return; + if(this.timer) clearTimeout(this.timer); + this.timer = setTimeout(this.onTimerEvent.bind(this), this.delay * 1000); + this.lastValue = $F(this.element); + }, + onTimerEvent: function() { + this.timer = null; + this.callback(this.element, $F(this.element)); + } +}; diff --git a/P5B/ruby/mon_projet/public/javascripts/controls.js~ b/P5B/ruby/mon_projet/public/javascripts/controls.js~ new file mode 100644 index 0000000..8c273f8 --- /dev/null +++ b/P5B/ruby/mon_projet/public/javascripts/controls.js~ @@ -0,0 +1,833 @@ +// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// (c) 2005, 2006 Ivan Krstic (http://blogs.law.harvard.edu/ivan) +// (c) 2005, 2006 Jon Tirsen (http://www.tirsen.com) +// Contributors: +// Richard Livsey +// Rahul Bhargava +// Rob Wills +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +// Autocompleter.Base handles all the autocompletion functionality +// that's independent of the data source for autocompletion. This +// includes drawing the autocompletion menu, observing keyboard +// and mouse events, and similar. +// +// Specific autocompleters need to provide, at the very least, +// a getUpdatedChoices function that will be invoked every time +// the text inside the monitored textbox changes. This method +// should get the text for which to provide autocompletion by +// invoking this.getToken(), NOT by directly accessing +// this.element.value. This is to allow incremental tokenized +// autocompletion. Specific auto-completion logic (AJAX, etc) +// belongs in getUpdatedChoices. +// +// Tokenized incremental autocompletion is enabled automatically +// when an autocompleter is instantiated with the 'tokens' option +// in the options parameter, e.g.: +// new Ajax.Autocompleter('id','upd', '/url/', { tokens: ',' }); +// will incrementally autocomplete with a comma as the token. +// Additionally, ',' in the above example can be replaced with +// a token array, e.g. { tokens: [',', '\n'] } which +// enables autocompletion on multiple tokens. This is most +// useful when one of the tokens is \n (a newline), as it +// allows smart autocompletion after linebreaks. + +if(typeof Effect == 'undefined') + throw("controls.js requires including script.aculo.us' effects.js library"); + +var Autocompleter = {} +Autocompleter.Base = function() {}; +Autocompleter.Base.prototype = { + baseInitialize: function(element, update, options) { + this.element = $(element); + this.update = $(update); + this.hasFocus = false; + this.changed = false; + this.active = false; + this.index = 0; + this.entryCount = 0; + + if(this.setOptions) + this.setOptions(options); + else + this.options = options || {}; + + this.options.paramName = this.options.paramName || this.element.name; + this.options.tokens = this.options.tokens || []; + this.options.frequency = this.options.frequency || 0.4; + this.options.minChars = this.options.minChars || 1; + this.options.onShow = this.options.onShow || + function(element, update){ + if(!update.style.position || update.style.position=='absolute') { + update.style.position = 'absolute'; + Position.clone(element, update, { + setHeight: false, + offsetTop: element.offsetHeight + }); + } + Effect.Appear(update,{duration:0.15}); + }; + this.options.onHide = this.options.onHide || + function(element, update){ new Effect.Fade(update,{duration:0.15}) }; + + if(typeof(this.options.tokens) == 'string') + this.options.tokens = new Array(this.options.tokens); + + this.observer = null; + + this.element.setAttribute('autocomplete','off'); + + Element.hide(this.update); + + Event.observe(this.element, "blur", this.onBlur.bindAsEventListener(this)); + Event.observe(this.element, "keypress", this.onKeyPress.bindAsEventListener(this)); + }, + + show: function() { + if(Element.getStyle(this.update, 'display')=='none') this.options.onShow(this.element, this.update); + if(!this.iefix && + (navigator.appVersion.indexOf('MSIE')>0) && + (navigator.userAgent.indexOf('Opera')<0) && + (Element.getStyle(this.update, 'position')=='absolute')) { + new Insertion.After(this.update, + ''); + this.iefix = $(this.update.id+'_iefix'); + } + if(this.iefix) setTimeout(this.fixIEOverlapping.bind(this), 50); + }, + + fixIEOverlapping: function() { + Position.clone(this.update, this.iefix, {setTop:(!this.update.style.height)}); + this.iefix.style.zIndex = 1; + this.update.style.zIndex = 2; + Element.show(this.iefix); + }, + + hide: function() { + this.stopIndicator(); + if(Element.getStyle(this.update, 'display')!='none') this.options.onHide(this.element, this.update); + if(this.iefix) Element.hide(this.iefix); + }, + + startIndicator: function() { + if(this.options.indicator) Element.show(this.options.indicator); + }, + + stopIndicator: function() { + if(this.options.indicator) Element.hide(this.options.indicator); + }, + + onKeyPress: function(event) { + if(this.active) + switch(event.keyCode) { + case Event.KEY_TAB: + case Event.KEY_RETURN: + this.selectEntry(); + Event.stop(event); + case Event.KEY_ESC: + this.hide(); + this.active = false; + Event.stop(event); + return; + case Event.KEY_LEFT: + case Event.KEY_RIGHT: + return; + case Event.KEY_UP: + this.markPrevious(); + this.render(); + if(navigator.appVersion.indexOf('AppleWebKit')>0) Event.stop(event); + return; + case Event.KEY_DOWN: + this.markNext(); + this.render(); + if(navigator.appVersion.indexOf('AppleWebKit')>0) Event.stop(event); + return; + } + else + if(event.keyCode==Event.KEY_TAB || event.keyCode==Event.KEY_RETURN || + (navigator.appVersion.indexOf('AppleWebKit') > 0 && event.keyCode == 0)) return; + + this.changed = true; + this.hasFocus = true; + + if(this.observer) clearTimeout(this.observer); + this.observer = + setTimeout(this.onObserverEvent.bind(this), this.options.frequency*1000); + }, + + activate: function() { + this.changed = false; + this.hasFocus = true; + this.getUpdatedChoices(); + }, + + onHover: function(event) { + var element = Event.findElement(event, 'LI'); + if(this.index != element.autocompleteIndex) + { + this.index = element.autocompleteIndex; + this.render(); + } + Event.stop(event); + }, + + onClick: function(event) { + var element = Event.findElement(event, 'LI'); + this.index = element.autocompleteIndex; + this.selectEntry(); + this.hide(); + }, + + onBlur: function(event) { + // needed to make click events working + setTimeout(this.hide.bind(this), 250); + this.hasFocus = false; + this.active = false; + }, + + render: function() { + if(this.entryCount > 0) { + for (var i = 0; i < this.entryCount; i++) + this.index==i ? + Element.addClassName(this.getEntry(i),"selected") : + Element.removeClassName(this.getEntry(i),"selected"); + + if(this.hasFocus) { + this.show(); + this.active = true; + } + } else { + this.active = false; + this.hide(); + } + }, + + markPrevious: function() { + if(this.index > 0) this.index-- + else this.index = this.entryCount-1; + this.getEntry(this.index).scrollIntoView(true); + }, + + markNext: function() { + if(this.index < this.entryCount-1) this.index++ + else this.index = 0; + this.getEntry(this.index).scrollIntoView(false); + }, + + getEntry: function(index) { + return this.update.firstChild.childNodes[index]; + }, + + getCurrentEntry: function() { + return this.getEntry(this.index); + }, + + selectEntry: function() { + this.active = false; + this.updateElement(this.getCurrentEntry()); + }, + + updateElement: function(selectedElement) { + if (this.options.updateElement) { + this.options.updateElement(selectedElement); + return; + } + var value = ''; + if (this.options.select) { + var nodes = document.getElementsByClassName(this.options.select, selectedElement) || []; + if(nodes.length>0) value = Element.collectTextNodes(nodes[0], this.options.select); + } else + value = Element.collectTextNodesIgnoreClass(selectedElement, 'informal'); + + var lastTokenPos = this.findLastToken(); + if (lastTokenPos != -1) { + var newValue = this.element.value.substr(0, lastTokenPos + 1); + var whitespace = this.element.value.substr(lastTokenPos + 1).match(/^\s+/); + if (whitespace) + newValue += whitespace[0]; + this.element.value = newValue + value; + } else { + this.element.value = value; + } + this.element.focus(); + + if (this.options.afterUpdateElement) + this.options.afterUpdateElement(this.element, selectedElement); + }, + + updateChoices: function(choices) { + if(!this.changed && this.hasFocus) { + this.update.innerHTML = choices; + Element.cleanWhitespace(this.update); + Element.cleanWhitespace(this.update.down()); + + if(this.update.firstChild && this.update.down().childNodes) { + this.entryCount = + this.update.down().childNodes.length; + for (var i = 0; i < this.entryCount; i++) { + var entry = this.getEntry(i); + entry.autocompleteIndex = i; + this.addObservers(entry); + } + } else { + this.entryCount = 0; + } + + this.stopIndicator(); + this.index = 0; + + if(this.entryCount==1 && this.options.autoSelect) { + this.selectEntry(); + this.hide(); + } else { + this.render(); + } + } + }, + + addObservers: function(element) { + Event.observe(element, "mouseover", this.onHover.bindAsEventListener(this)); + Event.observe(element, "click", this.onClick.bindAsEventListener(this)); + }, + + onObserverEvent: function() { + this.changed = false; + if(this.getToken().length>=this.options.minChars) { + this.startIndicator(); + this.getUpdatedChoices(); + } else { + this.active = false; + this.hide(); + } + }, + + getToken: function() { + var tokenPos = this.findLastToken(); + if (tokenPos != -1) + var ret = this.element.value.substr(tokenPos + 1).replace(/^\s+/,'').replace(/\s+$/,''); + else + var ret = this.element.value; + + return /\n/.test(ret) ? '' : ret; + }, + + findLastToken: function() { + var lastTokenPos = -1; + + for (var i=0; i lastTokenPos) + lastTokenPos = thisTokenPos; + } + return lastTokenPos; + } +} + +Ajax.Autocompleter = Class.create(); +Object.extend(Object.extend(Ajax.Autocompleter.prototype, Autocompleter.Base.prototype), { + initialize: function(element, update, url, options) { + this.baseInitialize(element, update, options); + this.options.asynchronous = true; + this.options.onComplete = this.onComplete.bind(this); + this.options.defaultParams = this.options.parameters || null; + this.url = url; + }, + + getUpdatedChoices: function() { + entry = encodeURIComponent(this.options.paramName) + '=' + + encodeURIComponent(this.getToken()); + + this.options.parameters = this.options.callback ? + this.options.callback(this.element, entry) : entry; + + if(this.options.defaultParams) + this.options.parameters += '&' + this.options.defaultParams; + + new Ajax.Request(this.url, this.options); + }, + + onComplete: function(request) { + this.updateChoices(request.responseText); + } + +}); + +// The local array autocompleter. Used when you'd prefer to +// inject an array of autocompletion options into the page, rather +// than sending out Ajax queries, which can be quite slow sometimes. +// +// The constructor takes four parameters. The first two are, as usual, +// the id of the monitored textbox, and id of the autocompletion menu. +// The third is the array you want to autocomplete from, and the fourth +// is the options block. +// +// Extra local autocompletion options: +// - choices - How many autocompletion choices to offer +// +// - partialSearch - If false, the autocompleter will match entered +// text only at the beginning of strings in the +// autocomplete array. Defaults to true, which will +// match text at the beginning of any *word* in the +// strings in the autocomplete array. If you want to +// search anywhere in the string, additionally set +// the option fullSearch to true (default: off). +// +// - fullSsearch - Search anywhere in autocomplete array strings. +// +// - partialChars - How many characters to enter before triggering +// a partial match (unlike minChars, which defines +// how many characters are required to do any match +// at all). Defaults to 2. +// +// - ignoreCase - Whether to ignore case when autocompleting. +// Defaults to true. +// +// It's possible to pass in a custom function as the 'selector' +// option, if you prefer to write your own autocompletion logic. +// In that case, the other options above will not apply unless +// you support them. + +Autocompleter.Local = Class.create(); +Autocompleter.Local.prototype = Object.extend(new Autocompleter.Base(), { + initialize: function(element, update, array, options) { + this.baseInitialize(element, update, options); + this.options.array = array; + }, + + getUpdatedChoices: function() { + this.updateChoices(this.options.selector(this)); + }, + + setOptions: function(options) { + this.options = Object.extend({ + choices: 10, + partialSearch: true, + partialChars: 2, + ignoreCase: true, + fullSearch: false, + selector: function(instance) { + var ret = []; // Beginning matches + var partial = []; // Inside matches + var entry = instance.getToken(); + var count = 0; + + for (var i = 0; i < instance.options.array.length && + ret.length < instance.options.choices ; i++) { + + var elem = instance.options.array[i]; + var foundPos = instance.options.ignoreCase ? + elem.toLowerCase().indexOf(entry.toLowerCase()) : + elem.indexOf(entry); + + while (foundPos != -1) { + if (foundPos == 0 && elem.length != entry.length) { + ret.push("

  • " + elem.substr(0, entry.length) + "" + + elem.substr(entry.length) + "
  • "); + break; + } else if (entry.length >= instance.options.partialChars && + instance.options.partialSearch && foundPos != -1) { + if (instance.options.fullSearch || /\s/.test(elem.substr(foundPos-1,1))) { + partial.push("
  • " + elem.substr(0, foundPos) + "" + + elem.substr(foundPos, entry.length) + "" + elem.substr( + foundPos + entry.length) + "
  • "); + break; + } + } + + foundPos = instance.options.ignoreCase ? + elem.toLowerCase().indexOf(entry.toLowerCase(), foundPos + 1) : + elem.indexOf(entry, foundPos + 1); + + } + } + if (partial.length) + ret = ret.concat(partial.slice(0, instance.options.choices - ret.length)) + return "
      " + ret.join('') + "
    "; + } + }, options || {}); + } +}); + +// AJAX in-place editor +// +// see documentation on http://wiki.script.aculo.us/scriptaculous/show/Ajax.InPlaceEditor + +// Use this if you notice weird scrolling problems on some browsers, +// the DOM might be a bit confused when this gets called so do this +// waits 1 ms (with setTimeout) until it does the activation +Field.scrollFreeActivate = function(field) { + setTimeout(function() { + Field.activate(field); + }, 1); +} + +Ajax.InPlaceEditor = Class.create(); +Ajax.InPlaceEditor.defaultHighlightColor = "#FFFF99"; +Ajax.InPlaceEditor.prototype = { + initialize: function(element, url, options) { + this.url = url; + this.element = $(element); + + this.options = Object.extend({ + paramName: "value", + okButton: true, + okText: "ok", + cancelLink: true, + cancelText: "cancel", + savingText: "Saving...", + clickToEditText: "Click to edit", + okText: "ok", + rows: 1, + onComplete: function(transport, element) { + new Effect.Highlight(element, {startcolor: this.options.highlightcolor}); + }, + onFailure: function(transport) { + alert("Error communicating with the server: " + transport.responseText.stripTags()); + }, + callback: function(form) { + return Form.serialize(form); + }, + handleLineBreaks: true, + loadingText: 'Loading...', + savingClassName: 'inplaceeditor-saving', + loadingClassName: 'inplaceeditor-loading', + formClassName: 'inplaceeditor-form', + highlightcolor: Ajax.InPlaceEditor.defaultHighlightColor, + highlightendcolor: "#FFFFFF", + externalControl: null, + submitOnBlur: false, + ajaxOptions: {}, + evalScripts: false + }, options || {}); + + if(!this.options.formId && this.element.id) { + this.options.formId = this.element.id + "-inplaceeditor"; + if ($(this.options.formId)) { + // there's already a form with that name, don't specify an id + this.options.formId = null; + } + } + + if (this.options.externalControl) { + this.options.externalControl = $(this.options.externalControl); + } + + this.originalBackground = Element.getStyle(this.element, 'background-color'); + if (!this.originalBackground) { + this.originalBackground = "transparent"; + } + + this.element.title = this.options.clickToEditText; + + this.onclickListener = this.enterEditMode.bindAsEventListener(this); + this.mouseoverListener = this.enterHover.bindAsEventListener(this); + this.mouseoutListener = this.leaveHover.bindAsEventListener(this); + Event.observe(this.element, 'click', this.onclickListener); + Event.observe(this.element, 'mouseover', this.mouseoverListener); + Event.observe(this.element, 'mouseout', this.mouseoutListener); + if (this.options.externalControl) { + Event.observe(this.options.externalControl, 'click', this.onclickListener); + Event.observe(this.options.externalControl, 'mouseover', this.mouseoverListener); + Event.observe(this.options.externalControl, 'mouseout', this.mouseoutListener); + } + }, + enterEditMode: function(evt) { + if (this.saving) return; + if (this.editing) return; + this.editing = true; + this.onEnterEditMode(); + if (this.options.externalControl) { + Element.hide(this.options.externalControl); + } + Element.hide(this.element); + this.createForm(); + this.element.parentNode.insertBefore(this.form, this.element); + if (!this.options.loadTextURL) Field.scrollFreeActivate(this.editField); + // stop the event to avoid a page refresh in Safari + if (evt) { + Event.stop(evt); + } + return false; + }, + createForm: function() { + this.form = document.createElement("form"); + this.form.id = this.options.formId; + Element.addClassName(this.form, this.options.formClassName) + this.form.onsubmit = this.onSubmit.bind(this); + + this.createEditField(); + + if (this.options.textarea) { + var br = document.createElement("br"); + this.form.appendChild(br); + } + + if (this.options.okButton) { + okButton = document.createElement("input"); + okButton.type = "submit"; + okButton.value = this.options.okText; + okButton.className = 'editor_ok_button'; + this.form.appendChild(okButton); + } + + if (this.options.cancelLink) { + cancelLink = document.createElement("a"); + cancelLink.href = "#"; + cancelLink.appendChild(document.createTextNode(this.options.cancelText)); + cancelLink.onclick = this.onclickCancel.bind(this); + cancelLink.className = 'editor_cancel'; + this.form.appendChild(cancelLink); + } + }, + hasHTMLLineBreaks: function(string) { + if (!this.options.handleLineBreaks) return false; + return string.match(/
    /i); + }, + convertHTMLLineBreaks: function(string) { + return string.replace(/
    /gi, "\n").replace(//gi, "\n").replace(/<\/p>/gi, "\n").replace(/

    /gi, ""); + }, + createEditField: function() { + var text; + if(this.options.loadTextURL) { + text = this.options.loadingText; + } else { + text = this.getText(); + } + + var obj = this; + + if (this.options.rows == 1 && !this.hasHTMLLineBreaks(text)) { + this.options.textarea = false; + var textField = document.createElement("input"); + textField.obj = this; + textField.type = "text"; + textField.name = this.options.paramName; + textField.value = text; + textField.style.backgroundColor = this.options.highlightcolor; + textField.className = 'editor_field'; + var size = this.options.size || this.options.cols || 0; + if (size != 0) textField.size = size; + if (this.options.submitOnBlur) + textField.onblur = this.onSubmit.bind(this); + this.editField = textField; + } else { + this.options.textarea = true; + var textArea = document.createElement("textarea"); + textArea.obj = this; + textArea.name = this.options.paramName; + textArea.value = this.convertHTMLLineBreaks(text); + textArea.rows = this.options.rows; + textArea.cols = this.options.cols || 40; + textArea.className = 'editor_field'; + if (this.options.submitOnBlur) + textArea.onblur = this.onSubmit.bind(this); + this.editField = textArea; + } + + if(this.options.loadTextURL) { + this.loadExternalText(); + } + this.form.appendChild(this.editField); + }, + getText: function() { + return this.element.innerHTML; + }, + loadExternalText: function() { + Element.addClassName(this.form, this.options.loadingClassName); + this.editField.disabled = true; + new Ajax.Request( + this.options.loadTextURL, + Object.extend({ + asynchronous: true, + onComplete: this.onLoadedExternalText.bind(this) + }, this.options.ajaxOptions) + ); + }, + onLoadedExternalText: function(transport) { + Element.removeClassName(this.form, this.options.loadingClassName); + this.editField.disabled = false; + this.editField.value = transport.responseText.stripTags(); + Field.scrollFreeActivate(this.editField); + }, + onclickCancel: function() { + this.onComplete(); + this.leaveEditMode(); + return false; + }, + onFailure: function(transport) { + this.options.onFailure(transport); + if (this.oldInnerHTML) { + this.element.innerHTML = this.oldInnerHTML; + this.oldInnerHTML = null; + } + return false; + }, + onSubmit: function() { + // onLoading resets these so we need to save them away for the Ajax call + var form = this.form; + var value = this.editField.value; + + // do this first, sometimes the ajax call returns before we get a chance to switch on Saving... + // which means this will actually switch on Saving... *after* we've left edit mode causing Saving... + // to be displayed indefinitely + this.onLoading(); + + if (this.options.evalScripts) { + new Ajax.Request( + this.url, Object.extend({ + parameters: this.options.callback(form, value), + onComplete: this.onComplete.bind(this), + onFailure: this.onFailure.bind(this), + asynchronous:true, + evalScripts:true + }, this.options.ajaxOptions)); + } else { + new Ajax.Updater( + { success: this.element, + // don't update on failure (this could be an option) + failure: null }, + this.url, Object.extend({ + parameters: this.options.callback(form, value), + onComplete: this.onComplete.bind(this), + onFailure: this.onFailure.bind(this) + }, this.options.ajaxOptions)); + } + // stop the event to avoid a page refresh in Safari + if (arguments.length > 1) { + Event.stop(arguments[0]); + } + return false; + }, + onLoading: function() { + this.saving = true; + this.removeForm(); + this.leaveHover(); + this.showSaving(); + }, + showSaving: function() { + this.oldInnerHTML = this.element.innerHTML; + this.element.innerHTML = this.options.savingText; + Element.addClassName(this.element, this.options.savingClassName); + this.element.style.backgroundColor = this.originalBackground; + Element.show(this.element); + }, + removeForm: function() { + if(this.form) { + if (this.form.parentNode) Element.remove(this.form); + this.form = null; + } + }, + enterHover: function() { + if (this.saving) return; + this.element.style.backgroundColor = this.options.highlightcolor; + if (this.effect) { + this.effect.cancel(); + } + Element.addClassName(this.element, this.options.hoverClassName) + }, + leaveHover: function() { + if (this.options.backgroundColor) { + this.element.style.backgroundColor = this.oldBackground; + } + Element.removeClassName(this.element, this.options.hoverClassName) + if (this.saving) return; + this.effect = new Effect.Highlight(this.element, { + startcolor: this.options.highlightcolor, + endcolor: this.options.highlightendcolor, + restorecolor: this.originalBackground + }); + }, + leaveEditMode: function() { + Element.removeClassName(this.element, this.options.savingClassName); + this.removeForm(); + this.leaveHover(); + this.element.style.backgroundColor = this.originalBackground; + Element.show(this.element); + if (this.options.externalControl) { + Element.show(this.options.externalControl); + } + this.editing = false; + this.saving = false; + this.oldInnerHTML = null; + this.onLeaveEditMode(); + }, + onComplete: function(transport) { + this.leaveEditMode(); + this.options.onComplete.bind(this)(transport, this.element); + }, + onEnterEditMode: function() {}, + onLeaveEditMode: function() {}, + dispose: function() { + if (this.oldInnerHTML) { + this.element.innerHTML = this.oldInnerHTML; + } + this.leaveEditMode(); + Event.stopObserving(this.element, 'click', this.onclickListener); + Event.stopObserving(this.element, 'mouseover', this.mouseoverListener); + Event.stopObserving(this.element, 'mouseout', this.mouseoutListener); + if (this.options.externalControl) { + Event.stopObserving(this.options.externalControl, 'click', this.onclickListener); + Event.stopObserving(this.options.externalControl, 'mouseover', this.mouseoverListener); + Event.stopObserving(this.options.externalControl, 'mouseout', this.mouseoutListener); + } + } +}; + +Ajax.InPlaceCollectionEditor = Class.create(); +Object.extend(Ajax.InPlaceCollectionEditor.prototype, Ajax.InPlaceEditor.prototype); +Object.extend(Ajax.InPlaceCollectionEditor.prototype, { + createEditField: function() { + if (!this.cached_selectTag) { + var selectTag = document.createElement("select"); + var collection = this.options.collection || []; + var optionTag; + collection.each(function(e,i) { + optionTag = document.createElement("option"); + optionTag.value = (e instanceof Array) ? e[0] : e; + if((typeof this.options.value == 'undefined') && + ((e instanceof Array) ? this.element.innerHTML == e[1] : e == optionTag.value)) optionTag.selected = true; + if(this.options.value==optionTag.value) optionTag.selected = true; + optionTag.appendChild(document.createTextNode((e instanceof Array) ? e[1] : e)); + selectTag.appendChild(optionTag); + }.bind(this)); + this.cached_selectTag = selectTag; + } + + this.editField = this.cached_selectTag; + if(this.options.loadTextURL) this.loadExternalText(); + this.form.appendChild(this.editField); + this.options.callback = function(form, value) { + return "value=" + encodeURIComponent(value); + } + } +}); + +// Delayed observer, like Form.Element.Observer, +// but waits for delay after last key input +// Ideal for live-search fields + +Form.Element.DelayedObserver = Class.create(); +Form.Element.DelayedObserver.prototype = { + initialize: function(element, delay, callback) { + this.delay = delay || 0.5; + this.element = $(element); + this.callback = callback; + this.timer = null; + this.lastValue = $F(this.element); + Event.observe(this.element,'keyup',this.delayedListener.bindAsEventListener(this)); + }, + delayedListener: function(event) { + if(this.lastValue == $F(this.element)) return; + if(this.timer) clearTimeout(this.timer); + this.timer = setTimeout(this.onTimerEvent.bind(this), this.delay * 1000); + this.lastValue = $F(this.element); + }, + onTimerEvent: function() { + this.timer = null; + this.callback(this.element, $F(this.element)); + } +}; diff --git a/P5B/ruby/mon_projet/public/javascripts/dragdrop.js b/P5B/ruby/mon_projet/public/javascripts/dragdrop.js new file mode 100644 index 0000000..c71ddb8 --- /dev/null +++ b/P5B/ruby/mon_projet/public/javascripts/dragdrop.js @@ -0,0 +1,942 @@ +// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// (c) 2005, 2006 Sammi Williams (http://www.oriontransfer.co.nz, sammi@oriontransfer.co.nz) +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +if(typeof Effect == 'undefined') + throw("dragdrop.js requires including script.aculo.us' effects.js library"); + +var Droppables = { + drops: [], + + remove: function(element) { + this.drops = this.drops.reject(function(d) { return d.element==$(element) }); + }, + + add: function(element) { + element = $(element); + var options = Object.extend({ + greedy: true, + hoverclass: null, + tree: false + }, arguments[1] || {}); + + // cache containers + if(options.containment) { + options._containers = []; + var containment = options.containment; + if((typeof containment == 'object') && + (containment.constructor == Array)) { + containment.each( function(c) { options._containers.push($(c)) }); + } else { + options._containers.push($(containment)); + } + } + + if(options.accept) options.accept = [options.accept].flatten(); + + Element.makePositioned(element); // fix IE + options.element = element; + + this.drops.push(options); + }, + + findDeepestChild: function(drops) { + deepest = drops[0]; + + for (i = 1; i < drops.length; ++i) + if (Element.isParent(drops[i].element, deepest.element)) + deepest = drops[i]; + + return deepest; + }, + + isContained: function(element, drop) { + var containmentNode; + if(drop.tree) { + containmentNode = element.treeNode; + } else { + containmentNode = element.parentNode; + } + return drop._containers.detect(function(c) { return containmentNode == c }); + }, + + isAffected: function(point, element, drop) { + return ( + (drop.element!=element) && + ((!drop._containers) || + this.isContained(element, drop)) && + ((!drop.accept) || + (Element.classNames(element).detect( + function(v) { return drop.accept.include(v) } ) )) && + Position.within(drop.element, point[0], point[1]) ); + }, + + deactivate: function(drop) { + if(drop.hoverclass) + Element.removeClassName(drop.element, drop.hoverclass); + this.last_active = null; + }, + + activate: function(drop) { + if(drop.hoverclass) + Element.addClassName(drop.element, drop.hoverclass); + this.last_active = drop; + }, + + show: function(point, element) { + if(!this.drops.length) return; + var affected = []; + + if(this.last_active) this.deactivate(this.last_active); + this.drops.each( function(drop) { + if(Droppables.isAffected(point, element, drop)) + affected.push(drop); + }); + + if(affected.length>0) { + drop = Droppables.findDeepestChild(affected); + Position.within(drop.element, point[0], point[1]); + if(drop.onHover) + drop.onHover(element, drop.element, Position.overlap(drop.overlap, drop.element)); + + Droppables.activate(drop); + } + }, + + fire: function(event, element) { + if(!this.last_active) return; + Position.prepare(); + + if (this.isAffected([Event.pointerX(event), Event.pointerY(event)], element, this.last_active)) + if (this.last_active.onDrop) + this.last_active.onDrop(element, this.last_active.element, event); + }, + + reset: function() { + if(this.last_active) + this.deactivate(this.last_active); + } +} + +var Draggables = { + drags: [], + observers: [], + + register: function(draggable) { + if(this.drags.length == 0) { + this.eventMouseUp = this.endDrag.bindAsEventListener(this); + this.eventMouseMove = this.updateDrag.bindAsEventListener(this); + this.eventKeypress = this.keyPress.bindAsEventListener(this); + + Event.observe(document, "mouseup", this.eventMouseUp); + Event.observe(document, "mousemove", this.eventMouseMove); + Event.observe(document, "keypress", this.eventKeypress); + } + this.drags.push(draggable); + }, + + unregister: function(draggable) { + this.drags = this.drags.reject(function(d) { return d==draggable }); + if(this.drags.length == 0) { + Event.stopObserving(document, "mouseup", this.eventMouseUp); + Event.stopObserving(document, "mousemove", this.eventMouseMove); + Event.stopObserving(document, "keypress", this.eventKeypress); + } + }, + + activate: function(draggable) { + if(draggable.options.delay) { + this._timeout = setTimeout(function() { + Draggables._timeout = null; + window.focus(); + Draggables.activeDraggable = draggable; + }.bind(this), draggable.options.delay); + } else { + window.focus(); // allows keypress events if window isn't currently focused, fails for Safari + this.activeDraggable = draggable; + } + }, + + deactivate: function() { + this.activeDraggable = null; + }, + + updateDrag: function(event) { + if(!this.activeDraggable) return; + var pointer = [Event.pointerX(event), Event.pointerY(event)]; + // Mozilla-based browsers fire successive mousemove events with + // the same coordinates, prevent needless redrawing (moz bug?) + if(this._lastPointer && (this._lastPointer.inspect() == pointer.inspect())) return; + this._lastPointer = pointer; + + this.activeDraggable.updateDrag(event, pointer); + }, + + endDrag: function(event) { + if(this._timeout) { + clearTimeout(this._timeout); + this._timeout = null; + } + if(!this.activeDraggable) return; + this._lastPointer = null; + this.activeDraggable.endDrag(event); + this.activeDraggable = null; + }, + + keyPress: function(event) { + if(this.activeDraggable) + this.activeDraggable.keyPress(event); + }, + + addObserver: function(observer) { + this.observers.push(observer); + this._cacheObserverCallbacks(); + }, + + removeObserver: function(element) { // element instead of observer fixes mem leaks + this.observers = this.observers.reject( function(o) { return o.element==element }); + this._cacheObserverCallbacks(); + }, + + notify: function(eventName, draggable, event) { // 'onStart', 'onEnd', 'onDrag' + if(this[eventName+'Count'] > 0) + this.observers.each( function(o) { + if(o[eventName]) o[eventName](eventName, draggable, event); + }); + if(draggable.options[eventName]) draggable.options[eventName](draggable, event); + }, + + _cacheObserverCallbacks: function() { + ['onStart','onEnd','onDrag'].each( function(eventName) { + Draggables[eventName+'Count'] = Draggables.observers.select( + function(o) { return o[eventName]; } + ).length; + }); + } +} + +/*--------------------------------------------------------------------------*/ + +var Draggable = Class.create(); +Draggable._dragging = {}; + +Draggable.prototype = { + initialize: function(element) { + var defaults = { + handle: false, + reverteffect: function(element, top_offset, left_offset) { + var dur = Math.sqrt(Math.abs(top_offset^2)+Math.abs(left_offset^2))*0.02; + new Effect.Move(element, { x: -left_offset, y: -top_offset, duration: dur, + queue: {scope:'_draggable', position:'end'} + }); + }, + endeffect: function(element) { + var toOpacity = typeof element._opacity == 'number' ? element._opacity : 1.0; + new Effect.Opacity(element, {duration:0.2, from:0.7, to:toOpacity, + queue: {scope:'_draggable', position:'end'}, + afterFinish: function(){ + Draggable._dragging[element] = false + } + }); + }, + zindex: 1000, + revert: false, + scroll: false, + scrollSensitivity: 20, + scrollSpeed: 15, + snap: false, // false, or xy or [x,y] or function(x,y){ return [x,y] } + delay: 0 + }; + + if(!arguments[1] || typeof arguments[1].endeffect == 'undefined') + Object.extend(defaults, { + starteffect: function(element) { + element._opacity = Element.getOpacity(element); + Draggable._dragging[element] = true; + new Effect.Opacity(element, {duration:0.2, from:element._opacity, to:0.7}); + } + }); + + var options = Object.extend(defaults, arguments[1] || {}); + + this.element = $(element); + + if(options.handle && (typeof options.handle == 'string')) + this.handle = this.element.down('.'+options.handle, 0); + + if(!this.handle) this.handle = $(options.handle); + if(!this.handle) this.handle = this.element; + + if(options.scroll && !options.scroll.scrollTo && !options.scroll.outerHTML) { + options.scroll = $(options.scroll); + this._isScrollChild = Element.childOf(this.element, options.scroll); + } + + Element.makePositioned(this.element); // fix IE + + this.delta = this.currentDelta(); + this.options = options; + this.dragging = false; + + this.eventMouseDown = this.initDrag.bindAsEventListener(this); + Event.observe(this.handle, "mousedown", this.eventMouseDown); + + Draggables.register(this); + }, + + destroy: function() { + Event.stopObserving(this.handle, "mousedown", this.eventMouseDown); + Draggables.unregister(this); + }, + + currentDelta: function() { + return([ + parseInt(Element.getStyle(this.element,'left') || '0'), + parseInt(Element.getStyle(this.element,'top') || '0')]); + }, + + initDrag: function(event) { + if(typeof Draggable._dragging[this.element] != 'undefined' && + Draggable._dragging[this.element]) return; + if(Event.isLeftClick(event)) { + // abort on form elements, fixes a Firefox issue + var src = Event.element(event); + if(src.tagName && ( + src.tagName=='INPUT' || + src.tagName=='SELECT' || + src.tagName=='OPTION' || + src.tagName=='BUTTON' || + src.tagName=='TEXTAREA')) return; + + var pointer = [Event.pointerX(event), Event.pointerY(event)]; + var pos = Position.cumulativeOffset(this.element); + this.offset = [0,1].map( function(i) { return (pointer[i] - pos[i]) }); + + Draggables.activate(this); + Event.stop(event); + } + }, + + startDrag: function(event) { + this.dragging = true; + + if(this.options.zindex) { + this.originalZ = parseInt(Element.getStyle(this.element,'z-index') || 0); + this.element.style.zIndex = this.options.zindex; + } + + if(this.options.ghosting) { + this._clone = this.element.cloneNode(true); + Position.absolutize(this.element); + this.element.parentNode.insertBefore(this._clone, this.element); + } + + if(this.options.scroll) { + if (this.options.scroll == window) { + var where = this._getWindowScroll(this.options.scroll); + this.originalScrollLeft = where.left; + this.originalScrollTop = where.top; + } else { + this.originalScrollLeft = this.options.scroll.scrollLeft; + this.originalScrollTop = this.options.scroll.scrollTop; + } + } + + Draggables.notify('onStart', this, event); + + if(this.options.starteffect) this.options.starteffect(this.element); + }, + + updateDrag: function(event, pointer) { + if(!this.dragging) this.startDrag(event); + Position.prepare(); + Droppables.show(pointer, this.element); + Draggables.notify('onDrag', this, event); + + this.draw(pointer); + if(this.options.change) this.options.change(this); + + if(this.options.scroll) { + this.stopScrolling(); + + var p; + if (this.options.scroll == window) { + with(this._getWindowScroll(this.options.scroll)) { p = [ left, top, left+width, top+height ]; } + } else { + p = Position.page(this.options.scroll); + p[0] += this.options.scroll.scrollLeft + Position.deltaX; + p[1] += this.options.scroll.scrollTop + Position.deltaY; + p.push(p[0]+this.options.scroll.offsetWidth); + p.push(p[1]+this.options.scroll.offsetHeight); + } + var speed = [0,0]; + if(pointer[0] < (p[0]+this.options.scrollSensitivity)) speed[0] = pointer[0]-(p[0]+this.options.scrollSensitivity); + if(pointer[1] < (p[1]+this.options.scrollSensitivity)) speed[1] = pointer[1]-(p[1]+this.options.scrollSensitivity); + if(pointer[0] > (p[2]-this.options.scrollSensitivity)) speed[0] = pointer[0]-(p[2]-this.options.scrollSensitivity); + if(pointer[1] > (p[3]-this.options.scrollSensitivity)) speed[1] = pointer[1]-(p[3]-this.options.scrollSensitivity); + this.startScrolling(speed); + } + + // fix AppleWebKit rendering + if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0); + + Event.stop(event); + }, + + finishDrag: function(event, success) { + this.dragging = false; + + if(this.options.ghosting) { + Position.relativize(this.element); + Element.remove(this._clone); + this._clone = null; + } + + if(success) Droppables.fire(event, this.element); + Draggables.notify('onEnd', this, event); + + var revert = this.options.revert; + if(revert && typeof revert == 'function') revert = revert(this.element); + + var d = this.currentDelta(); + if(revert && this.options.reverteffect) { + this.options.reverteffect(this.element, + d[1]-this.delta[1], d[0]-this.delta[0]); + } else { + this.delta = d; + } + + if(this.options.zindex) + this.element.style.zIndex = this.originalZ; + + if(this.options.endeffect) + this.options.endeffect(this.element); + + Draggables.deactivate(this); + Droppables.reset(); + }, + + keyPress: function(event) { + if(event.keyCode!=Event.KEY_ESC) return; + this.finishDrag(event, false); + Event.stop(event); + }, + + endDrag: function(event) { + if(!this.dragging) return; + this.stopScrolling(); + this.finishDrag(event, true); + Event.stop(event); + }, + + draw: function(point) { + var pos = Position.cumulativeOffset(this.element); + if(this.options.ghosting) { + var r = Position.realOffset(this.element); + pos[0] += r[0] - Position.deltaX; pos[1] += r[1] - Position.deltaY; + } + + var d = this.currentDelta(); + pos[0] -= d[0]; pos[1] -= d[1]; + + if(this.options.scroll && (this.options.scroll != window && this._isScrollChild)) { + pos[0] -= this.options.scroll.scrollLeft-this.originalScrollLeft; + pos[1] -= this.options.scroll.scrollTop-this.originalScrollTop; + } + + var p = [0,1].map(function(i){ + return (point[i]-pos[i]-this.offset[i]) + }.bind(this)); + + if(this.options.snap) { + if(typeof this.options.snap == 'function') { + p = this.options.snap(p[0],p[1],this); + } else { + if(this.options.snap instanceof Array) { + p = p.map( function(v, i) { + return Math.round(v/this.options.snap[i])*this.options.snap[i] }.bind(this)) + } else { + p = p.map( function(v) { + return Math.round(v/this.options.snap)*this.options.snap }.bind(this)) + } + }} + + var style = this.element.style; + if((!this.options.constraint) || (this.options.constraint=='horizontal')) + style.left = p[0] + "px"; + if((!this.options.constraint) || (this.options.constraint=='vertical')) + style.top = p[1] + "px"; + + if(style.visibility=="hidden") style.visibility = ""; // fix gecko rendering + }, + + stopScrolling: function() { + if(this.scrollInterval) { + clearInterval(this.scrollInterval); + this.scrollInterval = null; + Draggables._lastScrollPointer = null; + } + }, + + startScrolling: function(speed) { + if(!(speed[0] || speed[1])) return; + this.scrollSpeed = [speed[0]*this.options.scrollSpeed,speed[1]*this.options.scrollSpeed]; + this.lastScrolled = new Date(); + this.scrollInterval = setInterval(this.scroll.bind(this), 10); + }, + + scroll: function() { + var current = new Date(); + var delta = current - this.lastScrolled; + this.lastScrolled = current; + if(this.options.scroll == window) { + with (this._getWindowScroll(this.options.scroll)) { + if (this.scrollSpeed[0] || this.scrollSpeed[1]) { + var d = delta / 1000; + this.options.scroll.scrollTo( left + d*this.scrollSpeed[0], top + d*this.scrollSpeed[1] ); + } + } + } else { + this.options.scroll.scrollLeft += this.scrollSpeed[0] * delta / 1000; + this.options.scroll.scrollTop += this.scrollSpeed[1] * delta / 1000; + } + + Position.prepare(); + Droppables.show(Draggables._lastPointer, this.element); + Draggables.notify('onDrag', this); + if (this._isScrollChild) { + Draggables._lastScrollPointer = Draggables._lastScrollPointer || $A(Draggables._lastPointer); + Draggables._lastScrollPointer[0] += this.scrollSpeed[0] * delta / 1000; + Draggables._lastScrollPointer[1] += this.scrollSpeed[1] * delta / 1000; + if (Draggables._lastScrollPointer[0] < 0) + Draggables._lastScrollPointer[0] = 0; + if (Draggables._lastScrollPointer[1] < 0) + Draggables._lastScrollPointer[1] = 0; + this.draw(Draggables._lastScrollPointer); + } + + if(this.options.change) this.options.change(this); + }, + + _getWindowScroll: function(w) { + var T, L, W, H; + with (w.document) { + if (w.document.documentElement && documentElement.scrollTop) { + T = documentElement.scrollTop; + L = documentElement.scrollLeft; + } else if (w.document.body) { + T = body.scrollTop; + L = body.scrollLeft; + } + if (w.innerWidth) { + W = w.innerWidth; + H = w.innerHeight; + } else if (w.document.documentElement && documentElement.clientWidth) { + W = documentElement.clientWidth; + H = documentElement.clientHeight; + } else { + W = body.offsetWidth; + H = body.offsetHeight + } + } + return { top: T, left: L, width: W, height: H }; + } +} + +/*--------------------------------------------------------------------------*/ + +var SortableObserver = Class.create(); +SortableObserver.prototype = { + initialize: function(element, observer) { + this.element = $(element); + this.observer = observer; + this.lastValue = Sortable.serialize(this.element); + }, + + onStart: function() { + this.lastValue = Sortable.serialize(this.element); + }, + + onEnd: function() { + Sortable.unmark(); + if(this.lastValue != Sortable.serialize(this.element)) + this.observer(this.element) + } +} + +var Sortable = { + SERIALIZE_RULE: /^[^_\-](?:[A-Za-z0-9\-\_]*)[_](.*)$/, + + sortables: {}, + + _findRootElement: function(element) { + while (element.tagName != "BODY") { + if(element.id && Sortable.sortables[element.id]) return element; + element = element.parentNode; + } + }, + + options: function(element) { + element = Sortable._findRootElement($(element)); + if(!element) return; + return Sortable.sortables[element.id]; + }, + + destroy: function(element){ + var s = Sortable.options(element); + + if(s) { + Draggables.removeObserver(s.element); + s.droppables.each(function(d){ Droppables.remove(d) }); + s.draggables.invoke('destroy'); + + delete Sortable.sortables[s.element.id]; + } + }, + + create: function(element) { + element = $(element); + var options = Object.extend({ + element: element, + tag: 'li', // assumes li children, override with tag: 'tagname' + dropOnEmpty: false, + tree: false, + treeTag: 'ul', + overlap: 'vertical', // one of 'vertical', 'horizontal' + constraint: 'vertical', // one of 'vertical', 'horizontal', false + containment: element, // also takes array of elements (or id's); or false + handle: false, // or a CSS class + only: false, + delay: 0, + hoverclass: null, + ghosting: false, + scroll: false, + scrollSensitivity: 20, + scrollSpeed: 15, + format: this.SERIALIZE_RULE, + onChange: Prototype.emptyFunction, + onUpdate: Prototype.emptyFunction + }, arguments[1] || {}); + + // clear any old sortable with same element + this.destroy(element); + + // build options for the draggables + var options_for_draggable = { + revert: true, + scroll: options.scroll, + scrollSpeed: options.scrollSpeed, + scrollSensitivity: options.scrollSensitivity, + delay: options.delay, + ghosting: options.ghosting, + constraint: options.constraint, + handle: options.handle }; + + if(options.starteffect) + options_for_draggable.starteffect = options.starteffect; + + if(options.reverteffect) + options_for_draggable.reverteffect = options.reverteffect; + else + if(options.ghosting) options_for_draggable.reverteffect = function(element) { + element.style.top = 0; + element.style.left = 0; + }; + + if(options.endeffect) + options_for_draggable.endeffect = options.endeffect; + + if(options.zindex) + options_for_draggable.zindex = options.zindex; + + // build options for the droppables + var options_for_droppable = { + overlap: options.overlap, + containment: options.containment, + tree: options.tree, + hoverclass: options.hoverclass, + onHover: Sortable.onHover + } + + var options_for_tree = { + onHover: Sortable.onEmptyHover, + overlap: options.overlap, + containment: options.containment, + hoverclass: options.hoverclass + } + + // fix for gecko engine + Element.cleanWhitespace(element); + + options.draggables = []; + options.droppables = []; + + // drop on empty handling + if(options.dropOnEmpty || options.tree) { + Droppables.add(element, options_for_tree); + options.droppables.push(element); + } + + (this.findElements(element, options) || []).each( function(e) { + // handles are per-draggable + var handle = options.handle ? + $(e).down('.'+options.handle,0) : e; + options.draggables.push( + new Draggable(e, Object.extend(options_for_draggable, { handle: handle }))); + Droppables.add(e, options_for_droppable); + if(options.tree) e.treeNode = element; + options.droppables.push(e); + }); + + if(options.tree) { + (Sortable.findTreeElements(element, options) || []).each( function(e) { + Droppables.add(e, options_for_tree); + e.treeNode = element; + options.droppables.push(e); + }); + } + + // keep reference + this.sortables[element.id] = options; + + // for onupdate + Draggables.addObserver(new SortableObserver(element, options.onUpdate)); + + }, + + // return all suitable-for-sortable elements in a guaranteed order + findElements: function(element, options) { + return Element.findChildren( + element, options.only, options.tree ? true : false, options.tag); + }, + + findTreeElements: function(element, options) { + return Element.findChildren( + element, options.only, options.tree ? true : false, options.treeTag); + }, + + onHover: function(element, dropon, overlap) { + if(Element.isParent(dropon, element)) return; + + if(overlap > .33 && overlap < .66 && Sortable.options(dropon).tree) { + return; + } else if(overlap>0.5) { + Sortable.mark(dropon, 'before'); + if(dropon.previousSibling != element) { + var oldParentNode = element.parentNode; + element.style.visibility = "hidden"; // fix gecko rendering + dropon.parentNode.insertBefore(element, dropon); + if(dropon.parentNode!=oldParentNode) + Sortable.options(oldParentNode).onChange(element); + Sortable.options(dropon.parentNode).onChange(element); + } + } else { + Sortable.mark(dropon, 'after'); + var nextElement = dropon.nextSibling || null; + if(nextElement != element) { + var oldParentNode = element.parentNode; + element.style.visibility = "hidden"; // fix gecko rendering + dropon.parentNode.insertBefore(element, nextElement); + if(dropon.parentNode!=oldParentNode) + Sortable.options(oldParentNode).onChange(element); + Sortable.options(dropon.parentNode).onChange(element); + } + } + }, + + onEmptyHover: function(element, dropon, overlap) { + var oldParentNode = element.parentNode; + var droponOptions = Sortable.options(dropon); + + if(!Element.isParent(dropon, element)) { + var index; + + var children = Sortable.findElements(dropon, {tag: droponOptions.tag, only: droponOptions.only}); + var child = null; + + if(children) { + var offset = Element.offsetSize(dropon, droponOptions.overlap) * (1.0 - overlap); + + for (index = 0; index < children.length; index += 1) { + if (offset - Element.offsetSize (children[index], droponOptions.overlap) >= 0) { + offset -= Element.offsetSize (children[index], droponOptions.overlap); + } else if (offset - (Element.offsetSize (children[index], droponOptions.overlap) / 2) >= 0) { + child = index + 1 < children.length ? children[index + 1] : null; + break; + } else { + child = children[index]; + break; + } + } + } + + dropon.insertBefore(element, child); + + Sortable.options(oldParentNode).onChange(element); + droponOptions.onChange(element); + } + }, + + unmark: function() { + if(Sortable._marker) Sortable._marker.hide(); + }, + + mark: function(dropon, position) { + // mark on ghosting only + var sortable = Sortable.options(dropon.parentNode); + if(sortable && !sortable.ghosting) return; + + if(!Sortable._marker) { + Sortable._marker = + ($('dropmarker') || Element.extend(document.createElement('DIV'))). + hide().addClassName('dropmarker').setStyle({position:'absolute'}); + document.getElementsByTagName("body").item(0).appendChild(Sortable._marker); + } + var offsets = Position.cumulativeOffset(dropon); + Sortable._marker.setStyle({left: offsets[0]+'px', top: offsets[1] + 'px'}); + + if(position=='after') + if(sortable.overlap == 'horizontal') + Sortable._marker.setStyle({left: (offsets[0]+dropon.clientWidth) + 'px'}); + else + Sortable._marker.setStyle({top: (offsets[1]+dropon.clientHeight) + 'px'}); + + Sortable._marker.show(); + }, + + _tree: function(element, options, parent) { + var children = Sortable.findElements(element, options) || []; + + for (var i = 0; i < children.length; ++i) { + var match = children[i].id.match(options.format); + + if (!match) continue; + + var child = { + id: encodeURIComponent(match ? match[1] : null), + element: element, + parent: parent, + children: [], + position: parent.children.length, + container: $(children[i]).down(options.treeTag) + } + + /* Get the element containing the children and recurse over it */ + if (child.container) + this._tree(child.container, options, child) + + parent.children.push (child); + } + + return parent; + }, + + tree: function(element) { + element = $(element); + var sortableOptions = this.options(element); + var options = Object.extend({ + tag: sortableOptions.tag, + treeTag: sortableOptions.treeTag, + only: sortableOptions.only, + name: element.id, + format: sortableOptions.format + }, arguments[1] || {}); + + var root = { + id: null, + parent: null, + children: [], + container: element, + position: 0 + } + + return Sortable._tree(element, options, root); + }, + + /* Construct a [i] index for a particular node */ + _constructIndex: function(node) { + var index = ''; + do { + if (node.id) index = '[' + node.position + ']' + index; + } while ((node = node.parent) != null); + return index; + }, + + sequence: function(element) { + element = $(element); + var options = Object.extend(this.options(element), arguments[1] || {}); + + return $(this.findElements(element, options) || []).map( function(item) { + return item.id.match(options.format) ? item.id.match(options.format)[1] : ''; + }); + }, + + setSequence: function(element, new_sequence) { + element = $(element); + var options = Object.extend(this.options(element), arguments[2] || {}); + + var nodeMap = {}; + this.findElements(element, options).each( function(n) { + if (n.id.match(options.format)) + nodeMap[n.id.match(options.format)[1]] = [n, n.parentNode]; + n.parentNode.removeChild(n); + }); + + new_sequence.each(function(ident) { + var n = nodeMap[ident]; + if (n) { + n[1].appendChild(n[0]); + delete nodeMap[ident]; + } + }); + }, + + serialize: function(element) { + element = $(element); + var options = Object.extend(Sortable.options(element), arguments[1] || {}); + var name = encodeURIComponent( + (arguments[1] && arguments[1].name) ? arguments[1].name : element.id); + + if (options.tree) { + return Sortable.tree(element, arguments[1]).children.map( function (item) { + return [name + Sortable._constructIndex(item) + "[id]=" + + encodeURIComponent(item.id)].concat(item.children.map(arguments.callee)); + }).flatten().join('&'); + } else { + return Sortable.sequence(element, arguments[1]).map( function(item) { + return name + "[]=" + encodeURIComponent(item); + }).join('&'); + } + } +} + +// Returns true if child is contained within element +Element.isParent = function(child, element) { + if (!child.parentNode || child == element) return false; + if (child.parentNode == element) return true; + return Element.isParent(child.parentNode, element); +} + +Element.findChildren = function(element, only, recursive, tagName) { + if(!element.hasChildNodes()) return null; + tagName = tagName.toUpperCase(); + if(only) only = [only].flatten(); + var elements = []; + $A(element.childNodes).each( function(e) { + if(e.tagName && e.tagName.toUpperCase()==tagName && + (!only || (Element.classNames(e).detect(function(v) { return only.include(v) })))) + elements.push(e); + if(recursive) { + var grandchildren = Element.findChildren(e, only, recursive, tagName); + if(grandchildren) elements.push(grandchildren); + } + }); + + return (elements.length>0 ? elements.flatten() : []); +} + +Element.offsetSize = function (element, type) { + return element['offset' + ((type=='vertical' || type=='height') ? 'Height' : 'Width')]; +} diff --git a/P5B/ruby/mon_projet/public/javascripts/effects.js b/P5B/ruby/mon_projet/public/javascripts/effects.js new file mode 100644 index 0000000..160f304 --- /dev/null +++ b/P5B/ruby/mon_projet/public/javascripts/effects.js @@ -0,0 +1,1088 @@ +// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// Contributors: +// Justin Palmer (http://encytemedia.com/) +// Mark Pilgrim (http://diveintomark.org/) +// Martin Bialasinki +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +// converts rgb() and #xxx to #xxxxxx format, +// returns self (or first argument) if not convertable +String.prototype.parseColor = function() { + var color = '#'; + if(this.slice(0,4) == 'rgb(') { + var cols = this.slice(4,this.length-1).split(','); + var i=0; do { color += parseInt(cols[i]).toColorPart() } while (++i<3); + } else { + if(this.slice(0,1) == '#') { + if(this.length==4) for(var i=1;i<4;i++) color += (this.charAt(i) + this.charAt(i)).toLowerCase(); + if(this.length==7) color = this.toLowerCase(); + } + } + return(color.length==7 ? color : (arguments[0] || this)); +} + +/*--------------------------------------------------------------------------*/ + +Element.collectTextNodes = function(element) { + return $A($(element).childNodes).collect( function(node) { + return (node.nodeType==3 ? node.nodeValue : + (node.hasChildNodes() ? Element.collectTextNodes(node) : '')); + }).flatten().join(''); +} + +Element.collectTextNodesIgnoreClass = function(element, className) { + return $A($(element).childNodes).collect( function(node) { + return (node.nodeType==3 ? node.nodeValue : + ((node.hasChildNodes() && !Element.hasClassName(node,className)) ? + Element.collectTextNodesIgnoreClass(node, className) : '')); + }).flatten().join(''); +} + +Element.setContentZoom = function(element, percent) { + element = $(element); + element.setStyle({fontSize: (percent/100) + 'em'}); + if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0); + return element; +} + +Element.getOpacity = function(element){ + element = $(element); + var opacity; + if (opacity = element.getStyle('opacity')) + return parseFloat(opacity); + if (opacity = (element.getStyle('filter') || '').match(/alpha\(opacity=(.*)\)/)) + if(opacity[1]) return parseFloat(opacity[1]) / 100; + return 1.0; +} + +Element.setOpacity = function(element, value){ + element= $(element); + if (value == 1){ + element.setStyle({ opacity: + (/Gecko/.test(navigator.userAgent) && !/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? + 0.999999 : 1.0 }); + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.setStyle({filter: Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'')}); + } else { + if(value < 0.00001) value = 0; + element.setStyle({opacity: value}); + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.setStyle( + { filter: element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'') + + 'alpha(opacity='+value*100+')' }); + } + return element; +} + +Element.getInlineOpacity = function(element){ + return $(element).style.opacity || ''; +} + +Element.forceRerendering = function(element) { + try { + element = $(element); + var n = document.createTextNode(' '); + element.appendChild(n); + element.removeChild(n); + } catch(e) { } +}; + +/*--------------------------------------------------------------------------*/ + +Array.prototype.call = function() { + var args = arguments; + this.each(function(f){ f.apply(this, args) }); +} + +/*--------------------------------------------------------------------------*/ + +var Effect = { + _elementDoesNotExistError: { + name: 'ElementDoesNotExistError', + message: 'L element DOM spcifi n existe pas, mais est requis pour que l effet opre' + }, + tagifyText: function(element) { + if(typeof Builder == 'undefined') + throw("Effect.tagifyText requires including script.aculo.us' builder.js library"); + + var tagifyStyle = 'position:relative'; + if(/MSIE/.test(navigator.userAgent) && !window.opera) tagifyStyle += ';zoom:1'; + + element = $(element); + $A(element.childNodes).each( function(child) { + if(child.nodeType==3) { + child.nodeValue.toArray().each( function(character) { + element.insertBefore( + Builder.node('span',{style: tagifyStyle}, + character == ' ' ? String.fromCharCode(160) : character), + child); + }); + Element.remove(child); + } + }); + }, + multiple: function(element, effect) { + var elements; + if(((typeof element == 'object') || + (typeof element == 'function')) && + (element.length)) + elements = element; + else + elements = $(element).childNodes; + + var options = Object.extend({ + speed: 0.1, + delay: 0.0 + }, arguments[2] || {}); + var masterDelay = options.delay; + + $A(elements).each( function(element, index) { + new effect(element, Object.extend(options, { delay: index * options.speed + masterDelay })); + }); + }, + PAIRS: { + 'slide': ['SlideDown','SlideUp'], + 'blind': ['BlindDown','BlindUp'], + 'appear': ['Appear','Fade'] + }, + toggle: function(element, effect) { + element = $(element); + effect = (effect || 'appear').toLowerCase(); + var options = Object.extend({ + queue: { position:'end', scope:(element.id || 'global'), limit: 1 } + }, arguments[2] || {}); + Effect[element.visible() ? + Effect.PAIRS[effect][1] : Effect.PAIRS[effect][0]](element, options); + } +}; + +var Effect2 = Effect; // deprecated + +/* ------------- transitions ------------- */ + +Effect.Transitions = { + linear: Prototype.K, + sinoidal: function(pos) { + return (-Math.cos(pos*Math.PI)/2) + 0.5; + }, + reverse: function(pos) { + return 1-pos; + }, + flicker: function(pos) { + return ((-Math.cos(pos*Math.PI)/4) + 0.75) + Math.random()/4; + }, + wobble: function(pos) { + return (-Math.cos(pos*Math.PI*(9*pos))/2) + 0.5; + }, + pulse: function(pos, pulses) { + pulses = pulses || 5; + return ( + Math.round((pos % (1/pulses)) * pulses) == 0 ? + ((pos * pulses * 2) - Math.floor(pos * pulses * 2)) : + 1 - ((pos * pulses * 2) - Math.floor(pos * pulses * 2)) + ); + }, + none: function(pos) { + return 0; + }, + full: function(pos) { + return 1; + } +}; + +/* ------------- core effects ------------- */ + +Effect.ScopedQueue = Class.create(); +Object.extend(Object.extend(Effect.ScopedQueue.prototype, Enumerable), { + initialize: function() { + this.effects = []; + this.interval = null; + }, + _each: function(iterator) { + this.effects._each(iterator); + }, + add: function(effect) { + var timestamp = new Date().getTime(); + + var position = (typeof effect.options.queue == 'string') ? + effect.options.queue : effect.options.queue.position; + + switch(position) { + case 'front': + // move unstarted effects after this effect + this.effects.findAll(function(e){ return e.state=='idle' }).each( function(e) { + e.startOn += effect.finishOn; + e.finishOn += effect.finishOn; + }); + break; + case 'with-last': + timestamp = this.effects.pluck('startOn').max() || timestamp; + break; + case 'end': + // start effect after last queued effect has finished + timestamp = this.effects.pluck('finishOn').max() || timestamp; + break; + } + + effect.startOn += timestamp; + effect.finishOn += timestamp; + + if(!effect.options.queue.limit || (this.effects.length < effect.options.queue.limit)) + this.effects.push(effect); + + if(!this.interval) + this.interval = setInterval(this.loop.bind(this), 40); + }, + remove: function(effect) { + this.effects = this.effects.reject(function(e) { return e==effect }); + if(this.effects.length == 0) { + clearInterval(this.interval); + this.interval = null; + } + }, + loop: function() { + var timePos = new Date().getTime(); + this.effects.invoke('loop', timePos); + } +}); + +Effect.Queues = { + instances: $H(), + get: function(queueName) { + if(typeof queueName != 'string') return queueName; + + if(!this.instances[queueName]) + this.instances[queueName] = new Effect.ScopedQueue(); + + return this.instances[queueName]; + } +} +Effect.Queue = Effect.Queues.get('global'); + +Effect.DefaultOptions = { + transition: Effect.Transitions.sinoidal, + duration: 1.0, // seconds + fps: 25.0, // max. 25fps due to Effect.Queue implementation + sync: false, // true for combining + from: 0.0, + to: 1.0, + delay: 0.0, + queue: 'parallel' +} + +Effect.Base = function() {}; +Effect.Base.prototype = { + position: null, + start: function(options) { + this.options = Object.extend(Object.extend({},Effect.DefaultOptions), options || {}); + this.currentFrame = 0; + this.state = 'idle'; + this.startOn = this.options.delay*1000; + this.finishOn = this.startOn + (this.options.duration*1000); + this.event('beforeStart'); + if(!this.options.sync) + Effect.Queues.get(typeof this.options.queue == 'string' ? + 'global' : this.options.queue.scope).add(this); + }, + loop: function(timePos) { + if(timePos >= this.startOn) { + if(timePos >= this.finishOn) { + this.render(1.0); + this.cancel(); + this.event('beforeFinish'); + if(this.finish) this.finish(); + this.event('afterFinish'); + return; + } + var pos = (timePos - this.startOn) / (this.finishOn - this.startOn); + var frame = Math.round(pos * this.options.fps * this.options.duration); + if(frame > this.currentFrame) { + this.render(pos); + this.currentFrame = frame; + } + } + }, + render: function(pos) { + if(this.state == 'idle') { + this.state = 'running'; + this.event('beforeSetup'); + if(this.setup) this.setup(); + this.event('afterSetup'); + } + if(this.state == 'running') { + if(this.options.transition) pos = this.options.transition(pos); + pos *= (this.options.to-this.options.from); + pos += this.options.from; + this.position = pos; + this.event('beforeUpdate'); + if(this.update) this.update(pos); + this.event('afterUpdate'); + } + }, + cancel: function() { + if(!this.options.sync) + Effect.Queues.get(typeof this.options.queue == 'string' ? + 'global' : this.options.queue.scope).remove(this); + this.state = 'finished'; + }, + event: function(eventName) { + if(this.options[eventName + 'Internal']) this.options[eventName + 'Internal'](this); + if(this.options[eventName]) this.options[eventName](this); + }, + inspect: function() { + return '#'; + } +} + +Effect.Parallel = Class.create(); +Object.extend(Object.extend(Effect.Parallel.prototype, Effect.Base.prototype), { + initialize: function(effects) { + this.effects = effects || []; + this.start(arguments[1]); + }, + update: function(position) { + this.effects.invoke('render', position); + }, + finish: function(position) { + this.effects.each( function(effect) { + effect.render(1.0); + effect.cancel(); + effect.event('beforeFinish'); + if(effect.finish) effect.finish(position); + effect.event('afterFinish'); + }); + } +}); + +Effect.Event = Class.create(); +Object.extend(Object.extend(Effect.Event.prototype, Effect.Base.prototype), { + initialize: function() { + var options = Object.extend({ + duration: 0 + }, arguments[0] || {}); + this.start(options); + }, + update: Prototype.emptyFunction +}); + +Effect.Opacity = Class.create(); +Object.extend(Object.extend(Effect.Opacity.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + // make this work on IE on elements without 'layout' + if(/MSIE/.test(navigator.userAgent) && !window.opera && (!this.element.currentStyle.hasLayout)) + this.element.setStyle({zoom: 1}); + var options = Object.extend({ + from: this.element.getOpacity() || 0.0, + to: 1.0 + }, arguments[1] || {}); + this.start(options); + }, + update: function(position) { + this.element.setOpacity(position); + } +}); + +Effect.Move = Class.create(); +Object.extend(Object.extend(Effect.Move.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + x: 0, + y: 0, + mode: 'relative' + }, arguments[1] || {}); + this.start(options); + }, + setup: function() { + // Bug in Opera: Opera returns the "real" position of a static element or + // relative element that does not have top/left explicitly set. + // ==> Always set top and left for position relative elements in your stylesheets + // (to 0 if you do not need them) + this.element.makePositioned(); + this.originalLeft = parseFloat(this.element.getStyle('left') || '0'); + this.originalTop = parseFloat(this.element.getStyle('top') || '0'); + if(this.options.mode == 'absolute') { + // absolute movement, so we need to calc deltaX and deltaY + this.options.x = this.options.x - this.originalLeft; + this.options.y = this.options.y - this.originalTop; + } + }, + update: function(position) { + this.element.setStyle({ + left: Math.round(this.options.x * position + this.originalLeft) + 'px', + top: Math.round(this.options.y * position + this.originalTop) + 'px' + }); + } +}); + +// for backwards compatibility +Effect.MoveBy = function(element, toTop, toLeft) { + return new Effect.Move(element, + Object.extend({ x: toLeft, y: toTop }, arguments[3] || {})); +}; + +Effect.Scale = Class.create(); +Object.extend(Object.extend(Effect.Scale.prototype, Effect.Base.prototype), { + initialize: function(element, percent) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + scaleX: true, + scaleY: true, + scaleContent: true, + scaleFromCenter: false, + scaleMode: 'box', // 'box' or 'contents' or {} with provided values + scaleFrom: 100.0, + scaleTo: percent + }, arguments[2] || {}); + this.start(options); + }, + setup: function() { + this.restoreAfterFinish = this.options.restoreAfterFinish || false; + this.elementPositioning = this.element.getStyle('position'); + + this.originalStyle = {}; + ['top','left','width','height','fontSize'].each( function(k) { + this.originalStyle[k] = this.element.style[k]; + }.bind(this)); + + this.originalTop = this.element.offsetTop; + this.originalLeft = this.element.offsetLeft; + + var fontSize = this.element.getStyle('font-size') || '100%'; + ['em','px','%','pt'].each( function(fontSizeType) { + if(fontSize.indexOf(fontSizeType)>0) { + this.fontSize = parseFloat(fontSize); + this.fontSizeType = fontSizeType; + } + }.bind(this)); + + this.factor = (this.options.scaleTo - this.options.scaleFrom)/100; + + this.dims = null; + if(this.options.scaleMode=='box') + this.dims = [this.element.offsetHeight, this.element.offsetWidth]; + if(/^content/.test(this.options.scaleMode)) + this.dims = [this.element.scrollHeight, this.element.scrollWidth]; + if(!this.dims) + this.dims = [this.options.scaleMode.originalHeight, + this.options.scaleMode.originalWidth]; + }, + update: function(position) { + var currentScale = (this.options.scaleFrom/100.0) + (this.factor * position); + if(this.options.scaleContent && this.fontSize) + this.element.setStyle({fontSize: this.fontSize * currentScale + this.fontSizeType }); + this.setDimensions(this.dims[0] * currentScale, this.dims[1] * currentScale); + }, + finish: function(position) { + if(this.restoreAfterFinish) this.element.setStyle(this.originalStyle); + }, + setDimensions: function(height, width) { + var d = {}; + if(this.options.scaleX) d.width = Math.round(width) + 'px'; + if(this.options.scaleY) d.height = Math.round(height) + 'px'; + if(this.options.scaleFromCenter) { + var topd = (height - this.dims[0])/2; + var leftd = (width - this.dims[1])/2; + if(this.elementPositioning == 'absolute') { + if(this.options.scaleY) d.top = this.originalTop-topd + 'px'; + if(this.options.scaleX) d.left = this.originalLeft-leftd + 'px'; + } else { + if(this.options.scaleY) d.top = -topd + 'px'; + if(this.options.scaleX) d.left = -leftd + 'px'; + } + } + this.element.setStyle(d); + } +}); + +Effect.Highlight = Class.create(); +Object.extend(Object.extend(Effect.Highlight.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ startcolor: '#ffff99' }, arguments[1] || {}); + this.start(options); + }, + setup: function() { + // Prevent executing on elements not in the layout flow + if(this.element.getStyle('display')=='none') { this.cancel(); return; } + // Disable background image during the effect + this.oldStyle = { + backgroundImage: this.element.getStyle('background-image') }; + this.element.setStyle({backgroundImage: 'none'}); + if(!this.options.endcolor) + this.options.endcolor = this.element.getStyle('background-color').parseColor('#ffffff'); + if(!this.options.restorecolor) + this.options.restorecolor = this.element.getStyle('background-color'); + // init color calculations + this._base = $R(0,2).map(function(i){ return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16) }.bind(this)); + this._delta = $R(0,2).map(function(i){ return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i] }.bind(this)); + }, + update: function(position) { + this.element.setStyle({backgroundColor: $R(0,2).inject('#',function(m,v,i){ + return m+(Math.round(this._base[i]+(this._delta[i]*position)).toColorPart()); }.bind(this)) }); + }, + finish: function() { + this.element.setStyle(Object.extend(this.oldStyle, { + backgroundColor: this.options.restorecolor + })); + } +}); + +Effect.ScrollTo = Class.create(); +Object.extend(Object.extend(Effect.ScrollTo.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + this.start(arguments[1] || {}); + }, + setup: function() { + Position.prepare(); + var offsets = Position.cumulativeOffset(this.element); + if(this.options.offset) offsets[1] += this.options.offset; + var max = window.innerHeight ? + window.height - window.innerHeight : + document.body.scrollHeight - + (document.documentElement.clientHeight ? + document.documentElement.clientHeight : document.body.clientHeight); + this.scrollStart = Position.deltaY; + this.delta = (offsets[1] > max ? max : offsets[1]) - this.scrollStart; + }, + update: function(position) { + Position.prepare(); + window.scrollTo(Position.deltaX, + this.scrollStart + (position*this.delta)); + } +}); + +/* ------------- combination effects ------------- */ + +Effect.Fade = function(element) { + element = $(element); + var oldOpacity = element.getInlineOpacity(); + var options = Object.extend({ + from: element.getOpacity() || 1.0, + to: 0.0, + afterFinishInternal: function(effect) { + if(effect.options.to!=0) return; + effect.element.hide().setStyle({opacity: oldOpacity}); + }}, arguments[1] || {}); + return new Effect.Opacity(element,options); +} + +Effect.Appear = function(element) { + element = $(element); + var options = Object.extend({ + from: (element.getStyle('display') == 'none' ? 0.0 : element.getOpacity() || 0.0), + to: 1.0, + // force Safari to render floated elements properly + afterFinishInternal: function(effect) { + effect.element.forceRerendering(); + }, + beforeSetup: function(effect) { + effect.element.setOpacity(effect.options.from).show(); + }}, arguments[1] || {}); + return new Effect.Opacity(element,options); +} + +Effect.Puff = function(element) { + element = $(element); + var oldStyle = { + opacity: element.getInlineOpacity(), + position: element.getStyle('position'), + top: element.style.top, + left: element.style.left, + width: element.style.width, + height: element.style.height + }; + return new Effect.Parallel( + [ new Effect.Scale(element, 200, + { sync: true, scaleFromCenter: true, scaleContent: true, restoreAfterFinish: true }), + new Effect.Opacity(element, { sync: true, to: 0.0 } ) ], + Object.extend({ duration: 1.0, + beforeSetupInternal: function(effect) { + Position.absolutize(effect.effects[0].element) + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().setStyle(oldStyle); } + }, arguments[1] || {}) + ); +} + +Effect.BlindUp = function(element) { + element = $(element); + element.makeClipping(); + return new Effect.Scale(element, 0, + Object.extend({ scaleContent: false, + scaleX: false, + restoreAfterFinish: true, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping(); + } + }, arguments[1] || {}) + ); +} + +Effect.BlindDown = function(element) { + element = $(element); + var elementDimensions = element.getDimensions(); + return new Effect.Scale(element, 100, Object.extend({ + scaleContent: false, + scaleX: false, + scaleFrom: 0, + scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width}, + restoreAfterFinish: true, + afterSetup: function(effect) { + effect.element.makeClipping().setStyle({height: '0px'}).show(); + }, + afterFinishInternal: function(effect) { + effect.element.undoClipping(); + } + }, arguments[1] || {})); +} + +Effect.SwitchOff = function(element) { + element = $(element); + var oldOpacity = element.getInlineOpacity(); + return new Effect.Appear(element, Object.extend({ + duration: 0.4, + from: 0, + transition: Effect.Transitions.flicker, + afterFinishInternal: function(effect) { + new Effect.Scale(effect.element, 1, { + duration: 0.3, scaleFromCenter: true, + scaleX: false, scaleContent: false, restoreAfterFinish: true, + beforeSetup: function(effect) { + effect.element.makePositioned().makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().undoPositioned().setStyle({opacity: oldOpacity}); + } + }) + } + }, arguments[1] || {})); +} + +Effect.DropOut = function(element) { + element = $(element); + var oldStyle = { + top: element.getStyle('top'), + left: element.getStyle('left'), + opacity: element.getInlineOpacity() }; + return new Effect.Parallel( + [ new Effect.Move(element, {x: 0, y: 100, sync: true }), + new Effect.Opacity(element, { sync: true, to: 0.0 }) ], + Object.extend( + { duration: 0.5, + beforeSetup: function(effect) { + effect.effects[0].element.makePositioned(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle); + } + }, arguments[1] || {})); +} + +Effect.Shake = function(element) { + element = $(element); + var oldStyle = { + top: element.getStyle('top'), + left: element.getStyle('left') }; + return new Effect.Move(element, + { x: 20, y: 0, duration: 0.05, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: 40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: 40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -20, y: 0, duration: 0.05, afterFinishInternal: function(effect) { + effect.element.undoPositioned().setStyle(oldStyle); + }}) }}) }}) }}) }}) }}); +} + +Effect.SlideDown = function(element) { + element = $(element).cleanWhitespace(); + // SlideDown need to have the content of the element wrapped in a container element with fixed height! + var oldInnerBottom = element.down().getStyle('bottom'); + var elementDimensions = element.getDimensions(); + return new Effect.Scale(element, 100, Object.extend({ + scaleContent: false, + scaleX: false, + scaleFrom: window.opera ? 0 : 1, + scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width}, + restoreAfterFinish: true, + afterSetup: function(effect) { + effect.element.makePositioned(); + effect.element.down().makePositioned(); + if(window.opera) effect.element.setStyle({top: ''}); + effect.element.makeClipping().setStyle({height: '0px'}).show(); + }, + afterUpdateInternal: function(effect) { + effect.element.down().setStyle({bottom: + (effect.dims[0] - effect.element.clientHeight) + 'px' }); + }, + afterFinishInternal: function(effect) { + effect.element.undoClipping().undoPositioned(); + effect.element.down().undoPositioned().setStyle({bottom: oldInnerBottom}); } + }, arguments[1] || {}) + ); +} + +Effect.SlideUp = function(element) { + element = $(element).cleanWhitespace(); + var oldInnerBottom = element.down().getStyle('bottom'); + return new Effect.Scale(element, window.opera ? 0 : 1, + Object.extend({ scaleContent: false, + scaleX: false, + scaleMode: 'box', + scaleFrom: 100, + restoreAfterFinish: true, + beforeStartInternal: function(effect) { + effect.element.makePositioned(); + effect.element.down().makePositioned(); + if(window.opera) effect.element.setStyle({top: ''}); + effect.element.makeClipping().show(); + }, + afterUpdateInternal: function(effect) { + effect.element.down().setStyle({bottom: + (effect.dims[0] - effect.element.clientHeight) + 'px' }); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().undoPositioned().setStyle({bottom: oldInnerBottom}); + effect.element.down().undoPositioned(); + } + }, arguments[1] || {}) + ); +} + +// Bug in opera makes the TD containing this element expand for a instance after finish +Effect.Squish = function(element) { + return new Effect.Scale(element, window.opera ? 1 : 0, { + restoreAfterFinish: true, + beforeSetup: function(effect) { + effect.element.makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping(); + } + }); +} + +Effect.Grow = function(element) { + element = $(element); + var options = Object.extend({ + direction: 'center', + moveTransition: Effect.Transitions.sinoidal, + scaleTransition: Effect.Transitions.sinoidal, + opacityTransition: Effect.Transitions.full + }, arguments[1] || {}); + var oldStyle = { + top: element.style.top, + left: element.style.left, + height: element.style.height, + width: element.style.width, + opacity: element.getInlineOpacity() }; + + var dims = element.getDimensions(); + var initialMoveX, initialMoveY; + var moveX, moveY; + + switch (options.direction) { + case 'top-left': + initialMoveX = initialMoveY = moveX = moveY = 0; + break; + case 'top-right': + initialMoveX = dims.width; + initialMoveY = moveY = 0; + moveX = -dims.width; + break; + case 'bottom-left': + initialMoveX = moveX = 0; + initialMoveY = dims.height; + moveY = -dims.height; + break; + case 'bottom-right': + initialMoveX = dims.width; + initialMoveY = dims.height; + moveX = -dims.width; + moveY = -dims.height; + break; + case 'center': + initialMoveX = dims.width / 2; + initialMoveY = dims.height / 2; + moveX = -dims.width / 2; + moveY = -dims.height / 2; + break; + } + + return new Effect.Move(element, { + x: initialMoveX, + y: initialMoveY, + duration: 0.01, + beforeSetup: function(effect) { + effect.element.hide().makeClipping().makePositioned(); + }, + afterFinishInternal: function(effect) { + new Effect.Parallel( + [ new Effect.Opacity(effect.element, { sync: true, to: 1.0, from: 0.0, transition: options.opacityTransition }), + new Effect.Move(effect.element, { x: moveX, y: moveY, sync: true, transition: options.moveTransition }), + new Effect.Scale(effect.element, 100, { + scaleMode: { originalHeight: dims.height, originalWidth: dims.width }, + sync: true, scaleFrom: window.opera ? 1 : 0, transition: options.scaleTransition, restoreAfterFinish: true}) + ], Object.extend({ + beforeSetup: function(effect) { + effect.effects[0].element.setStyle({height: '0px'}).show(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldStyle); + } + }, options) + ) + } + }); +} + +Effect.Shrink = function(element) { + element = $(element); + var options = Object.extend({ + direction: 'center', + moveTransition: Effect.Transitions.sinoidal, + scaleTransition: Effect.Transitions.sinoidal, + opacityTransition: Effect.Transitions.none + }, arguments[1] || {}); + var oldStyle = { + top: element.style.top, + left: element.style.left, + height: element.style.height, + width: element.style.width, + opacity: element.getInlineOpacity() }; + + var dims = element.getDimensions(); + var moveX, moveY; + + switch (options.direction) { + case 'top-left': + moveX = moveY = 0; + break; + case 'top-right': + moveX = dims.width; + moveY = 0; + break; + case 'bottom-left': + moveX = 0; + moveY = dims.height; + break; + case 'bottom-right': + moveX = dims.width; + moveY = dims.height; + break; + case 'center': + moveX = dims.width / 2; + moveY = dims.height / 2; + break; + } + + return new Effect.Parallel( + [ new Effect.Opacity(element, { sync: true, to: 0.0, from: 1.0, transition: options.opacityTransition }), + new Effect.Scale(element, window.opera ? 1 : 0, { sync: true, transition: options.scaleTransition, restoreAfterFinish: true}), + new Effect.Move(element, { x: moveX, y: moveY, sync: true, transition: options.moveTransition }) + ], Object.extend({ + beforeStartInternal: function(effect) { + effect.effects[0].element.makePositioned().makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle(oldStyle); } + }, options) + ); +} + +Effect.Pulsate = function(element) { + element = $(element); + var options = arguments[1] || {}; + var oldOpacity = element.getInlineOpacity(); + var transition = options.transition || Effect.Transitions.sinoidal; + var reverser = function(pos){ return transition(1-Effect.Transitions.pulse(pos, options.pulses)) }; + reverser.bind(transition); + return new Effect.Opacity(element, + Object.extend(Object.extend({ duration: 2.0, from: 0, + afterFinishInternal: function(effect) { effect.element.setStyle({opacity: oldOpacity}); } + }, options), {transition: reverser})); +} + +Effect.Fold = function(element) { + element = $(element); + var oldStyle = { + top: element.style.top, + left: element.style.left, + width: element.style.width, + height: element.style.height }; + element.makeClipping(); + return new Effect.Scale(element, 5, Object.extend({ + scaleContent: false, + scaleX: false, + afterFinishInternal: function(effect) { + new Effect.Scale(element, 1, { + scaleContent: false, + scaleY: false, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().setStyle(oldStyle); + } }); + }}, arguments[1] || {})); +}; + +Effect.Morph = Class.create(); +Object.extend(Object.extend(Effect.Morph.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + style: '' + }, arguments[1] || {}); + this.start(options); + }, + setup: function(){ + function parseColor(color){ + if(!color || ['rgba(0, 0, 0, 0)','transparent'].include(color)) color = '#ffffff'; + color = color.parseColor(); + return $R(0,2).map(function(i){ + return parseInt( color.slice(i*2+1,i*2+3), 16 ) + }); + } + this.transforms = this.options.style.parseStyle().map(function(property){ + var originalValue = this.element.getStyle(property[0]); + return $H({ + style: property[0], + originalValue: property[1].unit=='color' ? + parseColor(originalValue) : parseFloat(originalValue || 0), + targetValue: property[1].unit=='color' ? + parseColor(property[1].value) : property[1].value, + unit: property[1].unit + }); + }.bind(this)).reject(function(transform){ + return ( + (transform.originalValue == transform.targetValue) || + ( + transform.unit != 'color' && + (isNaN(transform.originalValue) || isNaN(transform.targetValue)) + ) + ) + }); + }, + update: function(position) { + var style = $H(), value = null; + this.transforms.each(function(transform){ + value = transform.unit=='color' ? + $R(0,2).inject('#',function(m,v,i){ + return m+(Math.round(transform.originalValue[i]+ + (transform.targetValue[i] - transform.originalValue[i])*position)).toColorPart() }) : + transform.originalValue + Math.round( + ((transform.targetValue - transform.originalValue) * position) * 1000)/1000 + transform.unit; + style[transform.style] = value; + }); + this.element.setStyle(style); + } +}); + +Effect.Transform = Class.create(); +Object.extend(Effect.Transform.prototype, { + initialize: function(tracks){ + this.tracks = []; + this.options = arguments[1] || {}; + this.addTracks(tracks); + }, + addTracks: function(tracks){ + tracks.each(function(track){ + var data = $H(track).values().first(); + this.tracks.push($H({ + ids: $H(track).keys().first(), + effect: Effect.Morph, + options: { style: data } + })); + }.bind(this)); + return this; + }, + play: function(){ + return new Effect.Parallel( + this.tracks.map(function(track){ + var elements = [$(track.ids) || $$(track.ids)].flatten(); + return elements.map(function(e){ return new track.effect(e, Object.extend({ sync:true }, track.options)) }); + }).flatten(), + this.options + ); + } +}); + +Element.CSS_PROPERTIES = ['azimuth', 'backgroundAttachment', 'backgroundColor', 'backgroundImage', + 'backgroundPosition', 'backgroundRepeat', 'borderBottomColor', 'borderBottomStyle', + 'borderBottomWidth', 'borderCollapse', 'borderLeftColor', 'borderLeftStyle', 'borderLeftWidth', + 'borderRightColor', 'borderRightStyle', 'borderRightWidth', 'borderSpacing', 'borderTopColor', + 'borderTopStyle', 'borderTopWidth', 'bottom', 'captionSide', 'clear', 'clip', 'color', 'content', + 'counterIncrement', 'counterReset', 'cssFloat', 'cueAfter', 'cueBefore', 'cursor', 'direction', + 'display', 'elevation', 'emptyCells', 'fontFamily', 'fontSize', 'fontSizeAdjust', 'fontStretch', + 'fontStyle', 'fontVariant', 'fontWeight', 'height', 'left', 'letterSpacing', 'lineHeight', + 'listStyleImage', 'listStylePosition', 'listStyleType', 'marginBottom', 'marginLeft', 'marginRight', + 'marginTop', 'markerOffset', 'marks', 'maxHeight', 'maxWidth', 'minHeight', 'minWidth', 'opacity', + 'orphans', 'outlineColor', 'outlineOffset', 'outlineStyle', 'outlineWidth', 'overflowX', 'overflowY', + 'paddingBottom', 'paddingLeft', 'paddingRight', 'paddingTop', 'page', 'pageBreakAfter', 'pageBreakBefore', + 'pageBreakInside', 'pauseAfter', 'pauseBefore', 'pitch', 'pitchRange', 'position', 'quotes', + 'richness', 'right', 'size', 'speakHeader', 'speakNumeral', 'speakPunctuation', 'speechRate', 'stress', + 'tableLayout', 'textAlign', 'textDecoration', 'textIndent', 'textShadow', 'textTransform', 'top', + 'unicodeBidi', 'verticalAlign', 'visibility', 'voiceFamily', 'volume', 'whiteSpace', 'widows', + 'width', 'wordSpacing', 'zIndex']; + +Element.CSS_LENGTH = /^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/; + +String.prototype.parseStyle = function(){ + var element = Element.extend(document.createElement('div')); + element.innerHTML = '

    '; + var style = element.down().style, styleRules = $H(); + + Element.CSS_PROPERTIES.each(function(property){ + if(style[property]) styleRules[property] = style[property]; + }); + + var result = $H(); + + styleRules.each(function(pair){ + var property = pair[0], value = pair[1], unit = null; + + if(value.parseColor('#zzzzzz') != '#zzzzzz') { + value = value.parseColor(); + unit = 'color'; + } else if(Element.CSS_LENGTH.test(value)) + var components = value.match(/^([\+\-]?[0-9\.]+)(.*)$/), + value = parseFloat(components[1]), unit = (components.length == 3) ? components[2] : null; + + result[property.underscore().dasherize()] = $H({ value:value, unit:unit }); + }.bind(this)); + + return result; +}; + +Element.morph = function(element, style) { + new Effect.Morph(element, Object.extend({ style: style }, arguments[2] || {})); + return element; +}; + +['setOpacity','getOpacity','getInlineOpacity','forceRerendering','setContentZoom', + 'collectTextNodes','collectTextNodesIgnoreClass','morph'].each( + function(f) { Element.Methods[f] = Element[f]; } +); + +Element.Methods.visualEffect = function(element, effect, options) { + s = effect.gsub(/_/, '-').camelize(); + effect_class = s.charAt(0).toUpperCase() + s.substring(1); + new Effect[effect_class](element, options); + return $(element); +}; + +Element.addMethods(); \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/javascripts/effects.js~ b/P5B/ruby/mon_projet/public/javascripts/effects.js~ new file mode 100644 index 0000000..160f304 --- /dev/null +++ b/P5B/ruby/mon_projet/public/javascripts/effects.js~ @@ -0,0 +1,1088 @@ +// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// Contributors: +// Justin Palmer (http://encytemedia.com/) +// Mark Pilgrim (http://diveintomark.org/) +// Martin Bialasinki +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +// converts rgb() and #xxx to #xxxxxx format, +// returns self (or first argument) if not convertable +String.prototype.parseColor = function() { + var color = '#'; + if(this.slice(0,4) == 'rgb(') { + var cols = this.slice(4,this.length-1).split(','); + var i=0; do { color += parseInt(cols[i]).toColorPart() } while (++i<3); + } else { + if(this.slice(0,1) == '#') { + if(this.length==4) for(var i=1;i<4;i++) color += (this.charAt(i) + this.charAt(i)).toLowerCase(); + if(this.length==7) color = this.toLowerCase(); + } + } + return(color.length==7 ? color : (arguments[0] || this)); +} + +/*--------------------------------------------------------------------------*/ + +Element.collectTextNodes = function(element) { + return $A($(element).childNodes).collect( function(node) { + return (node.nodeType==3 ? node.nodeValue : + (node.hasChildNodes() ? Element.collectTextNodes(node) : '')); + }).flatten().join(''); +} + +Element.collectTextNodesIgnoreClass = function(element, className) { + return $A($(element).childNodes).collect( function(node) { + return (node.nodeType==3 ? node.nodeValue : + ((node.hasChildNodes() && !Element.hasClassName(node,className)) ? + Element.collectTextNodesIgnoreClass(node, className) : '')); + }).flatten().join(''); +} + +Element.setContentZoom = function(element, percent) { + element = $(element); + element.setStyle({fontSize: (percent/100) + 'em'}); + if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0); + return element; +} + +Element.getOpacity = function(element){ + element = $(element); + var opacity; + if (opacity = element.getStyle('opacity')) + return parseFloat(opacity); + if (opacity = (element.getStyle('filter') || '').match(/alpha\(opacity=(.*)\)/)) + if(opacity[1]) return parseFloat(opacity[1]) / 100; + return 1.0; +} + +Element.setOpacity = function(element, value){ + element= $(element); + if (value == 1){ + element.setStyle({ opacity: + (/Gecko/.test(navigator.userAgent) && !/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? + 0.999999 : 1.0 }); + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.setStyle({filter: Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'')}); + } else { + if(value < 0.00001) value = 0; + element.setStyle({opacity: value}); + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.setStyle( + { filter: element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'') + + 'alpha(opacity='+value*100+')' }); + } + return element; +} + +Element.getInlineOpacity = function(element){ + return $(element).style.opacity || ''; +} + +Element.forceRerendering = function(element) { + try { + element = $(element); + var n = document.createTextNode(' '); + element.appendChild(n); + element.removeChild(n); + } catch(e) { } +}; + +/*--------------------------------------------------------------------------*/ + +Array.prototype.call = function() { + var args = arguments; + this.each(function(f){ f.apply(this, args) }); +} + +/*--------------------------------------------------------------------------*/ + +var Effect = { + _elementDoesNotExistError: { + name: 'ElementDoesNotExistError', + message: 'L element DOM spcifi n existe pas, mais est requis pour que l effet opre' + }, + tagifyText: function(element) { + if(typeof Builder == 'undefined') + throw("Effect.tagifyText requires including script.aculo.us' builder.js library"); + + var tagifyStyle = 'position:relative'; + if(/MSIE/.test(navigator.userAgent) && !window.opera) tagifyStyle += ';zoom:1'; + + element = $(element); + $A(element.childNodes).each( function(child) { + if(child.nodeType==3) { + child.nodeValue.toArray().each( function(character) { + element.insertBefore( + Builder.node('span',{style: tagifyStyle}, + character == ' ' ? String.fromCharCode(160) : character), + child); + }); + Element.remove(child); + } + }); + }, + multiple: function(element, effect) { + var elements; + if(((typeof element == 'object') || + (typeof element == 'function')) && + (element.length)) + elements = element; + else + elements = $(element).childNodes; + + var options = Object.extend({ + speed: 0.1, + delay: 0.0 + }, arguments[2] || {}); + var masterDelay = options.delay; + + $A(elements).each( function(element, index) { + new effect(element, Object.extend(options, { delay: index * options.speed + masterDelay })); + }); + }, + PAIRS: { + 'slide': ['SlideDown','SlideUp'], + 'blind': ['BlindDown','BlindUp'], + 'appear': ['Appear','Fade'] + }, + toggle: function(element, effect) { + element = $(element); + effect = (effect || 'appear').toLowerCase(); + var options = Object.extend({ + queue: { position:'end', scope:(element.id || 'global'), limit: 1 } + }, arguments[2] || {}); + Effect[element.visible() ? + Effect.PAIRS[effect][1] : Effect.PAIRS[effect][0]](element, options); + } +}; + +var Effect2 = Effect; // deprecated + +/* ------------- transitions ------------- */ + +Effect.Transitions = { + linear: Prototype.K, + sinoidal: function(pos) { + return (-Math.cos(pos*Math.PI)/2) + 0.5; + }, + reverse: function(pos) { + return 1-pos; + }, + flicker: function(pos) { + return ((-Math.cos(pos*Math.PI)/4) + 0.75) + Math.random()/4; + }, + wobble: function(pos) { + return (-Math.cos(pos*Math.PI*(9*pos))/2) + 0.5; + }, + pulse: function(pos, pulses) { + pulses = pulses || 5; + return ( + Math.round((pos % (1/pulses)) * pulses) == 0 ? + ((pos * pulses * 2) - Math.floor(pos * pulses * 2)) : + 1 - ((pos * pulses * 2) - Math.floor(pos * pulses * 2)) + ); + }, + none: function(pos) { + return 0; + }, + full: function(pos) { + return 1; + } +}; + +/* ------------- core effects ------------- */ + +Effect.ScopedQueue = Class.create(); +Object.extend(Object.extend(Effect.ScopedQueue.prototype, Enumerable), { + initialize: function() { + this.effects = []; + this.interval = null; + }, + _each: function(iterator) { + this.effects._each(iterator); + }, + add: function(effect) { + var timestamp = new Date().getTime(); + + var position = (typeof effect.options.queue == 'string') ? + effect.options.queue : effect.options.queue.position; + + switch(position) { + case 'front': + // move unstarted effects after this effect + this.effects.findAll(function(e){ return e.state=='idle' }).each( function(e) { + e.startOn += effect.finishOn; + e.finishOn += effect.finishOn; + }); + break; + case 'with-last': + timestamp = this.effects.pluck('startOn').max() || timestamp; + break; + case 'end': + // start effect after last queued effect has finished + timestamp = this.effects.pluck('finishOn').max() || timestamp; + break; + } + + effect.startOn += timestamp; + effect.finishOn += timestamp; + + if(!effect.options.queue.limit || (this.effects.length < effect.options.queue.limit)) + this.effects.push(effect); + + if(!this.interval) + this.interval = setInterval(this.loop.bind(this), 40); + }, + remove: function(effect) { + this.effects = this.effects.reject(function(e) { return e==effect }); + if(this.effects.length == 0) { + clearInterval(this.interval); + this.interval = null; + } + }, + loop: function() { + var timePos = new Date().getTime(); + this.effects.invoke('loop', timePos); + } +}); + +Effect.Queues = { + instances: $H(), + get: function(queueName) { + if(typeof queueName != 'string') return queueName; + + if(!this.instances[queueName]) + this.instances[queueName] = new Effect.ScopedQueue(); + + return this.instances[queueName]; + } +} +Effect.Queue = Effect.Queues.get('global'); + +Effect.DefaultOptions = { + transition: Effect.Transitions.sinoidal, + duration: 1.0, // seconds + fps: 25.0, // max. 25fps due to Effect.Queue implementation + sync: false, // true for combining + from: 0.0, + to: 1.0, + delay: 0.0, + queue: 'parallel' +} + +Effect.Base = function() {}; +Effect.Base.prototype = { + position: null, + start: function(options) { + this.options = Object.extend(Object.extend({},Effect.DefaultOptions), options || {}); + this.currentFrame = 0; + this.state = 'idle'; + this.startOn = this.options.delay*1000; + this.finishOn = this.startOn + (this.options.duration*1000); + this.event('beforeStart'); + if(!this.options.sync) + Effect.Queues.get(typeof this.options.queue == 'string' ? + 'global' : this.options.queue.scope).add(this); + }, + loop: function(timePos) { + if(timePos >= this.startOn) { + if(timePos >= this.finishOn) { + this.render(1.0); + this.cancel(); + this.event('beforeFinish'); + if(this.finish) this.finish(); + this.event('afterFinish'); + return; + } + var pos = (timePos - this.startOn) / (this.finishOn - this.startOn); + var frame = Math.round(pos * this.options.fps * this.options.duration); + if(frame > this.currentFrame) { + this.render(pos); + this.currentFrame = frame; + } + } + }, + render: function(pos) { + if(this.state == 'idle') { + this.state = 'running'; + this.event('beforeSetup'); + if(this.setup) this.setup(); + this.event('afterSetup'); + } + if(this.state == 'running') { + if(this.options.transition) pos = this.options.transition(pos); + pos *= (this.options.to-this.options.from); + pos += this.options.from; + this.position = pos; + this.event('beforeUpdate'); + if(this.update) this.update(pos); + this.event('afterUpdate'); + } + }, + cancel: function() { + if(!this.options.sync) + Effect.Queues.get(typeof this.options.queue == 'string' ? + 'global' : this.options.queue.scope).remove(this); + this.state = 'finished'; + }, + event: function(eventName) { + if(this.options[eventName + 'Internal']) this.options[eventName + 'Internal'](this); + if(this.options[eventName]) this.options[eventName](this); + }, + inspect: function() { + return '#'; + } +} + +Effect.Parallel = Class.create(); +Object.extend(Object.extend(Effect.Parallel.prototype, Effect.Base.prototype), { + initialize: function(effects) { + this.effects = effects || []; + this.start(arguments[1]); + }, + update: function(position) { + this.effects.invoke('render', position); + }, + finish: function(position) { + this.effects.each( function(effect) { + effect.render(1.0); + effect.cancel(); + effect.event('beforeFinish'); + if(effect.finish) effect.finish(position); + effect.event('afterFinish'); + }); + } +}); + +Effect.Event = Class.create(); +Object.extend(Object.extend(Effect.Event.prototype, Effect.Base.prototype), { + initialize: function() { + var options = Object.extend({ + duration: 0 + }, arguments[0] || {}); + this.start(options); + }, + update: Prototype.emptyFunction +}); + +Effect.Opacity = Class.create(); +Object.extend(Object.extend(Effect.Opacity.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + // make this work on IE on elements without 'layout' + if(/MSIE/.test(navigator.userAgent) && !window.opera && (!this.element.currentStyle.hasLayout)) + this.element.setStyle({zoom: 1}); + var options = Object.extend({ + from: this.element.getOpacity() || 0.0, + to: 1.0 + }, arguments[1] || {}); + this.start(options); + }, + update: function(position) { + this.element.setOpacity(position); + } +}); + +Effect.Move = Class.create(); +Object.extend(Object.extend(Effect.Move.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + x: 0, + y: 0, + mode: 'relative' + }, arguments[1] || {}); + this.start(options); + }, + setup: function() { + // Bug in Opera: Opera returns the "real" position of a static element or + // relative element that does not have top/left explicitly set. + // ==> Always set top and left for position relative elements in your stylesheets + // (to 0 if you do not need them) + this.element.makePositioned(); + this.originalLeft = parseFloat(this.element.getStyle('left') || '0'); + this.originalTop = parseFloat(this.element.getStyle('top') || '0'); + if(this.options.mode == 'absolute') { + // absolute movement, so we need to calc deltaX and deltaY + this.options.x = this.options.x - this.originalLeft; + this.options.y = this.options.y - this.originalTop; + } + }, + update: function(position) { + this.element.setStyle({ + left: Math.round(this.options.x * position + this.originalLeft) + 'px', + top: Math.round(this.options.y * position + this.originalTop) + 'px' + }); + } +}); + +// for backwards compatibility +Effect.MoveBy = function(element, toTop, toLeft) { + return new Effect.Move(element, + Object.extend({ x: toLeft, y: toTop }, arguments[3] || {})); +}; + +Effect.Scale = Class.create(); +Object.extend(Object.extend(Effect.Scale.prototype, Effect.Base.prototype), { + initialize: function(element, percent) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + scaleX: true, + scaleY: true, + scaleContent: true, + scaleFromCenter: false, + scaleMode: 'box', // 'box' or 'contents' or {} with provided values + scaleFrom: 100.0, + scaleTo: percent + }, arguments[2] || {}); + this.start(options); + }, + setup: function() { + this.restoreAfterFinish = this.options.restoreAfterFinish || false; + this.elementPositioning = this.element.getStyle('position'); + + this.originalStyle = {}; + ['top','left','width','height','fontSize'].each( function(k) { + this.originalStyle[k] = this.element.style[k]; + }.bind(this)); + + this.originalTop = this.element.offsetTop; + this.originalLeft = this.element.offsetLeft; + + var fontSize = this.element.getStyle('font-size') || '100%'; + ['em','px','%','pt'].each( function(fontSizeType) { + if(fontSize.indexOf(fontSizeType)>0) { + this.fontSize = parseFloat(fontSize); + this.fontSizeType = fontSizeType; + } + }.bind(this)); + + this.factor = (this.options.scaleTo - this.options.scaleFrom)/100; + + this.dims = null; + if(this.options.scaleMode=='box') + this.dims = [this.element.offsetHeight, this.element.offsetWidth]; + if(/^content/.test(this.options.scaleMode)) + this.dims = [this.element.scrollHeight, this.element.scrollWidth]; + if(!this.dims) + this.dims = [this.options.scaleMode.originalHeight, + this.options.scaleMode.originalWidth]; + }, + update: function(position) { + var currentScale = (this.options.scaleFrom/100.0) + (this.factor * position); + if(this.options.scaleContent && this.fontSize) + this.element.setStyle({fontSize: this.fontSize * currentScale + this.fontSizeType }); + this.setDimensions(this.dims[0] * currentScale, this.dims[1] * currentScale); + }, + finish: function(position) { + if(this.restoreAfterFinish) this.element.setStyle(this.originalStyle); + }, + setDimensions: function(height, width) { + var d = {}; + if(this.options.scaleX) d.width = Math.round(width) + 'px'; + if(this.options.scaleY) d.height = Math.round(height) + 'px'; + if(this.options.scaleFromCenter) { + var topd = (height - this.dims[0])/2; + var leftd = (width - this.dims[1])/2; + if(this.elementPositioning == 'absolute') { + if(this.options.scaleY) d.top = this.originalTop-topd + 'px'; + if(this.options.scaleX) d.left = this.originalLeft-leftd + 'px'; + } else { + if(this.options.scaleY) d.top = -topd + 'px'; + if(this.options.scaleX) d.left = -leftd + 'px'; + } + } + this.element.setStyle(d); + } +}); + +Effect.Highlight = Class.create(); +Object.extend(Object.extend(Effect.Highlight.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ startcolor: '#ffff99' }, arguments[1] || {}); + this.start(options); + }, + setup: function() { + // Prevent executing on elements not in the layout flow + if(this.element.getStyle('display')=='none') { this.cancel(); return; } + // Disable background image during the effect + this.oldStyle = { + backgroundImage: this.element.getStyle('background-image') }; + this.element.setStyle({backgroundImage: 'none'}); + if(!this.options.endcolor) + this.options.endcolor = this.element.getStyle('background-color').parseColor('#ffffff'); + if(!this.options.restorecolor) + this.options.restorecolor = this.element.getStyle('background-color'); + // init color calculations + this._base = $R(0,2).map(function(i){ return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16) }.bind(this)); + this._delta = $R(0,2).map(function(i){ return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i] }.bind(this)); + }, + update: function(position) { + this.element.setStyle({backgroundColor: $R(0,2).inject('#',function(m,v,i){ + return m+(Math.round(this._base[i]+(this._delta[i]*position)).toColorPart()); }.bind(this)) }); + }, + finish: function() { + this.element.setStyle(Object.extend(this.oldStyle, { + backgroundColor: this.options.restorecolor + })); + } +}); + +Effect.ScrollTo = Class.create(); +Object.extend(Object.extend(Effect.ScrollTo.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + this.start(arguments[1] || {}); + }, + setup: function() { + Position.prepare(); + var offsets = Position.cumulativeOffset(this.element); + if(this.options.offset) offsets[1] += this.options.offset; + var max = window.innerHeight ? + window.height - window.innerHeight : + document.body.scrollHeight - + (document.documentElement.clientHeight ? + document.documentElement.clientHeight : document.body.clientHeight); + this.scrollStart = Position.deltaY; + this.delta = (offsets[1] > max ? max : offsets[1]) - this.scrollStart; + }, + update: function(position) { + Position.prepare(); + window.scrollTo(Position.deltaX, + this.scrollStart + (position*this.delta)); + } +}); + +/* ------------- combination effects ------------- */ + +Effect.Fade = function(element) { + element = $(element); + var oldOpacity = element.getInlineOpacity(); + var options = Object.extend({ + from: element.getOpacity() || 1.0, + to: 0.0, + afterFinishInternal: function(effect) { + if(effect.options.to!=0) return; + effect.element.hide().setStyle({opacity: oldOpacity}); + }}, arguments[1] || {}); + return new Effect.Opacity(element,options); +} + +Effect.Appear = function(element) { + element = $(element); + var options = Object.extend({ + from: (element.getStyle('display') == 'none' ? 0.0 : element.getOpacity() || 0.0), + to: 1.0, + // force Safari to render floated elements properly + afterFinishInternal: function(effect) { + effect.element.forceRerendering(); + }, + beforeSetup: function(effect) { + effect.element.setOpacity(effect.options.from).show(); + }}, arguments[1] || {}); + return new Effect.Opacity(element,options); +} + +Effect.Puff = function(element) { + element = $(element); + var oldStyle = { + opacity: element.getInlineOpacity(), + position: element.getStyle('position'), + top: element.style.top, + left: element.style.left, + width: element.style.width, + height: element.style.height + }; + return new Effect.Parallel( + [ new Effect.Scale(element, 200, + { sync: true, scaleFromCenter: true, scaleContent: true, restoreAfterFinish: true }), + new Effect.Opacity(element, { sync: true, to: 0.0 } ) ], + Object.extend({ duration: 1.0, + beforeSetupInternal: function(effect) { + Position.absolutize(effect.effects[0].element) + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().setStyle(oldStyle); } + }, arguments[1] || {}) + ); +} + +Effect.BlindUp = function(element) { + element = $(element); + element.makeClipping(); + return new Effect.Scale(element, 0, + Object.extend({ scaleContent: false, + scaleX: false, + restoreAfterFinish: true, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping(); + } + }, arguments[1] || {}) + ); +} + +Effect.BlindDown = function(element) { + element = $(element); + var elementDimensions = element.getDimensions(); + return new Effect.Scale(element, 100, Object.extend({ + scaleContent: false, + scaleX: false, + scaleFrom: 0, + scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width}, + restoreAfterFinish: true, + afterSetup: function(effect) { + effect.element.makeClipping().setStyle({height: '0px'}).show(); + }, + afterFinishInternal: function(effect) { + effect.element.undoClipping(); + } + }, arguments[1] || {})); +} + +Effect.SwitchOff = function(element) { + element = $(element); + var oldOpacity = element.getInlineOpacity(); + return new Effect.Appear(element, Object.extend({ + duration: 0.4, + from: 0, + transition: Effect.Transitions.flicker, + afterFinishInternal: function(effect) { + new Effect.Scale(effect.element, 1, { + duration: 0.3, scaleFromCenter: true, + scaleX: false, scaleContent: false, restoreAfterFinish: true, + beforeSetup: function(effect) { + effect.element.makePositioned().makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().undoPositioned().setStyle({opacity: oldOpacity}); + } + }) + } + }, arguments[1] || {})); +} + +Effect.DropOut = function(element) { + element = $(element); + var oldStyle = { + top: element.getStyle('top'), + left: element.getStyle('left'), + opacity: element.getInlineOpacity() }; + return new Effect.Parallel( + [ new Effect.Move(element, {x: 0, y: 100, sync: true }), + new Effect.Opacity(element, { sync: true, to: 0.0 }) ], + Object.extend( + { duration: 0.5, + beforeSetup: function(effect) { + effect.effects[0].element.makePositioned(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle); + } + }, arguments[1] || {})); +} + +Effect.Shake = function(element) { + element = $(element); + var oldStyle = { + top: element.getStyle('top'), + left: element.getStyle('left') }; + return new Effect.Move(element, + { x: 20, y: 0, duration: 0.05, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: 40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: 40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -20, y: 0, duration: 0.05, afterFinishInternal: function(effect) { + effect.element.undoPositioned().setStyle(oldStyle); + }}) }}) }}) }}) }}) }}); +} + +Effect.SlideDown = function(element) { + element = $(element).cleanWhitespace(); + // SlideDown need to have the content of the element wrapped in a container element with fixed height! + var oldInnerBottom = element.down().getStyle('bottom'); + var elementDimensions = element.getDimensions(); + return new Effect.Scale(element, 100, Object.extend({ + scaleContent: false, + scaleX: false, + scaleFrom: window.opera ? 0 : 1, + scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width}, + restoreAfterFinish: true, + afterSetup: function(effect) { + effect.element.makePositioned(); + effect.element.down().makePositioned(); + if(window.opera) effect.element.setStyle({top: ''}); + effect.element.makeClipping().setStyle({height: '0px'}).show(); + }, + afterUpdateInternal: function(effect) { + effect.element.down().setStyle({bottom: + (effect.dims[0] - effect.element.clientHeight) + 'px' }); + }, + afterFinishInternal: function(effect) { + effect.element.undoClipping().undoPositioned(); + effect.element.down().undoPositioned().setStyle({bottom: oldInnerBottom}); } + }, arguments[1] || {}) + ); +} + +Effect.SlideUp = function(element) { + element = $(element).cleanWhitespace(); + var oldInnerBottom = element.down().getStyle('bottom'); + return new Effect.Scale(element, window.opera ? 0 : 1, + Object.extend({ scaleContent: false, + scaleX: false, + scaleMode: 'box', + scaleFrom: 100, + restoreAfterFinish: true, + beforeStartInternal: function(effect) { + effect.element.makePositioned(); + effect.element.down().makePositioned(); + if(window.opera) effect.element.setStyle({top: ''}); + effect.element.makeClipping().show(); + }, + afterUpdateInternal: function(effect) { + effect.element.down().setStyle({bottom: + (effect.dims[0] - effect.element.clientHeight) + 'px' }); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().undoPositioned().setStyle({bottom: oldInnerBottom}); + effect.element.down().undoPositioned(); + } + }, arguments[1] || {}) + ); +} + +// Bug in opera makes the TD containing this element expand for a instance after finish +Effect.Squish = function(element) { + return new Effect.Scale(element, window.opera ? 1 : 0, { + restoreAfterFinish: true, + beforeSetup: function(effect) { + effect.element.makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping(); + } + }); +} + +Effect.Grow = function(element) { + element = $(element); + var options = Object.extend({ + direction: 'center', + moveTransition: Effect.Transitions.sinoidal, + scaleTransition: Effect.Transitions.sinoidal, + opacityTransition: Effect.Transitions.full + }, arguments[1] || {}); + var oldStyle = { + top: element.style.top, + left: element.style.left, + height: element.style.height, + width: element.style.width, + opacity: element.getInlineOpacity() }; + + var dims = element.getDimensions(); + var initialMoveX, initialMoveY; + var moveX, moveY; + + switch (options.direction) { + case 'top-left': + initialMoveX = initialMoveY = moveX = moveY = 0; + break; + case 'top-right': + initialMoveX = dims.width; + initialMoveY = moveY = 0; + moveX = -dims.width; + break; + case 'bottom-left': + initialMoveX = moveX = 0; + initialMoveY = dims.height; + moveY = -dims.height; + break; + case 'bottom-right': + initialMoveX = dims.width; + initialMoveY = dims.height; + moveX = -dims.width; + moveY = -dims.height; + break; + case 'center': + initialMoveX = dims.width / 2; + initialMoveY = dims.height / 2; + moveX = -dims.width / 2; + moveY = -dims.height / 2; + break; + } + + return new Effect.Move(element, { + x: initialMoveX, + y: initialMoveY, + duration: 0.01, + beforeSetup: function(effect) { + effect.element.hide().makeClipping().makePositioned(); + }, + afterFinishInternal: function(effect) { + new Effect.Parallel( + [ new Effect.Opacity(effect.element, { sync: true, to: 1.0, from: 0.0, transition: options.opacityTransition }), + new Effect.Move(effect.element, { x: moveX, y: moveY, sync: true, transition: options.moveTransition }), + new Effect.Scale(effect.element, 100, { + scaleMode: { originalHeight: dims.height, originalWidth: dims.width }, + sync: true, scaleFrom: window.opera ? 1 : 0, transition: options.scaleTransition, restoreAfterFinish: true}) + ], Object.extend({ + beforeSetup: function(effect) { + effect.effects[0].element.setStyle({height: '0px'}).show(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldStyle); + } + }, options) + ) + } + }); +} + +Effect.Shrink = function(element) { + element = $(element); + var options = Object.extend({ + direction: 'center', + moveTransition: Effect.Transitions.sinoidal, + scaleTransition: Effect.Transitions.sinoidal, + opacityTransition: Effect.Transitions.none + }, arguments[1] || {}); + var oldStyle = { + top: element.style.top, + left: element.style.left, + height: element.style.height, + width: element.style.width, + opacity: element.getInlineOpacity() }; + + var dims = element.getDimensions(); + var moveX, moveY; + + switch (options.direction) { + case 'top-left': + moveX = moveY = 0; + break; + case 'top-right': + moveX = dims.width; + moveY = 0; + break; + case 'bottom-left': + moveX = 0; + moveY = dims.height; + break; + case 'bottom-right': + moveX = dims.width; + moveY = dims.height; + break; + case 'center': + moveX = dims.width / 2; + moveY = dims.height / 2; + break; + } + + return new Effect.Parallel( + [ new Effect.Opacity(element, { sync: true, to: 0.0, from: 1.0, transition: options.opacityTransition }), + new Effect.Scale(element, window.opera ? 1 : 0, { sync: true, transition: options.scaleTransition, restoreAfterFinish: true}), + new Effect.Move(element, { x: moveX, y: moveY, sync: true, transition: options.moveTransition }) + ], Object.extend({ + beforeStartInternal: function(effect) { + effect.effects[0].element.makePositioned().makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle(oldStyle); } + }, options) + ); +} + +Effect.Pulsate = function(element) { + element = $(element); + var options = arguments[1] || {}; + var oldOpacity = element.getInlineOpacity(); + var transition = options.transition || Effect.Transitions.sinoidal; + var reverser = function(pos){ return transition(1-Effect.Transitions.pulse(pos, options.pulses)) }; + reverser.bind(transition); + return new Effect.Opacity(element, + Object.extend(Object.extend({ duration: 2.0, from: 0, + afterFinishInternal: function(effect) { effect.element.setStyle({opacity: oldOpacity}); } + }, options), {transition: reverser})); +} + +Effect.Fold = function(element) { + element = $(element); + var oldStyle = { + top: element.style.top, + left: element.style.left, + width: element.style.width, + height: element.style.height }; + element.makeClipping(); + return new Effect.Scale(element, 5, Object.extend({ + scaleContent: false, + scaleX: false, + afterFinishInternal: function(effect) { + new Effect.Scale(element, 1, { + scaleContent: false, + scaleY: false, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().setStyle(oldStyle); + } }); + }}, arguments[1] || {})); +}; + +Effect.Morph = Class.create(); +Object.extend(Object.extend(Effect.Morph.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + style: '' + }, arguments[1] || {}); + this.start(options); + }, + setup: function(){ + function parseColor(color){ + if(!color || ['rgba(0, 0, 0, 0)','transparent'].include(color)) color = '#ffffff'; + color = color.parseColor(); + return $R(0,2).map(function(i){ + return parseInt( color.slice(i*2+1,i*2+3), 16 ) + }); + } + this.transforms = this.options.style.parseStyle().map(function(property){ + var originalValue = this.element.getStyle(property[0]); + return $H({ + style: property[0], + originalValue: property[1].unit=='color' ? + parseColor(originalValue) : parseFloat(originalValue || 0), + targetValue: property[1].unit=='color' ? + parseColor(property[1].value) : property[1].value, + unit: property[1].unit + }); + }.bind(this)).reject(function(transform){ + return ( + (transform.originalValue == transform.targetValue) || + ( + transform.unit != 'color' && + (isNaN(transform.originalValue) || isNaN(transform.targetValue)) + ) + ) + }); + }, + update: function(position) { + var style = $H(), value = null; + this.transforms.each(function(transform){ + value = transform.unit=='color' ? + $R(0,2).inject('#',function(m,v,i){ + return m+(Math.round(transform.originalValue[i]+ + (transform.targetValue[i] - transform.originalValue[i])*position)).toColorPart() }) : + transform.originalValue + Math.round( + ((transform.targetValue - transform.originalValue) * position) * 1000)/1000 + transform.unit; + style[transform.style] = value; + }); + this.element.setStyle(style); + } +}); + +Effect.Transform = Class.create(); +Object.extend(Effect.Transform.prototype, { + initialize: function(tracks){ + this.tracks = []; + this.options = arguments[1] || {}; + this.addTracks(tracks); + }, + addTracks: function(tracks){ + tracks.each(function(track){ + var data = $H(track).values().first(); + this.tracks.push($H({ + ids: $H(track).keys().first(), + effect: Effect.Morph, + options: { style: data } + })); + }.bind(this)); + return this; + }, + play: function(){ + return new Effect.Parallel( + this.tracks.map(function(track){ + var elements = [$(track.ids) || $$(track.ids)].flatten(); + return elements.map(function(e){ return new track.effect(e, Object.extend({ sync:true }, track.options)) }); + }).flatten(), + this.options + ); + } +}); + +Element.CSS_PROPERTIES = ['azimuth', 'backgroundAttachment', 'backgroundColor', 'backgroundImage', + 'backgroundPosition', 'backgroundRepeat', 'borderBottomColor', 'borderBottomStyle', + 'borderBottomWidth', 'borderCollapse', 'borderLeftColor', 'borderLeftStyle', 'borderLeftWidth', + 'borderRightColor', 'borderRightStyle', 'borderRightWidth', 'borderSpacing', 'borderTopColor', + 'borderTopStyle', 'borderTopWidth', 'bottom', 'captionSide', 'clear', 'clip', 'color', 'content', + 'counterIncrement', 'counterReset', 'cssFloat', 'cueAfter', 'cueBefore', 'cursor', 'direction', + 'display', 'elevation', 'emptyCells', 'fontFamily', 'fontSize', 'fontSizeAdjust', 'fontStretch', + 'fontStyle', 'fontVariant', 'fontWeight', 'height', 'left', 'letterSpacing', 'lineHeight', + 'listStyleImage', 'listStylePosition', 'listStyleType', 'marginBottom', 'marginLeft', 'marginRight', + 'marginTop', 'markerOffset', 'marks', 'maxHeight', 'maxWidth', 'minHeight', 'minWidth', 'opacity', + 'orphans', 'outlineColor', 'outlineOffset', 'outlineStyle', 'outlineWidth', 'overflowX', 'overflowY', + 'paddingBottom', 'paddingLeft', 'paddingRight', 'paddingTop', 'page', 'pageBreakAfter', 'pageBreakBefore', + 'pageBreakInside', 'pauseAfter', 'pauseBefore', 'pitch', 'pitchRange', 'position', 'quotes', + 'richness', 'right', 'size', 'speakHeader', 'speakNumeral', 'speakPunctuation', 'speechRate', 'stress', + 'tableLayout', 'textAlign', 'textDecoration', 'textIndent', 'textShadow', 'textTransform', 'top', + 'unicodeBidi', 'verticalAlign', 'visibility', 'voiceFamily', 'volume', 'whiteSpace', 'widows', + 'width', 'wordSpacing', 'zIndex']; + +Element.CSS_LENGTH = /^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/; + +String.prototype.parseStyle = function(){ + var element = Element.extend(document.createElement('div')); + element.innerHTML = '
    '; + var style = element.down().style, styleRules = $H(); + + Element.CSS_PROPERTIES.each(function(property){ + if(style[property]) styleRules[property] = style[property]; + }); + + var result = $H(); + + styleRules.each(function(pair){ + var property = pair[0], value = pair[1], unit = null; + + if(value.parseColor('#zzzzzz') != '#zzzzzz') { + value = value.parseColor(); + unit = 'color'; + } else if(Element.CSS_LENGTH.test(value)) + var components = value.match(/^([\+\-]?[0-9\.]+)(.*)$/), + value = parseFloat(components[1]), unit = (components.length == 3) ? components[2] : null; + + result[property.underscore().dasherize()] = $H({ value:value, unit:unit }); + }.bind(this)); + + return result; +}; + +Element.morph = function(element, style) { + new Effect.Morph(element, Object.extend({ style: style }, arguments[2] || {})); + return element; +}; + +['setOpacity','getOpacity','getInlineOpacity','forceRerendering','setContentZoom', + 'collectTextNodes','collectTextNodesIgnoreClass','morph'].each( + function(f) { Element.Methods[f] = Element[f]; } +); + +Element.Methods.visualEffect = function(element, effect, options) { + s = effect.gsub(/_/, '-').camelize(); + effect_class = s.charAt(0).toUpperCase() + s.substring(1); + new Effect[effect_class](element, options); + return $(element); +}; + +Element.addMethods(); \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/javascripts/prototype.js b/P5B/ruby/mon_projet/public/javascripts/prototype.js new file mode 100644 index 0000000..8ab9bc2 --- /dev/null +++ b/P5B/ruby/mon_projet/public/javascripts/prototype.js @@ -0,0 +1,2515 @@ +/* Prototype JavaScript framework, version 1.5.0 + * (c) 2005-2007 Sam Stephenson + * + * Prototype is freely distributable under the terms of an MIT-style license. + * For details, see the Prototype web site: http://prototype.conio.net/ + * +/*--------------------------------------------------------------------------*/ + +var Prototype = { + Version: '1.5.0', + BrowserFeatures: { + XPath: !!document.evaluate + }, + + ScriptFragment: '(?:)((\n|\r|.)*?)(?:<\/script>)', + emptyFunction: function() {}, + K: function(x) { return x } +} + +var Class = { + create: function() { + return function() { + this.initialize.apply(this, arguments); + } + } +} + +var Abstract = new Object(); + +Object.extend = function(destination, source) { + for (var property in source) { + destination[property] = source[property]; + } + return destination; +} + +Object.extend(Object, { + inspect: function(object) { + try { + if (object === undefined) return 'undefined'; + if (object === null) return 'null'; + return object.inspect ? object.inspect() : object.toString(); + } catch (e) { + if (e instanceof RangeError) return '...'; + throw e; + } + }, + + keys: function(object) { + var keys = []; + for (var property in object) + keys.push(property); + return keys; + }, + + values: function(object) { + var values = []; + for (var property in object) + values.push(object[property]); + return values; + }, + + clone: function(object) { + return Object.extend({}, object); + } +}); + +Function.prototype.bind = function() { + var __method = this, args = $A(arguments), object = args.shift(); + return function() { + return __method.apply(object, args.concat($A(arguments))); + } +} + +Function.prototype.bindAsEventListener = function(object) { + var __method = this, args = $A(arguments), object = args.shift(); + return function(event) { + return __method.apply(object, [( event || window.event)].concat(args).concat($A(arguments))); + } +} + +Object.extend(Number.prototype, { + toColorPart: function() { + var digits = this.toString(16); + if (this < 16) return '0' + digits; + return digits; + }, + + succ: function() { + return this + 1; + }, + + times: function(iterator) { + $R(0, this, true).each(iterator); + return this; + } +}); + +var Try = { + these: function() { + var returnValue; + + for (var i = 0, length = arguments.length; i < length; i++) { + var lambda = arguments[i]; + try { + returnValue = lambda(); + break; + } catch (e) {} + } + + return returnValue; + } +} + +/*--------------------------------------------------------------------------*/ + +var PeriodicalExecuter = Class.create(); +PeriodicalExecuter.prototype = { + initialize: function(callback, frequency) { + this.callback = callback; + this.frequency = frequency; + this.currentlyExecuting = false; + + this.registerCallback(); + }, + + registerCallback: function() { + this.timer = setInterval(this.onTimerEvent.bind(this), this.frequency * 1000); + }, + + stop: function() { + if (!this.timer) return; + clearInterval(this.timer); + this.timer = null; + }, + + onTimerEvent: function() { + if (!this.currentlyExecuting) { + try { + this.currentlyExecuting = true; + this.callback(this); + } finally { + this.currentlyExecuting = false; + } + } + } +} +String.interpret = function(value){ + return value == null ? '' : String(value); +} + +Object.extend(String.prototype, { + gsub: function(pattern, replacement) { + var result = '', source = this, match; + replacement = arguments.callee.prepareReplacement(replacement); + + while (source.length > 0) { + if (match = source.match(pattern)) { + result += source.slice(0, match.index); + result += String.interpret(replacement(match)); + source = source.slice(match.index + match[0].length); + } else { + result += source, source = ''; + } + } + return result; + }, + + sub: function(pattern, replacement, count) { + replacement = this.gsub.prepareReplacement(replacement); + count = count === undefined ? 1 : count; + + return this.gsub(pattern, function(match) { + if (--count < 0) return match[0]; + return replacement(match); + }); + }, + + scan: function(pattern, iterator) { + this.gsub(pattern, iterator); + return this; + }, + + truncate: function(length, truncation) { + length = length || 30; + truncation = truncation === undefined ? '...' : truncation; + return this.length > length ? + this.slice(0, length - truncation.length) + truncation : this; + }, + + strip: function() { + return this.replace(/^\s+/, '').replace(/\s+$/, ''); + }, + + stripTags: function() { + return this.replace(/<\/?[^>]+>/gi, ''); + }, + + stripScripts: function() { + return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), ''); + }, + + extractScripts: function() { + var matchAll = new RegExp(Prototype.ScriptFragment, 'img'); + var matchOne = new RegExp(Prototype.ScriptFragment, 'im'); + return (this.match(matchAll) || []).map(function(scriptTag) { + return (scriptTag.match(matchOne) || ['', ''])[1]; + }); + }, + + evalScripts: function() { + return this.extractScripts().map(function(script) { return eval(script) }); + }, + + escapeHTML: function() { + var div = document.createElement('div'); + var text = document.createTextNode(this); + div.appendChild(text); + return div.innerHTML; + }, + + unescapeHTML: function() { + var div = document.createElement('div'); + div.innerHTML = this.stripTags(); + return div.childNodes[0] ? (div.childNodes.length > 1 ? + $A(div.childNodes).inject('',function(memo,node){ return memo+node.nodeValue }) : + div.childNodes[0].nodeValue) : ''; + }, + + toQueryParams: function(separator) { + var match = this.strip().match(/([^?#]*)(#.*)?$/); + if (!match) return {}; + + return match[1].split(separator || '&').inject({}, function(hash, pair) { + if ((pair = pair.split('='))[0]) { + var name = decodeURIComponent(pair[0]); + var value = pair[1] ? decodeURIComponent(pair[1]) : undefined; + + if (hash[name] !== undefined) { + if (hash[name].constructor != Array) + hash[name] = [hash[name]]; + if (value) hash[name].push(value); + } + else hash[name] = value; + } + return hash; + }); + }, + + toArray: function() { + return this.split(''); + }, + + succ: function() { + return this.slice(0, this.length - 1) + + String.fromCharCode(this.charCodeAt(this.length - 1) + 1); + }, + + camelize: function() { + var parts = this.split('-'), len = parts.length; + if (len == 1) return parts[0]; + + var camelized = this.charAt(0) == '-' + ? parts[0].charAt(0).toUpperCase() + parts[0].substring(1) + : parts[0]; + + for (var i = 1; i < len; i++) + camelized += parts[i].charAt(0).toUpperCase() + parts[i].substring(1); + + return camelized; + }, + + capitalize: function(){ + return this.charAt(0).toUpperCase() + this.substring(1).toLowerCase(); + }, + + underscore: function() { + return this.gsub(/::/, '/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\d])([A-Z])/,'#{1}_#{2}').gsub(/-/,'_').toLowerCase(); + }, + + dasherize: function() { + return this.gsub(/_/,'-'); + }, + + inspect: function(useDoubleQuotes) { + var escapedString = this.replace(/\\/g, '\\\\'); + if (useDoubleQuotes) + return '"' + escapedString.replace(/"/g, '\\"') + '"'; + else + return "'" + escapedString.replace(/'/g, '\\\'') + "'"; + } +}); + +String.prototype.gsub.prepareReplacement = function(replacement) { + if (typeof replacement == 'function') return replacement; + var template = new Template(replacement); + return function(match) { return template.evaluate(match) }; +} + +String.prototype.parseQuery = String.prototype.toQueryParams; + +var Template = Class.create(); +Template.Pattern = /(^|.|\r|\n)(#\{(.*?)\})/; +Template.prototype = { + initialize: function(template, pattern) { + this.template = template.toString(); + this.pattern = pattern || Template.Pattern; + }, + + evaluate: function(object) { + return this.template.gsub(this.pattern, function(match) { + var before = match[1]; + if (before == '\\') return match[2]; + return before + String.interpret(object[match[3]]); + }); + } +} + +var $break = new Object(); +var $continue = new Object(); + +var Enumerable = { + each: function(iterator) { + var index = 0; + try { + this._each(function(value) { + try { + iterator(value, index++); + } catch (e) { + if (e != $continue) throw e; + } + }); + } catch (e) { + if (e != $break) throw e; + } + return this; + }, + + eachSlice: function(number, iterator) { + var index = -number, slices = [], array = this.toArray(); + while ((index += number) < array.length) + slices.push(array.slice(index, index+number)); + return slices.map(iterator); + }, + + all: function(iterator) { + var result = true; + this.each(function(value, index) { + result = result && !!(iterator || Prototype.K)(value, index); + if (!result) throw $break; + }); + return result; + }, + + any: function(iterator) { + var result = false; + this.each(function(value, index) { + if (result = !!(iterator || Prototype.K)(value, index)) + throw $break; + }); + return result; + }, + + collect: function(iterator) { + var results = []; + this.each(function(value, index) { + results.push((iterator || Prototype.K)(value, index)); + }); + return results; + }, + + detect: function(iterator) { + var result; + this.each(function(value, index) { + if (iterator(value, index)) { + result = value; + throw $break; + } + }); + return result; + }, + + findAll: function(iterator) { + var results = []; + this.each(function(value, index) { + if (iterator(value, index)) + results.push(value); + }); + return results; + }, + + grep: function(pattern, iterator) { + var results = []; + this.each(function(value, index) { + var stringValue = value.toString(); + if (stringValue.match(pattern)) + results.push((iterator || Prototype.K)(value, index)); + }) + return results; + }, + + include: function(object) { + var found = false; + this.each(function(value) { + if (value == object) { + found = true; + throw $break; + } + }); + return found; + }, + + inGroupsOf: function(number, fillWith) { + fillWith = fillWith === undefined ? null : fillWith; + return this.eachSlice(number, function(slice) { + while(slice.length < number) slice.push(fillWith); + return slice; + }); + }, + + inject: function(memo, iterator) { + this.each(function(value, index) { + memo = iterator(memo, value, index); + }); + return memo; + }, + + invoke: function(method) { + var args = $A(arguments).slice(1); + return this.map(function(value) { + return value[method].apply(value, args); + }); + }, + + max: function(iterator) { + var result; + this.each(function(value, index) { + value = (iterator || Prototype.K)(value, index); + if (result == undefined || value >= result) + result = value; + }); + return result; + }, + + min: function(iterator) { + var result; + this.each(function(value, index) { + value = (iterator || Prototype.K)(value, index); + if (result == undefined || value < result) + result = value; + }); + return result; + }, + + partition: function(iterator) { + var trues = [], falses = []; + this.each(function(value, index) { + ((iterator || Prototype.K)(value, index) ? + trues : falses).push(value); + }); + return [trues, falses]; + }, + + pluck: function(property) { + var results = []; + this.each(function(value, index) { + results.push(value[property]); + }); + return results; + }, + + reject: function(iterator) { + var results = []; + this.each(function(value, index) { + if (!iterator(value, index)) + results.push(value); + }); + return results; + }, + + sortBy: function(iterator) { + return this.map(function(value, index) { + return {value: value, criteria: iterator(value, index)}; + }).sort(function(left, right) { + var a = left.criteria, b = right.criteria; + return a < b ? -1 : a > b ? 1 : 0; + }).pluck('value'); + }, + + toArray: function() { + return this.map(); + }, + + zip: function() { + var iterator = Prototype.K, args = $A(arguments); + if (typeof args.last() == 'function') + iterator = args.pop(); + + var collections = [this].concat(args).map($A); + return this.map(function(value, index) { + return iterator(collections.pluck(index)); + }); + }, + + size: function() { + return this.toArray().length; + }, + + inspect: function() { + return '#'; + } +} + +Object.extend(Enumerable, { + map: Enumerable.collect, + find: Enumerable.detect, + select: Enumerable.findAll, + member: Enumerable.include, + entries: Enumerable.toArray +}); +var $A = Array.from = function(iterable) { + if (!iterable) return []; + if (iterable.toArray) { + return iterable.toArray(); + } else { + var results = []; + for (var i = 0, length = iterable.length; i < length; i++) + results.push(iterable[i]); + return results; + } +} + +Object.extend(Array.prototype, Enumerable); + +if (!Array.prototype._reverse) + Array.prototype._reverse = Array.prototype.reverse; + +Object.extend(Array.prototype, { + _each: function(iterator) { + for (var i = 0, length = this.length; i < length; i++) + iterator(this[i]); + }, + + clear: function() { + this.length = 0; + return this; + }, + + first: function() { + return this[0]; + }, + + last: function() { + return this[this.length - 1]; + }, + + compact: function() { + return this.select(function(value) { + return value != null; + }); + }, + + flatten: function() { + return this.inject([], function(array, value) { + return array.concat(value && value.constructor == Array ? + value.flatten() : [value]); + }); + }, + + without: function() { + var values = $A(arguments); + return this.select(function(value) { + return !values.include(value); + }); + }, + + indexOf: function(object) { + for (var i = 0, length = this.length; i < length; i++) + if (this[i] == object) return i; + return -1; + }, + + reverse: function(inline) { + return (inline !== false ? this : this.toArray())._reverse(); + }, + + reduce: function() { + return this.length > 1 ? this : this[0]; + }, + + uniq: function() { + return this.inject([], function(array, value) { + return array.include(value) ? array : array.concat([value]); + }); + }, + + clone: function() { + return [].concat(this); + }, + + size: function() { + return this.length; + }, + + inspect: function() { + return '[' + this.map(Object.inspect).join(', ') + ']'; + } +}); + +Array.prototype.toArray = Array.prototype.clone; + +function $w(string){ + string = string.strip(); + return string ? string.split(/\s+/) : []; +} + +if(window.opera){ + Array.prototype.concat = function(){ + var array = []; + for(var i = 0, length = this.length; i < length; i++) array.push(this[i]); + for(var i = 0, length = arguments.length; i < length; i++) { + if(arguments[i].constructor == Array) { + for(var j = 0, arrayLength = arguments[i].length; j < arrayLength; j++) + array.push(arguments[i][j]); + } else { + array.push(arguments[i]); + } + } + return array; + } +} +var Hash = function(obj) { + Object.extend(this, obj || {}); +}; + +Object.extend(Hash, { + toQueryString: function(obj) { + var parts = []; + + this.prototype._each.call(obj, function(pair) { + if (!pair.key) return; + + if (pair.value && pair.value.constructor == Array) { + var values = pair.value.compact(); + if (values.length < 2) pair.value = values.reduce(); + else { + key = encodeURIComponent(pair.key); + values.each(function(value) { + value = value != undefined ? encodeURIComponent(value) : ''; + parts.push(key + '=' + encodeURIComponent(value)); + }); + return; + } + } + if (pair.value == undefined) pair[1] = ''; + parts.push(pair.map(encodeURIComponent).join('=')); + }); + + return parts.join('&'); + } +}); + +Object.extend(Hash.prototype, Enumerable); +Object.extend(Hash.prototype, { + _each: function(iterator) { + for (var key in this) { + var value = this[key]; + if (value && value == Hash.prototype[key]) continue; + + var pair = [key, value]; + pair.key = key; + pair.value = value; + iterator(pair); + } + }, + + keys: function() { + return this.pluck('key'); + }, + + values: function() { + return this.pluck('value'); + }, + + merge: function(hash) { + return $H(hash).inject(this, function(mergedHash, pair) { + mergedHash[pair.key] = pair.value; + return mergedHash; + }); + }, + + remove: function() { + var result; + for(var i = 0, length = arguments.length; i < length; i++) { + var value = this[arguments[i]]; + if (value !== undefined){ + if (result === undefined) result = value; + else { + if (result.constructor != Array) result = [result]; + result.push(value) + } + } + delete this[arguments[i]]; + } + return result; + }, + + toQueryString: function() { + return Hash.toQueryString(this); + }, + + inspect: function() { + return '#'; + } +}); + +function $H(object) { + if (object && object.constructor == Hash) return object; + return new Hash(object); +}; +ObjectRange = Class.create(); +Object.extend(ObjectRange.prototype, Enumerable); +Object.extend(ObjectRange.prototype, { + initialize: function(start, end, exclusive) { + this.start = start; + this.end = end; + this.exclusive = exclusive; + }, + + _each: function(iterator) { + var value = this.start; + while (this.include(value)) { + iterator(value); + value = value.succ(); + } + }, + + include: function(value) { + if (value < this.start) + return false; + if (this.exclusive) + return value < this.end; + return value <= this.end; + } +}); + +var $R = function(start, end, exclusive) { + return new ObjectRange(start, end, exclusive); +} + +var Ajax = { + getTransport: function() { + return Try.these( + function() {return new XMLHttpRequest()}, + function() {return new ActiveXObject('Msxml2.XMLHTTP')}, + function() {return new ActiveXObject('Microsoft.XMLHTTP')} + ) || false; + }, + + activeRequestCount: 0 +} + +Ajax.Responders = { + responders: [], + + _each: function(iterator) { + this.responders._each(iterator); + }, + + register: function(responder) { + if (!this.include(responder)) + this.responders.push(responder); + }, + + unregister: function(responder) { + this.responders = this.responders.without(responder); + }, + + dispatch: function(callback, request, transport, json) { + this.each(function(responder) { + if (typeof responder[callback] == 'function') { + try { + responder[callback].apply(responder, [request, transport, json]); + } catch (e) {} + } + }); + } +}; + +Object.extend(Ajax.Responders, Enumerable); + +Ajax.Responders.register({ + onCreate: function() { + Ajax.activeRequestCount++; + }, + onComplete: function() { + Ajax.activeRequestCount--; + } +}); + +Ajax.Base = function() {}; +Ajax.Base.prototype = { + setOptions: function(options) { + this.options = { + method: 'post', + asynchronous: true, + contentType: 'application/x-www-form-urlencoded', + encoding: 'UTF-8', + parameters: '' + } + Object.extend(this.options, options || {}); + + this.options.method = this.options.method.toLowerCase(); + if (typeof this.options.parameters == 'string') + this.options.parameters = this.options.parameters.toQueryParams(); + } +} + +Ajax.Request = Class.create(); +Ajax.Request.Events = + ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete']; + +Ajax.Request.prototype = Object.extend(new Ajax.Base(), { + _complete: false, + + initialize: function(url, options) { + this.transport = Ajax.getTransport(); + this.setOptions(options); + this.request(url); + }, + + request: function(url) { + this.url = url; + this.method = this.options.method; + var params = this.options.parameters; + + if (!['get', 'post'].include(this.method)) { + // simulate other verbs over post + params['_method'] = this.method; + this.method = 'post'; + } + + params = Hash.toQueryString(params); + if (params && /Konqueror|Safari|KHTML/.test(navigator.userAgent)) params += '&_=' + + // when GET, append parameters to URL + if (this.method == 'get' && params) + this.url += (this.url.indexOf('?') > -1 ? '&' : '?') + params; + + try { + Ajax.Responders.dispatch('onCreate', this, this.transport); + + this.transport.open(this.method.toUpperCase(), this.url, + this.options.asynchronous); + + if (this.options.asynchronous) + setTimeout(function() { this.respondToReadyState(1) }.bind(this), 10); + + this.transport.onreadystatechange = this.onStateChange.bind(this); + this.setRequestHeaders(); + + var body = this.method == 'post' ? (this.options.postBody || params) : null; + + this.transport.send(body); + + /* Force Firefox to handle ready state 4 for synchronous requests */ + if (!this.options.asynchronous && this.transport.overrideMimeType) + this.onStateChange(); + + } + catch (e) { + this.dispatchException(e); + } + }, + + onStateChange: function() { + var readyState = this.transport.readyState; + if (readyState > 1 && !((readyState == 4) && this._complete)) + this.respondToReadyState(this.transport.readyState); + }, + + setRequestHeaders: function() { + var headers = { + 'X-Requested-With': 'XMLHttpRequest', + 'X-Prototype-Version': Prototype.Version, + 'Accept': 'text/javascript, text/html, application/xml, text/xml, */*' + }; + + if (this.method == 'post') { + headers['Content-type'] = this.options.contentType + + (this.options.encoding ? '; charset=' + this.options.encoding : ''); + + /* Force "Connection: close" for older Mozilla browsers to work + * around a bug where XMLHttpRequest sends an incorrect + * Content-length header. See Mozilla Bugzilla #246651. + */ + if (this.transport.overrideMimeType && + (navigator.userAgent.match(/Gecko\/(\d{4})/) || [0,2005])[1] < 2005) + headers['Connection'] = 'close'; + } + + // user-defined headers + if (typeof this.options.requestHeaders == 'object') { + var extras = this.options.requestHeaders; + + if (typeof extras.push == 'function') + for (var i = 0, length = extras.length; i < length; i += 2) + headers[extras[i]] = extras[i+1]; + else + $H(extras).each(function(pair) { headers[pair.key] = pair.value }); + } + + for (var name in headers) + this.transport.setRequestHeader(name, headers[name]); + }, + + success: function() { + return !this.transport.status + || (this.transport.status >= 200 && this.transport.status < 300); + }, + + respondToReadyState: function(readyState) { + var state = Ajax.Request.Events[readyState]; + var transport = this.transport, json = this.evalJSON(); + + if (state == 'Complete') { + try { + this._complete = true; + (this.options['on' + this.transport.status] + || this.options['on' + (this.success() ? 'Succs' : 'Echec')] + || Prototype.emptyFunction)(transport, json); + } catch (e) { + this.dispatchException(e); + } + + if ((this.getHeader('Content-type') || 'text/javascript').strip(). + match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i)) + this.evalResponse(); + } + + try { + (this.options['on' + state] || Prototype.emptyFunction)(transport, json); + Ajax.Responders.dispatch('on' + state, this, transport, json); + } catch (e) { + this.dispatchException(e); + } + + if (state == 'Complete') { + // avoid memory leak in MSIE: clean up + this.transport.onreadystatechange = Prototype.emptyFunction; + } + }, + + getHeader: function(name) { + try { + return this.transport.getResponseHeader(name); + } catch (e) { return null } + }, + + evalJSON: function() { + try { + var json = this.getHeader('X-JSON'); + return json ? eval('(' + json + ')') : null; + } catch (e) { return null } + }, + + evalResponse: function() { + try { + return eval(this.transport.responseText); + } catch (e) { + this.dispatchException(e); + } + }, + + dispatchException: function(exception) { + (this.options.onException || Prototype.emptyFunction)(this, exception); + Ajax.Responders.dispatch('onException', this, exception); + } +}); + +Ajax.Updater = Class.create(); + +Object.extend(Object.extend(Ajax.Updater.prototype, Ajax.Request.prototype), { + initialize: function(container, url, options) { + this.container = { + success: (container.success || container), + failure: (container.failure || (container.success ? null : container)) + } + + this.transport = Ajax.getTransport(); + this.setOptions(options); + + var onComplete = this.options.onComplete || Prototype.emptyFunction; + this.options.onComplete = (function(transport, param) { + this.updateContent(); + onComplete(transport, param); + }).bind(this); + + this.request(url); + }, + + updateContent: function() { + var receiver = this.container[this.success() ? 'success' : 'failure']; + var response = this.transport.responseText; + + if (!this.options.evalScripts) response = response.stripScripts(); + + if (receiver = $(receiver)) { + if (this.options.insertion) + new this.options.insertion(receiver, response); + else + receiver.update(response); + } + + if (this.success()) { + if (this.onComplete) + setTimeout(this.onComplete.bind(this), 10); + } + } +}); + +Ajax.PeriodicalUpdater = Class.create(); +Ajax.PeriodicalUpdater.prototype = Object.extend(new Ajax.Base(), { + initialize: function(container, url, options) { + this.setOptions(options); + this.onComplete = this.options.onComplete; + + this.frequency = (this.options.frequency || 2); + this.decay = (this.options.decay || 1); + + this.updater = {}; + this.container = container; + this.url = url; + + this.start(); + }, + + start: function() { + this.options.onComplete = this.updateComplete.bind(this); + this.onTimerEvent(); + }, + + stop: function() { + this.updater.options.onComplete = undefined; + clearTimeout(this.timer); + (this.onComplete || Prototype.emptyFunction).apply(this, arguments); + }, + + updateComplete: function(request) { + if (this.options.decay) { + this.decay = (request.responseText == this.lastText ? + this.decay * this.options.decay : 1); + + this.lastText = request.responseText; + } + this.timer = setTimeout(this.onTimerEvent.bind(this), + this.decay * this.frequency * 1000); + }, + + onTimerEvent: function() { + this.updater = new Ajax.Updater(this.container, this.url, this.options); + } +}); +function $(element) { + if (arguments.length > 1) { + for (var i = 0, elements = [], length = arguments.length; i < length; i++) + elements.push($(arguments[i])); + return elements; + } + if (typeof element == 'string') + element = document.getElementById(element); + return Element.extend(element); +} + +if (Prototype.BrowserFeatures.XPath) { + document._getElementsByXPath = function(expression, parentElement) { + var results = []; + var query = document.evaluate(expression, $(parentElement) || document, + null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); + for (var i = 0, length = query.snapshotLength; i < length; i++) + results.push(query.snapshotItem(i)); + return results; + }; +} + +document.getElementsByClassName = function(className, parentElement) { + if (Prototype.BrowserFeatures.XPath) { + var q = ".//*[contains(concat(' ', @class, ' '), ' " + className + " ')]"; + return document._getElementsByXPath(q, parentElement); + } else { + var children = ($(parentElement) || document.body).getElementsByTagName('*'); + var elements = [], child; + for (var i = 0, length = children.length; i < length; i++) { + child = children[i]; + if (Element.hasClassName(child, className)) + elements.push(Element.extend(child)); + } + return elements; + } +}; + +/*--------------------------------------------------------------------------*/ + +if (!window.Element) + var Element = new Object(); + +Element.extend = function(element) { + if (!element || _nativeExtensions || element.nodeType == 3) return element; + + if (!element._extended && element.tagName && element != window) { + var methods = Object.clone(Element.Methods), cache = Element.extend.cache; + + if (element.tagName == 'FORM') + Object.extend(methods, Form.Methods); + if (['INPUT', 'TEXTAREA', 'SELECT'].include(element.tagName)) + Object.extend(methods, Form.Element.Methods); + + Object.extend(methods, Element.Methods.Simulated); + + for (var property in methods) { + var value = methods[property]; + if (typeof value == 'function' && !(property in element)) + element[property] = cache.findOrStore(value); + } + } + + element._extended = true; + return element; +}; + +Element.extend.cache = { + findOrStore: function(value) { + return this[value] = this[value] || function() { + return value.apply(null, [this].concat($A(arguments))); + } + } +}; + +Element.Methods = { + visible: function(element) { + return $(element).style.display != 'none'; + }, + + toggle: function(element) { + element = $(element); + Element[Element.visible(element) ? 'hide' : 'show'](element); + return element; + }, + + hide: function(element) { + $(element).style.display = 'none'; + return element; + }, + + show: function(element) { + $(element).style.display = ''; + return element; + }, + + remove: function(element) { + element = $(element); + element.parentNode.removeChild(element); + return element; + }, + + update: function(element, html) { + html = typeof html == 'undefined' ? '' : html.toString(); + $(element).innerHTML = html.stripScripts(); + setTimeout(function() {html.evalScripts()}, 10); + return element; + }, + + replace: function(element, html) { + element = $(element); + html = typeof html == 'undefined' ? '' : html.toString(); + if (element.outerHTML) { + element.outerHTML = html.stripScripts(); + } else { + var range = element.ownerDocument.createRange(); + range.selectNodeContents(element); + element.parentNode.replaceChild( + range.createContextualFragment(html.stripScripts()), element); + } + setTimeout(function() {html.evalScripts()}, 10); + return element; + }, + + inspect: function(element) { + element = $(element); + var result = '<' + element.tagName.toLowerCase(); + $H({'id': 'id', 'className': 'class'}).each(function(pair) { + var property = pair.first(), attribute = pair.last(); + var value = (element[property] || '').toString(); + if (value) result += ' ' + attribute + '=' + value.inspect(true); + }); + return result + '>'; + }, + + recursivelyCollect: function(element, property) { + element = $(element); + var elements = []; + while (element = element[property]) + if (element.nodeType == 1) + elements.push(Element.extend(element)); + return elements; + }, + + ancestors: function(element) { + return $(element).recursivelyCollect('parentNode'); + }, + + descendants: function(element) { + return $A($(element).getElementsByTagName('*')); + }, + + immediateDescendants: function(element) { + if (!(element = $(element).firstChild)) return []; + while (element && element.nodeType != 1) element = element.nextSibling; + if (element) return [element].concat($(element).nextSiblings()); + return []; + }, + + previousSiblings: function(element) { + return $(element).recursivelyCollect('previousSibling'); + }, + + nextSiblings: function(element) { + return $(element).recursivelyCollect('nextSibling'); + }, + + siblings: function(element) { + element = $(element); + return element.previousSiblings().reverse().concat(element.nextSiblings()); + }, + + match: function(element, selector) { + if (typeof selector == 'string') + selector = new Selector(selector); + return selector.match($(element)); + }, + + up: function(element, expression, index) { + return Selector.findElement($(element).ancestors(), expression, index); + }, + + down: function(element, expression, index) { + return Selector.findElement($(element).descendants(), expression, index); + }, + + previous: function(element, expression, index) { + return Selector.findElement($(element).previousSiblings(), expression, index); + }, + + next: function(element, expression, index) { + return Selector.findElement($(element).nextSiblings(), expression, index); + }, + + getElementsBySelector: function() { + var args = $A(arguments), element = $(args.shift()); + return Selector.findChildElements(element, args); + }, + + getElementsByClassName: function(element, className) { + return document.getElementsByClassName(className, element); + }, + + readAttribute: function(element, name) { + element = $(element); + if (document.all && !window.opera) { + var t = Element._attributeTranslations; + if (t.values[name]) return t.values[name](element, name); + if (t.names[name]) name = t.names[name]; + var attribute = element.attributes[name]; + if(attribute) return attribute.nodeValue; + } + return element.getAttribute(name); + }, + + getHeight: function(element) { + return $(element).getDimensions().height; + }, + + getWidth: function(element) { + return $(element).getDimensions().width; + }, + + classNames: function(element) { + return new Element.ClassNames(element); + }, + + hasClassName: function(element, className) { + if (!(element = $(element))) return; + var elementClassName = element.className; + if (elementClassName.length == 0) return false; + if (elementClassName == className || + elementClassName.match(new RegExp("(^|\\s)" + className + "(\\s|$)"))) + return true; + return false; + }, + + addClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element).add(className); + return element; + }, + + removeClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element).remove(className); + return element; + }, + + toggleClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element)[element.hasClassName(className) ? 'remove' : 'add'](className); + return element; + }, + + observe: function() { + Event.observe.apply(Event, arguments); + return $A(arguments).first(); + }, + + stopObserving: function() { + Event.stopObserving.apply(Event, arguments); + return $A(arguments).first(); + }, + + // removes whitespace-only text node children + cleanWhitespace: function(element) { + element = $(element); + var node = element.firstChild; + while (node) { + var nextNode = node.nextSibling; + if (node.nodeType == 3 && !/\S/.test(node.nodeValue)) + element.removeChild(node); + node = nextNode; + } + return element; + }, + + empty: function(element) { + return $(element).innerHTML.match(/^\s*$/); + }, + + descendantOf: function(element, ancestor) { + element = $(element), ancestor = $(ancestor); + while (element = element.parentNode) + if (element == ancestor) return true; + return false; + }, + + scrollTo: function(element) { + element = $(element); + var pos = Position.cumulativeOffset(element); + window.scrollTo(pos[0], pos[1]); + return element; + }, + + getStyle: function(element, style) { + element = $(element); + if (['float','cssFloat'].include(style)) + style = (typeof element.style.styleFloat != 'undefined' ? 'styleFloat' : 'cssFloat'); + style = style.camelize(); + var value = element.style[style]; + if (!value) { + if (document.defaultView && document.defaultView.getComputedStyle) { + var css = document.defaultView.getComputedStyle(element, null); + value = css ? css[style] : null; + } else if (element.currentStyle) { + value = element.currentStyle[style]; + } + } + + if((value == 'auto') && ['width','height'].include(style) && (element.getStyle('display') != 'none')) + value = element['offset'+style.capitalize()] + 'px'; + + if (window.opera && ['left', 'top', 'right', 'bottom'].include(style)) + if (Element.getStyle(element, 'position') == 'static') value = 'auto'; + if(style == 'opacity') { + if(value) return parseFloat(value); + if(value = (element.getStyle('filter') || '').match(/alpha\(opacity=(.*)\)/)) + if(value[1]) return parseFloat(value[1]) / 100; + return 1.0; + } + return value == 'auto' ? null : value; + }, + + setStyle: function(element, style) { + element = $(element); + for (var name in style) { + var value = style[name]; + if(name == 'opacity') { + if (value == 1) { + value = (/Gecko/.test(navigator.userAgent) && + !/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? 0.999999 : 1.0; + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.style.filter = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,''); + } else if(value == '') { + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.style.filter = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,''); + } else { + if(value < 0.00001) value = 0; + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.style.filter = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'') + + 'alpha(opacity='+value*100+')'; + } + } else if(['float','cssFloat'].include(name)) name = (typeof element.style.styleFloat != 'undefined') ? 'styleFloat' : 'cssFloat'; + element.style[name.camelize()] = value; + } + return element; + }, + + getDimensions: function(element) { + element = $(element); + var display = $(element).getStyle('display'); + if (display != 'none' && display != null) // Safari bug + return {width: element.offsetWidth, height: element.offsetHeight}; + + // All *Width and *Height properties give 0 on elements with display none, + // so enable the element temporarily + var els = element.style; + var originalVisibility = els.visibility; + var originalPosition = els.position; + var originalDisplay = els.display; + els.visibility = 'hidden'; + els.position = 'absolute'; + els.display = 'block'; + var originalWidth = element.clientWidth; + var originalHeight = element.clientHeight; + els.display = originalDisplay; + els.position = originalPosition; + els.visibility = originalVisibility; + return {width: originalWidth, height: originalHeight}; + }, + + makePositioned: function(element) { + element = $(element); + var pos = Element.getStyle(element, 'position'); + if (pos == 'static' || !pos) { + element._madePositioned = true; + element.style.position = 'relative'; + // Opera returns the offset relative to the positioning context, when an + // element is position relative but top and left have not been defined + if (window.opera) { + element.style.top = 0; + element.style.left = 0; + } + } + return element; + }, + + undoPositioned: function(element) { + element = $(element); + if (element._madePositioned) { + element._madePositioned = undefined; + element.style.position = + element.style.top = + element.style.left = + element.style.bottom = + element.style.right = ''; + } + return element; + }, + + makeClipping: function(element) { + element = $(element); + if (element._overflow) return element; + element._overflow = element.style.overflow || 'auto'; + if ((Element.getStyle(element, 'overflow') || 'visible') != 'hidden') + element.style.overflow = 'hidden'; + return element; + }, + + undoClipping: function(element) { + element = $(element); + if (!element._overflow) return element; + element.style.overflow = element._overflow == 'auto' ? '' : element._overflow; + element._overflow = null; + return element; + } +}; + +Object.extend(Element.Methods, {childOf: Element.Methods.descendantOf}); + +Element._attributeTranslations = {}; + +Element._attributeTranslations.names = { + colspan: "colSpan", + rowspan: "rowSpan", + valign: "vAlign", + datetime: "dateTime", + accesskey: "accessKey", + tabindex: "tabIndex", + enctype: "encType", + maxlength: "maxLength", + readonly: "readOnly", + longdesc: "longDesc" +}; + +Element._attributeTranslations.values = { + _getAttr: function(element, attribute) { + return element.getAttribute(attribute, 2); + }, + + _flag: function(element, attribute) { + return $(element).hasAttribute(attribute) ? attribute : null; + }, + + style: function(element) { + return element.style.cssText.toLowerCase(); + }, + + title: function(element) { + var node = element.getAttributeNode('title'); + return node.specified ? node.nodeValue : null; + } +}; + +Object.extend(Element._attributeTranslations.values, { + href: Element._attributeTranslations.values._getAttr, + src: Element._attributeTranslations.values._getAttr, + disabled: Element._attributeTranslations.values._flag, + checked: Element._attributeTranslations.values._flag, + readonly: Element._attributeTranslations.values._flag, + multiple: Element._attributeTranslations.values._flag +}); + +Element.Methods.Simulated = { + hasAttribute: function(element, attribute) { + var t = Element._attributeTranslations; + attribute = t.names[attribute] || attribute; + return $(element).getAttributeNode(attribute).specified; + } +}; + +// IE is missing .innerHTML support for TABLE-related elements +if (document.all && !window.opera){ + Element.Methods.update = function(element, html) { + element = $(element); + html = typeof html == 'undefined' ? '' : html.toString(); + var tagName = element.tagName.toUpperCase(); + if (['THEAD','TBODY','TR','TD'].include(tagName)) { + var div = document.createElement('div'); + switch (tagName) { + case 'THEAD': + case 'TBODY': + div.innerHTML = '
    <%=h product.designation %><%=h product.description %><%= link_to product.supplier_id, supplier_path(product.supplier_id) %><%=h product.type%>
    ' + html.stripScripts() + '
    '; + depth = 2; + break; + case 'TR': + div.innerHTML = '' + html.stripScripts() + '
    '; + depth = 3; + break; + case 'TD': + div.innerHTML = '
    ' + html.stripScripts() + '
    '; + depth = 4; + } + $A(element.childNodes).each(function(node){ + element.removeChild(node) + }); + depth.times(function(){ div = div.firstChild }); + + $A(div.childNodes).each( + function(node){ element.appendChild(node) }); + } else { + element.innerHTML = html.stripScripts(); + } + setTimeout(function() {html.evalScripts()}, 10); + return element; + } +}; + +Object.extend(Element, Element.Methods); + +var _nativeExtensions = false; + +if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)) + ['', 'Form', 'Input', 'TextArea', 'Select'].each(function(tag) { + var className = 'HTML' + tag + 'Element'; + if(window[className]) return; + var klass = window[className] = {}; + klass.prototype = document.createElement(tag ? tag.toLowerCase() : 'div').__proto__; + }); + +Element.addMethods = function(methods) { + Object.extend(Element.Methods, methods || {}); + + function copy(methods, destination, onlyIfAbsent) { + onlyIfAbsent = onlyIfAbsent || false; + var cache = Element.extend.cache; + for (var property in methods) { + var value = methods[property]; + if (!onlyIfAbsent || !(property in destination)) + destination[property] = cache.findOrStore(value); + } + } + + if (typeof HTMLElement != 'undefined') { + copy(Element.Methods, HTMLElement.prototype); + copy(Element.Methods.Simulated, HTMLElement.prototype, true); + copy(Form.Methods, HTMLFormElement.prototype); + [HTMLInputElement, HTMLTextAreaElement, HTMLSelectElement].each(function(klass) { + copy(Form.Element.Methods, klass.prototype); + }); + _nativeExtensions = true; + } +} + +var Toggle = new Object(); +Toggle.display = Element.toggle; + +/*--------------------------------------------------------------------------*/ + +Abstract.Insertion = function(adjacency) { + this.adjacency = adjacency; +} + +Abstract.Insertion.prototype = { + initialize: function(element, content) { + this.element = $(element); + this.content = content.stripScripts(); + + if (this.adjacency && this.element.insertAdjacentHTML) { + try { + this.element.insertAdjacentHTML(this.adjacency, this.content); + } catch (e) { + var tagName = this.element.tagName.toUpperCase(); + if (['TBODY', 'TR'].include(tagName)) { + this.insertContent(this.contentFromAnonymousTable()); + } else { + throw e; + } + } + } else { + this.range = this.element.ownerDocument.createRange(); + if (this.initializeRange) this.initializeRange(); + this.insertContent([this.range.createContextualFragment(this.content)]); + } + + setTimeout(function() {content.evalScripts()}, 10); + }, + + contentFromAnonymousTable: function() { + var div = document.createElement('div'); + div.innerHTML = '' + this.content + '
    '; + return $A(div.childNodes[0].childNodes[0].childNodes); + } +} + +var Insertion = new Object(); + +Insertion.Before = Class.create(); +Insertion.Before.prototype = Object.extend(new Abstract.Insertion('beforeBegin'), { + initializeRange: function() { + this.range.setStartBefore(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.parentNode.insertBefore(fragment, this.element); + }).bind(this)); + } +}); + +Insertion.Top = Class.create(); +Insertion.Top.prototype = Object.extend(new Abstract.Insertion('afterBegin'), { + initializeRange: function() { + this.range.selectNodeContents(this.element); + this.range.collapse(true); + }, + + insertContent: function(fragments) { + fragments.reverse(false).each((function(fragment) { + this.element.insertBefore(fragment, this.element.firstChild); + }).bind(this)); + } +}); + +Insertion.Bottom = Class.create(); +Insertion.Bottom.prototype = Object.extend(new Abstract.Insertion('beforeEnd'), { + initializeRange: function() { + this.range.selectNodeContents(this.element); + this.range.collapse(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.appendChild(fragment); + }).bind(this)); + } +}); + +Insertion.After = Class.create(); +Insertion.After.prototype = Object.extend(new Abstract.Insertion('afterEnd'), { + initializeRange: function() { + this.range.setStartAfter(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.parentNode.insertBefore(fragment, + this.element.nextSibling); + }).bind(this)); + } +}); + +/*--------------------------------------------------------------------------*/ + +Element.ClassNames = Class.create(); +Element.ClassNames.prototype = { + initialize: function(element) { + this.element = $(element); + }, + + _each: function(iterator) { + this.element.className.split(/\s+/).select(function(name) { + return name.length > 0; + })._each(iterator); + }, + + set: function(className) { + this.element.className = className; + }, + + add: function(classNameToAdd) { + if (this.include(classNameToAdd)) return; + this.set($A(this).concat(classNameToAdd).join(' ')); + }, + + remove: function(classNameToRemove) { + if (!this.include(classNameToRemove)) return; + this.set($A(this).without(classNameToRemove).join(' ')); + }, + + toString: function() { + return $A(this).join(' '); + } +}; + +Object.extend(Element.ClassNames.prototype, Enumerable); +var Selector = Class.create(); +Selector.prototype = { + initialize: function(expression) { + this.params = {classNames: []}; + this.expression = expression.toString().strip(); + this.parseExpression(); + this.compileMatcher(); + }, + + parseExpression: function() { + function abort(message) { throw 'Erreur de parsing dans le slcteur: ' + message; } + + if (this.expression == '') abort('expression vide'); + + var params = this.params, expr = this.expression, match, modifier, clause, rest; + while (match = expr.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=)(?:"([^"]*)"|([^\]\s]*)))?\]$/i)) { + params.attributes = params.attributes || []; + params.attributes.push({name: match[2], operator: match[3], value: match[4] || match[5] || ''}); + expr = match[1]; + } + + if (expr == '*') return this.params.wildcard = true; + + while (match = expr.match(/^([^a-z0-9_-])?([a-z0-9_-]+)(.*)/i)) { + modifier = match[1], clause = match[2], rest = match[3]; + switch (modifier) { + case '#': params.id = clause; break; + case '.': params.classNames.push(clause); break; + case '': + case undefined: params.tagName = clause.toUpperCase(); break; + default: abort(expr.inspect()); + } + expr = rest; + } + + if (expr.length > 0) abort(expr.inspect()); + }, + + buildMatchExpression: function() { + var params = this.params, conditions = [], clause; + + if (params.wildcard) + conditions.push('true'); + if (clause = params.id) + conditions.push('element.readAttribute("id") == ' + clause.inspect()); + if (clause = params.tagName) + conditions.push('element.tagName.toUpperCase() == ' + clause.inspect()); + if ((clause = params.classNames).length > 0) + for (var i = 0, length = clause.length; i < length; i++) + conditions.push('element.hasClassName(' + clause[i].inspect() + ')'); + if (clause = params.attributes) { + clause.each(function(attribute) { + var value = 'element.readAttribute(' + attribute.name.inspect() + ')'; + var splitValueBy = function(delimiter) { + return value + ' && ' + value + '.split(' + delimiter.inspect() + ')'; + } + + switch (attribute.operator) { + case '=': conditions.push(value + ' == ' + attribute.value.inspect()); break; + case '~=': conditions.push(splitValueBy(' ') + '.include(' + attribute.value.inspect() + ')'); break; + case '|=': conditions.push( + splitValueBy('-') + '.first().toUpperCase() == ' + attribute.value.toUpperCase().inspect() + ); break; + case '!=': conditions.push(value + ' != ' + attribute.value.inspect()); break; + case '': + case undefined: conditions.push('element.hasAttribute(' + attribute.name.inspect() + ')'); break; + default: throw 'Oprateur inconnu ' + attribute.operator + ' dans le slcteur'; + } + }); + } + + return conditions.join(' && '); + }, + + compileMatcher: function() { + this.match = new Function('element', 'if (!element.tagName) return false; \ + element = $(element); \ + return ' + this.buildMatchExpression()); + }, + + findElements: function(scope) { + var element; + + if (element = $(this.params.id)) + if (this.match(element)) + if (!scope || Element.childOf(element, scope)) + return [element]; + + scope = (scope || document).getElementsByTagName(this.params.tagName || '*'); + + var results = []; + for (var i = 0, length = scope.length; i < length; i++) + if (this.match(element = scope[i])) + results.push(Element.extend(element)); + + return results; + }, + + toString: function() { + return this.expression; + } +} + +Object.extend(Selector, { + matchElements: function(elements, expression) { + var selector = new Selector(expression); + return elements.select(selector.match.bind(selector)).map(Element.extend); + }, + + findElement: function(elements, expression, index) { + if (typeof expression == 'number') index = expression, expression = false; + return Selector.matchElements(elements, expression || '*')[index || 0]; + }, + + findChildElements: function(element, expressions) { + return expressions.map(function(expression) { + return expression.match(/[^\s"]+(?:"[^"]*"[^\s"]+)*/g).inject([null], function(results, expr) { + var selector = new Selector(expr); + return results.inject([], function(elements, result) { + return elements.concat(selector.findElements(result || element)); + }); + }); + }).flatten(); + } +}); + +function $$() { + return Selector.findChildElements(document, $A(arguments)); +} +var Form = { + reset: function(form) { + $(form).reset(); + return form; + }, + + serializeElements: function(elements, getHash) { + var data = elements.inject({}, function(result, element) { + if (!element.disabled && element.name) { + var key = element.name, value = $(element).getValue(); + if (value != undefined) { + if (result[key]) { + if (result[key].constructor != Array) result[key] = [result[key]]; + result[key].push(value); + } + else result[key] = value; + } + } + return result; + }); + + return getHash ? data : Hash.toQueryString(data); + } +}; + +Form.Methods = { + serialize: function(form, getHash) { + return Form.serializeElements(Form.getElements(form), getHash); + }, + + getElements: function(form) { + return $A($(form).getElementsByTagName('*')).inject([], + function(elements, child) { + if (Form.Element.Serializers[child.tagName.toLowerCase()]) + elements.push(Element.extend(child)); + return elements; + } + ); + }, + + getInputs: function(form, typeName, name) { + form = $(form); + var inputs = form.getElementsByTagName('input'); + + if (!typeName && !name) return $A(inputs).map(Element.extend); + + for (var i = 0, matchingInputs = [], length = inputs.length; i < length; i++) { + var input = inputs[i]; + if ((typeName && input.type != typeName) || (name && input.name != name)) + continue; + matchingInputs.push(Element.extend(input)); + } + + return matchingInputs; + }, + + disable: function(form) { + form = $(form); + form.getElements().each(function(element) { + element.blur(); + element.disabled = 'true'; + }); + return form; + }, + + enable: function(form) { + form = $(form); + form.getElements().each(function(element) { + element.disabled = ''; + }); + return form; + }, + + findFirstElement: function(form) { + return $(form).getElements().find(function(element) { + return element.type != 'hidden' && !element.disabled && + ['input', 'select', 'textarea'].include(element.tagName.toLowerCase()); + }); + }, + + focusFirstElement: function(form) { + form = $(form); + form.findFirstElement().activate(); + return form; + } +} + +Object.extend(Form, Form.Methods); + +/*--------------------------------------------------------------------------*/ + +Form.Element = { + focus: function(element) { + $(element).focus(); + return element; + }, + + select: function(element) { + $(element).select(); + return element; + } +} + +Form.Element.Methods = { + serialize: function(element) { + element = $(element); + if (!element.disabled && element.name) { + var value = element.getValue(); + if (value != undefined) { + var pair = {}; + pair[element.name] = value; + return Hash.toQueryString(pair); + } + } + return ''; + }, + + getValue: function(element) { + element = $(element); + var method = element.tagName.toLowerCase(); + return Form.Element.Serializers[method](element); + }, + + clear: function(element) { + $(element).value = ''; + return element; + }, + + present: function(element) { + return $(element).value != ''; + }, + + activate: function(element) { + element = $(element); + element.focus(); + if (element.select && ( element.tagName.toLowerCase() != 'input' || + !['button', 'reset', 'submit'].include(element.type) ) ) + element.select(); + return element; + }, + + disable: function(element) { + element = $(element); + element.disabled = true; + return element; + }, + + enable: function(element) { + element = $(element); + element.blur(); + element.disabled = false; + return element; + } +} + +Object.extend(Form.Element, Form.Element.Methods); +var Field = Form.Element; +var $F = Form.Element.getValue; + +/*--------------------------------------------------------------------------*/ + +Form.Element.Serializers = { + input: function(element) { + switch (element.type.toLowerCase()) { + case 'checkbox': + case 'radio': + return Form.Element.Serializers.inputSelector(element); + default: + return Form.Element.Serializers.textarea(element); + } + }, + + inputSelector: function(element) { + return element.checked ? element.value : null; + }, + + textarea: function(element) { + return element.value; + }, + + select: function(element) { + return this[element.type == 'select-one' ? + 'selectOne' : 'selectMany'](element); + }, + + selectOne: function(element) { + var index = element.selectedIndex; + return index >= 0 ? this.optionValue(element.options[index]) : null; + }, + + selectMany: function(element) { + var values, length = element.length; + if (!length) return null; + + for (var i = 0, values = []; i < length; i++) { + var opt = element.options[i]; + if (opt.selected) values.push(this.optionValue(opt)); + } + return values; + }, + + optionValue: function(opt) { + // extend element because hasAttribute may not be native + return Element.extend(opt).hasAttribute('value') ? opt.value : opt.text; + } +} + +/*--------------------------------------------------------------------------*/ + +Abstract.TimedObserver = function() {} +Abstract.TimedObserver.prototype = { + initialize: function(element, frequency, callback) { + this.frequency = frequency; + this.element = $(element); + this.callback = callback; + + this.lastValue = this.getValue(); + this.registerCallback(); + }, + + registerCallback: function() { + setInterval(this.onTimerEvent.bind(this), this.frequency * 1000); + }, + + onTimerEvent: function() { + var value = this.getValue(); + var changed = ('string' == typeof this.lastValue && 'string' == typeof value + ? this.lastValue != value : String(this.lastValue) != String(value)); + if (changed) { + this.callback(this.element, value); + this.lastValue = value; + } + } +} + +Form.Element.Observer = Class.create(); +Form.Element.Observer.prototype = Object.extend(new Abstract.TimedObserver(), { + getValue: function() { + return Form.Element.getValue(this.element); + } +}); + +Form.Observer = Class.create(); +Form.Observer.prototype = Object.extend(new Abstract.TimedObserver(), { + getValue: function() { + return Form.serialize(this.element); + } +}); + +/*--------------------------------------------------------------------------*/ + +Abstract.EventObserver = function() {} +Abstract.EventObserver.prototype = { + initialize: function(element, callback) { + this.element = $(element); + this.callback = callback; + + this.lastValue = this.getValue(); + if (this.element.tagName.toLowerCase() == 'form') + this.registerFormCallbacks(); + else + this.registerCallback(this.element); + }, + + onElementEvent: function() { + var value = this.getValue(); + if (this.lastValue != value) { + this.callback(this.element, value); + this.lastValue = value; + } + }, + + registerFormCallbacks: function() { + Form.getElements(this.element).each(this.registerCallback.bind(this)); + }, + + registerCallback: function(element) { + if (element.type) { + switch (element.type.toLowerCase()) { + case 'checkbox': + case 'radio': + Event.observe(element, 'click', this.onElementEvent.bind(this)); + break; + default: + Event.observe(element, 'change', this.onElementEvent.bind(this)); + break; + } + } + } +} + +Form.Element.EventObserver = Class.create(); +Form.Element.EventObserver.prototype = Object.extend(new Abstract.EventObserver(), { + getValue: function() { + return Form.Element.getValue(this.element); + } +}); + +Form.EventObserver = Class.create(); +Form.EventObserver.prototype = Object.extend(new Abstract.EventObserver(), { + getValue: function() { + return Form.serialize(this.element); + } +}); +if (!window.Event) { + var Event = new Object(); +} + +Object.extend(Event, { + KEY_BACKSPACE: 8, + KEY_TAB: 9, + KEY_RETURN: 13, + KEY_ESC: 27, + KEY_LEFT: 37, + KEY_UP: 38, + KEY_RIGHT: 39, + KEY_DOWN: 40, + KEY_DELETE: 46, + KEY_HOME: 36, + KEY_END: 35, + KEY_PAGEUP: 33, + KEY_PAGEDOWN: 34, + + element: function(event) { + return event.target || event.srcElement; + }, + + isLeftClick: function(event) { + return (((event.which) && (event.which == 1)) || + ((event.button) && (event.button == 1))); + }, + + pointerX: function(event) { + return event.pageX || (event.clientX + + (document.documentElement.scrollLeft || document.body.scrollLeft)); + }, + + pointerY: function(event) { + return event.pageY || (event.clientY + + (document.documentElement.scrollTop || document.body.scrollTop)); + }, + + stop: function(event) { + if (event.preventDefault) { + event.preventDefault(); + event.stopPropagation(); + } else { + event.returnValue = false; + event.cancelBubble = true; + } + }, + + // find the first node with the given tagName, starting from the + // node the event was triggered on; traverses the DOM upwards + findElement: function(event, tagName) { + var element = Event.element(event); + while (element.parentNode && (!element.tagName || + (element.tagName.toUpperCase() != tagName.toUpperCase()))) + element = element.parentNode; + return element; + }, + + observers: false, + + _observeAndCache: function(element, name, observer, useCapture) { + if (!this.observers) this.observers = []; + if (element.addEventListener) { + this.observers.push([element, name, observer, useCapture]); + element.addEventListener(name, observer, useCapture); + } else if (element.attachEvent) { + this.observers.push([element, name, observer, useCapture]); + element.attachEvent('on' + name, observer); + } + }, + + unloadCache: function() { + if (!Event.observers) return; + for (var i = 0, length = Event.observers.length; i < length; i++) { + Event.stopObserving.apply(this, Event.observers[i]); + Event.observers[i][0] = null; + } + Event.observers = false; + }, + + observe: function(element, name, observer, useCapture) { + element = $(element); + useCapture = useCapture || false; + + if (name == 'keypress' && + (navigator.appVersion.match(/Konqueror|Safari|KHTML/) + || element.attachEvent)) + name = 'keydown'; + + Event._observeAndCache(element, name, observer, useCapture); + }, + + stopObserving: function(element, name, observer, useCapture) { + element = $(element); + useCapture = useCapture || false; + + if (name == 'keypress' && + (navigator.appVersion.match(/Konqueror|Safari|KHTML/) + || element.detachEvent)) + name = 'keydown'; + + if (element.removeEventListener) { + element.removeEventListener(name, observer, useCapture); + } else if (element.detachEvent) { + try { + element.detachEvent('on' + name, observer); + } catch (e) {} + } + } +}); + +/* prevent memory leaks in IE */ +if (navigator.appVersion.match(/\bMSIE\b/)) + Event.observe(window, 'unload', Event.unloadCache, false); +var Position = { + // set to true if needed, warning: firefox performance problems + // NOT neeeded for page scrolling, only if draggable contained in + // scrollable elements + includeScrollOffsets: false, + + // must be called before calling withinIncludingScrolloffset, every time the + // page is scrolled + prepare: function() { + this.deltaX = window.pageXOffset + || document.documentElement.scrollLeft + || document.body.scrollLeft + || 0; + this.deltaY = window.pageYOffset + || document.documentElement.scrollTop + || document.body.scrollTop + || 0; + }, + + realOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.scrollTop || 0; + valueL += element.scrollLeft || 0; + element = element.parentNode; + } while (element); + return [valueL, valueT]; + }, + + cumulativeOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + element = element.offsetParent; + } while (element); + return [valueL, valueT]; + }, + + positionedOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + element = element.offsetParent; + if (element) { + if(element.tagName=='BODY') break; + var p = Element.getStyle(element, 'position'); + if (p == 'relative' || p == 'absolute') break; + } + } while (element); + return [valueL, valueT]; + }, + + offsetParent: function(element) { + if (element.offsetParent) return element.offsetParent; + if (element == document.body) return element; + + while ((element = element.parentNode) && element != document.body) + if (Element.getStyle(element, 'position') != 'static') + return element; + + return document.body; + }, + + // caches x/y coordinate pair to use with overlap + within: function(element, x, y) { + if (this.includeScrollOffsets) + return this.withinIncludingScrolloffsets(element, x, y); + this.xcomp = x; + this.ycomp = y; + this.offset = this.cumulativeOffset(element); + + return (y >= this.offset[1] && + y < this.offset[1] + element.offsetHeight && + x >= this.offset[0] && + x < this.offset[0] + element.offsetWidth); + }, + + withinIncludingScrolloffsets: function(element, x, y) { + var offsetcache = this.realOffset(element); + + this.xcomp = x + offsetcache[0] - this.deltaX; + this.ycomp = y + offsetcache[1] - this.deltaY; + this.offset = this.cumulativeOffset(element); + + return (this.ycomp >= this.offset[1] && + this.ycomp < this.offset[1] + element.offsetHeight && + this.xcomp >= this.offset[0] && + this.xcomp < this.offset[0] + element.offsetWidth); + }, + + // within must be called directly before + overlap: function(mode, element) { + if (!mode) return 0; + if (mode == 'vertical') + return ((this.offset[1] + element.offsetHeight) - this.ycomp) / + element.offsetHeight; + if (mode == 'horizontal') + return ((this.offset[0] + element.offsetWidth) - this.xcomp) / + element.offsetWidth; + }, + + page: function(forElement) { + var valueT = 0, valueL = 0; + + var element = forElement; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + + // Safari fix + if (element.offsetParent==document.body) + if (Element.getStyle(element,'position')=='absolute') break; + + } while (element = element.offsetParent); + + element = forElement; + do { + if (!window.opera || element.tagName=='BODY') { + valueT -= element.scrollTop || 0; + valueL -= element.scrollLeft || 0; + } + } while (element = element.parentNode); + + return [valueL, valueT]; + }, + + clone: function(source, target) { + var options = Object.extend({ + setLeft: true, + setTop: true, + setWidth: true, + setHeight: true, + offsetTop: 0, + offsetLeft: 0 + }, arguments[2] || {}) + + // find page position of source + source = $(source); + var p = Position.page(source); + + // find coordinate system to use + target = $(target); + var delta = [0, 0]; + var parent = null; + // delta [0,0] will do fine with position: fixed elements, + // position:absolute needs offsetParent deltas + if (Element.getStyle(target,'position') == 'absolute') { + parent = Position.offsetParent(target); + delta = Position.page(parent); + } + + // correct by body offsets (fixes Safari) + if (parent == document.body) { + delta[0] -= document.body.offsetLeft; + delta[1] -= document.body.offsetTop; + } + + // set position + if(options.setLeft) target.style.left = (p[0] - delta[0] + options.offsetLeft) + 'px'; + if(options.setTop) target.style.top = (p[1] - delta[1] + options.offsetTop) + 'px'; + if(options.setWidth) target.style.width = source.offsetWidth + 'px'; + if(options.setHeight) target.style.height = source.offsetHeight + 'px'; + }, + + absolutize: function(element) { + element = $(element); + if (element.style.position == 'absolute') return; + Position.prepare(); + + var offsets = Position.positionedOffset(element); + var top = offsets[1]; + var left = offsets[0]; + var width = element.clientWidth; + var height = element.clientHeight; + + element._originalLeft = left - parseFloat(element.style.left || 0); + element._originalTop = top - parseFloat(element.style.top || 0); + element._originalWidth = element.style.width; + element._originalHeight = element.style.height; + + element.style.position = 'absolute'; + element.style.top = top + 'px'; + element.style.left = left + 'px'; + element.style.width = width + 'px'; + element.style.height = height + 'px'; + }, + + relativize: function(element) { + element = $(element); + if (element.style.position == 'relative') return; + Position.prepare(); + + element.style.position = 'relative'; + var top = parseFloat(element.style.top || 0) - (element._originalTop || 0); + var left = parseFloat(element.style.left || 0) - (element._originalLeft || 0); + + element.style.top = top + 'px'; + element.style.left = left + 'px'; + element.style.height = element._originalHeight; + element.style.width = element._originalWidth; + } +} + +// Safari returns margins on body which is incorrect if the child is absolutely +// positioned. For performance reasons, redefine Position.cumulativeOffset for +// KHTML/WebKit only. +if (/Konqueror|Safari|KHTML/.test(navigator.userAgent)) { + Position.cumulativeOffset = function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + if (element.offsetParent == document.body) + if (Element.getStyle(element, 'position') == 'absolute') break; + + element = element.offsetParent; + } while (element); + + return [valueL, valueT]; + } +} + +Element.addMethods(); \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/javascripts/prototype.js~ b/P5B/ruby/mon_projet/public/javascripts/prototype.js~ new file mode 100644 index 0000000..8ab9bc2 --- /dev/null +++ b/P5B/ruby/mon_projet/public/javascripts/prototype.js~ @@ -0,0 +1,2515 @@ +/* Prototype JavaScript framework, version 1.5.0 + * (c) 2005-2007 Sam Stephenson + * + * Prototype is freely distributable under the terms of an MIT-style license. + * For details, see the Prototype web site: http://prototype.conio.net/ + * +/*--------------------------------------------------------------------------*/ + +var Prototype = { + Version: '1.5.0', + BrowserFeatures: { + XPath: !!document.evaluate + }, + + ScriptFragment: '(?:)((\n|\r|.)*?)(?:<\/script>)', + emptyFunction: function() {}, + K: function(x) { return x } +} + +var Class = { + create: function() { + return function() { + this.initialize.apply(this, arguments); + } + } +} + +var Abstract = new Object(); + +Object.extend = function(destination, source) { + for (var property in source) { + destination[property] = source[property]; + } + return destination; +} + +Object.extend(Object, { + inspect: function(object) { + try { + if (object === undefined) return 'undefined'; + if (object === null) return 'null'; + return object.inspect ? object.inspect() : object.toString(); + } catch (e) { + if (e instanceof RangeError) return '...'; + throw e; + } + }, + + keys: function(object) { + var keys = []; + for (var property in object) + keys.push(property); + return keys; + }, + + values: function(object) { + var values = []; + for (var property in object) + values.push(object[property]); + return values; + }, + + clone: function(object) { + return Object.extend({}, object); + } +}); + +Function.prototype.bind = function() { + var __method = this, args = $A(arguments), object = args.shift(); + return function() { + return __method.apply(object, args.concat($A(arguments))); + } +} + +Function.prototype.bindAsEventListener = function(object) { + var __method = this, args = $A(arguments), object = args.shift(); + return function(event) { + return __method.apply(object, [( event || window.event)].concat(args).concat($A(arguments))); + } +} + +Object.extend(Number.prototype, { + toColorPart: function() { + var digits = this.toString(16); + if (this < 16) return '0' + digits; + return digits; + }, + + succ: function() { + return this + 1; + }, + + times: function(iterator) { + $R(0, this, true).each(iterator); + return this; + } +}); + +var Try = { + these: function() { + var returnValue; + + for (var i = 0, length = arguments.length; i < length; i++) { + var lambda = arguments[i]; + try { + returnValue = lambda(); + break; + } catch (e) {} + } + + return returnValue; + } +} + +/*--------------------------------------------------------------------------*/ + +var PeriodicalExecuter = Class.create(); +PeriodicalExecuter.prototype = { + initialize: function(callback, frequency) { + this.callback = callback; + this.frequency = frequency; + this.currentlyExecuting = false; + + this.registerCallback(); + }, + + registerCallback: function() { + this.timer = setInterval(this.onTimerEvent.bind(this), this.frequency * 1000); + }, + + stop: function() { + if (!this.timer) return; + clearInterval(this.timer); + this.timer = null; + }, + + onTimerEvent: function() { + if (!this.currentlyExecuting) { + try { + this.currentlyExecuting = true; + this.callback(this); + } finally { + this.currentlyExecuting = false; + } + } + } +} +String.interpret = function(value){ + return value == null ? '' : String(value); +} + +Object.extend(String.prototype, { + gsub: function(pattern, replacement) { + var result = '', source = this, match; + replacement = arguments.callee.prepareReplacement(replacement); + + while (source.length > 0) { + if (match = source.match(pattern)) { + result += source.slice(0, match.index); + result += String.interpret(replacement(match)); + source = source.slice(match.index + match[0].length); + } else { + result += source, source = ''; + } + } + return result; + }, + + sub: function(pattern, replacement, count) { + replacement = this.gsub.prepareReplacement(replacement); + count = count === undefined ? 1 : count; + + return this.gsub(pattern, function(match) { + if (--count < 0) return match[0]; + return replacement(match); + }); + }, + + scan: function(pattern, iterator) { + this.gsub(pattern, iterator); + return this; + }, + + truncate: function(length, truncation) { + length = length || 30; + truncation = truncation === undefined ? '...' : truncation; + return this.length > length ? + this.slice(0, length - truncation.length) + truncation : this; + }, + + strip: function() { + return this.replace(/^\s+/, '').replace(/\s+$/, ''); + }, + + stripTags: function() { + return this.replace(/<\/?[^>]+>/gi, ''); + }, + + stripScripts: function() { + return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), ''); + }, + + extractScripts: function() { + var matchAll = new RegExp(Prototype.ScriptFragment, 'img'); + var matchOne = new RegExp(Prototype.ScriptFragment, 'im'); + return (this.match(matchAll) || []).map(function(scriptTag) { + return (scriptTag.match(matchOne) || ['', ''])[1]; + }); + }, + + evalScripts: function() { + return this.extractScripts().map(function(script) { return eval(script) }); + }, + + escapeHTML: function() { + var div = document.createElement('div'); + var text = document.createTextNode(this); + div.appendChild(text); + return div.innerHTML; + }, + + unescapeHTML: function() { + var div = document.createElement('div'); + div.innerHTML = this.stripTags(); + return div.childNodes[0] ? (div.childNodes.length > 1 ? + $A(div.childNodes).inject('',function(memo,node){ return memo+node.nodeValue }) : + div.childNodes[0].nodeValue) : ''; + }, + + toQueryParams: function(separator) { + var match = this.strip().match(/([^?#]*)(#.*)?$/); + if (!match) return {}; + + return match[1].split(separator || '&').inject({}, function(hash, pair) { + if ((pair = pair.split('='))[0]) { + var name = decodeURIComponent(pair[0]); + var value = pair[1] ? decodeURIComponent(pair[1]) : undefined; + + if (hash[name] !== undefined) { + if (hash[name].constructor != Array) + hash[name] = [hash[name]]; + if (value) hash[name].push(value); + } + else hash[name] = value; + } + return hash; + }); + }, + + toArray: function() { + return this.split(''); + }, + + succ: function() { + return this.slice(0, this.length - 1) + + String.fromCharCode(this.charCodeAt(this.length - 1) + 1); + }, + + camelize: function() { + var parts = this.split('-'), len = parts.length; + if (len == 1) return parts[0]; + + var camelized = this.charAt(0) == '-' + ? parts[0].charAt(0).toUpperCase() + parts[0].substring(1) + : parts[0]; + + for (var i = 1; i < len; i++) + camelized += parts[i].charAt(0).toUpperCase() + parts[i].substring(1); + + return camelized; + }, + + capitalize: function(){ + return this.charAt(0).toUpperCase() + this.substring(1).toLowerCase(); + }, + + underscore: function() { + return this.gsub(/::/, '/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\d])([A-Z])/,'#{1}_#{2}').gsub(/-/,'_').toLowerCase(); + }, + + dasherize: function() { + return this.gsub(/_/,'-'); + }, + + inspect: function(useDoubleQuotes) { + var escapedString = this.replace(/\\/g, '\\\\'); + if (useDoubleQuotes) + return '"' + escapedString.replace(/"/g, '\\"') + '"'; + else + return "'" + escapedString.replace(/'/g, '\\\'') + "'"; + } +}); + +String.prototype.gsub.prepareReplacement = function(replacement) { + if (typeof replacement == 'function') return replacement; + var template = new Template(replacement); + return function(match) { return template.evaluate(match) }; +} + +String.prototype.parseQuery = String.prototype.toQueryParams; + +var Template = Class.create(); +Template.Pattern = /(^|.|\r|\n)(#\{(.*?)\})/; +Template.prototype = { + initialize: function(template, pattern) { + this.template = template.toString(); + this.pattern = pattern || Template.Pattern; + }, + + evaluate: function(object) { + return this.template.gsub(this.pattern, function(match) { + var before = match[1]; + if (before == '\\') return match[2]; + return before + String.interpret(object[match[3]]); + }); + } +} + +var $break = new Object(); +var $continue = new Object(); + +var Enumerable = { + each: function(iterator) { + var index = 0; + try { + this._each(function(value) { + try { + iterator(value, index++); + } catch (e) { + if (e != $continue) throw e; + } + }); + } catch (e) { + if (e != $break) throw e; + } + return this; + }, + + eachSlice: function(number, iterator) { + var index = -number, slices = [], array = this.toArray(); + while ((index += number) < array.length) + slices.push(array.slice(index, index+number)); + return slices.map(iterator); + }, + + all: function(iterator) { + var result = true; + this.each(function(value, index) { + result = result && !!(iterator || Prototype.K)(value, index); + if (!result) throw $break; + }); + return result; + }, + + any: function(iterator) { + var result = false; + this.each(function(value, index) { + if (result = !!(iterator || Prototype.K)(value, index)) + throw $break; + }); + return result; + }, + + collect: function(iterator) { + var results = []; + this.each(function(value, index) { + results.push((iterator || Prototype.K)(value, index)); + }); + return results; + }, + + detect: function(iterator) { + var result; + this.each(function(value, index) { + if (iterator(value, index)) { + result = value; + throw $break; + } + }); + return result; + }, + + findAll: function(iterator) { + var results = []; + this.each(function(value, index) { + if (iterator(value, index)) + results.push(value); + }); + return results; + }, + + grep: function(pattern, iterator) { + var results = []; + this.each(function(value, index) { + var stringValue = value.toString(); + if (stringValue.match(pattern)) + results.push((iterator || Prototype.K)(value, index)); + }) + return results; + }, + + include: function(object) { + var found = false; + this.each(function(value) { + if (value == object) { + found = true; + throw $break; + } + }); + return found; + }, + + inGroupsOf: function(number, fillWith) { + fillWith = fillWith === undefined ? null : fillWith; + return this.eachSlice(number, function(slice) { + while(slice.length < number) slice.push(fillWith); + return slice; + }); + }, + + inject: function(memo, iterator) { + this.each(function(value, index) { + memo = iterator(memo, value, index); + }); + return memo; + }, + + invoke: function(method) { + var args = $A(arguments).slice(1); + return this.map(function(value) { + return value[method].apply(value, args); + }); + }, + + max: function(iterator) { + var result; + this.each(function(value, index) { + value = (iterator || Prototype.K)(value, index); + if (result == undefined || value >= result) + result = value; + }); + return result; + }, + + min: function(iterator) { + var result; + this.each(function(value, index) { + value = (iterator || Prototype.K)(value, index); + if (result == undefined || value < result) + result = value; + }); + return result; + }, + + partition: function(iterator) { + var trues = [], falses = []; + this.each(function(value, index) { + ((iterator || Prototype.K)(value, index) ? + trues : falses).push(value); + }); + return [trues, falses]; + }, + + pluck: function(property) { + var results = []; + this.each(function(value, index) { + results.push(value[property]); + }); + return results; + }, + + reject: function(iterator) { + var results = []; + this.each(function(value, index) { + if (!iterator(value, index)) + results.push(value); + }); + return results; + }, + + sortBy: function(iterator) { + return this.map(function(value, index) { + return {value: value, criteria: iterator(value, index)}; + }).sort(function(left, right) { + var a = left.criteria, b = right.criteria; + return a < b ? -1 : a > b ? 1 : 0; + }).pluck('value'); + }, + + toArray: function() { + return this.map(); + }, + + zip: function() { + var iterator = Prototype.K, args = $A(arguments); + if (typeof args.last() == 'function') + iterator = args.pop(); + + var collections = [this].concat(args).map($A); + return this.map(function(value, index) { + return iterator(collections.pluck(index)); + }); + }, + + size: function() { + return this.toArray().length; + }, + + inspect: function() { + return '#'; + } +} + +Object.extend(Enumerable, { + map: Enumerable.collect, + find: Enumerable.detect, + select: Enumerable.findAll, + member: Enumerable.include, + entries: Enumerable.toArray +}); +var $A = Array.from = function(iterable) { + if (!iterable) return []; + if (iterable.toArray) { + return iterable.toArray(); + } else { + var results = []; + for (var i = 0, length = iterable.length; i < length; i++) + results.push(iterable[i]); + return results; + } +} + +Object.extend(Array.prototype, Enumerable); + +if (!Array.prototype._reverse) + Array.prototype._reverse = Array.prototype.reverse; + +Object.extend(Array.prototype, { + _each: function(iterator) { + for (var i = 0, length = this.length; i < length; i++) + iterator(this[i]); + }, + + clear: function() { + this.length = 0; + return this; + }, + + first: function() { + return this[0]; + }, + + last: function() { + return this[this.length - 1]; + }, + + compact: function() { + return this.select(function(value) { + return value != null; + }); + }, + + flatten: function() { + return this.inject([], function(array, value) { + return array.concat(value && value.constructor == Array ? + value.flatten() : [value]); + }); + }, + + without: function() { + var values = $A(arguments); + return this.select(function(value) { + return !values.include(value); + }); + }, + + indexOf: function(object) { + for (var i = 0, length = this.length; i < length; i++) + if (this[i] == object) return i; + return -1; + }, + + reverse: function(inline) { + return (inline !== false ? this : this.toArray())._reverse(); + }, + + reduce: function() { + return this.length > 1 ? this : this[0]; + }, + + uniq: function() { + return this.inject([], function(array, value) { + return array.include(value) ? array : array.concat([value]); + }); + }, + + clone: function() { + return [].concat(this); + }, + + size: function() { + return this.length; + }, + + inspect: function() { + return '[' + this.map(Object.inspect).join(', ') + ']'; + } +}); + +Array.prototype.toArray = Array.prototype.clone; + +function $w(string){ + string = string.strip(); + return string ? string.split(/\s+/) : []; +} + +if(window.opera){ + Array.prototype.concat = function(){ + var array = []; + for(var i = 0, length = this.length; i < length; i++) array.push(this[i]); + for(var i = 0, length = arguments.length; i < length; i++) { + if(arguments[i].constructor == Array) { + for(var j = 0, arrayLength = arguments[i].length; j < arrayLength; j++) + array.push(arguments[i][j]); + } else { + array.push(arguments[i]); + } + } + return array; + } +} +var Hash = function(obj) { + Object.extend(this, obj || {}); +}; + +Object.extend(Hash, { + toQueryString: function(obj) { + var parts = []; + + this.prototype._each.call(obj, function(pair) { + if (!pair.key) return; + + if (pair.value && pair.value.constructor == Array) { + var values = pair.value.compact(); + if (values.length < 2) pair.value = values.reduce(); + else { + key = encodeURIComponent(pair.key); + values.each(function(value) { + value = value != undefined ? encodeURIComponent(value) : ''; + parts.push(key + '=' + encodeURIComponent(value)); + }); + return; + } + } + if (pair.value == undefined) pair[1] = ''; + parts.push(pair.map(encodeURIComponent).join('=')); + }); + + return parts.join('&'); + } +}); + +Object.extend(Hash.prototype, Enumerable); +Object.extend(Hash.prototype, { + _each: function(iterator) { + for (var key in this) { + var value = this[key]; + if (value && value == Hash.prototype[key]) continue; + + var pair = [key, value]; + pair.key = key; + pair.value = value; + iterator(pair); + } + }, + + keys: function() { + return this.pluck('key'); + }, + + values: function() { + return this.pluck('value'); + }, + + merge: function(hash) { + return $H(hash).inject(this, function(mergedHash, pair) { + mergedHash[pair.key] = pair.value; + return mergedHash; + }); + }, + + remove: function() { + var result; + for(var i = 0, length = arguments.length; i < length; i++) { + var value = this[arguments[i]]; + if (value !== undefined){ + if (result === undefined) result = value; + else { + if (result.constructor != Array) result = [result]; + result.push(value) + } + } + delete this[arguments[i]]; + } + return result; + }, + + toQueryString: function() { + return Hash.toQueryString(this); + }, + + inspect: function() { + return '#'; + } +}); + +function $H(object) { + if (object && object.constructor == Hash) return object; + return new Hash(object); +}; +ObjectRange = Class.create(); +Object.extend(ObjectRange.prototype, Enumerable); +Object.extend(ObjectRange.prototype, { + initialize: function(start, end, exclusive) { + this.start = start; + this.end = end; + this.exclusive = exclusive; + }, + + _each: function(iterator) { + var value = this.start; + while (this.include(value)) { + iterator(value); + value = value.succ(); + } + }, + + include: function(value) { + if (value < this.start) + return false; + if (this.exclusive) + return value < this.end; + return value <= this.end; + } +}); + +var $R = function(start, end, exclusive) { + return new ObjectRange(start, end, exclusive); +} + +var Ajax = { + getTransport: function() { + return Try.these( + function() {return new XMLHttpRequest()}, + function() {return new ActiveXObject('Msxml2.XMLHTTP')}, + function() {return new ActiveXObject('Microsoft.XMLHTTP')} + ) || false; + }, + + activeRequestCount: 0 +} + +Ajax.Responders = { + responders: [], + + _each: function(iterator) { + this.responders._each(iterator); + }, + + register: function(responder) { + if (!this.include(responder)) + this.responders.push(responder); + }, + + unregister: function(responder) { + this.responders = this.responders.without(responder); + }, + + dispatch: function(callback, request, transport, json) { + this.each(function(responder) { + if (typeof responder[callback] == 'function') { + try { + responder[callback].apply(responder, [request, transport, json]); + } catch (e) {} + } + }); + } +}; + +Object.extend(Ajax.Responders, Enumerable); + +Ajax.Responders.register({ + onCreate: function() { + Ajax.activeRequestCount++; + }, + onComplete: function() { + Ajax.activeRequestCount--; + } +}); + +Ajax.Base = function() {}; +Ajax.Base.prototype = { + setOptions: function(options) { + this.options = { + method: 'post', + asynchronous: true, + contentType: 'application/x-www-form-urlencoded', + encoding: 'UTF-8', + parameters: '' + } + Object.extend(this.options, options || {}); + + this.options.method = this.options.method.toLowerCase(); + if (typeof this.options.parameters == 'string') + this.options.parameters = this.options.parameters.toQueryParams(); + } +} + +Ajax.Request = Class.create(); +Ajax.Request.Events = + ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete']; + +Ajax.Request.prototype = Object.extend(new Ajax.Base(), { + _complete: false, + + initialize: function(url, options) { + this.transport = Ajax.getTransport(); + this.setOptions(options); + this.request(url); + }, + + request: function(url) { + this.url = url; + this.method = this.options.method; + var params = this.options.parameters; + + if (!['get', 'post'].include(this.method)) { + // simulate other verbs over post + params['_method'] = this.method; + this.method = 'post'; + } + + params = Hash.toQueryString(params); + if (params && /Konqueror|Safari|KHTML/.test(navigator.userAgent)) params += '&_=' + + // when GET, append parameters to URL + if (this.method == 'get' && params) + this.url += (this.url.indexOf('?') > -1 ? '&' : '?') + params; + + try { + Ajax.Responders.dispatch('onCreate', this, this.transport); + + this.transport.open(this.method.toUpperCase(), this.url, + this.options.asynchronous); + + if (this.options.asynchronous) + setTimeout(function() { this.respondToReadyState(1) }.bind(this), 10); + + this.transport.onreadystatechange = this.onStateChange.bind(this); + this.setRequestHeaders(); + + var body = this.method == 'post' ? (this.options.postBody || params) : null; + + this.transport.send(body); + + /* Force Firefox to handle ready state 4 for synchronous requests */ + if (!this.options.asynchronous && this.transport.overrideMimeType) + this.onStateChange(); + + } + catch (e) { + this.dispatchException(e); + } + }, + + onStateChange: function() { + var readyState = this.transport.readyState; + if (readyState > 1 && !((readyState == 4) && this._complete)) + this.respondToReadyState(this.transport.readyState); + }, + + setRequestHeaders: function() { + var headers = { + 'X-Requested-With': 'XMLHttpRequest', + 'X-Prototype-Version': Prototype.Version, + 'Accept': 'text/javascript, text/html, application/xml, text/xml, */*' + }; + + if (this.method == 'post') { + headers['Content-type'] = this.options.contentType + + (this.options.encoding ? '; charset=' + this.options.encoding : ''); + + /* Force "Connection: close" for older Mozilla browsers to work + * around a bug where XMLHttpRequest sends an incorrect + * Content-length header. See Mozilla Bugzilla #246651. + */ + if (this.transport.overrideMimeType && + (navigator.userAgent.match(/Gecko\/(\d{4})/) || [0,2005])[1] < 2005) + headers['Connection'] = 'close'; + } + + // user-defined headers + if (typeof this.options.requestHeaders == 'object') { + var extras = this.options.requestHeaders; + + if (typeof extras.push == 'function') + for (var i = 0, length = extras.length; i < length; i += 2) + headers[extras[i]] = extras[i+1]; + else + $H(extras).each(function(pair) { headers[pair.key] = pair.value }); + } + + for (var name in headers) + this.transport.setRequestHeader(name, headers[name]); + }, + + success: function() { + return !this.transport.status + || (this.transport.status >= 200 && this.transport.status < 300); + }, + + respondToReadyState: function(readyState) { + var state = Ajax.Request.Events[readyState]; + var transport = this.transport, json = this.evalJSON(); + + if (state == 'Complete') { + try { + this._complete = true; + (this.options['on' + this.transport.status] + || this.options['on' + (this.success() ? 'Succs' : 'Echec')] + || Prototype.emptyFunction)(transport, json); + } catch (e) { + this.dispatchException(e); + } + + if ((this.getHeader('Content-type') || 'text/javascript').strip(). + match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i)) + this.evalResponse(); + } + + try { + (this.options['on' + state] || Prototype.emptyFunction)(transport, json); + Ajax.Responders.dispatch('on' + state, this, transport, json); + } catch (e) { + this.dispatchException(e); + } + + if (state == 'Complete') { + // avoid memory leak in MSIE: clean up + this.transport.onreadystatechange = Prototype.emptyFunction; + } + }, + + getHeader: function(name) { + try { + return this.transport.getResponseHeader(name); + } catch (e) { return null } + }, + + evalJSON: function() { + try { + var json = this.getHeader('X-JSON'); + return json ? eval('(' + json + ')') : null; + } catch (e) { return null } + }, + + evalResponse: function() { + try { + return eval(this.transport.responseText); + } catch (e) { + this.dispatchException(e); + } + }, + + dispatchException: function(exception) { + (this.options.onException || Prototype.emptyFunction)(this, exception); + Ajax.Responders.dispatch('onException', this, exception); + } +}); + +Ajax.Updater = Class.create(); + +Object.extend(Object.extend(Ajax.Updater.prototype, Ajax.Request.prototype), { + initialize: function(container, url, options) { + this.container = { + success: (container.success || container), + failure: (container.failure || (container.success ? null : container)) + } + + this.transport = Ajax.getTransport(); + this.setOptions(options); + + var onComplete = this.options.onComplete || Prototype.emptyFunction; + this.options.onComplete = (function(transport, param) { + this.updateContent(); + onComplete(transport, param); + }).bind(this); + + this.request(url); + }, + + updateContent: function() { + var receiver = this.container[this.success() ? 'success' : 'failure']; + var response = this.transport.responseText; + + if (!this.options.evalScripts) response = response.stripScripts(); + + if (receiver = $(receiver)) { + if (this.options.insertion) + new this.options.insertion(receiver, response); + else + receiver.update(response); + } + + if (this.success()) { + if (this.onComplete) + setTimeout(this.onComplete.bind(this), 10); + } + } +}); + +Ajax.PeriodicalUpdater = Class.create(); +Ajax.PeriodicalUpdater.prototype = Object.extend(new Ajax.Base(), { + initialize: function(container, url, options) { + this.setOptions(options); + this.onComplete = this.options.onComplete; + + this.frequency = (this.options.frequency || 2); + this.decay = (this.options.decay || 1); + + this.updater = {}; + this.container = container; + this.url = url; + + this.start(); + }, + + start: function() { + this.options.onComplete = this.updateComplete.bind(this); + this.onTimerEvent(); + }, + + stop: function() { + this.updater.options.onComplete = undefined; + clearTimeout(this.timer); + (this.onComplete || Prototype.emptyFunction).apply(this, arguments); + }, + + updateComplete: function(request) { + if (this.options.decay) { + this.decay = (request.responseText == this.lastText ? + this.decay * this.options.decay : 1); + + this.lastText = request.responseText; + } + this.timer = setTimeout(this.onTimerEvent.bind(this), + this.decay * this.frequency * 1000); + }, + + onTimerEvent: function() { + this.updater = new Ajax.Updater(this.container, this.url, this.options); + } +}); +function $(element) { + if (arguments.length > 1) { + for (var i = 0, elements = [], length = arguments.length; i < length; i++) + elements.push($(arguments[i])); + return elements; + } + if (typeof element == 'string') + element = document.getElementById(element); + return Element.extend(element); +} + +if (Prototype.BrowserFeatures.XPath) { + document._getElementsByXPath = function(expression, parentElement) { + var results = []; + var query = document.evaluate(expression, $(parentElement) || document, + null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); + for (var i = 0, length = query.snapshotLength; i < length; i++) + results.push(query.snapshotItem(i)); + return results; + }; +} + +document.getElementsByClassName = function(className, parentElement) { + if (Prototype.BrowserFeatures.XPath) { + var q = ".//*[contains(concat(' ', @class, ' '), ' " + className + " ')]"; + return document._getElementsByXPath(q, parentElement); + } else { + var children = ($(parentElement) || document.body).getElementsByTagName('*'); + var elements = [], child; + for (var i = 0, length = children.length; i < length; i++) { + child = children[i]; + if (Element.hasClassName(child, className)) + elements.push(Element.extend(child)); + } + return elements; + } +}; + +/*--------------------------------------------------------------------------*/ + +if (!window.Element) + var Element = new Object(); + +Element.extend = function(element) { + if (!element || _nativeExtensions || element.nodeType == 3) return element; + + if (!element._extended && element.tagName && element != window) { + var methods = Object.clone(Element.Methods), cache = Element.extend.cache; + + if (element.tagName == 'FORM') + Object.extend(methods, Form.Methods); + if (['INPUT', 'TEXTAREA', 'SELECT'].include(element.tagName)) + Object.extend(methods, Form.Element.Methods); + + Object.extend(methods, Element.Methods.Simulated); + + for (var property in methods) { + var value = methods[property]; + if (typeof value == 'function' && !(property in element)) + element[property] = cache.findOrStore(value); + } + } + + element._extended = true; + return element; +}; + +Element.extend.cache = { + findOrStore: function(value) { + return this[value] = this[value] || function() { + return value.apply(null, [this].concat($A(arguments))); + } + } +}; + +Element.Methods = { + visible: function(element) { + return $(element).style.display != 'none'; + }, + + toggle: function(element) { + element = $(element); + Element[Element.visible(element) ? 'hide' : 'show'](element); + return element; + }, + + hide: function(element) { + $(element).style.display = 'none'; + return element; + }, + + show: function(element) { + $(element).style.display = ''; + return element; + }, + + remove: function(element) { + element = $(element); + element.parentNode.removeChild(element); + return element; + }, + + update: function(element, html) { + html = typeof html == 'undefined' ? '' : html.toString(); + $(element).innerHTML = html.stripScripts(); + setTimeout(function() {html.evalScripts()}, 10); + return element; + }, + + replace: function(element, html) { + element = $(element); + html = typeof html == 'undefined' ? '' : html.toString(); + if (element.outerHTML) { + element.outerHTML = html.stripScripts(); + } else { + var range = element.ownerDocument.createRange(); + range.selectNodeContents(element); + element.parentNode.replaceChild( + range.createContextualFragment(html.stripScripts()), element); + } + setTimeout(function() {html.evalScripts()}, 10); + return element; + }, + + inspect: function(element) { + element = $(element); + var result = '<' + element.tagName.toLowerCase(); + $H({'id': 'id', 'className': 'class'}).each(function(pair) { + var property = pair.first(), attribute = pair.last(); + var value = (element[property] || '').toString(); + if (value) result += ' ' + attribute + '=' + value.inspect(true); + }); + return result + '>'; + }, + + recursivelyCollect: function(element, property) { + element = $(element); + var elements = []; + while (element = element[property]) + if (element.nodeType == 1) + elements.push(Element.extend(element)); + return elements; + }, + + ancestors: function(element) { + return $(element).recursivelyCollect('parentNode'); + }, + + descendants: function(element) { + return $A($(element).getElementsByTagName('*')); + }, + + immediateDescendants: function(element) { + if (!(element = $(element).firstChild)) return []; + while (element && element.nodeType != 1) element = element.nextSibling; + if (element) return [element].concat($(element).nextSiblings()); + return []; + }, + + previousSiblings: function(element) { + return $(element).recursivelyCollect('previousSibling'); + }, + + nextSiblings: function(element) { + return $(element).recursivelyCollect('nextSibling'); + }, + + siblings: function(element) { + element = $(element); + return element.previousSiblings().reverse().concat(element.nextSiblings()); + }, + + match: function(element, selector) { + if (typeof selector == 'string') + selector = new Selector(selector); + return selector.match($(element)); + }, + + up: function(element, expression, index) { + return Selector.findElement($(element).ancestors(), expression, index); + }, + + down: function(element, expression, index) { + return Selector.findElement($(element).descendants(), expression, index); + }, + + previous: function(element, expression, index) { + return Selector.findElement($(element).previousSiblings(), expression, index); + }, + + next: function(element, expression, index) { + return Selector.findElement($(element).nextSiblings(), expression, index); + }, + + getElementsBySelector: function() { + var args = $A(arguments), element = $(args.shift()); + return Selector.findChildElements(element, args); + }, + + getElementsByClassName: function(element, className) { + return document.getElementsByClassName(className, element); + }, + + readAttribute: function(element, name) { + element = $(element); + if (document.all && !window.opera) { + var t = Element._attributeTranslations; + if (t.values[name]) return t.values[name](element, name); + if (t.names[name]) name = t.names[name]; + var attribute = element.attributes[name]; + if(attribute) return attribute.nodeValue; + } + return element.getAttribute(name); + }, + + getHeight: function(element) { + return $(element).getDimensions().height; + }, + + getWidth: function(element) { + return $(element).getDimensions().width; + }, + + classNames: function(element) { + return new Element.ClassNames(element); + }, + + hasClassName: function(element, className) { + if (!(element = $(element))) return; + var elementClassName = element.className; + if (elementClassName.length == 0) return false; + if (elementClassName == className || + elementClassName.match(new RegExp("(^|\\s)" + className + "(\\s|$)"))) + return true; + return false; + }, + + addClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element).add(className); + return element; + }, + + removeClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element).remove(className); + return element; + }, + + toggleClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element)[element.hasClassName(className) ? 'remove' : 'add'](className); + return element; + }, + + observe: function() { + Event.observe.apply(Event, arguments); + return $A(arguments).first(); + }, + + stopObserving: function() { + Event.stopObserving.apply(Event, arguments); + return $A(arguments).first(); + }, + + // removes whitespace-only text node children + cleanWhitespace: function(element) { + element = $(element); + var node = element.firstChild; + while (node) { + var nextNode = node.nextSibling; + if (node.nodeType == 3 && !/\S/.test(node.nodeValue)) + element.removeChild(node); + node = nextNode; + } + return element; + }, + + empty: function(element) { + return $(element).innerHTML.match(/^\s*$/); + }, + + descendantOf: function(element, ancestor) { + element = $(element), ancestor = $(ancestor); + while (element = element.parentNode) + if (element == ancestor) return true; + return false; + }, + + scrollTo: function(element) { + element = $(element); + var pos = Position.cumulativeOffset(element); + window.scrollTo(pos[0], pos[1]); + return element; + }, + + getStyle: function(element, style) { + element = $(element); + if (['float','cssFloat'].include(style)) + style = (typeof element.style.styleFloat != 'undefined' ? 'styleFloat' : 'cssFloat'); + style = style.camelize(); + var value = element.style[style]; + if (!value) { + if (document.defaultView && document.defaultView.getComputedStyle) { + var css = document.defaultView.getComputedStyle(element, null); + value = css ? css[style] : null; + } else if (element.currentStyle) { + value = element.currentStyle[style]; + } + } + + if((value == 'auto') && ['width','height'].include(style) && (element.getStyle('display') != 'none')) + value = element['offset'+style.capitalize()] + 'px'; + + if (window.opera && ['left', 'top', 'right', 'bottom'].include(style)) + if (Element.getStyle(element, 'position') == 'static') value = 'auto'; + if(style == 'opacity') { + if(value) return parseFloat(value); + if(value = (element.getStyle('filter') || '').match(/alpha\(opacity=(.*)\)/)) + if(value[1]) return parseFloat(value[1]) / 100; + return 1.0; + } + return value == 'auto' ? null : value; + }, + + setStyle: function(element, style) { + element = $(element); + for (var name in style) { + var value = style[name]; + if(name == 'opacity') { + if (value == 1) { + value = (/Gecko/.test(navigator.userAgent) && + !/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? 0.999999 : 1.0; + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.style.filter = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,''); + } else if(value == '') { + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.style.filter = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,''); + } else { + if(value < 0.00001) value = 0; + if(/MSIE/.test(navigator.userAgent) && !window.opera) + element.style.filter = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'') + + 'alpha(opacity='+value*100+')'; + } + } else if(['float','cssFloat'].include(name)) name = (typeof element.style.styleFloat != 'undefined') ? 'styleFloat' : 'cssFloat'; + element.style[name.camelize()] = value; + } + return element; + }, + + getDimensions: function(element) { + element = $(element); + var display = $(element).getStyle('display'); + if (display != 'none' && display != null) // Safari bug + return {width: element.offsetWidth, height: element.offsetHeight}; + + // All *Width and *Height properties give 0 on elements with display none, + // so enable the element temporarily + var els = element.style; + var originalVisibility = els.visibility; + var originalPosition = els.position; + var originalDisplay = els.display; + els.visibility = 'hidden'; + els.position = 'absolute'; + els.display = 'block'; + var originalWidth = element.clientWidth; + var originalHeight = element.clientHeight; + els.display = originalDisplay; + els.position = originalPosition; + els.visibility = originalVisibility; + return {width: originalWidth, height: originalHeight}; + }, + + makePositioned: function(element) { + element = $(element); + var pos = Element.getStyle(element, 'position'); + if (pos == 'static' || !pos) { + element._madePositioned = true; + element.style.position = 'relative'; + // Opera returns the offset relative to the positioning context, when an + // element is position relative but top and left have not been defined + if (window.opera) { + element.style.top = 0; + element.style.left = 0; + } + } + return element; + }, + + undoPositioned: function(element) { + element = $(element); + if (element._madePositioned) { + element._madePositioned = undefined; + element.style.position = + element.style.top = + element.style.left = + element.style.bottom = + element.style.right = ''; + } + return element; + }, + + makeClipping: function(element) { + element = $(element); + if (element._overflow) return element; + element._overflow = element.style.overflow || 'auto'; + if ((Element.getStyle(element, 'overflow') || 'visible') != 'hidden') + element.style.overflow = 'hidden'; + return element; + }, + + undoClipping: function(element) { + element = $(element); + if (!element._overflow) return element; + element.style.overflow = element._overflow == 'auto' ? '' : element._overflow; + element._overflow = null; + return element; + } +}; + +Object.extend(Element.Methods, {childOf: Element.Methods.descendantOf}); + +Element._attributeTranslations = {}; + +Element._attributeTranslations.names = { + colspan: "colSpan", + rowspan: "rowSpan", + valign: "vAlign", + datetime: "dateTime", + accesskey: "accessKey", + tabindex: "tabIndex", + enctype: "encType", + maxlength: "maxLength", + readonly: "readOnly", + longdesc: "longDesc" +}; + +Element._attributeTranslations.values = { + _getAttr: function(element, attribute) { + return element.getAttribute(attribute, 2); + }, + + _flag: function(element, attribute) { + return $(element).hasAttribute(attribute) ? attribute : null; + }, + + style: function(element) { + return element.style.cssText.toLowerCase(); + }, + + title: function(element) { + var node = element.getAttributeNode('title'); + return node.specified ? node.nodeValue : null; + } +}; + +Object.extend(Element._attributeTranslations.values, { + href: Element._attributeTranslations.values._getAttr, + src: Element._attributeTranslations.values._getAttr, + disabled: Element._attributeTranslations.values._flag, + checked: Element._attributeTranslations.values._flag, + readonly: Element._attributeTranslations.values._flag, + multiple: Element._attributeTranslations.values._flag +}); + +Element.Methods.Simulated = { + hasAttribute: function(element, attribute) { + var t = Element._attributeTranslations; + attribute = t.names[attribute] || attribute; + return $(element).getAttributeNode(attribute).specified; + } +}; + +// IE is missing .innerHTML support for TABLE-related elements +if (document.all && !window.opera){ + Element.Methods.update = function(element, html) { + element = $(element); + html = typeof html == 'undefined' ? '' : html.toString(); + var tagName = element.tagName.toUpperCase(); + if (['THEAD','TBODY','TR','TD'].include(tagName)) { + var div = document.createElement('div'); + switch (tagName) { + case 'THEAD': + case 'TBODY': + div.innerHTML = '' + html.stripScripts() + '
    '; + depth = 2; + break; + case 'TR': + div.innerHTML = '' + html.stripScripts() + '
    '; + depth = 3; + break; + case 'TD': + div.innerHTML = '
    ' + html.stripScripts() + '
    '; + depth = 4; + } + $A(element.childNodes).each(function(node){ + element.removeChild(node) + }); + depth.times(function(){ div = div.firstChild }); + + $A(div.childNodes).each( + function(node){ element.appendChild(node) }); + } else { + element.innerHTML = html.stripScripts(); + } + setTimeout(function() {html.evalScripts()}, 10); + return element; + } +}; + +Object.extend(Element, Element.Methods); + +var _nativeExtensions = false; + +if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)) + ['', 'Form', 'Input', 'TextArea', 'Select'].each(function(tag) { + var className = 'HTML' + tag + 'Element'; + if(window[className]) return; + var klass = window[className] = {}; + klass.prototype = document.createElement(tag ? tag.toLowerCase() : 'div').__proto__; + }); + +Element.addMethods = function(methods) { + Object.extend(Element.Methods, methods || {}); + + function copy(methods, destination, onlyIfAbsent) { + onlyIfAbsent = onlyIfAbsent || false; + var cache = Element.extend.cache; + for (var property in methods) { + var value = methods[property]; + if (!onlyIfAbsent || !(property in destination)) + destination[property] = cache.findOrStore(value); + } + } + + if (typeof HTMLElement != 'undefined') { + copy(Element.Methods, HTMLElement.prototype); + copy(Element.Methods.Simulated, HTMLElement.prototype, true); + copy(Form.Methods, HTMLFormElement.prototype); + [HTMLInputElement, HTMLTextAreaElement, HTMLSelectElement].each(function(klass) { + copy(Form.Element.Methods, klass.prototype); + }); + _nativeExtensions = true; + } +} + +var Toggle = new Object(); +Toggle.display = Element.toggle; + +/*--------------------------------------------------------------------------*/ + +Abstract.Insertion = function(adjacency) { + this.adjacency = adjacency; +} + +Abstract.Insertion.prototype = { + initialize: function(element, content) { + this.element = $(element); + this.content = content.stripScripts(); + + if (this.adjacency && this.element.insertAdjacentHTML) { + try { + this.element.insertAdjacentHTML(this.adjacency, this.content); + } catch (e) { + var tagName = this.element.tagName.toUpperCase(); + if (['TBODY', 'TR'].include(tagName)) { + this.insertContent(this.contentFromAnonymousTable()); + } else { + throw e; + } + } + } else { + this.range = this.element.ownerDocument.createRange(); + if (this.initializeRange) this.initializeRange(); + this.insertContent([this.range.createContextualFragment(this.content)]); + } + + setTimeout(function() {content.evalScripts()}, 10); + }, + + contentFromAnonymousTable: function() { + var div = document.createElement('div'); + div.innerHTML = '' + this.content + '
    '; + return $A(div.childNodes[0].childNodes[0].childNodes); + } +} + +var Insertion = new Object(); + +Insertion.Before = Class.create(); +Insertion.Before.prototype = Object.extend(new Abstract.Insertion('beforeBegin'), { + initializeRange: function() { + this.range.setStartBefore(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.parentNode.insertBefore(fragment, this.element); + }).bind(this)); + } +}); + +Insertion.Top = Class.create(); +Insertion.Top.prototype = Object.extend(new Abstract.Insertion('afterBegin'), { + initializeRange: function() { + this.range.selectNodeContents(this.element); + this.range.collapse(true); + }, + + insertContent: function(fragments) { + fragments.reverse(false).each((function(fragment) { + this.element.insertBefore(fragment, this.element.firstChild); + }).bind(this)); + } +}); + +Insertion.Bottom = Class.create(); +Insertion.Bottom.prototype = Object.extend(new Abstract.Insertion('beforeEnd'), { + initializeRange: function() { + this.range.selectNodeContents(this.element); + this.range.collapse(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.appendChild(fragment); + }).bind(this)); + } +}); + +Insertion.After = Class.create(); +Insertion.After.prototype = Object.extend(new Abstract.Insertion('afterEnd'), { + initializeRange: function() { + this.range.setStartAfter(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.parentNode.insertBefore(fragment, + this.element.nextSibling); + }).bind(this)); + } +}); + +/*--------------------------------------------------------------------------*/ + +Element.ClassNames = Class.create(); +Element.ClassNames.prototype = { + initialize: function(element) { + this.element = $(element); + }, + + _each: function(iterator) { + this.element.className.split(/\s+/).select(function(name) { + return name.length > 0; + })._each(iterator); + }, + + set: function(className) { + this.element.className = className; + }, + + add: function(classNameToAdd) { + if (this.include(classNameToAdd)) return; + this.set($A(this).concat(classNameToAdd).join(' ')); + }, + + remove: function(classNameToRemove) { + if (!this.include(classNameToRemove)) return; + this.set($A(this).without(classNameToRemove).join(' ')); + }, + + toString: function() { + return $A(this).join(' '); + } +}; + +Object.extend(Element.ClassNames.prototype, Enumerable); +var Selector = Class.create(); +Selector.prototype = { + initialize: function(expression) { + this.params = {classNames: []}; + this.expression = expression.toString().strip(); + this.parseExpression(); + this.compileMatcher(); + }, + + parseExpression: function() { + function abort(message) { throw 'Erreur de parsing dans le slcteur: ' + message; } + + if (this.expression == '') abort('expression vide'); + + var params = this.params, expr = this.expression, match, modifier, clause, rest; + while (match = expr.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=)(?:"([^"]*)"|([^\]\s]*)))?\]$/i)) { + params.attributes = params.attributes || []; + params.attributes.push({name: match[2], operator: match[3], value: match[4] || match[5] || ''}); + expr = match[1]; + } + + if (expr == '*') return this.params.wildcard = true; + + while (match = expr.match(/^([^a-z0-9_-])?([a-z0-9_-]+)(.*)/i)) { + modifier = match[1], clause = match[2], rest = match[3]; + switch (modifier) { + case '#': params.id = clause; break; + case '.': params.classNames.push(clause); break; + case '': + case undefined: params.tagName = clause.toUpperCase(); break; + default: abort(expr.inspect()); + } + expr = rest; + } + + if (expr.length > 0) abort(expr.inspect()); + }, + + buildMatchExpression: function() { + var params = this.params, conditions = [], clause; + + if (params.wildcard) + conditions.push('true'); + if (clause = params.id) + conditions.push('element.readAttribute("id") == ' + clause.inspect()); + if (clause = params.tagName) + conditions.push('element.tagName.toUpperCase() == ' + clause.inspect()); + if ((clause = params.classNames).length > 0) + for (var i = 0, length = clause.length; i < length; i++) + conditions.push('element.hasClassName(' + clause[i].inspect() + ')'); + if (clause = params.attributes) { + clause.each(function(attribute) { + var value = 'element.readAttribute(' + attribute.name.inspect() + ')'; + var splitValueBy = function(delimiter) { + return value + ' && ' + value + '.split(' + delimiter.inspect() + ')'; + } + + switch (attribute.operator) { + case '=': conditions.push(value + ' == ' + attribute.value.inspect()); break; + case '~=': conditions.push(splitValueBy(' ') + '.include(' + attribute.value.inspect() + ')'); break; + case '|=': conditions.push( + splitValueBy('-') + '.first().toUpperCase() == ' + attribute.value.toUpperCase().inspect() + ); break; + case '!=': conditions.push(value + ' != ' + attribute.value.inspect()); break; + case '': + case undefined: conditions.push('element.hasAttribute(' + attribute.name.inspect() + ')'); break; + default: throw 'Oprateur inconnu ' + attribute.operator + ' dans le slcteur'; + } + }); + } + + return conditions.join(' && '); + }, + + compileMatcher: function() { + this.match = new Function('element', 'if (!element.tagName) return false; \ + element = $(element); \ + return ' + this.buildMatchExpression()); + }, + + findElements: function(scope) { + var element; + + if (element = $(this.params.id)) + if (this.match(element)) + if (!scope || Element.childOf(element, scope)) + return [element]; + + scope = (scope || document).getElementsByTagName(this.params.tagName || '*'); + + var results = []; + for (var i = 0, length = scope.length; i < length; i++) + if (this.match(element = scope[i])) + results.push(Element.extend(element)); + + return results; + }, + + toString: function() { + return this.expression; + } +} + +Object.extend(Selector, { + matchElements: function(elements, expression) { + var selector = new Selector(expression); + return elements.select(selector.match.bind(selector)).map(Element.extend); + }, + + findElement: function(elements, expression, index) { + if (typeof expression == 'number') index = expression, expression = false; + return Selector.matchElements(elements, expression || '*')[index || 0]; + }, + + findChildElements: function(element, expressions) { + return expressions.map(function(expression) { + return expression.match(/[^\s"]+(?:"[^"]*"[^\s"]+)*/g).inject([null], function(results, expr) { + var selector = new Selector(expr); + return results.inject([], function(elements, result) { + return elements.concat(selector.findElements(result || element)); + }); + }); + }).flatten(); + } +}); + +function $$() { + return Selector.findChildElements(document, $A(arguments)); +} +var Form = { + reset: function(form) { + $(form).reset(); + return form; + }, + + serializeElements: function(elements, getHash) { + var data = elements.inject({}, function(result, element) { + if (!element.disabled && element.name) { + var key = element.name, value = $(element).getValue(); + if (value != undefined) { + if (result[key]) { + if (result[key].constructor != Array) result[key] = [result[key]]; + result[key].push(value); + } + else result[key] = value; + } + } + return result; + }); + + return getHash ? data : Hash.toQueryString(data); + } +}; + +Form.Methods = { + serialize: function(form, getHash) { + return Form.serializeElements(Form.getElements(form), getHash); + }, + + getElements: function(form) { + return $A($(form).getElementsByTagName('*')).inject([], + function(elements, child) { + if (Form.Element.Serializers[child.tagName.toLowerCase()]) + elements.push(Element.extend(child)); + return elements; + } + ); + }, + + getInputs: function(form, typeName, name) { + form = $(form); + var inputs = form.getElementsByTagName('input'); + + if (!typeName && !name) return $A(inputs).map(Element.extend); + + for (var i = 0, matchingInputs = [], length = inputs.length; i < length; i++) { + var input = inputs[i]; + if ((typeName && input.type != typeName) || (name && input.name != name)) + continue; + matchingInputs.push(Element.extend(input)); + } + + return matchingInputs; + }, + + disable: function(form) { + form = $(form); + form.getElements().each(function(element) { + element.blur(); + element.disabled = 'true'; + }); + return form; + }, + + enable: function(form) { + form = $(form); + form.getElements().each(function(element) { + element.disabled = ''; + }); + return form; + }, + + findFirstElement: function(form) { + return $(form).getElements().find(function(element) { + return element.type != 'hidden' && !element.disabled && + ['input', 'select', 'textarea'].include(element.tagName.toLowerCase()); + }); + }, + + focusFirstElement: function(form) { + form = $(form); + form.findFirstElement().activate(); + return form; + } +} + +Object.extend(Form, Form.Methods); + +/*--------------------------------------------------------------------------*/ + +Form.Element = { + focus: function(element) { + $(element).focus(); + return element; + }, + + select: function(element) { + $(element).select(); + return element; + } +} + +Form.Element.Methods = { + serialize: function(element) { + element = $(element); + if (!element.disabled && element.name) { + var value = element.getValue(); + if (value != undefined) { + var pair = {}; + pair[element.name] = value; + return Hash.toQueryString(pair); + } + } + return ''; + }, + + getValue: function(element) { + element = $(element); + var method = element.tagName.toLowerCase(); + return Form.Element.Serializers[method](element); + }, + + clear: function(element) { + $(element).value = ''; + return element; + }, + + present: function(element) { + return $(element).value != ''; + }, + + activate: function(element) { + element = $(element); + element.focus(); + if (element.select && ( element.tagName.toLowerCase() != 'input' || + !['button', 'reset', 'submit'].include(element.type) ) ) + element.select(); + return element; + }, + + disable: function(element) { + element = $(element); + element.disabled = true; + return element; + }, + + enable: function(element) { + element = $(element); + element.blur(); + element.disabled = false; + return element; + } +} + +Object.extend(Form.Element, Form.Element.Methods); +var Field = Form.Element; +var $F = Form.Element.getValue; + +/*--------------------------------------------------------------------------*/ + +Form.Element.Serializers = { + input: function(element) { + switch (element.type.toLowerCase()) { + case 'checkbox': + case 'radio': + return Form.Element.Serializers.inputSelector(element); + default: + return Form.Element.Serializers.textarea(element); + } + }, + + inputSelector: function(element) { + return element.checked ? element.value : null; + }, + + textarea: function(element) { + return element.value; + }, + + select: function(element) { + return this[element.type == 'select-one' ? + 'selectOne' : 'selectMany'](element); + }, + + selectOne: function(element) { + var index = element.selectedIndex; + return index >= 0 ? this.optionValue(element.options[index]) : null; + }, + + selectMany: function(element) { + var values, length = element.length; + if (!length) return null; + + for (var i = 0, values = []; i < length; i++) { + var opt = element.options[i]; + if (opt.selected) values.push(this.optionValue(opt)); + } + return values; + }, + + optionValue: function(opt) { + // extend element because hasAttribute may not be native + return Element.extend(opt).hasAttribute('value') ? opt.value : opt.text; + } +} + +/*--------------------------------------------------------------------------*/ + +Abstract.TimedObserver = function() {} +Abstract.TimedObserver.prototype = { + initialize: function(element, frequency, callback) { + this.frequency = frequency; + this.element = $(element); + this.callback = callback; + + this.lastValue = this.getValue(); + this.registerCallback(); + }, + + registerCallback: function() { + setInterval(this.onTimerEvent.bind(this), this.frequency * 1000); + }, + + onTimerEvent: function() { + var value = this.getValue(); + var changed = ('string' == typeof this.lastValue && 'string' == typeof value + ? this.lastValue != value : String(this.lastValue) != String(value)); + if (changed) { + this.callback(this.element, value); + this.lastValue = value; + } + } +} + +Form.Element.Observer = Class.create(); +Form.Element.Observer.prototype = Object.extend(new Abstract.TimedObserver(), { + getValue: function() { + return Form.Element.getValue(this.element); + } +}); + +Form.Observer = Class.create(); +Form.Observer.prototype = Object.extend(new Abstract.TimedObserver(), { + getValue: function() { + return Form.serialize(this.element); + } +}); + +/*--------------------------------------------------------------------------*/ + +Abstract.EventObserver = function() {} +Abstract.EventObserver.prototype = { + initialize: function(element, callback) { + this.element = $(element); + this.callback = callback; + + this.lastValue = this.getValue(); + if (this.element.tagName.toLowerCase() == 'form') + this.registerFormCallbacks(); + else + this.registerCallback(this.element); + }, + + onElementEvent: function() { + var value = this.getValue(); + if (this.lastValue != value) { + this.callback(this.element, value); + this.lastValue = value; + } + }, + + registerFormCallbacks: function() { + Form.getElements(this.element).each(this.registerCallback.bind(this)); + }, + + registerCallback: function(element) { + if (element.type) { + switch (element.type.toLowerCase()) { + case 'checkbox': + case 'radio': + Event.observe(element, 'click', this.onElementEvent.bind(this)); + break; + default: + Event.observe(element, 'change', this.onElementEvent.bind(this)); + break; + } + } + } +} + +Form.Element.EventObserver = Class.create(); +Form.Element.EventObserver.prototype = Object.extend(new Abstract.EventObserver(), { + getValue: function() { + return Form.Element.getValue(this.element); + } +}); + +Form.EventObserver = Class.create(); +Form.EventObserver.prototype = Object.extend(new Abstract.EventObserver(), { + getValue: function() { + return Form.serialize(this.element); + } +}); +if (!window.Event) { + var Event = new Object(); +} + +Object.extend(Event, { + KEY_BACKSPACE: 8, + KEY_TAB: 9, + KEY_RETURN: 13, + KEY_ESC: 27, + KEY_LEFT: 37, + KEY_UP: 38, + KEY_RIGHT: 39, + KEY_DOWN: 40, + KEY_DELETE: 46, + KEY_HOME: 36, + KEY_END: 35, + KEY_PAGEUP: 33, + KEY_PAGEDOWN: 34, + + element: function(event) { + return event.target || event.srcElement; + }, + + isLeftClick: function(event) { + return (((event.which) && (event.which == 1)) || + ((event.button) && (event.button == 1))); + }, + + pointerX: function(event) { + return event.pageX || (event.clientX + + (document.documentElement.scrollLeft || document.body.scrollLeft)); + }, + + pointerY: function(event) { + return event.pageY || (event.clientY + + (document.documentElement.scrollTop || document.body.scrollTop)); + }, + + stop: function(event) { + if (event.preventDefault) { + event.preventDefault(); + event.stopPropagation(); + } else { + event.returnValue = false; + event.cancelBubble = true; + } + }, + + // find the first node with the given tagName, starting from the + // node the event was triggered on; traverses the DOM upwards + findElement: function(event, tagName) { + var element = Event.element(event); + while (element.parentNode && (!element.tagName || + (element.tagName.toUpperCase() != tagName.toUpperCase()))) + element = element.parentNode; + return element; + }, + + observers: false, + + _observeAndCache: function(element, name, observer, useCapture) { + if (!this.observers) this.observers = []; + if (element.addEventListener) { + this.observers.push([element, name, observer, useCapture]); + element.addEventListener(name, observer, useCapture); + } else if (element.attachEvent) { + this.observers.push([element, name, observer, useCapture]); + element.attachEvent('on' + name, observer); + } + }, + + unloadCache: function() { + if (!Event.observers) return; + for (var i = 0, length = Event.observers.length; i < length; i++) { + Event.stopObserving.apply(this, Event.observers[i]); + Event.observers[i][0] = null; + } + Event.observers = false; + }, + + observe: function(element, name, observer, useCapture) { + element = $(element); + useCapture = useCapture || false; + + if (name == 'keypress' && + (navigator.appVersion.match(/Konqueror|Safari|KHTML/) + || element.attachEvent)) + name = 'keydown'; + + Event._observeAndCache(element, name, observer, useCapture); + }, + + stopObserving: function(element, name, observer, useCapture) { + element = $(element); + useCapture = useCapture || false; + + if (name == 'keypress' && + (navigator.appVersion.match(/Konqueror|Safari|KHTML/) + || element.detachEvent)) + name = 'keydown'; + + if (element.removeEventListener) { + element.removeEventListener(name, observer, useCapture); + } else if (element.detachEvent) { + try { + element.detachEvent('on' + name, observer); + } catch (e) {} + } + } +}); + +/* prevent memory leaks in IE */ +if (navigator.appVersion.match(/\bMSIE\b/)) + Event.observe(window, 'unload', Event.unloadCache, false); +var Position = { + // set to true if needed, warning: firefox performance problems + // NOT neeeded for page scrolling, only if draggable contained in + // scrollable elements + includeScrollOffsets: false, + + // must be called before calling withinIncludingScrolloffset, every time the + // page is scrolled + prepare: function() { + this.deltaX = window.pageXOffset + || document.documentElement.scrollLeft + || document.body.scrollLeft + || 0; + this.deltaY = window.pageYOffset + || document.documentElement.scrollTop + || document.body.scrollTop + || 0; + }, + + realOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.scrollTop || 0; + valueL += element.scrollLeft || 0; + element = element.parentNode; + } while (element); + return [valueL, valueT]; + }, + + cumulativeOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + element = element.offsetParent; + } while (element); + return [valueL, valueT]; + }, + + positionedOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + element = element.offsetParent; + if (element) { + if(element.tagName=='BODY') break; + var p = Element.getStyle(element, 'position'); + if (p == 'relative' || p == 'absolute') break; + } + } while (element); + return [valueL, valueT]; + }, + + offsetParent: function(element) { + if (element.offsetParent) return element.offsetParent; + if (element == document.body) return element; + + while ((element = element.parentNode) && element != document.body) + if (Element.getStyle(element, 'position') != 'static') + return element; + + return document.body; + }, + + // caches x/y coordinate pair to use with overlap + within: function(element, x, y) { + if (this.includeScrollOffsets) + return this.withinIncludingScrolloffsets(element, x, y); + this.xcomp = x; + this.ycomp = y; + this.offset = this.cumulativeOffset(element); + + return (y >= this.offset[1] && + y < this.offset[1] + element.offsetHeight && + x >= this.offset[0] && + x < this.offset[0] + element.offsetWidth); + }, + + withinIncludingScrolloffsets: function(element, x, y) { + var offsetcache = this.realOffset(element); + + this.xcomp = x + offsetcache[0] - this.deltaX; + this.ycomp = y + offsetcache[1] - this.deltaY; + this.offset = this.cumulativeOffset(element); + + return (this.ycomp >= this.offset[1] && + this.ycomp < this.offset[1] + element.offsetHeight && + this.xcomp >= this.offset[0] && + this.xcomp < this.offset[0] + element.offsetWidth); + }, + + // within must be called directly before + overlap: function(mode, element) { + if (!mode) return 0; + if (mode == 'vertical') + return ((this.offset[1] + element.offsetHeight) - this.ycomp) / + element.offsetHeight; + if (mode == 'horizontal') + return ((this.offset[0] + element.offsetWidth) - this.xcomp) / + element.offsetWidth; + }, + + page: function(forElement) { + var valueT = 0, valueL = 0; + + var element = forElement; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + + // Safari fix + if (element.offsetParent==document.body) + if (Element.getStyle(element,'position')=='absolute') break; + + } while (element = element.offsetParent); + + element = forElement; + do { + if (!window.opera || element.tagName=='BODY') { + valueT -= element.scrollTop || 0; + valueL -= element.scrollLeft || 0; + } + } while (element = element.parentNode); + + return [valueL, valueT]; + }, + + clone: function(source, target) { + var options = Object.extend({ + setLeft: true, + setTop: true, + setWidth: true, + setHeight: true, + offsetTop: 0, + offsetLeft: 0 + }, arguments[2] || {}) + + // find page position of source + source = $(source); + var p = Position.page(source); + + // find coordinate system to use + target = $(target); + var delta = [0, 0]; + var parent = null; + // delta [0,0] will do fine with position: fixed elements, + // position:absolute needs offsetParent deltas + if (Element.getStyle(target,'position') == 'absolute') { + parent = Position.offsetParent(target); + delta = Position.page(parent); + } + + // correct by body offsets (fixes Safari) + if (parent == document.body) { + delta[0] -= document.body.offsetLeft; + delta[1] -= document.body.offsetTop; + } + + // set position + if(options.setLeft) target.style.left = (p[0] - delta[0] + options.offsetLeft) + 'px'; + if(options.setTop) target.style.top = (p[1] - delta[1] + options.offsetTop) + 'px'; + if(options.setWidth) target.style.width = source.offsetWidth + 'px'; + if(options.setHeight) target.style.height = source.offsetHeight + 'px'; + }, + + absolutize: function(element) { + element = $(element); + if (element.style.position == 'absolute') return; + Position.prepare(); + + var offsets = Position.positionedOffset(element); + var top = offsets[1]; + var left = offsets[0]; + var width = element.clientWidth; + var height = element.clientHeight; + + element._originalLeft = left - parseFloat(element.style.left || 0); + element._originalTop = top - parseFloat(element.style.top || 0); + element._originalWidth = element.style.width; + element._originalHeight = element.style.height; + + element.style.position = 'absolute'; + element.style.top = top + 'px'; + element.style.left = left + 'px'; + element.style.width = width + 'px'; + element.style.height = height + 'px'; + }, + + relativize: function(element) { + element = $(element); + if (element.style.position == 'relative') return; + Position.prepare(); + + element.style.position = 'relative'; + var top = parseFloat(element.style.top || 0) - (element._originalTop || 0); + var left = parseFloat(element.style.left || 0) - (element._originalLeft || 0); + + element.style.top = top + 'px'; + element.style.left = left + 'px'; + element.style.height = element._originalHeight; + element.style.width = element._originalWidth; + } +} + +// Safari returns margins on body which is incorrect if the child is absolutely +// positioned. For performance reasons, redefine Position.cumulativeOffset for +// KHTML/WebKit only. +if (/Konqueror|Safari|KHTML/.test(navigator.userAgent)) { + Position.cumulativeOffset = function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + if (element.offsetParent == document.body) + if (Element.getStyle(element, 'position') == 'absolute') break; + + element = element.offsetParent; + } while (element); + + return [valueL, valueT]; + } +} + +Element.addMethods(); \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/robots.txt b/P5B/ruby/mon_projet/public/robots.txt new file mode 100644 index 0000000..4ab9e89 --- /dev/null +++ b/P5B/ruby/mon_projet/public/robots.txt @@ -0,0 +1 @@ +# See http://www.robotstxt.org/wc/norobots.html for documentation on how to use the robots.txt file \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/stylesheets/scaffold.css b/P5B/ruby/mon_projet/public/stylesheets/scaffold.css new file mode 100644 index 0000000..fdf5057 --- /dev/null +++ b/P5B/ruby/mon_projet/public/stylesheets/scaffold.css @@ -0,0 +1,104 @@ +body { background-color: #fff; color: #333; } + +body, p, ol, ul, td { + font-family: verdana, arial, helvetica, sans-serif; + font-size: 13px; + line-height: 18px; +} + +pre { + background-color: #eee; + padding: 10px; + font-size: 11px; +} + +a { color: #000; } +a:visited { color: #666; } +a:hover { color: #fff; background-color:#000; } + +.fieldWithErrors { + padding: 2px; + background-color: red; + display: table; +} + +#errorExplanation { + width: 400px; + border: 2px solid red; + padding: 7px; + padding-bottom: 12px; + margin-bottom: 20px; + background-color: #f0f0f0; +} + +#errorExplanation h2 { + text-align: left; + font-weight: bold; + padding: 5px 5px 5px 15px; + font-size: 12px; + margin: -7px; + background-color: #c00; + color: #fff; +} + +#errorExplanation p { + color: #333; + margin-bottom: 0; + padding: 5px; +} + +#errorExplanation ul li { + font-size: 12px; + list-style: square; +} + +div.uploadStatus { + margin: 5px; +} + +div.progressBar { + margin: 5px; +} + +div.progressBar div.border { + background-color: #fff; + border: 1px solid grey; + width: 100%; +} + +div.progressBar div.background { + background-color: #333; + height: 18px; + width: 0%; +} + +/* Pour la pagination */ + .pagination { + padding: 3px; + margin: 3px; + } + .pagination a { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #aaaadd; + text-decoration: none; + color: #000099; + } + .pagination a:hover, .pagination a:active { + border: 1px solid #000099; + color: red; + } + .pagination span.current { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #000099; + font-weight: bold; + background-color: #000099; + color: #FFF; + } + .pagination span.disabled { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #eee; + color: #ddd; + } \ No newline at end of file diff --git a/P5B/ruby/mon_projet/public/stylesheets/scaffold.css~ b/P5B/ruby/mon_projet/public/stylesheets/scaffold.css~ new file mode 100644 index 0000000..69dad3e --- /dev/null +++ b/P5B/ruby/mon_projet/public/stylesheets/scaffold.css~ @@ -0,0 +1,104 @@ +body { background-color: #fff; color: #333; } + +body, p, ol, ul, td { + font-family: verdana, arial, helvetica, sans-serif; + font-size: 13px; + line-height: 18px; +} + +pre { + background-color: #eee; + padding: 10px; + font-size: 11px; +} + +a { color: #000; } +a:visited { color: #666; } +a:hover { color: #fff; background-color:#000; } + +.fieldWithErrors { + padding: 2px; + background-color: red; + display: table; +} + +#errorExplanation { + width: 400px; + border: 2px solid red; + padding: 7px; + padding-bottom: 12px; + margin-bottom: 20px; + background-color: #f0f0f0; +} + +#errorExplanation h2 { + text-align: left; + font-weight: bold; + padding: 5px 5px 5px 15px; + font-size: 12px; + margin: -7px; + background-color: #c00; + color: #fff; +} + +#errorExplanation p { + color: #333; + margin-bottom: 0; + padding: 5px; +} + +#errorExplanation ul li { + font-size: 12px; + list-style: square; +} + +div.uploadStatus { + margin: 5px; +} + +div.progressBar { + margin: 5px; +} + +div.progressBar div.border { + background-color: #fff; + border: 1px solid grey; + width: 100%; +} + +div.progressBar div.background { + background-color: #333; + height: 18px; + width: 0%; +} + +/* Pour la pagination */ + .pagination { + padding: 3px; + margin: 3px; + } + .pagination a { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #aaaadd; + text-decoration: none; + color: #000099; + } + .pagination a:hover, .pagination a:active { + border: 1px solid #000099; + color: #000; + } + .pagination span.current { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #000099; + font-weight: bold; + background-color: #000099; + color: #FFF; + } + .pagination span.disabled { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #eee; + color: #ddd; + } \ No newline at end of file diff --git a/P5B/ruby/mon_projet/script/about b/P5B/ruby/mon_projet/script/about new file mode 100644 index 0000000..7b07d46 --- /dev/null +++ b/P5B/ruby/mon_projet/script/about @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/about' \ No newline at end of file diff --git a/P5B/ruby/mon_projet/script/breakpointer b/P5B/ruby/mon_projet/script/breakpointer new file mode 100644 index 0000000..64af76e --- /dev/null +++ b/P5B/ruby/mon_projet/script/breakpointer @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/breakpointer' \ No newline at end of file diff --git a/P5B/ruby/mon_projet/script/console b/P5B/ruby/mon_projet/script/console new file mode 100644 index 0000000..42f28f7 --- /dev/null +++ b/P5B/ruby/mon_projet/script/console @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/console' \ No newline at end of file diff --git a/P5B/ruby/mon_projet/script/destroy b/P5B/ruby/mon_projet/script/destroy new file mode 100644 index 0000000..fa0e6fc --- /dev/null +++ b/P5B/ruby/mon_projet/script/destroy @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/destroy' \ No newline at end of file diff --git a/P5B/ruby/mon_projet/script/generate b/P5B/ruby/mon_projet/script/generate new file mode 100644 index 0000000..ef976e0 --- /dev/null +++ b/P5B/ruby/mon_projet/script/generate @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/generate' \ No newline at end of file diff --git a/P5B/ruby/mon_projet/script/performance/benchmarker b/P5B/ruby/mon_projet/script/performance/benchmarker new file mode 100644 index 0000000..c842d35 --- /dev/null +++ b/P5B/ruby/mon_projet/script/performance/benchmarker @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../../config/boot' +require 'commands/performance/benchmarker' diff --git a/P5B/ruby/mon_projet/script/performance/profiler b/P5B/ruby/mon_projet/script/performance/profiler new file mode 100644 index 0000000..d855ac8 --- /dev/null +++ b/P5B/ruby/mon_projet/script/performance/profiler @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../../config/boot' +require 'commands/performance/profiler' diff --git a/P5B/ruby/mon_projet/script/plugin b/P5B/ruby/mon_projet/script/plugin new file mode 100644 index 0000000..26ca64c --- /dev/null +++ b/P5B/ruby/mon_projet/script/plugin @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/plugin' \ No newline at end of file diff --git a/P5B/ruby/mon_projet/script/process/inspector b/P5B/ruby/mon_projet/script/process/inspector new file mode 100644 index 0000000..bf25ad8 --- /dev/null +++ b/P5B/ruby/mon_projet/script/process/inspector @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../../config/boot' +require 'commands/process/inspector' diff --git a/P5B/ruby/mon_projet/script/process/reaper b/P5B/ruby/mon_projet/script/process/reaper new file mode 100644 index 0000000..c77f045 --- /dev/null +++ b/P5B/ruby/mon_projet/script/process/reaper @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../../config/boot' +require 'commands/process/reaper' diff --git a/P5B/ruby/mon_projet/script/process/spawner b/P5B/ruby/mon_projet/script/process/spawner new file mode 100644 index 0000000..7118f39 --- /dev/null +++ b/P5B/ruby/mon_projet/script/process/spawner @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../../config/boot' +require 'commands/process/spawner' diff --git a/P5B/ruby/mon_projet/script/runner b/P5B/ruby/mon_projet/script/runner new file mode 100644 index 0000000..ccc30f9 --- /dev/null +++ b/P5B/ruby/mon_projet/script/runner @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/runner' \ No newline at end of file diff --git a/P5B/ruby/mon_projet/script/server b/P5B/ruby/mon_projet/script/server new file mode 100644 index 0000000..dfabcb8 --- /dev/null +++ b/P5B/ruby/mon_projet/script/server @@ -0,0 +1,3 @@ +#!/usr/bin/env ruby +require File.dirname(__FILE__) + '/../config/boot' +require 'commands/server' \ No newline at end of file diff --git a/P5B/ruby/mon_projet/test/fixtures/addresses.yml b/P5B/ruby/mon_projet/test/fixtures/addresses.yml new file mode 100644 index 0000000..9815981 --- /dev/null +++ b/P5B/ruby/mon_projet/test/fixtures/addresses.yml @@ -0,0 +1,13 @@ +# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html +one: + id: 1 + street: MyText + postal_code: MyString + city: MyString + country: MyString +two: + id: 2 + street: MyText + postal_code: MyString + city: MyString + country: MyString diff --git a/P5B/ruby/mon_projet/test/fixtures/customers.yml b/P5B/ruby/mon_projet/test/fixtures/customers.yml new file mode 100644 index 0000000..3c8ce4d --- /dev/null +++ b/P5B/ruby/mon_projet/test/fixtures/customers.yml @@ -0,0 +1,9 @@ +# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html +one: + id: 1 + firstname: Client1 + name: NOM1 +two: + id: 2 + firstname: Client2 + name: NOM2 \ No newline at end of file diff --git a/P5B/ruby/mon_projet/test/fixtures/customers.yml~ b/P5B/ruby/mon_projet/test/fixtures/customers.yml~ new file mode 100644 index 0000000..fd9384f --- /dev/null +++ b/P5B/ruby/mon_projet/test/fixtures/customers.yml~ @@ -0,0 +1,9 @@ +# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html +one: + id: 1 + firstname: MyString + name: MyString +two: + id: 2 + firstname: MyString + name: MyString diff --git a/P5B/ruby/mon_projet/test/fixtures/products.yml b/P5B/ruby/mon_projet/test/fixtures/products.yml new file mode 100644 index 0000000..f9148ba --- /dev/null +++ b/P5B/ruby/mon_projet/test/fixtures/products.yml @@ -0,0 +1,17 @@ +# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html +oen: + id: 1 + designation: Beurre + description: Bien beurré + created_at: 2007-10-23 11:05:31 + updated_at: 2007-10-23 11:05:31 + supplier_id: 1 + customer_id: 1 +tow: + id: 2 + designation: Soupline + description: Souplesse garantie + created_at: 2007-10-23 11:05:31 + updated_at: 2007-10-23 11:05:31 + supplier_id: 2 + customer_id: 1 \ No newline at end of file diff --git a/P5B/ruby/mon_projet/test/fixtures/products.yml~ b/P5B/ruby/mon_projet/test/fixtures/products.yml~ new file mode 100644 index 0000000..69fe07b --- /dev/null +++ b/P5B/ruby/mon_projet/test/fixtures/products.yml~ @@ -0,0 +1,15 @@ +# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html +oen: + id: 1 + designation: Beurre + description: Bien beurré + created_at: 2007-10-23 11:05:31 + updated_at: 2007-10-23 11:05:31 + supplier_id: 1 +tow: + id: 2 + designation: Soupline + description: Souplesse garantie + created_at: 2007-10-23 11:05:31 + updated_at: 2007-10-23 11:05:31 + supplier_id: 2 \ No newline at end of file diff --git a/P5B/ruby/mon_projet/test/fixtures/suppliers.yml b/P5B/ruby/mon_projet/test/fixtures/suppliers.yml new file mode 100644 index 0000000..fc5ffba --- /dev/null +++ b/P5B/ruby/mon_projet/test/fixtures/suppliers.yml @@ -0,0 +1,15 @@ +# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html +one: + id: 1 + name: Fournisseur1 + description: Description du fournisseur 1 + code: FRS1 + created_at: 2007-10-23 15:06:14 + updated_at: 2007-10-23 15:06:14 +two: + id: 2 + name: Fournisseur2 + description: Description du fournisseur 2 + code: FRS2 + created_at: 2007-10-23 15:06:14 + updated_at: 2007-10-23 15:06:14 diff --git a/P5B/ruby/mon_projet/test/fixtures/suppliers.yml~ b/P5B/ruby/mon_projet/test/fixtures/suppliers.yml~ new file mode 100644 index 0000000..18eebe2 --- /dev/null +++ b/P5B/ruby/mon_projet/test/fixtures/suppliers.yml~ @@ -0,0 +1,15 @@ +# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html +one: + id: 1 + name: Fournisseur1 + description: Description du fournisseur 1 + code: MyString + created_at: 2007-10-23 15:06:14 + updated_at: 2007-10-23 15:06:14 +two: + id: 2 + name: Fournisseur2 + description: Description du fournisseur 2 + code: MyString + created_at: 2007-10-23 15:06:14 + updated_at: 2007-10-23 15:06:14 diff --git a/P5B/ruby/mon_projet/test/fixtures/utilisateurs.yml b/P5B/ruby/mon_projet/test/fixtures/utilisateurs.yml new file mode 100644 index 0000000..5887109 --- /dev/null +++ b/P5B/ruby/mon_projet/test/fixtures/utilisateurs.yml @@ -0,0 +1,17 @@ +quentin: + id: 1 + login: olivier + email: olivier@example.com + salt: 7e3041ebc2fc05a40c60028e2c4901a81035d3cd + crypted_password: 00742970dc9e6319f8019fd54864d3ea740f04b1 # test + created_at: <%= 5.days.ago.to_s :db %> + activation_code: 8f24789ae988411ccf33ab0c30fe9106fab32e9b + activated_at: <%= 5.days.ago.to_s :db %> +aaron: + id: 2 + login: christian + email: christian@example.com + salt: 7e3041ebc2fc05a40c60028e2c4901a81035d3cd + crypted_password: 00742970dc9e6319f8019fd54864d3ea740f04b1 # test + created_at: <%= 1.days.ago.to_s :db %> + activation_code: 8f24789ae988411ccf33ab0c30fe9106fab32e9a diff --git a/P5B/ruby/mon_projet/test/fixtures/utilisateurs.yml~ b/P5B/ruby/mon_projet/test/fixtures/utilisateurs.yml~ new file mode 100644 index 0000000..1042d2f --- /dev/null +++ b/P5B/ruby/mon_projet/test/fixtures/utilisateurs.yml~ @@ -0,0 +1,17 @@ +quentin: + id: 1 + login: quentin + email: quentin@example.com + salt: 7e3041ebc2fc05a40c60028e2c4901a81035d3cd + crypted_password: 00742970dc9e6319f8019fd54864d3ea740f04b1 # test + created_at: <%= 5.days.ago.to_s :db %> + activation_code: 8f24789ae988411ccf33ab0c30fe9106fab32e9b + activated_at: <%= 5.days.ago.to_s :db %> +aaron: + id: 2 + login: aaron + email: aaron@example.com + salt: 7e3041ebc2fc05a40c60028e2c4901a81035d3cd + crypted_password: 00742970dc9e6319f8019fd54864d3ea740f04b1 # test + created_at: <%= 1.days.ago.to_s :db %> + activation_code: 8f24789ae988411ccf33ab0c30fe9106fab32e9a diff --git a/P5B/ruby/mon_projet/test/functional/addresses_controller_test.rb b/P5B/ruby/mon_projet/test/functional/addresses_controller_test.rb new file mode 100644 index 0000000..f7ba9af --- /dev/null +++ b/P5B/ruby/mon_projet/test/functional/addresses_controller_test.rb @@ -0,0 +1,57 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'addresses_controller' + +# Re-raise errors caught by the controller. +class AddressesController; def rescue_action(e) raise e end; end + +class AddressesControllerTest < Test::Unit::TestCase + fixtures :addresses + + def setup + @controller = AddressesController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_get_index + get :index + assert_response :success + assert assigns(:addresses) + end + + def test_should_get_new + get :new + assert_response :success + end + + def test_should_create_address + old_count = Address.count + post :create, :address => { } + assert_equal old_count+1, Address.count + + assert_redirected_to address_path(assigns(:address)) + end + + def test_should_show_address + get :show, :id => 1 + assert_response :success + end + + def test_should_get_edit + get :edit, :id => 1 + assert_response :success + end + + def test_should_update_address + put :update, :id => 1, :address => { } + assert_redirected_to address_path(assigns(:address)) + end + + def test_should_destroy_address + old_count = Address.count + delete :destroy, :id => 1 + assert_equal old_count-1, Address.count + + assert_redirected_to addresses_path + end +end diff --git a/P5B/ruby/mon_projet/test/functional/admin/admin_controller_test.rb b/P5B/ruby/mon_projet/test/functional/admin/admin_controller_test.rb new file mode 100644 index 0000000..2958795 --- /dev/null +++ b/P5B/ruby/mon_projet/test/functional/admin/admin_controller_test.rb @@ -0,0 +1,18 @@ +require File.dirname(__FILE__) + '/../../test_helper' +require 'admin/admin_controller' + +# Re-raise errors caught by the controller. +class Admin::AdminController; def rescue_action(e) raise e end; end + +class Admin::AdminControllerTest < Test::Unit::TestCase + def setup + @controller = Admin::AdminController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + # Replace this with your real tests. + def test_truth + assert true + end +end diff --git a/P5B/ruby/mon_projet/test/functional/customers_controller_test.rb b/P5B/ruby/mon_projet/test/functional/customers_controller_test.rb new file mode 100644 index 0000000..83e2e00 --- /dev/null +++ b/P5B/ruby/mon_projet/test/functional/customers_controller_test.rb @@ -0,0 +1,57 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'customers_controller' + +# Re-raise errors caught by the controller. +class CustomersController; def rescue_action(e) raise e end; end + +class CustomersControllerTest < Test::Unit::TestCase + fixtures :customers + + def setup + @controller = CustomersController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_get_index + get :index + assert_response :success + assert assigns(:customers) + end + + def test_should_get_new + get :new + assert_response :success + end + + def test_should_create_customer + old_count = Customer.count + post :create, :customer => { } + assert_equal old_count+1, Customer.count + + assert_redirected_to customer_path(assigns(:customer)) + end + + def test_should_show_customer + get :show, :id => 1 + assert_response :success + end + + def test_should_get_edit + get :edit, :id => 1 + assert_response :success + end + + def test_should_update_customer + put :update, :id => 1, :customer => { } + assert_redirected_to customer_path(assigns(:customer)) + end + + def test_should_destroy_customer + old_count = Customer.count + delete :destroy, :id => 1 + assert_equal old_count-1, Customer.count + + assert_redirected_to customers_path + end +end diff --git a/P5B/ruby/mon_projet/test/functional/products_controller_test.rb b/P5B/ruby/mon_projet/test/functional/products_controller_test.rb new file mode 100644 index 0000000..2aa7f6e --- /dev/null +++ b/P5B/ruby/mon_projet/test/functional/products_controller_test.rb @@ -0,0 +1,18 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'products_controller' + +# Re-raise errors caught by the controller. +class ProductsController; def rescue_action(e) raise e end; end + +class ProductsControllerTest < Test::Unit::TestCase + def setup + @controller = ProductsController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + # Replace this with your real tests. + def test_truth + assert true + end +end diff --git a/P5B/ruby/mon_projet/test/functional/sessions_controller_test.rb b/P5B/ruby/mon_projet/test/functional/sessions_controller_test.rb new file mode 100644 index 0000000..8bd5f0f --- /dev/null +++ b/P5B/ruby/mon_projet/test/functional/sessions_controller_test.rb @@ -0,0 +1,85 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'sessions_controller' + +# Re-raise errors caught by the controller. +class SessionsController; def rescue_action(e) raise e end; end + +class SessionsControllerTest < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead + # Then, you can remove it from this and the units test. + include AuthenticatedTestHelper + + fixtures :utilisateurs + + def setup + @controller = SessionsController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_login_and_redirect + post :create, :login => 'quentin', :password => 'test' + assert session[:utilisateur] + assert_response :redirect + end + + def test_should_fail_login_and_not_redirect + post :create, :login => 'quentin', :password => 'bad password' + assert_nil session[:utilisateur] + assert_response :success + end + + def test_should_logout + login_as :quentin + get :destroy + assert_nil session[:utilisateur] + assert_response :redirect + end + + def test_should_remember_me + post :create, :login => 'quentin', :password => 'test', :remember_me => "1" + assert_not_nil @response.cookies["auth_token"] + end + + def test_should_not_remember_me + post :create, :login => 'quentin', :password => 'test', :remember_me => "0" + assert_nil @response.cookies["auth_token"] + end + + def test_should_delete_token_on_logout + login_as :quentin + get :destroy + assert_equal @response.cookies["auth_token"], [] + end + + def test_should_login_with_cookie + utilisateurs(:quentin).remember_me + @request.cookies["auth_token"] = cookie_for(:quentin) + get :new + assert @controller.send(:logged_in?) + end + + def test_should_fail_expired_cookie_login + utilisateurs(:quentin).remember_me + utilisateurs(:quentin).update_attribute :remember_token_expires_at, 5.minutes.ago + @request.cookies["auth_token"] = cookie_for(:quentin) + get :new + assert !@controller.send(:logged_in?) + end + + def test_should_fail_cookie_login + utilisateurs(:quentin).remember_me + @request.cookies["auth_token"] = auth_token('invalid_auth_token') + get :new + assert !@controller.send(:logged_in?) + end + + protected + def auth_token(token) + CGI::Cookie.new('name' => 'auth_token', 'value' => token) + end + + def cookie_for(utilisateur) + auth_token utilisateurs(utilisateur).remember_token + end +end diff --git a/P5B/ruby/mon_projet/test/functional/suppliers_controller_test.rb b/P5B/ruby/mon_projet/test/functional/suppliers_controller_test.rb new file mode 100644 index 0000000..a55683f --- /dev/null +++ b/P5B/ruby/mon_projet/test/functional/suppliers_controller_test.rb @@ -0,0 +1,57 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'suppliers_controller' + +# Re-raise errors caught by the controller. +class SuppliersController; def rescue_action(e) raise e end; end + +class SuppliersControllerTest < Test::Unit::TestCase + fixtures :suppliers + + def setup + @controller = SuppliersController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_get_index + get :index + assert_response :success + assert assigns(:suppliers) + end + + def test_should_get_new + get :new + assert_response :success + end + + def test_should_create_supplier + old_count = Supplier.count + post :create, :supplier => { } + assert_equal old_count+1, Supplier.count + + assert_redirected_to supplier_path(assigns(:supplier)) + end + + def test_should_show_supplier + get :show, :id => 1 + assert_response :success + end + + def test_should_get_edit + get :edit, :id => 1 + assert_response :success + end + + def test_should_update_supplier + put :update, :id => 1, :supplier => { } + assert_redirected_to supplier_path(assigns(:supplier)) + end + + def test_should_destroy_supplier + old_count = Supplier.count + delete :destroy, :id => 1 + assert_equal old_count-1, Supplier.count + + assert_redirected_to suppliers_path + end +end diff --git a/P5B/ruby/mon_projet/test/functional/utilisateurs_controller_test.rb b/P5B/ruby/mon_projet/test/functional/utilisateurs_controller_test.rb new file mode 100644 index 0000000..b269e59 --- /dev/null +++ b/P5B/ruby/mon_projet/test/functional/utilisateurs_controller_test.rb @@ -0,0 +1,86 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'utilisateurs_controller' + +# Re-raise errors caught by the controller. +class UtilisateursController; def rescue_action(e) raise e end; end + +class UtilisateursControllerTest < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead + # Then, you can remove it from this and the units test. + include AuthenticatedTestHelper + + fixtures :utilisateurs + + def setup + @controller = UtilisateursController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_allow_signup + assert_difference 'Utilisateur.count' do + create_utilisateur + assert_response :redirect + end + end + + def test_should_require_login_on_signup + assert_no_difference 'Utilisateur.count' do + create_utilisateur(:login => nil) + assert assigns(:utilisateur).errors.on(:login) + assert_response :success + end + end + + def test_should_require_password_on_signup + assert_no_difference 'Utilisateur.count' do + create_utilisateur(:password => nil) + assert assigns(:utilisateur).errors.on(:password) + assert_response :success + end + end + + def test_should_require_password_confirmation_on_signup + assert_no_difference 'Utilisateur.count' do + create_utilisateur(:password_confirmation => nil) + assert assigns(:utilisateur).errors.on(:password_confirmation) + assert_response :success + end + end + + def test_should_require_email_on_signup + assert_no_difference 'Utilisateur.count' do + create_utilisateur(:email => nil) + assert assigns(:utilisateur).errors.on(:email) + assert_response :success + end + end + + def test_should_activate_user + assert_nil Utilisateur.authenticate('aaron', 'test') + get :activate, :activation_code => utilisateurs(:aaron).activation_code + assert_redirected_to '/' + assert_not_nil flash[:notice] + assert_equal utilisateurs(:aaron), Utilisateur.authenticate('aaron', 'test') + end + + def test_should_not_activate_user_without_key + get :activate + assert_nil flash[:notice] + rescue ActionController::RoutingError + # in the event your routes deny this, we'll just bow out gracefully. + end + + def test_should_not_activate_user_with_blank_key + get :activate, :activation_code => '' + assert_nil flash[:notice] + rescue ActionController::RoutingError + # well played, sir + end + + protected + def create_utilisateur(options = {}) + post :create, :utilisateur => { :login => 'quire', :email => 'quire@example.com', + :password => 'quire', :password_confirmation => 'quire' }.merge(options) + end +end diff --git a/P5B/ruby/mon_projet/test/test_helper.rb b/P5B/ruby/mon_projet/test/test_helper.rb new file mode 100644 index 0000000..a299c7f --- /dev/null +++ b/P5B/ruby/mon_projet/test/test_helper.rb @@ -0,0 +1,28 @@ +ENV["RAILS_ENV"] = "test" +require File.expand_path(File.dirname(__FILE__) + "/../config/environment") +require 'test_help' + +class Test::Unit::TestCase + # Transactional fixtures accelerate your tests by wrapping each test method + # in a transaction that's rolled back on completion. This ensures that the + # test database remains unchanged so your fixtures don't have to be reloaded + # between every test method. Fewer database queries means faster tests. + # + # Read Mike Clark's excellent walkthrough at + # http://clarkware.com/cgi/blosxom/2005/10/24#Rails10FastTesting + # + # Every Active Record database supports transactions except MyISAM tables + # in MySQL. Turn off transactional fixtures in this case; however, if you + # don't care one way or the other, switching from MyISAM to InnoDB tables + # is recommended. + self.use_transactional_fixtures = true + + # Instantiated fixtures are slow, but give you @david where otherwise you + # would need people(:david). If you don't want to migrate your existing + # test cases which use the @david style and don't mind the speed hit (each + # instantiated fixtures translates to a database query per test method), + # then set this back to true. + self.use_instantiated_fixtures = false + + # Add more helper methods to be used by all tests here... +end diff --git a/P5B/ruby/mon_projet/test/unit/address_test.rb b/P5B/ruby/mon_projet/test/unit/address_test.rb new file mode 100644 index 0000000..764f01a --- /dev/null +++ b/P5B/ruby/mon_projet/test/unit/address_test.rb @@ -0,0 +1,10 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class AddressTest < Test::Unit::TestCase + fixtures :addresses + + # Replace this with your real tests. + def test_truth + assert true + end +end diff --git a/P5B/ruby/mon_projet/test/unit/customer_test.rb b/P5B/ruby/mon_projet/test/unit/customer_test.rb new file mode 100644 index 0000000..026128d --- /dev/null +++ b/P5B/ruby/mon_projet/test/unit/customer_test.rb @@ -0,0 +1,15 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class CustomerTest < Test::Unit::TestCase + fixtures :customers + + # Replace this with your real tests. + def test_truth + assert true + end + +# def +# customer = Customer.find(1) +# asssert_equal "Jean_Charles", customer.name +# end +end diff --git a/P5B/ruby/mon_projet/test/unit/customer_test.rb~ b/P5B/ruby/mon_projet/test/unit/customer_test.rb~ new file mode 100644 index 0000000..7af9508 --- /dev/null +++ b/P5B/ruby/mon_projet/test/unit/customer_test.rb~ @@ -0,0 +1,15 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class CustomerTest < Test::Unit::TestCase + fixtures :customers + + # Replace this with your real tests. + def test_truth + assert true + end + + def + customer = Customer.find(1) + asssert_equal "Jean_Charles", customer.name + end +end diff --git a/P5B/ruby/mon_projet/test/unit/product_test.rb b/P5B/ruby/mon_projet/test/unit/product_test.rb new file mode 100644 index 0000000..4d90687 --- /dev/null +++ b/P5B/ruby/mon_projet/test/unit/product_test.rb @@ -0,0 +1,10 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class ProductTest < Test::Unit::TestCase + fixtures :products + + # Replace this with your real tests. + def test_truth + assert true + end +end diff --git a/P5B/ruby/mon_projet/test/unit/supplier_test.rb b/P5B/ruby/mon_projet/test/unit/supplier_test.rb new file mode 100644 index 0000000..5af294c --- /dev/null +++ b/P5B/ruby/mon_projet/test/unit/supplier_test.rb @@ -0,0 +1,10 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class SupplierTest < Test::Unit::TestCase + fixtures :suppliers + + # Replace this with your real tests. + def test_truth + assert true + end +end diff --git a/P5B/ruby/mon_projet/test/unit/utilisateur_mailer_test.rb b/P5B/ruby/mon_projet/test/unit/utilisateur_mailer_test.rb new file mode 100644 index 0000000..0aa333d --- /dev/null +++ b/P5B/ruby/mon_projet/test/unit/utilisateur_mailer_test.rb @@ -0,0 +1,31 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'utilisateur_mailer' + +class UtilisateurMailerTest < Test::Unit::TestCase + FIXTURES_PATH = File.dirname(__FILE__) + '/../fixtures' + CHARSET = "utf-8" + + include ActionMailer::Quoting + + def setup + ActionMailer::Base.delivery_method = :test + ActionMailer::Base.perform_deliveries = true + ActionMailer::Base.deliveries = [] + + @expected = TMail::Mail.new + @expected.set_content_type "text", "plain", { "charset" => CHARSET } + end + + def test_dummy_test + #do nothing + end + + private + def read_fixture(action) + IO.readlines("#{FIXTURES_PATH}/utilisateur_mailer/#{action}") + end + + def encode(subject) + quoted_printable(subject, CHARSET) + end +end diff --git a/P5B/ruby/mon_projet/test/unit/utilisateur_test.rb b/P5B/ruby/mon_projet/test/unit/utilisateur_test.rb new file mode 100644 index 0000000..8d27ac0 --- /dev/null +++ b/P5B/ruby/mon_projet/test/unit/utilisateur_test.rb @@ -0,0 +1,101 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class UtilisateurTest < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead. + # Then, you can remove it from this and the functional test. + include AuthenticatedTestHelper + fixtures :utilisateurs + + def test_should_create_utilisateur + assert_difference 'Utilisateur.count' do + utilisateur = create_utilisateur + assert !utilisateur.new_record?, "#{utilisateur.errors.full_messages.to_sentence}" + end + end + + def test_should_require_login + assert_no_difference 'Utilisateur.count' do + u = create_utilisateur(:login => nil) + assert u.errors.on(:login) + end + end + + def test_should_require_password + assert_no_difference 'Utilisateur.count' do + u = create_utilisateur(:password => nil) + assert u.errors.on(:password) + end + end + + def test_should_require_password_confirmation + assert_no_difference 'Utilisateur.count' do + u = create_utilisateur(:password_confirmation => nil) + assert u.errors.on(:password_confirmation) + end + end + + def test_should_require_email + assert_no_difference 'Utilisateur.count' do + u = create_utilisateur(:email => nil) + assert u.errors.on(:email) + end + end + + def test_should_reset_password + utilisateurs(:quentin).update_attributes(:password => 'new password', :password_confirmation => 'new password') + assert_equal utilisateurs(:quentin), Utilisateur.authenticate('quentin', 'new password') + end + + def test_should_not_rehash_password + utilisateurs(:quentin).update_attributes(:login => 'quentin2') + assert_equal utilisateurs(:quentin), Utilisateur.authenticate('quentin2', 'test') + end + + def test_should_authenticate_utilisateur + assert_equal utilisateurs(:quentin), Utilisateur.authenticate('quentin', 'test') + end + + def test_should_set_remember_token + utilisateurs(:quentin).remember_me + assert_not_nil utilisateurs(:quentin).remember_token + assert_not_nil utilisateurs(:quentin).remember_token_expires_at + end + + def test_should_unset_remember_token + utilisateurs(:quentin).remember_me + assert_not_nil utilisateurs(:quentin).remember_token + utilisateurs(:quentin).forget_me + assert_nil utilisateurs(:quentin).remember_token + end + + def test_should_remember_me_for_one_week + before = 1.week.from_now.utc + utilisateurs(:quentin).remember_me_for 1.week + after = 1.week.from_now.utc + assert_not_nil utilisateurs(:quentin).remember_token + assert_not_nil utilisateurs(:quentin).remember_token_expires_at + assert utilisateurs(:quentin).remember_token_expires_at.between?(before, after) + end + + def test_should_remember_me_until_one_week + time = 1.week.from_now.utc + utilisateurs(:quentin).remember_me_until time + assert_not_nil utilisateurs(:quentin).remember_token + assert_not_nil utilisateurs(:quentin).remember_token_expires_at + assert_equal utilisateurs(:quentin).remember_token_expires_at, time + end + + def test_should_remember_me_default_two_weeks + before = 2.weeks.from_now.utc + utilisateurs(:quentin).remember_me + after = 2.weeks.from_now.utc + assert_not_nil utilisateurs(:quentin).remember_token + assert_not_nil utilisateurs(:quentin).remember_token_expires_at + assert utilisateurs(:quentin).remember_token_expires_at.between?(before, after) + end + + protected + def create_utilisateur(options = {}) + Utilisateur.create({ :login => 'quire', :email => 'quire@example.com', :password => 'quire', :password_confirmation => 'quire' }.merge(options)) + end +end diff --git a/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.30cd9247a9ffaa03 b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.30cd9247a9ffaa03 new file mode 100644 index 0000000..4c0380f Binary files /dev/null and b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.30cd9247a9ffaa03 differ diff --git a/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.31170a103a5ab885 b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.31170a103a5ab885 new file mode 100644 index 0000000..082d7a5 Binary files /dev/null and b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.31170a103a5ab885 differ diff --git a/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.4f1d990d4a9cd83e b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.4f1d990d4a9cd83e new file mode 100644 index 0000000..629e5cc Binary files /dev/null and b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.4f1d990d4a9cd83e differ diff --git a/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.572a4b2ee219f7fc b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.572a4b2ee219f7fc new file mode 100644 index 0000000..629e5cc Binary files /dev/null and b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.572a4b2ee219f7fc differ diff --git a/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.a8ada639315fd720 b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.a8ada639315fd720 new file mode 100644 index 0000000..629e5cc Binary files /dev/null and b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.a8ada639315fd720 differ diff --git a/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.d314e2da59ce4df3 b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.d314e2da59ce4df3 new file mode 100644 index 0000000..629e5cc Binary files /dev/null and b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.d314e2da59ce4df3 differ diff --git a/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.d475a7d602f3750f b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.d475a7d602f3750f new file mode 100644 index 0000000..4c0380f Binary files /dev/null and b/P5B/ruby/mon_projet/tmp/sessions/ruby_sess.d475a7d602f3750f differ diff --git a/P5B/ruby/mon_projet/vendor/plugins/mysql_tasks/README b/P5B/ruby/mon_projet/vendor/plugins/mysql_tasks/README new file mode 100644 index 0000000..5e24094 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/mysql_tasks/README @@ -0,0 +1,12 @@ += MysqlTasks + +Some rake tasks to automate common database tasks (create/destroy & backup/restore). + +== Components + +rake db:mysql:create # Create database (using database.yml config) +rake db:mysql:destroy # Destroy database (using database.yml config) +rake db:mysql:backup # Dump schema and data to an SQL file (/db/backup_YYYY_MM_DD.sql) +rake db:mysql:restore # Load schema and data from an SQL file (/db/restore.sql) + +Specifying RAILS_ENV works if you want to perform operations on test or production databases. \ No newline at end of file diff --git a/P5B/ruby/mon_projet/vendor/plugins/mysql_tasks/tasks/mysql_tasks.rake b/P5B/ruby/mon_projet/vendor/plugins/mysql_tasks/tasks/mysql_tasks.rake new file mode 100644 index 0000000..1c4def8 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/mysql_tasks/tasks/mysql_tasks.rake @@ -0,0 +1,59 @@ +namespace :db do + namespace :mysql do + desc "Dump schema and data to an SQL file (/db/backup_YYYY_MM_DD.sql)" + task :backup => :environment do + current_date = Time.now.strftime("%Y_%m_%d") + archive = "#{RAILS_ROOT}/db/backup_#{current_date}.sql" + database, user, password = retrieve_db_info + + cmd = "/usr/bin/env mysqldump --opt --skip-add-locks -u#{user} " + puts cmd + "... [password filtered]" + cmd += " -p'#{password}' " unless password.nil? + cmd += " #{database} > #{archive}" + result = system(cmd) + end + + desc "Load schema and data from an SQL file (/db/restore.sql)" + task :restore => :environment do + archive = "#{RAILS_ROOT}/db/restore.sql" + database, user, password = retrieve_db_info + + cmd = "/usr/bin/env mysql -u #{user} #{database} < #{archive}" + puts cmd + "... [password filtered]" + cmd += " -p'#{password}'" + result = system(cmd) + end + + desc "Create database (using database.yml config)" + task :create => :environment do + database, user, password = retrieve_db_info + + sql = "CREATE DATABASE #{database};" + sql += "GRANT ALL PRIVILEGES ON #{database}.* TO #{user}@localhost IDENTIFIED BY '#{password}';" + mysql_execute(user, password, sql) + end + + desc "Destroy database (using database.yml config)" + task :destroy => :environment do + database, user, password = retrieve_db_info + sql = "DROP DATABASE #{database};" + mysql_execute(user, password, sql) + end + end +end + + private + def retrieve_db_info + result = File.read "#{RAILS_ROOT}/config/database.yml" + result.strip! + config_file = YAML::load(ERB.new(result).result) + return [ + config_file[RAILS_ENV]['database'], + config_file[RAILS_ENV]['username'], + config_file[RAILS_ENV]['password'] + ] + end + + def mysql_execute(username, password, sql) + system("/usr/bin/env mysql -u #{username} -p'#{password}' --execute=\"#{sql}\"") + end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/README b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/README new file mode 100644 index 0000000..75d410d --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/README @@ -0,0 +1,29 @@ +Restful Authentication Generator +==== + +This is a basic restful authentication generator for rails, taken from acts as authenticated. Currently it requires Rails 1.2 (or edge). + +To use: + + ./script/generate authenticated user sessions --include-activation + +The first parameter specifies the model that gets created in signup (typically a user or account model). A model with migration is created, as well as a basic controller with the create method. + +The second parameter specifies the sessions controller name. This is the controller that handles the actual login/logout function on the site. + +The third parameter (--include-activation) generates the code for a ActionMailer and its respective Activation Code through email. + +You can pass --skip-migration to skip the user migration. + +From here, you will need to add the resource routes in config/routes.rb. + + map.resources :users + map.resource :session + +If you're on rails 1.2.3 you may need to specify the controller name for the session singular resource: + + map.resource :session, :controller => 'sessions' + +Also, add an observer to config/environment.rb if you chose the --include-activation option + config.active_record.observers = :user_observer # or whatever you named your model + diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/Rakefile b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/Rakefile new file mode 100644 index 0000000..03e0f37 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/Rakefile @@ -0,0 +1,22 @@ +require 'rake' +require 'rake/testtask' +require 'rake/rdoctask' + +desc 'Default: run unit tests.' +task :default => :test + +desc 'Test the restful_authentication plugin.' +Rake::TestTask.new(:test) do |t| + t.libs << 'lib' + t.pattern = 'test/**/*_test.rb' + t.verbose = true +end + +desc 'Generate documentation for the restful_authentication plugin.' +Rake::RDocTask.new(:rdoc) do |rdoc| + rdoc.rdoc_dir = 'rdoc' + rdoc.title = 'RestfulAuthentication' + rdoc.options << '--line-numbers' << '--inline-source' + rdoc.rdoc_files.include('README') + rdoc.rdoc_files.include('lib/**/*.rb') +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/USAGE b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/USAGE new file mode 100644 index 0000000..72794d7 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/USAGE @@ -0,0 +1 @@ +./script/generate authenticated USERMODEL CONTROLLERNAME \ No newline at end of file diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/authenticated_generator.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/authenticated_generator.rb new file mode 100644 index 0000000..6dc57a0 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/authenticated_generator.rb @@ -0,0 +1,218 @@ +class AuthenticatedGenerator < Rails::Generator::NamedBase + attr_reader :controller_name, + :controller_class_path, + :controller_file_path, + :controller_class_nesting, + :controller_class_nesting_depth, + :controller_class_name, + :controller_singular_name, + :controller_plural_name + alias_method :controller_file_name, :controller_singular_name + alias_method :controller_table_name, :controller_plural_name + attr_reader :model_controller_name, + :model_controller_class_path, + :model_controller_file_path, + :model_controller_class_nesting, + :model_controller_class_nesting_depth, + :model_controller_class_name, + :model_controller_singular_name, + :model_controller_plural_name + alias_method :model_controller_file_name, :model_controller_singular_name + alias_method :model_controller_table_name, :model_controller_plural_name + + def initialize(runtime_args, runtime_options = {}) + super + + @controller_name = args.shift || 'sessions' + @model_controller_name = @name.pluralize + + # sessions controller + base_name, @controller_class_path, @controller_file_path, @controller_class_nesting, @controller_class_nesting_depth = extract_modules(@controller_name) + @controller_class_name_without_nesting, @controller_singular_name, @controller_plural_name = inflect_names(base_name) + + if @controller_class_nesting.empty? + @controller_class_name = @controller_class_name_without_nesting + else + @controller_class_name = "#{@controller_class_nesting}::#{@controller_class_name_without_nesting}" + end + + # model controller + base_name, @model_controller_class_path, @model_controller_file_path, @model_controller_class_nesting, @model_controller_class_nesting_depth = extract_modules(@model_controller_name) + @model_controller_class_name_without_nesting, @model_controller_singular_name, @model_controller_plural_name = inflect_names(base_name) + + if @model_controller_class_nesting.empty? + @model_controller_class_name = @model_controller_class_name_without_nesting + else + @model_controller_class_name = "#{@model_controller_class_nesting}::#{@model_controller_class_name_without_nesting}" + end + end + + def manifest + recorded_session = record do |m| + # Check for class naming collisions. + m.class_collisions controller_class_path, "#{controller_class_name}Controller", # Sessions Controller + "#{controller_class_name}Helper" + m.class_collisions model_controller_class_path, "#{model_controller_class_name}Controller", # Model Controller + "#{model_controller_class_name}Helper" + m.class_collisions class_path, "#{class_name}", "#{class_name}Mailer", "#{class_name}MailerTest", "#{class_name}Observer" + m.class_collisions [], 'AuthenticatedSystem', 'AuthenticatedTestHelper' + + # Controller, helper, views, and test directories. + m.directory File.join('app/models', class_path) + m.directory File.join('app/controllers', controller_class_path) + m.directory File.join('app/controllers', model_controller_class_path) + m.directory File.join('app/helpers', controller_class_path) + m.directory File.join('app/views', controller_class_path, controller_file_name) + m.directory File.join('app/views', class_path, "#{file_name}_mailer") if options[:include_activation] + m.directory File.join('test/functional', controller_class_path) + m.directory File.join('app/controllers', model_controller_class_path) + m.directory File.join('app/helpers', model_controller_class_path) + m.directory File.join('app/views', model_controller_class_path, model_controller_file_name) + m.directory File.join('test/functional', model_controller_class_path) + m.directory File.join('test/unit', class_path) + + m.template 'model.rb', + File.join('app/models', + class_path, + "#{file_name}.rb") + + if options[:include_activation] + %w( mailer observer ).each do |model_type| + m.template "#{model_type}.rb", File.join('app/models', + class_path, + "#{file_name}_#{model_type}.rb") + end + end + + m.template 'controller.rb', + File.join('app/controllers', + controller_class_path, + "#{controller_file_name}_controller.rb") + + m.template 'model_controller.rb', + File.join('app/controllers', + model_controller_class_path, + "#{model_controller_file_name}_controller.rb") + + m.template 'authenticated_system.rb', + File.join('lib', 'authenticated_system.rb') + + m.template 'authenticated_test_helper.rb', + File.join('lib', 'authenticated_test_helper.rb') + + m.template 'functional_test.rb', + File.join('test/functional', + controller_class_path, + "#{controller_file_name}_controller_test.rb") + + m.template 'model_functional_test.rb', + File.join('test/functional', + model_controller_class_path, + "#{model_controller_file_name}_controller_test.rb") + + m.template 'helper.rb', + File.join('app/helpers', + controller_class_path, + "#{controller_file_name}_helper.rb") + + m.template 'model_helper.rb', + File.join('app/helpers', + model_controller_class_path, + "#{model_controller_file_name}_helper.rb") + + m.template 'unit_test.rb', + File.join('test/unit', + class_path, + "#{file_name}_test.rb") + + if options[:include_activation] + m.template 'mailer_test.rb', File.join('test/unit', class_path, "#{file_name}_mailer_test.rb") + end + + m.template 'fixtures.yml', + File.join('test/fixtures', + "#{table_name}.yml") + + # Controller templates + m.template 'login.rhtml', File.join('app/views', controller_class_path, controller_file_name, "new.rhtml") + m.template 'signup.rhtml', File.join('app/views', model_controller_class_path, model_controller_file_name, "new.rhtml") + + if options[:include_activation] + # Mailer templates + %w( activation signup_notification ).each do |action| + m.template "#{action}.rhtml", + File.join('app/views', "#{file_name}_mailer", "#{action}.rhtml") + end + end + + unless options[:skip_migration] + m.migration_template 'migration.rb', 'db/migrate', :assigns => { + :migration_name => "Create#{class_name.pluralize.gsub(/::/, '')}" + }, :migration_file_name => "create_#{file_path.gsub(/\//, '_').pluralize}" + end + end + + action = nil + action = $0.split("/")[1] + case action + when "generate" + puts + puts ("-" * 70) + puts "Don't forget to:" + puts + puts " - add restful routes in config/routes.rb" + puts " map.resources :#{model_controller_file_name}" + puts " map.resource :#{controller_singular_name.singularize}" + puts + puts " Rails 1.2.3 may need a :controller option for the singular resource:" + puts " - map.resource :#{controller_singular_name.singularize}, :controller => '#{controller_file_name}'" + puts + if options[:include_activation] + puts " map.activate '/activate/:activation_code', :controller => '#{model_controller_file_name}', :action => 'activate'" + puts + puts " - add an observer to config/environment.rb" + puts " config.active_record.observers = :#{file_name}_observer" + end + puts + puts "Try these for some familiar login URLs if you like:" + puts + puts " map.signup '/signup', :controller => '#{model_controller_file_name}', :action => 'new'" + puts " map.login '/login', :controller => '#{controller_file_name}', :action => 'new'" + puts " map.logout '/logout', :controller => '#{controller_file_name}', :action => 'destroy'" + puts + puts ("-" * 70) + puts + when "destroy" + puts + puts ("-" * 70) + puts + puts "Thanks for using restful_authentication" + puts + puts "Don't forget to comment out the observer line in environment.rb" + puts " (This was optional so it may not even be there)" + puts " # config.active_record.observers = :#{file_name}_observer" + puts + puts ("-" * 70) + puts + else + puts + end + + recorded_session + end + + protected + # Override with your own usage banner. + def banner + "Usage: #{$0} authenticated ModelName [ControllerName]" + end + + def add_options!(opt) + opt.separator '' + opt.separator 'Options:' + opt.on("--skip-migration", + "Don't generate a migration file for this model") { |v| options[:skip_migration] = v } + opt.on("--include-activation", + "Generate signup 'activation code' confirmation via email") { |v| options[:include_activation] = v } + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/activation.rhtml b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/activation.rhtml new file mode 100644 index 0000000..2258e1f --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/activation.rhtml @@ -0,0 +1,3 @@ +<%%= @<%= file_name %>.login %>, your account has been activated. You may now start adding your plugins: + + <%%= @url %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_system.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_system.rb new file mode 100644 index 0000000..62b684d --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_system.rb @@ -0,0 +1,127 @@ +module AuthenticatedSystem + protected + # Returns true or false if the user is logged in. + # Preloads @current_<%= file_name %> with the user model if they're logged in. + def logged_in? + current_<%= file_name %> != :false + end + + # Accesses the current <%= file_name %> from the session. Set it to :false if login fails + # so that future calls do not hit the database. + def current_<%= file_name %> + @current_user ||= (login_from_session || login_from_basic_auth || login_from_cookie || :false) + end + + # Store the given <%= file_name %> in the session. + def current_<%= file_name %>=(new_<%= file_name %>) + session[:<%= file_name %>] = (new_<%= file_name %>.nil? || new_<%= file_name %>.is_a?(Symbol)) ? nil : new_<%= file_name %>.id + @current_<%= file_name %> = new_<%= file_name %> + end + + # Check if the <%= file_name %> is authorized + # + # Override this method in your controllers if you want to restrict access + # to only a few actions or if you want to check if the <%= file_name %> + # has the correct rights. + # + # Example: + # + # # only allow nonbobs + # def authorized? + # current_<%= file_name %>.login != "bob" + # end + def authorized? + logged_in? + end + + # Filter method to enforce a login requirement. + # + # To require logins for all actions, use this in your controllers: + # + # before_filter :login_required + # + # To require logins for specific actions, use this in your controllers: + # + # before_filter :login_required, :only => [ :edit, :update ] + # + # To skip this in a subclassed controller: + # + # skip_before_filter :login_required + # + def login_required + authorized? || access_denied + end + + # Redirect as appropriate when an access request fails. + # + # The default action is to redirect to the login screen. + # + # Override this method in your controllers if you want to have special + # behavior in case the <%= file_name %> is not authorized + # to access the requested action. For example, a popup window might + # simply close itself. + def access_denied + respond_to do |accepts| + accepts.html do + store_location + redirect_to :controller => '/<%= controller_file_name %>', :action => 'new' + end + accepts.xml do + headers["Status"] = "Unauthorized" + headers["WWW-Authenticate"] = %(Basic realm="Web Password") + render :text => "Could't authenticate you", :status => '401 Unauthorized' + end + end + false + end + + # Store the URI of the current request in the session. + # + # We can return to this location by calling #redirect_back_or_default. + def store_location + session[:return_to] = request.request_uri + end + + # Redirect to the URI stored by the most recent store_location call or + # to the passed default. + def redirect_back_or_default(default) + session[:return_to] ? redirect_to_url(session[:return_to]) : redirect_to(default) + session[:return_to] = nil + end + + # Inclusion hook to make #current_<%= file_name %> and #logged_in? + # available as ActionView helper methods. + def self.included(base) + base.send :helper_method, :current_<%= file_name %>, :logged_in? + end + + # Called from #current_user. First attempt to login by the user id stored in the session. + def login_from_session + self.current_<%= file_name %> = <%= class_name %>.find_by_id(session[:<%= file_name %>]) if session[:<%= file_name %>] + end + + # Called from #current_user. Now, attempt to login by basic authentication information. + def login_from_basic_auth + username, passwd = get_auth_data + self.current_<%= file_name %> = <%= class_name %>.authenticate(username, passwd) if username && passwd + end + + # Called from #current_user. Finaly, attempt to login by an expiring token in the cookie. + def login_from_cookie + <%= file_name %> = cookies[:auth_token] && <%= class_name %>.find_by_remember_token(cookies[:auth_token]) + if <%= file_name %> && <%= file_name %>.remember_token? + <%= file_name %>.remember_me + cookies[:auth_token] = { :value => <%= file_name %>.remember_token, :expires => <%= file_name %>.remember_token_expires_at } + self.current_<%= file_name %> = <%= file_name %> + end + end + + private + @@http_auth_headers = %w(X-HTTP_AUTHORIZATION HTTP_AUTHORIZATION Authorization) + # gets BASIC auth info + def get_auth_data + auth_key = @@http_auth_headers.detect { |h| request.env.has_key?(h) } + auth_data = request.env[auth_key].to_s.split unless auth_key.blank? + return auth_data && auth_data[0] == 'Basic' ? Base64.decode64(auth_data[1]).split(':')[0..1] : [nil, nil] + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_test_helper.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_test_helper.rb new file mode 100644 index 0000000..a814224 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/authenticated_test_helper.rb @@ -0,0 +1,26 @@ +module AuthenticatedTestHelper + # Sets the current <%= file_name %> in the session from the <%= file_name %> fixtures. + def login_as(<%= file_name %>) + @request.session[:<%= file_name %>] = <%= file_name %> ? <%= table_name %>(<%= file_name %>).id : nil + end + + def authorize_as(user) + @request.env["HTTP_AUTHORIZATION"] = user ? "Basic #{Base64.encode64("#{users(user).login}:test")}" : nil + end + + # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3 + def assert_difference(expressions, difference = 1, message = nil, &block) + expression_evaluations = [expressions].flatten.collect{|expression| lambda { eval(expression, block.binding) } } + + original_values = expression_evaluations.inject([]) { |memo, expression| memo << expression.call } + yield + expression_evaluations.each_with_index do |expression, i| + assert_equal original_values[i] + difference, expression.call, message + end + end + + # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3 + def assert_no_difference(expressions, message = nil, &block) + assert_difference expressions, 0, message, &block + end +end \ No newline at end of file diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/controller.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/controller.rb new file mode 100644 index 0000000..50f8dc5 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/controller.rb @@ -0,0 +1,31 @@ +# This controller handles the login/logout function of the site. +class <%= controller_class_name %>Controller < ApplicationController + # Be sure to include AuthenticationSystem in Application Controller instead + include AuthenticatedSystem + + # render new.rhtml + def new + end + + def create + self.current_<%= file_name %> = <%= class_name %>.authenticate(params[:login], params[:password]) + if logged_in? + if params[:remember_me] == "1" + self.current_<%= file_name %>.remember_me + cookies[:auth_token] = { :value => self.current_<%= file_name %>.remember_token , :expires => self.current_<%= file_name %>.remember_token_expires_at } + end + redirect_back_or_default('/') + flash[:notice] = "Logged in successfully" + else + render :action => 'new' + end + end + + def destroy + self.current_<%= file_name %>.forget_me if logged_in? + cookies.delete :auth_token + reset_session + flash[:notice] = "You have been logged out." + redirect_back_or_default('/') + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/fixtures.yml b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/fixtures.yml new file mode 100644 index 0000000..9c4ae10 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/fixtures.yml @@ -0,0 +1,17 @@ +quentin: + id: 1 + login: quentin + email: quentin@example.com + salt: 7e3041ebc2fc05a40c60028e2c4901a81035d3cd + crypted_password: 00742970dc9e6319f8019fd54864d3ea740f04b1 # test + created_at: <%%= 5.days.ago.to_s :db %> +<% if options[:include_activation] %> activation_code: 8f24789ae988411ccf33ab0c30fe9106fab32e9b <% end %> +<% if options[:include_activation] %> activated_at: <%%= 5.days.ago.to_s :db %> <% end %> +aaron: + id: 2 + login: aaron + email: aaron@example.com + salt: 7e3041ebc2fc05a40c60028e2c4901a81035d3cd + crypted_password: 00742970dc9e6319f8019fd54864d3ea740f04b1 # test + created_at: <%%= 1.days.ago.to_s :db %> +<% if options[:include_activation] %> activation_code: 8f24789ae988411ccf33ab0c30fe9106fab32e9a <% end %> diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/functional_test.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/functional_test.rb new file mode 100644 index 0000000..cf46554 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/functional_test.rb @@ -0,0 +1,85 @@ +require File.dirname(__FILE__) + '/../test_helper' +require '<%= controller_file_name %>_controller' + +# Re-raise errors caught by the controller. +class <%= controller_class_name %>Controller; def rescue_action(e) raise e end; end + +class <%= controller_class_name %>ControllerTest < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead + # Then, you can remove it from this and the units test. + include AuthenticatedTestHelper + + fixtures :<%= table_name %> + + def setup + @controller = <%= controller_class_name %>Controller.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_login_and_redirect + post :create, :login => 'quentin', :password => 'test' + assert session[:<%= file_name %>] + assert_response :redirect + end + + def test_should_fail_login_and_not_redirect + post :create, :login => 'quentin', :password => 'bad password' + assert_nil session[:<%= file_name %>] + assert_response :success + end + + def test_should_logout + login_as :quentin + get :destroy + assert_nil session[:<%= file_name %>] + assert_response :redirect + end + + def test_should_remember_me + post :create, :login => 'quentin', :password => 'test', :remember_me => "1" + assert_not_nil @response.cookies["auth_token"] + end + + def test_should_not_remember_me + post :create, :login => 'quentin', :password => 'test', :remember_me => "0" + assert_nil @response.cookies["auth_token"] + end + + def test_should_delete_token_on_logout + login_as :quentin + get :destroy + assert_equal @response.cookies["auth_token"], [] + end + + def test_should_login_with_cookie + <%= table_name %>(:quentin).remember_me + @request.cookies["auth_token"] = cookie_for(:quentin) + get :new + assert @controller.send(:logged_in?) + end + + def test_should_fail_expired_cookie_login + <%= table_name %>(:quentin).remember_me + <%= table_name %>(:quentin).update_attribute :remember_token_expires_at, 5.minutes.ago + @request.cookies["auth_token"] = cookie_for(:quentin) + get :new + assert !@controller.send(:logged_in?) + end + + def test_should_fail_cookie_login + <%= table_name %>(:quentin).remember_me + @request.cookies["auth_token"] = auth_token('invalid_auth_token') + get :new + assert !@controller.send(:logged_in?) + end + + protected + def auth_token(token) + CGI::Cookie.new('name' => 'auth_token', 'value' => token) + end + + def cookie_for(<%= file_name %>) + auth_token <%= table_name %>(<%= file_name %>).remember_token + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/helper.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/helper.rb new file mode 100644 index 0000000..ed5759e --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/helper.rb @@ -0,0 +1,2 @@ +module <%= controller_class_name %>Helper +end \ No newline at end of file diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/login.rhtml b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/login.rhtml new file mode 100644 index 0000000..452a5d5 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/login.rhtml @@ -0,0 +1,14 @@ +<%% form_tag <%= controller_singular_name.singularize %>_path do -%> +


    +<%%= text_field_tag 'login' %>

    + +


    +<%%= password_field_tag 'password' %>

    + + + +

    <%%= submit_tag 'Log in' %>

    +<%% end -%> diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer.rb new file mode 100644 index 0000000..f6e092b --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer.rb @@ -0,0 +1,25 @@ +class <%= class_name %>Mailer < ActionMailer::Base + def signup_notification(<%= file_name %>) + setup_email(<%= file_name %>) + @subject += 'Please activate your new account' + <% if options[:include_activation] %> + @body[:url] = "http://YOURSITE/activate/#{<%= file_name %>.activation_code}" + <% else %> + @body[:url] = "http://YOURSITE/login/" <% end %> + end + + def activation(<%= file_name %>) + setup_email(<%= file_name %>) + @subject += 'Your account has been activated!' + @body[:url] = "http://YOURSITE/" + end + + protected + def setup_email(<%= file_name %>) + @recipients = "#{<%= file_name %>.email}" + @from = "ADMINEMAIL" + @subject = "[YOURSITE] " + @sent_on = Time.now + @body[:<%= file_name %>] = <%= file_name %> + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer_test.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer_test.rb new file mode 100644 index 0000000..c3f3dfb --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/mailer_test.rb @@ -0,0 +1,31 @@ +require File.dirname(__FILE__) + '/../test_helper' +require '<%= file_name %>_mailer' + +class <%= class_name %>MailerTest < Test::Unit::TestCase + FIXTURES_PATH = File.dirname(__FILE__) + '/../fixtures' + CHARSET = "utf-8" + + include ActionMailer::Quoting + + def setup + ActionMailer::Base.delivery_method = :test + ActionMailer::Base.perform_deliveries = true + ActionMailer::Base.deliveries = [] + + @expected = TMail::Mail.new + @expected.set_content_type "text", "plain", { "charset" => CHARSET } + end + + def test_dummy_test + #do nothing + end + + private + def read_fixture(action) + IO.readlines("#{FIXTURES_PATH}/<%= file_name %>_mailer/#{action}") + end + + def encode(subject) + quoted_printable(subject, CHARSET) + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/migration.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/migration.rb new file mode 100644 index 0000000..239baf7 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/migration.rb @@ -0,0 +1,21 @@ +class <%= migration_name %> < ActiveRecord::Migration + def self.up + create_table "<%= table_name %>", :force => true do |t| + t.column :login, :string + t.column :email, :string + t.column :crypted_password, :string, :limit => 40 + t.column :salt, :string, :limit => 40 + t.column :created_at, :datetime + t.column :updated_at, :datetime + t.column :remember_token, :string + t.column :remember_token_expires_at, :datetime + <% if options[:include_activation] %> + t.column :activation_code, :string, :limit => 40 + t.column :activated_at, :datetime<% end %> + end + end + + def self.down + drop_table "<%= table_name %>" + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model.rb new file mode 100644 index 0000000..7f3f9e7 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model.rb @@ -0,0 +1,98 @@ +require 'digest/sha1' +class <%= class_name %> < ActiveRecord::Base + # Virtual attribute for the unencrypted password + attr_accessor :password + + validates_presence_of :login, :email + validates_presence_of :password, :if => :password_required? + validates_presence_of :password_confirmation, :if => :password_required? + validates_length_of :password, :within => 4..40, :if => :password_required? + validates_confirmation_of :password, :if => :password_required? + validates_length_of :login, :within => 3..40 + validates_length_of :email, :within => 3..100 + validates_uniqueness_of :login, :email, :case_sensitive => false + before_save :encrypt_password + <% if options[:include_activation] %>before_create :make_activation_code <% end %> + # prevents a user from submitting a crafted form that bypasses activation + # anything else you want your user to change should be added here. + attr_accessible :login, :email, :password, :password_confirmation + <% if options[:include_activation] %> + # Activates the user in the database. + def activate + @activated = true + self.activated_at = Time.now.utc + self.activation_code = nil + save(false) + end + + def activated? + # the existence of an activation code means they have not activated yet + activation_code.nil? + end + + # Returns true if the user has just been activated. + def recently_activated? + @activated + end +<% end %> + # Authenticates a user by their login name and unencrypted password. Returns the user or nil. + def self.authenticate(login, password) + u = <% if options[:include_activation] %>find :first, :conditions => ['login = ? and activated_at IS NOT NULL', login]<% else %>find_by_login(login)<% end %> # need to get the salt + u && u.authenticated?(password) ? u : nil + end + + # Encrypts some data with the salt. + def self.encrypt(password, salt) + Digest::SHA1.hexdigest("--#{salt}--#{password}--") + end + + # Encrypts the password with the user salt + def encrypt(password) + self.class.encrypt(password, salt) + end + + def authenticated?(password) + crypted_password == encrypt(password) + end + + def remember_token? + remember_token_expires_at && Time.now.utc < remember_token_expires_at + end + + # These create and unset the fields required for remembering users between browser closes + def remember_me + remember_me_for 2.weeks + end + + def remember_me_for(time) + remember_me_until time.from_now.utc + end + + def remember_me_until(time) + self.remember_token_expires_at = time + self.remember_token = encrypt("#{email}--#{remember_token_expires_at}") + save(false) + end + + def forget_me + self.remember_token_expires_at = nil + self.remember_token = nil + save(false) + end + + protected + # before filter + def encrypt_password + return if password.blank? + self.salt = Digest::SHA1.hexdigest("--#{Time.now.to_s}--#{login}--") if new_record? + self.crypted_password = encrypt(password) + end + + def password_required? + crypted_password.blank? || !password.blank? + end + <% if options[:include_activation] %> + def make_activation_code + self.activation_code = Digest::SHA1.hexdigest( Time.now.to_s.split(//).sort_by {rand}.join ) + end <% end %> +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model_controller.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model_controller.rb new file mode 100644 index 0000000..c4e8d77 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model_controller.rb @@ -0,0 +1,30 @@ +class <%= model_controller_class_name %>Controller < ApplicationController + # Be sure to include AuthenticationSystem in Application Controller instead + include AuthenticatedSystem + + # render new.rhtml + def new + end + + def create + cookies.delete :auth_token + reset_session + @<%= file_name %> = <%= class_name %>.new(params[:<%= file_name %>]) + @<%= file_name %>.save! + self.current_<%= file_name %> = @<%= file_name %> + redirect_back_or_default('/') + flash[:notice] = "Thanks for signing up!" + rescue ActiveRecord::RecordInvalid + render :action => 'new' + end +<% if options[:include_activation] %> + def activate + self.current_<%= file_name %> = params[:activation_code].blank? ? :false : <%= class_name %>.find_by_activation_code(params[:activation_code]) + if logged_in? && !current_<%= file_name %>.activated? + current_<%= file_name %>.activate + flash[:notice] = "Signup complete!" + end + redirect_back_or_default('/') + end +<% end %> +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model_functional_test.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model_functional_test.rb new file mode 100644 index 0000000..29165ae --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model_functional_test.rb @@ -0,0 +1,86 @@ +require File.dirname(__FILE__) + '/../test_helper' +require '<%= model_controller_file_name %>_controller' + +# Re-raise errors caught by the controller. +class <%= model_controller_class_name %>Controller; def rescue_action(e) raise e end; end + +class <%= model_controller_class_name %>ControllerTest < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead + # Then, you can remove it from this and the units test. + include AuthenticatedTestHelper + + fixtures :<%= table_name %> + + def setup + @controller = <%= model_controller_class_name %>Controller.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_should_allow_signup + assert_difference '<%= class_name %>.count' do + create_<%= file_name %> + assert_response :redirect + end + end + + def test_should_require_login_on_signup + assert_no_difference '<%= class_name %>.count' do + create_<%= file_name %>(:login => nil) + assert assigns(:<%= file_name %>).errors.on(:login) + assert_response :success + end + end + + def test_should_require_password_on_signup + assert_no_difference '<%= class_name %>.count' do + create_<%= file_name %>(:password => nil) + assert assigns(:<%= file_name %>).errors.on(:password) + assert_response :success + end + end + + def test_should_require_password_confirmation_on_signup + assert_no_difference '<%= class_name %>.count' do + create_<%= file_name %>(:password_confirmation => nil) + assert assigns(:<%= file_name %>).errors.on(:password_confirmation) + assert_response :success + end + end + + def test_should_require_email_on_signup + assert_no_difference '<%= class_name %>.count' do + create_<%= file_name %>(:email => nil) + assert assigns(:<%= file_name %>).errors.on(:email) + assert_response :success + end + end + <% if options[:include_activation] %> + def test_should_activate_user + assert_nil <%= class_name %>.authenticate('aaron', 'test') + get :activate, :activation_code => <%= table_name %>(:aaron).activation_code + assert_redirected_to '/' + assert_not_nil flash[:notice] + assert_equal <%= table_name %>(:aaron), <%= class_name %>.authenticate('aaron', 'test') + end + + def test_should_not_activate_user_without_key + get :activate + assert_nil flash[:notice] + rescue ActionController::RoutingError + # in the event your routes deny this, we'll just bow out gracefully. + end + + def test_should_not_activate_user_with_blank_key + get :activate, :activation_code => '' + assert_nil flash[:notice] + rescue ActionController::RoutingError + # well played, sir + end<% end %> + + protected + def create_<%= file_name %>(options = {}) + post :create, :<%= file_name %> => { :login => 'quire', :email => 'quire@example.com', + :password => 'quire', :password_confirmation => 'quire' }.merge(options) + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model_helper.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model_helper.rb new file mode 100644 index 0000000..722ad3c --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/model_helper.rb @@ -0,0 +1,2 @@ +module <%= model_controller_class_name %>Helper +end \ No newline at end of file diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/observer.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/observer.rb new file mode 100644 index 0000000..bbf6f5e --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/observer.rb @@ -0,0 +1,11 @@ +class <%= class_name %>Observer < ActiveRecord::Observer + def after_create(<%= file_name %>) + <%= class_name %>Mailer.deliver_signup_notification(<%= file_name %>) + end + + def after_save(<%= file_name %>) + <% if options[:include_activation] %> + <%= class_name %>Mailer.deliver_activation(<%= file_name %>) if <%= file_name %>.recently_activated? + <% end %> + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/signup.rhtml b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/signup.rhtml new file mode 100644 index 0000000..66b8269 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/signup.rhtml @@ -0,0 +1,16 @@ +<%%= error_messages_for :<%= file_name %> %> +<%% form_for :<%= file_name %>, :url => <%= table_name %>_path do |f| -%> +


    +<%%= f.text_field :login %>

    + +


    +<%%= f.text_field :email %>

    + +


    +<%%= f.password_field :password %>

    + +


    +<%%= f.password_field :password_confirmation %>

    + +

    <%%= submit_tag 'Sign up' %>

    +<%% end -%> diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/signup_notification.rhtml b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/signup_notification.rhtml new file mode 100644 index 0000000..6b0d675 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/signup_notification.rhtml @@ -0,0 +1,8 @@ +Your account has been created. + + Username: <%%= @<%= file_name %>.login %> + Password: <%%= @<%= file_name %>.password %> + +Visit this url to activate your account: + + <%%= @url %> \ No newline at end of file diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/unit_test.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/unit_test.rb new file mode 100644 index 0000000..ecaa440 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/generators/authenticated/templates/unit_test.rb @@ -0,0 +1,101 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class <%= class_name %>Test < Test::Unit::TestCase + # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead. + # Then, you can remove it from this and the functional test. + include AuthenticatedTestHelper + fixtures :<%= table_name %> + + def test_should_create_<%= file_name %> + assert_difference '<%= class_name %>.count' do + <%= file_name %> = create_<%= file_name %> + assert !<%= file_name %>.new_record?, "#{<%= file_name %>.errors.full_messages.to_sentence}" + end + end + + def test_should_require_login + assert_no_difference '<%= class_name %>.count' do + u = create_<%= file_name %>(:login => nil) + assert u.errors.on(:login) + end + end + + def test_should_require_password + assert_no_difference '<%= class_name %>.count' do + u = create_<%= file_name %>(:password => nil) + assert u.errors.on(:password) + end + end + + def test_should_require_password_confirmation + assert_no_difference '<%= class_name %>.count' do + u = create_<%= file_name %>(:password_confirmation => nil) + assert u.errors.on(:password_confirmation) + end + end + + def test_should_require_email + assert_no_difference '<%= class_name %>.count' do + u = create_<%= file_name %>(:email => nil) + assert u.errors.on(:email) + end + end + + def test_should_reset_password + <%= table_name %>(:quentin).update_attributes(:password => 'new password', :password_confirmation => 'new password') + assert_equal <%= table_name %>(:quentin), <%= class_name %>.authenticate('quentin', 'new password') + end + + def test_should_not_rehash_password + <%= table_name %>(:quentin).update_attributes(:login => 'quentin2') + assert_equal <%= table_name %>(:quentin), <%= class_name %>.authenticate('quentin2', 'test') + end + + def test_should_authenticate_<%= file_name %> + assert_equal <%= table_name %>(:quentin), <%= class_name %>.authenticate('quentin', 'test') + end + + def test_should_set_remember_token + <%= table_name %>(:quentin).remember_me + assert_not_nil <%= table_name %>(:quentin).remember_token + assert_not_nil <%= table_name %>(:quentin).remember_token_expires_at + end + + def test_should_unset_remember_token + <%= table_name %>(:quentin).remember_me + assert_not_nil <%= table_name %>(:quentin).remember_token + <%= table_name %>(:quentin).forget_me + assert_nil <%= table_name %>(:quentin).remember_token + end + + def test_should_remember_me_for_one_week + before = 1.week.from_now.utc + <%= table_name %>(:quentin).remember_me_for 1.week + after = 1.week.from_now.utc + assert_not_nil <%= table_name %>(:quentin).remember_token + assert_not_nil <%= table_name %>(:quentin).remember_token_expires_at + assert <%= table_name %>(:quentin).remember_token_expires_at.between?(before, after) + end + + def test_should_remember_me_until_one_week + time = 1.week.from_now.utc + <%= table_name %>(:quentin).remember_me_until time + assert_not_nil <%= table_name %>(:quentin).remember_token + assert_not_nil <%= table_name %>(:quentin).remember_token_expires_at + assert_equal <%= table_name %>(:quentin).remember_token_expires_at, time + end + + def test_should_remember_me_default_two_weeks + before = 2.weeks.from_now.utc + <%= table_name %>(:quentin).remember_me + after = 2.weeks.from_now.utc + assert_not_nil <%= table_name %>(:quentin).remember_token + assert_not_nil <%= table_name %>(:quentin).remember_token_expires_at + assert <%= table_name %>(:quentin).remember_token_expires_at.between?(before, after) + end + + protected + def create_<%= file_name %>(options = {}) + <%= class_name %>.create({ :login => 'quire', :email => 'quire@example.com', :password => 'quire', :password_confirmation => 'quire' }.merge(options)) + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/install.rb b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/install.rb new file mode 100644 index 0000000..a63be40 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/restful_authentication/install.rb @@ -0,0 +1 @@ +puts IO.read(File.join(File.dirname(__FILE__), 'README')) \ No newline at end of file diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/LICENSE b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/LICENSE new file mode 100644 index 0000000..96a48cb --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/LICENSE @@ -0,0 +1,18 @@ +Copyright (c) 2007 PJ Hyett and Mislav Marohnić + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/README b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/README new file mode 100644 index 0000000..24bda40 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/README @@ -0,0 +1,119 @@ += WillPaginate + +Pagination is just limiting the number of records displayed. Why should you let +it get in your way while doing more important tasks on your project? This +plugin makes magic happen. Ever wanted to be able to do just this: + + Post.paginate :page => 1 + +... and then render the page links with a single call to a view helper? Well, +now you can. Simply: + + script/plugin install svn://errtheblog.com/svn/plugins/will_paginate + +Ryan Bates made an awesome screencast[http://railscasts.com/episodes/51], check +it out. + + +== Example usage: + +Use a paginate finder in the controller: + + @posts = Post.paginate_by_board_id @board.id, :page => params[:page] + +Yeah, +paginate+ works just like +find+ -- it just doesn't fetch all the +records. Don't forget to tell it which page you want, or it will complain! +Read more on WillPaginate::Finder::ClassMethods. + +Render the posts in your view like you would normally do. When you need to render +pagination, just stick this in: + + <%= will_paginate @posts %> + +You're done. (Copy and paste the example fancy CSS styles from the bottom.) You +can find the option list at WillPaginate::ViewHelpers. + +How does it know how much items to fetch per page? It asks your model by calling ++Post.per_page+. You can define it like this: + + class Post < ActiveRecord::Base + cattr_reader :per_page + @@per_page = 50 + end + +... or like this: + + class Post < ActiveRecord::Base + def self.per_page + 50 + end + end + +... or don't worry about it at all. (WillPaginate defines it to be 30 if missing.) +You can also specify the count explicitly when calling +paginate+: + + @posts = Post.paginate :page => params[:page], :per_page => 50 + +The +paginate+ finder wraps the original finder and returns your resultset that now has +some new properties. You can use the collection as you would with any ActiveRecord +resultset, but WillPaginate view helpers also need that object to be able to render pagination: + +
      + <% for post in @posts -%> +
    1. Render `post` in some nice way.
    2. + <% end -%> +
    + +

    Now let's render us some pagination!

    + <%= will_paginate @posts %> + + +== Authors, credits, contact! + +REPORT BUGS on Lighthouse: http://err.lighthouseapp.com/projects/466-plugins/overview + +BROWSE SOURCE on Warehouse: http://plugins.require.errtheblog.com/browser/will_paginate + +Want to discuss, request features, ask questions? Join the Google group: +http://groups.google.com/group/will_paginate + + Ruby port by: PJ Hyett, Mislav Marohnić (Sulien) + Original announcement: http://errtheblog.com/post/929 + Original PHP source: http://www.strangerstudios.com/sandbox/pagination/diggstyle.php + Contributors: Chris Wanstrath, Dr. Nic Williams, K. Adam Christensen, + Mike Garey, Bence Golda, Matt Aimonetti, Charles Brian Quinn, + Desi McAdam, James Coglan, Matijs van Zuijlen + +== Want Digg style? + +Copy the following css into your stylesheet for a good start: + + .pagination { + padding: 3px; + margin: 3px; + } + .pagination a { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #aaaadd; + text-decoration: none; + color: #000099; + } + .pagination a:hover, .pagination a:active { + border: 1px solid #000099; + color: #000; + } + .pagination span.current { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #000099; + font-weight: bold; + background-color: #000099; + color: #FFF; + } + .pagination span.disabled { + padding: 2px 5px 2px 5px; + margin: 2px; + border: 1px solid #eee; + color: #ddd; + } diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/Rakefile b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/Rakefile new file mode 100644 index 0000000..9a81ef5 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/Rakefile @@ -0,0 +1,26 @@ +require 'rake' +require 'rake/testtask' +require 'rake/rdoctask' + +desc 'Default: run unit tests.' +task :default => :test + +desc 'Test the will_paginate plugin.' +Rake::TestTask.new(:test) do |t| + t.pattern = 'test/**/*_test.rb' + t.verbose = true +end + +desc 'Generate RDoc documentation for the will_paginate plugin.' +Rake::RDocTask.new(:rdoc) do |rdoc| + files = ['README', 'LICENSE', 'lib/**/*.rb'] + rdoc.rdoc_files.add(files) + rdoc.main = "README" # page to start on + rdoc.title = "will_paginate" + + templates = %w[/Users/chris/ruby/projects/err/rock/template.rb /var/www/rock/template.rb] + rdoc.template = templates.find { |t| File.exists? t } + + rdoc.rdoc_dir = 'doc' # rdoc output folder + rdoc.options << '--inline-source' +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/init.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/init.rb new file mode 100644 index 0000000..9a774d1 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/init.rb @@ -0,0 +1,4 @@ +unless ActiveRecord::Base.respond_to? :paginate + require 'will_paginate' + WillPaginate.enable +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate.rb new file mode 100644 index 0000000..74e69c1 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate.rb @@ -0,0 +1,57 @@ +require 'active_support' + +# = You *will* paginate! +# +# First read about WillPaginate::Finder::ClassMethods, then see +# WillPaginate::ViewHelpers. The magical array you're handling in-between is +# WillPaginate::Collection. +# +# Happy paginating! +module WillPaginate + class << self + def enable + enable_actionpack + enable_activerecord + end + + def enable_actionpack + return if ActionView::Base.instance_methods.include? 'will_paginate' + require 'will_paginate/view_helpers' + ActionView::Base.class_eval { include ViewHelpers } + end + + def enable_activerecord + return if ActiveRecord::Base.respond_to? :paginate + require 'will_paginate/finder' + ActiveRecord::Base.class_eval { include Finder } + + associations = ActiveRecord::Associations + collection = associations::AssociationCollection + + # to support paginating finders on associations, we have to mix in the + # method_missing magic from WillPaginate::Finder::ClassMethods to AssociationProxy + # subclasses, but in a different way for Rails 1.2.x and 2.0 + (collection.instance_methods.include?(:create!) ? + collection : collection.subclasses.map(&:constantize) + ).push(associations::HasManyThroughAssociation).each do |klass| + klass.class_eval do + include Finder::ClassMethods + alias_method_chain :method_missing, :paginate + end + end + end + end + + module Deprecation + extend ActiveSupport::Deprecation + + def self.warn(message, callstack = caller) + message = 'WillPaginate: ' + message.strip.gsub(/ {3,}/, ' ') + behavior.call(message, callstack) if behavior && !silenced? + end + + def self.silenced? + ActiveSupport::Deprecation.silenced? + end + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/collection.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/collection.rb new file mode 100644 index 0000000..d435a5f --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/collection.rb @@ -0,0 +1,113 @@ +module WillPaginate + # Arrays returned from paginating finds are, in fact, instances of this. + # You may think of WillPaginate::Collection as an ordinary array with some + # extra properties. Those properties are used by view helpers to generate + # correct page links. + # + # WillPaginate::Collection also assists in rolling out your own pagination + # solutions: see +create+. + # + class Collection < Array + attr_reader :current_page, :per_page, :total_entries + + # Arguments to this constructor are the current page number, per-page limit + # and the total number of entries. The last argument is optional because it + # is best to do lazy counting; in other words, count *conditionally* after + # populating the collection using the +replace+ method. + # + def initialize(page, per_page, total = nil) + @current_page = page.to_i + @per_page = per_page.to_i + + self.total_entries = total if total + end + + # Just like +new+, but yields the object after instantiation and returns it + # afterwards. This is very useful for manual pagination: + # + # @entries = WillPaginate::Collection.create(1, 10) do |pager| + # result = Post.find(:all, :limit => pager.per_page, :offset => pager.offset) + # # inject the result array into the paginated collection: + # pager.replace(result) + # + # unless pager.total_entries + # # the pager didn't manage to guess the total count, do it manually + # pager.total_entries = Post.count + # end + # end + # + # The possibilities with this are endless. For another example, here is how + # WillPaginate defines pagination on Array instances: + # + # Array.class_eval do + # def paginate(page = 1, per_page = 15) + # WillPaginate::Collection.create(page, per_page, size) do |pager| + # pager.replace self[pager.offset, pager.per_page].to_a + # end + # end + # end + # + def self.create(page, per_page, total = nil, &block) + pager = new(page, per_page, total) + yield pager + pager + end + + # The total number of pages. + def page_count + @total_pages + end + + # Helper method that is true when someone tries to fetch a page with a larger + # number than the last page or with a number smaller than 1 + def out_of_bounds? + current_page > page_count or current_page < 1 + end + + # Current offset of the paginated collection. If we're on the first page, + # it is always 0. If we're on the 2nd page and there are 30 entries per page, + # the offset is 30. This property is useful if you want to render ordinals + # besides your records: simply start with offset + 1. + # + def offset + (current_page - 1) * per_page + end + + # current_page - 1 or nil if there is no previous page + def previous_page + current_page > 1 ? (current_page - 1) : nil + end + + # current_page + 1 or nil if there is no next page + def next_page + current_page < page_count ? (current_page + 1) : nil + end + + def total_entries=(number) + @total_entries = number.to_i + @total_pages = (@total_entries / per_page.to_f).ceil + end + + # This is a magic wrapper for the original Array#replace method. It serves + # for populating the paginated collection after initialization. + # + # Why magic? Because it tries to guess the total number of entries judging + # by the size of given array. If it is shorter than +per_page+ limit, then we + # know we're on the last page. This trick is very useful for avoiding + # unnecessary hits to the database to do the counting after we fetched the + # data for the current page. + # + # However, after using +replace+ you should always test the value of + # +total_entries+ and set it to a proper value if it's +nil+. See the example + # in +create+. + def replace(array) + returning super do + # The collection is shorter then page limit? Rejoice, because + # then we know that we are on the last page! + if total_entries.nil? and length > 0 and length < per_page + self.total_entries = offset + length + end + end + end + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/core_ext.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/core_ext.rb new file mode 100644 index 0000000..23cc430 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/core_ext.rb @@ -0,0 +1,61 @@ +require 'set' + +unless Hash.instance_methods.include? 'except' + Hash.class_eval do + # Returns a new hash without the given keys. + def except(*keys) + rejected = Set.new(respond_to?(:convert_key) ? keys.map { |key| convert_key(key) } : keys) + reject { |key,| rejected.include?(key) } + end + + # Replaces the hash without only the given keys. + def except!(*keys) + replace(except(*keys)) + end + end +end + +unless Hash.instance_methods.include? 'slice' + Hash.class_eval do + # Returns a new hash with only the given keys. + def slice(*keys) + allowed = Set.new(respond_to?(:convert_key) ? keys.map { |key| convert_key(key) } : keys) + reject { |key,| !allowed.include?(key) } + end + + # Replaces the hash with only the given keys. + def slice!(*keys) + replace(slice(*keys)) + end + end +end + +require 'will_paginate/collection' + +unless Array.instance_methods.include? 'paginate' + # http://www.desimcadam.com/archives/8 + Array.class_eval do + def paginate(options_or_page = {}, per_page = nil) + if options_or_page.nil? or Fixnum === options_or_page + if defined? WillPaginate::Deprecation + WillPaginate::Deprecation.warn <<-DEPR + Array#paginate now conforms to the main, ActiveRecord::Base#paginate API. You should \ + call it with a parameters hash (:page, :per_page). The old API (numbers as arguments) \ + has been deprecated and is going to be unsupported in future versions of will_paginate. + DEPR + end + page = options_or_page + options = {} + else + options = options_or_page + page = options[:page] || 1 + raise ArgumentError, "wrong number of arguments (1 hash or 2 Fixnums expected)" if per_page + per_page = options[:per_page] + end + + WillPaginate::Collection.create(page || 1, per_page || 30, options[:total_entries] || size) do |pager| + pager.replace self[pager.offset, pager.per_page].to_a + end + end + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/finder.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/finder.rb new file mode 100644 index 0000000..df43c86 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/finder.rb @@ -0,0 +1,174 @@ +require 'will_paginate/core_ext' + +module WillPaginate + # A mixin for ActiveRecord::Base. Provides +per_page+ class method + # and makes +paginate+ finders possible with some method_missing magic. + # + # Find out more in WillPaginate::Finder::ClassMethods + # + module Finder + def self.included(base) + base.extend ClassMethods + class << base + alias_method_chain :method_missing, :paginate + define_method(:per_page) { 30 } unless respond_to?(:per_page) + end + end + + # = Paginating finders for ActiveRecord models + # + # WillPaginate doesn't really add extra methods to your ActiveRecord models (except +per_page+ + # unless it's already available). It simply intercepts + # the calls to paginating finders such as +paginate+, +paginate_by_user_id+ (and so on) and + # translates them to ordinary finders: +find+, +find_by_user_id+, etc. It does so with some + # method_missing magic, but you don't need to care for that. You simply use paginating finders + # same way you used ordinary ones. You only need to tell them what page you want in options. + # + # @topics = Topic.paginate :all, :page => params[:page] + # + # In paginating finders, "all" is implicit. No sense in paginating a single record, right? So: + # + # Post.paginate => Post.find :all + # Post.paginate_all_by_something => Post.find_all_by_something + # Post.paginate_by_something => Post.find_all_by_something + # + # Knowing that, the above example can be written simply as: + # + # @topics = Topic.paginate :page => params[:page] + # + # Don't forget to pass the +page+ parameter! Without it, paginating finders will raise an error. + # + # == Options + # Options for paginating finders are: + # + # page REQUIRED, but defaults to 1 if false or nil + # per_page (default is read from the model, which is 30 if not overridden) + # total entries not needed unless you want to count the records yourself somehow + # count hash of options that are used only for the call to count + # + module ClassMethods + # This methods wraps +find_by_sql+ by simply adding LIMIT and OFFSET to your SQL string + # based on the params otherwise used by paginating finds: +page+ and +per_page+. + # + # Example: + # + # @developers = Developer.paginate_by_sql ['select * from developers where salary > ?', 80000], + # :page => params[:page], :per_page => 3 + # + def paginate_by_sql(sql, options) + options, page, per_page = wp_parse_options!(options) + + WillPaginate::Collection.create(page, per_page) do |pager| + query = sanitize_sql(sql) + count_query = "SELECT COUNT(*) FROM (#{query}) AS count_table" unless options[:total_entries] + options.update :offset => pager.offset, :limit => pager.per_page + + add_limit! query, options + pager.replace find_by_sql(query) + + pager.total_entries = options[:total_entries] || count_by_sql(count_query) unless pager.total_entries + end + end + + def respond_to?(method, include_priv = false) + case method.to_sym + when :paginate, :paginate_by_sql + true + else + super(method.to_s.sub(/^paginate/, 'find'), include_priv) + end + end + + protected + + def method_missing_with_paginate(method, *args, &block) + # did somebody tried to paginate? if not, let them be + unless method.to_s.index('paginate') == 0 + return method_missing_without_paginate(method, *args, &block) + end + + options, page, per_page, total_entries = wp_parse_options!(args.pop) + # an array of IDs may have been given: + total_entries ||= (Array === args.first and args.first.size) + + # paginate finders are really just find_* with limit and offset + finder = method.to_s.sub /^paginate/, 'find' + + # :all is implicit + if finder == 'find' + args.unshift(:all) if args.empty? + elsif finder.index('find_by_') == 0 + finder.sub! /^find/, 'find_all' + end + + WillPaginate::Collection.create(page, per_page, total_entries) do |pager| + args << options.except(:count).merge(:offset => pager.offset, :limit => pager.per_page) + pager.replace send(finder, *args) + + # magic counting for user convenience: + pager.total_entries = wp_count!(options, args, finder) unless pager.total_entries + end + end + + def wp_count!(options, args, finder) + excludees = [:count, :order, :limit, :offset] + unless options[:select] and options[:select] =~ /^\s*DISTINCT/i + excludees << :select # only exclude the select param if it doesn't begin with DISTINCT + end + # count expects (almost) the same options as find + count_options = options.except *excludees + + # merge the hash found in :count + # this allows you to specify :select, :order, or anything else just for the count query + count_options.update(options.delete(:count) || {}) if options.key? :count + + # we may have to scope ... + counter = Proc.new { count(count_options) } + + # we may be in a model or an association proxy! + klass = (@owner and @reflection) ? @reflection.klass : self + + count = if finder =~ /^find_/ and klass.respond_to?(scoper = finder.sub(/^find_/, 'with_')) + # scope_out adds a 'with_finder' method which acts like with_scope, if it's present + # then execute the count with the scoping provided by the with_finder + send(scoper, &counter) + elsif conditions = wp_extract_finder_conditions(finder, args) + # extracted the conditions from calls like "paginate_by_foo_and_bar" + with_scope(:find => { :conditions => conditions }, &counter) + else + counter.call + end + + count.respond_to?(:length) ? count.length : count + end + + def wp_parse_options!(options) + raise ArgumentError, 'hash parameters expected' unless options.respond_to? :symbolize_keys! + options.symbolize_keys! + raise ArgumentError, ':page parameter required' unless options.key? :page + + if options[:count] and options[:total_entries] + raise ArgumentError, ':count and :total_entries are mutually exclusive parameters' + end + + page = options.delete(:page) || 1 + per_page = options.delete(:per_page) || self.per_page + total = options.delete(:total_entries) + [options, page, per_page, total] + end + + private + + # thanks to active record for making us duplicate this code + def wp_extract_finder_conditions(finder, arguments) + return unless match = /^find_(all_by|by)_([_a-zA-Z]\w*)$/.match(finder.to_s) + + attribute_names = extract_attribute_names_from_match(match) + unless all_attributes_exists?(attribute_names) + raise "I can't make sense of `#{finder}`. Try doing the count manually" + end + construct_attributes_from_arguments(attribute_names, arguments) + end + end + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/view_helpers.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/view_helpers.rb new file mode 100644 index 0000000..b3702fc --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/lib/will_paginate/view_helpers.rb @@ -0,0 +1,136 @@ +require 'will_paginate/core_ext' + +module WillPaginate + # = Global options for pagination helpers + # + # Options for pagination helpers are optional and get their default values from the + # WillPaginate::ViewHelpers.pagination_options hash. You can write to this hash to + # override default options on the global level: + # + # WillPaginate::ViewHelpers.pagination_options[:prev_label] = 'Previous page' + # + # By putting this into your environment.rb you can easily translate link texts to previous + # and next pages, as well as override some other defaults to your liking. + module ViewHelpers + # default options that can be overridden on the global level + @@pagination_options = { :class => 'pagination', + :prev_label => '« Previous', + :next_label => 'Next »', + :inner_window => 4, # links around the current page + :outer_window => 1, # links around beginning and end + :separator => ' ', # single space is friendly to spiders and non-graphic browsers + :param_name => :page + } + mattr_reader :pagination_options + + # Renders Digg-style pagination. (We know you wanna!) + # Returns nil if there is only one page in total (can't paginate that). + # + # Options for will_paginate view helper: + # + # class: CSS class name for the generated DIV (default "pagination") + # prev_label: default '« Previous', + # next_label: default 'Next »', + # inner_window: how many links are shown around the current page, defaults to 4 + # outer_window: how many links are around the first and the last page, defaults to 1 + # separator: string separator for page HTML elements, default " " (single space) + # param_name: parameter name for page number in URLs, defaults to "page" + # + # All extra options are passed to the generated container DIV, so eventually + # they become its HTML attributes. + # + def will_paginate(entries = @entries, options = {}) + total_pages = + + if entries.page_count > 1 + renderer = WillPaginate::LinkRenderer.new entries, options, self + links = renderer.items + + content_tag :div, links, renderer.html_options + end + end + end + + # This class does the heavy lifting of actually building the pagination + # links. It is used by +will_paginate+ helper internally, but avoid using it + # directly (for now) because its API is not set in stone yet. + class LinkRenderer + + def initialize(collection, options, template) + @collection = collection + @options = options.symbolize_keys.reverse_merge WillPaginate::ViewHelpers.pagination_options + @template = template + end + + def items + returning windowed_paginator do |links| + # next and previous buttons + links.unshift page_link_or_span(@collection.previous_page, 'disabled', @options[:prev_label]) + links.push page_link_or_span(@collection.next_page, 'disabled', @options[:next_label]) + end.join(@options[:separator]) + end + + def html_options + @options.except *(WillPaginate::ViewHelpers.pagination_options.keys - [:class]) + end + + protected + + def windowed_paginator + inner_window, outer_window = @options[:inner_window].to_i, @options[:outer_window].to_i + min = page - inner_window + max = page + inner_window + # adjust lower or upper limit if other is out of bounds + if max > total_pages then min -= max - total_pages + elsif min < 1 then max += 1 - min + end + + current = min..max + beginning = 1..(1 + outer_window) + tail = (total_pages - outer_window)..total_pages + visible = [beginning, current, tail].map(&:to_a).flatten.sort.uniq + + links, prev = [], 0 + + visible.each do |n| + next if n < 1 + break if n > total_pages + + unless n - prev > 1 + prev = n + links << page_link_or_span((n != page ? n : nil), 'current', n) + else + # ellipsis represents the gap between windows + prev = n - 1 + links << '...' + redo + end + end + + links + end + + def page_link_or_span(page, span_class, text) + unless page + @template.content_tag :span, text, :class => span_class + else + # page links should preserve GET/POST parameters + @template.link_to text, @template.params.merge(param => page != 1 ? page : nil) + end + end + + private + + def page + @collection.current_page + end + + def total_pages + @collection.page_count + end + + def param + @options[:param_name].to_sym + end + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/array_pagination_test.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/array_pagination_test.rb new file mode 100644 index 0000000..e3eaa08 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/array_pagination_test.rb @@ -0,0 +1,121 @@ +require File.dirname(__FILE__) + '/helper' +require 'will_paginate' +require 'will_paginate/core_ext' + +class ArrayPaginationTest < Test::Unit::TestCase + def test_simple + collection = ('a'..'e').to_a + + [{ :page => 1, :per_page => 3, :expected => %w( a b c ) }, + { :page => 2, :per_page => 3, :expected => %w( d e ) }, + { :page => 1, :per_page => 5, :expected => %w( a b c d e ) }, + { :page => 3, :per_page => 5, :expected => [] }, + { :page => -1, :per_page => 5, :expected => [] }, + { :page => 1, :per_page => -5, :expected => [] }, + ]. + each do |conditions| + assert_equal conditions[:expected], collection.paginate(conditions.slice(:page, :per_page)) + end + end + + def test_defaults + result = (1..50).to_a.paginate + assert_equal 1, result.current_page + assert_equal 30, result.size + end + + def test_deprecated_api + assert_deprecated 'paginate API' do + result = (1..50).to_a.paginate(2, 10) + assert_equal 2, result.current_page + assert_equal (11..20).to_a, result + assert_equal 50, result.total_entries + end + + assert_deprecated { [].paginate nil } + end + + def test_total_entries_has_precedence + result = %w(a b c).paginate :total_entries => 5 + assert_equal 5, result.total_entries + end + + def test_argument_error_with_params_and_another_argument + assert_raise ArgumentError do + [].paginate({}, 5) + end + end + + def test_paginated_collection + entries = %w(a b c) + collection = create(2, 3, 10) do |pager| + assert_equal entries, pager.replace(entries) + end + + assert_equal entries, collection + assert_respond_to_all collection, %w(page_count each offset size current_page per_page total_entries) + assert_kind_of Array, collection + assert_instance_of Array, collection.entries + assert_equal 3, collection.offset + assert_equal 4, collection.page_count + assert !collection.out_of_bounds? + end + + def test_out_of_bounds + entries = create(2, 3, 2){} + assert entries.out_of_bounds? + + entries = create(0, 3, 2){} + assert entries.out_of_bounds? + + entries = create(1, 3, 2){} + assert !entries.out_of_bounds? + end + + def test_guessing_total_count + entries = create do |pager| + # collection is shorter than limit + pager.replace array + end + assert_equal 8, entries.total_entries + + entries = create(2, 5, 10) do |pager| + # collection is shorter than limit, but we have an explicit count + pager.replace array + end + assert_equal 10, entries.total_entries + + entries = create do |pager| + # collection is the same as limit; we can't guess + pager.replace array(5) + end + assert_equal nil, entries.total_entries + + entries = create do |pager| + # collection is empty; we can't guess + pager.replace array(0) + end + assert_equal nil, entries.total_entries + end + + private + def create(page = 2, limit = 5, total = nil, &block) + WillPaginate::Collection.create(page, limit, total, &block) + end + + def array(size = 3) + Array.new(size) + end + + def collect_deprecations + old_behavior = WillPaginate::Deprecation.behavior + deprecations = [] + WillPaginate::Deprecation.behavior = Proc.new do |message, callstack| + deprecations << message + end + result = yield + [result, deprecations] + ensure + WillPaginate::Deprecation.behavior = old_behavior + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/boot.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/boot.rb new file mode 100644 index 0000000..b8db87f --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/boot.rb @@ -0,0 +1,24 @@ +plugin_root = File.join(File.dirname(__FILE__), '..') + +# first look for a symlink to a copy of the framework +if framework_root = ["#{plugin_root}/rails", "#{plugin_root}/../../rails"].find { |p| File.directory? p } + puts "found framework root: #{framework_root}" + # this allows for a plugin to be tested outside an app + $:.unshift "#{framework_root}/activesupport/lib", "#{framework_root}/activerecord/lib", "#{framework_root}/actionpack/lib" +else + # is the plugin installed in an application? + app_root = plugin_root + '/../../..' + + if File.directory? app_root + '/config' + puts 'using config/boot.rb' + ENV['RAILS_ENV'] = 'test' + require File.expand_path(app_root + '/config/boot') + else + # simply use installed gems if available + puts 'using rubygems' + require 'rubygems' + gem 'actionpack'; gem 'activerecord' + end +end + +$:.unshift "#{plugin_root}/lib" diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/console b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/console new file mode 100644 index 0000000..53b8de4 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/console @@ -0,0 +1,9 @@ +#!/usr/bin/env ruby +irb = RUBY_PLATFORM =~ /(:?mswin|mingw)/ ? 'irb.bat' : 'irb' +libs = [] +dirname = File.dirname(__FILE__) + +libs << 'irb/completion' +libs << File.join(dirname, 'lib', 'load_fixtures') + +exec "#{irb}#{libs.map{ |l| " -r #{l}" }.join} --simple-prompt" diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/finder_test.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/finder_test.rb new file mode 100644 index 0000000..12b5c68 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/finder_test.rb @@ -0,0 +1,285 @@ +require File.dirname(__FILE__) + '/helper' +require File.dirname(__FILE__) + '/lib/activerecord_test_case' + +require 'will_paginate' +WillPaginate.enable_activerecord + +class FinderTest < ActiveRecordTestCase + fixtures :topics, :replies, :users, :projects, :developers_projects + + def test_new_methods_presence + assert_respond_to_all Topic, %w(per_page paginate paginate_by_sql) + end + + def test_simple_paginate + entries = Topic.paginate :page => nil + assert_equal 1, entries.current_page + assert_nil entries.previous_page + assert_nil entries.next_page + assert_equal 1, entries.page_count + assert_equal 4, entries.size + + entries = Topic.paginate :page => 2 + assert_equal 2, entries.current_page + assert_equal 1, entries.previous_page + assert_equal 1, entries.page_count + assert entries.empty? + end + + def test_parameter_api + # :page parameter in options is required! + assert_raise(ArgumentError){ Topic.paginate } + assert_raise(ArgumentError){ Topic.paginate({}) } + + # explicit :all should not break anything + assert_equal Topic.paginate(:page => nil), Topic.paginate(:all, :page => 1) + + # :count could be nil and we should still not cry + assert_nothing_raised { Topic.paginate :page => 1, :count => nil } + end + + def test_paginate_with_per_page + entries = Topic.paginate :page => 1, :per_page => 1 + assert_equal 1, entries.size + assert_equal 4, entries.page_count + + # Developer class has explicit per_page at 10 + entries = Developer.paginate :page => 1 + assert_equal 10, entries.size + assert_equal 2, entries.page_count + + entries = Developer.paginate :page => 1, :per_page => 5 + assert_equal 11, entries.total_entries + assert_equal 5, entries.size + assert_equal 3, entries.page_count + end + + def test_paginate_with_order + entries = Topic.paginate :page => 1, :order => 'created_at desc' + expected = [topics(:futurama), topics(:harvey_birdman), topics(:rails), topics(:ar)].reverse + assert_equal expected, entries.to_a + assert_equal 1, entries.page_count + end + + def test_paginate_with_conditions + entries = Topic.paginate :page => 1, :conditions => ["created_at > ?", 30.minutes.ago] + expected = [topics(:rails), topics(:ar)] + assert_equal expected, entries.to_a + assert_equal 1, entries.page_count + end + + def test_paginate_with_include_and_conditions + entries = Topic.paginate \ + :page => 1, + :include => :replies, + :conditions => "replies.content LIKE 'Bird%' ", + :per_page => 10 + + expected = Topic.find :all, + :include => 'replies', + :conditions => "replies.content LIKE 'Bird%' ", + :limit => 10 + + assert_equal expected, entries.to_a + assert_equal 1, entries.total_entries + end + + def test_paginate_with_include_and_order + entries = Topic.paginate \ + :page => 1, + :include => :replies, + :order => 'replies.created_at asc, topics.created_at asc', + :per_page => 10 + + expected = Topic.find :all, + :include => 'replies', + :order => 'replies.created_at asc, topics.created_at asc', + :limit => 10 + + assert_equal expected, entries.to_a + assert_equal 4, entries.total_entries + end + + def test_paginate_associations_with_include + entries, project = nil, projects(:active_record) + + assert_nothing_raised "THIS IS A BUG in Rails 1.2.3 that was fixed in [7326]. " + + "Please upgrade to the 1-2-stable branch or edge Rails." do + entries = project.topics.paginate \ + :page => 1, + :include => :replies, + :conditions => "replies.content LIKE 'Nice%' ", + :per_page => 10 + end + + expected = Topic.find :all, + :include => 'replies', + :conditions => "project_id = #{project.id} AND replies.content LIKE 'Nice%' ", + :limit => 10 + + assert_equal expected, entries.to_a + end + + def test_paginate_associations + dhh = users :david + expected_name_ordered = [projects(:action_controller), projects(:active_record)] + expected_id_ordered = [projects(:active_record), projects(:action_controller)] + + # with association-specified order + entries = dhh.projects.paginate(:page => 1) + assert_equal expected_name_ordered, entries + assert_equal 2, entries.total_entries + + # with explicit order + entries = dhh.projects.paginate(:page => 1, :order => 'projects.id') + assert_equal expected_id_ordered, entries + assert_equal 2, entries.total_entries + + assert_nothing_raised { dhh.projects.find(:all, :order => 'projects.id', :limit => 4) } + entries = dhh.projects.paginate(:page => 1, :order => 'projects.id', :per_page => 4) + assert_equal expected_id_ordered, entries + + # has_many with implicit order + topic = Topic.find(1) + expected = [replies(:spam), replies(:witty_retort)] + assert_equal expected.map(&:id).sort, topic.replies.paginate(:page => 1).map(&:id).sort + assert_equal expected.reverse, topic.replies.paginate(:page => 1, :order => 'replies.id ASC') + end + + def test_paginate_association_extension + project = Project.find(:first) + entries = project.replies.paginate_recent :page => 1 + assert_equal [replies(:brave)], entries + end + + def test_paginate_with_joins + entries = Developer.paginate :page => 1, + :joins => 'LEFT JOIN developers_projects ON users.id = developers_projects.developer_id', + :conditions => 'project_id = 1' + assert_equal 2, entries.size + developer_names = entries.map { |d| d.name } + assert developer_names.include?('David') + assert developer_names.include?('Jamis') + + expected = entries.to_a + entries = Developer.paginate :page => 1, + :joins => 'LEFT JOIN developers_projects ON users.id = developers_projects.developer_id', + :conditions => 'project_id = 1', :count => { :select => "users.id" } + assert_equal expected, entries.to_a + end + + def test_paginate_with_group + entries = Developer.paginate :page => 1, :per_page => 10, :group => 'salary' + expected = [ users(:david), users(:jamis), users(:dev_10), users(:poor_jamis) ].map(&:salary).sort + assert_equal expected, entries.map(&:salary).sort + end + + def test_paginate_with_dynamic_finder + expected = [replies(:witty_retort), replies(:spam)] + assert_equal expected, Reply.paginate_by_topic_id(1, :page => 1) + + entries = Developer.paginate :conditions => { :salary => 100000 }, :page => 1, :per_page => 5 + assert_equal 8, entries.total_entries + assert_equal entries, Developer.paginate_by_salary(100000, :page => 1, :per_page => 5) + + # dynamic finder + conditions + entries = Developer.paginate_by_salary(100000, :page => 1, + :conditions => ['id > ?', 6]) + assert_equal 4, entries.total_entries + assert_equal (7..10).to_a, entries.map(&:id) + + assert_raises NoMethodError do + Developer.paginate_by_inexistent_attribute 100000, :page => 1 + end + end + + def test_paginate_by_sql + assert_respond_to Developer, :paginate_by_sql + entries = Developer.paginate_by_sql ['select * from users where salary > ?', 80000], + :page => 2, :per_page => 3, :total_entries => 9 + + assert_equal (5..7).to_a, entries.map(&:id) + assert_equal 9, entries.total_entries + end + + def test_count_by_sql + entries = Developer.paginate_by_sql ['select * from users where salary > ?', 60000], + :page => 2, :per_page => 3 + + assert_equal 12, entries.total_entries + end + + def test_count_distinct + entries = Developer.paginate :select => 'DISTINCT salary', :page => 1, :per_page => 4 + assert_equal 4, entries.size + assert_equal 4, entries.total_entries + end + + def test_scoped_paginate + entries = + Developer.with_poor_ones do + Developer.paginate :page => 1 + end + + assert_equal 2, entries.size + assert_equal 2, entries.total_entries + end + + # Are we on edge? Find out by testing find_all which was removed in [6998] + unless Developer.respond_to? :find_all + def test_paginate_array_of_ids + # AR finders also accept arrays of IDs + # (this was broken in Rails before [6912]) + entries = Developer.paginate((1..8).to_a, :per_page => 3, :page => 2) + assert_equal (4..6).to_a, entries.map(&:id) + assert_equal 8, entries.total_entries + end + end + + uses_mocha 'parameter' do + def test_implicit_all_with_dynamic_finders + Topic.expects(:find_all_by_foo).returns([]) + Topic.expects(:wp_extract_finder_conditions) + Topic.expects(:count) + Topic.paginate_by_foo :page => 1 + end + + def test_guessing_the_total_count + Topic.expects(:find).returns(Array.new(2)) + Topic.expects(:count).never + + entries = Topic.paginate :page => 2, :per_page => 4 + assert_equal 6, entries.total_entries + end + + def test_extra_parameters_stay_untouched + Topic.expects(:find).with() { |*args| args.last.key? :foo }.returns(Array.new(5)) + Topic.expects(:count).with(){ |*args| args.last.key? :foo }.returns(1) + + Topic.paginate :foo => 'bar', :page => 1, :per_page => 4 + end + + def test_count_doesnt_use_select_options + Developer.expects(:find).with() { |*args| args.last.key? :select }.returns(Array.new(5)) + Developer.expects(:count).with(){ |*args| !args.last.key?(:select) }.returns(1) + + Developer.paginate :select => 'users.*', :page => 1, :per_page => 4 + end + + def test_should_use_scoped_finders_if_present + # scope-out compatibility + Topic.expects(:find_best).returns(Array.new(5)) + Topic.expects(:with_best).returns(1) + + Topic.paginate_best :page => 1, :per_page => 4 + end + + def test_ability_to_use_with_custom_finders + # acts_as_taggable defines `find_tagged_with(tag, options)` + Topic.expects(:find_tagged_with).with('will_paginate', :offset => 0, :limit => 5).returns([]) + Topic.expects(:count).with({}).returns(0) + + Topic.paginate_tagged_with 'will_paginate', :page => 1, :per_page => 5 + end + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/admin.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/admin.rb new file mode 100644 index 0000000..1d5e7f3 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/admin.rb @@ -0,0 +1,3 @@ +class Admin < User + has_many :companies, :finder_sql => 'SELECT * FROM companies' +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/developer.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/developer.rb new file mode 100644 index 0000000..6650a98 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/developer.rb @@ -0,0 +1,11 @@ +class Developer < User + has_and_belongs_to_many :projects, :include => :topics, :order => 'projects.name' + + def self.with_poor_ones(&block) + with_scope :find => { :conditions => ['salary <= ?', 80000], :order => 'salary' } do + yield + end + end + + def self.per_page() 10 end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/developers_projects.yml b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/developers_projects.yml new file mode 100644 index 0000000..cee359c --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/developers_projects.yml @@ -0,0 +1,13 @@ +david_action_controller: + developer_id: 1 + project_id: 2 + joined_on: 2004-10-10 + +david_active_record: + developer_id: 1 + project_id: 1 + joined_on: 2004-10-10 + +jamis_active_record: + developer_id: 2 + project_id: 1 \ No newline at end of file diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/project.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/project.rb new file mode 100644 index 0000000..0f85ef5 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/project.rb @@ -0,0 +1,15 @@ +class Project < ActiveRecord::Base + has_and_belongs_to_many :developers, :uniq => true + + has_many :topics + # :finder_sql => 'SELECT * FROM topics WHERE (topics.project_id = #{id})', + # :counter_sql => 'SELECT COUNT(*) FROM topics WHERE (topics.project_id = #{id})' + + has_many :replies, :through => :topics do + def find_recent(params = {}) + with_scope :find => { :conditions => ['replies.created_at > ?', 15.minutes.ago] } do + find :all, params + end + end + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/projects.yml b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/projects.yml new file mode 100644 index 0000000..02800c7 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/projects.yml @@ -0,0 +1,7 @@ +action_controller: + id: 2 + name: Active Controller + +active_record: + id: 1 + name: Active Record diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/replies.yml b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/replies.yml new file mode 100644 index 0000000..4421908 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/replies.yml @@ -0,0 +1,34 @@ +witty_retort: + id: 1 + topic_id: 1 + content: Birdman is better! + created_at: <%= 6.hours.ago.to_s(:db) %> + updated_at: nil + +another: + id: 2 + topic_id: 2 + content: Nuh uh! + created_at: <%= 1.hour.ago.to_s(:db) %> + updated_at: nil + +spam: + id: 3 + topic_id: 1 + content: Nice site! + created_at: <%= 1.hour.ago.to_s(:db) %> + updated_at: nil + +decisive: + id: 4 + topic_id: 4 + content: "I'm getting to the bottom of this" + created_at: <%= 30.minutes.ago.to_s(:db) %> + updated_at: nil + +brave: + id: 5 + topic_id: 4 + content: "AR doesn't scare me a bit" + created_at: <%= 10.minutes.ago.to_s(:db) %> + updated_at: nil diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/reply.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/reply.rb new file mode 100644 index 0000000..ea84042 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/reply.rb @@ -0,0 +1,5 @@ +class Reply < ActiveRecord::Base + belongs_to :topic, :include => [:replies] + + validates_presence_of :content +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/schema.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/schema.rb new file mode 100644 index 0000000..2c6d3e1 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/schema.rb @@ -0,0 +1,38 @@ +ActiveRecord::Schema.define do + + create_table "developers_projects", :id => false, :force => true do |t| + t.column "developer_id", :integer, :null => false + t.column "project_id", :integer, :null => false + t.column "joined_on", :date + t.column "access_level", :integer, :default => 1 + end + + create_table "projects", :force => true do |t| + t.column "name", :text + end + + create_table "replies", :force => true do |t| + t.column "content", :text + t.column "created_at", :datetime + t.column "updated_at", :datetime + t.column "topic_id", :integer + end + + create_table "topics", :force => true do |t| + t.column "project_id", :integer + t.column "title", :string + t.column "subtitle", :string + t.column "content", :text + t.column "created_at", :datetime + t.column "updated_at", :datetime + end + + create_table "users", :force => true do |t| + t.column "name", :text + t.column "salary", :integer, :default => 70000 + t.column "created_at", :datetime + t.column "updated_at", :datetime + t.column "type", :text + end + +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/topic.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/topic.rb new file mode 100644 index 0000000..12b8747 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/topic.rb @@ -0,0 +1,4 @@ +class Topic < ActiveRecord::Base + has_many :replies, :dependent => :destroy, :order => 'replies.created_at DESC' + belongs_to :project +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/topics.yml b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/topics.yml new file mode 100644 index 0000000..0a26904 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/topics.yml @@ -0,0 +1,30 @@ +futurama: + id: 1 + title: Isnt futurama awesome? + subtitle: It really is, isnt it. + content: I like futurama + created_at: <%= 1.day.ago.to_s(:db) %> + updated_at: + +harvey_birdman: + id: 2 + title: Harvey Birdman is the king of all men + subtitle: yup + content: He really is + created_at: <%= 2.hours.ago.to_s(:db) %> + updated_at: + +rails: + id: 3 + project_id: 1 + title: Rails is nice + subtitle: It makes me happy + content: except when I have to hack internals to fix pagination. even then really. + created_at: <%= 20.minutes.ago.to_s(:db) %> + +ar: + id: 4 + project_id: 1 + title: ActiveRecord sometimes freaks me out + content: "I mean, what's the deal with eager loading?" + created_at: <%= 15.minutes.ago.to_s(:db) %> diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/user.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/user.rb new file mode 100644 index 0000000..4a57cf0 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/user.rb @@ -0,0 +1,2 @@ +class User < ActiveRecord::Base +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/users.yml b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/users.yml new file mode 100644 index 0000000..ed2c03a --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/fixtures/users.yml @@ -0,0 +1,35 @@ +david: + id: 1 + name: David + salary: 80000 + type: Developer + +jamis: + id: 2 + name: Jamis + salary: 150000 + type: Developer + +<% for digit in 3..10 %> +dev_<%= digit %>: + id: <%= digit %> + name: fixture_<%= digit %> + salary: 100000 + type: Developer +<% end %> + +poor_jamis: + id: 11 + name: Jamis + salary: 9000 + type: Developer + +admin: + id: 12 + name: admin + type: Admin + +goofy: + id: 13 + name: Goofy + type: Admin diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/helper.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/helper.rb new file mode 100644 index 0000000..307e29a --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/helper.rb @@ -0,0 +1,25 @@ +require 'test/unit' +require 'rubygems' + +# gem install redgreen for colored test output +begin require 'redgreen'; rescue LoadError; end + +require File.join(File.dirname(__FILE__), 'boot') unless defined?(ActiveRecord) + +class Test::Unit::TestCase + protected + def assert_respond_to_all object, methods + methods.each do |method| + [method.to_s, method.to_sym].each { |m| assert_respond_to object, m } + end + end +end + +# Wrap tests that use Mocha and skip if unavailable. +def uses_mocha(test_name) + require 'mocha' unless Object.const_defined?(:Mocha) + yield +rescue LoadError => load_error + raise unless load_error.message =~ /mocha/i + $stderr.puts "Skipping #{test_name} tests. `gem install mocha` and try again." +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/lib/activerecord_test_case.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/lib/activerecord_test_case.rb new file mode 100644 index 0000000..2b20dff --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/lib/activerecord_test_case.rb @@ -0,0 +1,23 @@ +require File.join(File.dirname(__FILE__), 'activerecord_test_connector') + +class ActiveRecordTestCase < Test::Unit::TestCase + # Set our fixture path + if ActiveRecordTestConnector.able_to_connect + self.fixture_path = File.join(File.dirname(__FILE__), '..', 'fixtures') + self.use_transactional_fixtures = false + end + + def self.fixtures(*args) + super if ActiveRecordTestConnector.connected + end + + def run(*args) + super if ActiveRecordTestConnector.connected + end + + # Default so Test::Unit::TestCase doesn't complain + def test_truth + end +end + +ActiveRecordTestConnector.setup diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/lib/activerecord_test_connector.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/lib/activerecord_test_connector.rb new file mode 100644 index 0000000..0435f47 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/lib/activerecord_test_connector.rb @@ -0,0 +1,67 @@ +require 'active_record' +require 'active_record/version' +require 'active_record/fixtures' + +class ActiveRecordTestConnector + cattr_accessor :able_to_connect + cattr_accessor :connected + + # Set our defaults + self.connected = false + self.able_to_connect = true + + def self.setup + unless self.connected || !self.able_to_connect + setup_connection + load_schema + # require_fixture_models + Dependencies.load_paths.unshift(File.dirname(__FILE__) + "/../fixtures") + self.connected = true + end + rescue Exception => e # errors from ActiveRecord setup + $stderr.puts "\nSkipping ActiveRecord assertion tests: #{e}" + #$stderr.puts " #{e.backtrace.join("\n ")}\n" + self.able_to_connect = false + end + + private + + def self.setup_connection + if Object.const_defined?(:ActiveRecord) + defaults = { :database => ':memory:' } + ActiveRecord::Base.logger = Logger.new STDOUT if $0 == 'irb' + + begin + options = defaults.merge :adapter => 'sqlite3', :timeout => 500 + ActiveRecord::Base.establish_connection(options) + ActiveRecord::Base.configurations = { 'sqlite3_ar_integration' => options } + ActiveRecord::Base.connection + rescue Exception # errors from establishing a connection + $stderr.puts 'SQLite 3 unavailable; trying SQLite 2.' + options = defaults.merge :adapter => 'sqlite' + ActiveRecord::Base.establish_connection(options) + ActiveRecord::Base.configurations = { 'sqlite2_ar_integration' => options } + ActiveRecord::Base.connection + end + + unless Object.const_defined?(:QUOTED_TYPE) + Object.send :const_set, :QUOTED_TYPE, ActiveRecord::Base.connection.quote_column_name('type') + end + else + raise "Can't setup connection since ActiveRecord isn't loaded." + end + end + + def self.load_schema + ActiveRecord::Base.silence do + ActiveRecord::Migration.verbose = false + load File.dirname(__FILE__) + "/../fixtures/schema.rb" + end + end + + def self.require_fixture_models + models = Dir.glob(File.dirname(__FILE__) + "/../fixtures/*.rb") + models = (models.grep(/user.rb/) + models).uniq + models.each { |f| require f } + end +end diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/lib/load_fixtures.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/lib/load_fixtures.rb new file mode 100644 index 0000000..c9f4d1f --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/lib/load_fixtures.rb @@ -0,0 +1,13 @@ +dirname = File.dirname(__FILE__) +require File.join(dirname, '..', 'boot') +require File.join(dirname, 'activerecord_test_connector') + +# setup the connection +ActiveRecordTestConnector.setup + +# load all fixtures +fixture_path = File.join(dirname, '..', 'fixtures') +Fixtures.create_fixtures(fixture_path, ActiveRecord::Base.connection.tables) + +require 'will_paginate' +WillPaginate.enable_activerecord diff --git a/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/pagination_test.rb b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/pagination_test.rb new file mode 100644 index 0000000..9d22953 --- /dev/null +++ b/P5B/ruby/mon_projet/vendor/plugins/will_paginate/test/pagination_test.rb @@ -0,0 +1,146 @@ +require File.dirname(__FILE__) + '/helper' +require 'action_controller' +require 'action_controller/test_process' + +ActionController::Routing::Routes.reload rescue nil +ActionController::Routing::Routes.draw do |map| + map.connect ':controller/:action/:id' +end + +ActionController::Base.perform_caching = false + +require 'will_paginate' +WillPaginate.enable_actionpack + +class PaginationTest < Test::Unit::TestCase + + class PaginationController < ActionController::Base + def list_developers + @options = params.delete(:options) || {} + + @developers = (1..11).to_a.paginate( + :page => params[@options[:param_name] || :page] || 1, + :per_page => params[:per_page] || 4 + ) + + render :inline => '<%= will_paginate @developers, @options %>' + end + + protected + def rescue_errors(e) raise e end + def rescue_action(e) raise e end + end + + def setup + @controller = PaginationController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + super + end + + def test_will_paginate + get :list_developers + + entries = assigns :developers + assert entries + assert_equal 4, entries.size + + assert_select 'div.pagination', 1, 'no main DIV' do |el| + assert_select 'a[href]', 3 do |elements| + validate_page_numbers [2,3,2], elements + assert_select elements.last, ':last-child', "Next »" + end + assert_select 'span', 2 + assert_select 'span.disabled:first-child', "« Previous" + assert_select 'span.current', entries.current_page.to_s + end + end + + def test_will_paginate_with_options + get :list_developers, :page => 2, :options => { + :class => 'will_paginate', :prev_label => 'Prev', :next_label => 'Next' + } + assert_response :success + + entries = assigns :developers + assert entries + assert_equal 4, entries.size + + assert_select 'div.will_paginate', 1, 'no main DIV' do + assert_select 'a[href]', 4 do |elements| + validate_page_numbers [nil,nil,3,3], elements + assert_select elements.first, 'a', "Prev" + assert_select elements.last, 'a', "Next" + end + assert_select 'span.current', entries.current_page.to_s + end + end + + def test_will_paginate_preserves_parameters + get :list_developers, :foo => { :bar => 'baz' } + assert_response :success + + assert_select 'div.pagination', 1, 'no main DIV' do + assert_select 'a[href]', 3 do |elements| + elements.each do |el| + assert_match /foo%5Bbar%5D=baz/, el['href'], "THIS IS A BUG in Rails 1.2 which " + + "has been fixed in Rails 2.0." + # there is no need to worry *unless* you too are using hashes in parameters which + # need to be preserved over pages + end + end + end + end + + def test_will_paginate_with_custom_page_param + get :list_developers, :developers_page => 2, :options => { :param_name => :developers_page } + assert_response :success + + entries = assigns :developers + assert entries + assert_equal 4, entries.size + + assert_select 'div.pagination', 1, 'no main DIV' do + assert_select 'a[href]', 4 do |elements| + validate_page_numbers [nil,nil,3,3], elements, :developers_page + end + assert_select 'span.current', entries.current_page.to_s + end + end + + def test_will_paginate_windows + get :list_developers, :page => 6, :per_page => 1, :options => { :inner_window => 2 } + assert_response :success + + entries = assigns :developers + assert entries + assert_equal 1, entries.size + + assert_select 'div.pagination', 1, 'no main DIV' do + assert_select 'a[href]', 10 do |elements| + validate_page_numbers [5,nil,2,4,5,7,8,10,11,7], elements + assert_select elements.first, 'a', "« Previous" + assert_select elements.last, 'a', "Next »" + end + assert_select 'span.current', entries.current_page.to_s + end + end + + def test_no_pagination + get :list_developers, :per_page => 12 + entries = assigns :developers + assert_equal 1, entries.page_count + assert_equal 11, entries.size + + assert_equal '', @response.body + end + +protected + + def validate_page_numbers expected, links, param_name = :page + assert_equal(expected, links.map { |e| + e['href'] =~ /\W#{param_name}=([^&]*)/ + $1 ? $1.to_i : $1 + }) + end +end diff --git a/P5B/ruby/multiChrono.rb b/P5B/ruby/multiChrono.rb new file mode 100644 index 0000000..cee97be --- /dev/null +++ b/P5B/ruby/multiChrono.rb @@ -0,0 +1,61 @@ +#!/usr/bin/ruby -w + +# cration d'un processus qui va crer un nouveau processus chrono chaque fois +# qu'il recoit le signal SIGTERM (n15) +# sur le signal SIGINT (n2) le processus envoie ce signal tous ses fils qui +# affichent leur tour la) valeur du compteur +# sur le signal SIGQUIT (n3) le processus envoie ce signal tous ses fils qui +# affichent la valeur de leur compteur et quittent. +# ============================================================================= + +# les ????? signifient que les instructions MANQUENT + +t = [] # tableau contenant les n de process des fils (ou filles !) crs + +trap("SIGTERM") { +# creation d'un nouveau processus "chrono" +pid=fork +if pid == nil + # code du FILS + exec("chrono.rb") # exec prend le dessus sur tout le reste. +# Si erreur, alors c'est pas normal + exit 99 +else + # code du PERe + # ????? # on ajoute dans t, le n processus du nouveau fils + + puts "nouveau chrono cree (" + pid.to_s + ")\n " + # variante ecriture : + puts "nouveau chrono cree ( #{pid} )\n " + + puts "liste des n processus fils\n" + t.each do |e| puts e end +end +} + +trap("SIGINT") { +# affiche la valeur du compteur de chaque chrono + +puts "\n on transmet le signal SIGINT a tous les chronometres fils \n" +# ??????? + +} + +trap("SIGQUIT") { + +puts "\n on transmet le signal SIGQUIT a tous les chronometres fils \n" +t.each do |elt| Process.kill("SIGQUIT", elt) end + +t = [] # on vide le tableau +exit 0 +} + +# debut du "main" + +puts "\nInitialisation - programme principal PID= " + $$.to_s + "\n" +# variante : puts "\nInitialisation - programme principal PID= #{$$} \n" + +# on affiche le pid et on boucle + +# ??????? + diff --git a/P5B/ruby/prenoms b/P5B/ruby/prenoms new file mode 100644 index 0000000..64da2ff --- /dev/null +++ b/P5B/ruby/prenoms @@ -0,0 +1,11 @@ +LAURA +MARIE +SARAH +MANON +JUSTINE +PAULINE +MARINE +CAMILLE +LOUISE +CELINE +ELODIE diff --git a/S51/TP0-InstallationMachineVirtuelle_VMWARE b/S51/TP0-InstallationMachineVirtuelle_VMWARE new file mode 100644 index 0000000..95b26c0 --- /dev/null +++ b/S51/TP0-InstallationMachineVirtuelle_VMWARE @@ -0,0 +1,23 @@ +====== Installation d'un systme BSD avec VMWARE ====== + + * Connexion FOU en terminal X + * Connexion ssh CANETTE + * Copie des fichiers /srv/vmware/Original/* vers /srv/vmware/travail/S51/3dossmanno + * Lancement de vmware-server-console sur FOU + * Lancement de FreeBSD sous VMWARE + * Mot de passe : root/iut + * Configuration du rseau l'aide de dhclient lnc0 + * La commande df -h fonctionne pour voir l'utilisation du Systme de Fichiers + + +===== Commandes ===== + + * Mmoire : (sous linux : free -m), sous FreeBSD vmstat (pour avoir un tableau) et vmstat -m pour l'utilisation des processus + * Priphriques : (sous linux cat /proc/cpuinfo), sous FreeBSD cat /boot/device.hints (pour l'instant je n'ai rien trouv de mieux) + * Systme d'exploitation, version dtaille : uname -a + * Utilisateurs : id -> donne UID / GID des utilisateurs ; finger donne les utilisateurs du systme ; who donne les personnes actuellement connectes + * Disque : mount donne le nom des partitions et leur point de montage ; df -h donne l'espace disponible + * Processus : ps -a donne l'ensemble des processus lancs + * Ports et services : netstat -r donne la table de routage. Pour avoir les sockets : netstat -AaLnSW + + diff --git a/S51/TP2.0/cptrendu/00.jpg b/S51/TP2.0/cptrendu/00.jpg new file mode 100644 index 0000000..64baa3c Binary files /dev/null and b/S51/TP2.0/cptrendu/00.jpg differ diff --git a/S51/TP2.0/cptrendu/01.jpg b/S51/TP2.0/cptrendu/01.jpg new file mode 100644 index 0000000..563e163 Binary files /dev/null and b/S51/TP2.0/cptrendu/01.jpg differ diff --git a/S51/TP2.0/cptrendu/cptrendu.tex b/S51/TP2.0/cptrendu/cptrendu.tex new file mode 100644 index 0000000..8bfaa25 --- /dev/null +++ b/S51/TP2.0/cptrendu/cptrendu.tex @@ -0,0 +1,330 @@ +%---DOCUMENT------------------------------------------------------------------- + +\documentclass[a4paper,10pt]{article} +\usepackage[french]{babel} +\usepackage[T1]{fontenc} + +%---PACKAGES------------------------------------------------------------------- + +\usepackage{makeidx} \makeindex +\usepackage[Lenny]{fncychap} % Lenny, Conny ,Bjarne, Rejne, Glenn, Sonny +\usepackage{fancyhdr} +\usepackage{eurosym} +\usepackage{lastpage} +\usepackage{a4wide} +\usepackage[french]{minitoc} +\usepackage[hmargin=1cm,vmargin=2cm]{geometry} +\usepackage{listings} % a inclure pour la fonction listing + +%---SORTIES-------------------------------------------------------------------- + +\newif\ifpdf + +\ifx\pdfoutput\undefined + \pdffalse +\else + \ifnum\pdfoutput=0 + \pdffalse + \else + \pdfoutput=1 \pdftrue + \fi +\fi + + +%---PDF------------------------------------------------------------------------ + +\ifpdf +\usepackage[pdftex]{graphicx, color} +\usepackage{color} % on en a besoin pour utiliser les couleurs +\definecolor{grey}{rgb}{0.95,0.95,0.95} % on dfinit la couleur grise pour les listing (c'est un gris trs clair) +\graphicspath{{images/}} +\DeclareGraphicsExtensions{.jpg,.png} +\pdfcompresslevel=9 +\usepackage{pslatex} + +\usepackage[pdftex, % Paramtrage de la navigation +bookmarks = true, % Signets +bookmarksnumbered = true, % Signets numrots +pdfpagemode = None, % None, UseThumbs, UseOutlines, Fullscreen +pdfstartview = FitH, % FitH, FitV, FitR, FitB, FitBH, FitBV, Fit +pdfpagelayout = OneColumn, % SinglePage, OneColumn, TwoColumnLeft, TwoColumnRight +colorlinks = false, % Liens en couleur +urlcolor = black, % Couleur des liens externes +pdfborder = {0 0 0} % Style de bordure : ici, rien +]{hyperref} + +\hypersetup{ +pdfauthor = {Olivier DOSSMANN}, % Auteurs +pdftitle = {TP2 : SSL, la couche transport scurise}, % Titre du document +pdfsubject = {Mettre en place un service web scuris}, % Sujet +pdfkeywords = {latex,pdf,ssl,certificat,apache,bsd,free,unix,iut,illkirch,s51}, % Mots-clefs +pdfcreator = {vim, pdflatex}, % Logiciel qui a cre le document +pdfproducer = {*} % Socit ayant produit le logiciel +plainpages = false} +\usepackage{pdfpages} + +%---DVI------------------------------------------------------------------------ + +\else +\usepackage{graphicx} +\graphicspath{{eps/}} +\newcommand{\url}[1]{\emph{#1}} +\newcommand{\href}[2]{\emph{#2}[1]} +\fi + +%---EN-TETE-ET-PIED-DE-PAGE---------------------------------------------------- + +\renewcommand{\headrulewidth}{0.5pt} +\renewcommand{\footrulewidth}{0.5pt} +\pagestyle{fancy} + +%\lhead{} +%\chead{} +%\rhead{} +\lfoot{Cre avec \LaTeX} +%\cfoot{} +\rfoot{TP2} + +%---PAGE-DE-GARDE-------------------------------------------------------------- + +\title{TP2 : SSL, la couche transport scurise} +\author{Olivier DOSSMANN} +\date{2008-01-13} + +%---COLOR--------------------------------------------------------------------- + +%\pagecolor{} +%\color{} + +%---DEBUT-DU-DOCUMENT---------------------------------------------------------- + +\begin{document} +\maketitle +\thispagestyle{fancy} + +%Pour les codes de dveloppement +\lstset{numbers=left, tabsize=2, frame=single, breaklines=true, basicstyle=\ttfamily,numberstyle=\tiny\ttfamily, framexleftmargin=13mm, backgroundcolor=\color{grey}, xleftmargin=12mm} + +%Table des matires +\tableofcontents + +%---EXEMPLE-DE-SECTION/SOUS-SECTION-------------------------------------------- +%\section{Introduction} +%\section{Titre 1} +%\subsection{Sous-section 1} + +%---EXEMPLE-DE-LISTE-NUMEROTEE------------------------------------------------- +%\begin{enumerate} +%\item Choix 1 +%\item Choix 2 +%\end{enumerate} + +%---EXEMPLE-DE-LISTE-NON-NUMEROTEE--------------------------------------------- +%\begin{itemize} +%\item Objet 1 +%\item Objet 2 +%\end{itemize} + +%---IMAGE---------------------------------------------------------------------- +%\begin{figure}[!htbp] %h = here, t = top, b = bottom et p = page (special) +% \centering +% \includegraphics[width=8cm]{gconfs.jpg} +% \caption{Logo de l'Association GCONFS} +%\end{figure} + +Dans un monde actuellement pieds et poings lis aux technologies Web, il est monnaire courante de rencontrer de plus en plus d'entreprises mettant en place des serveurs Web.\par +Pour cela ils utilisent toutes sortes de systmes d'exploitations et de serveurs Web. Nous nous occuperons, dans ce TP2, de l'utilisation d'un systme BSD, muni d'un serveur Apache, mais galement d'un systme de contrle distance : SSH. Par suite nous nous attacherons l'utilisation de modssl, permettant d'affubler d'un certificat SSL en surcouche notre serveur Apache. + +\section {Configuration de SSH sur la machine FreeBSD} +Nous travaillons avec un systme FreeBSD 6.2. Il est utile de pouvoir le contrler distance, ainsi il faut mettre en place un dmon SSH, puis se connecter au travers un tunnel SSH pour vrifier le bon fonctionnement du service. Mais avant tout, pensons configurer le rseau. + +\subsection{Configuration du rseau} +La commande \textit{ifconfig} renseigne les caractristiques des cartes rseaux. Nous vrifions ainsi le nom de la carte rseau principale : \textbf{lnc0}.\\ +\begin{lstlisting} + +localhost# ifconfig +lnc0: flags=108843 mtu 1500 + inet 192.168.113.170 netmask 0xffffff00 broadcast 192.168.113.255 + ether 00:0c:29:5e:49:94 +plip0: flags=108810 mtu 1500 +lo0: flags=8049 mtu 16384 + inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3 + inet6 ::1 prefixlen 128 + inet 127.0.0.1 netmask 0xff000000 +localhost# +\end{lstlisting} + +Pour tester, nous utilisons \textit{dhclient lnc0}. Il faut alors revrifier avec la commande \textit{ifconfig} pour nous apercevoir de la relle efficacit de l'attribution par DHCP.\par +Maintenant le rseau fonctionnel, il ne reste plus qu' automatiser l'attribution d'une IP par DHCP. Allons dans le fichier \textbf{rc.conf} : \textit{vi /etc/rc.conf} et ajoutons y la ligne \textit{ifconfig\_lnc0="DHCP"}. Nous avons galement besoin d'avoir un nom d'hte pour la suite du TP, ajoutons donc \textit{hostname="localhost"}.\par +A partir de l nous avons dj un bon dbut. Nous ne nous occupons pas de renseigner le fichier \textit{/etc/resolv.conf} pour les DNS, tant donn qu' l'IUT nous passons par un proxy pour atteindre l'internet. Cependant il est judicieux d'ajouter la variable locale \textbf{HTTP\_PROXY}. Pour cela nous ditons le fichier \textit{/root/.bashrc}, auquel nous ajoutons la ligne suivante : \textit{setenv HTTP\_PROXY http://130.79.80.33:8080}. De la sorte nous aurons toujours le proxy pour l'utilisateur root. Nous pourrions aussi ajouter cette ligne dans le fichier \textit{/etc/profile} pour que chacun des utilisateurs ait cette variable initialise. Mais nous n'en ferons rien, puisque cela ne nous sert pas actuellement.\par +Tentons dsormais d'utiliser le serveur SSH, dj install sur FreeBSD 6.2 (dans mes souvenirs en tout cas). + +\subsection{Configuration, lancement et utilisation de SSH} +Comme SSH semble avoir t dj install, il suffit de configurer, de lancer, puis d'utiliser le dmon.\par +Tout d'abord nous ditons l'aide de VIM (prcdemment compil par nos soins) le fichier de configuration de SSHD, savoir \textit{/etc/ssh/sshd\_config}. Afin d'accepter les connexions ROOT, nous ajoutons / dcommentons : \textit{PermitRootLogin yes}. SSH est configur pour ce que nous en faisons du moins.\par +Pour mettre en service le dmon SSH, c'est dire SSHD, il suffit de lancer la commmande : \textit{/etc/rc.d/sshd start}. Pour vrifier nous tapons \textit{netstat -a}, ce qui renvoie une liste bien fournie.\\ + +\begin{lstlisting} + +localhost# netstat -a +Active Internet connections (including servers) +Proto Recv-Q Send-Q Local Address Foreign Address (state) +tcp4 0 0 192.168.113.170.ssh 192.168.113.1.2943 ESTABLISHED +tcp4 0 0 *.ssh *.* LISTEN +tcp6 0 0 *.ssh *.* LISTEN +tcp4 0 0 *.* *.* CLOSED +tcp46 0 0 *.8080 *.* LISTEN +udp4 0 0 *.syslog *.* +udp6 0 0 *.syslog *.* +Active UNIX domain sockets +Address Type Recv-Q Send-Q Inode Conn Refs Nextref Addr +c1ae771c stream 0 0 c1b38440 0 0 0 /var/run/devd.pipe +c1ae7348 dgram 0 0 0 c1ae74ec 0 0 +c1ae74ec dgram 0 0 c1b3e220 0 c1ae7348 0 /var/run/logpriv +c1ae7578 dgram 0 0 c1b3e330 0 0 0 /var/run/log +localhost# + +\end{lstlisting} + +Testons la connexion l'aide de Putty, sachant que \textit{ifconfig} retourne l'adresse IP \textbf{192.168.113.170}.\\ +\begin{center} + \includegraphics[width=10cm]{00.jpg} +\end{center} +D'abord la connexion\ldots +\begin{center} + \includegraphics[width=15cm]{01.jpg} +\end{center} +\ldots puis l'accueil de la console FreeBSD sous SSH.\par +Bien, maintenant automatisons le tout pour qu'au prochain lancement de la distribution nous n'ayons pas recommencer toute la manipulation.\\ +Pour cela il suffit, comme toujours, d'diter le fichier de configuration \textit{/etc/rc.conf} et d'ajouter la ligne \textit{sshd\_enable="YES"}, ceci peut tre fait par la commande suivante : \textit{echo 'sshd\_enable="YES"' >> /etc/rc.conf}.\par +SSHD est configur, prt l'emploi, maintenant et pour les prochaines fois. Il est temps de s'attacher l'installation d'un serveur Apache. + +\newpage + +\section{Installation, configuration et utilisation de Apache} +Apache permet de mettre disposition, soit de la machine, soit du rseau local, ou encore l'ensemble du monde, un service de pagination avec des interconnexions, c'est dire un site internet. Il est de fait que ce service fourni par Apache est trs usit, et trs apprci de la communaut. Nous expliquerons comment installer Apache, comment le configurer, mais galement trouver le dossier o se situent les fichiers et dossiers mis disposition des personnes visitant le site. + +\subsection{Installation dans FreeBSD, avec exemple de Apache13} +FreeBSD propose un systme de menu semi - graphique pour l'installation de programmes tierces. Cependant ce systme utilisable avec la commande \textit{sysinstall} ne fonctionnait pas lors de nos TP. Il a donc fallu utiliser une autre mthode, celle de la compilation par la distribution, aprs tlchargement des bons paquets via FTP.\par +La premire chose faire est de se rendre dans le dossier contenant la liste des paquets susceptibles d'tre installs dans la machine, savoir le dossier \textit{/usr/ports/}.\par +Dans ce dossier figure une branche \textbf{www}, dans laquelle nous nous rendons. La commande \textit{ls | less} permet d'obtenir rapidement une liste de l'ensemble des programmes contenus dans cette branche. Nous en rprons deux : +\begin{enumerate} + \item apache13-modssl + \item links +\end{enumerate} +Le premier nous permet, grce aux dpendances, d'installer Apache13 affubl d'une verrue SSL. Le second est un navigateur internet en mode texte, largement suffisant pour ce que nous aurons faire.\par +Installons le paquet Apache13, en procdant ainsi : +\begin{enumerate} + \item \textit{cd apache13-modssl} + \item \textit{make install} +\end{enumerate} +Etant donn que nous avons configur le proxy prcdemment, et que les paramtres rseaux sont automatiques, le tlchargement et la compilation se droulent sans accrocs. A la fin de l'installation, nous obtenons un message tel que celui ci : + +\begin{lstlisting} + +===> Compressing manual pages for apache+mod_ssl-1.3.39+2.8.30 +===> Registering installation for apache+mod_ssl-1.3.39+2.8.30 +===> SECURITY REPORT: + This port has installed the following files which may act as network + servers and may therefore pose a remote security risk to the system. +/usr/local/libexec/apache/libproxy.so (USES POSSIBLY INSECURE FUNCTIONS: mktemp) +/usr/local/sbin/httpd + + This port has installed the following startup scripts which may cause + these network services to be started at boot time. +/usr/local/etc/rc.d/apache.sh + + If there are vulnerabilities in these programs there may be a security + risk to the system. FreeBSD makes no guarantee about the security of + ports included in the Ports Collection. Please type 'make deinstall' + to deinstall the port if this is a concern. + + For more information, and contact details about the security + status of this software, see the following webpage: +http://www.apache.org/ + +\end{lstlisting} + +Passons la configuration d'apache. + +\subsection{Configuration d'Apache} + +Apache possde une configuration de base, ce qui permet de le faire fonctionner en local (au moins pour vrifier que tout fonctionne). +Cependant nous allons procder quelques modifications dans le fichier de configuration. Mais avant tout, o se trouve le fichier de configuration ?\par +D'habitude nous trouvons les fichiers de configuration dans le dossier \textbf{/etc/}. Si nous configurons Apache, c'est alors dans le dossier \textbf{/etc/apache} qu'il faut se rendre. Cependant, et de manire mconnue de ma part, l'installation des programmes par \textbf{/usr/ports} implique la mise en place des binaires, et de tout ce qui concerne ledit programme install, dans le rpertoire \textbf{/usr/local/}. C'est encore pourpre, mais ce qui est sr, c'est que sachant cela, nous retrouvons toute l'architecture de dossiers et de fichiers habituels : +\begin{enumerate} + \item \textit{/usr/local/etc/apache22} : contenant les fichiers de configuration d'Apache + \item \textit{/usr/local/etc/rc.d/} : contient le script permettant le lancement du dmon \textit{apache22} + \item \textit{/usr/local/etc/www/apache22} : contient les fichiers pour les diffrentes fonctions d'Apache, comme les icnes, les scripts cgi-bin, etc ... +\end{enumerate} + +Commenons par diter le fichier \textbf{/usr/local/etc/apache22/httpd.conf}.\\ +Il renseigne le port utilis pour accder au serveur Web, l'adresse absolue de nos fichiers et dossiers sur le serveur, les modules supplmentaires ou fichiers de configurations charger, etc ...\\ + +\begin{lstlisting} + +ServerRoot "/usr/local" + +Listen 8080 + + + User www + Group www + + +DocumentRoot "/usr/local/www/apache22/data" + +# +# Each directory to which Apache has access can be configured with respect +# to which services and features are allowed and/or disabled in that +# directory (and its subdirectories). +# +# First, we configure the "default" to be a very restrictive set of +# features. +# + + AllowOverride None + Order deny,allow + Deny from all + + + + Options Indexes FollowSymLinks + AllowOverride None + Order allow,deny + Allow from all + +\end{lstlisting} + +Nous comprenons rapidement que le port utilis est \textbf{8080}, que les fichiers html sont dans le dossier \textbf{/usr/local/www/data/}.\par +Editons le fichier \textit{index.html} et mettons quelques lignes de code pour tester : +\begin{lstlisting} + + + Blankoworld + + +

    Es funktionnert!

    +

    Blanko

    + + +\end{lstlisting} + +Il nous reste vrifier la fonctionnalit de notre serveur. + +\subsection{Vrification de la fonctionnalit du serveur Apache} + +En local, la meilleure manire de tester son serveur Apache, c'est d'une part de vrifier que le service soit lanc, et d'autre part que le navigateur affiche bien la page que nous avons modifie prcdemment.\\ +La commande, sous FreeBSD, pour vrifier, entre autre, que les services soient bien lancs, nous tapons \textit{netstat -at}. Pour installer \textbf{links}, voire \textbf{lynx}, nous procdons comme auparavant : \textit{cd /usr/ports/www/links}, puis \textit{make install}. Comme prcdemment, la patiente est la chose la plus importante.\par +Par la suite, et une fois \textit{links} install, il suffit de lancer l'application sur la page suivante : \textit{http://localhost:8080/}. + + +Installation LINKS +Lancement HTTPD start + + + + +\end{document} + +%---FIN-DE-DOCUMENT------------------------------------------------------------ diff --git a/S51/TP2.0/images/00Putty.jpg b/S51/TP2.0/images/00Putty.jpg new file mode 100644 index 0000000..64baa3c Binary files /dev/null and b/S51/TP2.0/images/00Putty.jpg differ diff --git a/S51/TP2.0/images/01AccueilFreeBSDPutty.jpg b/S51/TP2.0/images/01AccueilFreeBSDPutty.jpg new file mode 100644 index 0000000..563e163 Binary files /dev/null and b/S51/TP2.0/images/01AccueilFreeBSDPutty.jpg differ diff --git a/divers/IHM_Acteur.java b/divers/IHM_Acteur.java new file mode 100644 index 0000000..0e29917 --- /dev/null +++ b/divers/IHM_Acteur.java @@ -0,0 +1,249 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : IHM_Acteur.java +// @ Date : 20/01/2008 +// @ Author : +// +// + + + +package IHM; + +import Documents.Element; +import java.io.*; + + +public class IHM_Acteur { + public Gestion.Fabrique gestionnaire = Gestion.Fabrique.getInstance(); + + + public void AfficherDoc() { + int ref = 0; + System.out.println("Entrez le numero du document à afficher:"); + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + try {ref = new Integer(bfr.readLine());} + catch(IOException e) {e.printStackTrace();} + try{System.out.println(gestionnaire.getElement(ref).afficher());} + catch(IndexOutOfBoundsException e) {System.out.println("Element inexistant!");} + } + public Documents.Element getDocument() { + int ref = 0; + System.out.println("Entrez le numero du document dans lequel ajouter l'element:"); + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + try {ref = new Integer(bfr.readLine());} + catch(IOException e) {e.printStackTrace();} + try{return gestionnaire.getElement(ref);} + catch(IndexOutOfBoundsException e) {System.out.println("Element inexistant!");} + return null; + } + public void listeDocuments() { + for(int i = 1; i < gestionnaire.documents.size();i++) + { + Element e = gestionnaire.getElement(i); + if(e instanceof Documents.Section) + { + if(e.getNiveau() == 0) + System.out.println(e.afficher()); + } + } + try{new BufferedReader(new InputStreamReader(System.in)).readLine();} + catch(IOException e) {} + } + public void noter() { + int ref = 0; + System.out.println("Entrez le numero du document à noter:"); + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + try {ref = new Integer(bfr.readLine());} + catch(IOException e) {e.printStackTrace();} + try{ + Element el = gestionnaire.getElement(ref); + System.out.println("Entrez la note:"); + try {int note = new Integer(bfr.readLine()); + el.setCoeff(note); + } + catch(IOException e) {System.out.println("La note entrée n'est pas correcte!");} + } + catch(IndexOutOfBoundsException e) {System.out.println("Element inexistant!"); + } + + } + + public void annoter() { + int ref = 0; + System.out.println("Entrez le numero du document à noter:"); + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + try {ref = new Integer(bfr.readLine());} + catch(IOException e) {e.printStackTrace();} + try{ + Element el = gestionnaire.getElement(ref); + System.out.println("Entrez l'annotation:"); + try { + String annot = bfr.readLine(); + el.setAnnotation(annot); + } + catch(IOException e) {System.out.println("Entrée incorrecte!");} + } + catch(IndexOutOfBoundsException e) {System.out.println("Element inexistant!"); + } + } + public void creerDocument() { + System.out.println("Entrez le titre du document :"); + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + String titre=""; + try { + /** Lecture d'une ligne : */ + titre = bfr.readLine(); + this.gestionnaire.CreateElem(titre); + } catch( IOException e ) {System.out.println("Titre incorrect");} + } + + public void modifierDocument(int ref) { + //Redacteur + } + public int identifier() { + int rep = 1; + System.out.println("Pour vous logguer en tant que redacteur, entrez votre code de 3 lettres: (FIN pour quitter) "); + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + String code=""; + try { + /** Lecture d'une ligne : */ + code = bfr.readLine(); + } catch( IOException e ) {e.printStackTrace();} + if(code.equals("RED")) + {rep = 2;} + else if (code.equals("FIN")) + {rep = 3;} + return rep; + } + public static void main(String[] args){ + IHM_Acteur ihm = new IHM_Acteur(); + int type = ihm.identifier(); + while(type != 3) + { + if(type == 1) + { ihmLecteur(ihm);} + else + {ihmRedacteur(ihm);} + type= ihm.identifier(); + } + } + public static void ihmLecteur(IHM_Acteur ihm) + { + String ligne = ""; + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + + while(!(ligne.equals("FIN"))) + { + menuLec(); + try { + System.out.println("Entrez votre choix: "); + ligne = bfr.readLine(); + }catch( IOException e ) {e.printStackTrace();} + + int choix = new Integer(ligne); + switch(choix) { + case 1: ihm.listeDocuments(); break; + case 2: ihm.AfficherDoc(); break; + case 3: ihm.annoter(); break; + case 4: ihm.noter(); break; + case 5: ligne = "FIN"; break; + } + } + } + public void creerElement(IHM_Acteur ihm) + { + String ligne =""; + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + menuElem(); + try { + System.out.println("Entrez votre choix: "); + ligne = bfr.readLine(); + }catch( IOException e ) {e.printStackTrace();} + + int choix = new Integer(ligne); + switch(choix) { + case 1: ihm.listeDocuments(); break; + case 2: ihm.creerSection(); break; + case 3: ihm.creerTexte(); break; + case 4: //ihm.creerImage(); break; + case 5: ligne = "FIN"; break; + } + + } + public static void ihmRedacteur(IHM_Acteur ihm) + { + String ligne = ""; + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + + while(!ligne.equals("FIN")) + { + menuRed(); + try { + System.out.println("Entrez votre choix: (FIN pour quitter)"); + ligne = bfr.readLine(); + int choix = new Integer(ligne); + switch(choix) { + case 1: ihm.listeDocuments(); break; + case 2: ihm.AfficherDoc(); break; + case 3: ihm.creerDocument(); break; + case 4: ihm.creerElement(ihm); break; + case 5: ihm.modifierDocument(choix); break; + case 6: ligne = "FIN"; break; + } + }catch( IOException e ) {e.printStackTrace();} + } + } + public void creerSection() { + Documents.Section el = (Documents.Section) this.getDocument(); + System.out.println("Entrez le titre de la section à ajouter:"); + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + try{String titre = bfr.readLine(); + Documents.Section sec= this.gestionnaire.CreateElem(titre); + if(sec == null) + {return;} + el.addElement(sec);} + catch(IOException e) {System.out.println("Pas bien!");} + + } + public void creerTexte() { + Documents.Section el = (Documents.Section) this.getDocument(); + System.out.println("Entrez l'auteur du texte:"); + BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); + try{String auteur = bfr.readLine(); + System.out.println("Saisissez le texte:"); + String texte = bfr.readLine(); + Documents.Texte txt= this.gestionnaire.CreateElem(texte, auteur); + if(txt == null) + {return;} + el.addElement(txt);} + catch(IOException e) {System.out.println("Pas bien!");} + } + public static void menuLec() { + System.out.println("1: Lister les documents"); + System.out.println("2: Afficher un document"); + System.out.println("3: Annoter un document"); + System.out.println("4: Noter un document"); + System.out.println("5: Se déconnecter"); + } + + public static void menuRed() { + System.out.println("1: Lister les documents"); + System.out.println("2: Afficher un document"); + System.out.println("3: Créer un document"); + System.out.println("4: Créer un element et l'ajouter"); + System.out.println("5: Modifier un element"); + System.out.println("6: Se déconnecter"); + } + public static void menuElem() { + System.out.println("1: Lister les documents"); + System.out.println("2: Créer et ajouter une section"); + System.out.println("3: Créer et ajouter un texte"); + System.out.println("4: Créer et ajouter une image"); + System.out.println("5: Revenir au menu"); + + } +} diff --git a/divers/jeuChargementDonnees.java b/divers/jeuChargementDonnees.java new file mode 100644 index 0000000..f83bce3 --- /dev/null +++ b/divers/jeuChargementDonnees.java @@ -0,0 +1,31 @@ +public void jeuDeDonnees(){ + + /* Creation du document */ + Documents.Section el = this.gestionnaire.CreateElem("Chasse à la mouche"); + + /* Creation d'une section */ + Documents.Section el2 = this.gestionnaire.createElem("Chapitre 1"); + el.ajouterElement(el2); + + /* Ajout de texte */ + el2.ajouterElement("Prenez un morceau de tissu vaudoux fraîchement récupéré d'un cadavre."); + + /* Ajout d'image */ + el2.ajouterElement(150,150,"Image d'un cadavre vaudoux"); + + Documents.Section el3 = this.gestionnaire.createElem("Chapitre 2"); + el.ajouterElement(el3); + el3.ajouterElement("Trouvez une mouche"); + + Documents.Section el4 = this.gestionnaire.createElem("Chapitre 3"); + el.ajouterElement(el4); + el4.ajouterElement("Lancez le tissu vaudoux au dessus de la mouche et patientez que la mouche vienne se loger dans le tissu, après quoi le tissu prend pleine possession de ladite mouche."); + + + /* Création d'un autre document */ + Documents.Section doc = this.gestionnaire.CreateElem("Javana Split"); + + Documents.Section doc2 = this.gestionnaire.createElem("Chapitre 1"); + doc.ajouterElement(doc2); + doc2.ajouterElement("Faites une application Java, lancez, cela plante ! Beau Javana Split que nous avons là !"); +} \ No newline at end of file diff --git a/workspace/.metadata/.lock b/workspace/.metadata/.lock new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.log b/workspace/.metadata/.log new file mode 100644 index 0000000..b722276 --- /dev/null +++ b/workspace/.metadata/.log @@ -0,0 +1,1907 @@ +!SESSION 2007-11-06 07:44:12.184 ----------------------------------------------- +eclipse.buildId=M20060118-1600 +java.version=1.5.0_04 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=fr_FR +Command-line arguments: -os win32 -ws win32 -arch x86 + +!ENTRY org.tigris.subversion.subclipse.core 4 0 2007-11-06 07:44:33.669 +!MESSAGE No subversion client interface found. +!STACK 0 +org.tigris.subversion.svnclientadapter.SVNClientException: No subversion client interface found. + at org.tigris.subversion.svnclientadapter.SVNClientAdapterFactory.getPreferredSVNClientType(SVNClientAdapterFactory.java:83) + at org.tigris.subversion.subclipse.core.SVNClientManager.setSvnClientInterface(SVNClientManager.java:58) + at org.tigris.subversion.subclipse.core.SVNClientManager.getSvnClientInterface(SVNClientManager.java:94) + at org.tigris.subversion.subclipse.core.SVNClientManager.createSVNClient(SVNClientManager.java:111) + at org.tigris.subversion.subclipse.core.SVNProviderPlugin.createSVNClient(SVNProviderPlugin.java:371) + at org.tigris.subversion.subclipse.core.SVNProviderPlugin.getAdminDirectoryName(SVNProviderPlugin.java:492) + at org.tigris.subversion.subclipse.core.SVNProviderPlugin.isAdminDirectory(SVNProviderPlugin.java:501) + at org.tigris.subversion.subclipse.core.resourcesListeners.SyncFileChangeListener$1.visit(SyncFileChangeListener.java:95) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:68) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77) + at org.tigris.subversion.subclipse.core.resourcesListeners.SyncFileChangeListener.resourceChanged(SyncFileChangeListener.java:69) + at org.eclipse.core.internal.events.NotificationManager$2.run(NotificationManager.java:276) + at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044) + at org.eclipse.core.runtime.Platform.run(Platform.java:783) + at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:270) + at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:144) + at org.eclipse.core.internal.resources.Workspace.broadcastBuildEvent(Workspace.java:185) + at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:137) + at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:200) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:76) + +!ENTRY org.eclipse.core.resources 4 2 2007-11-06 07:44:33.700 +!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.core.resources". +!STACK 0 +java.lang.NullPointerException + at org.tigris.subversion.subclipse.core.SVNProviderPlugin.getAdminDirectoryName(SVNProviderPlugin.java:492) + at org.tigris.subversion.subclipse.core.SVNProviderPlugin.isAdminDirectory(SVNProviderPlugin.java:501) + at org.tigris.subversion.subclipse.core.resourcesListeners.SyncFileChangeListener$1.visit(SyncFileChangeListener.java:95) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:68) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77) + at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77) + at org.tigris.subversion.subclipse.core.resourcesListeners.SyncFileChangeListener.resourceChanged(SyncFileChangeListener.java:69) + at org.eclipse.core.internal.events.NotificationManager$2.run(NotificationManager.java:276) + at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044) + at org.eclipse.core.runtime.Platform.run(Platform.java:783) + at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:270) + at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:144) + at org.eclipse.core.internal.resources.Workspace.broadcastBuildEvent(Workspace.java:185) + at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:137) + at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:200) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:76) +!SESSION 2007-11-06 10:28:16.491 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-11-06 10:28:17.336 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.core.resources 4 567 2007-11-06 10:28:24.781 +!MESSAGE Workspace restored, but some problems occurred. +!SUBENTRY 1 org.eclipse.core.resources 4 567 2007-11-06 10:28:24.782 +!MESSAGE The project description file (.project) for InterfacesBlankoides is missing. This file contains important information about the project. The project will not function properly until this file is restored. + +!ENTRY org.eclipse.emf.ecore 2 0 2007-11-06 10:28:32.904 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-11-29 15:42:45.480 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-11-29 15:42:46.531 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-11-29 15:43:04.707 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-06 13:38:56.480 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-06 13:38:58.757 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-06 13:39:16.263 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-06 15:25:17.944 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-06 15:25:19.777 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.core.resources 2 10035 2007-12-06 15:25:27.837 +!MESSAGE A workspace crash was detected. The previous session did not exit normally. + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-06 15:25:40.024 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-06 17:11:42.921 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-06 17:11:46.537 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-06 17:12:10.248 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-07 13:34:32.376 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-07 13:34:34.118 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-07 13:34:52.786 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-07 15:03:48.955 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-07 15:03:50.059 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.core.resources 2 10035 2007-12-07 15:03:58.439 +!MESSAGE A workspace crash was detected. The previous session did not exit normally. + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-07 15:04:10.709 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-13 13:16:36.206 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-13 13:16:37.333 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-13 13:16:52.519 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-13 15:14:11.778 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-13 15:14:13.298 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.core.resources 2 10035 2007-12-13 15:14:20.372 +!MESSAGE A workspace crash was detected. The previous session did not exit normally. + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-13 15:14:35.877 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' + +!ENTRY org.eclipse.jdt.ui 4 10001 2007-12-13 15:21:30.374 +!MESSAGE Internal Error +!STACK 1 +Java Model Exception: Java Model Status [addPropertyChangeListener(java.beans.PropertyChangeListener) [in Window [in Window.class [in java.awt [in /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/rt.jar]]]] does not exist] + at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException(JavaElement.java:485) + at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:516) + at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:249) + at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:235) + at org.eclipse.jdt.internal.core.BinaryMethod.getSignature(BinaryMethod.java:401) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.isSameMethodSignature(MethodProposalInfo.java:178) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.findMethod(MethodProposalInfo.java:151) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.findMethod(MethodProposalInfo.java:93) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.resolveMember(MethodProposalInfo.java:71) + at org.eclipse.jdt.internal.ui.text.java.MemberProposalInfo.getJavaElement(MemberProposalInfo.java:56) + at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:73) + at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:59) + at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:458) + at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:102) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58) +!SUBENTRY 1 org.eclipse.jdt.core 4 969 2007-12-13 15:21:30.375 +!MESSAGE addPropertyChangeListener(java.beans.PropertyChangeListener) [in Window [in Window.class [in java.awt [in /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/rt.jar]]]] does not exist + +!ENTRY org.eclipse.jdt.ui 4 10001 2007-12-13 15:21:53.450 +!MESSAGE Internal Error +!STACK 1 +Java Model Exception: Java Model Status [getFocusOwner() [in Window [in Window.class [in java.awt [in /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/rt.jar]]]] does not exist] + at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException(JavaElement.java:485) + at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:516) + at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:249) + at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:235) + at org.eclipse.jdt.internal.core.BinaryMethod.getSignature(BinaryMethod.java:401) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.isSameMethodSignature(MethodProposalInfo.java:178) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.findMethod(MethodProposalInfo.java:151) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.findMethod(MethodProposalInfo.java:93) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.resolveMember(MethodProposalInfo.java:71) + at org.eclipse.jdt.internal.ui.text.java.MemberProposalInfo.getJavaElement(MemberProposalInfo.java:56) + at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:73) + at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:59) + at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:458) + at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:102) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58) +!SUBENTRY 1 org.eclipse.jdt.core 4 969 2007-12-13 15:21:53.450 +!MESSAGE getFocusOwner() [in Window [in Window.class [in java.awt [in /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/rt.jar]]]] does not exist + +!ENTRY org.eclipse.jdt.ui 4 10001 2007-12-13 15:21:53.958 +!MESSAGE Internal Error +!STACK 1 +Java Model Exception: Java Model Status [getGraphicsConfiguration() [in Window [in Window.class [in java.awt [in /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/rt.jar]]]] does not exist] + at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException(JavaElement.java:485) + at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:516) + at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:249) + at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:235) + at org.eclipse.jdt.internal.core.BinaryMethod.getSignature(BinaryMethod.java:401) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.isSameMethodSignature(MethodProposalInfo.java:178) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.findMethod(MethodProposalInfo.java:151) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.findMethod(MethodProposalInfo.java:93) + at org.eclipse.jdt.internal.ui.text.java.MethodProposalInfo.resolveMember(MethodProposalInfo.java:71) + at org.eclipse.jdt.internal.ui.text.java.MemberProposalInfo.getJavaElement(MemberProposalInfo.java:56) + at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:73) + at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:59) + at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:458) + at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:102) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58) +!SUBENTRY 1 org.eclipse.jdt.core 4 969 2007-12-13 15:21:53.958 +!MESSAGE getGraphicsConfiguration() [in Window [in Window.class [in java.awt [in /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/rt.jar]]]] does not exist +!SESSION 2007-12-14 12:12:24.685 ----------------------------------------------- +eclipse.buildId=M20050929-0840 +java.version=1.5.0_04 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=fr_FR +Command-line arguments: -os win32 -ws win32 -arch x86 + +!ENTRY org.eclipse.jdt.ui 4 0 2007-12-14 12:18:44.258 +!MESSAGE Error in JDT Core during reconcile +!STACK 1 +Java Model Exception: Java Model Status [FeuTricolore does not exist] + at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException(JavaElement.java:468) + at org.eclipse.jdt.internal.core.JavaProject.buildStructure(JavaProject.java:328) + at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:233) + at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:488) + at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:232) + at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:218) + at org.eclipse.jdt.internal.core.JavaProject.getJavaProjectElementInfo(JavaProject.java:1520) + at org.eclipse.jdt.internal.core.JavaProject.newNameLookup(JavaProject.java:2426) + at org.eclipse.jdt.internal.core.SearchableEnvironment.(SearchableEnvironment.java:60) + at org.eclipse.jdt.internal.core.SearchableEnvironment.(SearchableEnvironment.java:74) + at org.eclipse.jdt.internal.core.CancelableNameEnvironment.(CancelableNameEnvironment.java:26) + at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:148) + at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:214) + at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.executeOperation(ReconcileWorkingCopyOperation.java:79) + at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:718) + at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:777) + at org.eclipse.jdt.internal.core.CompilationUnit.reconcile(CompilationUnit.java:1081) + at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy$1.run(JavaReconcilingStrategy.java:98) + at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044) + at org.eclipse.core.runtime.Platform.run(Platform.java:783) + at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:82) + at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:147) + at org.eclipse.jdt.internal.ui.text.CompositeReconcilingStrategy.reconcile(CompositeReconcilingStrategy.java:86) + at org.eclipse.jdt.internal.ui.text.JavaCompositeReconcilingStrategy.reconcile(JavaCompositeReconcilingStrategy.java:94) + at org.eclipse.jface.text.reconciler.MonoReconciler.process(MonoReconciler.java:75) + at org.eclipse.jdt.internal.ui.text.JavaReconciler.process(JavaReconciler.java:339) + at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:204) +!SUBENTRY 1 org.eclipse.jdt.core 4 969 2007-12-14 12:18:44.258 +!MESSAGE FeuTricolore does not exist + +!ENTRY org.eclipse.ui.workbench 4 0 2007-12-14 12:18:45.742 +!MESSAGE WARNING: Blocked recursive attempt to close part org.eclipse.jdt.ui.CompilationUnitEditor while still in the middle of activating it +!STACK 0 +java.lang.RuntimeException: WARNING: Blocked recursive attempt to close part org.eclipse.jdt.ui.CompilationUnitEditor while still in the middle of activating it + at org.eclipse.ui.internal.WorkbenchPage.closeEditors(WorkbenchPage.java:1151) + at org.eclipse.ui.internal.WorkbenchPage.closeEditor(WorkbenchPage.java:1279) + at org.eclipse.ui.internal.EditorPane.doHide(EditorPane.java:54) + at org.eclipse.ui.internal.PartStack.close(PartStack.java:495) + at org.eclipse.ui.internal.EditorStack.close(EditorStack.java:197) + at org.eclipse.ui.internal.PartStack$1.close(PartStack.java:102) + at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation$1.handleEvent(TabbedStackPresentation.java:81) + at org.eclipse.ui.internal.presentations.util.AbstractTabFolder.fireEvent(AbstractTabFolder.java:267) + at org.eclipse.ui.internal.presentations.util.AbstractTabFolder.fireEvent(AbstractTabFolder.java:276) + at org.eclipse.ui.internal.presentations.defaultpresentation.DefaultTabFolder.access$1(DefaultTabFolder.java:1) + at org.eclipse.ui.internal.presentations.defaultpresentation.DefaultTabFolder$1.closeButtonPressed(DefaultTabFolder.java:67) + at org.eclipse.ui.internal.presentations.PaneFolder.notifyCloseListeners(PaneFolder.java:584) + at org.eclipse.ui.internal.presentations.PaneFolder$3.close(PaneFolder.java:190) + at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:2075) + at org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.java:292) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3080) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2713) + at org.eclipse.jface.window.Window.runEventLoop(Window.java:809) + at org.eclipse.jface.window.Window.open(Window.java:787) + at org.eclipse.ui.texteditor.AbstractTextEditor.handleEditorInputChanged(AbstractTextEditor.java:3423) + at org.eclipse.ui.texteditor.StatusTextEditor.handleEditorInputChanged(StatusTextEditor.java:203) + at org.eclipse.ui.texteditor.AbstractTextEditor.sanityCheckState(AbstractTextEditor.java:3575) + at org.eclipse.ui.texteditor.StatusTextEditor.sanityCheckState(StatusTextEditor.java:193) + at org.eclipse.ui.texteditor.AbstractTextEditor.safelySanityCheckState(AbstractTextEditor.java:3553) + at org.eclipse.ui.texteditor.AbstractTextEditor$ActivationListener.handleActivation(AbstractTextEditor.java:834) + at org.eclipse.ui.texteditor.AbstractTextEditor$ActivationListener.partActivated(AbstractTextEditor.java:796) + at org.eclipse.ui.internal.PartListenerList$1.run(PartListenerList.java:72) + at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044) + at org.eclipse.core.runtime.Platform.run(Platform.java:783) + at org.eclipse.ui.internal.PartListenerList.fireEvent(PartListenerList.java:58) + at org.eclipse.ui.internal.PartListenerList.firePartActivated(PartListenerList.java:70) + at org.eclipse.ui.internal.PartService.firePartActivated(PartService.java:73) + at org.eclipse.ui.internal.PartService.setActivePart(PartService.java:171) + at org.eclipse.ui.internal.WWinPartService.updateActivePart(WWinPartService.java:124) + at org.eclipse.ui.internal.WWinPartService.access$0(WWinPartService.java:115) + at org.eclipse.ui.internal.WWinPartService$1.partDeactivated(WWinPartService.java:48) + at org.eclipse.ui.internal.PartListenerList2$4.run(PartListenerList2.java:113) + at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044) + at org.eclipse.core.runtime.Platform.run(Platform.java:783) + at org.eclipse.ui.internal.PartListenerList2.fireEvent(PartListenerList2.java:54) + at org.eclipse.ui.internal.PartListenerList2.firePartDeactivated(PartListenerList2.java:111) + at org.eclipse.ui.internal.PartService.firePartDeactivated(PartService.java:116) + at org.eclipse.ui.internal.PartService.setActivePart(PartService.java:165) + at org.eclipse.ui.internal.WorkbenchPagePartList.fireActivePartChanged(WorkbenchPagePartList.java:56) + at org.eclipse.ui.internal.PartList.setActivePart(PartList.java:117) + at org.eclipse.ui.internal.WorkbenchPage.setActivePart(WorkbenchPage.java:2910) + at org.eclipse.ui.internal.WorkbenchPage.requestActivation(WorkbenchPage.java:2512) + at org.eclipse.ui.internal.PartPane.requestActivation(PartPane.java:249) + at org.eclipse.ui.internal.EditorPane.requestActivation(EditorPane.java:88) + at org.eclipse.ui.internal.presentations.PresentablePart.setFocus(PresentablePart.java:137) + at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation$1.handleEvent(TabbedStackPresentation.java:92) + at org.eclipse.ui.internal.presentations.util.AbstractTabFolder.fireEvent(AbstractTabFolder.java:267) + at org.eclipse.ui.internal.presentations.util.AbstractTabFolder.fireEvent(AbstractTabFolder.java:272) + at org.eclipse.ui.internal.presentations.util.AbstractTabFolder.handleMouseDown(AbstractTabFolder.java:342) + at org.eclipse.ui.internal.presentations.util.AbstractTabFolder$3.mouseDown(AbstractTabFolder.java:79) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:133) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3080) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2713) + at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1699) + at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143) + at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103) + at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:585) + at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) + at org.eclipse.core.launcher.Main.basicRun(Main.java:278) + at org.eclipse.core.launcher.Main.run(Main.java:973) + at org.eclipse.core.launcher.Main.main(Main.java:948) +!SESSION 2007-12-14 14:10:43.725 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-14 14:10:44.491 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-14 14:11:04.301 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-20 14:00:02.849 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-20 14:00:03.817 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-20 14:00:17.292 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-20 15:32:25.732 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-20 15:32:26.669 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.core.resources 2 10035 2007-12-20 15:32:30.871 +!MESSAGE A workspace crash was detected. The previous session did not exit normally. + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-20 15:32:37.911 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-20 20:45:58.836 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-20 20:46:00.977 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.osgi 4 0 2007-12-20 20:46:05.305 +!MESSAGE Application error +!STACK 1 +org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed] + at org.eclipse.swt.SWT.error(SWT.java:3400) + at org.eclipse.swt.widgets.Display.createDisplay(Display.java:793) + at org.eclipse.swt.widgets.Display.create(Display.java:781) + at org.eclipse.swt.graphics.Device.(Device.java:145) + at org.eclipse.swt.widgets.Display.(Display.java:452) + at org.eclipse.swt.widgets.Display.(Display.java:443) + at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:451) + at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:161) + at org.eclipse.ui.internal.ide.IDEApplication.createDisplay(IDEApplication.java:122) + at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:75) + at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) + at org.eclipse.core.launcher.Main.basicRun(Main.java:280) + at org.eclipse.core.launcher.Main.run(Main.java:977) + at org.eclipse.core.launcher.Main.main(Main.java:952) + +!ENTRY org.eclipse.osgi 2 0 2007-12-20 20:46:05.528 +!MESSAGE The following is a complete list of bundles which are not resolved, see the prior log entry for the root cause if it exists: +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:46:05.528 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.codegen.ecore.ui_1.2.0.v200609071509.jar [173] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:46:05.528 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.codegen.ecore_1.2.1.v200609071509.jar [175] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:46:05.528 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.examples.uml.ui_2.0.1.v200609071509.jar [181] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:46:05.528 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml.ecore.exporter_2.0.0.v200609071509.jar [185] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:46:05.528 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml.ecore.importer_2.0.0.v200609071509.jar [187] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:46:05.528 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml.edit_2.0.0.v200609071509.jar [189] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:46:05.528 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml.editor_2.0.1.v200609071509.jar [191] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:46:05.529 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml.resources_2.0.1.v200609071509.jar [193] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:46:05.529 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml_2.0.1.v200609071509.jar [195] was not resolved. +!SESSION 2007-12-20 20:47:54.472 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-20 20:47:55.900 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.osgi 4 0 2007-12-20 20:47:59.658 +!MESSAGE Application error +!STACK 1 +org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed] + at org.eclipse.swt.SWT.error(SWT.java:3400) + at org.eclipse.swt.widgets.Display.createDisplay(Display.java:793) + at org.eclipse.swt.widgets.Display.create(Display.java:781) + at org.eclipse.swt.graphics.Device.(Device.java:145) + at org.eclipse.swt.widgets.Display.(Display.java:452) + at org.eclipse.swt.widgets.Display.(Display.java:443) + at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:451) + at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:161) + at org.eclipse.ui.internal.ide.IDEApplication.createDisplay(IDEApplication.java:122) + at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:75) + at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) + at org.eclipse.core.launcher.Main.basicRun(Main.java:280) + at org.eclipse.core.launcher.Main.run(Main.java:977) + at org.eclipse.core.launcher.Main.main(Main.java:952) + +!ENTRY org.eclipse.osgi 2 0 2007-12-20 20:47:59.846 +!MESSAGE The following is a complete list of bundles which are not resolved, see the prior log entry for the root cause if it exists: +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:47:59.847 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.codegen.ecore.ui_1.2.0.v200609071509.jar [173] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:47:59.847 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.codegen.ecore_1.2.1.v200609071509.jar [175] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:47:59.847 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.examples.uml.ui_2.0.1.v200609071509.jar [181] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:47:59.847 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml.ecore.exporter_2.0.0.v200609071509.jar [185] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:47:59.847 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml.ecore.importer_2.0.0.v200609071509.jar [187] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:47:59.847 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml.edit_2.0.0.v200609071509.jar [189] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:47:59.847 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml.editor_2.0.1.v200609071509.jar [191] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:47:59.847 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml.resources_2.0.1.v200609071509.jar [193] was not resolved. +!SUBENTRY 1 org.eclipse.osgi 2 0 2007-12-20 20:47:59.847 +!MESSAGE Bundle update@plugins/org.eclipse.uml2.uml_2.0.1.v200609071509.jar [195] was not resolved. +!SESSION 2007-12-21 08:30:06.643 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-21 08:30:08.372 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-21 08:30:27.445 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-21 08:57:51.383 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-21 08:57:52.252 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-21 08:58:06.296 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' + +!ENTRY org.eclipse.ui.workbench 4 0 2007-12-21 09:17:37.491 +!MESSAGE Path must include project and resource name: /RequeteSimple +!STACK 0 +java.lang.IllegalArgumentException: Path must include project and resource name: /RequeteSimple + at org.eclipse.core.runtime.Assert.isLegal(Assert.java:62) + at org.eclipse.core.internal.resources.Workspace.newResource(Workspace.java:1565) + at org.eclipse.core.internal.resources.Container.getFolder(Container.java:137) + at org.eclipse.jdt.internal.core.PackageFragment.getResource(PackageFragment.java:332) + at org.eclipse.jdt.internal.core.util.Util.isExcluded(Util.java:1239) + at org.eclipse.jdt.internal.core.PackageFragment.exists(PackageFragment.java:172) + at com.yang.uml2.model.UMLModelHelper.findPackage(SourceFile:584) + at com.omondo.uml.obf.btm.n(SourceFile:382) + at com.omondo.uml.obf.cgz.f(SourceFile:63) + at com.omondo.uml.obf.ku.x(SourceFile:356) + at com.omondo.uml.obf.cyk.getJavaElement(SourceFile:28) + at com.omondo.uml.obf.emu.b(SourceFile:222) + at com.omondo.uml.obf.emu.b(SourceFile:204) + at com.omondo.uml.obf.emu.calculateEnabled(SourceFile:103) + at org.eclipse.gef.ui.actions.WorkbenchPartAction.refresh(WorkbenchPartAction.java:119) + at org.eclipse.gef.ui.actions.SelectionAction.handleSelectionChanged(SelectionAction.java:85) + at org.eclipse.gef.ui.actions.SelectionAction.setSelection(SelectionAction.java:96) + at org.eclipse.gef.ui.actions.SelectionAction.update(SelectionAction.java:117) + at org.eclipse.gef.ui.parts.GraphicalEditor.updateActions(GraphicalEditor.java:414) + at org.eclipse.gef.ui.parts.GraphicalEditor.selectionChanged(GraphicalEditor.java:366) + at com.omondo.uml.ui.diagrams.DiagramEditor.selectionChanged(SourceFile:1759) + at org.eclipse.ui.internal.AbstractSelectionService.fireSelection(AbstractSelectionService.java:156) + at org.eclipse.ui.internal.AbstractSelectionService.setActivePart(AbstractSelectionService.java:282) + at org.eclipse.ui.internal.WWinPartService.updateActivePart(WWinPartService.java:125) + at org.eclipse.ui.internal.WWinPartService.access$0(WWinPartService.java:115) + at org.eclipse.ui.internal.WWinPartService$1.partDeactivated(WWinPartService.java:48) + at org.eclipse.ui.internal.PartListenerList2$4.run(PartListenerList2.java:113) + at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) + at org.eclipse.core.runtime.Platform.run(Platform.java:843) + at org.eclipse.ui.internal.PartListenerList2.fireEvent(PartListenerList2.java:53) + at org.eclipse.ui.internal.PartListenerList2.firePartDeactivated(PartListenerList2.java:111) + at org.eclipse.ui.internal.PartService.firePartDeactivated(PartService.java:116) + at org.eclipse.ui.internal.PartService.setActivePart(PartService.java:165) + at org.eclipse.ui.internal.WorkbenchPagePartList.fireActivePartChanged(WorkbenchPagePartList.java:56) + at org.eclipse.ui.internal.PartList.setActivePart(PartList.java:126) + at org.eclipse.ui.internal.WorkbenchPage.setActivePart(WorkbenchPage.java:3207) + at org.eclipse.ui.internal.WorkbenchPage.activate(WorkbenchPage.java:588) + at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2604) + at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2528) + at org.eclipse.ui.internal.WorkbenchPage.access$10(WorkbenchPage.java:2520) + at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.java:2505) + at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) + at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2500) + at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2485) + at org.eclipse.ui.ide.IDE.openEditor(IDE.java:388) + at org.eclipse.ui.ide.IDE.openEditor(IDE.java:350) + at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:275) + at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:139) + at com.omondo.uml.obf.aky.a(SourceFile:84) + at com.omondo.uml.obf.cgz.c(SourceFile:145) + at com.omondo.uml.UMLDiagramUI.a(SourceFile:85) + at com.omondo.uml.UMLDiagramUI.a(SourceFile:49) + at com.omondo.uml.std.external.UMLReverseEngineeringProjectAction.run(SourceFile:84) + at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:254) + at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:539) + at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:488) + at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:400) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3180) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2856) + at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1930) + at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1894) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:422) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) + at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95) + at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) + at org.eclipse.core.launcher.Main.basicRun(Main.java:280) + at org.eclipse.core.launcher.Main.run(Main.java:977) + at org.eclipse.core.launcher.Main.main(Main.java:952) + +!ENTRY org.eclipse.ui.workbench 4 2 2007-12-21 09:17:37.498 +!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.ui.workbench". +!STACK 0 +java.lang.IllegalArgumentException: Path must include project and resource name: /RequeteSimple + at org.eclipse.core.runtime.Assert.isLegal(Assert.java:62) + at org.eclipse.core.internal.resources.Workspace.newResource(Workspace.java:1565) + at org.eclipse.core.internal.resources.Container.getFolder(Container.java:137) + at org.eclipse.jdt.internal.core.PackageFragment.getResource(PackageFragment.java:332) + at org.eclipse.jdt.internal.core.util.Util.isExcluded(Util.java:1239) + at org.eclipse.jdt.internal.core.PackageFragment.exists(PackageFragment.java:172) + at com.yang.uml2.model.UMLModelHelper.findPackage(SourceFile:584) + at com.omondo.uml.obf.btm.n(SourceFile:382) + at com.omondo.uml.obf.cgz.f(SourceFile:63) + at com.omondo.uml.obf.ku.x(SourceFile:356) + at com.omondo.uml.obf.cyk.getJavaElement(SourceFile:28) + at com.omondo.uml.obf.emu.b(SourceFile:222) + at com.omondo.uml.obf.emu.b(SourceFile:204) + at com.omondo.uml.obf.emu.calculateEnabled(SourceFile:103) + at org.eclipse.gef.ui.actions.WorkbenchPartAction.isEnabled(WorkbenchPartAction.java:111) + at org.eclipse.ui.actions.RetargetAction.setActionHandler(RetargetAction.java:272) + at org.eclipse.ui.actions.RetargetAction.partActivated(RetargetAction.java:154) + at org.eclipse.ui.internal.PartListenerList$1.run(PartListenerList.java:72) + at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) + at org.eclipse.core.runtime.Platform.run(Platform.java:843) + at org.eclipse.ui.internal.PartListenerList.fireEvent(PartListenerList.java:57) + at org.eclipse.ui.internal.PartListenerList.firePartActivated(PartListenerList.java:70) + at org.eclipse.ui.internal.PartService.firePartActivated(PartService.java:73) + at org.eclipse.ui.internal.PartService.setActivePart(PartService.java:171) + at org.eclipse.ui.internal.WorkbenchPagePartList.fireActivePartChanged(WorkbenchPagePartList.java:56) + at org.eclipse.ui.internal.PartList.setActivePart(PartList.java:126) + at org.eclipse.ui.internal.WorkbenchPage.setActivePart(WorkbenchPage.java:3207) + at org.eclipse.ui.internal.WorkbenchPage.activate(WorkbenchPage.java:588) + at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2604) + at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2528) + at org.eclipse.ui.internal.WorkbenchPage.access$10(WorkbenchPage.java:2520) + at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.java:2505) + at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) + at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2500) + at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2485) + at org.eclipse.ui.ide.IDE.openEditor(IDE.java:388) + at org.eclipse.ui.ide.IDE.openEditor(IDE.java:350) + at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:275) + at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:139) + at com.omondo.uml.obf.aky.a(SourceFile:84) + at com.omondo.uml.obf.cgz.c(SourceFile:145) + at com.omondo.uml.UMLDiagramUI.a(SourceFile:85) + at com.omondo.uml.UMLDiagramUI.a(SourceFile:49) + at com.omondo.uml.std.external.UMLReverseEngineeringProjectAction.run(SourceFile:84) + at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:254) + at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:539) + at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:488) + at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:400) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3180) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2856) + at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1930) + at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1894) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:422) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) + at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95) + at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) + at org.eclipse.core.launcher.Main.basicRun(Main.java:280) + at org.eclipse.core.launcher.Main.run(Main.java:977) + at org.eclipse.core.launcher.Main.main(Main.java:952) + +!ENTRY org.eclipse.jface 4 0 2007-12-21 09:17:47.449 +!MESSAGE The command ("item-zoom-fit-window") is undefined +!STACK 0 +java.lang.Exception + at org.eclipse.jface.action.ExternalActionManager$CommandCallback.isActive(ExternalActionManager.java:297) + at org.eclipse.jface.action.ActionContributionItem.isCommandActive(ActionContributionItem.java:581) + at org.eclipse.jface.action.ActionContributionItem.isVisible(ActionContributionItem.java:635) + at org.eclipse.jface.action.MenuManager.update(MenuManager.java:603) + at org.eclipse.jface.action.MenuManager.update(MenuManager.java:581) + at org.eclipse.jface.action.MenuManager.fill(MenuManager.java:235) + at org.eclipse.jface.action.SubContributionItem.fill(SubContributionItem.java:66) + at org.eclipse.jface.action.MenuManager.update(MenuManager.java:662) + at org.eclipse.jface.action.MenuManager.updateAll(MenuManager.java:762) + at org.eclipse.ui.internal.WorkbenchWindow.updateActionBars(WorkbenchWindow.java:2753) + at org.eclipse.ui.internal.WorkbenchWindow.largeUpdateEnd(WorkbenchWindow.java:2803) + at org.eclipse.ui.internal.Workbench.largeUpdateEnd(Workbench.java:2735) + at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2531) + at org.eclipse.ui.internal.WorkbenchPage.access$10(WorkbenchPage.java:2520) + at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.java:2505) + at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) + at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2500) + at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2485) + at org.eclipse.ui.ide.IDE.openEditor(IDE.java:388) + at org.eclipse.ui.ide.IDE.openEditor(IDE.java:350) + at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:275) + at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:139) + at com.omondo.uml.obf.aky.a(SourceFile:84) + at com.omondo.uml.obf.cgz.c(SourceFile:145) + at com.omondo.uml.UMLDiagramUI.a(SourceFile:85) + at com.omondo.uml.UMLDiagramUI.a(SourceFile:49) + at com.omondo.uml.std.external.UMLReverseEngineeringProjectAction.run(SourceFile:84) + at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:254) + at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:539) + at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:488) + at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:400) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3180) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2856) + at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1930) + at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1894) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:422) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) + at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95) + at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) + at org.eclipse.core.launcher.Main.basicRun(Main.java:280) + at org.eclipse.core.launcher.Main.run(Main.java:977) + at org.eclipse.core.launcher.Main.main(Main.java:952) + +!ENTRY org.eclipse.jface 4 0 2007-12-21 09:17:47.455 +!MESSAGE The command ("item-zoom-none") is undefined +!STACK 0 +java.lang.Exception + at org.eclipse.jface.action.ExternalActionManager$CommandCallback.isActive(ExternalActionManager.java:297) + at org.eclipse.jface.action.ActionContributionItem.isCommandActive(ActionContributionItem.java:581) + at org.eclipse.jface.action.ActionContributionItem.isVisible(ActionContributionItem.java:635) + at org.eclipse.jface.action.MenuManager.update(MenuManager.java:603) + at org.eclipse.jface.action.MenuManager.update(MenuManager.java:581) + at org.eclipse.jface.action.MenuManager.fill(MenuManager.java:235) + at org.eclipse.jface.action.SubContributionItem.fill(SubContributionItem.java:66) + at org.eclipse.jface.action.MenuManager.update(MenuManager.java:662) + at org.eclipse.jface.action.MenuManager.updateAll(MenuManager.java:762) + at org.eclipse.ui.internal.WorkbenchWindow.updateActionBars(WorkbenchWindow.java:2753) + at org.eclipse.ui.internal.WorkbenchWindow.largeUpdateEnd(WorkbenchWindow.java:2803) + at org.eclipse.ui.internal.Workbench.largeUpdateEnd(Workbench.java:2735) + at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2531) + at org.eclipse.ui.internal.WorkbenchPage.access$10(WorkbenchPage.java:2520) + at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.java:2505) + at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) + at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2500) + at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2485) + at org.eclipse.ui.ide.IDE.openEditor(IDE.java:388) + at org.eclipse.ui.ide.IDE.openEditor(IDE.java:350) + at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:275) + at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:139) + at com.omondo.uml.obf.aky.a(SourceFile:84) + at com.omondo.uml.obf.cgz.c(SourceFile:145) + at com.omondo.uml.UMLDiagramUI.a(SourceFile:85) + at com.omondo.uml.UMLDiagramUI.a(SourceFile:49) + at com.omondo.uml.std.external.UMLReverseEngineeringProjectAction.run(SourceFile:84) + at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:254) + at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:539) + at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:488) + at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:400) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3180) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2856) + at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1930) + at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1894) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:422) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) + at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95) + at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) + at java.lang.reflect.Method.invoke(Method.java:597) + at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) + at org.eclipse.core.launcher.Main.basicRun(Main.java:280) + at org.eclipse.core.launcher.Main.run(Main.java:977) + at org.eclipse.core.launcher.Main.main(Main.java:952) +!SESSION 2007-12-21 09:28:05.457 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-21 09:28:06.976 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-21 09:28:51.866 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-21 10:40:22.386 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-21 10:40:23.706 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-21 10:40:40.446 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-21 13:25:20.244 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-21 13:25:20.966 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-21 13:25:31.164 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-21 14:42:27.838 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-21 14:42:28.477 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-21 14:42:37.565 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2007-12-22 00:46:15.194 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2007-12-22 00:46:15.841 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2007-12-22 00:47:11.098 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2008-01-10 13:38:07.790 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2008-01-10 13:38:10.933 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2008-01-10 13:38:26.701 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2008-01-11 13:24:52.426 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2008-01-11 13:24:54.654 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2008-01-11 13:25:13.123 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2008-01-24 15:18:23.317 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2008-01-24 15:18:24.732 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2008-01-24 15:18:41.009 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' +!SESSION 2008-01-25 10:11:34.867 ----------------------------------------------- +eclipse.buildId=M20070212-1330 +java.version=1.6.0 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=fr_FR +Command-line arguments: -os linux -ws gtk -arch x86 + +!ENTRY org.eclipse.update.configurator 2008-01-25 10:11:35.820 +!MESSAGE Could not load from shared install +!STACK 0 +java.lang.Exception + at org.eclipse.update.internal.configurator.ConfigurationParser.processConfig(ConfigurationParser.java:312) + at org.eclipse.update.internal.configurator.ConfigurationParser.startElement(ConfigurationParser.java:111) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645) + at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) + at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) + at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) + at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) + at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) + at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) + at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) + at org.eclipse.update.internal.configurator.ConfigurationParser.parse(ConfigurationParser.java:75) + at org.eclipse.update.internal.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:1057) + at org.eclipse.update.internal.configurator.PlatformConfiguration.initializeCurrent(PlatformConfiguration.java:726) + at org.eclipse.update.internal.configurator.PlatformConfiguration.(PlatformConfiguration.java:102) + at org.eclipse.update.internal.configurator.PlatformConfiguration.startup(PlatformConfiguration.java:680) + at org.eclipse.update.internal.configurator.ConfigurationActivator.getPlatformConfiguration(ConfigurationActivator.java:331) + at org.eclipse.update.internal.configurator.ConfigurationActivator.initialize(ConfigurationActivator.java:111) + at org.eclipse.update.internal.configurator.ConfigurationActivator.start(ConfigurationActivator.java:71) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:991) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:985) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:966) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:317) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:329) + at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1046) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:573) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:495) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) + at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:455) + at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) + at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291) + +!ENTRY org.eclipse.emf.ecore 2 0 2008-01-25 10:11:47.173 +!MESSAGE Both 'com.omondo.uml.core' and 'com.omondo.uml.std' register a package for 'editmodel.xmi' diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/506efec1fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/506efec1fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..e39e3ca --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/506efec1fea3001c1027e59cc3e35e89 @@ -0,0 +1,42 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + if(connection!=null){try{connection.close()}catch(Exception e){e.printStackTrace();}} + } + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/508c636d84a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/508c636d84a9001c1d3abf97745a02da new file mode 100644 index 0000000..6ba4932 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/508c636d84a9001c1d3abf97745a02da @@ -0,0 +1,148 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addComponentListener(new ComponentListener(){ + public void actionPerformed(ActionEvent ev){ + + } + }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/7075f41398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/7075f41398af001c18c4935e001381da new file mode 100644 index 0000000..1b4af19 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/7075f41398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/a0f4de6305a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/a0f4de6305a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..2ada59a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/0/a0f4de6305a4001c1027e59cc3e35e89 @@ -0,0 +1,79 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + ResultSetMetaData rsmd = resultat.getMetaData(); + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/00b0a57cc8a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/00b0a57cc8a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..030347c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/00b0a57cc8a4001c1acc9f54b60f9b57 @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + + Panneau_Centre.add(jtextServeur) + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/c0c426a300af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/c0c426a300af001c14499bdcdfff58b3 new file mode 100644 index 0000000..fc04719 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/c0c426a300af001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n" + connection.getCatalog(); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage() + this.getPassword(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/c0e0920a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/c0e0920a98af001c18c4935e001381da new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/f007f1949eaf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/f007f1949eaf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..b47fc10 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1/f007f1949eaf001c1c2eb8ec16be26ca @@ -0,0 +1,234 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import fr.blankoworld.connexionBDD.Connexion; +import fr.blankoworld.ihm.IHMConnexion; +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +/** + * @author 3dossmanno + */ +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/10/205c0df520af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/10/205c0df520af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..44c4e0b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/10/205c0df520af001c1bf1a004f0d77fc3 differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/10/303dc635ffae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/10/303dc635ffae001c14499bdcdfff58b3 new file mode 100644 index 0000000..bdd3505 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/10/303dc635ffae001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp; + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte."; + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse."; + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/00d40ea581a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/00d40ea581a9001c1d3abf97745a02da new file mode 100644 index 0000000..03e7bd9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/00d40ea581a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Importation de la fentre de Connexion +import Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + Connexion conn = new Connexion(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/5082291a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/5082291a98af001c18c4935e001381da new file mode 100644 index 0000000..edc138c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/5082291a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/60698d1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/60698d1998af001c18c4935e001381da new file mode 100644 index 0000000..812fce9 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/60698d1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/b041bd1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/b041bd1b98af001c18c4935e001381da new file mode 100644 index 0000000..887d10f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/11/b041bd1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/202bb31798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/202bb31798af001c18c4935e001381da new file mode 100644 index 0000000..81a2153 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/202bb31798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/20ab7a1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/20ab7a1698af001c18c4935e001381da new file mode 100644 index 0000000..a6abd9f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/20ab7a1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/409ad41b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/409ad41b98af001c18c4935e001381da new file mode 100644 index 0000000..b02c8c9 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/409ad41b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/60029161c8a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/60029161c8a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..030347c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/60029161c8a4001c1acc9f54b60f9b57 @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + + Panneau_Centre.add(jtextServeur) + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/c0be261698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/c0be261698af001c18c4935e001381da new file mode 100644 index 0000000..60b18d0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/12/c0be261698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/13/a052b4bcffae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/13/a052b4bcffae001c14499bdcdfff58b3 new file mode 100644 index 0000000..d9011fa --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/13/a052b4bcffae001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n" + connection.getCatalog(); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/13/b0ae371698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/13/b0ae371698af001c18c4935e001381da new file mode 100644 index 0000000..8212fb5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/13/b0ae371698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/14/000e19e6fca3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/14/000e19e6fca3001c1027e59cc3e35e89 new file mode 100644 index 0000000..6148455 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/14/000e19e6fca3001c1027e59cc3e35e89 @@ -0,0 +1,43 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + Connection conn = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/14/f0cae11998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/14/f0cae11998af001c18c4935e001381da new file mode 100644 index 0000000..6d1d8dc Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/14/f0cae11998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/15/309a9b1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/15/309a9b1998af001c18c4935e001381da new file mode 100644 index 0000000..e9dc65d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/15/309a9b1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/15/806ace804caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/15/806ace804caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..9963b7a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/15/806ace804caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,189 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + int jo; + jo = JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + if(jo == 0){ + system.out.print("Bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/15/80cff49e4daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/15/80cff49e4daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..dc967f0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/15/80cff49e4daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,200 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getPassword(); + + + this.pr.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/0017a6fd48aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/0017a6fd48aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..4def98c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/0017a6fd48aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + invalidate(); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/2004e26b7ea9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/2004e26b7ea9001c1d3abf97745a02da new file mode 100644 index 0000000..547b9d4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/2004e26b7ea9001c1d3abf97745a02da @@ -0,0 +1,80 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + MenuPrincipal.setBorder(new BevelBorder(BevelBorder.RAISED)); + + + + + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/f02b4279c3a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/f02b4279c3a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..7590a35 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/f02b4279c3a4001c1acc9f54b60f9b57 @@ -0,0 +1,20 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/f0f1371598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/f0f1371598af001c18c4935e001381da new file mode 100644 index 0000000..31f5e07 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/16/f0f1371598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/002e08b104a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/002e08b104a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..51e336e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/002e08b104a4001c1027e59cc3e35e89 @@ -0,0 +1,75 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + System.out.println(resultat.getNString(1)); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/0058c51b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/0058c51b98af001c18c4935e001381da new file mode 100644 index 0000000..f93a70c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/0058c51b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/305dbe5b02af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/305dbe5b02af001c14499bdcdfff58b3 new file mode 100644 index 0000000..f4977e3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/305dbe5b02af001c14499bdcdfff58b3 @@ -0,0 +1,131 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + System.out.print(connection.getCatalog()); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/80fe8ebb99af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/80fe8ebb99af001c18c4935e001381da new file mode 100644 index 0000000..5499d8a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/17/80fe8ebb99af001c18c4935e001381da @@ -0,0 +1,6 @@ +#Fri Dec 21 08:45:51 CET 2007 +eclipse.preferences.version=1 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org;com;oracle.jdbc.driver; +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/18/c08b6d1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/18/c08b6d1698af001c18c4935e001381da new file mode 100644 index 0000000..33fd6fd Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/18/c08b6d1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/18/c0f990f720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/18/c0f990f720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..43f6f9b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/18/c0f990f720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Error interno + +ORA-17002=Excepci\u00f3n de E/S + +ORA-17003=\u00cdndice de columna no v\u00e1lido + +ORA-17004=Tipo de columna no v\u00e1lido + +ORA-17005=Tipo de columna no soportado + +ORA-17006=Nombre de columna no v\u00e1lido + +ORA-17007=Columna din\u00e1mica no v\u00e1lida + +ORA-17008=Conexi\u00f3n cerrada + +ORA-17009=Sentencia cerrada + +ORA-17010=Juego de resultados cerrado + +ORA-17011=Juego de resultados agotado + +ORA-17012=Conflicto de tipo de par\u00e1metro + +ORA-17014=No se ha llamado a ResultSet.next + +ORA-17015=Se ha cancelado la sentencia + +ORA-17016=Timeout de sentencia + +ORA-17017=Ya se ha inicializado el cursor + +ORA-17018=Cursor no v\u00e1lido + +ORA-17019=S\u00f3lo puede describir una consulta + +ORA-17020=Recuperaci\u00f3n previa de fila no v\u00e1lida + +ORA-17021=Faltan definiciones + +ORA-17022=Faltan definiciones en el \u00edndice + +ORA-17023=Funci\u00f3n no soportada + +ORA-17024=No hay lectura de datos + +ORA-17025=Error en defines.isNull () + +ORA-17026=Desbordamiento Num\u00e9rico + +ORA-17027=El flujo ya se ha cerrado + +ORA-17028=No se pueden realizar nuevas definiciones hasta que no se cierre el juego de resultados actual + +ORA-17029=setReadOnly: Conexiones de s\u00f3lo lectura no soportadas + +ORA-17030=READ_COMMITTED y SERIALIZABLE son los \u00fanicos niveles de transacci\u00f3n v\u00e1lidos + +ORA-17031=setAutoClose: S\u00f3lo soporta el modo de cierre autom\u00e1tico + +ORA-17032=no se puede definir la recuperaci\u00f3n previa de fila en cero + +ORA-17033=Cadena SQL92 con formato incorrecto en la posici\u00f3n + +ORA-17034=Elemento SQL92 no soportado en la posici\u00f3n + +ORA-17035=\u00a1\u00a1Juego de caracteres no soportado!! + +ORA-17036=excepci\u00f3n en OracleNumber + +ORA-17037=Fallo al convertir entre UTF8 y UCS2 + +ORA-17038=La matriz de bytes no es suficientemente larga + +ORA-17039=La matriz de caracteres no es suficientemente larga + +ORA-17040=El subprotocolo se debe especificar en la direcci\u00f3n URL de conexi\u00f3n + +ORA-17041=Falta el par\u00e1metro IN o OUT en el \u00edndice: + +ORA-17042=Valor de lote no v\u00e1lido + +ORA-17043=Tama\u00f1o m\u00e1ximo de flujo no v\u00e1lido + +ORA-17044=Error interno: No se ha asignado la matriz de datos + +ORA-17045=Error interno: Se ha intentado acceder a valores de enlace aparte del valor de lote + +ORA-17046=Error interno: \u00cdndice no v\u00e1lido para el acceso a los datos + +ORA-17047=Error en el an\u00e1lisis del descriptor de tipo + +ORA-17048=Tipo no definido + +ORA-17049=Tipos de objeto JAVA y SQL inconsistentes + +ORA-17050=no existe ese elemento en el vector + +ORA-17051=Esta API no se puede utilizar para tipos que no sean UDT + +ORA-17052=Esta referencia no es v\u00e1lida + +ORA-17053=El tama\u00f1o no es v\u00e1lido + +ORA-17054=El localizador LOB no es v\u00e1lido + +ORA-17055=Se ha encontrado un car\u00e1cter no v\u00e1lido en + +ORA-17056=Juego de caracteres no soportado + +ORA-17057=LOB cerrado + +ORA-17058=Error interno: Ratio de conversi\u00f3n NLS no v\u00e1lida + +ORA-17059=Fallo al convertir a representaci\u00f3n interna + +ORA-17060=Fallo al construir el descriptor + +ORA-17061=Falta el descriptor + +ORA-17062=El cursor de referencia no es v\u00e1lido + +ORA-17063=No est\u00e1 en una transacci\u00f3n + +ORA-17064=La sintaxis no es v\u00e1lida o el nombre de la base de datos es nulo + +ORA-17065=La clase de conversi\u00f3n es nula + +ORA-17066=Se necesita implementaci\u00f3n concreta del nivel de acceso + +ORA-17067=La direcci\u00f3n URL de Oracle especificada no es v\u00e1lida + +ORA-17068=Argumento(s) no v\u00e1lido(s) en la llamada + +ORA-17069=Utilizar llamada XA expl\u00edcita + +ORA-17070=El tama\u00f1o de los datos es mayor que el tama\u00f1o m\u00e1ximo para este tipo + +ORA-17071=Se ha excedido el l\u00edmite m\u00e1ximo de VARRAY + +ORA-17072=El valor insertado es demasiado largo para la columna + +ORA-17073=El manejador l\u00f3gico ya no es v\u00e1lido + +ORA-17074=patr\u00f3n de nombre no v\u00e1lido + +ORA-17075=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo reenv\u00edo + +ORA-17076=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo lectura + +ORA-17077=Fallo al definir el valor REF + +ORA-17078=No se puede realizar la operaci\u00f3n ya que las conexiones ya est\u00e1n abiertas + +ORA-17079=Las credenciales del usuario no coinciden con las existentes + +ORA-17080=comando por lotes no v\u00e1lido + +ORA-17081=se ha producido un error durante el procesamiento por lotes + +ORA-17082=No es la fila actual + +ORA-17083=No est\u00e1 en la fila de inserci\u00f3n + +ORA-17084=Llamada en la fila de inserci\u00f3n + +ORA-17085=Se ha producido un conflicto de valores + +ORA-17086=El valor de la columna no est\u00e1 definido en la fila de inserci\u00f3n + +ORA-17087=Indicaci\u00f3n de rendimiento ignorada: setFetchDirection() + +ORA-17088=Sintaxis no soportada para el tipo de juego de resultados y el nivel de simultaneidad solicitados +ORA-17089=error interno + +ORA-17090=operaci\u00f3n no permitida + +ORA-17091=No se puede crear el juego de resultados en el tipo y/o nivel de simultaneidad solicitados + +ORA-17092=Las sentencias JDBC no se pueden crear o ejecutar al final del procesamiento de la llamada + +ORA-17093=La operaci\u00f3n OCI ha devuelto OCI_SUCCESS_WITH_INFO + +ORA-17094=Las versiones de tipo de objeto no coinciden + +ORA-17095=No se ha definido el tama\u00f1o de la cach\u00e9 de sentencias + +ORA-17096=La cach\u00e9 de sentencias no se puede activar para esta conexi\u00f3n l\u00f3gica. + +ORA-17097=Tipo de elemento de tabla indexada PL/SQL no v\u00e1lido + +ORA-17098=Operaci\u00f3n LOB vac\u00eda no v\u00e1lida + +ORA-17099=Longitud de matriz de tabla indexada PL/SQL no v\u00e1lida + +ORA-17100=Objeto Java de la base de datos no v\u00e1lido + +ORA-17101=Propiedades no v\u00e1lidas del objeto del conjunto de conexiones de OCI + +ORA-17102=Bfile es de s\u00f3lo lectura + +ORA-17103=tipo de conexi\u00f3n no v\u00e1lido para volver mediante getConnection. En su lugar, utilice getJavaSqlConnection + +ORA-17104=La sentencia SQL de ejecuci\u00f3n no puede estar vac\u00eda ni ser nula + +ORA-17105=no se ha definido la zona horaria de la sesi\u00f3n de conexi\u00f3n + +ORA-17106=se ha especificado una configuraci\u00f3n de conjunto de conexiones de controlador JDBC-OCI no v\u00e1lida + +ORA-17107=el tipo de proxy especificado no es v\u00e1lido + +ORA-17108=No se ha especificado la longitud m\u00e1xima en defineColumnType + +ORA-17109=no se ha encontrado la codificaci\u00f3n de car\u00e1cter Java est\u00e1ndar + +ORA-17110=la ejecuci\u00f3n ha terminado con advertencias + +ORA-17111=Se ha especificado un timeout de TTL de cach\u00e9 de conexiones no v\u00e1lido + +ORA-17112=Se ha especificado un intervalo de thread no v\u00e1lido + +ORA-17113=El valor del intervalo de thread es mayor que el valor del timeout de cach\u00e9 + +ORA-17114=no se ha podido utilizar la validaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17115=no se ha podido utilizar el rollback de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17116=no se ha podido activar la validaci\u00f3n autom\u00e1tica en una transacci\u00f3n global activa + +ORA-17117=no se ha podido definir el punto de grabaci\u00f3n en una transacci\u00f3n global activa + +ORA-17118=no se ha podido obtener el identificador de un punto de grabaci\u00f3n denominado + +ORA-17119=no se ha podido obtener el nombre de un punto de grabaci\u00f3n no denominado + +ORA-17120=no se ha podido definir un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17121=no se ha podido realizar rollback en un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17122=no se ha podido realizar rollback en un punto de grabaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17123=Se ha especificado un tama\u00f1o de cach\u00e9 de sentencias no v\u00e1lido + +ORA-17124=Se ha especificado un timout de inactividad de cach\u00e9 de conexi\u00f3n no v\u00e1lido + +ORA-17200=No se ha podido convertir correctamente la cadena de apertura de XA de Java a C + +ORA-17201=No se ha podido convertir correctamente la cadena de cierre de XA de Java a C + +ORA-17202=No se ha podido convertir correctamente el nombre de RM de Java a C + +ORA-17203=No se ha podido convertir el tipo de puntero a jlong + +ORA-17204=Matriz de entrada demasiado peque\u00f1a para contener los manejadores OCI + +ORA-17205=Fallo al obtener el manejador OCISvcCtx de C-XA mediante xaoSvcCtx + +ORA-17206=Fallo al obtener el manejador OCIEnv de C-XA mediante xaoEnv + +ORA-17207=No se ha definido la propiedad tnsEntry en el origen de datos + +ORA-17213=C-XA ha devuelto XAER_RMERR durante xa_open + +ORA-17215=C-XA ha devuelto XAER_INVAL durante xa_open + +ORA-17216=C-XA ha devuelto XAER_PROTO durante xa_open + +ORA-17233=C-XA ha devuelto XAER_RMERR durante xa_close + +ORA-17235=C-XA ha devuelto XAER_INVAL durante xa_close + +ORA-17236=C-XA ha devuelto XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violaci\u00f3n de protocolo + +ORA-17402=S\u00f3lo se espera un mensaje RPA + +ORA-17403=S\u00f3lo se espera un mensaje RXH + +ORA-17404=Se han recibido m\u00e1s RXD de los esperados + +ORA-17405=La longitud UAC no es cero + +ORA-17406=Se ha excedido la longitud m\u00e1xima del buffer + +ORA-17407=representaci\u00f3n de tipo (setRep) no v\u00e1lida + +ORA-17408=representaci\u00f3n de tipo (getRep) no v\u00e1lida + +ORA-17409=longitud de buffer no v\u00e1lida + +ORA-17410=No hay m\u00e1s datos para leer del socket + +ORA-17411=No coinciden las representaciones de Tipo de Dato + +ORA-17412=Longitud de tipo mayor que el m\u00e1ximo permitido + +ORA-17413=Se ha excedido el tama\u00f1o de la clave + +ORA-17414=Tama\u00f1o de buffer insuficiente para almacenar nombres de columnas + +ORA-17415=Este tipo no ha sido tratado + +ORA-17416=FATAL + +ORA-17417=Problema NLS, fallo al descodificar nombres de columna + +ORA-17418=Error interno de longitud de campo de la estructura + +ORA-17419=El sistema ha devuelto un n\u00famero de columnas no v\u00e1lido + +ORA-17420=No se ha definido la versi\u00f3n de Oracle + +ORA-17421=La conexi\u00f3n o los tipos no se han definido + +ORA-17422=Clase no v\u00e1lida en el tipo de objeto Factory + +ORA-17423=Se est\u00e1 utilizando un bloque PLSQL sin haber definido un IOV + +ORA-17424=Se est\u00e1 intentando realizar una operaci\u00f3n de canalizaci\u00f3n de datos entre sistemas diferente + +ORA-17425=Se est\u00e1 devolviendo un flujo en el bloque PLSQL + +ORA-17426=Los enlaces IN y OUT son NULL + +ORA-17427=Se est\u00e1 utilizando OAC no inicializado + +ORA-17428=Logon se debe llamar despu\u00e9s de Connect + +ORA-17429=Debe estar conectado al servidor + +ORA-17430=Debe estar conectado al servidor + +ORA-17431=La sentencia SQL que se va a analizar es nula + +ORA-17432=opciones no v\u00e1lidas en all7 + +ORA-17433=argumentos no v\u00e1lidos en la llamada + +ORA-17434=no est\u00e1 en modo de lectura/escritura continuo + +ORA-17435=n\u00famero no v\u00e1lido de in_out_binds en IOV + +ORA-17436=n\u00famero no v\u00e1lido de par\u00e1metros OUT + +ORA-17437=Error en el argumento o argumentos IN/OUT del bloque PLSQL + +ORA-17438=Error interno - Valor inesperado + +ORA-17439=Tipo SQL no v\u00e1lido + +ORA-17440=DBItem/DBType nulo + +ORA-17441=Versi\u00f3n de Oracle no soportada. La versi\u00f3n m\u00ednima soportada es la 7.2.3. + +ORA-17442=El valor del cursor de referencia no es v\u00e1lido + +ORA-17443=Usuario nulo o contrase\u00f1a no soportada en el controlador THIN + +ORA-17444=Versi\u00f3n no soportada del protocolo TTC recibido del servidor + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/19/7099ca1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/19/7099ca1998af001c18c4935e001381da new file mode 100644 index 0000000..531a227 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/19/7099ca1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/19/c07bd51398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/19/c07bd51398af001c18c4935e001381da new file mode 100644 index 0000000..097e165 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/19/c07bd51398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1a/a0486e1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1a/a0486e1998af001c18c4935e001381da new file mode 100644 index 0000000..3bde8ac Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1a/a0486e1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1a/f013636d80a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1a/f013636d80a9001c1d3abf97745a02da new file mode 100644 index 0000000..a30aad7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1a/f013636d80a9001c1d3abf97745a02da @@ -0,0 +1,104 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1b/2057f31998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1b/2057f31998af001c18c4935e001381da new file mode 100644 index 0000000..744356c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1b/2057f31998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1b/c083031a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1b/c083031a98af001c18c4935e001381da new file mode 100644 index 0000000..7fd8dc3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1b/c083031a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1c/30c0001698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1c/30c0001698af001c18c4935e001381da new file mode 100644 index 0000000..0f51e22 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1c/30c0001698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1c/503ed41e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1c/503ed41e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..c9eb2d7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1c/503ed41e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u5167\u90e8\u932f\u8aa4 + +ORA-17002=IO \u7570\u5e38 + +ORA-17003=\u4e0d\u6b63\u78ba\u7684\u8cc7\u6599\u6b04\u7d22\u5f15 + +ORA-17004=\u8cc7\u6599\u6b04\u985e\u578b\u7121\u6548 + +ORA-17005=\u4e0d\u652f\u63f4\u7684\u8cc7\u6599\u6b04\u985e\u578b + +ORA-17006=\u4e0d\u6b63\u78ba\u7684\u8cc7\u6599\u6b04\u540d\u7a31 + +ORA-17007=\u4e0d\u6b63\u78ba\u7684\u52d5\u614b\u8cc7\u6599\u6b04 + +ORA-17008=\u95dc\u9589\u7684\u9023\u7dda + +ORA-17009=\u95dc\u9589\u7684\u6558\u8ff0\u53e5 + +ORA-17010=\u95dc\u9589\u7684\u7d50\u679c\u96c6 + +ORA-17011=\u8017\u640d\u7684\u7d50\u679c\u96c6 + +ORA-17012=\u53c3\u6578\u985e\u578b\u885d\u7a81 + +ORA-17014=\u672a\u547c\u53eb ResultSet.next + +ORA-17015=\u5df2\u53d6\u6d88\u6558\u8ff0\u53e5 + +ORA-17016=\u6558\u8ff0\u53e5\u903e\u6642 + +ORA-17017=\u5df2\u521d\u59cb\u5316\u6e38\u6a19 + +ORA-17018=\u4e0d\u6b63\u78ba\u7684\u6e38\u6a19 + +ORA-17019=\u53ea\u80fd\u63cf\u8ff0\u67e5\u8a62 + +ORA-17020=\u4e0d\u6b63\u78ba\u7684\u9810\u5148\u8cc7\u6599\u5217\u64f7\u53d6 + +ORA-17021=\u5b9a\u7fa9\u907a\u5931 + +ORA-17022=\u907a\u5931\u7d22\u5f15\u5b9a\u7fa9 + +ORA-17023=\u4e0d\u652f\u63f4\u7684\u529f\u80fd + +ORA-17024=\u7121\u8b80\u53d6\u8cc7\u6599 + +ORA-17025=defines.isNull () \u4e2d\u767c\u751f\u932f\u8aa4 + +ORA-17026=\u6578\u503c\u6ea2\u4f4d + +ORA-17027=\u4e32\u6d41\u5df2\u95dc\u9589 + +ORA-17028=\u5728\u76ee\u524d\u7684\u7d50\u679c\u96c6\u95dc\u9589\u4e4b\u524d, \u7121\u6cd5\u9032\u884c\u65b0\u5b9a\u7fa9 + +ORA-17029=setReadOnly: \u4e0d\u652f\u63f4\u552f\u8b80\u9023\u7dda + +ORA-17030=READ_COMMITTED \u548c SERIALIZABLE \u662f\u552f\u4e00\u6709\u6548\u7684\u4ea4\u6613\u5c64\u6b21 + +ORA-17031=setAutoClose: \u53ea\u652f\u63f4\u81ea\u52d5\u95dc\u9589\u6a21\u5f0f\u958b\u555f + +ORA-17032=\u7121\u6cd5\u5c07\u9810\u5148\u64f7\u53d6\u7684\u8cc7\u6599\u5217\u8a2d\u5b9a\u70ba\u96f6 + +ORA-17033=\u8b8a\u5f62 SQL92 \u5b57\u4e32\u7684\u4f4d\u7f6e + +ORA-17034=\u672a\u652f\u63f4 SQL92 \u7b26\u865f\u7684\u4f4d\u7f6e + +ORA-17035=\u4e0d\u652f\u63f4\u7684\u5b57\u5143\u96c6 !! + +ORA-17036=\u7570\u5e38 OracleNumber + +ORA-17037=\u7121\u6cd5\u8f49\u63db UTF8 \u548c UCS2 + +ORA-17038=\u4f4d\u5143\u7d44\u9663\u5217\u9577\u5ea6\u4e0d\u8db3 + +ORA-17039=\u5b57\u5143\u9663\u5217\u9577\u5ea6\u4e0d\u8db3 + +ORA-17040=\u9023\u7dda URL \u4e2d \u5fc5\u9808\u6307\u5b9a\u6b21\u5354\u5b9a + +ORA-17041=\u907a\u5931 IN \u6216 OUT \u53c3\u6578, \u6240\u5728\u7d22\u5f15: + +ORA-17042=\u4e0d\u6b63\u78ba\u7684\u6279\u6b21\u503c + +ORA-17043=\u4e0d\u6b63\u78ba\u7684\u6700\u5927\u4e32\u6d41\u5927\u5c0f + +ORA-17044=\u5167\u90e8\u932f\u8aa4: \u672a\u914d\u7f6e\u8cc7\u6599\u9663\u5217 + +ORA-17045=\u5167\u90e8\u932f\u8aa4: \u5617\u8a66\u5b58\u53d6\u6279\u6b21\u503c\u4e4b\u5f8c\u7684\u9023\u7d50\u503c + +ORA-17046=\u5167\u90e8\u932f\u8aa4: \u4e0d\u6b63\u78ba\u7684\u8cc7\u6599\u5b58\u53d6\u7d22\u5f15 + +ORA-17047=\u985e\u578b\u63cf\u8ff0\u5340\u5256\u6790\u767c\u751f\u932f\u8aa4 + +ORA-17048=\u672a\u5b9a\u7fa9\u7684\u985e\u578b + +ORA-17049=\u4e0d\u4e00\u81f4\u7684 java \u548c sql \u7269\u4ef6\u985e\u578b + +ORA-17050=\u5411\u91cf\u4e2d\u7121\u6b64\u5143\u7d20 + +ORA-17051=API \u7121\u6cd5\u7528\u65bc\u975e UDT \u985e\u578b + +ORA-17052=\u6b64\u53c3\u8003\u4e0d\u6b63\u78ba + +ORA-17053=\u6b64\u5927\u5c0f\u4e0d\u6b63\u78ba + +ORA-17054=LOB \u5b9a\u4f4d\u5668\u4e0d\u6b63\u78ba + +ORA-17055=\u4e0d\u6b63\u78ba\u7684\u5b57\u5143\u767c\u751f\u4f4d\u7f6e + +ORA-17056=\u4e0d\u652f\u63f4\u7684\u5b57\u5143\u96c6 + +ORA-17057=\u95dc\u9589\u7684 LOB + +ORA-17058=\u5167\u90e8\u932f\u8aa4: \u4e0d\u6b63\u78ba\u7684 NLS \u8f49\u63db\u7387 + +ORA-17059=\u7121\u6cd5\u8f49\u63db\u70ba\u5167\u90e8\u65b9\u5f0f + +ORA-17060=\u7121\u6cd5\u5efa\u69cb\u63cf\u8ff0\u5340 + +ORA-17061=\u907a\u6f0f\u8ff0\u5340 + +ORA-17062=\u4e0d\u6b63\u78ba\u7684\u53c3\u8003\u6e38\u6a19 + +ORA-17063=\u4e0d\u5728\u7570\u52d5\u4e2d + +ORA-17064=\u4e0d\u6b63\u78ba\u7684\u8a9e\u6cd5\u6216\u8cc7\u6599\u5eab\u540d\u7a31\u70ba\u7a7a\u503c + +ORA-17065=\u8f49\u63db\u985e\u5225\u70ba\u7a7a\u503c + +ORA-17066=\u9700\u8981\u5b58\u53d6\u5c64\u7279\u5b9a\u5be6\u65bd\u57f7\u884c + +ORA-17067=\u6240\u6307\u5b9a\u7684 Oracle URL \u4e0d\u6b63\u78ba + +ORA-17068=\u547c\u53eb\u53c3\u6578\u7121\u6548 + +ORA-17069=\u4f7f\u7528\u5916\u986f XA \u547c\u53eb + +ORA-17070=\u8cc7\u6599\u5927\u5c0f\u5927\u65bc\u6b64\u985e\u578b\u7684\u6700\u5927\u5927\u5c0f + +ORA-17071=\u8d85\u904e VARRAY \u7684\u6700\u5927\u9650\u5236 + +ORA-17072=\u8cc7\u6599\u6b04\u7684\u63d2\u5165\u503c\u592a\u5927 + +ORA-17073=\u908f\u8f2f\u8655\u7406\u4e0d\u6b63\u78ba + +ORA-17074=\u4e0d\u6b63\u78ba\u7684\u540d\u7a31\u683c\u5f0f + +ORA-17075=\u4e0d\u6b63\u78ba\u7684\u50c5\u8f49\u9001\u7d50\u679c\u96c6\u4f5c\u696d + +ORA-17076=\u4e0d\u6b63\u78ba\u7684\u552f\u8b80\u7d50\u679c\u96c6\u4f5c\u696d + +ORA-17077=\u7121\u6cd5\u8a2d\u5b9a REF \u503c + +ORA-17078=\u7576\u5df2\u958b\u555f\u9023\u7dda\u6642\u7121\u6cd5\u57f7\u884c\u6b64\u4f5c\u696d + +ORA-17079=\u4f7f\u7528\u8005\u8b49\u660e\u8207\u73fe\u6709\u7684\u4e0d\u7b26 + +ORA-17080=\u4e0d\u6b63\u78ba\u7684\u6279\u6b21\u547d\u4ee4 + +ORA-17081=\u6279\u6b21\u4f5c\u696d\u6642\u767c\u751f\u932f\u8aa4 + +ORA-17082=\u7121\u76ee\u524d\u8cc7\u6599\u5217 + +ORA-17083=\u4e0d\u5728\u6b64\u63d2\u5165\u8cc7\u6599\u5217\u4e2d + +ORA-17084=\u547c\u53eb\u65bc\u6b64\u63d2\u5165\u8cc7\u6599\u5217 + +ORA-17085=\u767c\u751f\u885d\u7a81\u503c + +ORA-17086=\u5728\u63d2\u5165\u8cc7\u6599\u5217\u4e2d\u767c\u751f\u672a\u5b9a\u7fa9\u7684\u8cc7\u6599\u6b04\u503c + +ORA-17087=\u5ffd\u7565\u6548\u7387\u6697\u793a: setFetchDirection() + +ORA-17088=\u672a\u652f\u63f4\u7684\u8981\u6c42\u7d50\u679c\u96c6\u985e\u578b\u548c\u4e26\u884c\u5c64\u6b21\u8a9e\u6cd5 +ORA-17089=\u5167\u90e8\u932f\u8aa4 + +ORA-17090=\u4e0d\u5141\u8a31\u6b64\u4f5c\u696d + +ORA-17091=\u7121\u6cd5\u5728\u8981\u6c42\u7684\u985e\u578b\u548c(\u6216)\u4e26\u884c\u5c64\u6b21\u5efa\u7acb\u7d50\u679c\u96c6 + +ORA-17092=JDBC \u6558\u8ff0\u53e5\u7121\u6cd5\u5728\u547c\u53eb\u8655\u7406\u7d50\u675f\u6642\u5efa\u7acb\u6216\u57f7\u884c + +ORA-17093=OCI \u4f5c\u696d\u50b3\u56de OCI_SUCCESS_WITH_INFO + +ORA-17094=\u7269\u4ef6\u985e\u578b\u7248\u672c\u4e0d\u7b26\u5408 + +ORA-17095=\u5c1a\u672a\u8a2d\u5b9a\u6558\u8ff0\u53e5\u5feb\u53d6\u5927\u5c0f + +ORA-17096=\u7121\u6cd5\u555f\u7528\u6b64\u908f\u8f2f\u9023\u7dda\u7684\u6558\u8ff0\u53e5\u5feb\u53d6. + +ORA-17097=PL/SQL \u7d22\u5f15\u8868\u683c\u5143\u7d20\u985e\u578b\u7121\u6548 + +ORA-17098=\u7a7a\u7684 lob \u4f5c\u696d\u7121\u6548 + +ORA-17099=PL/SQL \u7d22\u5f15\u8868\u683c\u9663\u5217\u9577\u5ea6\u7121\u6548 + +ORA-17100=\u8cc7\u6599\u5eab Java \u7269\u4ef6\u7121\u6548 + +ORA-17101=OCI \u9023\u7dda\u5340\u7269\u4ef6\u7684\u5c6c\u6027\u7121\u6548 + +ORA-17102=Bfile \u662f\u552f\u8b80\u7684 + +ORA-17103=getConnection \u50b3\u56de\u7684\u9023\u7dda\u985e\u578b\u7121\u6548. \u8acb\u4f7f\u7528 getJavaSqlConnection + +ORA-17104=\u8981\u57f7\u884c\u7684 SQL \u6558\u8ff0\u53e5\u4e0d\u80fd\u662f\u7a7a\u7684\u6216\u7a7a\u503c + +ORA-17105=\u672a\u8a2d\u5b9a\u9023\u7dda\u968e\u6bb5\u4f5c\u696d\u6642\u9593\u5340 + +ORA-17106=\u6307\u5b9a\u7684 JDBC-OCI \u9a45\u52d5\u7a0b\u5f0f\u9023\u7dda\u96c6\u5340\u7d44\u614b\u7121\u6548 + +ORA-17107=\u6307\u5b9a\u7684\u4ee3\u7406\u4e3b\u6a5f\u985e\u578b\u7121\u6548 + +ORA-17108=defineColumnType \u4e26\u672a\u6307\u5b9a\u9577\u5ea6\u4e0a\u9650 + +ORA-17109=\u627e\u4e0d\u5230\u6a19\u6e96\u7684 Java \u5b57\u5143\u7de8\u78bc + +ORA-17110=\u5b8c\u6210\u57f7\u884c, \u4f46\u6709\u8b66\u544a + +ORA-17111=\u6307\u5b9a\u7684\u9023\u7dda\u5feb\u53d6 TTL \u903e\u6642\u7121\u6548 + +ORA-17112=\u6307\u5b9a\u7684\u7e6b\u7dda\u9593\u9694\u7121\u6548 + +ORA-17113=\u7e6b\u7dda\u9593\u9694\u503c\u5927\u65bc\u5feb\u53d6\u903e\u6642\u503c + +ORA-17114=\u7121\u6cd5\u5728\u5168\u57df\u4ea4\u6613\u4e2d\u4f7f\u7528\u5340\u57df\u4ea4\u6613\u78ba\u8a8d + +ORA-17115=\u7121\u6cd5\u5728\u5168\u57df\u4ea4\u6613\u4e2d\u4f7f\u7528\u5340\u57df\u4ea4\u6613\u5012\u56de + +ORA-17116=\u7121\u6cd5\u958b\u555f\u4f5c\u7528\u4e2d\u5168\u57df\u4ea4\u6613\u7684\u81ea\u52d5\u78ba\u8a8d + +ORA-17117=\u7121\u6cd5\u8a2d\u5b9a\u4f5c\u7528\u4e2d\u5168\u57df\u4ea4\u6613\u7684\u5132\u5b58\u9ede + +ORA-17118=\u7121\u6cd5\u53d6\u5f97\u6307\u5b9a\u4e4b\u300c\u5132\u5b58\u9ede\u300d\u7684 ID + +ORA-17119=\u7121\u6cd5\u53d6\u5f97\u672a\u6307\u5b9a\u4e4b\u300c\u5132\u5b58\u9ede\u300d\u7684\u540d\u7a31 + +ORA-17120=\u7121\u6cd5\u8a2d\u5b9a\u5df2\u958b\u555f\u81ea\u52d5\u78ba\u8a8d\u7684\u300c\u5132\u5b58\u9ede\u300d + +ORA-17121=\u7121\u6cd5\u5012\u56de\u81f3\u5df2\u958b\u555f\u81ea\u52d5\u78ba\u8a8d\u7684\u300c\u5132\u5b58\u9ede\u300d + +ORA-17122=\u7121\u6cd5\u5012\u56de\u81f3\u5168\u57df\u4ea4\u6613\u7684\u5340\u57df txn\u300c\u5132\u5b58\u9ede\u300d + +ORA-17123=\u6307\u5b9a\u7684\u6558\u8ff0\u53e5\u5feb\u53d6\u5927\u5c0f\u7121\u6548 + +ORA-17124=\u6307\u5b9a\u7684\u9023\u7dda\u5feb\u53d6\u300c\u7121\u6d3b\u52d5\u300d\u903e\u6642\u7121\u6548 + +ORA-17200=\u7121\u6cd5\u6b63\u78ba\u7684\u5c07 XA \u958b\u555f\u5b57\u4e32\u5f9e Java \u8f49\u63db\u70ba C + +ORA-17201=\u7121\u6cd5\u6b63\u78ba\u7684\u5c07 XA \u95dc\u9589\u5b57\u4e32\u5f9e Java \u8f49\u63db\u70ba C + +ORA-17202=\u7121\u6cd5\u6b63\u78ba\u7684\u5c07 RM \u540d\u7a31\u5f9e Java \u8f49\u63db\u70ba C + +ORA-17203=\u7121\u6cd5\u5c07\u6307\u6a19\u985e\u578b\u8f49\u578b\u70ba jlong + +ORA-17204=\u8f38\u5165\u9663\u5217\u592a\u77ed, \u7121\u6cd5\u4fdd\u7559 OCI \u6a19\u793a\u5143 + +ORA-17205=\u7121\u6cd5\u4f7f\u7528 xaoSvcCtx \u53d6\u5f97 C-XA \u7684 OCISvcCtx \u6a19\u793a\u5143 + +ORA-17206=\u7121\u6cd5\u4f7f\u7528 xaoEnv \u53d6\u5f97 C-XA \u7684 OCIEnv \u6a19\u793a\u5143 + +ORA-17207=DataSource \u672a\u8a2d\u5b9a tnsEntry \u5c6c\u6027 + +ORA-17213=C-XA \u5728 xa_open \u6642\u50b3\u56de XAER_RMERR + +ORA-17215=C-XA \u5728 xa_open \u6642\u50b3\u56de XAER_INVAL + +ORA-17216=C-XA \u5728 xa_open \u6642\u50b3\u56de XAER_PROTO + +ORA-17233=C-XA \u5728 xa_close \u6642\u50b3\u56de XAER_RMERR + +ORA-17235=C-XA \u5728 xa_close \u6642\u50b3\u56de XAER_INVAL + +ORA-17236=C-XA \u5728 xa_close \u6642\u50b3\u56de XAER_PROTO + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u9055\u53cd\u5354\u5b9a + +ORA-17402=\u53ea\u9810\u671f\u4e00\u500b RPA \u8a0a\u606f + +ORA-17403=\u53ea\u9810\u671f\u4e00\u500b RXH \u8a0a\u606f + +ORA-17404=\u6536\u5230\u8d85\u51fa\u9810\u671f\u7684 RXD + +ORA-17405=UAC \u9577\u5ea6\u4e0d\u70ba\u96f6 + +ORA-17406=\u8d85\u51fa\u7de9\u885d\u5340\u7684\u6700\u5927\u9577\u5ea6 + +ORA-17407=\u985e\u578b\u8868\u793a\u6cd5 (setRep) \u7121\u6548 + +ORA-17408=\u985e\u578b\u8868\u793a\u6cd5 (getRep) \u7121\u6548 + +ORA-17409=\u4e0d\u6b63\u78ba\u7684\u7de9\u885d\u5340\u9577\u5ea6 + +ORA-17410=\u6c92\u6709\u5f9e\u57e0\u5ea7\u8b80\u53d6\u8cc7\u6599 + +ORA-17411=\u8cc7\u6599\u985e\u578b\u8868\u793a\u6cd5\u4e0d\u76f8\u7b26 + +ORA-17412=\u8d85\u904e\u6700\u5927\u7684\u985e\u578b\u9577\u5ea6 + +ORA-17413=\u8d85\u904e\u7d22\u5f15\u9375\u5927\u5c0f + +ORA-17414=\u7de9\u885d\u5340\u5927\u5c0f\u4e0d\u8db3\u4ee5\u5132\u5b58\u8cc7\u6599\u6b04\u540d\u7a31 + +ORA-17415=\u672a\u8655\u7406\u6b64\u985e\u578b + +ORA-17416=FATAL + +ORA-17417=NLS \u554f\u984c, \u6b04\u4f4d\u540d\u7a31\u89e3\u78bc\u5931\u6557 + +ORA-17418=\u5167\u90e8\u7d50\u69cb\u6b04\u4f4d\u9577\u5ea6\u932f\u8aa4 + +ORA-17419=\u50b3\u56de\u7684\u8cc7\u6599\u6b04\u6578\u76ee\u4e0d\u6b63\u78ba + +ORA-17420=\u672a\u5b9a\u7fa9 Oracle \u7248\u672c + +ORA-17421=\u672a\u5b9a\u7fa9\u985e\u578b\u6216\u9023\u7dda + +ORA-17422=\u4e0d\u6b63\u78ba\u7684\u7d44\u7e54\u985e\u5225 + +ORA-17423=\u4f7f\u7528\u7121 IOV \u5b9a\u7fa9\u7684 PLSQL \u5340\u584a + +ORA-17424=\u5617\u8a66\u4e0d\u540c\u7684\u6392\u5217\u4f5c\u696d + +ORA-17425=\u50b3\u56de PLSQL \u5340\u584a\u4e2d\u7684\u4e32\u6d41 + +ORA-17426=IN \u548c OUT \u9023\u7d50\u7686\u70ba\u7a7a\u503c + +ORA-17427=\u4f7f\u7528\u672a\u521d\u59cb\u5316\u7684 OAC + +ORA-17428=\u5fc5\u9808\u5728\u9023\u7dda\u5f8c\u547c\u53eb\u767b\u5165 + +ORA-17429=\u81f3\u5c11\u5fc5\u9808\u9023\u7dda\u81f3\u4f3a\u670d\u5668 + +ORA-17430=\u5fc5\u9808\u767b\u5165\u4f3a\u670d\u5668 + +ORA-17431=SQL Statement \u5256\u6790\u70ba\u7a7a\u503c + +ORA-17432=\u4e0d\u6b63\u78ba\u7684 O7 \u9078\u9805 + +ORA-17433=\u547c\u53eb\u53c3\u6578\u7121\u6548 + +ORA-17434=\u4e0d\u662f\u4e32\u6d41\u6a21\u5f0f + +ORA-17435=IOV \u4e2d\u4e0d\u6b63\u78ba\u7684 in_out_binds \u6578 + +ORA-17436=\u4e0d\u6b63\u78ba\u7684\u5916\u90e8\u9023\u7d50\u6578 + +ORA-17437=PLSQL \u5340\u584a IN/OUT \u53c3\u6578\u4e2d\u6709\u932f\u8aa4 + +ORA-17438=\u5167\u90e8 - \u672a\u9810\u671f\u503c + +ORA-17439=SQL \u985e\u578b\u7121\u6548 + +ORA-17440=DBItem/DBType \u70ba\u7a7a\u503c + +ORA-17441=\u4e0d\u652f\u63f4\u7684 Oracle \u7248\u672c. \u6240\u652f\u63f4\u7684\u6700\u65e9\u7248\u672c\u70ba 7.2.3. + +ORA-17442=Refcursor \u503c\u4e0d\u6b63\u78ba + +ORA-17443=\u7a7a\u503c\u7684\u4f7f\u7528\u8005\u6216\u5bc6\u78bc\u4e0d\u652f\u63f4\u65bc THIN \u9a45\u52d5\u7a0b\u5f0f + +ORA-17444=\u4e0d\u652f\u63f4\u7531\u4f3a\u670d\u5668\u6240\u63a5\u6536\u7684 TTC \u5354\u5b9a\u7248\u672c + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/40820c407da9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/40820c407da9001c1d3abf97745a02da new file mode 100644 index 0000000..4a34432 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/40820c407da9001c1d3abf97745a02da @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder()); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/507ac7a226cb001c12679608c5a212e6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/507ac7a226cb001c12679608c5a212e6 new file mode 100644 index 0000000..3d91273 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/507ac7a226cb001c12679608c5a212e6 @@ -0,0 +1,4 @@ +Manifest-Version: 1.0 +Ant-Version: Apache Ant 1.6.5 +Created-By: 1.5.0_06-b05 (Sun Microsystems Inc.) + diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/50aa701498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/50aa701498af001c18c4935e001381da new file mode 100644 index 0000000..cc07b3b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/50aa701498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/7001171fcba4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/7001171fcba4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..7d7c4a7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1d/7001171fcba4001c1acc9f54b60f9b57 @@ -0,0 +1,85 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + //Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setLayout( new FlowLayout()); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1e/106ab41498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1e/106ab41498af001c18c4935e001381da new file mode 100644 index 0000000..c0bc191 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1e/106ab41498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1e/50748b1797af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1e/50748b1797af001c18c4935e001381da new file mode 100644 index 0000000..45171fd --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1e/50748b1797af001c18c4935e001381da @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.GridLayout; +import java.awt.Insets; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextPane; + + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + // Creation de la zone de texte + private JTextPane panneauTexte; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMRequete().setVisible(true); + } + + public IHMRequete(){ + // Creation d'une etiquette + JLabel jRequete = new JLabel("Entrez votre requete : "); + + // Creation des boutons + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Annuler"); + + // Creation de la zone de texte + panneauTexte = new JTextPane(); + panneauTexte.setCaretPosition(0); + panneauTexte.setMargin(new Insets(5,5,5,5)); + JScrollPane zoneTexteRequete = new JScrollPane(panneauTexte); + zoneTexteRequete.setPreferredSize(new Dimension(200, 130)); + + // Creation des panneaux bas et centre + JPanel Panneau_Bas = new JPanel(); + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(2,1)); + + // Ajout des boutons a chacun des panneaux + Panneau_Centre.add(jRequete, BorderLayout.NORTH); + Panneau_Centre.add(zoneTexteRequete); + + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Gestionnaire de contenus + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(400,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Requete"); + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1e/e0754e1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1e/e0754e1798af001c18c4935e001381da new file mode 100644 index 0000000..ce4825f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1e/e0754e1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/60de351a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/60de351a98af001c18c4935e001381da new file mode 100644 index 0000000..27eab64 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/60de351a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/a0db2f1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/a0db2f1598af001c18c4935e001381da new file mode 100644 index 0000000..057e943 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/a0db2f1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/b0ea0f6fcca4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/b0ea0f6fcca4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..b46b528 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/b0ea0f6fcca4001c1acc9f54b60f9b57 @@ -0,0 +1,92 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche, FlowLayout.LEFT); + Panneau_Centre.add(Panneau_Centre_Droite, FlowLayout.RIGHT); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/d0af61a7fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/d0af61a7fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..9a5548d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/d0af61a7fea3001c1027e59cc3e35e89 @@ -0,0 +1,41 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connexion = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try{ + connexion.close(); + } + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/f052e9f720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/f052e9f720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..74e5424 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/1f/f052e9f720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Bels\u0151 hiba + +ORA-17002=Io kiv\u00e9tel + +ORA-17003=\u00c9rv\u00e9nytelen oszlopindex + +ORA-17004=\u00c9rv\u00e9nytelen oszlopt\u00edpus + +ORA-17005=Nem t\u00e1mogatott oszlopt\u00edpus + +ORA-17006=\u00c9rv\u00e9nytelen oszlopn\u00e9v + +ORA-17007=\u00c9rv\u00e9nytelen dinamikus oszlop + +ORA-17008=Bez\u00e1rt kapcsolat + +ORA-17009=Bez\u00e1rt utas\u00edt\u00e1s + +ORA-17010=Bez\u00e1rt eredm\u00e9nyhalmaz + +ORA-17011=Kimer\u00fclt eredm\u00e9nyhalmaz + +ORA-17012=Param\u00e9tert\u00edpus-\u00fctk\u00f6z\u00e9s + +ORA-17014=A ResultSet.next nem ker\u00fclt megh\u00edv\u00e1sra. + +ORA-17015=Az utas\u00edt\u00e1s v\u00e9grehajt\u00e1sa meg lett szak\u00edtva. + +ORA-17016=Az utas\u00edt\u00e1s v\u00e9grehajt\u00e1sa id\u0151t\u00fall\u00e9p\u00e9s miatt meg lett szak\u00edtva. + +ORA-17017=A kurzor m\u00e1r inicializ\u00e1lva van. + +ORA-17018=\u00c9rv\u00e9nytelen kurzor. + +ORA-17019=Csak lek\u00e9rdez\u00e9s \u00edrhat\u00f3 le. + +ORA-17020=\u00c9rv\u00e9nytelen az el\u0151re behozott sorok sz\u00e1ma. + +ORA-17021=Hi\u00e1nyz\u00f3 defin\u00edci\u00f3k + +ORA-17022=Hi\u00e1nyz\u00f3 defin\u00edci\u00f3k a k\u00f6vetkez\u0151 indexn\u00e9l: + +ORA-17023=Nem t\u00e1mogatott tulajdons\u00e1g + +ORA-17024=Nem ker\u00fclt beolvas\u00e1sra adat. + +ORA-17025=Hiba a k\u00f6vetkez\u0151ben: defines.isNull (). + +ORA-17026=Numerikus t\u00falcsordul\u00e1s + +ORA-17027=Az adatfolyam m\u00e1r le van z\u00e1rva. + +ORA-17028=Nem lehet \u00faj defin\u00edci\u00f3t megadni, am\u00edg az aktu\u00e1lis eredm\u00e9nyhalmaz (ResultSet) nincs lez\u00e1rva. + +ORA-17029=setReadOnly: a csak olvashat\u00f3 kapcsolatok nem t\u00e1mogatottak. + +ORA-17030=Csak READ_COMMITTED \u00e9s SERIALIZABLE adhat\u00f3 meg \u00e9rv\u00e9nyes tranzakci\u00f3szintk\u00e9nt. + +ORA-17031=setAutoClose: csak az automatikus bez\u00e1r\u00e1si m\u00f3d bekapcsolt \u00e1llapota haszn\u00e1lhat\u00f3. + +ORA-17032=az el\u0151re behozott sorok sz\u00e1ma nem lehet nulla. + +ORA-17033=Helytelen form\u00e1j\u00fa SQL92 karakterl\u00e1nc a k\u00f6vetkez\u0151 helyen: + +ORA-17034=Nem t\u00e1mogatott SQL92 token a k\u00f6vetkez\u0151 helyen: + +ORA-17035=Nem t\u00e1mogatott karakterk\u00e9szlet. + +ORA-17036=kiv\u00e9tel az OracleNumber elemben + +ORA-17037=Sikertelen a konvert\u00e1l\u00e1s UTF8 \u00e9s UCS2 k\u00f6z\u00f6tt. + +ORA-17038=A b\u00e1jtt\u00f6mb nem el\u00e9g hossz\u00fa. + +ORA-17039=A karaktert\u00f6mb nem el\u00e9g hossz\u00fa. + +ORA-17040=Az alprotokollt meg kell adni a kapcsol\u00f3d\u00e1si URL c\u00edmben. + +ORA-17041=Hi\u00e1nyz\u00f3 IN vagy OUT param\u00e9ter a k\u00f6vetkez\u0151 indexn\u00e9l: + +ORA-17042=\u00c9rv\u00e9nytelen k\u00f6teg\u00e9rt\u00e9k + +ORA-17043=\u00c9rv\u00e9nytelen az adatfolyam maxim\u00e1lis m\u00e9rete. + +ORA-17044=Bels\u0151 hiba: az adatt\u00f6mb helye nincs lefoglalva. + +ORA-17045=Bels\u0151 hiba: a k\u00f6teg\u00e9rt\u00e9ken t\u00fali k\u00f6t\u00e9si \u00e9rt\u00e9kek el\u00e9r\u00e9s\u00e9re t\u00f6rt\u00e9nt k\u00eds\u00e9rlet. + +ORA-17046=Bels\u0151 hiba: \u00e9rv\u00e9nytelen index az adathozz\u00e1f\u00e9r\u00e9shez. + +ORA-17047=Hiba t\u00f6rt\u00e9nt a t\u00edpusle\u00edr\u00f3 elemz\u00e9se k\u00f6zben. + +ORA-17048=Nem defini\u00e1lt t\u00edpus. + +ORA-17049=Nem \u00f6sszeill\u0151 java \u00e9s sql objektumt\u00edpusok. + +ORA-17050=nincs ilyen elem a vektort\u00f6mbben. + +ORA-17051=Ez az API nem haszn\u00e1lhat\u00f3 nem UDT t\u00edpusokhoz. + +ORA-17052=Ez a hivatkoz\u00e1s nem \u00e9rv\u00e9nyes. + +ORA-17053=A m\u00e9ret nem \u00e9rv\u00e9nyes. + +ORA-17054=A LOB helymeghat\u00e1roz\u00f3ja nem \u00e9rv\u00e9nyes. + +ORA-17055=\u00c9rv\u00e9nytelen karakter a k\u00f6vetkez\u0151 helyen: + +ORA-17056=Nem t\u00e1mogatott karakterk\u00e9szlet, + +ORA-17057=Bez\u00e1rt LOB + +ORA-17058=Bels\u0151 hiba: \u00e9rv\u00e9nytelen NLS konverzi\u00f3s ar\u00e1ny. + +ORA-17059=A bels\u0151 \u00e1br\u00e1zol\u00e1sm\u00f3dra val\u00f3 konverzi\u00f3 sikertelen volt. + +ORA-17060=A le\u00edr\u00f3 l\u00e9trehoz\u00e1sa sikertelen volt. + +ORA-17061=Hi\u00e1nyz\u00f3 le\u00edr\u00f3 + +ORA-17062=A hivatkoz\u00e1si kurzor \u00e9rv\u00e9nytelen. + +ORA-17063=Nem szerepel tranzakci\u00f3ban. + +ORA-17064=\u00c9rv\u00e9nytelen szintaxis vagy \u00fcres adatb\u00e1zisn\u00e9v. + +ORA-17065=\u00dcres konverzi\u00f3s oszt\u00e1ly. + +ORA-17066=A hozz\u00e1f\u00e9r\u00e9si r\u00e9tegre jellemz\u0151 implement\u00e1l\u00e1s sz\u00fcks\u00e9ges. + +ORA-17067=\u00c9rv\u00e9nytelen a megadott Oracle URL. + +ORA-17068=\u00c9rv\u00e9nytelen argumentumok a h\u00edv\u00e1s(ok)ban. + +ORA-17069=Explicit XA h\u00edv\u00e1st kell haszn\u00e1lni. + +ORA-17070=Az adatm\u00e9ret nagyobb a t\u00edpusra enged\u00e9lyezett legnagyobb m\u00e9retn\u00e9l. + +ORA-17071=T\u00fall\u00e9pte a VARRAY fels\u0151 hat\u00e1r\u00e1t. + +ORA-17072=A beillesztett \u00e9rt\u00e9k t\u00fal nagy az oszlop sz\u00e1m\u00e1ra. + +ORA-17073=Ez a logikai kezel\u0151 m\u00e1r nem \u00e9rv\u00e9nyes. + +ORA-17074=\u00e9rv\u00e9nytelen n\u00e9vminta + +ORA-17075=\u00c9rv\u00e9nytelen m\u0171velet a csak tov\u00e1bb\u00edthat\u00f3 eredm\u00e9nyk\u00e9szlethez. + +ORA-17076=\u00c9rv\u00e9nytelen m\u0171velet a csak olvashat\u00f3 eredm\u00e9nyk\u00e9szlethez. + +ORA-17077=A REF \u00e9rt\u00e9k be\u00e1ll\u00edt\u00e1sa nem siker\u00fclt. + +ORA-17078=A m\u0171velet nem hajthat\u00f3 v\u00e9gre, mert a kapcsolatok m\u00e1r meg vannak nyitva. + +ORA-17079=A felhaszn\u00e1l\u00f3i azonos\u00edt\u00f3 \u00e9s jelsz\u00f3 nem egyezik a l\u00e9tez\u0151kkel. + +ORA-17080=\u00e9rv\u00e9nytelen k\u00f6tegparancs + +ORA-17081=hiba t\u00f6rt\u00e9nt a k\u00f6tegel\u00e9s sor\u00e1n + +ORA-17082=Nincs aktu\u00e1lis sor. + +ORA-17083=Nincs a beilleszt\u00e9si sorban. + +ORA-17084=H\u00edv\u00e1s \u00e9rkezett a beilleszt\u00e9si sorra. + +ORA-17085=\u00c9rt\u00e9k\u00fctk\u00f6z\u00e9sek t\u00f6rt\u00e9ntek. + +ORA-17086=\u00c9rv\u00e9nytelen oszlop\u00e9rt\u00e9k a beilleszt\u00e9si sorban. + +ORA-17087=Figyelmen k\u00edv\u00fcl hagyott teljes\u00edtm\u00e9nytipp: setFetchDirection() + +ORA-17088=Nem t\u00e1mogatott szintaxis a k\u00e9rt eredm\u00e9nyk\u00e9szlet-t\u00edpushoz \u00e9s konkurenciaszinthez. +ORA-17089=bels\u0151 hiba + +ORA-17090=a m\u0171velet nem enged\u00e9lyezett + +ORA-17091=Nem hozhat\u00f3 l\u00e9tre az eredm\u00e9nyk\u00e9szlet a k\u00e9rt t\u00edpus-, illetve p\u00e1rhuzamoss\u00e1gi szinten. + +ORA-17092=A h\u00edv\u00e1sfeldolgoz\u00e1s v\u00e9g\u00e9n nem hozhat\u00f3k l\u00e9tre \u00e9s nem hajthat\u00f3k v\u00e9gre JDBC utas\u00edt\u00e1sok. + +ORA-17093=Az OCI m\u0171velet OCI_SUCCESS_WITH_INFO \u00e9rt\u00e9kkel t\u00e9rt vissza. + +ORA-17094=Nem egyez\u0151 objektumt\u00edpus-verzi\u00f3k + +ORA-17095=Az utas\u00edt\u00e1s-gyors\u00edt\u00f3 m\u00e9rete nem lett be\u00e1ll\u00edtva. + +ORA-17096=Ehhez a logikai kapcsolathoz nem haszn\u00e1lhat\u00f3 utas\u00edt\u00e1st\u00e1rol\u00e1s. + +ORA-17097=\u00c9rv\u00e9nytelen elemt\u00edpus a PL/SQL-indext\u00e1bl\u00e1ban + +ORA-17098=\u00c9rv\u00e9nytelen \u00fcres lob m\u0171velet + +ORA-17099=\u00c9r\u00e9vnytelen a PL/SQL indext\u00e1blat\u00f6mbj\u00e9nek hossza. + +ORA-17100=\u00c9rv\u00e9nytelen adatb\u00e1zis Java-objektum + +ORA-17101=\u00c9rv\u00e9nytelen tulajdons\u00e1gok tal\u00e1lhat\u00f3k az OCI kapcsolatigy\u0171jt\u0151sor-objektumban. + +ORA-17102=A Bfile csak olvashat\u00f3. + +ORA-17103=A kapcsolati t\u00edpus nem \u00e9rv\u00e9nyes a getConnection met\u00f3duson kereszt\u00fcli visszat\u00e9r\u00e9shez. Haszn\u00e1lja ink\u00e1bb a getJavaSqlConnection met\u00f3dust. + +ORA-17104=A v\u00e9grehajtand\u00f3 SQL-utas\u00edt\u00e1s nem lehet \u00fcres vagy null \u00e9rt\u00e9k\u0171. + +ORA-17105=A kapcsolati munkamenet id\u0151z\u00f3n\u00e1ja nem lett be\u00e1ll\u00edtva. + +ORA-17106=a megadott JDBC-OCI illeszt\u0151program kapcsolatpool-konfigur\u00e1ci\u00f3ja \u00e9rv\u00e9nytelen. + +ORA-17107=\u00e9rv\u00e9nytelen a megadott proxyt\u00edpus + +ORA-17108=A defineColumnType-hoz nincs megadva maxim\u00e1lis hossz\u00fas\u00e1g. + +ORA-17109=az alap\u00e9rtelmezett Java karakterk\u00f3dol\u00e1s nem tal\u00e1lhat\u00f3 + +ORA-17110=a v\u00e9grehajt\u00e1s figyelmeztet\u00e9ssel z\u00e1rult + +ORA-17111=\u00c9rv\u00e9nytelen a kapcsolatgyors\u00edt\u00f3-TTL megadott id\u0151t\u00fall\u00e9p\u00e9se. + +ORA-17112=A sz\u00e1lak megadott k\u00e9sleltet\u00e9si ideje \u00e9rv\u00e9nytelen. + +ORA-17113=A sz\u00e1lak k\u00e9sleltet\u00e9si ideje nagyobb, mint a gyors\u00edt\u00f3t\u00e1r id\u0151t\u00fall\u00e9p\u00e9si ideje. + +ORA-17114=A helyi tranzakci\u00f3-j\u00f3v\u00e1hagy\u00e1s nem haszn\u00e1lhat\u00f3 a glob\u00e1lis tranzakci\u00f3ban. + +ORA-17115=A helyi tranzakci\u00f3-visszag\u00f6rget\u00e9s nem haszn\u00e1lhat\u00f3 a glob\u00e1lis tranzakci\u00f3ban. + +ORA-17116=nem lehetett bekapcsolni az automatikus j\u00f3v\u00e1hagy\u00e1st az egyik akt\u00edv glob\u00e1lis tranzakci\u00f3ban + +ORA-17117=nem lehetett l\u00e9trehozni a ment\u00e9si pontot az egyik akt\u00edv glob\u00e1lis tranzakci\u00f3ban + +ORA-17118=Nem siker\u00fclt azonos\u00edt\u00f3t szerezni az egyik n\u00e9vvel rendelkez\u0151 ment\u00e9si pontnak. + +ORA-17119=Nem siker\u00fclt nevet szerezni az egyik n\u00e9vvel nem rendelkez\u0151 ment\u00e9si pontnak. + +ORA-17120=Nem siker\u00fclt ment\u00e9si pontot be\u00e1ll\u00edtani az automatikus j\u00f3v\u00e1hagy\u00e1s bekapcsolt \u00e1llapota mellett. + +ORA-17121=Nem siker\u00fclt a visszag\u00f6rget\u00e9s az automatikus j\u00f3v\u00e1hagy\u00e1s bekapcsolt \u00e1llapota mellett. + +ORA-17122=Nem siker\u00fclt a visszag\u00f6rget\u00e9s egy helyi txn ment\u00e9si ponthoz az egyik helyi tranzakci\u00f3ban. + +ORA-17123=\u00c9rv\u00e9nytelen utas\u00edt\u00e1sgyors\u00edt\u00f3t\u00e1r-m\u00e9ret lett megadva. + +ORA-17124=\u00c9rv\u00e9nytelen kapcsolatgyors\u00edt\u00f3-inaktivit\u00e1si id\u0151t\u00fall\u00e9p\u00e9s lett megadva. + +ORA-17200=Az XA megnyit\u00e1si karakterl\u00e1ncot nem siker\u00fclt megfelel\u0151en Java-r\u00f3l C-re konvert\u00e1lni. + +ORA-17201=Az XA bez\u00e1r\u00e1si karakterl\u00e1ncot nem siker\u00fclt megfelel\u0151en Java-r\u00f3l C-re konvert\u00e1lni. + +ORA-17202=Az RM nevet nem siker\u00fclt megfelel\u0151en Java-r\u00f3l C-re konvert\u00e1lni. + +ORA-17203=A mutat\u00f3t\u00edpust nem siker\u00fclt jlong t\u00edpusra m\u00f3dos\u00edtani. + +ORA-17204=A beviteli t\u00f6mb t\u00fal r\u00f6vid az OCI kezel\u0151k t\u00e1rol\u00e1s\u00e1hoz. + +ORA-17205=Nem siker\u00fclt az OCISvcCtx kezel\u0151 xaoSvcCtx \u00e1ltali bek\u00e9r\u00e9se az C-XA elemt\u0151l. + +ORA-17206=Nem siker\u00fclt az OCIEnv kezel\u0151 xaoEnv \u00e1ltali bek\u00e9r\u00e9se az C-XA elemt\u0151l. + +ORA-17207=A tnsEntry tulajdons\u00e1g nem lett be\u00e1ll\u00edtva a DataSource elemn\u00e9l. + +ORA-17213=A C-XA XAER_RMERR hiba\u00fczenetet adott vissza az xa_open v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17215=A C-XA XAER_INVAL hiba\u00fczenetet adott vissza az xa_open v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17216=A C-XA XAER_PROTO hiba\u00fczenetet adott vissza az xa_open v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17233=A C-XA XAER_RMERR hiba\u00fczenetet adott vissza az xa_close v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17235=A C-XA XAER_INVAL hiba\u00fczenetet adott vissza az xa_close v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17236=A C-XA XAER_PROTO hiba\u00fczenetet adott vissza az xa_close v\u00e9grehajt\u00e1sa k\u00f6zben. + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokoll megs\u00e9rt\u00e9se + +ORA-17402=Csak egy RPA \u00fczenet \u00e9rkez\u00e9s\u00e9re sz\u00e1m\u00edt. + +ORA-17403=Csak egy RXH \u00fczenet \u00e9rkez\u00e9s\u00e9re sz\u00e1m\u00edt. + +ORA-17404=A v\u00e1rtn\u00e1l t\u00f6bb RXD \u00e9rkezett. + +ORA-17405=Az UAC hossza nem nulla. + +ORA-17406=T\u00fall\u00e9pte a maxim\u00e1lis pufferm\u00e9retet. + +ORA-17407=\u00e9rv\u00e9nytelen t\u00edpus\u00e1br\u00e1zol\u00e1s(setRep) + +ORA-17408=\u00e9rv\u00e9nytelen t\u00edpus\u00e1br\u00e1zol\u00e1s(getRep) + +ORA-17409=\u00e9rv\u00e9nytelen pufferhossz + +ORA-17410=Nem olvashat\u00f3 t\u00f6bb adat a programcsatorn\u00e1r\u00f3l. + +ORA-17411=Az adatt\u00edpusok \u00e1br\u00e1zol\u00e1si m\u00f3dja nem egyezik. + +ORA-17412=A megengedettn\u00e9l nagyobb a t\u00edpushossz. + +ORA-17413=T\u00fall\u00e9pte a kulcs m\u00e9ret\u00e9t. + +ORA-17414=A puffer m\u00e9rete nem el\u00e9gs\u00e9ges az oszlopnevek t\u00e1rol\u00e1s\u00e1hoz. + +ORA-17415=Ennek a t\u00edpusnak a kezel\u00e9se nem t\u00f6rt\u00e9nt meg. + +ORA-17416=FATAL + +ORA-17417=NLS probl\u00e9ma, az oszlopnevek dek\u00f3dol\u00e1sa nem siker\u00fclt. + +ORA-17418=Hiba a bels\u0151 strukt\u00fara mez\u0151hossz\u00e1ban. + +ORA-17419=\u00c9rv\u00e9nytelen sz\u00e1m\u00fa oszlopot kapott vissza a rendszer. + +ORA-17420=Az Oracle verzi\u00f3sz\u00e1ma nincs megadva. + +ORA-17421=A t\u00edpusok vagy a kapcsol\u00f3d\u00e1s nincs defini\u00e1lva. + +ORA-17422=\u00c9rv\u00e9nytelen oszt\u00e1ly a factory-ban. + +ORA-17423=PLSQL blokk haszn\u00e1lata IOV defini\u00e1l\u00e1sa n\u00e9lk\u00fcl + +ORA-17424=K\u00eds\u00e9rlet k\u00fcl\u00f6nb\u00f6z\u0151 rendez\u0151m\u0171veletek v\u00e9grehajt\u00e1s\u00e1ra. + +ORA-17425=Folyam visszaad\u00e1sa egy PLSQL blokkban + +ORA-17426=Az IN \u00e9s OUT param\u00e9terek egyar\u00e1nt NULL \u00e9rt\u00e9k\u0171ek. + +ORA-17427=Nem inicializ\u00e1lt OAC haszn\u00e1lata + +ORA-17428=A bejelentkez\u00e9st a kapcsol\u00f3d\u00e1s ut\u00e1n kell megh\u00edvni. + +ORA-17429=Legal\u00e1bb kapcsol\u00f3dni kell egy kiszolg\u00e1l\u00f3hoz. + +ORA-17430=Be kell jelentkezni egy kiszolg\u00e1l\u00f3ra. + +ORA-17431=Az elemezni k\u00edv\u00e1nt SQL utas\u00edt\u00e1s NULL \u00e9rt\u00e9k\u0171. + +ORA-17432=\u00e9rv\u00e9nytelen opci\u00f3k a h\u00edv\u00e1sban + +ORA-17433=\u00e9rv\u00e9nytelen argumentumok a h\u00edv\u00e1sban + +ORA-17434=nem folyamkezel\u0151 \u00fczemm\u00f3dban van. + +ORA-17435=\u00e9rv\u00e9nytelen az in_out_binds sz\u00e1m az IOV-ben. + +ORA-17436=\u00e9rv\u00e9nytelen a kimen\u0151 param\u00e9terek (outbinds) sz\u00e1ma. + +ORA-17437=Hiba a PLSQL blokk bemeneti, illetve kimeneti argumentumaiban. + +ORA-17438=Bels\u0151 - V\u00e1ratlan \u00e9rt\u00e9k + +ORA-17439=\u00c9rv\u00e9nytelen SQL t\u00edpus + +ORA-17440=A DBItem/DBType \u00e9rt\u00e9k \u00fcres. + +ORA-17441=Ezen Oracle verzi\u00f3 haszn\u00e1lata nem t\u00e1mogatott. A legr\u00e9gebbi t\u00e1mogatott verzi\u00f3 a 7.2.3-as. + +ORA-17442=A Refcursor \u00e9rt\u00e9ke \u00e9rv\u00e9nytelen. + +ORA-17443=\u00dcres felhaszn\u00e1l\u00f3n\u00e9v vagy nem t\u00e1mogatott THIN meghajt\u00f3. + +ORA-17444=A kiszolg\u00e1l\u00f3t\u00f3l kapott TTC protokollverzi\u00f3 nem t\u00e1mogatott. + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2/104e982cfba3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2/104e982cfba3001c1027e59cc3e35e89 new file mode 100644 index 0000000..2cae26f --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2/104e982cfba3001c1027e59cc3e35e89 @@ -0,0 +1,18 @@ +package fr.blankoworld.connexionBDD; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2/2020941998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2/2020941998af001c18c4935e001381da new file mode 100644 index 0000000..2d340c6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2/2020941998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/100b0e1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/100b0e1a98af001c18c4935e001381da new file mode 100644 index 0000000..ba083c1 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/100b0e1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/20a8ea8d4aaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/20a8ea8d4aaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..ab62e82 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/20a8ea8d4aaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,195 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + this.pr.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/30a4696efea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/30a4696efea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..29d4784 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/30a4696efea3001c1027e59cc3e35e89 @@ -0,0 +1,41 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + // Fermer la base de donne + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/40ac6c1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/40ac6c1798af001c18c4935e001381da new file mode 100644 index 0000000..6e51be6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/40ac6c1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/40c0571398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/40c0571398af001c18c4935e001381da new file mode 100644 index 0000000..9199360 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/40c0571398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/7092fe1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/7092fe1498af001c18c4935e001381da new file mode 100644 index 0000000..840d14c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/7092fe1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/904bea1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/904bea1898af001c18c4935e001381da new file mode 100644 index 0000000..a4e7235 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/20/904bea1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/00bd3b9b7aa9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/00bd3b9b7aa9001c1d3abf97745a02da new file mode 100644 index 0000000..b543c15 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/00bd3b9b7aa9001c1d3abf97745a02da @@ -0,0 +1,103 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/4042f72100a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/4042f72100a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..0752121 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/4042f72100a4001c1027e59cc3e35e89 @@ -0,0 +1,56 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement statement = connection.createStatement(); + boolean result = statement.execute("SELECT * FROM MATABLE"); + ResultSet resultSet = connection.executeQuery("SELECT ATTRIBUT1, ATTRIBUT2 FROM MATABLE"); + int col = statement.executeUpdate("INSERT INTO MATABLE VALUES(15,'bonjour',7.0)"); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/605ec46b4caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/605ec46b4caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..90614da --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/605ec46b4caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + JOptionPane jo = new JOptionPane(); + jo = JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/80802e1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/80802e1998af001c18c4935e001381da new file mode 100644 index 0000000..b2d1a5a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/80802e1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/e0cc29eb01a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/e0cc29eb01a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..559ac27 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/e0cc29eb01a4001c1027e59cc3e35e89 @@ -0,0 +1,77 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + System.out.println(resultat.isBeforeFirst()); +// true + resultat.next(); +// on se retrouve ici sur la premire ligne + +// traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + } + resultat.first(); +// on a replac ici le curseur sur la premire ligne + resultat.afterlast(); +// on a replac le curseur aprs la dernire ligne + while(resultat.previous()){ + // on parcours ici le ResultSet de la dernire la premire ligne + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/f0f38a1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/f0f38a1598af001c18c4935e001381da new file mode 100644 index 0000000..7fda01c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/21/f0f38a1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/106dda1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/106dda1898af001c18c4935e001381da new file mode 100644 index 0000000..1fe4ec3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/106dda1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/10908a1398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/10908a1398af001c18c4935e001381da new file mode 100644 index 0000000..29768c9 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/10908a1398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/609d7e10c8a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/609d7e10c8a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..0c8f99e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/609d7e10c8a4001c1acc9f54b60f9b57 @@ -0,0 +1,64 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField(); + JTextField jtextPort = new JTextField(); + JTextField jtextBase = new JTextField(); + JTextField jtextIdentifiant = new JTextField(); + JTextField jtextMdp = new JTextField(); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/e02508dafea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/e02508dafea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..7b4a6dd --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/22/e02508dafea3001c1027e59cc3e35e89 @@ -0,0 +1,40 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + if(connection!=null){try{connection.close();}catch(Exception e){e.printStackTrace();}} + } + } + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/23/7080d71b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/23/7080d71b98af001c18c4935e001381da new file mode 100644 index 0000000..ac14a19 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/23/7080d71b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/23/70adb51598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/23/70adb51598af001c18c4935e001381da new file mode 100644 index 0000000..f309975 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/23/70adb51598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/24/80bc241998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/24/80bc241998af001c18c4935e001381da new file mode 100644 index 0000000..719790c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/24/80bc241998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/24/d084114685a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/24/d084114685a9001c1d3abf97745a02da new file mode 100644 index 0000000..cf7c7e8 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/24/d084114685a9001c1d3abf97745a02da @@ -0,0 +1,149 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + private void windowActivated(WindowEvent ev){ + + } + }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/25/c062e21598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/25/c062e21598af001c18c4935e001381da new file mode 100644 index 0000000..ca8df1c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/25/c062e21598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/25/c0932d4f7fa9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/25/c0932d4f7fa9001c1d3abf97745a02da new file mode 100644 index 0000000..189c1e6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/25/c0932d4f7fa9001c1d3abf97745a02da @@ -0,0 +1,78 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,400); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/25/d0c942effca3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/25/d0c942effca3001c1027e59cc3e35e89 new file mode 100644 index 0000000..dff114e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/25/d0c942effca3001c1027e59cc3e35e89 @@ -0,0 +1,43 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + Connection conn = new Connection(null); + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/26/50d524f820af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/26/50d524f820af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..51057a0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/26/50d524f820af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea + +ORA-17002=\u05d7\u05e8\u05d9\u05d2\u05ea Io + +ORA-17003=\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17004=\u05e1\u05d5\u05d2 \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17005=\u05e1\u05d5\u05d2 \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05e0\u05ea\u05de\u05da + +ORA-17006=\u05e9\u05dd \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17007=\u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d4\u05d3\u05d9\u05e0\u05de\u05d9\u05ea \u05d0\u05d9\u05e0\u05d4 \u05ea\u05e7\u05e4\u05d4 + +ORA-17008=\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05e1\u05d2\u05e8\u05d4 + +ORA-17009=\u05de\u05e9\u05e4\u05d8 \u05e1\u05d2\u05d5\u05e8 + +ORA-17010=\u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05e1\u05d2\u05d5\u05e8 + +ORA-17011=\u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05de\u05e8\u05d5\u05e7\u05df + +ORA-17012=\u05e1\u05ea\u05d9\u05e8\u05d4 \u05d1\u05e1\u05d5\u05d2 \u05d4\u05e4\u05e8\u05de\u05d8\u05e8 + +ORA-17014=\u05dc\u05d0 \u05d1\u05d5\u05e6\u05e2\u05d4 \u05e7\u05e8\u05d9\u05d0\u05d4 \u05dc- ResultSet.next + +ORA-17015=\u05d4\u05de\u05e9\u05e4\u05d8 \u05d1\u05d5\u05d8\u05dc + +ORA-17016=\u05e4\u05e1\u05e7-\u05d6\u05de\u05df \u05d1\u05de\u05e9\u05e4\u05d8 + +ORA-17017=\u05d4\u05e1\u05de\u05df \u05db\u05d1\u05e8 \u05d0\u05d5\u05ea\u05d7\u05dc + +ORA-17018=\u05d4\u05e1\u05de\u05df \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17019=\u05e0\u05d9\u05ea\u05df \u05e8\u05e7 \u05dc\u05ea\u05d0\u05e8 \u05e9\u05d0\u05d9\u05dc\u05ea\u05d4 + +ORA-17020=\u05d4\u05d1\u05d0\u05d4 \u05de\u05d5\u05e7\u05d3\u05de\u05ea \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05e9\u05dc \u05e9\u05d5\u05e8\u05d4 + +ORA-17021=\u05d7\u05e1\u05e8\u05d5\u05ea \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea + +ORA-17022=\u05d7\u05e1\u05e8\u05d5\u05ea \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05d1\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 + +ORA-17023=\u05d4\u05ea\u05db\u05d5\u05e0\u05d4 \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea + +ORA-17024=\u05dc\u05d0 \u05e0\u05e7\u05e8\u05d0\u05d5 \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17025=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05d4\u05d2\u05d3\u05e8\u05d5\u05ea. \u05d4\u05df \u05e8\u05d9\u05e7\u05d5\u05ea (Null) () + +ORA-17026=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05de\u05e1\u05e4\u05e8\u05d9\u05ea + +ORA-17027=\u05d4\u05d6\u05e8\u05dd \u05db\u05d1\u05e8 \u05e0\u05e1\u05d2\u05e8 + +ORA-17028=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05e7\u05d1\u05d5\u05e2 \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05d7\u05d3\u05e9\u05d5\u05ea \u05e2\u05d3 \u05e9\u05d9\u05d9\u05e1\u05d2\u05e8 \u05e1\u05dc \u05d4\u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05d4\u05e0\u05d5\u05db\u05d7\u05d9 + +ORA-17029=setReadOnly: \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4-\u05d1\u05dc\u05d1\u05d3 \u05d0\u05d9\u05e0\u05df \u05e0\u05ea\u05de\u05db\u05d5\u05ea + +ORA-17030=READ_COMMITTED \u05d5- SERIALIZABLE \u05d4\u05df \u05e8\u05de\u05d5\u05ea \u05d4\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d4\u05d9\u05d7\u05d9\u05d3\u05d5\u05ea \u05d4\u05ea\u05e7\u05e4\u05d5\u05ea + +ORA-17031=setAutoClose: \u05e8\u05e7 \u05de\u05e6\u05d1 \u05d4\u05e1\u05d2\u05d9\u05e8\u05d4 \u05d4\u05d0\u05d5\u05d8\u05d5\u05de\u05d8\u05d9\u05ea \u05e9\u05dc \u05d4\u05ea\u05de\u05d9\u05db\u05d4 \u05de\u05d5\u05e4\u05e2\u05dc + +ORA-17032=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d0\u05e4\u05e1 \u05d0\u05ea \u05d4\u05d4\u05d2\u05d3\u05e8\u05d4 \u05d4\u05de\u05d5\u05e7\u05d3\u05de\u05ea \u05e9\u05dc \u05d4\u05e9\u05d5\u05e8\u05d4 + +ORA-17033=\u05de\u05d7\u05e8\u05d5\u05d6\u05ea SQL92 \u05dc\u05d0 \u05ea\u05e7\u05d9\u05e0\u05d4 \u05d1\u05de\u05d9\u05e7\u05d5\u05dd + +ORA-17034=\u05d0\u05e1\u05d9\u05de\u05d5\u05df SQL92 \u05dc\u05d0 \u05e0\u05ea\u05de\u05da \u05d1\u05de\u05d9\u05e7\u05d5\u05dd + +ORA-17035=\u05de\u05e2\u05e8\u05db\u05ea \u05d4\u05ea\u05d5\u05d5\u05d9\u05dd \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea! + +ORA-17036=\u05d7\u05e8\u05d9\u05d2 \u05d1-OracleNumber + +ORA-17037=\u05d4\u05d4\u05de\u05e8\u05d4 \u05d1\u05d9\u05df UTF8 \u05d5- UCS2 \u05e0\u05db\u05e9\u05dc\u05d4 + +ORA-17038=\u05de\u05e2\u05e8\u05da \u05d4\u05d1\u05d9\u05d9\u05d8\u05d9\u05dd \u05e7\u05e6\u05e8 \u05de\u05d3\u05d9 + +ORA-17039=\u05de\u05e2\u05e8\u05da \u05d4\u05ea\u05d5\u05d5\u05d9\u05dd \u05e7\u05e6\u05e8 \u05de\u05d3\u05d9 + +ORA-17040=\u05d9\u05e9 \u05dc\u05e6\u05d9\u05d9\u05df \u05d0\u05ea \u05e4\u05e8\u05d5\u05d8\u05d5\u05e7\u05d5\u05dc \u05d4\u05de\u05e9\u05e0\u05d4 \u05d1-URL \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea + +ORA-17041=\u05d7\u05e1\u05e8 \u05e4\u05e8\u05de\u05d8\u05e8 IN \u05d0\u05d5 OUT \u05d1\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1: + +ORA-17042=\u05e2\u05e8\u05da \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17043=\u05d2\u05d5\u05d3\u05dc \u05d4\u05d6\u05e8\u05dd \u05d4\u05de\u05e8\u05d1\u05d9 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17044=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05dc\u05d0 \u05d4\u05d5\u05e7\u05e6\u05d4 \u05de\u05e2\u05e8\u05da \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17045=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05e0\u05e2\u05e9\u05d4 \u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d2\u05e9\u05ea \u05dc\u05e2\u05e8\u05db\u05d9 \u05db\u05e8\u05d9\u05db\u05d4 \u05e9\u05de\u05e2\u05d1\u05e8 \u05dc\u05e2\u05e8\u05da \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 + +ORA-17046=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05d4\u05d2\u05d9\u05e9\u05d4 \u05dc\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17047=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05e0\u05d9\u05ea\u05d5\u05d7 \u05de\u05ea\u05d0\u05e8 \u05d4\u05e1\u05d5\u05d2 + +ORA-17048=\u05d4\u05e1\u05d5\u05d2 \u05d0\u05d9\u05e0\u05d5 \u05de\u05d5\u05d2\u05d3\u05e8 + +ORA-17049=\u05d7\u05d5\u05e1\u05e8 \u05d0\u05d7\u05d9\u05d3\u05d5\u05ea \u05d1\u05d9\u05df \u05e1\u05d5\u05d2\u05d9 \u05d4\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8\u05d9\u05dd \u05e9\u05dc java \u05d5- sql + +ORA-17050=\u05d0\u05dc\u05de\u05e0\u05d8 \u05d6\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05e7\u05d9\u05d9\u05dd \u05d1\u05d5\u05e7\u05d8\u05d5\u05e8 + +ORA-17051=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1- API \u05d6\u05d4 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05d5\u05d2\u05d9\u05dd \u05e9\u05d0\u05d9\u05e0\u05dd UDT + +ORA-17052=\u05d9\u05d7\u05d5\u05e1 \u05d6\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17053=\u05d4\u05d2\u05d5\u05d3\u05dc \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17054=\u05de\u05d0\u05ea\u05e8 \u05d4-LOBS \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17055=\u05e0\u05de\u05e6\u05d0 \u05ea\u05d5 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d1- + +ORA-17056=\u05de\u05e2\u05e8\u05db\u05ea \u05d4\u05ea\u05d5\u05d5\u05d9\u05dd \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea + +ORA-17057=LOB \u05e1\u05d2\u05d5\u05e8 + +ORA-17058=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05e9\u05d9\u05e2\u05d5\u05e8 \u05d4\u05de\u05e8\u05ea \u05d4- NLS \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17059=\u05d4\u05d4\u05de\u05e8\u05d4 \u05dc\u05d9\u05d9\u05e6\u05d5\u05d2 \u05e4\u05e0\u05d9\u05de\u05d9 \u05e0\u05db\u05e9\u05dc\u05d4 + +ORA-17060=\u05d1\u05e0\u05d9\u05d9\u05ea \u05d4\u05de\u05ea\u05d0\u05e8 \u05e0\u05db\u05e9\u05dc\u05d4 + +ORA-17061=\u05d7\u05e1\u05e8 \u05de\u05ea\u05d0\u05e8 + +ORA-17062=\u05e1\u05de\u05df \u05d4\u05d9\u05d9\u05d7\u05d5\u05e1 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17063=\u05dc\u05d0 \u05e0\u05de\u05e6\u05d0 \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 + +ORA-17064=\u05ea\u05d7\u05d1\u05d9\u05e8 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d0\u05d5 \u05e9\u05e9\u05dd \u05de\u05e1\u05d3 \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05d4\u05d5\u05d0 Null + +ORA-17065=\u05de\u05d7\u05dc\u05e7\u05ea \u05d4\u05d4\u05de\u05e8\u05d4 \u05d4\u05d9\u05d0 Null + +ORA-17066=\u05d9\u05e9 \u05dc\u05d9\u05d9\u05e9\u05dd \u05d1\u05d0\u05d5\u05e4\u05df \u05e1\u05e4\u05e6\u05d9\u05e4\u05d9 \u05d0\u05ea \u05e9\u05db\u05d1\u05ea \u05d4\u05d2\u05d9\u05e9\u05d4 + +ORA-17067=\u05e6\u05d5\u05d9\u05df URL \u05e9\u05dc Oracle \u05e9\u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17068=\u05d1\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d9\u05e9 \u05d0\u05e8\u05d2\u05d5\u05de\u05e0\u05d8\u05d9\u05dd \u05e9\u05d0\u05d9\u05e0\u05dd \u05ea\u05e7\u05e4\u05d9\u05dd + +ORA-17069=\u05d9\u05e9 \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1\u05e7\u05e8\u05d9\u05d0\u05ea XA \u05de\u05e4\u05d5\u05e8\u05e9\u05ea + +ORA-17070=\u05d2\u05d5\u05d3\u05dc \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05e2\u05d5\u05dc\u05d4 \u05e2\u05dc \u05d4\u05d2\u05d5\u05d3\u05dc \u05d4\u05de\u05e8\u05d1\u05d9 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05d5\u05d2 \u05d6\u05d4 + +ORA-17071=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05de\u05d4\u05d2\u05d1\u05d5\u05dc \u05d4\u05de\u05e8\u05d1\u05d9 \u05e9\u05dc VARRAY + +ORA-17072=\u05d4\u05e2\u05e8\u05da \u05e9\u05d4\u05d5\u05db\u05e0\u05e1 \u05d2\u05d3\u05d5\u05dc \u05de\u05d3\u05d9 \u05dc\u05e2\u05de\u05d5\u05d3\u05d4 + +ORA-17073=\u05d4\u05de\u05e6\u05d1\u05d9\u05e2 \u05d4\u05dc\u05d5\u05d2\u05d9 (logical handle) \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 \u05e2\u05d5\u05d3 + +ORA-17074=\u05d3\u05d2\u05dd \u05d4\u05e9\u05dd \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17075=\u05e4\u05e2\u05d5\u05dc\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05dc\u05e7\u05d9\u05d3\u05d5\u05dd \u05d1\u05dc\u05d1\u05d3 + +ORA-17076=\u05e4\u05e2\u05d5\u05dc\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d1\u05dc\u05d1\u05d3 + +ORA-17077=\u05db\u05d9\u05e9\u05dc\u05d5\u05df \u05d1\u05e7\u05d1\u05d9\u05e2\u05ea \u05e2\u05e8\u05da REF + +ORA-17078=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d1\u05e6\u05e2 \u05d0\u05ea \u05d4\u05e4\u05e2\u05d5\u05dc\u05d4, \u05e9\u05db\u05df \u05d4\u05d7\u05d9\u05d1\u05d5\u05e8\u05d9\u05dd \u05db\u05d1\u05e8 \u05e4\u05ea\u05d5\u05d7\u05d9\u05dd + +ORA-17079=\u05e0\u05ea\u05d5\u05e0\u05d9 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e9\u05dc \u05d4\u05de\u05e9\u05ea\u05de\u05e9 \u05d0\u05d9\u05e0\u05dd \u05ea\u05d5\u05d0\u05de\u05d9\u05dd \u05d0\u05ea \u05d0\u05dc\u05d4 \u05d4\u05e7\u05d9\u05d9\u05de\u05d9\u05dd + +ORA-17080=\u05e4\u05e7\u05d5\u05d3\u05ea \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 \u05d0\u05d9\u05e0\u05d4 \u05ea\u05e7\u05e4\u05d4 + +ORA-17081=\u05d0\u05e8\u05e2\u05d4 \u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05e2\u05ea \u05d9\u05e6\u05d9\u05e8\u05ea \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 + +ORA-17082=\u05d0\u05d9\u05df \u05e9\u05d5\u05e8\u05d4 \u05db\u05e2\u05ea + +ORA-17083=\u05dc\u05d0 \u05d1\u05e9\u05d5\u05e8\u05d4 \u05e9\u05d4\u05d5\u05db\u05e0\u05e1\u05d4 + +ORA-17084=\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d1\u05e9\u05d5\u05e8\u05d4 \u05dc\u05d4\u05db\u05e0\u05e1\u05d4 + +ORA-17085=\u05e1\u05ea\u05d9\u05e8\u05d4 \u05d1\u05e2\u05e8\u05db\u05d9\u05dd + +ORA-17086=\u05e2\u05e8\u05da \u05e2\u05de\u05d5\u05d3\u05d4 \u05dc\u05d0 \u05de\u05d5\u05d2\u05d3\u05e8 \u05d1\u05e9\u05d5\u05e8\u05d4 \u05e9\u05d4\u05d5\u05db\u05e0\u05e1\u05d4 + +ORA-17087=\u05d4\u05ea\u05e2\u05dc\u05de\u05d5\u05ea \u05de\u05e8\u05de\u05d6 \u05d4\u05d1\u05d9\u05e6\u05d5\u05e2\u05d9\u05dd: setFetchDirection() + +ORA-17088=\u05ea\u05d7\u05d1\u05d9\u05e8 \u05dc\u05d0 \u05e0\u05ea\u05de\u05da \u05e2\u05d1\u05d5\u05e8 \u05e1\u05d5\u05d2 \u05e1\u05d8 \u05d4\u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05d5\u05e8\u05de\u05ea \u05d4\u05de\u05e7\u05d1\u05d9\u05dc\u05d9\u05d5\u05ea \u05d4\u05de\u05d1\u05d5\u05e7\u05e9\u05d9\u05dd +ORA-17089=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea + +ORA-17090=\u05d4\u05e4\u05e2\u05d5\u05dc\u05d4 \u05d0\u05e1\u05d5\u05e8\u05d4 + +ORA-17091=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d9\u05e6\u05d5\u05e8 \u05e1\u05d8 \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05d1\u05e1\u05d5\u05d2 \u05d5/\u05d0\u05d5 \u05d1\u05e8\u05de\u05ea \u05d4\u05de\u05e7\u05d1\u05d9\u05dc\u05d9\u05d5\u05ea \u05d4\u05de\u05d1\u05d5\u05e7\u05e9\u05d9\u05dd + +ORA-17092=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d9\u05e6\u05d5\u05e8 \u05d0\u05d5 \u05dc\u05d1\u05e6\u05e2 \u05de\u05e9\u05e4\u05d8\u05d9 JDBC \u05d1\u05e1\u05d5\u05e3 \u05e2\u05d9\u05d1\u05d5\u05d3 \u05d4\u05e7\u05e8\u05d9\u05d0\u05d5\u05ea + +ORA-17093=\u05e4\u05e2\u05d5\u05dc\u05ea OCI \u05d4\u05d7\u05d6\u05d9\u05e8\u05d4 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u05d0\u05d9\u05df \u05d4\u05ea\u05d0\u05de\u05d4 \u05dc\u05d2\u05e8\u05e1\u05d4 \u05e9\u05dc \u05e1\u05d5\u05d2 \u05d4\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8 + +ORA-17095=\u05dc\u05d0 \u05e0\u05e7\u05d1\u05e2 \u05d2\u05d5\u05d3\u05dc \u05de\u05d8\u05de\u05d5\u05df \u05d4\u05de\u05e9\u05e4\u05d8\u05d9\u05dd + +ORA-17096=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d0\u05e4\u05e9\u05e8 \u05d4\u05e2\u05d1\u05e8\u05d4 \u05dc\u05de\u05d8\u05de\u05d5\u05df \u05e9\u05dc \u05de\u05e9\u05e4\u05d8\u05d9\u05dd \u05e2\u05d1\u05d5\u05e8 \u05d7\u05d9\u05d1\u05d5\u05e8 \u05dc\u05d5\u05d2\u05d9 \u05d6\u05d4. + +ORA-17097=\u05e1\u05d5\u05d2 \u05d0\u05dc\u05de\u05e0\u05d8 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d1\u05d8\u05d1\u05dc\u05ea \u05d4\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05e9\u05dc PL/SQL + +ORA-17098=\u05e4\u05e2\u05d5\u05dc\u05ea \u05e8\u05d9\u05e7\u05d5\u05df \u05d4- lob \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 + +ORA-17099=\u05d0\u05d5\u05e8\u05da \u05de\u05e2\u05e8\u05da \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d1\u05d8\u05d1\u05dc\u05ea \u05d4\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05e9\u05dc PL/SQL + +ORA-17100=\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8 Java \u05e9\u05dc \u05de\u05e1\u05d3 \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05dc\u05d0 \u05ea\u05e7\u05e3 + +ORA-17101=\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9\u05dd \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d9\u05dd \u05d1\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8 \u05de\u05d0\u05d2\u05e8 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea OCI + +ORA-17102=Bfile \u05de\u05d9\u05d5\u05e2\u05d3 \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d1\u05dc\u05d1\u05d3 + +ORA-17103=\u05e1\u05d5\u05d2 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05dc\u05d4\u05d7\u05d6\u05e8\u05d4 \u05d3\u05e8\u05da getConnection \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3. \u05d9\u05e9 \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1-getJavaSqlConnection + +ORA-17104=\u05de\u05e9\u05e4\u05d8 SQL \u05dc\u05d4\u05e4\u05e2\u05dc\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05d9\u05db\u05d5\u05dc \u05dc\u05d4\u05d9\u05d5\u05ea \u05e8\u05d9\u05e7 \u05d0\u05d5 Null + +ORA-17105=\u05dc\u05d0 \u05e0\u05e7\u05d1\u05e2 \u05d0\u05d6\u05d5\u05e8 \u05d6\u05de\u05df \u05dc\u05de\u05d5\u05e9\u05d1 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea + +ORA-17106=\u05d4\u05d5\u05d2\u05d3\u05e8\u05d4 \u05ea\u05e6\u05d5\u05e8\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05dc\u05de\u05d0\u05d2\u05e8 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea \u05e9\u05dc \u05d3\u05e8\u05d9\u05d9\u05d1\u05e8 \u05d4-JDBC-OCI + +ORA-17107=\u05d4\u05d5\u05d2\u05d3\u05e8 \u05e1\u05d5\u05d2 proxy \u05dc\u05d0 \u05ea\u05e7\u05e3 + +ORA-17108=\u05dc\u05d0 \u05e6\u05d5\u05d9\u05df \u05d0\u05d5\u05e8\u05da \u05de\u05e8\u05d1\u05d9 \u05d1-defineColumnType + +ORA-17109=\u05dc\u05d0 \u05e0\u05de\u05e6\u05d0\u05d4 \u05d4\u05e6\u05e4\u05e0\u05ea Java character encoding \u05d4\u05e8\u05d2\u05d9\u05dc\u05d4 + +ORA-17110=\u05d4\u05d1\u05d9\u05e6\u05d5\u05e2 \u05d4\u05d5\u05e9\u05dc\u05dd \u05e2\u05dd \u05d0\u05d6\u05d4\u05e8\u05d4 + +ORA-17111=\u05e6\u05d5\u05d9\u05df \u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e2\u05d1\u05d5\u05e8 TTL \u05e9\u05dc \u05de\u05d8\u05de\u05d5\u05df \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea + +ORA-17112=\u05e6\u05d5\u05d9\u05df \u05de\u05e8\u05d5\u05d5\u05d7 thread \u05dc\u05d0 \u05ea\u05e7\u05e3 + +ORA-17113=\u05e2\u05e8\u05da \u05de\u05e8\u05d5\u05d5\u05d7 \u05d4-Thread \u05d2\u05d3\u05d5\u05dc \u05de\u05d4\u05e2\u05e8\u05da \u05e9\u05dc \u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05d4\u05de\u05d8\u05de\u05d5\u05df + +ORA-17114=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1-commit \u05e9\u05dc \u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05de\u05e7\u05d5\u05de\u05d9\u05ea \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea + +ORA-17115=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1-rollback \u05e9\u05dc \u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05de\u05e7\u05d5\u05de\u05d9\u05ea \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea + +ORA-17116=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e4\u05e2\u05d9\u05dc \u05d0\u05ea auto-commit \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea \u05e4\u05e2\u05d9\u05dc\u05d4 + +ORA-17117=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05e7\u05d1\u05d5\u05e2 savepoint \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea \u05e4\u05e2\u05d9\u05dc\u05d4 + +ORA-17118=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05d6\u05d9\u05d4\u05d5\u05d9 \u05e2\u05d1\u05d5\u05e8 Savepoint \u05e9\u05de\u05d9 + +ORA-17119=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05e9\u05dd \u05e2\u05d1\u05d5\u05e8 Savepoint \u05dc\u05dc\u05d0 \u05e9\u05dd + +ORA-17120=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05e7\u05d1\u05d5\u05e2 Savepoint \u05db\u05d0\u05e9\u05e8 \u05de\u05d5\u05e4\u05e2\u05dc\u05ea \u05d4\u05ea\u05db\u05d5\u05e0\u05d4 auto commit + +ORA-17121=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d1\u05e6\u05e2 rollback \u05dc-Savepoint \u05db\u05d0\u05e9\u05e8 \u05de\u05d5\u05e4\u05e2\u05dc\u05ea \u05d4\u05ea\u05db\u05d5\u05e0\u05d4 auto commit + +ORA-17122=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d1\u05e6\u05e2 rollback \u05dc-Savepoint \u05e9\u05dc \u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05de\u05e7\u05d5\u05de\u05d9\u05ea \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea + +ORA-17123=\u05e6\u05d5\u05d9\u05df \u05d2\u05d5\u05d3\u05dc \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e2\u05d1\u05d5\u05e8 \u05de\u05d8\u05de\u05d5\u05df \u05d4\u05de\u05e9\u05e4\u05d8\u05d9\u05dd + +ORA-17124=\u05e6\u05d5\u05d9\u05df \u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e9\u05dc \u05d7\u05d5\u05e1\u05e8 \u05e4\u05e2\u05d9\u05dc\u05d5\u05ea \u05d1\u05de\u05d8\u05de\u05d5\u05df \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea + +ORA-17200=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05de\u05d9\u05e8 \u05d1\u05d0\u05d5\u05e4\u05df \u05ea\u05e7\u05d9\u05df \u05d0\u05ea \u05de\u05d7\u05e8\u05d5\u05d6\u05ea \u05e4\u05ea\u05d9\u05d7\u05ea \u05d4-XA \u05de- Java \u05dc\u05e9\u05e4\u05ea C + +ORA-17201=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05de\u05d9\u05e8 \u05d1\u05d0\u05d5\u05e4\u05df \u05ea\u05e7\u05d9\u05df \u05d0\u05ea \u05de\u05d7\u05e8\u05d5\u05d6\u05ea \u05e1\u05d2\u05d9\u05e8\u05ea \u05d4-XA \u05de- Java \u05dc\u05e9\u05e4\u05ea C + +ORA-17202=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05de\u05d9\u05e8 \u05d1\u05d0\u05d5\u05e4\u05df \u05ea\u05e7\u05d9\u05df \u05d0\u05ea \u05e9\u05dd \u05d4-RM \u05de-Java \u05dc\u05e9\u05e4\u05ea C + +ORA-17203=\u05d4\u05d7\u05dc\u05e4\u05ea \u05e1\u05d5\u05d2 \u05d4\u05de\u05e6\u05d1\u05d9\u05e2 (\u05d1\u05d9\u05e6\u05d5\u05e2 cast) \u05dc-jlong \u05e0\u05db\u05e9\u05dc + +ORA-17204=\u05de\u05e2\u05e8\u05da \u05d4\u05e7\u05dc\u05d8 \u05e7\u05e6\u05e8 \u05de\u05db\u05d3\u05d9 \u05dc\u05d4\u05db\u05d9\u05dc \u05de\u05e6\u05d1\u05d9\u05e2\u05d9\u05dd (handles) \u05e9\u05dc OCI + +ORA-17205=\u05db\u05db\u05e9\u05dc \u05d1\u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05de\u05e6\u05d1\u05d9\u05e2 OCISvcCtx \u05de\u05ea\u05d5\u05da C-XA \u05ea\u05d5\u05da \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1- xaoSvcCtx + +ORA-17206=\u05e0\u05db\u05e9\u05dc \u05d1\u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05de\u05e6\u05d1\u05d9\u05e2 OCIEnv \u05de\u05ea\u05d5\u05da C-XA \u05ea\u05d5\u05da \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1- xaoEnv + +ORA-17207=\u05d4\u05de\u05d0\u05e4\u05d9\u05d9\u05df tnsEntry \u05dc\u05d0 \u05d4\u05d5\u05d2\u05d3\u05e8 \u05d1\u05de\u05e7\u05d5\u05e8 \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17213=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 XAER_RMERR \u05d1\u05de\u05d4\u05dc\u05da xa_open + +ORA-17215=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_INVAL \u05d1\u05de\u05d4\u05dc\u05da xa_open + +ORA-17216=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_PROTO \u05d1\u05de\u05d4\u05dc\u05da xa_open + +ORA-17233=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_RMERR \u05d1\u05de\u05d4\u05dc\u05da xa_close + +ORA-17235=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_INVAL \u05d1\u05de\u05d4\u05dc\u05da xa_close + +ORA-17236=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_PROTO \u05d1\u05de\u05d4\u05dc\u05da xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u05d4\u05e4\u05e8\u05ea \u05e4\u05e8\u05d5\u05d8\u05d5\u05e7\u05d5\u05dc + +ORA-17402=\u05e6\u05e4\u05d5\u05d9\u05d4 \u05d4\u05d5\u05d3\u05e2\u05ea RPA \u05d0\u05d7\u05ea \u05d1\u05dc\u05d1\u05d3 + +ORA-17403=\u05e6\u05e4\u05d5\u05d9\u05d4 \u05d4\u05d5\u05d3\u05e2\u05ea RXH \u05d0\u05d7\u05ea \u05d1\u05dc\u05d1\u05d3 + +ORA-17404=\u05d4\u05ea\u05e7\u05d1\u05dc\u05d5 \u05d9\u05d5\u05ea\u05e8 RXD \u05de\u05d4\u05e6\u05e4\u05d5\u05d9 + +ORA-17405=\u05d0\u05d5\u05e8\u05da \u05d4- UAC \u05d0\u05d9\u05e0\u05d5 \u05d0\u05e4\u05e1 + +ORA-17406=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05de\u05d4\u05d0\u05d5\u05e8\u05da \u05d4\u05de\u05e8\u05d1\u05d9 \u05e9\u05dc \u05d4\u05de\u05d0\u05d2\u05e8 (buffer) + +ORA-17407=\u05d9\u05d9\u05e6\u05d5\u05d2 \u05d4\u05e1\u05d5\u05d2 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 (setRep) + +ORA-17408=\u05d9\u05d9\u05e6\u05d5\u05d2 \u05d4\u05e1\u05d5\u05d2 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 (getRep) + +ORA-17409=\u05d0\u05d5\u05e8\u05da \u05d4\u05de\u05d0\u05d2\u05e8 (buffer) \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17410=\u05d0\u05d9\u05df \u05d9\u05d5\u05ea\u05e8 \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4 \u05de\u05d4-socket + +ORA-17411=\u05d7\u05d5\u05e1\u05e8 \u05d4\u05ea\u05d0\u05de\u05d4 \u05d1\u05d9\u05d9\u05e6\u05d5\u05d2\u05d9 \u05e1\u05d5\u05d2 \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17412=\u05d0\u05d5\u05e8\u05da \u05d4\u05e1\u05d5\u05d2 \u05e2\u05d5\u05dc\u05d4 \u05e2\u05dc \u05d4\u05d0\u05d5\u05e8\u05da \u05d4\u05de\u05e8\u05d1\u05d9 + +ORA-17413=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05d1\u05d2\u05d5\u05d3\u05dc \u05d4\u05de\u05e4\u05ea\u05d7 + +ORA-17414=\u05d0\u05d9\u05df \u05de\u05e1\u05e4\u05d9\u05e7 \u05de\u05e7\u05d5\u05dd \u05d1\u05de\u05d0\u05d2\u05e8 (buffer) \u05dc\u05d0\u05d7\u05e1\u05d5\u05df \u05e9\u05de\u05d5\u05ea \u05d4\u05e2\u05de\u05d5\u05d3\u05d5\u05ea + +ORA-17415=\u05e1\u05d5\u05d2 \u05d6\u05d4 \u05dc\u05d0 \u05d8\u05d5\u05e4\u05dc + +ORA-17416=FATAL + +ORA-17417=\u05d1\u05e2\u05d9\u05d4 \u05d1- NLS, \u05e4\u05e2\u05e0\u05d5\u05d7 \u05e9\u05de\u05d5\u05ea \u05d4\u05e2\u05de\u05d5\u05d3\u05d5\u05ea \u05e0\u05db\u05e9\u05dc + +ORA-17418=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05d0\u05d5\u05e8\u05da \u05d4\u05e9\u05d3\u05d4 \u05e9\u05dc \u05d4\u05de\u05d1\u05e0\u05d4 \u05d4\u05e4\u05e0\u05d9\u05de\u05d9 + +ORA-17419=\u05de\u05e1\u05e4\u05e8 \u05d4\u05e2\u05de\u05d5\u05d3\u05d5\u05ea \u05e9\u05d4\u05d5\u05d7\u05d6\u05e8 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17420=\u05d2\u05e8\u05e1\u05ea Oracle \u05dc\u05d0 \u05de\u05d5\u05d2\u05d3\u05e8\u05ea + +ORA-17421=\u05d4\u05e1\u05d5\u05d2\u05d9\u05dd \u05d0\u05d5 \u05d4\u05d7\u05d9\u05d1\u05d5\u05e8 \u05d0\u05d9\u05e0\u05dd \u05de\u05d5\u05d2\u05d3\u05e8\u05d9\u05dd + +ORA-17422=\u05de\u05d7\u05dc\u05e7\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05d1-factory + +ORA-17423=\u05e0\u05e2\u05e9\u05d4 \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1\u05d1\u05dc\u05d5\u05e7 PLSQL \u05de\u05d1\u05dc\u05d9 \u05dc\u05d4\u05d2\u05d3\u05d9\u05e8 IOV + +ORA-17424=\u05de\u05e0\u05e1\u05d4 \u05e4\u05e2\u05d5\u05dc\u05ea Marsahling \u05d0\u05d7\u05e8\u05ea + +ORA-17425=\u05de\u05d5\u05d7\u05d6\u05e8 \u05d6\u05e8\u05dd \u05d1\u05d1\u05dc\u05d5\u05e7 PLSQL + +ORA-17426=\u05db\u05e8\u05d9\u05db\u05ea \u05d4\u05d9\u05e6\u05d9\u05d0\u05d4 \u05d5\u05d2\u05dd \u05db\u05e8\u05d9\u05db\u05ea \u05d4\u05db\u05e0\u05d9\u05e1\u05d4 \u05d4\u05df NULL + +ORA-17427=\u05e0\u05e2\u05e9\u05d4 \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1- OAC \u05e9\u05dc\u05d0 \u05d0\u05d5\u05ea\u05d7\u05dc + +ORA-17428=\u05d9\u05e9 \u05dc\u05d1\u05e6\u05e2 \u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea (logon) \u05dc\u05d0\u05d7\u05e8 \u05d4\u05d4\u05ea\u05e7\u05e9\u05e8\u05d5\u05ea (connect) + +ORA-17429=\u05d7\u05d9\u05d9\u05d1 \u05dc\u05d4\u05d9\u05d5\u05ea \u05dc\u05db\u05dc \u05d4\u05e4\u05d7\u05d5\u05ea \u05de\u05d7\u05d5\u05d1\u05e8 \u05dc\u05e9\u05e8\u05ea + +ORA-17430=\u05d7\u05d9\u05d9\u05d1 \u05dc\u05d4\u05d9\u05d5\u05ea \u05de\u05d7\u05d5\u05d1\u05e8 \u05dc\u05e9\u05e8\u05ea + +ORA-17431=\u05de\u05e9\u05e4\u05d8 \u05d4- SQL \u05dc\u05e0\u05d9\u05ea\u05d5\u05d7 \u05e8\u05d9\u05e7 + +ORA-17432=\u05d0\u05e4\u05e9\u05e8\u05d5\u05d9\u05d5\u05ea \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d5\u05ea \u05d1- all7 + +ORA-17433=\u05d0\u05e8\u05d2\u05d5\u05de\u05e0\u05d8\u05d9\u05dd \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d9\u05dd \u05d1\u05e7\u05e8\u05d9\u05d0\u05d4 + +ORA-17434=\u05d0\u05d9\u05e0\u05d5 \u05e0\u05de\u05e6\u05d0 \u05d1\u05de\u05e6\u05d1 \'\u05d6\u05e8\u05d9\u05de\u05d4\' + +ORA-17435=\u05de\u05e1\u05e4\u05e8 \u05d4- in_out_binds \u05d1- IOV \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17436=\u05de\u05e1\u05e4\u05e8 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e9\u05dc \u05d9\u05e6\u05d9\u05d0\u05d5\u05ea (outbinds) + +ORA-17437=\u05d4\u05d0\u05e8\u05d2\u05d5\u05de\u05e0\u05d8\u05d9\u05dd IN/OUT \u05d1\u05d1\u05dc\u05d5\u05e7 PLSQL \u05e9\u05d2\u05d5\u05d9\u05d9\u05dd + +ORA-17438=\u05e4\u05e0\u05d9\u05de\u05d9 - \u05e2\u05e8\u05da \u05d1\u05dc\u05ea\u05d9 \u05e6\u05e4\u05d5\u05d9 + +ORA-17439=\u05e1\u05d5\u05d2 \u05d4- SQL \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17440=DBItem/DBType \u05d4\u05d5\u05d0 null + +ORA-17441=\u05d2\u05e8\u05e1\u05ea Oracle \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea. \u05d4\u05d2\u05e8\u05e1\u05d4 \u05d4\u05de\u05d9\u05e0\u05d9\u05de\u05dc\u05d9\u05ea \u05d4\u05e0\u05ea\u05de\u05db\u05ea \u05d4\u05d9\u05d0 7.2.3. + +ORA-17442=\u05e2\u05e8\u05da \u05e1\u05de\u05df \u05d4\u05d9\u05d9\u05d7\u05d5\u05e1 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17443=\u05d0\u05d9\u05df \u05ea\u05de\u05d9\u05db\u05d4 \u05dc\u05de\u05e9\u05ea\u05de\u05e9 \u05d0\u05d5 \u05e1\u05d9\u05e1\u05de\u05d4 \u05e9\u05d4\u05dd null \u05d1\u05d3\u05e8\u05d9\u05d9\u05d1\u05e8 THIN + +ORA-17444=\u05d2\u05e8\u05e1\u05ea \u05d4\u05e4\u05e8\u05d5\u05d8\u05d5\u05e7\u05d5\u05dc TTC \u05e9\u05d4\u05ea\u05e7\u05d1\u05dc\u05d4 \u05de\u05d4\u05e9\u05e8\u05ea \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/26/f03fa81598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/26/f03fa81598af001c18c4935e001381da new file mode 100644 index 0000000..c52da99 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/26/f03fa81598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/3044501a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/3044501a98af001c18c4935e001381da new file mode 100644 index 0000000..e1659a6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/3044501a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/50831a1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/50831a1998af001c18c4935e001381da new file mode 100644 index 0000000..1877c20 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/50831a1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/703d2f4fc9a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/703d2f4fc9a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..1707aae --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/703d2f4fc9a4001c1acc9f54b60f9b57 @@ -0,0 +1,73 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + Panneau_Centre_Gauche.setSize(100,100); + Panneau_Centre_Gauche.setBorder(FlowLayout); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/90e1d11898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/90e1d11898af001c18c4935e001381da new file mode 100644 index 0000000..2b62687 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/90e1d11898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/a09ed71398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/a09ed71398af001c18c4935e001381da new file mode 100644 index 0000000..c099e40 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/a09ed71398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/a0ecfffb20af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/a0ecfffb20af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..c379ce2 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/a0ecfffb20af001c1bf1a004f0d77fc3 @@ -0,0 +1,209 @@ +# US English Error messages for JDBC + +EOJ_INVALID_COLUMN_INDEX=ȗłB + +EOJ_INVALID_COLUMN_TYPE=ȗ߂łB + +EOJ_UNSUPPORTED_COLUMN_TYPE=߰ĂȂ߂łB + +EOJ_INVALID_COLUMN_NAME=ȗ񖼂łB + +EOJ_INVALID_DYNAMIC_COLUMN=ȓIłB + +EOJ_CLOSED_CONNECTION=ڑI܂B + +EOJ_CLOSED_STATEMENT=I܂B + +EOJ_CLOSED_RESULTSET=ʾÂ܂B + +EOJ_EXHAUSTED_RESULTSET=ʾĂÂȂĂ܂B + +EOJ_TYPE_CONFLICT=Ұ̌^Ă܂B + +EOJ_RESULTSET_BEFORE_FIRST_ROW=ResultSet.nextĂяo܂łB + +EOJ_STATEMENT_WAS_CANCELLED=܂B + +EOJ_STATEMENT_TIMED_OUT=ѱĂłB + +EOJ_CURSOR_ALREADY_INITIALIZED=ق͂łɏĂ܂B + +EOJ_INVALID_CURSOR=ȶقłB + +EOJ_CAN_ONLY_DESCRIBE_A_QUERY=ذ̋Lq̂݉”\łB + +EOJ_INVALID_ROW_PREFETCH=ȍs̪łB + +EOJ_MISSING_DEFINES=`Ă܂B + +EOJ_MISSING_DEFINES_AT_INDEX=̒`Ă܂B + +EOJ_UNSUPPORTED_FEATURE=߰ĂĂȂ@\łB + +EOJ_NO_DATA_READ=ް͓ǂݍ܂܂łB + +EOJ_IS_DEFINES_NULL_ERROR=defines.isNull ()̴װB + +EOJ_NUMERIC_OVERFLOW=lް۰łB + +EOJ_STREAM_CLOSED=ذт͊ɏIĂ܂B + +EOJ_NO_NEW_DEFINE_IF_RESULT_SET_NOT_CLOSED=݂̌ʾĂI܂ŁA`sƂł܂B + +EOJ_READ_ONLY=setReadOnly: Ǎݐpڑͻ߰ĂĂ܂B + +EOJ_INVALID_TRANSLEVEL=READ_COMMITTEDSERIALIZABLELݻ޸ݥقłB + +EOJ_AUTO_CLOSE_ONLY=setAutoClose: IӰނ̵݂߰Ă܂B + +EOJ_ROW_PREFETCH_NOT_ZERO=s̪ۂɐݒł܂B + +EOJ_MALFORMED_SQL92=̏ꏊł́ASQL92񂪐܂B + +EOJ_NON_SUPPORTED_SQL92_TOKEN=̏ꏊł́ASQL92İ݂ͻ߰Ă܂B + +EOJ_NON_SUPPORTED_CHAR_SET=߰ĂȂ׸ĂłB + +EOJ_ORACLE_NUMBER_EXCEPTION=OracleNumber̗OłB + +EOJ_FAIL_CONVERSION_UTF8_TO_UCS2=UTF8UCS2Ԃł̕ϊװB + +EOJ_CONVERSION_BYTE_ARRAY_ERROR=޲Ĕz̒s\łB + +EOJ_CONVERSION_CHAR_ARRAY_ERROR=z̒s\łB + +EOJ_SUB_SUB_PROTOCOL_ERROR=ڑURLŻĺقw肷Kv܂B + +EOJ_INVALID_IN_OUT_BINDS=ҰIN܂OUT̍ɌĂ܂B + +EOJ_INVALID_BATCH_VALUE=ޯlłB + +EOJ_INVALID_STREAM_SIZE=ذэő廲ނłB + +EOJ_BEYOND_BINDS_BATCH=װ: ޯl𒴂޲ޒlɱ悤Ƃ܂B + +EOJ_DATASET_ITEMS_NOT_ALLOCATED=װ: ްz񂪊蓖ĂĂ܂B + +EOJ_INVALID_RANK=װ: ްɖȍłB + +EOJ_TDS_FORMAT_ERROR=^Lqqʹװ + +EOJ_UNDEFINED_TYPE=`̌^łB + +EOJ_INCONSISTENT_ADT=javasql޼ުČ^Ă܂B + +EOJ_NOSUCHELEMENT=޸قɂ̗vf͂܂B + +EOJ_NOT_AN_OBJECT_TYPE=API͔UDT^Ɏgpł܂B + +EOJ_INVALID_REF=̎QƂ͖łB + +EOJ_INVALID_SIZE=ނłB + +EOJ_INVALID_LOB_LOCATOR=LOB۹łB + +EOJ_FAIL_CONVERSION_CHARACTER=ȕ܂B + +EOJ_UNSUPPORTED_CHARSET=߰ĂȂ׸ĂłB + +EOJ_CLOSED_LOB=LOB͏IĂ܂B + +EOJ_INVALID_NLS_RATIO=װ: NLSϊłB + +EOJ_CONVERSION_JAVA_ERROR=\Lւ̕ϊɎs܂B + +EOJ_FAIL_CREATE_DESC=Lqq̍쐬Ɏs܂B + +EOJ_NO_DESCRIPTOR=LqqĂ܂B + +EOJ_INVALID_REF_CURSOR=RefقłB + +EOJ_NOT_IN_A_TRANSACTION=ݻ޸ݒł͂܂B + +TTC0000=ĺوᔽ + +TTC0001=RPAүނ1‚ɂĂB + +TTC0002=RXHүނ1‚ɂĂB + +TTC0003=\𒴂RXD󂯎܂B + +TTC0004=UAC̒ۂł͂܂B + +TTC0005=őޯ̧𒴂Ă܂B + +TTC0100=Ȍ^\L(setRep)łB + +TTC0101=Ȍ^\L(getRep)łB + +TTC0102=ޯ̧łB + +TTC0103=Ăǂݍް͂܂B + +TTC0104=ް^\L̕svB + +TTC0105=^ől𒴂Ă܂B + +TTC0106=ނ𒴂Ă܂B + +TTC0107=񖼂i[ɂ͕s\ޯ̧ނłB + +TTC0108=̌^͖łB + +TTC0109=vIȴװB + +TTC0110=NLS̖A񖼂޺ނɎs܂B + +TTC0111=\̨̂ޒװB + +TTC0112=ȗ񐔂Ԃ܂B + +TTC0113=`Oracleްޮ݂łB + +TTC0114=`̌^܂͐ڑłB + +TTC0115=̧؂̸׽łB + +TTC0116=IOV`ɁAPLSQLۯgp܂B + +TTC0117=قȂϰّs悤Ƃ܂B + +TTC0118=PLSQLۯɽذтԂĂ܂B + +TTC0119=INOUT޲ނ̗NULLłB + +TTC0120=OACgpĂ܂B + +TTC0200=۸޵݂͐ڑ̌ɌĂяoKv܂B + +TTC0201=܂ްɐڑKv܂B + +TTC0202=ް۸޵݂Kv܂B + +TTC0203=͂SQLNULLłB + +TTC0204=all7ɖȵ߼݂܂B + +TTC0205=قɖȈ܂B + +TTC0206=ذݸޥӰނł͂܂B + +TTC0207=IOVin_out_bindsłB + +TTC0208=޲ނ̐łB + +TTC0209=PLSQLۯIN/OUT(1‚܂͕)̴װB + +TTC0210= - \ʒlłB + +TTC0211=SQL^łB + +TTC0212=DBItem/DBType --> NULL + +TTC0213=߰ĂȂOracleްޮ݂łB7.2.3ȍ~߰Ă܂B + +TTC0214=RefْlłB + +TTC0215=ްނ̌^̍ő廲ނĂ܂B + +TTC0255=̴װɑ΂үނ`Ă܂B diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/b0d37a1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/b0d37a1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..0a732b2 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/27/b0d37a1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,407 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u5185\u90e8\u30a8\u30e9\u30fc + +ORA-17002=I/O\u4f8b\u5916\u3067\u3059\u3002 + +ORA-17003=\u5217\u7d22\u5f15\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17004=\u5217\u306e\u578b\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17005=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u5217\u306e\u578b\u3067\u3059\u3002 + +ORA-17006=\u5217\u540d\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17007=\u52d5\u7684\u5217\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17008=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305f\u63a5\u7d9a\u3067\u3059\u3002 + +ORA-17009=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305f\u6587\u3067\u3059\u3002 + +ORA-17010=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305f\u7d50\u679c\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17011=\u7a7a\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17012=\u30d1\u30e9\u30e1\u30fc\u30bf\u306e\u578b\u304c\u7af6\u5408\u3057\u307e\u3059\u3002 + +ORA-17014=ResultSet.next\u306f\u30b3\u30fc\u30eb\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17015=\u6587\u306f\u53d6\u308a\u6d88\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17016=\u6587\u306f\u6642\u9593\u5207\u308c\u306b\u306a\u308a\u307e\u3057\u305f\u3002 + +ORA-17017=\u30ab\u30fc\u30bd\u30eb\u306f\u3059\u3067\u306b\u521d\u671f\u5316\u6e08\u3067\u3059\u3002 + +ORA-17018=\u7121\u52b9\u306a\u30ab\u30fc\u30bd\u30eb\u3067\u3059\u3002 + +ORA-17019=1\u3064\u306e\u554f\u5408\u305b\u306e\u307f\u8a18\u8ff0\u3067\u304d\u307e\u3059\u3002 + +ORA-17020=\u884c\u306e\u30d7\u30ea\u30d5\u30a7\u30c3\u30c1\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17021=\u5b9a\u7fa9\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17022=\u7d22\u5f15\u306b\u5b9a\u7fa9\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17023=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u6a5f\u80fd\u3067\u3059\u3002 + +ORA-17024=\u8aad\u307f\u8fbc\u3080\u30c7\u30fc\u30bf\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17025=defines.isNull()\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17026=\u6570\u5024\u306e\u30aa\u30fc\u30d0\u30fc\u30d5\u30ed\u30fc\u3067\u3059\u3002 + +ORA-17027=\u30b9\u30c8\u30ea\u30fc\u30e0\u306f\u3059\u3067\u306b\u30af\u30ed\u30fc\u30ba\u6e08\u3067\u3059\u3002 + +ORA-17028=\u73fe\u884c\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u304c\u30af\u30ed\u30fc\u30ba\u3055\u308c\u308b\u307e\u3067\u3001\u65b0\u898f\u7d50\u679c\u30bb\u30c3\u30c8\u3092\u5b9f\u884c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17029=setReadOnly: \u8aad\u8fbc\u307f\u5c02\u7528\u306e\u63a5\u7d9a\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002 + +ORA-17030=READ_COMMITTED\u304a\u3088\u3073SERIALIZABLE\u306e\u307f\u304c\u6709\u52b9\u306a\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30ec\u30d9\u30eb\u3067\u3059\u3002 + +ORA-17031=setAutoClose: \u81ea\u52d5\u30af\u30ed\u30fc\u30ba\u30fb\u30e2\u30fc\u30c9\u304c\u300c\u30aa\u30f3\u300d\u306e\u5834\u5408\u306e\u307f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u3059\u3002 + +ORA-17032=\u884c\u306e\u30d7\u30ea\u30d5\u30a7\u30c3\u30c1\u3092\u30bc\u30ed\u306b\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17033=\u4e0d\u5b8c\u5168\u306aSQL92\u6587\u5b57\u5217\u3067\u3059 - \u4f4d\u7f6e + +ORA-17034=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044SQL92\u30c8\u30fc\u30af\u30f3\u3067\u3059 - \u4f4d\u7f6e + +ORA-17035=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u30ad\u30e3\u30e9\u30af\u30bf\u30fb\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17036=OracleNumber\u3067\u4f8b\u5916\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17037=UTF8\u3068UCS2\u3068\u306e\u9593\u306e\u5909\u63db\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17038=\u30d0\u30a4\u30c8\u914d\u5217\u306e\u9577\u3055\u304c\u4e0d\u5341\u5206\u3067\u3059\u3002 + +ORA-17039=\u6587\u5b57\u914d\u5217\u306e\u9577\u3055\u304c\u4e0d\u5341\u5206\u3067\u3059\u3002 + +ORA-17040=\u63a5\u7d9aURL\u306b\u30b5\u30d6\u30fb\u30d7\u30ed\u30c8\u30b3\u30eb\u306e\u6307\u5b9a\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17041=IN\u307e\u305f\u306fOUT\u30d1\u30e9\u30e1\u30fc\u30bf\u304c\u3042\u308a\u307e\u305b\u3093 - \u7d22\u5f15: + +ORA-17042=\u30d0\u30c3\u30c1\u306e\u5024\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17043=\u30b9\u30c8\u30ea\u30fc\u30e0\u306e\u6700\u5927\u30b5\u30a4\u30ba\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17044=\u5185\u90e8\u30a8\u30e9\u30fc: \u30c7\u30fc\u30bf\u914d\u5217\u3092\u5272\u5f53\u3066\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17045=\u5185\u90e8\u30a8\u30e9\u30fc: \u30d0\u30c3\u30c1\u306e\u5024\u7bc4\u56f2\u3092\u8d85\u3048\u3066\u30d0\u30a4\u30f3\u30c9\u5909\u6570\u306b\u30a2\u30af\u30bb\u30b9\u3057\u3088\u3046\u3068\u3057\u307e\u3057\u305f\u3002 + +ORA-17046=\u5185\u90e8\u30a8\u30e9\u30fc: \u30c7\u30fc\u30bf\u30fb\u30a2\u30af\u30bb\u30b9\u306b\u5bfe\u3059\u308b\u7d22\u5f15\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17047=\u578b\u8a18\u8ff0\u5b50\u306e\u89e3\u6790\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17048=\u578b\u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17049=JAVA\u3068SQL\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u578b\u304c\u9069\u5408\u3057\u307e\u305b\u3093\u3002 + +ORA-17050=\u30d9\u30af\u30c8\u30eb\u306b\u305d\u306e\u3088\u3046\u306a\u8981\u7d20\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17051=\u3053\u306eAPI\u306f\u3001UDT\u4ee5\u5916\u306e\u578b\u306b\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17052=\u3053\u306e\u53c2\u7167\u306f\u6709\u52b9\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17053=\u30b5\u30a4\u30ba\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17054=LOB \u30ed\u30b1\u30fc\u30bf\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17055=\u7121\u52b9\u306a\u30ad\u30e3\u30e9\u30af\u30bf\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f - + +ORA-17056=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u30ad\u30e3\u30e9\u30af\u30bf\u30fb\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17057=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305fLOB\u3067\u3059\u3002 + +ORA-17058=\u5185\u90e8\u30a8\u30e9\u30fc: NLS\u5909\u63db\u7387\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17059=\u5185\u90e8\u8868\u73fe\u306e\u5909\u63db\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17060=\u8a18\u8ff0\u5b50\u306e\u69cb\u6210\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17061=\u8a18\u8ff0\u5b50\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17062=\u53c2\u7167\u30ab\u30fc\u30bd\u30eb\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17063=\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u4e2d\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17064=\u69cb\u6587\u304c\u7121\u52b9\u3001\u307e\u305f\u306f\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u540d\u304cNULL\u3067\u3059\u3002 + +ORA-17065=\u5909\u63db\u30af\u30e9\u30b9\u304cNULL\u3067\u3059\u3002 + +ORA-17066=\u30a2\u30af\u30bb\u30b9\u30fb\u30ec\u30a4\u30e4\u30fc\u306b\u306f\u56fa\u6709\u306e\u5b9f\u88c5\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17067=\u7121\u52b9\u306aOracle URL\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17068=\u30b3\u30fc\u30eb\u306b\u7121\u52b9\u306a\u5f15\u6570\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17069=\u660e\u793a\u7684\u306aXA\u30b3\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044\u3002 + +ORA-17070=\u30c7\u30fc\u30bf\u30fb\u30b5\u30a4\u30ba\u304c\u3053\u306e\u578b\u306e\u6700\u5927\u30b5\u30a4\u30ba\u3092\u8d85\u3048\u3066\u3044\u307e\u3059\u3002 + +ORA-17071=\u6700\u5927VARRAY\u5236\u9650\u3092\u8d85\u3048\u307e\u3057\u305f\u3002 + +ORA-17072=\u5217\u306b\u5bfe\u3057\u3066\u633f\u5165\u5024\u304c\u5927\u304d\u3059\u304e\u307e\u3059\u3002 + +ORA-17073=\u8ad6\u7406\u30cf\u30f3\u30c9\u30eb\u306f\u3059\u3067\u306b\u7121\u52b9\u3067\u3059\u3002 + +ORA-17074=\u540d\u524d\u30d1\u30bf\u30fc\u30f3\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17075=\u8ee2\u9001\u5c02\u7528\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u306b\u5bfe\u3059\u308b\u64cd\u4f5c\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17076=\u8aad\u8fbc\u307f\u5c02\u7528\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u306b\u5bfe\u3059\u308b\u64cd\u4f5c\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17077=REF\u5024\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17078=\u63a5\u7d9a\u306f\u3059\u3067\u306b\u30aa\u30fc\u30d7\u30f3\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u64cd\u4f5c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17079=\u65e2\u5b58\u306e\u30e6\u30fc\u30b6\u30fc\u8cc7\u683c\u8a3c\u660e\u3068\u4e00\u81f4\u3057\u307e\u305b\u3093\u3002 + +ORA-17080=\u7121\u52b9\u306a\u30d0\u30c3\u30c1\u30fb\u30b3\u30de\u30f3\u30c9\u3067\u3059\u3002 + +ORA-17081=\u30d0\u30c3\u30c1\u51e6\u7406\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17082=\u73fe\u884c\u306e\u884c\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17083=\u633f\u5165\u884c\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17084=\u633f\u5165\u884c\u3067\u30b3\u30fc\u30eb\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17085=\u5024\u306e\u7af6\u5408\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17086=\u633f\u5165\u884c\u306e\u5217\u5024\u304c\u672a\u5b9a\u7fa9\u3067\u3059\u3002 + +ORA-17087=\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u30fb\u30d2\u30f3\u30c8\u304c\u7121\u8996\u3055\u308c\u307e\u3057\u305f: setFetchDirection() + +ORA-17088=\u8981\u6c42\u3057\u305f\u7d50\u679c\u30bb\u30c3\u30c8\u306e\u578b\u3068\u540c\u6642\u5b9f\u884c\u30ec\u30d9\u30eb\u306e\u69cb\u6587\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 +ORA-17089=\u5185\u90e8\u30a8\u30e9\u30fc + +ORA-17090=\u64cd\u4f5c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17091=\u8981\u6c42\u3057\u305f\u578b\u304a\u3088\u3073/\u307e\u305f\u306f\u540c\u6642\u5b9f\u884c\u30ec\u30d9\u30eb\u3067\u7d50\u679c\u30bb\u30c3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17092=JDBC\u6587\u3067\u30b3\u30fc\u30eb\u51e6\u7406\u306e\u7d42\u4e86\u3092\u4f5c\u6210\u307e\u305f\u306f\u5b9f\u884c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17093=OCI\u64cd\u4f5c\u3067OCI_SUCCESS_WITH_INFO\u304c\u623b\u308a\u307e\u3057\u305f\u3002 + +ORA-17094=\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30fb\u30bf\u30a4\u30d7\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u304c\u9069\u5408\u3057\u307e\u305b\u3093\u3002 + +ORA-17095=\u6587\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u30fb\u30b5\u30a4\u30ba\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17096=\u6587\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u306f\u3053\u306e\u8ad6\u7406\u63a5\u7d9a\u306b\u5bfe\u3057\u3066\u4f7f\u7528\u53ef\u80fd\u306b\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17097=PL/SQL\u306e\u7d22\u5f15\u8868\u306e\u8981\u7d20\u30bf\u30a4\u30d7\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17098=\u7a7a\u306eLOB\u64cd\u4f5c\u306f\u7121\u52b9\u3067\u3059\u3002 + +ORA-17099=PL/SQL\u306e\u7d22\u5f15\u8868\u306e\u914d\u5217\u306e\u9577\u3055\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17100=\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306eJava\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17101=OCI\u63a5\u7d9a\u30d7\u30fc\u30eb\u30fb\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u7121\u52b9\u306a\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17102=Bfile\u306f\u8aad\u8fbc\u307f\u5c02\u7528\u3067\u3059 + +ORA-17103=getConnection\u7d4c\u7531\u3067\u623b\u308b\u63a5\u7d9a\u30bf\u30a4\u30d7\u306f\u7121\u52b9\u3067\u3059\u3002\u304b\u308f\u308a\u306bgetJavaSqlConnection\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044 + +ORA-17104=\u5b9f\u884c\u3059\u308bSQL\u6587\u306f\u7a7a\u307e\u305f\u306fNULL\u306b\u3067\u304d\u307e\u305b\u3093 + +ORA-17105=\u63a5\u7d9a\u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u30bf\u30a4\u30e0\u30fb\u30be\u30fc\u30f3\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093 + +ORA-17106=\u6307\u5b9a\u3055\u308c\u305fJDBC-OCI\u30c9\u30e9\u30a4\u30d0\u306e\u63a5\u7d9a\u30d7\u30fc\u30eb\u69cb\u6210\u304c\u7121\u52b9\u3067\u3059 + +ORA-17107=\u7121\u52b9\u306a\u30d7\u30ed\u30ad\u30b7\u30fb\u30bf\u30a4\u30d7\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f + +ORA-17108=defineColumnType\u306b\u6700\u5927\u9577\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093 + +ORA-17109=\u6a19\u6e96\u306eJava\u6587\u5b57\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093 + +ORA-17110=\u5b9f\u884c\u304c\u8b66\u544a\u3067\u5b8c\u4e86\u3057\u307e\u3057\u305f + +ORA-17111=\u7121\u52b9\u306a\u63a5\u7d9a\u30ad\u30e3\u30c3\u30b7\u30e5TTL\u306e\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17112=\u6307\u5b9a\u3055\u308c\u305f\u30b9\u30ec\u30c3\u30c9\u9593\u9694\u304c\u7121\u52b9\u3067\u3059 + +ORA-17113=\u30b9\u30ec\u30c3\u30c9\u9593\u9694\u5024\u304c\u3001\u30ad\u30e3\u30c3\u30b7\u30e5\u306e\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u5024\u3088\u308a\u5927\u304d\u3044\u3067\u3059 + +ORA-17114=\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30ed\u30fc\u30ab\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30b3\u30df\u30c3\u30c8\u3092\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17115=\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30ed\u30fc\u30ab\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30ed\u30fc\u30eb\u30d0\u30c3\u30af\u3092\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17116=\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u81ea\u52d5\u30b3\u30df\u30c3\u30c8\u3092\u30aa\u30f3\u306b\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f + +ORA-17117=\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f + +ORA-17118=\u540d\u524d\u4ed8\u304d\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306eID\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17119=\u540d\u524d\u4ed8\u304d\u3067\u306a\u3044\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306e\u540d\u524d\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17120=\u81ea\u52d5\u30b3\u30df\u30c3\u30c8\u304c\u30aa\u30f3\u306e\u72b6\u614b\u3067\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17121=\u81ea\u52d5\u30b3\u30df\u30c3\u30c8\u304c\u30aa\u30f3\u306e\u72b6\u614b\u3067\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306b\u30ed\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17122=\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30ed\u30fc\u30ab\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306b\u30ed\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u304d\u307e\u305b\u3093 + +ORA-17123=\u7121\u52b9\u306a\u6587\u30ad\u30e3\u30c3\u30b7\u30e5\u30fb\u30b5\u30a4\u30ba\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17124=\u7121\u52b9\u306a\u63a5\u7d9a\u30ad\u30e3\u30c3\u30b7\u30e5\u306eInactivity\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f + +ORA-17125=\u660e\u793a\u7684\u306a\u30ad\u30e3\u30c3\u30b7\u30e5\u306b\u3088\u308a\u4e0d\u9069\u5207\u306a\u6587\u306e\u7a2e\u985e\u304c\u623b\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17200=XA open\u6587\u5b57\u5217\u3092Java\u304b\u3089C\u3078\u6b63\u3057\u304f\u5909\u63db\u3067\u304d\u307e\u305b\u3093 + +ORA-17201=XA close\u6587\u5b57\u5217\u3092Java\u304b\u3089C\u3078\u6b63\u3057\u304f\u5909\u63db\u3067\u304d\u307e\u305b\u3093 + +ORA-17202=RA\u540d\u3092Java\u304b\u3089C\u3078\u6b63\u3057\u304f\u5909\u63db\u3067\u304d\u307e\u305b\u3093 + +ORA-17203=\u30dd\u30a4\u30f3\u30bf\u30fb\u30bf\u30a4\u30d7\u3092jlong\u306b\u30ad\u30e3\u30b9\u30c8\u3067\u304d\u307e\u305b\u3093 + +ORA-17204=\u5165\u529b\u914d\u5217\u304c\u77ed\u304b\u3059\u304e\u3066OCI\u30cf\u30f3\u30c9\u30eb\u3092\u4fdd\u6301\u3067\u304d\u307e\u305b\u3093 + +ORA-17205=xaoSvcCtx\u3092\u4f7f\u7528\u3057\u3066C-XA\u304b\u3089OCISvcCtx\u30cf\u30f3\u30c9\u30eb\u3092\u53d6\u5f97\u3059\u308b\u306e\u306b\u5931\u6557\u3057\u307e\u3057\u305f + +ORA-17206=xaoEnv\u3092\u4f7f\u7528\u3057\u3066C-XA\u304b\u3089OCIEnv\u3092\u53d6\u5f97\u3059\u308b\u306e\u306b\u5931\u6557\u3057\u307e\u3057\u305f + +ORA-17207=tnsEntry\u30d7\u30ed\u30d1\u30c6\u30a3\u304cDataSource\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093 + +ORA-17213=xa_open\u3067C-XA\u304b\u3089XAER_RMERR\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17215=xa_open\u3067C-XA\u304b\u3089XAER_INVAL\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17216=xa_open\u3067C-XA\u304b\u3089XAER_PROTO\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17233=xa_close\u3067C-XA\u304b\u3089XAER_RMERR\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17235=xa_close\u3067C-XA\u304b\u3089XAER_INVAL\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17236=xa_close\u3067C-XA\u304b\u3089XAER_PROTO\u304c\u623b\u3055\u308c\u307e\u3057\u305f + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u30d7\u30ed\u30c8\u30b3\u30eb\u9055\u53cd\u3067\u3059\u3002 + +ORA-17402=RPA\u30e1\u30c3\u30bb\u30fc\u30b8\u306f1\u3064\u306e\u306f\u305a\u3067\u3059\u3002 + +ORA-17403=RXH\u30e1\u30c3\u30bb\u30fc\u30b8\u306f1\u3064\u306e\u306f\u305a\u3067\u3059\u3002 + +ORA-17404=\u4e88\u5b9a\u3088\u308a\u591a\u3044RXD\u3092\u53d7\u3051\u53d6\u308a\u307e\u3057\u305f\u3002 + +ORA-17405=UAC\u306e\u9577\u3055\u306f\u30bc\u30ed\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17406=\u6700\u5927\u30d0\u30c3\u30d5\u30a1\u9577\u3092\u8d85\u3048\u3066\u3044\u307e\u3059\u3002 + +ORA-17407=\u578b\u8868\u73fe\u304c\u7121\u52b9\u3067\u3059(setRep)\u3002 + +ORA-17408=\u578b\u8868\u73fe\u304c\u7121\u52b9\u3067\u3059(getRep)\u3002 + +ORA-17409=\u30d0\u30c3\u30d5\u30a1\u9577\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17410=\u30bd\u30b1\u30c3\u30c8\u304b\u3089\u8aad\u307f\u8fbc\u3080\u30c7\u30fc\u30bf\u306f\u3053\u308c\u4ee5\u4e0a\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17411=\u30c7\u30fc\u30bf\u578b\u306e\u8868\u73fe\u304c\u9069\u5408\u3057\u307e\u305b\u3093\u3002 + +ORA-17412=\u578b\u306e\u9577\u3055\u304c\u6700\u5927\u3092\u8d85\u3048\u3066\u3044\u307e\u3059\u3002 + +ORA-17413=\u30ad\u30fc\u30fb\u30b5\u30a4\u30ba\u304c\u5927\u304d\u3059\u304e\u307e\u3059\u3002 + +ORA-17414=\u5217\u540d\u3092\u4fdd\u5b58\u3059\u308b\u306b\u306f\u30d0\u30c3\u30d5\u30a1\u30fb\u30b5\u30a4\u30ba\u304c\u4e0d\u5341\u5206\u3067\u3059\u3002 + +ORA-17415=\u3053\u306e\u578b\u306f\u672a\u51e6\u7406\u3067\u3059\u3002 + +ORA-17416=FATAL + +ORA-17417=NLS\u306e\u554f\u984c\u3067\u3001\u5217\u540d\u306e\u30c7\u30b3\u30fc\u30c9\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17418=\u5185\u90e8\u69cb\u9020\u4f53\u306e\u30d5\u30a3\u30fc\u30eb\u30c9\u9577\u30a8\u30e9\u30fc\u3067\u3059\u3002 + +ORA-17419=\u7121\u52b9\u306a\u5217\u306e\u6570\u304c\u623b\u308a\u307e\u3057\u305f\u3002 + +ORA-17420=Oracle\u30d0\u30fc\u30b8\u30e7\u30f3\u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17421=\u578b\u307e\u305f\u306f\u63a5\u7d9a\u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17422=\u30d5\u30a1\u30af\u30c8\u30ea\u306b\u7121\u52b9\u306a\u30af\u30e9\u30b9\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17423=IOV\u306e\u5b9a\u7fa9\u306a\u3057\u3067PLSQL\u30d6\u30ed\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059\u3002 + +ORA-17424=\u7570\u306a\u308b\u914d\u5217\u64cd\u4f5c\u3092\u8a66\u307f\u3066\u3044\u307e\u3059\u3002 + +ORA-17425=PLSQL\u30d6\u30ed\u30c3\u30af\u3067\u30b9\u30c8\u30ea\u30fc\u30e0\u3092\u623b\u3057\u3066\u3044\u307e\u3059\u3002 + +ORA-17426=IN\u30d0\u30a4\u30f3\u30c9\u3001OUT\u30d0\u30a4\u30f3\u30c9\u3068\u3082\u306bNULL\u3067\u3059\u3002 + +ORA-17427=\u521d\u671f\u5316\u3055\u308c\u3066\u3044\u306a\u3044OAC\u3092\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059\u3002 + +ORA-17428=\u63a5\u7d9a\u5f8c\u306b\u30ed\u30b0\u30aa\u30f3\u306e\u30b3\u30fc\u30eb\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17429=\u5c11\u306a\u304f\u3068\u3082\u30b5\u30fc\u30d0\u30fc\u306b\u63a5\u7d9a\u3057\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17430=\u30b5\u30fc\u30d0\u30fc\u3078\u306e\u30ed\u30b0\u30aa\u30f3\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17431=\u89e3\u6790\u3059\u308bSQL\u6587\u304cNULL\u3067\u3059\u3002 + +ORA-17432=all7\u3067\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17433=\u30b3\u30fc\u30eb\u306e\u5f15\u6570\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17434=\u30b9\u30c8\u30ea\u30fc\u30e0\u30fb\u30e2\u30fc\u30c9\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17435=IOV\u3067in_out_binds\u306e\u6570\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17436=\u30a2\u30a6\u30c8\u30d0\u30a4\u30f3\u30c9\u306e\u6570\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17437=PLSQL\u30d6\u30ed\u30c3\u30af\u306eIN/OUT\u5f15\u6570\u306b\u30a8\u30e9\u30fc\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17438=\u5185\u90e8 - \u4e88\u671f\u3057\u306a\u3044\u5024\u3067\u3059\u3002 + +ORA-17439=SQL\u306e\u578b\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17440=DBItem/DBType\u304cNULL\u3067\u3059\u3002 + +ORA-17441=\u3053\u306eOracle\u30d0\u30fc\u30b8\u30e7\u30f3\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u30027.2.3\u4ee5\u4e0a\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u3059\u3002 + +ORA-17442=Refcursor\u5024\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17443=NULL\u306e\u30e6\u30fc\u30b6\u30fc\u307e\u305f\u306f\u30d1\u30b9\u30ef\u30fc\u30c9\u306f\u3001THIN\u30c9\u30e9\u30a4\u30d0\u3067\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002 + +ORA-17444=\u30b5\u30fc\u30d0\u30fc\u304b\u3089\u53d7\u3051\u53d6\u3063\u305fTTC\u30d7\u30ed\u30c8\u30b3\u30eb\u30fb\u30d0\u30fc\u30b8\u30e7\u30f3\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/28/d045111798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/28/d045111798af001c18c4935e001381da new file mode 100644 index 0000000..50a6e27 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/28/d045111798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/40604f1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/40604f1798af001c18c4935e001381da new file mode 100644 index 0000000..55400c1 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/40604f1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/50c5c0c404af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/50c5c0c404af001c14499bdcdfff58b3 new file mode 100644 index 0000000..193b2b5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/50c5c0c404af001c14499bdcdfff58b3 @@ -0,0 +1,235 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/80b86b1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/80b86b1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..d6dab30 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/80b86b1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Errore interno + +ORA-17002=Eccezione IO + +ORA-17003=Indice di colonna non valido + +ORA-17004=Tipo di colonna non valido + +ORA-17005=Tipo di colonna non supportato + +ORA-17006=Nome di colonna non valido + +ORA-17007=Colonna dinamica non valida + +ORA-17008=Connessione chiusa + +ORA-17009=Connessione chiusa + +ORA-17010=Resultset chiuso + +ORA-17011=Resultset esaurito + +ORA-17012=Conflitto tipo di parametro + +ORA-17014=ResultSet.next non \u00e8 stato richiamato + +ORA-17015=L\'istruzione \u00e8 stata annullata + +ORA-17016=Si \u00e8 verificato un timeout dell\'istruzione + +ORA-17017=Cursore gi\u00e0 inizializzato + +ORA-17018=Cursore non valido + +ORA-17019=\u00c8 possibile solo descrivere una query + +ORA-17020=Preestrazione di riga non corretta + +ORA-17021=Definizione mancante + +ORA-17022=Definizioni mancanti nell\'indice + +ORA-17023=Funzione non supportata + +ORA-17024=Nessun dato letto + +ORA-17025=Errore in defines.isNull () + +ORA-17026=Overflow numerico + +ORA-17027=Il flusso \u00e8 gi\u00e0 stato chiuso + +ORA-17028=Impossibile effettuare nuove definizioni fino a che il ResultSet corrente \u00e8 chiuso + +ORA-17029=setReadOnly: Connessioni di sola lettura non supportate + +ORA-17030=READ_COMMITTED e SERIALIZABLE sono i soli livelli di transazione validi + +ORA-17031=setAutoClose: \u00c8 supportata solo la modalit\u00e0 di chiusura automatica attivata + +ORA-17032=impossibile impostare a zero la preestrazione delle righe + +ORA-17033=Stringa SQL92 di formato non valido nella posizione + +ORA-17034=Token SQL92 non supportato nella posizione + +ORA-17035=Set di caratteri non supportato + +ORA-17036=eccezione in OracleNumber + +ORA-17037=Conversione non riuscita tra UTF8 e UCS2 + +ORA-17038=Lunghezza insufficiente di array di byte + +ORA-17039=Lunghezza insufficiente di array di caratteri + +ORA-17040=Nell\'URL di connessione \u00e8 necessario specificare un protocollo secondario + +ORA-17041=Parametro IN o OUT mancante nell\'indice: + +ORA-17042=Valore batch non valido + +ORA-17043=La dimensione massima del flusso non \u00e8 valida + +ORA-17044=Errore interno: Array di dati non allocato + +ORA-17045=Errore interno: Tentativo di accesso a valori di associazione oltre il valore batch + +ORA-17046=Errore interno: Indice non valido per l\'accesso ai dati + +ORA-17047=Errore durante l\'analisi del descrittore di tipo + +ORA-17048=Tipo non definito + +ORA-17049=I tipi di oggetto sql e java non sono congruenti + +ORA-17050=nessun elemento analogo nel vettore + +ORA-17051=Impossibile usare questa interfaccia API per tipi diversi da UDT + +ORA-17052=Questo riferimento non \u00e8 valido + +ORA-17053=La dimensione non \u00e8 valida + +ORA-17054=Il locator LOB non \u00e8 valido + +ORA-17055=Carattere non valido rilevato in + +ORA-17056=Set di caratteri non supportato + +ORA-17057=LOB chiuso + +ORA-17058=Errore interno: Rapporto di conversione NLS non valido + +ORA-17059=Conversione in rappresentazione interna non riuscita + +ORA-17060=Creazione descrittore non riuscita + +ORA-17061=Descrittore mancante + +ORA-17062=Cursore di riferimento non valido + +ORA-17063=Non in una transazione + +ORA-17064=Sintassi non valida o nome di database nullo + +ORA-17065=Classe di conversione nulla + +ORA-17066=\u00c8 necessaria l\\'implementazione specifica del layer di accesso + +ORA-17067=\u00c8 stato specificato un URL Oracle non valido + +ORA-17068=Argomenti non validi nella chiamata + +ORA-17069=Utilizzare la chiamata XA esplicita + +ORA-17070=La dimensione dei dati \u00e8 superiore alla dimensione massima per questo tipo + +ORA-17071=\u00c8 stato superato il limite massimo di VARRAY + +ORA-17072=Il valore inserito \u00e8 troppo grande per la colonna + +ORA-17073=L\'handle logico non \u00e8 pi\u00f9 valido + +ORA-17074=Nome pattern non valido + +ORA-17075=Operazione non valida nel resultset di solo inoltro + +ORA-17076=Operazione non valida nel resultset di sola lettura + +ORA-17077=Errore di impostazione del valore REF + +ORA-17078=Impossibile effettuare l\'operazione poich\u00e9 le connessioni sono gi\u00e0 aperte + +ORA-17079=Le credenziali utente non corrispondono a quelle esistenti + +ORA-17080=comando batch non valido + +ORA-17081=errore durante l\'esecuzione batch + +ORA-17082=Nessuna riga corrente + +ORA-17083=Non nella riga di inserimento + +ORA-17084=Richiamo sulla riga di inserimento + +ORA-17085=Sono presenti conflitti di valore + +ORA-17086=Valore di colonna non definito nella riga di inserimento + +ORA-17087=Indicazione per le prestazioni ignorata: setFetchDirection() + +ORA-17088=Sintassi non supportata per il tipo e il livello di concorrenza richiesti del resultset +ORA-17089=errore interno + +ORA-17090=operazione non consentita + +ORA-17091=Impossibile creare un resultset del tipo e/o al livello di concorrenza richiesti + +ORA-17092=Impossibile creare o eseguire istruzioni JDBC alla fine dell\'elaborazione di una chiamata + +ORA-17093=L\'operazione OCI ha restituito OCI_SUCCESS_WITH_INFO + +ORA-17094=Versione non corrispondente del tipo di oggetto + +ORA-17095=Dimensione della cache delle istruzioni non impostata + +ORA-17096=Impossibile attivare l\'inserimento nella cache delle istruzioni per questa connessione logica. + +ORA-17097=Tipo di elemento tabella indice PL/SQL non valido + +ORA-17098=Operazione svuotamento LOB non valida + +ORA-17099=Lunghezza di array tabella indice PL/SQL non valida + +ORA-17100=Oggetto Java di database non valido + +ORA-17101=Propriet\u00e0 non valide nell\'oggetto OCI Connection Pool + +ORA-17102=Bfile \u00e8 di sola lettura + +ORA-17103=questo tipo di connessione non pu\u00f2 essere restituita mediante getConnection. Utilizzare getJavaSqlConnection + +ORA-17104=L\'istruzione SQL da eseguire non pu\u00f2 essere vuota o nulla + +ORA-17105=il fuso orario della sessione di connessione non \u00e8 stato impostato + +ORA-17106=la configurazione specificata per il connection pool del driver JDBC-OCI non \u00e8 valida + +ORA-17107=il tipo di proxy specificato non \u00e8 valido + +ORA-17108=Nessuna lunghezza massima specificata in defineColumnType + +ORA-17109=codifica dei caratteri Java standard non trovata + +ORA-17110=esecuzione completata con avvertenze + +ORA-17111=Il timeout TTL della cache di connessione specificato non \u00e8 valido + +ORA-17112=L'intervallo di thread specificato non \u00e8 valido + +ORA-17113=Il valore dell'intervallo di thread \u00e8 maggiore del valore di timeout della cache + +ORA-17114=impossibile utilizzare il commit delle transazioni locali in una transazione globale + +ORA-17115=impossibile utilizzare il rollback delle transazioni locali in una transazione globale + +ORA-17116=impossibile attivare il commit automatico in una transazione globale attiva + +ORA-17117=impossibile impostare un savepoint in una transazione globale attiva + +ORA-17118=impossibile ottenere l'ID per un savepoint denominato + +ORA-17119=impossibile ottenere il nome per un savepoint non denominato + +ORA-17120=impossibile impostare un savepoint con commit automatico abilitato + +ORA-17121=impossibile eseguire il rollback a un savepoint con commit automatico abilitato + +ORA-17122=impossibile eseguire il rollback a un savepoint txn locale in una transazione globale + +ORA-17123=La dimensione della cache delle istruzioni specificata non \u00e8 valida + +ORA-17124=Il timeout di inattivit\u00e0 della cache di connessione specificato non \u00e8 valido + +ORA-17200=Impossibile convertire correttamente la stringa di apertura XA da Java in C + +ORA-17201=Impossibile convertire correttamente la stringa di chiusura XA da Java in C + +ORA-17202=Impossibile convertire correttamente il nome RM da Java in C + +ORA-17203=Impossibile eseguire il casting del tipo di puntatore in jlong + +ORA-17204=Array di input troppo piccolo per contenere gli handle OCI + +ORA-17205=Recupero handle OCISvcCtx da C-XA mediante xaoSvcCtx non riuscito + +ORA-17206=Recupero handle OCIEnv da C-XA mediante xaoEnv non riuscito + +ORA-17207=La propriet\u00e0 tnsEntry non \u00e8 stata impostata in DataSource + +ORA-17213=C-XA ha restituito XAER_RMERR durante xa_open + +ORA-17215=C-XA ha restituito XAER_INVAL durante xa_open + +ORA-17216=C-XA ha restituito XAER_PROTO durante xa_open + +ORA-17233=C-XA ha restituito XAER_RMERR durante xa_close + +ORA-17235=C-XA ha restituito XAER_INVAL durante xa_close + +ORA-17236=C-XA ha restituito XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violazione di protocollo + +ORA-17402=\u00c8 previsto un solo messaggio RPA + +ORA-17403=\u00c8 previsto un solo messaggio RXH + +ORA-17404=Sono stati ricevuti pi\u00f9 RXD di quelli previsti + +ORA-17405=La lunghezza UAC \u00e8 diversa da zero + +ORA-17406=Superamento della lunghezza massima del buffer + +ORA-17407=Rappresentazione del tipo (setRep) non valida + +ORA-17408=Rappresentazione del tipo (getRep) non valida + +ORA-17409=lunghezza del buffer non valida + +ORA-17410=Non vi sono altri dati da leggere nel socket + +ORA-17411=Le rappresentazioni dei tipi di dati non corrispondono + +ORA-17412=La lunghezza del tipo \u00e8 superiore al valore massimo + +ORA-17413=Superamento dimensione della chiave + +ORA-17414=La dimensione del buffer non \u00e8 sufficiente per memorizzare i nomi di colonna + +ORA-17415=Questo tipo non \u00e8 stato gestito + +ORA-17416=FATAL + +ORA-17417=Problema NLS, la decodifica dei nomi di colonna non \u00e8 riuscita + +ORA-17418=Errore di lunghezza campo della struttura interna + +ORA-17419=Restituito numero di colonne non valido + +ORA-17420=Versione Oracle non definita + +ORA-17421=Tipi o connessione non definita + +ORA-17422=Classe non valida in factory + +ORA-17423=Uso di un lock PLSQL senza un IOV definito in corso + +ORA-17424=Tentativo differente operazione di marshalling in corso + +ORA-17425=Restituzione di un flusso in blocco PLSQL in corso + +ORA-17426=Entrambe le associazioni IN ed OUT sono NULL + +ORA-17427=Uso di OAC non inizializzato in corso + +ORA-17428=Il collegamento deve essere richiamato dopo la connessione + +ORA-17429=\u00c8 necessaria almeno la connessione al server + +ORA-17430=\u00c8 necessario il collegamento al server + +ORA-17431=L\'istruzione SQL da analizzare \u00e8 nulla + +ORA-17432=opzioni non valide in all7 + +ORA-17433=argomenti non validi nella chiamata + +ORA-17434=non in modalit\u00e0 di flusso + +ORA-17435=numero non valido di in_out_binds in IOV + +ORA-17436=numero non valido di outbinds + +ORA-17437=Errore negli argomenti IN/OUT del blocco PLSQL + +ORA-17438=Interno - valore non previsto + +ORA-17439=Tipo SQL non valido + +ORA-17440=Il tipo DBItem/DBType \u00e8 nullo + +ORA-17441=Versione Oracle non supportata. La versione minima supportata \u00e8 la 7.2.3. + +ORA-17442=Valore di Refcursor non valido + +ORA-17443=Utente nullo o password non supportata nel driver THIN + +ORA-17444=La versione del protocollo TTC ricevuta dal server non \u00e8 supportata + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/f021ad1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/f021ad1598af001c18c4935e001381da new file mode 100644 index 0000000..27d0269 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/29/f021ad1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2a/003660a1c2a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2a/003660a1c2a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..a5bbc09 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2a/003660a1c2a4001c1acc9f54b60f9b57 @@ -0,0 +1,20 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + private Connexion() { + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2a/105d421698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2a/105d421698af001c18c4935e001381da new file mode 100644 index 0000000..a9583fd Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2a/105d421698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2a/206e221598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2a/206e221598af001c18c4935e001381da new file mode 100644 index 0000000..d0e534b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2a/206e221598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2b/e06a2f1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2b/e06a2f1998af001c18c4935e001381da new file mode 100644 index 0000000..a75af64 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2b/e06a2f1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/001c4b5f02a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/001c4b5f02a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..4887677 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/001c4b5f02a4001c1027e59cc3e35e89 @@ -0,0 +1,77 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + System.out.println(resultat.isBeforeFirst()); + // true + resultat.next(); + // on se retrouve ici sur la premire ligne + + // traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + } + resultat.first(); + // on a replac ici le curseur sur la premire ligne + resultat.afterLast(); + // on a replac le curseur aprs la dernire ligne + while(resultat.previous()){ + // on parcours ici le ResultSet de la dernire la premire ligne + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/60b52207c5a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/60b52207c5a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..9940f5e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/60b52207c5a4001c1acc9f54b60f9b57 @@ -0,0 +1,55 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Moi"); + JLabel jlabelPort = new JLabel("Moi2"); + JLabel jlabelBase = new JLabel("Toi"); + JLabel jlabelIdentifiant = new JLabel("Toi2"); + JLabel jlabelMdp = new JLabel("Lui"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/a0a6dce2cba4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/a0a6dce2cba4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..425b4d2 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/a0a6dce2cba4001c1acc9f54b60f9b57 @@ -0,0 +1,88 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/a0b27e9cfba3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/a0b27e9cfba3001c1027e59cc3e35e89 new file mode 100644 index 0000000..bb56ef7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/a0b27e9cfba3001c1027e59cc3e35e89 @@ -0,0 +1,32 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + try { + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + Connection conn = DriverManager.getConnection(url, "dut", "dut"); + + System.out.println("Accs la base"); + } catch (SQLException e) { + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/c01031f520af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/c01031f520af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..b858751 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2c/c01031f520af001c1bf1a004f0d77fc3 differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2d/f0115f5d7da9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2d/f0115f5d7da9001c1d3abf97745a02da new file mode 100644 index 0000000..57562ce --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2d/f0115f5d7da9001c1d3abf97745a02da @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.RAISED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2d/f0fb7da905a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2d/f0fb7da905a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..df0fe81 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2d/f0fb7da905a4001c1027e59cc3e35e89 @@ -0,0 +1,87 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + rsmd.getColumnCount() + + + + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2e/a0f6751398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2e/a0f6751398af001c18c4935e001381da new file mode 100644 index 0000000..15f5310 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2e/a0f6751398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2e/b07de41406a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2e/b07de41406a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..2da53a3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2e/b07de41406a4001c1027e59cc3e35e89 @@ -0,0 +1,90 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + int i = rsmd.getColumnCount(); + + System.out.println("Nombre de colonne: " + i); + + for(int j = 1; j < i; j++){ + System.out.println(rsmd.getColumnName(j)); + } + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2e/b0ecf11898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2e/b0ecf11898af001c18c4935e001381da new file mode 100644 index 0000000..9eee35d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2e/b0ecf11898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2f/b05f651498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2f/b05f651498af001c18c4935e001381da new file mode 100644 index 0000000..16d67f8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/2f/b05f651498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3/207a963197af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3/207a963197af001c18c4935e001381da new file mode 100644 index 0000000..5703f30 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3/207a963197af001c18c4935e001381da @@ -0,0 +1,151 @@ +package fr.blankoworld.connexionBDD; + +import java.awt.List; +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + DatabaseMetaData metaData; + + metaData = connection.getMetaData(); + System.out.print(metaData.getDriverName()); + // getVersion + // getConnectionName ??? + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3/301e9a5e08af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3/301e9a5e08af001c14499bdcdfff58b3 new file mode 100644 index 0000000..6d75850 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3/301e9a5e08af001c14499bdcdfff58b3 @@ -0,0 +1,156 @@ +package fr.blankoworld.connexionBDD; + +import java.awt.List; +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + DatabaseMetaData metaData; + List listTables = new List(10); + + metaData = connection.getMetaData(); + String[] types = { "TABLE", "VIEW" }; + ResultSet rs = metaData.getTables( null, null, "%", types ); + String nomTable; + while ( rs.next() ) { + nomTable = rs.getString( 3 ); + listTables.add( nomTable ); + } + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3/50cd021498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3/50cd021498af001c18c4935e001381da new file mode 100644 index 0000000..8df1c81 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3/50cd021498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/30a8e01b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/30a8e01b98af001c18c4935e001381da new file mode 100644 index 0000000..1b2eda8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/30a8e01b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/30d3592f4aaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/30d3592f4aaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..cce98ed --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/30d3592f4aaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,190 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + Principale.this.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/600300d5c6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/600300d5c6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..4695092 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/600300d5c6a4001c1acc9f54b60f9b57 @@ -0,0 +1,57 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.GridLayout; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new GridLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/8056b21998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/8056b21998af001c18c4935e001381da new file mode 100644 index 0000000..680f578 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/8056b21998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/d0143a1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/d0143a1598af001c18c4935e001381da new file mode 100644 index 0000000..90035d7 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/30/d0143a1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/31/00cff8e24eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/31/00cff8e24eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..883dae6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/31/00cff8e24eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,151 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + + // Cration de la classe permettant la connexion la base de donnes + private fr.blankoworld.connexionBDD.Connexion connexionBDD; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public IHMConnexion(Principale pr) { + + this.pr = pr; + + + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + // Affichage du message de configurmation + this.pr.confirmationConnexion("Mon serveur"); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/31/201a951f97af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/31/201a951f97af001c18c4935e001381da new file mode 100644 index 0000000..5ca9571 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/31/201a951f97af001c18c4935e001381da @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.GridLayout; +import java.awt.Insets; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextPane; + + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + // Creation de la zone de texte + private JTextPane panneauTexte; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMRequete().setVisible(true); + } + + public IHMRequete(){ + // Creation d'une etiquette + JLabel jRequete = new JLabel("Entrez votre requete : "); + + // Creation des boutons + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Annuler"); + + // Creation de la zone de texte + panneauTexte = new JTextPane(); + panneauTexte.setCaretPosition(0); + panneauTexte.setMargin(new Insets(5,5,5,5)); + JScrollPane zoneTexteRequete = new JScrollPane(panneauTexte); + zoneTexteRequete.setPreferredSize(new Dimension(200, 130)); + + // Creation des panneaux bas et centre + JPanel Panneau_Bas = new JPanel(); + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new BorderLayout()); + + // Ajout des boutons a chacun des panneaux + Panneau_Centre.add(jRequete, BorderLayout.NORTH); + Panneau_Centre.add(zoneTexteRequete, BorderLayout.SOUTH); + + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Gestionnaire de contenus + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(400,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Requete"); + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/31/20286f1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/31/20286f1898af001c18c4935e001381da new file mode 100644 index 0000000..a0dc032 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/31/20286f1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/32/10d9d41698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/32/10d9d41698af001c18c4935e001381da new file mode 100644 index 0000000..0a0d289 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/32/10d9d41698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/32/d07c3abc01af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/32/d07c3abc01af001c14499bdcdfff58b3 new file mode 100644 index 0000000..5f60f01 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/32/d07c3abc01af001c14499bdcdfff58b3 @@ -0,0 +1,131 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + System.out.print(Connection.getClientInfo("Driver")); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/32/d0864a4fffae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/32/d0864a4fffae001c14499bdcdfff58b3 new file mode 100644 index 0000000..579882e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/32/d0864a4fffae001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte."; + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse."; + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/1060681a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/1060681a98af001c18c4935e001381da new file mode 100644 index 0000000..4a9131d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/1060681a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/80904aeb81a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/80904aeb81a9001c1d3abf97745a02da new file mode 100644 index 0000000..45a97d4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/80904aeb81a9001c1d3abf97745a02da @@ -0,0 +1,141 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +import fr.blankoworld.plateau.PlateauPuissance4; + +// Importation de la fentre de Connexion +import Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/902fa3f94caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/902fa3f94caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..e679948 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/902fa3f94caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,194 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + int resultatConfirmation; + while(JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION) == 0){ + conn.dispose(); + } + if(jo == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/d01cf71898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/d01cf71898af001c18c4935e001381da new file mode 100644 index 0000000..1d18eec Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/33/d01cf71898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/2040711798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/2040711798af001c18c4935e001381da new file mode 100644 index 0000000..38c7a89 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/2040711798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/205ed1f720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/205ed1f720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..471a3db --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/205ed1f720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Erreur interne + +ORA-17002=Exception d\'E/S + +ORA-17003=Index de colonne non valide + +ORA-17004=Type de colonne non valide + +ORA-17005=Type de colonne non pris en charge + +ORA-17006=Nom de colonne non valide + +ORA-17007=Colonne dynamique non valide + +ORA-17008=Connexion interrompue + +ORA-17009=Instruction ferm\u00e9e + +ORA-17010=Ensemble de r\u00e9sultats ferm\u00e9 + +ORA-17011=Ensemble de r\u00e9sultats \u00e9puis\u00e9 + +ORA-17012=Conflit de type de param\u00e8tre + +ORA-17014=ResultSet.next n\'a pas \u00e9t\u00e9 appel\u00e9 + +ORA-17015=Instruction annul\u00e9e + +ORA-17016=D\u00e9lai de l\'instruction d\u00e9pass\u00e9 + +ORA-17017=Curseur d\u00e9j\u00e0 initialis\u00e9 + +ORA-17018=Curseur non valide + +ORA-17019=Peut uniquement d\u00e9crire une interrogation + +ORA-17020=Pr\u00e9-extraction de ligne non valide + +ORA-17021=D\u00e9finitions manquantes + +ORA-17022=D\u00e9finitions manquantes dans l\'index + +ORA-17023=Fonction non prise en charge + +ORA-17024=Aucune donn\u00e9e n\'a \u00e9t\u00e9 lue + +ORA-17025=Erreur dans defines.isNull () + +ORA-17026=D\u00e9passement num\u00e9rique + +ORA-17027=Le flux de donn\u00e9es est d\u00e9j\u00e0 ferm\u00e9 + +ORA-17028=Nouvelles d\u00e9finitions impossibles avant la fermeture de l\'ensemble de r\u00e9sultats courant + +ORA-17029=setReadOnly: connexions en lecture seule non prises en charge + +ORA-17030=READ_COMMITTED et SERIALIZABLE sont les seuls niveaux de transaction valides + +ORA-17031=setAutoClose: ne prend en charge que le mode auto close on + +ORA-17032=impossible de d\u00e9finir la pr\u00e9-extraction de ligne \u00e0 z\u00e9ro + +ORA-17033=Cha\u00eene SQL92 mal formul\u00e9e \u00e0 l\'emplacement + +ORA-17034=Token SQL92 non pris en charge \u00e0 l\'emplacement + +ORA-17035=Jeu de caract\u00e8res non pris en charge + +ORA-17036=exception dans OracleNumber + +ORA-17037=Echec de conversion entre UTF8 et UCS2 + +ORA-17038=Tableau d\'octets trop court + +ORA-17039=Tableau de caract\u00e8res trop court + +ORA-17040=Le sous-protocole doit \u00eatre pr\u00e9cis\u00e9 dans l\'URL de la connexion + +ORA-17041=Param\u00e8tre IN ou OUT absent dans l\'index : + +ORA-17042=Valeur de lot non valide + +ORA-17043=Taille maximale du flux de donn\u00e9es non valide + +ORA-17044=Erreur interne : tableau de donn\u00e9es non allou\u00e9 + +ORA-17045=Erreur interne : tentative d\'acc\u00e8s \u00e0 des valeurs de lien sup\u00e9rieures \u00e0 la valeur de lot + +ORA-17046=Erreur interne : index non valide pour l\'acc\u00e8s aux donn\u00e9es + +ORA-17047=Erreur dans l\'analyse du descripteur de type + +ORA-17048=Type non d\u00e9termin\u00e9 + +ORA-17049=Types d\'objet JAVA et SQL incoh\u00e9rents + +ORA-17050=\u00e9l\u00e9ment inexistant dans le vecteur + +ORA-17051=Cette API ne peut pas \u00eatre utilis\u00e9e pour les types autres que UDT + +ORA-17052=R\u00e9f\u00e9rence non valide + +ORA-17053=Taille non valide + +ORA-17054=Indicateur LOB non valide + +ORA-17055=Caract\u00e8re non valide rencontr\u00e9 dans + +ORA-17056=Jeu de caract\u00e8res non pris en charge + +ORA-17057=LOB ferm\u00e9 + +ORA-17058=Erreur interne : taux de conversion NLS non valide + +ORA-17059=Echec de conversion dans la repr\u00e9sentation interne + +ORA-17060=Echec de construction du descripteur + +ORA-17061=Descripteur absent + +ORA-17062=Curseur REF non valide + +ORA-17063=Pas dans une transaction + +ORA-17064=La syntaxe n\'est pas valide ou le nom de la base de donn\u00e9es est NULL + +ORA-17065=La classe de conversion a la valeur NULL + +ORA-17066=N\u00e9cessite une mise en oeuvre sp\u00e9cifique \u00e0 la couche d\'acc\u00e8s + +ORA-17067=L\'URL Oracle indiqu\u00e9e n\'est pas valide + +ORA-17068=Arguments non valides dans l\'appel + +ORA-17069=Utiliser un appel XA explicite + +ORA-17070=La taille des donn\u00e9es est sup\u00e9rieure \u00e0 la taille max. pour ce type + +ORA-17071=Limite VARRAY maximale d\u00e9pass\u00e9e + +ORA-17072=La valeur ins\u00e9r\u00e9e est trop grande pour la colonne + +ORA-17073=Le descripteur logique n\'est plus valide + +ORA-17074=Le mod\u00e8le de nom n\'est pas valide + +ORA-17075=Op\u00e9ration non valide sur un ensemble de r\u00e9sultats de type forward-only + +ORA-17076=Op\u00e9ration non valide sur un ensemble de r\u00e9sultats de type read-only + +ORA-17077=Echec de la d\u00e9finition de la valeur REF + +ORA-17078=Impossible d\'effectuer l\'op\u00e9ration car des connexions sont d\u00e9j\u00e0 ouvertes + +ORA-17079=Les informations d\'identification et de connexion de l\'utilisateur ne correspondent pas \u00e0 celles existantes + +ORA-17080=commande par lot non valide + +ORA-17081=erreur pendant le traitement par lots + +ORA-17082=Aucune ligne en cours + +ORA-17083=Pas sur la ligne d\'insertion + +ORA-17084=Appel\u00e9 sur la ligne d\'insertion + +ORA-17085=Un conflit de valeur s\'est produit + +ORA-17086=Valeur de colonne non d\u00e9finie sur la ligne d\'insertion + +ORA-17087=Conseil de performance ignor\u00e9 : setFetchDirection() + +ORA-17088=Syntaxe non prise en charge pour le type d\'ensemble de r\u00e9sultats et le niveau de simultan\u00e9it\u00e9 requis +ORA-17089=erreur interne + +ORA-17090=op\u00e9ration interdite + +ORA-17091=Impossible de cr\u00e9er un ensemble de r\u00e9sultats avec le type et/ou le niveau de simultan\u00e9it\u00e9 requis + +ORA-17092=Impossible de cr\u00e9er ou d\'ex\u00e9cuter des instructions JDBC \u00e0 la fin du traitement d\'appel + +ORA-17093=L\'op\u00e9ration OCI a renvoy\u00e9 OCI_SUCCESS_WITH_INFO + +ORA-17094=Non-concordance de la version de type d\'objet + +ORA-17095=La taille du cache d'instruction n'a pas \u00e9t\u00e9 d\u00e9fini + +ORA-17096=La mise en m\u00e9moire cache d\'instruction ne peut pas \u00eatre activ\u00e9e pour cette connexion logique. + +ORA-17097=Type d\'\u00e9l\u00e9ment de table d\'index PL/SQL non valide + +ORA-17098=Op\u00e9ration LOB vide non valide + +ORA-17099=Longueur de tableau de table d\'index PL/SQL non valide + +ORA-17100=Objet Java de base de donn\u00e9es non valide + +ORA-17101=Propri\u00e9t\u00e9s non valides dans l\'objet de pool de connexions OCI + +ORA-17102=Le fichier BFILE est en lecture seule + +ORA-17103=type de connexion non valide \u00e0 renvoyer via getConnection. Utilisez getJavaSqlConnection \u00e0 la place + +ORA-17104=L\'instruction SQL \u00e0 ex\u00e9cuter ne peut \u00eatre ni vide ni null + +ORA-17105=fuseau horaire de la session de connexion non d\u00e9fini + +ORA-17106=La configuration de pool de connexions de pilote JDBC-OCI indiqu\u00e9e n'est pas valide + +ORA-17107=Type proxy indiqu\u00e9 non valide + +ORA-17108=Aucune longueur max. indiqu\u00e9e dans defineColumnType + +ORA-17109=encodage de caract\u00e8res Java standard introuvable + +ORA-17110=ex\u00e9cution termin\u00e9e avec avertissement + +ORA-17111=Le d\u00e9lai de temporisation de cache de connexion TTL indiqu\u00e9 n'est pas valide + +ORA-17112=L'intervalle de thread indiqu\u00e9 n'est pas valide + +ORA-17113=La valeur de l'intervalle de thread est sup\u00e9rieure \u00e0 la valeur de temporisation du cache + +ORA-17114=impossible d'utiliser une validation (commit) de transaction locale dans une transaction globale + +ORA-17115=impossible d'utiliser une annulation (rollback) de transaction locale dans une transaction globale + +ORA-17116=impossible d'activer le mode autocommit dans une transaction globale active + +ORA-17117=impossible de d\u00e9finir un savepoint dans une transaction globale active + +ORA-17118=impossible d'obtenir l'ID d'un savepoint nomm\u00e9 + +ORA-17119=impossible d'obtenir le nom d'un savepoint sans nom + +ORA-17120=impossible de d\u00e9finir un savepoint lorsque le mode autocommit est activ\u00e9 + +ORA-17121=impossible d'annuler (rollback) un savepoint lorsque le mode autocommit est activ\u00e9 + +ORA-17122=impossible d'annuler (rollback) un savepoint de transaction locale dans une transaction globale + +ORA-17123=La taille de cache d'instruction indiqu\u00e9e n'est pas valide + +ORA-17124=Le d\u00e9lai d'inactivit\u00e9 de cache de connexion indiqu\u00e9 n'est pas valide + +ORA-17200=Impossible de convertir correctement la cha\u00eene XA open de Java en C + +ORA-17201=Impossible de convertir correctement la cha\u00eene de XA close de Java en C + +ORA-17202=Impossible de convertir correctement le nom RM de Java en C + +ORA-17203=Impossible de convertir le type de pointeur en jlong + +ORA-17204=Tableau d\'entr\u00e9e trop court pour contenir les descripteurs OCI + +ORA-17205=Echec d\'obtention du descripteur OCISvcCtx \u00e0 partir de C-XA \u00e0 l\'aide de xaoSvcCtx + +ORA-17206=Echec d\'obtention du descripteur OCIEnv \u00e0 partir de C-XA \u00e0 l\'aide de xaoEnv + +ORA-17207=La propri\u00e9t\u00e9 tnsEntry n\'a pas \u00e9t\u00e9 d\u00e9finie dans la source de donn\u00e9es + +ORA-17213=C-XA a renvoy\u00e9 XAER_RMERR au cours de xa_open + +ORA-17215=C-XA a renvoy\u00e9 XAER_INVAL au cours de xa_open + +ORA-17216=C-XA a renvoy\u00e9 XAER_PROTO au cours de xa_open + +ORA-17233=C-XA a renvoy\u00e9 XAER_RMERR au cours de xa_close + +ORA-17235=C-XA a renvoy\u00e9 XAER_INVAL au cours de xa_close + +ORA-17236=C-XA a renvoy\u00e9 XAER_PROTO au cours de xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violation de protocole + +ORA-17402=Un seul message RPA est attendu + +ORA-17403=Un seul message RXH est attendu + +ORA-17404=Plus de messages RXD re\u00e7us que pr\u00e9vu + +ORA-17405=La longueur UAC n\'est pas \u00e9gale \u00e0 z\u00e9ro + +ORA-17406=D\u00e9passement de la taille maximale du tampon + +ORA-17407=repr\u00e9sentation de type (setRep) non valide + +ORA-17408=repr\u00e9sentation de type (getRep) non valide + +ORA-17409=taille de tampon non valide + +ORA-17410=Il n\'y a plus de donn\u00e9es \u00e0 lire dans le socket + +ORA-17411=Non-concordance des repr\u00e9sentations de type de donn\u00e9es + +ORA-17412=La longueur du type est sup\u00e9rieure \u00e0 la valeur maximale + +ORA-17413=D\u00e9passement de la taille de la cl\u00e9 + +ORA-17414=Taille de tampon insuffisante pour le stockage des noms de colonnes + +ORA-17415=Ce type n\'a pas \u00e9t\u00e9 g\u00e9r\u00e9 + +ORA-17416=FATAL + +ORA-17417=Probl\u00e8me NLS, \u00e9chec de d\u00e9codage des noms de colonne + +ORA-17418=Erreur de longueur de champ de la structure interne + +ORA-17419=Nombre de colonnes renvoy\u00e9 non valide + +ORA-17420=Version d\'Oracle non d\u00e9finie + +ORA-17421=Connexion ou types non d\u00e9finis + +ORA-17422=Classe non valide dans l\'objet COM cr\u00e9ateur de classes + +ORA-17423=Utilisation d\'un bloc PLSQL sans d\u00e9finition d\'IOV + +ORA-17424=Tentative de r\u00e9alisation d\'une autre op\u00e9ration de conversion et de canalisation du flux de donn\u00e9es + +ORA-17425=Renvoi d\'une cha\u00eene dans le bloc PLSQL + +ORA-17426=Les liens IN et OUT ont la valeur NULL + +ORA-17427=Utilisation d\'une OAC non initialis\u00e9e + +ORA-17428=La commande Logon doit \u00eatre appel\u00e9e apr\u00e8s la connexion + +ORA-17429=Doit \u00eatre au moins connect\u00e9 au serveur + +ORA-17430=Doit \u00eatre connect\u00e9 au serveur + +ORA-17431=L\'instruction SQL \u00e0 analyser a la valeur NULL + +ORA-17432=options non valides dans all7 + +ORA-17433=arguments non valides dans l\'appel + +ORA-17434=mode d\'\u00e9criture en continu non activ\u00e9 + +ORA-17435=nombre de in_out_binds dans IOV non valide + +ORA-17436=nombre incorrect de liens outbinds + +ORA-17437=Erreur dans les arguments IN/OUT du bloc PLSQL + +ORA-17438=Interne - Valeur inattendue + +ORA-17439=Type SQL non valide + +ORA-17440=DBItem/DBType a la valeur NULL + +ORA-17441=Version d\'Oracle non prise en charge. La premi\u00e8re version support\u00e9e est la 7.2.3. + +ORA-17442=Valeur de Refcursor non valide + +ORA-17443=Utilisateur ou mot de passe NULL non pris en charge par le pilote THIN + +ORA-17444=La version de protocole TTC re\u00e7ue du serveur n\'est pas prise en charge + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/70d94fab00af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/70d94fab00af001c14499bdcdfff58b3 new file mode 100644 index 0000000..d9011fa --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/70d94fab00af001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n" + connection.getCatalog(); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/b010e61998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/b010e61998af001c18c4935e001381da new file mode 100644 index 0000000..6bfe529 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/34/b010e61998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/35/2017c81b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/35/2017c81b98af001c18c4935e001381da new file mode 100644 index 0000000..8776ee1 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/35/2017c81b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/35/6009e0e19baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/35/6009e0e19baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..990016d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/35/6009e0e19baf001c1c2eb8ec16be26ca @@ -0,0 +1,3 @@ +#Fri Dec 21 08:55:55 CET 2007 +eclipse.preferences.version=1 +org.eclipse.jdt.ui.text.custom_code_templates= diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/36/208f0afa05a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/36/208f0afa05a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..c1c343a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/36/208f0afa05a4001c1027e59cc3e35e89 @@ -0,0 +1,90 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + int i = rsmd.getColumnCount(); + + System.out.println("Nombre de colonne: " + i); + + for(int j = 1; j < i; j++){ + System.out.println(rsmd.getColumnName(j)); + } + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/36/30cc6e7d85a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/36/30cc6e7d85a9001c1d3abf97745a02da new file mode 100644 index 0000000..7e243b3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/36/30cc6e7d85a9001c1d3abf97745a02da @@ -0,0 +1,156 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + private void windowActivated(WindowEvent ev){ + + } + private void windowClosed(WindowEvent ev){ + + } + private void windowsClosing(WindowEvent ev){ + + } + }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/36/607147fb04a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/36/607147fb04a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..3210498 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/36/607147fb04a4001c1027e59cc3e35e89 @@ -0,0 +1,75 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/50cdbafb20af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/50cdbafb20af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..f365cbf Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/50cdbafb20af001c1bf1a004f0d77fc3 differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/6095eb1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/6095eb1698af001c18c4935e001381da new file mode 100644 index 0000000..a846a45 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/6095eb1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/8079ae00fda3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/8079ae00fda3001c1027e59cc3e35e89 new file mode 100644 index 0000000..aa1a604 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/8079ae00fda3001c1027e59cc3e35e89 @@ -0,0 +1,42 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection conn = new Connection(DriverManager.getConnection(url, identifiant, mdp)); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/90429a1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/90429a1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..26cc623 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/90429a1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Intern feil + +ORA-17002=I/U-unntak + +ORA-17003=Ugyldig kolonneindeks + +ORA-17004=Ugyldig kolonnetype + +ORA-17005=Kolonnetypen st\u00f8ttes ikke + +ORA-17006=Ugyldig kolonnenavn + +ORA-17007=Ugyldig dynamisk kolonne + +ORA-17008=Lukket tilkobling + +ORA-17009=Lukket setning + +ORA-17010=Lukket resultatsett + +ORA-17011=Resultatsettet er for lite + +ORA-17012=Parametertypekonflikt + +ORA-17014=ResultSet.next ble ikke kalt opp + +ORA-17015=Setningen ble annullert + +ORA-17016=Setningen fikk tidsavbrudd + +ORA-17017=Pekeren er allerede initialisert + +ORA-17018=Ugyldig peker + +ORA-17019=Kan bare beskrive en sp\u00f8rring + +ORA-17020=Ugyldig rad-prefetch + +ORA-17021=Manglende definisjoner + +ORA-17022=Manglende definisjoner i indeks + +ORA-17023=Ikke st\u00f8ttet funksjon + +ORA-17024=Ingen data ble lest + +ORA-17025=Feil i defines.isNull () + +ORA-17026=Numerisk overflyt + +ORA-17027=Datastr\u00f8mmen er allerede lukket + +ORA-17028=Kan ikke utf\u00f8re nye definisjoner f\u00f8r gjeldende ResultSet er lukket + +ORA-17029=setReadOnly: Skrivebeskyttede tilkoblinger er ikke st\u00f8ttet + +ORA-17030=READ_COMMITTED og SERIALIZABLE er de eneste gyldige transaksjonsniv\u00e5ene + +ORA-17031=setAutoClose: St\u00f8tter bare modus for automatisk lukking p\u00e5 + +ORA-17032=kan ikke sette rad-prefetch til null + +ORA-17033=Misformet SQL92-streng i posisjon + +ORA-17034=Ikke st\u00f8ttet SQL92-symbol i posisjon + +ORA-17035=Tegnsettet er ikke st\u00f8ttet. + +ORA-17036=unntak i OracleNumber + +ORA-17037=Kan ikke konvertere mellom UTF8 og UCS2 + +ORA-17038=Bytedatatabellen er ikke lang nok + +ORA-17039=Tegndatatabellen er ikke lang nok + +ORA-17040=Underprotokollen m\u00e5 angis i tilkoblings-URLen + +ORA-17041=Manglende IN- eller OUT-parameter i indeks: + +ORA-17042=Ugyldig satsvis verdi + +ORA-17043=Ugyldig maksimumsst\u00f8rrelse for datastr\u00f8mmen + +ORA-17044=Intern feil: Datatabellen er ikke tilordnet + +ORA-17045=Intern feil: Fors\u00f8k p\u00e5 f\u00e5 tilgang til bingingsverdier utenfor den satsvise verdien + +ORA-17046=Intern feil: Ugyldig indeks for datatilgang + +ORA-17047=Feil i analyse av typedeskriptor + +ORA-17048=Udefinert type + +ORA-17049=Ikke samsvarende java- og sql-objekttyper + +ORA-17050=ikke noe slikt element i vektoren + +ORA-17051=Dette APIet kan ikke brukes for ikke-UDT-typer + +ORA-17052=Denne referansen er ikke gyldig + +ORA-17053=St\u00f8rrelsen er ikke gyldig + +ORA-17054=LOB-posisjonsindikatoren er ikke gyldig + +ORA-17055=Ugyldig tegn ble funnet i + +ORA-17056=Ikke st\u00f8ttet tegnsett + +ORA-17057=Lukket LOB + +ORA-17058=Intern feil: Ugyldig forhold for NLS-konvertering + +ORA-17059=Kunne ikke konvertere til intern representasjon + +ORA-17060=Kunne ikke konstruere deskriptoren + +ORA-17061=Manglende deskriptor + +ORA-17062=Referansepekeren er ugyldig + +ORA-17063=Ikke i en transaksjon + +ORA-17064=Ugyldig syntaks eller databasenavnet er null + +ORA-17065=Konverteringsklassen er null + +ORA-17066=Spesifikk implementering av tilgangslaget er n\u00f8dvendig + +ORA-17067=Ugyldig Oracle-URL er angitt + +ORA-17068=Ugyldig(e) argument(er) i kall + +ORA-17069=Bruk eksplisitt XA-kall + +ORA-17070=Datast\u00f8rrelsen er st\u00f8rre en maksimal st\u00f8rrelse for denne typen + +ORA-17071=Maksimal VARRAY-grense er overskredet + +ORA-17072=Innsatt verdi er for stor for kolonnen + +ORA-17073=Logisk referanse er ikke lenger gyldig + +ORA-17074=ugyldig navnem\u00f8nster + +ORA-17075=Ugyldig operasjon for FORWARD-ONLY resultatsett + +ORA-17076=Ugyldig operasjon for skrivebeskyttet resultatsett + +ORA-17077=Kunne ikke definere REF-verdi + +ORA-17078=Kan ikke utf\u00f8re operasjonen fordi tilkoblingene allerede er \u00e5pnet + +ORA-17079=P\u00e5loggingsinformasjon for brukere samsvarer ikke med eksisterende informasjon + +ORA-17080=ugyldig satsvis kommando + +ORA-17081=feil oppstod under satsvis kj\u00f8ring + +ORA-17082=Ingen gjeldende rad + +ORA-17083=Ikke p\u00e5 innsettingsraden + +ORA-17084=Kalt opp p\u00e5 innsettingsraden + +ORA-17085=Verdikonflikter oppst\u00e5r + +ORA-17086=Udefinert kolonneverdi p\u00e5 innsettingsraden + +ORA-17087=Ytelsestips ble ignorert: setFetchDirection() + +ORA-17088=Syntaksen st\u00f8ttes ikke for \u00f8nsket type og samtidighetsniv\u00e5 for resultatsettet +ORA-17089=intern feil + +ORA-17090=operasjonen er ikke tillatt + +ORA-17091=Kan ikke opprette resultatsett med \u00f8nsket type og/eller samtidighetsniv\u00e5 + +ORA-17092=JDBC-setninger kan ikke opprettes eller utf\u00f8res p\u00e5 slutten av kallbehandling + +ORA-17093=OCI-operasjonen returnerte OCI_SUCCESS_WITH_INFO + +ORA-17094=Objekttypeversjonen samsvarer ikke + +ORA-17095=St\u00f8rrelsen p\u00e5 setningshurtigbufferen er ikke definert + +ORA-17096=Setningshurtigbufring kan ikke aktiveres for denne logiske tilkoblingen. + +ORA-17097=Ugyldig elementtype for PL/SQL-indekstabellen + +ORA-17098=Ugyldig tom LOB-operasjon + +ORA-17099=Ugyldig datatabellengde for PL/SQL-indekstabell + +ORA-17100=Ugyldig Java-objekt for databasen + +ORA-17101=Ugyldige egenskaper i objektet for OCI-tilkoblingsgruppe + +ORA-17102=Bfile er skrivebeskyttet + +ORA-17103=ugyldig tilkoblingstype for retur via getConnection. Bruk getJavaSqlConnection i stedet + +ORA-17104=SQL-setningen som skal utf\u00f8res, kan ikke v\u00e6re tom eller null + +ORA-17105=tidssonen for tilkoblingssesjonen var ikke angitt + +ORA-17106=ugyldig konfigurasjon av tilkoblingsgruppen for JDBC-OCI-driveren er angitt + +ORA-17107=en ugyldig proxy-type er angitt + +ORA-17108=Ingen maksimal lengde er angitt i defineColumnType + +ORA-17109=standard Java-tegnkoding ble ikke funnet + +ORA-17110=utf\u00f8ringen ble fullf\u00f8rt med en advarsel + +ORA-17111=Ugyldig tidsavbrudd for tilkobling av hurtigbuffer-TTL er angitt + +ORA-17112=Et ugyldig tr\u00e5dintervall er angitt + +ORA-17113=Verdien for tr\u00e5dintervallet er st\u00f8rre enn tidsavbruddsverdien for hurtigbufring + +ORA-17114=kunne ikke bruke lokal transaksjonsbekreftelse i en global transaksjon + +ORA-17115=kunne ikke bruke lokal tilbakestilling av transaksjonen i en global transaksjon + +ORA-17116=kunne ikke sl\u00e5 p\u00e5 automatisk bekreftelse i en aktiv global transaksjon + +ORA-17117=kunne ikke definere tilbakestillingspunktet i en aktiv global transaksjon + +ORA-17118=kunne ikke f\u00e5 tak i IDen for et navngitt tilbakestillingspunkt + +ORA-17119=kunne ikke f\u00e5 tak i navnet p\u00e5 et tilbakestillingspunkt uten navn + +ORA-17120=kunne ikke definere et tilbakestillingspunkt med automatisk bekreftelse p\u00e5 + +ORA-17121=kunne ikke tilbakestille et tilbakestillingspunkt med automatisk lagring p\u00e5 + +ORA-17122=kunne ikke tilbakestille et lokalt txn-tilbakestillingspunkt i en global transaksjon + +ORA-17123=En ugyldig st\u00f8rrelse p\u00e5 setningshurtigbufferen er angitt + +ORA-17124=Det er angitt ugyldig tidsavbrudd ved inaktivitet for tilkoblingshurtigbufferen + +ORA-17200=Kan ikke konvertere XA open-strengen fra Java til C p\u00e5 riktig m\u00e5te + +ORA-17201=Kan ikke konvertere XA close-strengen fra Java til C p\u00e5 riktig m\u00e5te + +ORA-17202=Kan ikke konvertere RM-navn fra Java til C p\u00e5 riktig m\u00e5te + +ORA-17203=Kunne ikke tilordne pekertypen til jlong + +ORA-17204=Inndatatabellen er for kort til OCI-referansene + +ORA-17205=Kan ikke hente OCISvcCtx-referansen fra C-XA ved hjelp av xaoSvcCtx + +ORA-17206=Kan ikke hente OCIEnv-referansen fra C-XA ved hjelp av xaoEnv + +ORA-17207=Egenskapen tnsEntry var ikke angitt i DataSource + +ORA-17213=C-XA returnerte XAER_RMERR under xa_open + +ORA-17215=C-XA returnerte XAER_INVAL under xa_open + +ORA-17216=C-XA returnerte XAER_PROTO under xa_open + +ORA-17233=C-XA returnerte XAER_RMERR under xa_close + +ORA-17235=C-XA returnerte XAER_INVAL under xa_close + +ORA-17236=C-XA returnerte XAER_PROTO under xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokolloverskridelse + +ORA-17402=Bare \u00e9n RPA-medling er forventet + +ORA-17403=Bare \u00e9n RXH-medling er forventet + +ORA-17404=Mottok flere RXDer enn forventet + +ORA-17405=UAC-lengden er ikke null + +ORA-17406=Overskrider maksimal bufferlengde + +ORA-17407=ugyldig typerepresentasjon (setRep) + +ORA-17408=ugyldig typerepresentasjon (getRep) + +ORA-17409=ugyldig bufferlengde + +ORA-17410=Ikke flere data \u00e5 lese fra porten + +ORA-17411=Manglende samsvar i representasjon av datatype + +ORA-17412=Typelengden er st\u00f8rre enn maksimum + +ORA-17413=Overskrider n\u00f8kkelst\u00f8rrelsen + +ORA-17414=Ikke tilstrekkelig bufferst\u00f8rrelse til \u00e5 lagre kolonnenavn + +ORA-17415=Denne typen er ikke h\u00e5ndtert + +ORA-17416=FATAL + +ORA-17417=NLS-problem, kunne ikke dekode kolonnenavn + +ORA-17418=Feil i den interne strukturens feltlengde + +ORA-17419=Ugyldig antall kolonner ble returnert + +ORA-17420=Oracle-versjonen er ikke definert + +ORA-17421=Typer eller tilkobling er ikke definert + +ORA-17422=Ugyldig klasse i fabrikk + +ORA-17423=Bruker en PLSQL-blokk uten en definert IOV + +ORA-17424=Fors\u00f8ker en annen oppstillingsoperasjon + +ORA-17425=Returnerer en datastr\u00f8m i PLSQL-blokk + +ORA-17426=B\u00e5de IN- og OUT-bindinger er NULL + +ORA-17427=Bruker uinitialisert OAC + +ORA-17428=P\u00e5logging m\u00e5 kalles etter tilkobling + +ORA-17429=M\u00e5 i det minste v\u00e6re tilkoblet tjeneren + +ORA-17430=M\u00e5 v\u00e6re logget p\u00e5 tjeneren + +ORA-17431=SQL-setningen som skal analyseres er null + +ORA-17432=ugyldige valg i all7 + +ORA-17433=ugyldige argumenter i kallet + +ORA-17434=ikke i str\u00f8mmodus + +ORA-17435=ugyldig antall in_out_binds i IOV + +ORA-17436=ugyldig antall outbinds + +ORA-17437=Feil i PLSQL-blokkens IN/OUT-argument(er) + +ORA-17438=Intern - Uventet verdi + +ORA-17439=Ugyldig SQL-type + +ORA-17440=DBItem/DBType er null + +ORA-17441=Oracle-versjonen er ikke st\u00f8ttet. Minste st\u00f8ttede versjon er 7.2.3. + +ORA-17442=Refcursor-verdien er ugyldig + +ORA-17443=Nullbruker eller -passord er ikke st\u00f8ttet i THIN-driver + +ORA-17444=TTC-protokollversjonen som er mottatt fra tjeneren, er ikke st\u00f8ttet + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/908ea0fb20af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/908ea0fb20af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..6a67333 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/908ea0fb20af001c1bf1a004f0d77fc3 differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/a0b46c11cda4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/a0b46c11cda4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..8fd81e9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/a0b46c11cda4001c1acc9f54b60f9b57 @@ -0,0 +1,95 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/a0c0b49ac2a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/a0c0b49ac2a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..57ba251 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/a0c0b49ac2a4001c1acc9f54b60f9b57 @@ -0,0 +1,16 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/b06bc81898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/b06bc81898af001c18c4935e001381da new file mode 100644 index 0000000..2aa1d97 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/b06bc81898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/c00d751b9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/c00d751b9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..6a67333 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/37/c00d751b9baf001c1c2eb8ec16be26ca differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/10143ff820af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/10143ff820af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..0a732b2 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/10143ff820af001c1bf1a004f0d77fc3 @@ -0,0 +1,407 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u5185\u90e8\u30a8\u30e9\u30fc + +ORA-17002=I/O\u4f8b\u5916\u3067\u3059\u3002 + +ORA-17003=\u5217\u7d22\u5f15\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17004=\u5217\u306e\u578b\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17005=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u5217\u306e\u578b\u3067\u3059\u3002 + +ORA-17006=\u5217\u540d\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17007=\u52d5\u7684\u5217\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17008=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305f\u63a5\u7d9a\u3067\u3059\u3002 + +ORA-17009=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305f\u6587\u3067\u3059\u3002 + +ORA-17010=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305f\u7d50\u679c\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17011=\u7a7a\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17012=\u30d1\u30e9\u30e1\u30fc\u30bf\u306e\u578b\u304c\u7af6\u5408\u3057\u307e\u3059\u3002 + +ORA-17014=ResultSet.next\u306f\u30b3\u30fc\u30eb\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17015=\u6587\u306f\u53d6\u308a\u6d88\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17016=\u6587\u306f\u6642\u9593\u5207\u308c\u306b\u306a\u308a\u307e\u3057\u305f\u3002 + +ORA-17017=\u30ab\u30fc\u30bd\u30eb\u306f\u3059\u3067\u306b\u521d\u671f\u5316\u6e08\u3067\u3059\u3002 + +ORA-17018=\u7121\u52b9\u306a\u30ab\u30fc\u30bd\u30eb\u3067\u3059\u3002 + +ORA-17019=1\u3064\u306e\u554f\u5408\u305b\u306e\u307f\u8a18\u8ff0\u3067\u304d\u307e\u3059\u3002 + +ORA-17020=\u884c\u306e\u30d7\u30ea\u30d5\u30a7\u30c3\u30c1\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17021=\u5b9a\u7fa9\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17022=\u7d22\u5f15\u306b\u5b9a\u7fa9\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17023=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u6a5f\u80fd\u3067\u3059\u3002 + +ORA-17024=\u8aad\u307f\u8fbc\u3080\u30c7\u30fc\u30bf\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17025=defines.isNull()\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17026=\u6570\u5024\u306e\u30aa\u30fc\u30d0\u30fc\u30d5\u30ed\u30fc\u3067\u3059\u3002 + +ORA-17027=\u30b9\u30c8\u30ea\u30fc\u30e0\u306f\u3059\u3067\u306b\u30af\u30ed\u30fc\u30ba\u6e08\u3067\u3059\u3002 + +ORA-17028=\u73fe\u884c\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u304c\u30af\u30ed\u30fc\u30ba\u3055\u308c\u308b\u307e\u3067\u3001\u65b0\u898f\u7d50\u679c\u30bb\u30c3\u30c8\u3092\u5b9f\u884c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17029=setReadOnly: \u8aad\u8fbc\u307f\u5c02\u7528\u306e\u63a5\u7d9a\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002 + +ORA-17030=READ_COMMITTED\u304a\u3088\u3073SERIALIZABLE\u306e\u307f\u304c\u6709\u52b9\u306a\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30ec\u30d9\u30eb\u3067\u3059\u3002 + +ORA-17031=setAutoClose: \u81ea\u52d5\u30af\u30ed\u30fc\u30ba\u30fb\u30e2\u30fc\u30c9\u304c\u300c\u30aa\u30f3\u300d\u306e\u5834\u5408\u306e\u307f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u3059\u3002 + +ORA-17032=\u884c\u306e\u30d7\u30ea\u30d5\u30a7\u30c3\u30c1\u3092\u30bc\u30ed\u306b\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17033=\u4e0d\u5b8c\u5168\u306aSQL92\u6587\u5b57\u5217\u3067\u3059 - \u4f4d\u7f6e + +ORA-17034=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044SQL92\u30c8\u30fc\u30af\u30f3\u3067\u3059 - \u4f4d\u7f6e + +ORA-17035=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u30ad\u30e3\u30e9\u30af\u30bf\u30fb\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17036=OracleNumber\u3067\u4f8b\u5916\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17037=UTF8\u3068UCS2\u3068\u306e\u9593\u306e\u5909\u63db\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17038=\u30d0\u30a4\u30c8\u914d\u5217\u306e\u9577\u3055\u304c\u4e0d\u5341\u5206\u3067\u3059\u3002 + +ORA-17039=\u6587\u5b57\u914d\u5217\u306e\u9577\u3055\u304c\u4e0d\u5341\u5206\u3067\u3059\u3002 + +ORA-17040=\u63a5\u7d9aURL\u306b\u30b5\u30d6\u30fb\u30d7\u30ed\u30c8\u30b3\u30eb\u306e\u6307\u5b9a\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17041=IN\u307e\u305f\u306fOUT\u30d1\u30e9\u30e1\u30fc\u30bf\u304c\u3042\u308a\u307e\u305b\u3093 - \u7d22\u5f15: + +ORA-17042=\u30d0\u30c3\u30c1\u306e\u5024\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17043=\u30b9\u30c8\u30ea\u30fc\u30e0\u306e\u6700\u5927\u30b5\u30a4\u30ba\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17044=\u5185\u90e8\u30a8\u30e9\u30fc: \u30c7\u30fc\u30bf\u914d\u5217\u3092\u5272\u5f53\u3066\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17045=\u5185\u90e8\u30a8\u30e9\u30fc: \u30d0\u30c3\u30c1\u306e\u5024\u7bc4\u56f2\u3092\u8d85\u3048\u3066\u30d0\u30a4\u30f3\u30c9\u5909\u6570\u306b\u30a2\u30af\u30bb\u30b9\u3057\u3088\u3046\u3068\u3057\u307e\u3057\u305f\u3002 + +ORA-17046=\u5185\u90e8\u30a8\u30e9\u30fc: \u30c7\u30fc\u30bf\u30fb\u30a2\u30af\u30bb\u30b9\u306b\u5bfe\u3059\u308b\u7d22\u5f15\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17047=\u578b\u8a18\u8ff0\u5b50\u306e\u89e3\u6790\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17048=\u578b\u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17049=JAVA\u3068SQL\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u578b\u304c\u9069\u5408\u3057\u307e\u305b\u3093\u3002 + +ORA-17050=\u30d9\u30af\u30c8\u30eb\u306b\u305d\u306e\u3088\u3046\u306a\u8981\u7d20\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17051=\u3053\u306eAPI\u306f\u3001UDT\u4ee5\u5916\u306e\u578b\u306b\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17052=\u3053\u306e\u53c2\u7167\u306f\u6709\u52b9\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17053=\u30b5\u30a4\u30ba\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17054=LOB \u30ed\u30b1\u30fc\u30bf\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17055=\u7121\u52b9\u306a\u30ad\u30e3\u30e9\u30af\u30bf\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f - + +ORA-17056=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u30ad\u30e3\u30e9\u30af\u30bf\u30fb\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17057=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305fLOB\u3067\u3059\u3002 + +ORA-17058=\u5185\u90e8\u30a8\u30e9\u30fc: NLS\u5909\u63db\u7387\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17059=\u5185\u90e8\u8868\u73fe\u306e\u5909\u63db\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17060=\u8a18\u8ff0\u5b50\u306e\u69cb\u6210\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17061=\u8a18\u8ff0\u5b50\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17062=\u53c2\u7167\u30ab\u30fc\u30bd\u30eb\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17063=\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u4e2d\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17064=\u69cb\u6587\u304c\u7121\u52b9\u3001\u307e\u305f\u306f\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u540d\u304cNULL\u3067\u3059\u3002 + +ORA-17065=\u5909\u63db\u30af\u30e9\u30b9\u304cNULL\u3067\u3059\u3002 + +ORA-17066=\u30a2\u30af\u30bb\u30b9\u30fb\u30ec\u30a4\u30e4\u30fc\u306b\u306f\u56fa\u6709\u306e\u5b9f\u88c5\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17067=\u7121\u52b9\u306aOracle URL\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17068=\u30b3\u30fc\u30eb\u306b\u7121\u52b9\u306a\u5f15\u6570\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17069=\u660e\u793a\u7684\u306aXA\u30b3\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044\u3002 + +ORA-17070=\u30c7\u30fc\u30bf\u30fb\u30b5\u30a4\u30ba\u304c\u3053\u306e\u578b\u306e\u6700\u5927\u30b5\u30a4\u30ba\u3092\u8d85\u3048\u3066\u3044\u307e\u3059\u3002 + +ORA-17071=\u6700\u5927VARRAY\u5236\u9650\u3092\u8d85\u3048\u307e\u3057\u305f\u3002 + +ORA-17072=\u5217\u306b\u5bfe\u3057\u3066\u633f\u5165\u5024\u304c\u5927\u304d\u3059\u304e\u307e\u3059\u3002 + +ORA-17073=\u8ad6\u7406\u30cf\u30f3\u30c9\u30eb\u306f\u3059\u3067\u306b\u7121\u52b9\u3067\u3059\u3002 + +ORA-17074=\u540d\u524d\u30d1\u30bf\u30fc\u30f3\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17075=\u8ee2\u9001\u5c02\u7528\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u306b\u5bfe\u3059\u308b\u64cd\u4f5c\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17076=\u8aad\u8fbc\u307f\u5c02\u7528\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u306b\u5bfe\u3059\u308b\u64cd\u4f5c\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17077=REF\u5024\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17078=\u63a5\u7d9a\u306f\u3059\u3067\u306b\u30aa\u30fc\u30d7\u30f3\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u64cd\u4f5c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17079=\u65e2\u5b58\u306e\u30e6\u30fc\u30b6\u30fc\u8cc7\u683c\u8a3c\u660e\u3068\u4e00\u81f4\u3057\u307e\u305b\u3093\u3002 + +ORA-17080=\u7121\u52b9\u306a\u30d0\u30c3\u30c1\u30fb\u30b3\u30de\u30f3\u30c9\u3067\u3059\u3002 + +ORA-17081=\u30d0\u30c3\u30c1\u51e6\u7406\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17082=\u73fe\u884c\u306e\u884c\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17083=\u633f\u5165\u884c\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17084=\u633f\u5165\u884c\u3067\u30b3\u30fc\u30eb\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17085=\u5024\u306e\u7af6\u5408\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17086=\u633f\u5165\u884c\u306e\u5217\u5024\u304c\u672a\u5b9a\u7fa9\u3067\u3059\u3002 + +ORA-17087=\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u30fb\u30d2\u30f3\u30c8\u304c\u7121\u8996\u3055\u308c\u307e\u3057\u305f: setFetchDirection() + +ORA-17088=\u8981\u6c42\u3057\u305f\u7d50\u679c\u30bb\u30c3\u30c8\u306e\u578b\u3068\u540c\u6642\u5b9f\u884c\u30ec\u30d9\u30eb\u306e\u69cb\u6587\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 +ORA-17089=\u5185\u90e8\u30a8\u30e9\u30fc + +ORA-17090=\u64cd\u4f5c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17091=\u8981\u6c42\u3057\u305f\u578b\u304a\u3088\u3073/\u307e\u305f\u306f\u540c\u6642\u5b9f\u884c\u30ec\u30d9\u30eb\u3067\u7d50\u679c\u30bb\u30c3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17092=JDBC\u6587\u3067\u30b3\u30fc\u30eb\u51e6\u7406\u306e\u7d42\u4e86\u3092\u4f5c\u6210\u307e\u305f\u306f\u5b9f\u884c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17093=OCI\u64cd\u4f5c\u3067OCI_SUCCESS_WITH_INFO\u304c\u623b\u308a\u307e\u3057\u305f\u3002 + +ORA-17094=\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30fb\u30bf\u30a4\u30d7\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u304c\u9069\u5408\u3057\u307e\u305b\u3093\u3002 + +ORA-17095=\u6587\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u30fb\u30b5\u30a4\u30ba\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17096=\u6587\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u306f\u3053\u306e\u8ad6\u7406\u63a5\u7d9a\u306b\u5bfe\u3057\u3066\u4f7f\u7528\u53ef\u80fd\u306b\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17097=PL/SQL\u306e\u7d22\u5f15\u8868\u306e\u8981\u7d20\u30bf\u30a4\u30d7\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17098=\u7a7a\u306eLOB\u64cd\u4f5c\u306f\u7121\u52b9\u3067\u3059\u3002 + +ORA-17099=PL/SQL\u306e\u7d22\u5f15\u8868\u306e\u914d\u5217\u306e\u9577\u3055\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17100=\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306eJava\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17101=OCI\u63a5\u7d9a\u30d7\u30fc\u30eb\u30fb\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u7121\u52b9\u306a\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17102=Bfile\u306f\u8aad\u8fbc\u307f\u5c02\u7528\u3067\u3059 + +ORA-17103=getConnection\u7d4c\u7531\u3067\u623b\u308b\u63a5\u7d9a\u30bf\u30a4\u30d7\u306f\u7121\u52b9\u3067\u3059\u3002\u304b\u308f\u308a\u306bgetJavaSqlConnection\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044 + +ORA-17104=\u5b9f\u884c\u3059\u308bSQL\u6587\u306f\u7a7a\u307e\u305f\u306fNULL\u306b\u3067\u304d\u307e\u305b\u3093 + +ORA-17105=\u63a5\u7d9a\u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u30bf\u30a4\u30e0\u30fb\u30be\u30fc\u30f3\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093 + +ORA-17106=\u6307\u5b9a\u3055\u308c\u305fJDBC-OCI\u30c9\u30e9\u30a4\u30d0\u306e\u63a5\u7d9a\u30d7\u30fc\u30eb\u69cb\u6210\u304c\u7121\u52b9\u3067\u3059 + +ORA-17107=\u7121\u52b9\u306a\u30d7\u30ed\u30ad\u30b7\u30fb\u30bf\u30a4\u30d7\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f + +ORA-17108=defineColumnType\u306b\u6700\u5927\u9577\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093 + +ORA-17109=\u6a19\u6e96\u306eJava\u6587\u5b57\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093 + +ORA-17110=\u5b9f\u884c\u304c\u8b66\u544a\u3067\u5b8c\u4e86\u3057\u307e\u3057\u305f + +ORA-17111=\u7121\u52b9\u306a\u63a5\u7d9a\u30ad\u30e3\u30c3\u30b7\u30e5TTL\u306e\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17112=\u6307\u5b9a\u3055\u308c\u305f\u30b9\u30ec\u30c3\u30c9\u9593\u9694\u304c\u7121\u52b9\u3067\u3059 + +ORA-17113=\u30b9\u30ec\u30c3\u30c9\u9593\u9694\u5024\u304c\u3001\u30ad\u30e3\u30c3\u30b7\u30e5\u306e\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u5024\u3088\u308a\u5927\u304d\u3044\u3067\u3059 + +ORA-17114=\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30ed\u30fc\u30ab\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30b3\u30df\u30c3\u30c8\u3092\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17115=\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30ed\u30fc\u30ab\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30ed\u30fc\u30eb\u30d0\u30c3\u30af\u3092\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17116=\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u81ea\u52d5\u30b3\u30df\u30c3\u30c8\u3092\u30aa\u30f3\u306b\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f + +ORA-17117=\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f + +ORA-17118=\u540d\u524d\u4ed8\u304d\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306eID\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17119=\u540d\u524d\u4ed8\u304d\u3067\u306a\u3044\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306e\u540d\u524d\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17120=\u81ea\u52d5\u30b3\u30df\u30c3\u30c8\u304c\u30aa\u30f3\u306e\u72b6\u614b\u3067\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17121=\u81ea\u52d5\u30b3\u30df\u30c3\u30c8\u304c\u30aa\u30f3\u306e\u72b6\u614b\u3067\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306b\u30ed\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17122=\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30ed\u30fc\u30ab\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306b\u30ed\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u304d\u307e\u305b\u3093 + +ORA-17123=\u7121\u52b9\u306a\u6587\u30ad\u30e3\u30c3\u30b7\u30e5\u30fb\u30b5\u30a4\u30ba\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17124=\u7121\u52b9\u306a\u63a5\u7d9a\u30ad\u30e3\u30c3\u30b7\u30e5\u306eInactivity\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f + +ORA-17125=\u660e\u793a\u7684\u306a\u30ad\u30e3\u30c3\u30b7\u30e5\u306b\u3088\u308a\u4e0d\u9069\u5207\u306a\u6587\u306e\u7a2e\u985e\u304c\u623b\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17200=XA open\u6587\u5b57\u5217\u3092Java\u304b\u3089C\u3078\u6b63\u3057\u304f\u5909\u63db\u3067\u304d\u307e\u305b\u3093 + +ORA-17201=XA close\u6587\u5b57\u5217\u3092Java\u304b\u3089C\u3078\u6b63\u3057\u304f\u5909\u63db\u3067\u304d\u307e\u305b\u3093 + +ORA-17202=RA\u540d\u3092Java\u304b\u3089C\u3078\u6b63\u3057\u304f\u5909\u63db\u3067\u304d\u307e\u305b\u3093 + +ORA-17203=\u30dd\u30a4\u30f3\u30bf\u30fb\u30bf\u30a4\u30d7\u3092jlong\u306b\u30ad\u30e3\u30b9\u30c8\u3067\u304d\u307e\u305b\u3093 + +ORA-17204=\u5165\u529b\u914d\u5217\u304c\u77ed\u304b\u3059\u304e\u3066OCI\u30cf\u30f3\u30c9\u30eb\u3092\u4fdd\u6301\u3067\u304d\u307e\u305b\u3093 + +ORA-17205=xaoSvcCtx\u3092\u4f7f\u7528\u3057\u3066C-XA\u304b\u3089OCISvcCtx\u30cf\u30f3\u30c9\u30eb\u3092\u53d6\u5f97\u3059\u308b\u306e\u306b\u5931\u6557\u3057\u307e\u3057\u305f + +ORA-17206=xaoEnv\u3092\u4f7f\u7528\u3057\u3066C-XA\u304b\u3089OCIEnv\u3092\u53d6\u5f97\u3059\u308b\u306e\u306b\u5931\u6557\u3057\u307e\u3057\u305f + +ORA-17207=tnsEntry\u30d7\u30ed\u30d1\u30c6\u30a3\u304cDataSource\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093 + +ORA-17213=xa_open\u3067C-XA\u304b\u3089XAER_RMERR\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17215=xa_open\u3067C-XA\u304b\u3089XAER_INVAL\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17216=xa_open\u3067C-XA\u304b\u3089XAER_PROTO\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17233=xa_close\u3067C-XA\u304b\u3089XAER_RMERR\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17235=xa_close\u3067C-XA\u304b\u3089XAER_INVAL\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17236=xa_close\u3067C-XA\u304b\u3089XAER_PROTO\u304c\u623b\u3055\u308c\u307e\u3057\u305f + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u30d7\u30ed\u30c8\u30b3\u30eb\u9055\u53cd\u3067\u3059\u3002 + +ORA-17402=RPA\u30e1\u30c3\u30bb\u30fc\u30b8\u306f1\u3064\u306e\u306f\u305a\u3067\u3059\u3002 + +ORA-17403=RXH\u30e1\u30c3\u30bb\u30fc\u30b8\u306f1\u3064\u306e\u306f\u305a\u3067\u3059\u3002 + +ORA-17404=\u4e88\u5b9a\u3088\u308a\u591a\u3044RXD\u3092\u53d7\u3051\u53d6\u308a\u307e\u3057\u305f\u3002 + +ORA-17405=UAC\u306e\u9577\u3055\u306f\u30bc\u30ed\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17406=\u6700\u5927\u30d0\u30c3\u30d5\u30a1\u9577\u3092\u8d85\u3048\u3066\u3044\u307e\u3059\u3002 + +ORA-17407=\u578b\u8868\u73fe\u304c\u7121\u52b9\u3067\u3059(setRep)\u3002 + +ORA-17408=\u578b\u8868\u73fe\u304c\u7121\u52b9\u3067\u3059(getRep)\u3002 + +ORA-17409=\u30d0\u30c3\u30d5\u30a1\u9577\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17410=\u30bd\u30b1\u30c3\u30c8\u304b\u3089\u8aad\u307f\u8fbc\u3080\u30c7\u30fc\u30bf\u306f\u3053\u308c\u4ee5\u4e0a\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17411=\u30c7\u30fc\u30bf\u578b\u306e\u8868\u73fe\u304c\u9069\u5408\u3057\u307e\u305b\u3093\u3002 + +ORA-17412=\u578b\u306e\u9577\u3055\u304c\u6700\u5927\u3092\u8d85\u3048\u3066\u3044\u307e\u3059\u3002 + +ORA-17413=\u30ad\u30fc\u30fb\u30b5\u30a4\u30ba\u304c\u5927\u304d\u3059\u304e\u307e\u3059\u3002 + +ORA-17414=\u5217\u540d\u3092\u4fdd\u5b58\u3059\u308b\u306b\u306f\u30d0\u30c3\u30d5\u30a1\u30fb\u30b5\u30a4\u30ba\u304c\u4e0d\u5341\u5206\u3067\u3059\u3002 + +ORA-17415=\u3053\u306e\u578b\u306f\u672a\u51e6\u7406\u3067\u3059\u3002 + +ORA-17416=FATAL + +ORA-17417=NLS\u306e\u554f\u984c\u3067\u3001\u5217\u540d\u306e\u30c7\u30b3\u30fc\u30c9\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17418=\u5185\u90e8\u69cb\u9020\u4f53\u306e\u30d5\u30a3\u30fc\u30eb\u30c9\u9577\u30a8\u30e9\u30fc\u3067\u3059\u3002 + +ORA-17419=\u7121\u52b9\u306a\u5217\u306e\u6570\u304c\u623b\u308a\u307e\u3057\u305f\u3002 + +ORA-17420=Oracle\u30d0\u30fc\u30b8\u30e7\u30f3\u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17421=\u578b\u307e\u305f\u306f\u63a5\u7d9a\u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17422=\u30d5\u30a1\u30af\u30c8\u30ea\u306b\u7121\u52b9\u306a\u30af\u30e9\u30b9\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17423=IOV\u306e\u5b9a\u7fa9\u306a\u3057\u3067PLSQL\u30d6\u30ed\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059\u3002 + +ORA-17424=\u7570\u306a\u308b\u914d\u5217\u64cd\u4f5c\u3092\u8a66\u307f\u3066\u3044\u307e\u3059\u3002 + +ORA-17425=PLSQL\u30d6\u30ed\u30c3\u30af\u3067\u30b9\u30c8\u30ea\u30fc\u30e0\u3092\u623b\u3057\u3066\u3044\u307e\u3059\u3002 + +ORA-17426=IN\u30d0\u30a4\u30f3\u30c9\u3001OUT\u30d0\u30a4\u30f3\u30c9\u3068\u3082\u306bNULL\u3067\u3059\u3002 + +ORA-17427=\u521d\u671f\u5316\u3055\u308c\u3066\u3044\u306a\u3044OAC\u3092\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059\u3002 + +ORA-17428=\u63a5\u7d9a\u5f8c\u306b\u30ed\u30b0\u30aa\u30f3\u306e\u30b3\u30fc\u30eb\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17429=\u5c11\u306a\u304f\u3068\u3082\u30b5\u30fc\u30d0\u30fc\u306b\u63a5\u7d9a\u3057\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17430=\u30b5\u30fc\u30d0\u30fc\u3078\u306e\u30ed\u30b0\u30aa\u30f3\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17431=\u89e3\u6790\u3059\u308bSQL\u6587\u304cNULL\u3067\u3059\u3002 + +ORA-17432=all7\u3067\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17433=\u30b3\u30fc\u30eb\u306e\u5f15\u6570\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17434=\u30b9\u30c8\u30ea\u30fc\u30e0\u30fb\u30e2\u30fc\u30c9\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17435=IOV\u3067in_out_binds\u306e\u6570\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17436=\u30a2\u30a6\u30c8\u30d0\u30a4\u30f3\u30c9\u306e\u6570\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17437=PLSQL\u30d6\u30ed\u30c3\u30af\u306eIN/OUT\u5f15\u6570\u306b\u30a8\u30e9\u30fc\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17438=\u5185\u90e8 - \u4e88\u671f\u3057\u306a\u3044\u5024\u3067\u3059\u3002 + +ORA-17439=SQL\u306e\u578b\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17440=DBItem/DBType\u304cNULL\u3067\u3059\u3002 + +ORA-17441=\u3053\u306eOracle\u30d0\u30fc\u30b8\u30e7\u30f3\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u30027.2.3\u4ee5\u4e0a\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u3059\u3002 + +ORA-17442=Refcursor\u5024\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17443=NULL\u306e\u30e6\u30fc\u30b6\u30fc\u307e\u305f\u306f\u30d1\u30b9\u30ef\u30fc\u30c9\u306f\u3001THIN\u30c9\u30e9\u30a4\u30d0\u3067\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002 + +ORA-17444=\u30b5\u30fc\u30d0\u30fc\u304b\u3089\u53d7\u3051\u53d6\u3063\u305fTTC\u30d7\u30ed\u30c8\u30b3\u30eb\u30fb\u30d0\u30fc\u30b8\u30e7\u30f3\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/20820d3448aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/20820d3448aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..cee43b5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/20820d3448aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,177 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/40bd661b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/40bd661b98af001c18c4935e001381da new file mode 100644 index 0000000..4a7707a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/40bd661b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/700c2f0103a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/700c2f0103a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..dea7c41 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/700c2f0103a4001c1027e59cc3e35e89 @@ -0,0 +1,68 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + resultat.next(); + + // traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/707b08d14daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/707b08d14daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..d5497dc --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/38/707b08d14daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,199 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + + // Rcupration des donnes entres par l'utilisateur + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getPassword().toString(); + + // Affichage du message de configurmation + this.pr.afficherMessage(this.serveur); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/0040521a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/0040521a98af001c18c4935e001381da new file mode 100644 index 0000000..1ca83cf Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/0040521a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/20f92f3f08af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/20f92f3f08af001c14499bdcdfff58b3 new file mode 100644 index 0000000..819b178 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/20f92f3f08af001c14499bdcdfff58b3 @@ -0,0 +1,161 @@ +package fr.blankoworld.connexionBDD; + +import java.awt.List; +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + DatabaseMetaData metaData; + List listTables = new List(10); + + metaData = connection.getMetaData(); + String[] types = { "TABLE", "VIEW" }; + ResultSet rs = metaData.getTables( null, null, "%", types ); + String nomTable; + while ( rs.next() ) { + nomTable = rs.getString( 3 ); + listTables.add( nomTable ); + } + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/30ec7f0301a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/30ec7f0301a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..346185b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/30ec7f0301a4001c1027e59cc3e35e89 @@ -0,0 +1,56 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + System.out.println("Requte: Envoye et reue"); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/4001b3bb99af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/4001b3bb99af001c18c4935e001381da new file mode 100644 index 0000000..9124b9e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/4001b3bb99af001c18c4935e001381da @@ -0,0 +1,7 @@ +#Fri Dec 21 08:52:51 CET 2007 +eclipse.preferences.version=1 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org;com;oracle.jdbc.driver; +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/40ea767f01af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/40ea767f01af001c14499bdcdfff58b3 new file mode 100644 index 0000000..c5aa7f5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/40ea767f01af001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n" + connection.getClientInfo().toString(); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/50ca0972ffae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/50ca0972ffae001c14499bdcdfff58b3 new file mode 100644 index 0000000..3850720 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/50ca0972ffae001c14499bdcdfff58b3 @@ -0,0 +1,131 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte."; + } + catch(SQLException sqle) { + tableau[0] = "1"; + //tableau[1] = "Acces a la base: Refuse."; + tableau[1] = sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/a06de56d02af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/a06de56d02af001c14499bdcdfff58b3 new file mode 100644 index 0000000..eb64d14 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/a06de56d02af001c14499bdcdfff58b3 @@ -0,0 +1,131 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + System.out.print(DriverManager.getDrivers().toString()); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/d02390e47da9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/d02390e47da9001c1d3abf97745a02da new file mode 100644 index 0000000..0ffe6b4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/39/d02390e47da9001c1d3abf97745a02da @@ -0,0 +1,79 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBDD.add(MenuBdd_Connexion); + MenuBDD.addSeparator(); + MenuBDD.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuJeu); + MenuPrincipal.add(MenuAide); + MenuPrincipal.setBorder(new BevelBorder(BevelBorder.RAISED)); + + + + + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3a/105b7e1398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3a/105b7e1398af001c18c4935e001381da new file mode 100644 index 0000000..868383b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3a/105b7e1398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3a/606b6f1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3a/606b6f1798af001c18c4935e001381da new file mode 100644 index 0000000..f906a75 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3a/606b6f1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3a/d087deb6fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3a/d087deb6fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..5d61654 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3a/d087deb6fea3001c1027e59cc3e35e89 @@ -0,0 +1,40 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + if(connection!=null){try{connection.close()}catch(Exception e){e.printStackTrace();}} + } + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/60d2a4e807af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/60d2a4e807af001c14499bdcdfff58b3 new file mode 100644 index 0000000..94fdf96 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/60d2a4e807af001c14499bdcdfff58b3 @@ -0,0 +1,236 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(true); + zoneTexteStatut.setTabSize(65); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/70c1e7f620af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/70c1e7f620af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..c8f1be3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/70c1e7f620af001c1bf1a004f0d77fc3 @@ -0,0 +1,411 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Internal Error + +ORA-17002=Io exception + +ORA-17003=Invalid column index + +ORA-17004=Invalid column type + +ORA-17005=Unsupported column type + +ORA-17006=Invalid column name + +ORA-17007=Invalid dynamic column + +ORA-17008=Closed Connection + +ORA-17009=Closed Statement + +ORA-17010=Closed Resultset + +ORA-17011=Exhausted Resultset + +ORA-17012=Parameter Type Conflict + +ORA-17014=ResultSet.next was not called + +ORA-17015=Statement was cancelled + +ORA-17016=Statement timed out + +ORA-17017=Cursor already initialized + +ORA-17018=Invalid cursor + +ORA-17019=Can only describe a query + +ORA-17020=Invalid row prefetch + +ORA-17021=Missing defines + +ORA-17022=Missing defines at index + +ORA-17023=Unsupported feature + +ORA-17024=No data read + +ORA-17025=Error in defines.isNull () + +ORA-17026=Numeric Overflow + +ORA-17027=Stream has already been closed + +ORA-17028=Can not do new defines until the current ResultSet is closed + +ORA-17029=setReadOnly: Read-only connections not supported + +ORA-17030=READ_COMMITTED and SERIALIZABLE are the only valid transaction levels + +ORA-17031=setAutoClose: Only support auto close mode on + +ORA-17032=cannot set row prefetch to zero + +ORA-17033=Malformed SQL92 string at position + +ORA-17034=Non supported SQL92 token at position + +ORA-17035=Character Set Not Supported !! + +ORA-17036=exception in OracleNumber + +ORA-17037=Fail to convert between UTF8 and UCS2 + +ORA-17038=Byte array not long enough + +ORA-17039=Char array not long enough + +ORA-17040=Sub Protocol must be specified in connection URL + +ORA-17041=Missing IN or OUT parameter at index: + +ORA-17042=Invalid Batch Value + +ORA-17043=Invalid stream maximum size + +ORA-17044=Internal error: Data array not allocated + +ORA-17045=Internal error: Attempt to access bind values beyond the batch value + +ORA-17046=Internal error: Invalid index for data access + +ORA-17047=Error in Type Descriptor parse + +ORA-17048=Undefined type + +ORA-17049=Inconsistent java and sql object types + +ORA-17050=no such element in vector + +ORA-17051=This API cannot be be used for non-UDT types + +ORA-17052=This ref is not valid + +ORA-17053=The size is not valid + +ORA-17054=The LOB locator is not valid + +ORA-17055=Invalid character encountered in + +ORA-17056=Non supported character set + +ORA-17057=Closed LOB + +ORA-17058=Internal error: Invalid NLS Conversion ratio + +ORA-17059=Fail to convert to internal representation + +ORA-17060=Fail to construct descriptor + +ORA-17061=Missing descriptor + +ORA-17062=Ref cursor is invalid + +ORA-17063=Not in a transaction + +ORA-17064=Invalid Sytnax or Database name is null + +ORA-17065=Conversion class is null + +ORA-17066=Access layer specific implementation needed + +ORA-17067=Invalid Oracle URL specified + +ORA-17068=Invalid argument(s) in call + +ORA-17069=Use explicit XA call + +ORA-17070=Data size bigger than max size for this type + +ORA-17071=Exceeded maximum VARRAY limit + +ORA-17072=Inserted value too large for column + +ORA-17073=Logical handle no longer valid + +ORA-17074=invalid name pattern + +ORA-17075=Invalid operation for forward only resultset + +ORA-17076=Invalid operation for read only resultset + +ORA-17077=Fail to set REF value + +ORA-17078=Cannot do the operation as connections are already opened + +ORA-17079=User credentials doesn't match the existing ones + +ORA-17080=invalid batch command + +ORA-17081=error occurred during batching + +ORA-17082=No current row + +ORA-17083=Not on the insert row + +ORA-17084=Called on the insert row + +ORA-17085=Value conflicts occurs + +ORA-17086=Undefined column value on the insert row + +ORA-17087=Ignored performance hint: setFetchDirection() + +ORA-17088=Unsupported syntax for requested resultset type and concurrency level +ORA-17089=internal error + +ORA-17090=operation not allowed + +ORA-17091=Unable to create resultset at the requested type and/or concurrency level + +ORA-17092=JDBC statements cannot be created or executed at end of call processing + +ORA-17093=OCI operation returned OCI_SUCCESS_WITH_INFO + +ORA-17094=Object type version mismatched + +ORA-17095=Statement cache size has not been set + +ORA-17096=Statement Caching cannot be enabled for this logical connection. + +ORA-17097=Invalid PL/SQL Index Table element type + +ORA-17098=Invalid empty lob operation + +ORA-17099=Invalid PL/SQL Index Table array length + +ORA-17100=Invalid database Java Object + +ORA-17101=Invalid properties in OCI Connection Pool Object + +ORA-17102=Bfile is read only + +ORA-17103=invalid connection type to return via getConnection. Use getJavaSqlConnection instead + +ORA-17104=SQL statement to execute cannot be empty or null + +ORA-17105=connection session time zone was not set + +ORA-17106=invalid JDBC-OCI driver connection pool configuration specified + +ORA-17107=invalid proxy type specified + +ORA-17108=No max length specified in defineColumnType + +ORA-17109=standard Java character encoding not found + +ORA-17110=execution completed with warning + +ORA-17111=Invalid connection cache TTL timeout specified + +ORA-17112=Invalid thread interval specified + +ORA-17113=Thread interval value is more than the cache timeout value + +ORA-17114=could not use local transaction commit in a global transaction + +ORA-17115=could not use local transaction rollback in a global transaction + +ORA-17116=could not turn on auto-commit in an active global transaction + +ORA-17117=could not set savepoint in an active global transaction + +ORA-17118=could not obtain ID for a named Savepoint + +ORA-17119=could not obtain name for an un-named Savepoint + +ORA-17120=could not set a Savepoint with auto-commit on + +ORA-17121=could not rollback to a Savepoint with auto-commit on + +ORA-17122=could not rollback to a local txn Savepoint in a global transaction + +ORA-17123=Invalid statement cache size specified + +ORA-17124=Invalid connection cache Inactivity timeout specified + +ORA-17125=Improper statement type returned by explicit cache + +ORA-17126=Fixed Wait timeout elapsed + +ORA-17127=Invalid Fixed Wait timeout specified + +ORA-17200=Unable to properly convert XA open string from Java to C + +ORA-17201=Unable to properly convert XA close string from Java to C + +ORA-17202=Unable to properly convert RM name from Java to C + +ORA-17203=Could not casting pointer type to jlong + +ORA-17204=Input array too short to hold OCI handles + +ORA-17205=Failed to obtain OCISvcCtx handle from C-XA using xaoSvcCtx + +ORA-17206=Failed to obtain OCIEnv handle from C-XA using xaoEnv + +ORA-17207=The tnsEntry property was not set in DataSource + +ORA-17213=C-XA returned XAER_RMERR during xa_open + +ORA-17215=C-XA returned XAER_INVAL during xa_open + +ORA-17216=C-XA returned XAER_PROTO during xa_open + +ORA-17233=C-XA returned XAER_RMERR during xa_close + +ORA-17235=C-XA returned XAER_INVAL during xa_close + +ORA-17236=C-XA returned XAER_PROTO during xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protocol violation + +ORA-17402=Only one RPA message is expected + +ORA-17403=Only one RXH message is expected + +ORA-17404=Received more RXDs than expected + +ORA-17405=UAC length is not zero + +ORA-17406=Exceeding maximum buffer length + +ORA-17407=invalid Type Representation(setRep) + +ORA-17408=invalid Type Representation(getRep) + +ORA-17409=invalid buffer length + +ORA-17410=No more data to read from socket + +ORA-17411=Data Type representations mismatch + +ORA-17412=Bigger type length than Maximum + +ORA-17413=Exceding key size + +ORA-17414=Insufficient Buffer size to store Columns Names + +ORA-17415=This type hasn't been handled + +ORA-17416=FATAL + +ORA-17417=NLS Problem, failed to decode column names + +ORA-17418=Internal structure's field length error + +ORA-17419=Invalid number of columns returned + +ORA-17420=Oracle Version not defined + +ORA-17421=Types or Connection not defined + +ORA-17422=Invalid class in factory + +ORA-17423=Using a PLSQL block without an IOV defined + +ORA-17424=Attempting different marshaling operation + +ORA-17425=Returning a stream in PLSQL block + +ORA-17426=Both IN and OUT binds are NULL + +ORA-17427=Using Uninitialized OAC + +ORA-17428=Logon must be called after connect + +ORA-17429=Must be at least connected to server + +ORA-17430=Must be logged on to server + +ORA-17431=SQL Statement to parse is null + +ORA-17432=invalid options in all7 + +ORA-17433=invalid arguments in call + +ORA-17434=not in streaming mode + +ORA-17435=invalid number of in_out_binds in IOV + +ORA-17436=invalid number of outbinds + +ORA-17437=Error in PLSQL block IN/OUT argument(s) + +ORA-17438=Internal - Unexpected value + +ORA-17439=Invalid SQL type + +ORA-17440=DBItem/DBType is null + +ORA-17441=Oracle Version not supported. Minimum supported version is 7.2.3. + +ORA-17442=Refcursor value is invalid + +ORA-17443=Null user or password not supported in THIN driver + +ORA-17444=TTC Protocol version received from server not supported + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/80cf1e1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/80cf1e1698af001c18c4935e001381da new file mode 100644 index 0000000..ee4fb84 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/80cf1e1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/c0889a1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/c0889a1998af001c18c4935e001381da new file mode 100644 index 0000000..f7924b5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/c0889a1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/f05ddd87fca3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/f05ddd87fca3001c1027e59cc3e35e89 new file mode 100644 index 0000000..c078d75 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3b/f05ddd87fca3001c1027e59cc3e35e89 @@ -0,0 +1,40 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + Connection conn = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + conn = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + try { + + + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/005f6e934daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/005f6e934daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..fb4a9b7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/005f6e934daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,198 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getText(); + this.pr.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/00dc1c6dc6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/00dc1c6dc6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..981d69f --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/00dc1c6dc6a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + JOptionPane.showInputDialog(Panneau_Centre); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/502d3d4ac8a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/502d3d4ac8a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..2748112 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/502d3d4ac8a4001c1acc9f54b60f9b57 @@ -0,0 +1,64 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/801ce4bb7ca9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/801ce4bb7ca9001c1d3abf97745a02da new file mode 100644 index 0000000..042fbb6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/801ce4bb7ca9001c1d3abf97745a02da @@ -0,0 +1,55 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(8,35); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + + // Donner un titre notre panneau + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/80234b31c6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/80234b31c6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..5a47997 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/80234b31c6a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + + JOptionPane.showInputDialog("Couillon"); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/d0b425f720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/d0b425f720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..7903d22 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3c/d0b425f720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Vnit\u0159n\u00ed chyba + +ORA-17002=V\u00fdjimka vstupu/v\u00fdstupu + +ORA-17003=Neplatn\u00fd index sloupce + +ORA-17004=Neplatn\u00fd typ sloupce + +ORA-17005=Nepodporovan\u00fd typ sloupce + +ORA-17006=Neplatn\u00fd n\u00e1zev sloupce + +ORA-17007=Neplatn\u00fd dynamick\u00fd sloupec + +ORA-17008=Ukon\u010den\u00e9 p\u0159ipojen\u00ed + +ORA-17009=Uzav\u0159en\u00fd p\u0159\u00edkaz + +ORA-17010=Uzav\u0159en\u00e1 mno\u017eina v\u00fdsledk\u016f + +ORA-17011=Vy\u010derpan\u00e1 mno\u017eina v\u00fdsledk\u016f + +ORA-17012=Konflikt typu parametr\u016f + +ORA-17014=Nebyl vyvol\u00e1n ResultSet.next + +ORA-17015=P\u0159\u00edkaz byl zru\u0161en + +ORA-17016=\u010casov\u00fd limit pro p\u0159\u00edkaz vypr\u0161el + +ORA-17017=Kurzor je ji\u017e inicializov\u00e1n + +ORA-17018=Neplatn\u00fd kurzor + +ORA-17019=Lze popsat jen dotaz + +ORA-17020=Neplatn\u00e9 p\u0159edb\u011b\u017en\u00e9 vyvol\u00e1n\u00ed \u0159\u00e1dku + +ORA-17021=Chyb\u011bj\u00edc\u00ed definice + +ORA-17022=Chyb\u011bj\u00edc\u00ed definice v indexu + +ORA-17023=Nepodporovan\u00e1 funkce + +ORA-17024=Nena\u010dtena \u017e\u00e1dn\u00e1 data + +ORA-17025=Chyba v defines.isNull () + +ORA-17026=\u010c\u00edseln\u00e9 p\u0159ete\u010den\u00ed + +ORA-17027=Proud dat je ji\u017e uzav\u0159en + +ORA-17028=Nelze prov\u00e1d\u011bt nov\u00e9 definice, dokud nebude uzav\u0159ena aktu\u00e1ln\u00ed mno\u017eina v\u00fdsledk\u016f + +ORA-17029=setReadOnly: Spojen\u00ed Read-only nejsou podporov\u00e1na + +ORA-17030=READ_COMMITTED a SERIALIZABLE jsou jedin\u00e9 platn\u00e9 \u00farovn\u011b transakc\u00ed + +ORA-17031=setAutoClose: Podpora jen zapnut\u00e9ho re\u017eimu automatick\u00e9ho zav\u00edr\u00e1n\u00ed + +ORA-17032=nelze nastavit p\u0159edb\u011b\u017en\u00e9 vyvol\u00e1n\u00ed \u0159\u00e1dku na nulu + +ORA-17033=Chybn\u011b formulovan\u00fd \u0159et\u011bzec SQL92 na pozici + +ORA-17034=Nepodporovan\u00e1 lexik\u00e1ln\u00ed jednotka SQL92 na pozici + +ORA-17035=Nepodporovan\u00e1 znakov\u00e1 sada !! + +ORA-17036=v\u00fdjimka v OracleNumber + +ORA-17037=Selh\u00e1n\u00ed p\u0159i konverzi mezi UTF8 a UCS2 + +ORA-17038=Nedostate\u010dn\u00e1 d\u00e9lka bajtov\u00e9ho pole + +ORA-17039=Nedostate\u010dn\u00e1 d\u00e9lka znakov\u00e9ho pole + +ORA-17040=Je t\u0159eba zadat Sub Protokol v p\u0159ipojovac\u00ed URL + +ORA-17041=Chyb\u011bj\u00edc\u00ed parametr IN nebo OUT v indexu: + +ORA-17042=Neplatn\u00e1 hodnota d\u00e1vky + +ORA-17043=Neplatn\u00e1 maxim\u00e1ln\u00ed velikost toku + +ORA-17044=Vnit\u0159n\u00ed chyba: Nebylo alokov\u00e1no datov\u00e9 pole + +ORA-17045=Vnit\u0159n\u00ed chyba: Pokus o p\u0159\u00edstup k vazebn\u00edm hodnot\u00e1m mimo hodnotu d\u00e1vky + +ORA-17046=Vnit\u0159n\u00ed chyba: Neplatn\u00fd index pro p\u0159\u00edstup k dat\u016fm + +ORA-17047=Chyba v anal\u00fdze Deskriptoru typu + +ORA-17048=Nedefinovan\u00fd typ + +ORA-17049=Nekonzistentn\u00ed typy objektu java a sql + +ORA-17050=\u017e\u00e1dn\u00fd takov\u00fd prvek ve vektoru + +ORA-17051=Toto API nelze pou\u017e\u00edt pro jin\u00fd typ ne\u017e UDT + +ORA-17052=Tento odkaz je neplatn\u00fd + +ORA-17053=Tato velikost je neplatn\u00e1 + +ORA-17054=Lok\u00e1tor LOB je neplatn\u00fd + +ORA-17055=Nalezen neplatn\u00fd znak v + +ORA-17056=Nepodporovan\u00e1 znakov\u00e1 sada + +ORA-17057=Uzav\u0159en\u00fd LOB + +ORA-17058=Vnit\u0159n\u00ed chyba: Neplatn\u00fd p\u0159evodov\u00fd pom\u011br NLS + +ORA-17059=Selh\u00e1n\u00ed p\u0159i p\u0159evodu na vnit\u0159n\u00ed reprezentaci + +ORA-17060=Selh\u00e1n\u00ed p\u0159i vytv\u00e1\u0159en\u00ed deskriptoru + +ORA-17061=Chyb\u011bj\u00edc\u00ed deskriptor + +ORA-17062=Kurzor odkazu je neplatn\u00fd + +ORA-17063=Nen\u00ed v transakci + +ORA-17064=Neplatn\u00e1 syntaxe nebo pr\u00e1zdn\u00fd n\u00e1zev datab\u00e1ze + +ORA-17065=P\u0159evodn\u00ed t\u0159\u00edda je pr\u00e1zdn\u00e1 + +ORA-17066=Je t\u0159eba specifick\u00e9 zaveden\u00ed \u00farovn\u011b p\u0159\u00edstupu + +ORA-17067=Neplatn\u011b zadan\u00e1 Oracle URL + +ORA-17068=Vol\u00e1n\u00ed neplatn\u00e9ho argumentu(-\u016f) + +ORA-17069=Pou\u017eijte z\u0159eteln\u00e9 vol\u00e1n\u00ed XA + +ORA-17070=Velikost dat je v\u011bt\u0161\u00ed ne\u017e maxim\u00e1ln\u00ed velikost pro tento typ + +ORA-17071=P\u0159ekro\u010den maxim\u00e1ln\u00ed limit VARRAY + +ORA-17072=Vlo\u017een\u00e1 hodnota je pro sloupec p\u0159\u00edli\u0161 velk\u00e1 + +ORA-17073=Logick\u00fd odkaz ji\u017e neplat\u00ed + +ORA-17074=neplatn\u00fd vzor n\u00e1zvu + +ORA-17075=Neplatn\u00e1 operace pro mno\u017einu v\u00fdsledk\u016f jen pro p\u0159ed\u00e1n\u00ed + +ORA-17076=Neplatn\u00e1 operace pro mno\u017einu v\u00fdsledk\u016f jen pro \u010dten\u00ed + +ORA-17077=Selhalo nastaven\u00ed hodnoty REF + +ORA-17078=Nelze prov\u00e9st operaci, proto\u017ee p\u0159ipojen\u00ed je ji\u017e otev\u0159eno + +ORA-17079=Ov\u011b\u0159ovac\u00ed \u00fadaje u\u017eivatele neodpov\u00edd\u00e1 st\u00e1vaj\u00edc\u00edm \u00fadaj\u016fm + +ORA-17080=neplatn\u00fd p\u0159\u00edkaz d\u00e1vky + +ORA-17081=p\u0159i vytv\u00e1\u0159en\u00ed d\u00e1vky se vyskytla chyba + +ORA-17082=Nen\u00ed aktu\u00e1ln\u00ed \u0159\u00e1dek + +ORA-17083=Nen\u00ed na vlo\u017een\u00e9m \u0159\u00e1dku + +ORA-17084=Vol\u00e1no na vlo\u017een\u00e9m \u0159\u00e1dku + +ORA-17085=Doch\u00e1z\u00ed ke konflikt\u016fm hodnot + +ORA-17086=Ve vlo\u017een\u00e9m \u0159\u00e1dku je nedefinovan\u00e1 hodnota sloupce + +ORA-17087=Ignorovan\u00e9 upozorn\u011bn\u00ed na v\u00fdkon: setFetchDirection() + +ORA-17088=Nepodporovan\u00e1 syntaxe pro po\u017eadovan\u00fd typ mno\u017einy v\u00fdsledk\u016f a \u00farove\u0148 soub\u011b\u017en\u00e9ho zpracov\u00e1n\u00ed +ORA-17089=vnit\u0159n\u00ed chyba + +ORA-17090=operace nen\u00ed povolena + +ORA-17091=Nelze vytvo\u0159it mno\u017einu v\u00fdsledk\u016f po\u017eadovan\u00e9ho typu nebo na soub\u011b\u017en\u00e9 \u00farovni + +ORA-17092=Na konci zpracov\u00e1n\u00ed vol\u00e1n\u00ed nelze vytvo\u0159it ani prov\u00e9st p\u0159\u00edkazy JDBC + +ORA-17093=Operace OCI vr\u00e1tila OCI_SUCCESS_WITH_INFO + +ORA-17094=Nen\u00ed shoda verze typu objektu + +ORA-17095=Velikost vyrovn\u00e1vac\u00ed pam\u011bti p\u0159\u00edkazu nebyla nastavena + +ORA-17096=Ukl\u00e1d\u00e1n\u00ed p\u0159\u00edkaz\u016f do vyrovn\u00e1vac\u00ed pam\u011bti nelze pro toto logick\u00e9 p\u0159ipojen\u00ed aktivovat + +ORA-17097=Neplatn\u00fd typ prvku tabulky indexu PL/SQL + +ORA-17098=Neplatn\u00e1 pr\u00e1zdn\u00e1 operace lob + +ORA-17099=Neplatn\u00e1 d\u00e9lka pole indexov\u00e9 tabulky PL/SQL + +ORA-17100=Neplatn\u00e1 datab\u00e1ze Java Object + +ORA-17101=Neplatn\u00e9 vlastnosti v OCI Connection Pool Object + +ORA-17102=Bfile je jen ke \u010dten\u00ed + +ORA-17103=getConnection vr\u00e1til neplatn\u00fd typ spojen\u00ed. M\u00edsto toho pou\u017eijte getJavaSqlConnection + +ORA-17104=P\u0159\u00edkaz SQL, kter\u00fd se m\u00e1 prov\u00e9st, nesm\u00ed b\u00fdt pr\u00e1zdn\u00fd nebo nab\u00fdvat hondoty null + +ORA-17105=nebyla nastavena \u010dasov\u00e1 z\u00f3na pro relaci p\u0159ipojen\u00ed + +ORA-17106=byla specifikov\u00e1na neplatn\u00e1 konfigurace fondu p\u0159ipojen\u00ed ovlada\u010de JDBC-OCI + +ORA-17107=byl specifikov\u00e1n neplatn\u00fd typ proxy + +ORA-17108=Nebyla specifikov\u00e1na maxim\u00e1ln\u00ed d\u00e9lka v defineColumnType + +ORA-17109=nebylo nalezeno standardn\u00ed k\u00f3dov\u00e1n\u00ed znak\u016f Java + +ORA-17110=prov\u00e1d\u011bn\u00ed k\u00f3du bylo dokon\u010deno s varov\u00e1n\u00edm + +ORA-17111=Byl specifikov\u00e1n neplatn\u00fd \u010dasov\u00fd limit TTL pam\u011bti cache pro p\u0159ipojen\u00ed + +ORA-17112=Byl specifikov\u00e1n neplatn\u00fd interval vl\u00e1kna + +ORA-17113=Hodnota intervalu vl\u00e1kna je v\u011bt\u0161\u00ed ne\u017e hodnota \u010dasov\u00e9ho limitu pam\u011bti cache + +ORA-17114=nebylo mo\u017en\u00e9 pou\u017e\u00edt potvrzen\u00ed lok\u00e1ln\u00ed transakce v glob\u00e1ln\u00ed transakci + +ORA-17115=nebylo mo\u017en\u00e9 pou\u017e\u00edt n\u00e1vrat lok\u00e1ln\u00ed transakce v glob\u00e1ln\u00ed transakci + +ORA-17116=nebylo mo\u017en\u00e9 zapnout automatick\u00e9 potvrzen\u00ed v aktivn\u00ed glob\u00e1ln\u00ed transakci + +ORA-17117=nebylo mo\u017en\u00e9 nastavit bod ulo\u017een\u00ed v aktivn\u00ed glob\u00e1ln\u00ed transakci + +ORA-17118=nebylo mo\u017en\u00e9 z\u00edskat ID pro pojmenovan\u00fd bod ulo\u017een\u00ed + +ORA-17119=nebylo mo\u017en\u00e9 z\u00edskat ID pro nepojmenovan\u00fd bod ulo\u017een\u00ed + +ORA-17120=nebylo mo\u017en\u00e9 nastavit bod ulo\u017een\u00ed se zapnut\u00fdm automatick\u00fdm potvrzen\u00edm + +ORA-17121=nebylo mo\u017en\u00e9 prov\u00e9st n\u00e1vrat do bodu ulo\u017een\u00ed se zapnut\u00fdm automatick\u00fdm potvrzen\u00edm + +ORA-17122=nebylo mo\u017en\u00e9 prov\u00e9st n\u00e1vrat do lok\u00e1ln\u00edho bodu ulo\u017een\u00ed txn v glob\u00e1ln\u00ed transakci + +ORA-17123=Byla specifikov\u00e1na neplatn\u00e1 velikost pam\u011bti cache p\u0159\u00edkazu + +ORA-17124=Byl specifikov\u00e1n neplatn\u00fd \u010dasov\u00fd limit ne\u010dinnosti pam\u011bti cache pro p\u0159ipojen\u00ed + +ORA-17200=Nelze spr\u00e1vn\u011b konvertovat otev\u0159en\u00fd \u0159et\u011bzec XA z Java do C + +ORA-17201=Nelze spr\u00e1vn\u011b konvertovat zav\u0159en\u00fd \u0159et\u011bzec XA z Java do C + +ORA-17202=Nelze spr\u00e1vn\u011b konvertovat n\u00e1zev RM z Java do C + +ORA-17203=Nebylo mo\u017en\u00e9 zm\u011bnit typ ukazatele na jlong + +ORA-17204=Vstupn\u00ed pole je p\u0159\u00edli\u0161 kr\u00e1tk\u00e9, aby se do n\u011bj ve\u0161ly deskriptory OCI + +ORA-17205=Selhalo z\u00edsk\u00e1n\u00ed deskriptoru OCISvcCtx z C-XA pomoc\u00ed xaoSvcCtx + +ORA-17206=Selhalo z\u00edsk\u00e1n\u00ed deskriptoru OCIEnv z C-XA pomoc\u00ed xaoEnv + +ORA-17207=Vlastnost tnsEntry nebyla v DataSource nastavena + +ORA-17213=C-XA vr\u00e1til XAER_RMERR b\u011bhem xa_open + +ORA-17215=C-XA vr\u00e1til XAER_INVAL b\u011bhem xa_open + +ORA-17216=C-XA vr\u00e1til XAER_PROTO b\u011bhem xa_open + +ORA-17233=C-XA vr\u00e1til XAER_RMERR b\u011bhem xa_close + +ORA-17235=C-XA vr\u00e1til XAER_INVAL b\u011bhem xa_close + +ORA-17236=C-XA vr\u00e1til XAER_PROTO b\u011bhem xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Poru\u0161en\u00ed protokolu + +ORA-17402=O\u010dek\u00e1v\u00e1 se pouze jedna zpr\u00e1va RPA + +ORA-17403=O\u010dek\u00e1v\u00e1 se pouze jedna zpr\u00e1va RXH + +ORA-17404=P\u0159ijato v\u00edce RXD ne\u017e bylo o\u010dek\u00e1v\u00e1no + +ORA-17405=D\u00e9lka UAC nen\u00ed nulov\u00e1 + +ORA-17406=P\u0159ekro\u010dena maxim\u00e1ln\u00ed d\u00e9lka vyrovn\u00e1vac\u00ed pam\u011bti + +ORA-17407=Neplatn\u00e1 reprezentace typu(setRep) + +ORA-17408=Neplatn\u00e1 reprezentace typu(getRep) + +ORA-17409=neplatn\u00e1 d\u00e9lka vyrovn\u00e1vac\u00ed pam\u011bti + +ORA-17410=\u017d\u00e1dn\u00e1 dal\u0161\u00ed data ke \u010dten\u00ed ze soketu + +ORA-17411=Neshoda reprezentace typu dat + +ORA-17412=D\u00e9lka typu v\u011bt\u0161\u00ed ne\u017e maximum + +ORA-17413=P\u0159ekro\u010den\u00ed velikosti kl\u00ed\u010de + +ORA-17414=Nedostate\u010dn\u00e1 velikost vyrovn\u00e1vac\u00ed pam\u011bti pro ulo\u017een\u00ed n\u00e1zv\u016f sloupc\u016f + +ORA-17415=Tento typ nebyl zpracov\u00e1v\u00e1n + +ORA-17416=FATAL + +ORA-17417=Probl\u00e9m NLS, selh\u00e1n\u00ed p\u0159i dek\u00f3dov\u00e1n\u00ed n\u00e1zv\u016f sloupc\u016f + +ORA-17418=Chyba v d\u00e9lce pole intern\u00ed struktury + +ORA-17419=Vr\u00e1cen neplatn\u00fd po\u010det sloupc\u016f + +ORA-17420=Verze Oracle nen\u00ed definov\u00e1na + +ORA-17421=Nejsou definov\u00e1ny typy nebo p\u0159ipojen\u00ed + +ORA-17422=Neplatn\u00e1 t\u0159\u00edda v producentovi + +ORA-17423=Pou\u017eit\u00ed bloku PLSQL bez definov\u00e1n\u00ed IOV + +ORA-17424=Pokus o r\u016fzn\u00e9 marshaling operace (konverze na line\u00e1rn\u00ed tok dat) + +ORA-17425=Vr\u00e1cen\u00ed proudu dat v bloku PLSQL + +ORA-17426=P\u0159i\u0159azen\u00ed IN i OUT je PR\u00c1ZDN\u00c9 + +ORA-17427=Pou\u017eit\u00ed neinicializovan\u00e9ho OAC + +ORA-17428=po p\u0159ipojen\u00ed je t\u0159eba vyvolat vytvo\u0159en\u00ed spojen\u00ed + +ORA-17429=Mus\u00ed b\u00fdt alespo\u0148 p\u0159ipojen k serveru + +ORA-17430=Mus\u00ed b\u00fdt p\u0159ihl\u00e1\u0161en k serveru + +ORA-17431=P\u0159\u00edkaz SQL pro odd\u011blen\u00ed je pr\u00e1zdn\u00fd + +ORA-17432=neplatn\u00e9 volby v all7 + +ORA-17433=vol\u00e1n\u00ed neplatn\u00fdch argument\u016f + +ORA-17434=nen\u00ed v proudov\u00e9m re\u017eimu + +ORA-17435=neplatn\u00fd po\u010det in_out_binds v IOV + +ORA-17436=neplatn\u00fd po\u010det outbinds + +ORA-17437=Chyba v argumentu(-ech) IN/OUT v bloku PLSQL + +ORA-17438=Intern\u00ed - neo\u010dek\u00e1van\u00e1 hodnota + +ORA-17439=Neplatn\u00fd typ SQL + +ORA-17440=DBItem/DBType je pr\u00e1zdn\u00fd + +ORA-17441=Nepodporovan\u00e1 verze Oracle. Minim\u00e1ln\u00ed podporovan\u00e1 verze je 7.2.3. + +ORA-17442=Hodnota odkazov\u00e9ho kurzoru je neplatn\u00e1 + +ORA-17443=Pr\u00e1zdn\u00fd u\u017eivatel nebo heslo nen\u00ed podporov\u00e1no v ovl\u00e1da\u010di THIN + +ORA-17444=Nepodporovan\u00e1 verze protokolu TTC p\u0159ijat\u00e1 ze serveru + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/4049434106a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/4049434106a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..62bb026 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/4049434106a4001c1027e59cc3e35e89 @@ -0,0 +1,91 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes + //int i = rsmd.getColumnCount(); + // System.out.println("Nombre de colonne: " + i); + + for(int j = 1; j < i; j++){ + System.out.print(rsmd.getColumnName(j) + " "); + } + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/6062a31998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/6062a31998af001c18c4935e001381da new file mode 100644 index 0000000..e3cdfef Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/6062a31998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/d00cd01898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/d00cd01898af001c18c4935e001381da new file mode 100644 index 0000000..beb5c5a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/d00cd01898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/d06ad81b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/d06ad81b98af001c18c4935e001381da new file mode 100644 index 0000000..e27b16e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/d06ad81b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/e077fc6f4eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/e077fc6f4eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..37897e5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/e077fc6f4eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,193 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + + // Rcupration des donnes entres par l'utilisateur + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getPassword().toString(); + + // Affichage du message de configurmation + this.pr.confirmationConnexion(this.serveur); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/f0ea2f1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/f0ea2f1a98af001c18c4935e001381da new file mode 100644 index 0000000..3936da5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3d/f0ea2f1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/007f8c1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/007f8c1998af001c18c4935e001381da new file mode 100644 index 0000000..7055f33 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/007f8c1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/20edb8ee4eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/20edb8ee4eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..19114d1 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/20edb8ee4eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private IHMConnexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void confirmationConnexion(String chaine){ + int resultatConfirmation; + resultatConfirmation = JOptionPane.showConfirmDialog(null, chaine.toString(), "Confirmation" ,JOptionPane.YES_NO_OPTION); + if(resultatConfirmation == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/602eedf820af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/602eedf820af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..e080447 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/602eedf820af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430 + +ORA-17002=\u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u0432\u043e\u0434\u0430/\u0432\u044b\u0432\u043e\u0434\u0430 + +ORA-17003=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17004=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17005=\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u0442\u0438\u043f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17006=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0438\u043c\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17007=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 + +ORA-17008=\u0417\u0430\u043a\u0440\u044b\u0442\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 + +ORA-17009=\u0417\u0430\u043a\u0440\u044b\u0442\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 + +ORA-17010=\u0417\u0430\u043a\u0440\u044b\u0442\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17011=\u0418\u0441\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17012=\u041a\u043e\u043d\u0444\u043b\u0438\u043a\u0442 \u0442\u0438\u043f\u043e\u0432 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 + +ORA-17014=\u041d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d \u0432\u044b\u0437\u043e\u0432 ResultSet.next + +ORA-17015=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0431\u044b\u043b\u0430 \u043e\u0442\u043c\u0435\u043d\u0435\u043d\u0430 + +ORA-17016=\u0412\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0438\u0441\u0442\u0435\u043a\u043b\u043e + +ORA-17017=\u041a\u0443\u0440\u0441\u043e\u0440 \u0443\u0436\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d + +ORA-17018=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c + +ORA-17019=\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043e\u0447\u0435\u0440\u0435\u0434\u0438 + +ORA-17020=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u0443\u043f\u0440\u0435\u0436\u0434\u0430\u044e\u0449\u0430\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430 \u0441\u0442\u0440\u043e\u043a\u0438 + +ORA-17021=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f + +ORA-17022=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0432 \u0438\u043d\u0434\u0435\u043a\u0441\u0435 + +ORA-17023=\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f + +ORA-17024=\u0414\u0430\u043d\u043d\u044b\u0435 \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u043d\u044b + +ORA-17025=\u041e\u0448\u0438\u0431\u043a\u0430 \u0432 defines.isNull () + +ORA-17026=\u041f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 + +ORA-17027=\u041f\u043e\u0442\u043e\u043a \u0443\u0436\u0435 \u0437\u0430\u043a\u0440\u044b\u0442 + +ORA-17028=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f, \u043f\u043e\u043a\u0430 \u0437\u0430\u043a\u0440\u044b\u0442 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17029=setReadOnly: \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \"\u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f\" \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f + +ORA-17030=\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0443\u0440\u043e\u0432\u043d\u0438 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 READ_COMMITTED \u0438 SERIALIZABLE + +ORA-17031=setAutoClose: \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0436\u0438\u043c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f + +ORA-17032=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0432\u044b\u0431\u043e\u0440\u043a\u0443 \u0441\u0442\u0440\u043e\u043a\u0438 \u043d\u0430 \u043d\u043e\u043b\u044c + +ORA-17033=\u0421\u0442\u0440\u043e\u043a\u0430 SQL92 \u043d\u0435\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0432 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 + +ORA-17034=\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u043c\u0430\u0440\u043a\u0435\u0440 SQL92 \u0432 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 + +ORA-17035=\u041d\u0430\u0431\u043e\u0440 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f !! + +ORA-17036=\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432 OracleNumber + +ORA-17037=\u0421\u0431\u043e\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 UTF8 \u0438 UCS2 + +ORA-17038=\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0431\u0430\u0439\u0442\u043e\u0432 + +ORA-17039=\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 char + +ORA-17040=\u0412 URL \u0434\u043b\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u043d \u0441\u0443\u0431\u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b + +ORA-17041=\u0412 \u0438\u043d\u0434\u0435\u043a\u0441\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 IN \u0438\u043b\u0438 OUT: + +ORA-17042=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0430\u043a\u0435\u0442\u0430 + +ORA-17043=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u043e\u0442\u043e\u043a\u0430 + +ORA-17044=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043c\u0430\u0441\u0441\u0438\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d + +ORA-17045=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c \u0432\u043d\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u0430\u043a\u0435\u0442\u0430 + +ORA-17046=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0434\u0430\u043d\u043d\u044b\u043c + +ORA-17047=\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u0440\u0430\u0437\u0431\u043e\u0440\u0435 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430 \u0442\u0438\u043f\u0430 + +ORA-17048=\u041d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0442\u0438\u043f + +ORA-17049=\u041d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u0435 \u0442\u0438\u043f\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 java \u0438 sql + +ORA-17050=\u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u0430\u043a\u043e\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 + +ORA-17051=\u0414\u0430\u043d\u043d\u044b\u0439 API \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0442\u0438\u043f\u043e\u0432, \u043d\u0435 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0445 \u043a UDT + +ORA-17052=\u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u0430 + +ORA-17053=\u0414\u0430\u043d\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c + +ORA-17054=\u0414\u0430\u043d\u043d\u044b\u0439 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f LOB \u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u0435\u043d + +ORA-17055=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0441\u0438\u043c\u0432\u043e\u043b \u0432 + +ORA-17056=\u041d\u0435\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 + +ORA-17057=\u0417\u0430\u043a\u0440\u044b\u0442\u044b\u0439 LOB + +ORA-17058=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f NLS + +ORA-17059=\u0421\u0431\u043e\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 + +ORA-17060=\u0421\u0431\u043e\u0439 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430 + +ORA-17061=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440 + +ORA-17062=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c Ref + +ORA-17063=\u041d\u0435 \u0432 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17064=\u0421\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u0438\u043b\u0438 \u043f\u0443\u0441\u0442\u043e\u0435 \u0438\u043c\u044f \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 + +ORA-17065=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u043a\u043b\u0430\u0441\u0441 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f + +ORA-17066=\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0443\u0440\u043e\u0432\u043d\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 + +ORA-17067=\u0417\u0430\u0434\u0430\u043d \u043d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 URL Oracle + +ORA-17068=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439(\u0435) \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442(\u044b) \u0432 \u0432\u044b\u0437\u043e\u0432\u0435 + +ORA-17069=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u044f\u0432\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432 XA + +ORA-17070=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d \u0440\u0430\u0437\u043c\u0435\u0440 \u0434\u0430\u043d\u043d\u044b\u0445, \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0442\u0438\u043f\u0430 + +ORA-17071=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 VARRAY + +ORA-17072=\u0412\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0434\u043b\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 + +ORA-17073=\u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u0431\u043e\u043b\u0435\u0435 \u043d\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u0435\u043d + +ORA-17074=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0448\u0430\u0431\u043b\u043e\u043d \u0438\u043c\u0435\u043d\u0438 + +ORA-17075=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17076=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0433\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f \u043d\u0430\u0431\u043e\u0440\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17077=\u0421\u0431\u043e\u0439 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f REF + +ORA-17078=\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0443\u0436\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u044b + +ORA-17079=\u0420\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u0430\u043c + +ORA-17080=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043f\u0430\u043a\u0435\u0442\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 + +ORA-17081=\u043e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u043f\u0430\u043a\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 + +ORA-17082=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 + +ORA-17083=\u041d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 + +ORA-17084=\u041e\u0431\u0440\u0430\u0442\u0438\u0432\u0448\u0438\u0439\u0441\u044f \u043a \u0441\u0442\u0440\u043e\u043a\u0435 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 + +ORA-17085=\u0412\u043e\u0437\u043d\u0438\u043a \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 + +ORA-17086=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 + +ORA-17087=\u041f\u0440\u043e\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043e\u0432\u0435\u0442 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438: setFetchDirection() + +ORA-17088=\u041d\u0435\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u0434\u043b\u044f \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u043d\u0430\u0431\u043e\u0440\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0438 \u0443\u0440\u043e\u0432\u043d\u044f \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c\u0430 +ORA-17089=\u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430 + +ORA-17090=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f + +ORA-17091=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0441 \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u044b\u043c \u0442\u0438\u043f\u043e\u043c \u0438/\u0438\u043b\u0438 \u0443\u0440\u043e\u0432\u043d\u0435\u043c \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c\u0430 + +ORA-17092=\u0412 \u043a\u043e\u043d\u0446\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u044b\u0437\u043e\u0432\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 JDBC \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e + +ORA-17093=\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u044f OCI \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b\u0430 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u041d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0442\u0438\u043f\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 + +ORA-17095=\u041d\u0435 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u0440\u0430\u0437\u043c\u0435\u0440 \u043a\u044d\u0448\u0430 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 + +ORA-17096=\u0414\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0430\u043a\u0442\u0438\u0432\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432. + +ORA-17097=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 PL/SQL + +ORA-17098=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0441 \u043f\u0443\u0441\u0442\u044b\u043c LOB + +ORA-17099=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 PL/SQL + +ORA-17100=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 Java-\u043e\u0431\u044a\u0435\u043a\u0442 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 + +ORA-17101=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043f\u0443\u043b\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 OCI + +ORA-17102=\u0414\u0432\u043e\u0438\u0447\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432\u043d\u044b\u0439 \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f + +ORA-17103=\u043d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u0442\u0438\u043f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0430 \u0447\u0435\u0440\u0435\u0437 getConnection. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 getJavaSqlConnection + +ORA-17104=\u041f\u043e\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 SQL \u043d\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0443\u0441\u0442\u044b\u043c \u0438\u043b\u0438 \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c + +ORA-17105=\u043d\u0435 \u0437\u0430\u0434\u0430\u043d \u0447\u0430\u0441\u043e\u0432\u043e\u0439 \u043f\u043e\u044f\u0441 \u0441\u0435\u0430\u043d\u0441\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f + +ORA-17106=\u0437\u0430\u0434\u0430\u043d\u0430 \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043f\u0443\u043b\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 JDBC-OCI + +ORA-17107=\u0437\u0430\u0434\u0430\u043d \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u043c\u043e\u0434\u0443\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 + +ORA-17108=\u0412 defineColumnType \u043d\u0435 \u0437\u0430\u0434\u0430\u043d\u0430 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 + +ORA-17109=\u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0435 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 Java + +ORA-17110=\u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e \u0441 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435\u043c + +ORA-17111=\u0417\u0430\u0434\u0430\u043d\u043e \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0436\u0438\u0437\u043d\u0438 \u0434\u043b\u044f \u043a\u044d\u0448\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 + +ORA-17112=\u0417\u0430\u0434\u0430\u043d \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u0442\u043e\u043a\u0430\u043c\u0438 + +ORA-17113=\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430 \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u0442\u043e\u043a\u0430\u043c\u0438 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u043a\u044d\u0448\u0430 + +ORA-17114=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0438\u043a\u0441\u0430\u0446\u0438\u044e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17115=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u043a\u0430\u0442 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17116=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u0444\u0438\u043a\u0441\u0430\u0446\u0438\u044e \u0432 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17117=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u0442\u043e\u0447\u043a\u0443 \u043e\u0442\u043a\u0430\u0442\u0430 \u0432 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17118=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0434\u043b\u044f \u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u043e\u0442\u043a\u0430\u0442\u0430 + +ORA-17119=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u043c\u044f \u0434\u043b\u044f \u0431\u0435\u0437\u044b\u043c\u044f\u043d\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u043e\u0442\u043a\u0430\u0442\u0430 + +ORA-17120=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c \u0442\u043e\u0447\u043a\u0443 \u043e\u0442\u043a\u0430\u0442\u0430 \u0441\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0430\u0432\u0442\u043e\u0444\u0438\u043a\u0441\u0430\u0446\u0438\u0435\u0439 + +ORA-17121=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u0442\u043e\u0447\u043a\u0435 \u043e\u0442\u043a\u0430\u0442\u0430 \u0441\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0430\u0432\u0442\u043e\u0444\u0438\u043a\u0441\u0430\u0446\u0438\u0435\u0439 + +ORA-17122=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435 \u043e\u0442\u043a\u0430\u0442\u0430 txn \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17123=\u0417\u0430\u0434\u0430\u043d \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043a\u044d\u0448\u0430 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 + +ORA-17124=\u0417\u0430\u0434\u0430\u043d\u043e \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u0431\u0435\u0437\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043a\u044d\u0448\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 + +ORA-17200=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f XA \u0438\u0437 Java \u0432 C + +ORA-17201=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f XA \u0438\u0437 Java \u0432 C + +ORA-17202=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u043c\u044f RM \u0438\u0437 Java \u0432 C + +ORA-17203=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0438\u043f \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f \u0432 jlong + +ORA-17204=\u0412\u0445\u043e\u0434\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0438\u043c\u0435\u0435\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043c\u0430\u043b\u0443\u044e \u0434\u043b\u0438\u043d\u0443 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 OCI + +ORA-17205=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c OCISvcCtx \u0438\u0437 C-XA \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e xaoSvcCtx + +ORA-17206=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c OCIEnv \u0438\u0437 C-XA \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e xaoEnv + +ORA-17207=\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u043e tnsEntry \u043d\u0435 \u0437\u0430\u0434\u0430\u043d\u043e \u0432 DataSource + +ORA-17213=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_RMERR \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_open + +ORA-17215=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_INVAL \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_open + +ORA-17216=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_PROTO \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_open + +ORA-17233=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_RMERR \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_close + +ORA-17235=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_INVAL \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_close + +ORA-17236=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_PROTO \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u041d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 + +ORA-17402=\u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 RPA + +ORA-17403=\u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 RXH + +ORA-17404=\u0427\u0438\u0441\u043b\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 RXD \u0431\u043e\u043b\u044c\u0448\u0435 \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u043e\u0433\u043e + +ORA-17405=\u0414\u043b\u0438\u043d\u0430 UAC \u043d\u0435 \u0440\u0430\u0432\u043d\u0430 \u043d\u0443\u043b\u044e + +ORA-17406=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u0443\u0444\u0435\u0440\u0430 + +ORA-17407=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f Representation(setRep) + +ORA-17408=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f Representation(getRep) + +ORA-17409=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u0443\u0444\u0435\u0440\u0430 + +ORA-17410=\u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438\u0437 \u0441\u043e\u043a\u0435\u0442\u0430 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 + +ORA-17411=\u041d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0432\u043d\u0443\u0442\u0440. \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0438\u043f\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 + +ORA-17412=\u0414\u043b\u0438\u043d\u0430 \u0442\u0438\u043f\u0430 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c + +ORA-17413=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043a\u043b\u044e\u0447\u0430 + +ORA-17414=\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u0443\u0444\u0435\u0440\u0430 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438\u043c\u0435\u043d \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 + +ORA-17415=\u0414\u0430\u043d\u043d\u044b\u0439 \u0442\u0438\u043f \u043d\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d + +ORA-17416=FATAL + +ORA-17417=\u041e\u0448\u0438\u0431\u043a\u0430 NLS, \u0441\u0431\u043e\u0439 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043c\u0435\u043d \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 + +ORA-17418=\u041e\u0448\u0438\u0431\u043a\u0430 \u0434\u043b\u0438\u043d\u044b \u043f\u043e\u043b\u044f \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b + +ORA-17419=\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u043e \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 + +ORA-17420=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f Oracle + +ORA-17421=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0442\u0438\u043f\u044b \u0438\u043b\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 + +ORA-17422=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 \u0432 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0435 + +ORA-17423=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u043b\u043e\u043a\u0430 PLSQL \u0431\u0435\u0437 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f IOV + +ORA-17424=\u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0434\u0440\u0443\u0433\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043c\u0430\u0440\u0448\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 + +ORA-17425=\u0412\u043e\u0437\u0432\u0440\u0430\u0442 \u043f\u043e\u0442\u043e\u043a\u0430 \u0432 \u0431\u043b\u043e\u043a PLSQL + +ORA-17426=\u0421\u0432\u044f\u0437\u0438 IN \u0438 OUT \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b + +ORA-17427=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e OAC + +ORA-17428=\u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0437\u043e\u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 + +ORA-17429=\u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c + +ORA-17430=\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u043e\u0439\u0442\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 + +ORA-17431=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 SQL \u0434\u043b\u044f \u0440\u0430\u0437\u0431\u043e\u0440\u0430 \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 + +ORA-17432=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0432 all7 + +ORA-17433=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b \u0432 \u0432\u044b\u0437\u043e\u0432\u0435 + +ORA-17434=\u043d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043f\u043e\u0442\u043e\u043a\u043e\u0432\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 + +ORA-17435=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0447\u0438\u0441\u043b\u043e in_out_binds \u0432 IOV + +ORA-17436=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0441\u0432\u044f\u0437\u0435\u0439 + +ORA-17437=\u041e\u0448\u0438\u0431\u043a\u0430 \u0432 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0435(\u0430\u0445) IN/OUT \u0431\u043b\u043e\u043a\u0430 PLSQL + +ORA-17438=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f - \u043d\u0435\u043f\u0440\u0435\u0434\u0432\u0438\u0434\u0435\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 + +ORA-17439=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f SQL + +ORA-17440=DBItem/DBType \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d + +ORA-17441=\u042d\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f Oracle \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0435 \u043d\u0438\u0436\u0435 7.2.3. + +ORA-17442=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 Refcursor + +ORA-17443=\u0412 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0435 THIN \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0438 \u043f\u0430\u0440\u043e\u043b\u0438 + +ORA-17444=\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0430\u044f \u0438\u0437 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 TTC \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/a0b8715903af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/a0b8715903af001c14499bdcdfff58b3 new file mode 100644 index 0000000..2360d7a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/a0b8715903af001c14499bdcdfff58b3 @@ -0,0 +1,141 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + + + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + connection = null; + + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/b0379e53c6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/b0379e53c6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..036a821 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/b0379e53c6a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + + JOptionPane.showInputDialog(); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/b0382d1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/b0382d1498af001c18c4935e001381da new file mode 100644 index 0000000..e5118e3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/b0382d1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/e02925f520af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/e02925f520af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..c48b504 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/e02925f520af001c1bf1a004f0d77fc3 differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/e0326e1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/e0326e1798af001c18c4935e001381da new file mode 100644 index 0000000..1f773b8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3e/e0326e1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/00ab5b1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/00ab5b1998af001c18c4935e001381da new file mode 100644 index 0000000..42ae773 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/00ab5b1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/10b0bd614caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/10b0bd614caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..7587119 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/10b0bd614caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + JOptionPane jo = new JOptionPane(); + JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/70cef41498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/70cef41498af001c18c4935e001381da new file mode 100644 index 0000000..ad4cfde Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/70cef41498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/b004651a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/b004651a98af001c18c4935e001381da new file mode 100644 index 0000000..83ba614 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/b004651a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/c0ad7f1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/c0ad7f1998af001c18c4935e001381da new file mode 100644 index 0000000..61259d7 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/c0ad7f1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/d0e7791698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/d0e7791698af001c18c4935e001381da new file mode 100644 index 0000000..91fd7e6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/3f/d0e7791698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/4085284846aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/4085284846aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..12649c0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/4085284846aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,130 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + this.setVisible(false); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/50f8fac7f9a3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/50f8fac7f9a3001c1027e59cc3e35e89 new file mode 100644 index 0000000..e3eb3b7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/50f8fac7f9a3001c1027e59cc3e35e89 @@ -0,0 +1,13 @@ +package fr.blankoworld.connexionBDD; + +public class Principal { + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(){ + system.out.println("Pas trouv"); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/6023691a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/6023691a98af001c18c4935e001381da new file mode 100644 index 0000000..4c22834 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/6023691a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/a02e191a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/a02e191a98af001c18c4935e001381da new file mode 100644 index 0000000..8c8ea8e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/a02e191a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/b02c057783a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/b02c057783a9001c1d3abf97745a02da new file mode 100644 index 0000000..f468bcc --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4/b02c057783a9001c1d3abf97745a02da @@ -0,0 +1,126 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + } + + private void annuler(); + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/40/e00b361798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/40/e00b361798af001c18c4935e001381da new file mode 100644 index 0000000..7bc1b90 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/40/e00b361798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/6018f71498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/6018f71498af001c18c4935e001381da new file mode 100644 index 0000000..e0f9a4a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/6018f71498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/70558182cca4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/70558182cca4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..42721e5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/70558182cca4001c1acc9f54b60f9b57 @@ -0,0 +1,94 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche, FlowLayout.LEFT); + Panneau_Centre.add(Panneau_Centre_Droite, FlowLayout.RIGHT); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/80eefade7fa9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/80eefade7fa9001c1d3abf97745a02da new file mode 100644 index 0000000..adc932a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/80eefade7fa9001c1d3abf97745a02da @@ -0,0 +1,78 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/90ef921e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/90ef921e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..449dadb --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/90ef921e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Interne fout + +ORA-17002=I/O-uitzondering + +ORA-17003=Ongeldige kolomindex. + +ORA-17004=Ongeldig kolomtype. + +ORA-17005=Kolomtype wordt niet ondersteund. + +ORA-17006=Ongeldige kolomnaam. + +ORA-17007=Ongeldige dynamische kolom + +ORA-17008=Gesloten verbinding + +ORA-17009=Gesloten opdracht + +ORA-17010=Gesloten resultatenset + +ORA-17011=Geen resultatenset meer beschikbaar. + +ORA-17012=Parametertypen conflicteren. + +ORA-17014=ResultSet.next is niet aangeroepen. + +ORA-17015=Opdracht is geannuleerd. + +ORA-17016=Time-out opgetreden voor opdracht. + +ORA-17017=Cursor al ge\u00efnitialiseerd. + +ORA-17018=Ongeldige cursor. + +ORA-17019=Kan alleen een zoekvraag beschrijven. + +ORA-17020=Ongeldige rij-prefetch. + +ORA-17021=Definities ontbreken. + +ORA-17022=Definities ontbreken bij index. + +ORA-17023=Kenmerk wordt niet ondersteund. + +ORA-17024=Geen gegevens gelezen. + +ORA-17025=Fout in defines.isNull (). + +ORA-17026=Numerieke overloop + +ORA-17027=Gegevensstroom is al gesloten. + +ORA-17028=Er kunnen geen nieuwe definities worden gemaakt totdat de huidige resultatenset is gesloten. + +ORA-17029=setReadOnly: alleen-lezen-verbindingen worden niet ondersteund. + +ORA-17030=READ_COMMITTED en SERIALIZABLE zijn de enige geldige transactieniveaus. + +ORA-17031=setAutoClose: alleen de modus automatisch sluiten \\\'aan\\\' wordt ondersteund. + +ORA-17032=Kan rij-prefetch niet op nul instellen. + +ORA-17033=Onjuist opgebouwde SQL92-string op positie + +ORA-17034=Niet-ondersteund SQL92-token op positie + +ORA-17035=Tekenset wordt niet ondersteund! + +ORA-17036=Uitzondering in OracleNumber. + +ORA-17037=Converteren tussen UTF8 en UCS2 is mislukt. + +ORA-17038=Byte-array is niet lang genoeg. + +ORA-17039=Tekenarray is niet lang genoeg. + +ORA-17040=Subprotocol moet worden opgegeven in verbindings-URL. + +ORA-17041=Parameter IN of UIT ontbreekt bij index. + +ORA-17042=Ongeldige batchwaarde. + +ORA-17043=Ongeldige maximumgrootte van gegevensstroom. + +ORA-17044=Interne fout: gegevensarray is niet toegewezen. + +ORA-17045=Interne fout: poging om bindwaarden te benaderen die boven de batchwaarde liggen. + +ORA-17046=Interne fout: ongeldige index voor gegevenstoegang. + +ORA-17047=Fout bij ontleden typedescriptor. + +ORA-17048=Niet-gedefinieerd type. + +ORA-17049=Inconsistente java- en sql-objecttypen + +ORA-17050=Een dergelijk element komt niet voor in de vector. + +ORA-17051=Deze API kan niet worden gebruikt voor andere dan UDT-typen. + +ORA-17052=Deze referentie is niet geldig. + +ORA-17053=De grootte is niet geldig. + +ORA-17054=De LOB-locator is niet geldig. + +ORA-17055=Ongeldig teken aangetroffen in + +ORA-17056=Tekenset wordt niet ondersteund. + +ORA-17057=Gesloten LOB + +ORA-17058=Interne fout: ongeldige NLS-conversieverhouding. + +ORA-17059=Converteren naar interne representatie is mislukt. + +ORA-17060=Maken van descriptor is mislukt. + +ORA-17061=Descriptor ontbreekt. + +ORA-17062=Ongeldige ref.-cursor + +ORA-17063=Niet in een transactie + +ORA-17064=Ongeldige syntaxis of databasenaam is NULL. + +ORA-17065=Conversieklasse is NULL. + +ORA-17066=Specifieke implementatie voor de toegangslaag vereist. + +ORA-17067=Ongeldige Oracle-URL opgegeven. + +ORA-17068=Ongeldig argument of argumenten in aanroep. + +ORA-17069=Gebruik expliciete XA-aanroep. + +ORA-17070=Gegevensgrootte overschrijdt maximumgrootte voor dit type. + +ORA-17071=Maximum VARRAY-limiet overschreden. + +ORA-17072=Ingevoegde waarde is te groot voor kolom. + +ORA-17073=Logische handle is niet langer geldig. + +ORA-17074=Ongeldig naampatroon. + +ORA-17075=Ongeldige bewerking voor alleen-doorsturen resultatenset. + +ORA-17076=Ongeldige bewerking voor alleen-lezen resultatenset. + +ORA-17077=Instellen REF-waarde is mislukt. + +ORA-17078=Kan bewerking niet uitvoeren, omdat de verbindingen al zijn geopend. + +ORA-17079=Validatiegegevens gebruiker komen niet overeen met bestaande gegevens. + +ORA-17080=Ongeldige batchopdracht. + +ORA-17081=Er is een fout opgetreden bij het uitvoeren van de batchopdracht. + +ORA-17082=Geen huidige rij. + +ORA-17083=Niet in de rij voor invoegen. + +ORA-17084=Aangeroepen vanuit de rij voor invoegen. + +ORA-17085=Er is een waardenconflict opgetreden. + +ORA-17086=Ongedefinieerde kolomwaarde in de rij voor invoegen. + +ORA-17087=Genegeerde prestatietip: setFetchDirection(). + +ORA-17088=Syntaxis voor het aangevraagde type resultatenset en het concurrency-niveau wordt niet ondersteund. +ORA-17089=Interne fout. + +ORA-17090=Bewerking is niet toegestaan. + +ORA-17091=Kan geen resultatenset aanmaken van het aangevraagde type en/of concurrency-niveau. + +ORA-17092=JDBC-opdrachten kunnen niet worden aangemaakt of uitgevoerd bij het afhandelen van een aanroep + +ORA-17093=OCI-bewerking heeft OCI_SUCCESS_WITH_INFO teruggegeven. + +ORA-17094=Objecttypeversies komen niet overeen. + +ORA-17095=Grootte van opdrachtencache is niet ingesteld. + +ORA-17096=Opdracht-caching kan niet worden ingeschakeld voor deze logische verbinding. + +ORA-17097=Ongeldig elementtype PL/SQL-indextabel. + +ORA-17098=Ongeldige lege LOB-bewerking. + +ORA-17099=Ongeldige arraylengte PL/SQL-indextabel. + +ORA-17100=Ongeldig Java-object van database. + +ORA-17101=Ongeldige eigenschappen in OCI-verbindingsgroepobject. + +ORA-17102=Bfile is alleen-lezen. + +ORA-17103=Ongeldig verbindingstype om terug te geven via getConnection. Gebruik in plaats daarvan getJavaSqlConnection. + +ORA-17104=De uit te voeren SQL-instructie kan niet leeg of NULL zijn. + +ORA-17105=Tijdzone van verbindingssessie is niet ingesteld. + +ORA-17106=Ongeldige configuratie voor verbindingsgroep JDBC-OCI-driver opgegeven. + +ORA-17107=Er is een ongeldig proxytype opgegeven. + +ORA-17108=Geen maximale lengte opgegeven in defineColumnType. + +ORA-17109=Standaard Java-tekencodering niet gevonden. + +ORA-17110=Uitvoering voltooid met waarschuwing. + +ORA-17111=Ongeldige cache TLL-time-out voor verbinding opgegeven + +ORA-17112=Ongeldig threadinterval opgegeven. + +ORA-17113=Threadintervalwaarde is hoger dan de waarde van de cachetime-out. + +ORA-17114=Kon geen lokale transactie-commit gebruiken in een algemene transactie. + +ORA-17115=Kon geen lokale transactie-rollback gebruiken in een algemene transactie. + +ORA-17116=Kon automatisch vastleggen niet inschakelen in een actieve, algemene transactie. + +ORA-17117=Kon savepoint niet instellen in een actieve, algemene transactie. + +ORA-17118=Kon geen ID krijgen voor een benoemd savepoint. + +ORA-17119=Kon geen naam krijgen voor een niet-benoemd savepoint. + +ORA-17120=Kon geen savepoint instellen als automatisch vastleggen is ingeschakeld. + +ORA-17121=Kon geen rollback naar een savepoint uitvoeren als automatisch vastleggen is ingeschakeld. + +ORA-17122=Kon geen rollback naar een lokaal txn-savepoint in een globale transactie uitvoeren. + +ORA-17123=Ongeldige grootte voor opdrachtencache opgegeven. + +ORA-17124=Ongeldige time-out voor inactiviteit van verbinding cache opgegeven. + +ORA-17200=Kan de XA open-string niet goed converteren van Java naar C. + +ORA-17201=Kan de XA sluit-string niet goed converteren van Java naar C. + +ORA-17202=Kan de RM-naam niet goed converteren van Java naar C. + +ORA-17203=Kon aanwijzertype niet toedelen aan jlong. + +ORA-17204=Capaciteit invoerarray te klein voor OCI-handles. + +ORA-17205=Verkrijgen van OCISvcCtx-handle van C-XA met behulp van xaoSvcCtx is mislukt. + +ORA-17206=Verkrijgen van OCIEnv-handle van C-XA met behulp van xaoEnv is mislukt. + +ORA-17207=De eigenschap tnsEntry is niet ingesteld in DataSource. + +ORA-17213=C-XA retourneert XAER_RMERR tijdens xa_open. + +ORA-17215=C-XA retourneert XAER_INVAL tijdens xa_open. + +ORA-17216=C-XA retourneert XAER_PROTO tijdens xa_open. + +ORA-17233=C-XA retourneert XAER_RMERR tijdens xa_close. + +ORA-17235=C-XA retourneert XAER_INVAL tijdens xa_close. + +ORA-17236=C-XA retourneert XAER_PROTO tijdens xa_close. + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protocolschending + +ORA-17402=Er wordt slechts \u00e9\u00e9n RPA-bericht verwacht. + +ORA-17403=Er wordt slechts \u00e9\u00e9n RXH-bericht verwacht. + +ORA-17404=Er zijn meer RXD\\\'s ontvangen dan verwacht. + +ORA-17405=UAC-lengte is niet nul. + +ORA-17406=Maximumbufferlengte wordt overschreden. + +ORA-17407=Ongeldige typerepresentatie (setRep). + +ORA-17408=Ongeldige typerepresentatie (getRep). + +ORA-17409=Ongeldige bufferlengte. + +ORA-17410=Geen gegevens meer te lezen vanuit socket. + +ORA-17411=Representaties van gegevenstypen komen niet overeen. + +ORA-17412=Typelengte groter dan maximum. + +ORA-17413=Sleutelgrootte wordt overschreden. + +ORA-17414=Niet genoeg bufferruimte om kolomnamen op te slaan. + +ORA-17415=Dit type is niet verwerkt. + +ORA-17416=FATAL + +ORA-17417=NLS-probleem: decoderen van kolomnamen mislukt. + +ORA-17418=Fout in veldlengte van interne structuur. + +ORA-17419=Ongeldig aantal kolommen teruggegeven. + +ORA-17420=Oracle versie niet gedefinieerd. + +ORA-17421=Typen of verbinding niet gedefinieerd. + +ORA-17422=Ongeldige klasse in factory. + +ORA-17423=Er wordt een PLSQL-blok gebruikt zonder dat een IOV is gedefinieerd. + +ORA-17424=Er wordt een poging gedaan een andere Marshalingbewerking uit te voeren. + +ORA-17425=Gegevensstroom wordt teruggegeven in PLSQL-blok. + +ORA-17426=Zowel IN- als OUT-binds zijn NULL. + +ORA-17427=Er wordt een onge\u00efnitaliseerde OAC gebruikt. + +ORA-17428=Inlogprocedure moet worden aangeroepen na verbinding. + +ORA-17429=Moet tenminste met de server zijn verbonden. + +ORA-17430=Moet bij de server zijn ingelogd. + +ORA-17431=SQL-opdracht die moet worden ontleed, is NULL. + +ORA-17432=Ongeldige opties in all7. + +ORA-17433=Ongeldige argumenten in aanroep. + +ORA-17434=Niet in onbeperkt doorgaande modus. + +ORA-17435=Ongeldig aantal in_out_binds in IOV. + +ORA-17436=Ongeldig aantal outbinds. + +ORA-17437=Fout in PLSQL-blok IN/OUT-argumenten. + +ORA-17438=Intern - onverwachte waarde. + +ORA-17439=Ongeldig SQL-type. + +ORA-17440=DBItem/DBType is NULL. + +ORA-17441=Oracle versie wordt niet ondersteund. Laagste ondersteunde versie is 7.2.3. + +ORA-17442=Waarde refcursor is ongeldig. + +ORA-17443=Null-gebruiker of -wachtwoord wordt niet ondersteund in THIN-stuurprogramma. + +ORA-17444=TTC-protocolversie die is ontvangen van server, wordt niet ondersteund. + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/c0d9bf1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/c0d9bf1b98af001c18c4935e001381da new file mode 100644 index 0000000..3b5af87 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/41/c0d9bf1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/305728a7fdae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/305728a7fdae001c14499bdcdfff58b3 new file mode 100644 index 0000000..91d122a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/305728a7fdae001c14499bdcdfff58b3 @@ -0,0 +1,206 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; +import javax.swing.JOptionPane; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + private JButton jOk; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypte) : " + this.jtextMdp.getPassword().toString() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(this.jtextMdp.getPassword().toString()); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + + // Fonction de blocage de la fenetre + public void block(){ + this.jtextServeur.setEnabled(false); + this.jtextPort.setEnabled(false); + this.jtextBase.setEnabled(false); + this.jtextIdentifiant.setEnabled(false); + this.jtextMdp.setEnabled(false); + + this.jOk.setEnabled(false); + + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/704e098481a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/704e098481a9001c1d3abf97745a02da new file mode 100644 index 0000000..a55e6f6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/704e098481a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Importation de la fentre de Connexion +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + Connexion conn = new Connexion(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/9057591e7da9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/9057591e7da9001c1d3abf97745a02da new file mode 100644 index 0000000..ef3e014 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/9057591e7da9001c1d3abf97745a02da @@ -0,0 +1,54 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(6,70); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/d023701698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/d023701698af001c18c4935e001381da new file mode 100644 index 0000000..e8f0536 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/42/d023701698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/43/804e531e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/43/804e531e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..61b978c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/43/804e531e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Sis\u00e4inen virhe + +ORA-17002=IO-poikkeus + +ORA-17003=Virheellinen sarakeindeksi + +ORA-17004=Virheellinen saraketyyppi + +ORA-17005=Saraketyyppi\u00e4 ei tueta + +ORA-17006=Virheellinen sarakkeen nimi + +ORA-17007=Virheellinen dynaaminen sarake + +ORA-17008=Suljettu yhteys + +ORA-17009=Suljettu lause + +ORA-17010=Suljettu tulosjoukko + +ORA-17011=Tulosjoukko t\u00e4ynn\u00e4 + +ORA-17012=Parametrityypin ristiriita + +ORA-17014=ResultSet.next-funktiota ei kutsuttu + +ORA-17015=Lause peruutettiin + +ORA-17016=Lause aikakatkaistiin + +ORA-17017=Kohdistin on jo alustettu + +ORA-17018=Virheellinen kohdistin + +ORA-17019=Voi vain kuvata kysely\u00e4 + +ORA-17020=Virheellinen rivin esihaku + +ORA-17021=M\u00e4\u00e4ritykset puuttuvat + +ORA-17022=M\u00e4\u00e4ritykset puuttuvat indeksist\u00e4 + +ORA-17023=Ominaisuutta ei tueta + +ORA-17024=Ei luettuja tietoja + +ORA-17025=Virhe: defines.isNull () + +ORA-17026=Numeerinen ylivuoto + +ORA-17027=Tietovirta on jo suljettu + +ORA-17028=Uusia m\u00e4\u00e4rityksi\u00e4 ei voi tehd\u00e4, ennen kuin nykyinen tulosjoukko on suljettu + +ORA-17029=setReadOnly: Vain luku -yhteyksi\u00e4 ei tueta + +ORA-17030=READ_COMMITTED ja SERIALIZABLE ovat ainoat sallitut tapahtumatasot + +ORA-17031=setAutoClose: Tuetaan vain Automaattinen sulkeminen -tilaa + +ORA-17032=rivin esihakuarvoa ei voi asettaa nollaksi + +ORA-17033=V\u00e4\u00e4r\u00e4nmuotoinen SQL92-merkkijono kohdassa + +ORA-17034=Ei-tuettu SQL92-merkki kohdassa + +ORA-17035=Merkist\u00f6\u00e4 ei tueta!! + +ORA-17036=poikkeus kohdassa OracleNumber + +ORA-17037=Muunto UTF8:n ja UCS2:n v\u00e4lill\u00e4 ei onnistunut + +ORA-17038=Tavutaulukko on liian lyhyt + +ORA-17039=Merkkitaulukko on liian lyhyt + +ORA-17040=Aliyhteysk\u00e4yt\u00e4nt\u00f6 on m\u00e4\u00e4ritett\u00e4v\u00e4 yhteyden URL:ia varten + +ORA-17041=Puuttuva IN- tai OUT-parametri indeksiss\u00e4: + +ORA-17042=Virheellinen er\u00e4n arvo + +ORA-17043=Virheellinen tietovirran enimm\u00e4iskoko + +ORA-17044=Sis\u00e4inen virhe: Datataulukkoa ei ole varattu + +ORA-17045=Sis\u00e4inen virhe: Er\u00e4n arvoa suurempia sidosarvoja ei voi k\u00e4ytt\u00e4\u00e4 + +ORA-17046=Sis\u00e4inen virhe: Virheellinen tietojen k\u00e4yt\u00f6n indeksi + +ORA-17047=Virhe tyyppikuvaajan j\u00e4sennyksess\u00e4 + +ORA-17048=M\u00e4\u00e4ritt\u00e4m\u00e4t\u00f6n tyyppi + +ORA-17049=Java- ja sql-objektityypit eiv\u00e4t ole yhdenmukaisia + +ORA-17050=vektorissa ei ole t\u00e4llaista elementti\u00e4 + +ORA-17051=T\u00e4t\u00e4 APIa ei voi k\u00e4ytt\u00e4\u00e4 muille kuin UDT-tyypeille + +ORA-17052=Virheellinen viite + +ORA-17053=Virheellinen koko + +ORA-17054=Virheellinen LOB-paikannin + +ORA-17055=Virheellinen merkki havaittu kohdassa + +ORA-17056=Merkist\u00f6\u00e4 ei tueta + +ORA-17057=Suljettu LOB + +ORA-17058=Sis\u00e4inen virhe: Virheellinen NLS-muuntosuhde + +ORA-17059=Sis\u00e4iseksi vastaavuudeksi muuntaminen ei onnistunut + +ORA-17060=Kuvaajan rakentaminen ei onnistunut + +ORA-17061=Puuttuva kuvaaja + +ORA-17062=Virheellinen viitekohdistin + +ORA-17063=Ei tapahtumassa + +ORA-17064=Virheellinen syntaksi tai tietokannan nimell\u00e4 on tyhj\u00e4 arvo + +ORA-17065=Muuntoluokalla on tyhj\u00e4 arvo + +ORA-17066=Tarvitaan k\u00e4ytt\u00f6oikeustasokohtainen toteutus + +ORA-17067=Virheellinen Oraclen URL-osoite + +ORA-17068=Virheellinen argumentti tai argumentteja kutsussa + +ORA-17069=K\u00e4yt\u00e4 omaa XA-kutsua + +ORA-17070=Tietojen koko on suurempi kuin t\u00e4m\u00e4n tyypin enimm\u00e4iskoko + +ORA-17071=VARRAY-enimm\u00e4israja on ylitetty + +ORA-17072=Lis\u00e4tty arvo liian suuri sarakkeeseen + +ORA-17073=Looginen kahva ei ole en\u00e4\u00e4 sallittu + +ORA-17074=virheellinen nimirakenne + +ORA-17075=Virheellinen toiminto vain eteenp\u00e4in suuntautuvassa tulosjoukossa + +ORA-17076=Virheellinen toiminto vain luku -tyyppisess\u00e4 tulosjoukossa + +ORA-17077=REF-arvoa ei voi asettaa + +ORA-17078=Toimintoa ei voi tehd\u00e4, sill\u00e4 yhteys on jo muodostettu + +ORA-17079=K\u00e4ytt\u00e4j\u00e4n valtuudet eiv\u00e4t vastaa olemassa olevia valtuuksia + +ORA-17080=virheellinen er\u00e4komento + +ORA-17081=virhe er\u00e4ajon aikana + +ORA-17082=Nykyist\u00e4 rivi\u00e4 ei ole + +ORA-17083=Ei lis\u00e4tt\u00e4v\u00e4ll\u00e4 rivill\u00e4 + +ORA-17084=Kutsuttiin lis\u00e4tt\u00e4v\u00e4\u00e4 rivi\u00e4 + +ORA-17085=Arvoristiriitoja + +ORA-17086=M\u00e4\u00e4ritt\u00e4m\u00e4t\u00f6n sarakkeen arvo lis\u00e4tt\u00e4v\u00e4ll\u00e4 rivill\u00e4 + +ORA-17087=Suorityskykyvihje ohitettiin: setFetchDirection() + +ORA-17088=Syntaksia ei tueta pyydetylle tulosjoukkotyypille ja tausta-ajotasolle +ORA-17089=sis\u00e4inen virhe + +ORA-17090=toiminto ei ole sallittu + +ORA-17091=Tulosjoukkoa ei voi luoda pyydetyss\u00e4 tyypiss\u00e4 ja/tai tausta-ajotasossa + +ORA-17092=JDBC-lauseita ei voi luoda tai k\u00e4sitell\u00e4 kutsuprosessin lopussa + +ORA-17093=OCI-operaatio palautti OCI_SUCCESS_WITH_INFO + +ORA-17094=Objektityypin versiot eiv\u00e4t ole yhteensopivia + +ORA-17095=Lausev\u00e4limuistin kokoa ei ole m\u00e4\u00e4ritetty + +ORA-17096=Lauseen v\u00e4limuistiin tallennusta ei voi ottaa k\u00e4ytt\u00f6\u00f6n t\u00e4m\u00e4n loogisen yhteyden yhteydess\u00e4. + +ORA-17097=Virheellinen PL/SQL-indeksitaulun elementtityyppi + +ORA-17098=Virheellinen tyhj\u00e4 lob-operaatio + +ORA-17099=Virheellinen PL/SQL-indeksitaulun taulukon pituus + +ORA-17100=Virheellinen tietokannan Java-objekti + +ORA-17101=Virheelliset ominaisuudet OCI-yhteysvaranto-objektissa + +ORA-17102=Kohdetta Bfile voi vain lukea + +ORA-17103=virheellinen yhteystyyppi getConnection. K\u00e4yt\u00e4 getJavaSqlConnection-rutiinia + +ORA-17104=suoritettava SQL-lause ei voi olla tyhj\u00e4 tai nolla + +ORA-17105=yhteydenottoistunnon aikavy\u00f6hykett\u00e4 ei m\u00e4\u00e4ritetty + +ORA-17106=m\u00e4\u00e4ritettiin virheellinen JDBC-OCI-ohjainyhteysvarannon kokoonpano + +ORA-17107=m\u00e4\u00e4ritettiin virheellinen v\u00e4lipalvelintyyppi + +ORA-17108=Kohteessa defineColumnType ei ole m\u00e4\u00e4ritetty enimm\u00e4ispituutta + +ORA-17109=Java-vakiomerkkikoodausta ei l\u00f6ydy + +ORA-17110=suoritus valmis, aiheutti varoituksen + +ORA-17111=M\u00e4\u00e4ritettiin virheellinen yhteysv\u00e4limuistin TTL-aikakatkaisu + +ORA-17112=M\u00e4\u00e4ritettiin virheellinen s\u00e4iev\u00e4li + +ORA-17113=S\u00e4ikeen v\u00e4lin arvo on suurempi kuin v\u00e4limuistin aikakatkaisuarvo + +ORA-17114=paikallisen tapahtuman vahvistusta ei voi k\u00e4ytt\u00e4\u00e4 yleisess\u00e4 tapahtumassa + +ORA-17115=paikallisen tapahtuman peruutusta ei voi k\u00e4ytt\u00e4\u00e4 yleisess\u00e4 tapahtumassa + +ORA-17116=automaattista vahvistusta ei voi ottaa k\u00e4ytt\u00f6\u00f6n aktiivisessa yleisess\u00e4 tapahtumassa + +ORA-17117=tallennuspistett\u00e4 ei voi asettaa aktiivisessa yleisess\u00e4 tapahtumassa + +ORA-17118=nimetyn tallennuspisteen tunnistetta ei voi hakea + +ORA-17119=nimett\u00f6m\u00e4n tallennuspisteen nime\u00e4 ei voi hakea + +ORA-17120=tallennuspistett\u00e4 ei voi m\u00e4\u00e4ritt\u00e4\u00e4, kun automaattinen vahvistus on k\u00e4yt\u00f6ss\u00e4 + +ORA-17121=tallennuspisteeseen ei voi peruuttaa, kun automaattinen vahvistus on k\u00e4yt\u00f6ss\u00e4 + +ORA-17122=paikalliseen txn-tallennuspisteeseen ei voi peruuttaa yleisess\u00e4 tapahtumassa + +ORA-17123=M\u00e4\u00e4ritettiin virheellinen lausev\u00e4limuistin koko + +ORA-17124=M\u00e4\u00e4ritettiin virheellinen yhteysv\u00e4limuistin toimettomuuden aikakatkaisu + +ORA-17200=XA-avausmerkkijonoa ei voi muuntaa oikein Javasta C:hen + +ORA-17201=XA-sulkemismerkkijonoa ei voi muuntaa oikein Javasta C:hen + +ORA-17202=RM-nime\u00e4 ei voi muuntaa oikein Javasta C:hen + +ORA-17203=Osoitintyyppi\u00e4 ei voi muuntaa jlong-tyypiksi + +ORA-17204=Sy\u00f6tetaulukko on liian lyhyt OCI-kahvojen pit\u00e4miseen + +ORA-17205=OCISvcCtx-kahvan nouto C-XA:sta k\u00e4ytt\u00e4m\u00e4ll\u00e4 xaoSvcCtx:\u00e4\u00e4 ei onnistunut + +ORA-17206=OCIEnv-kahvan nouto C-XA:sta k\u00e4ytt\u00e4m\u00e4ll\u00e4 xaoEnv:i\u00e4 ei onnistunut + +ORA-17207=Ominaisuutta tnsEntry ei m\u00e4\u00e4ritetty kohteessa DataSource + +ORA-17213=C-XA palautti xa_open-rutiinin aikana XAER_RMERR-arvon + +ORA-17215=C-XA palautti xa_open-rutiinin aikana XAER_INVAL-arvon + +ORA-17216=C-XA palautti xa_open-rutiinin aikana XAER_PROTO-arvon + +ORA-17233=C-XA palautti xa_close-rutiinin aikana XAER_RMERR-arvon + +ORA-17235=C-XA palautti xa_close-rutiinin aikana XAER_INVAL-arvon + +ORA-17236=C-XA palautti xa_close-rutiinin aikana XAER_PROTO-arvon + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Yhteysk\u00e4yt\u00e4nt\u00f6virhe + +ORA-17402=Vain yht\u00e4 RPA-sanomaa odotetaan + +ORA-17403=Vain yht\u00e4 RXH-sanomaa odotetaan + +ORA-17404=Vastaanotettu odotettua useampia RXD:it\u00e4 + +ORA-17405=UAC:n pituus ei ole nolla + +ORA-17406=Puskurin enimm\u00e4ispituus ylittyy + +ORA-17407=virheellinen Type Representation(setRep) + +ORA-17408=virheellinen Type Representation(getRep) + +ORA-17409=virheellinen puskurin pituus + +ORA-17410=Vastakkeessa ei en\u00e4\u00e4 luettavia tietoja + +ORA-17411=Tietotyyppien vastaavuusvirhe + +ORA-17412=Tyypin pituus ylitt\u00e4\u00e4 enimm\u00e4ispituuden + +ORA-17413=Avaimen koko ylittyy + +ORA-17414=Puskurin koko ei riit\u00e4 sarakkeiden nimien tallentamiseen + +ORA-17415=T\u00e4t\u00e4 tyyppi\u00e4 ei ole k\u00e4sitelty + +ORA-17416=FATAL + +ORA-17417=NLS-ongelma, sarakkeiden nimien tulkinta ep\u00e4onnistui + +ORA-17418=Sis\u00e4isen rakenteen kent\u00e4n pituusvirhe + +ORA-17419=Virheellinen sarakkeiden m\u00e4\u00e4r\u00e4 palautettu + +ORA-17420=Oraclen versiota ei m\u00e4\u00e4ritetty + +ORA-17421=Tyyppej\u00e4 tai yhteytt\u00e4 ei m\u00e4\u00e4ritetty + +ORA-17422=Virheellinen luokka factory-objektityypiss\u00e4 + +ORA-17423=PLSQL-lohkoa k\u00e4ytet\u00e4\u00e4n ilman IOV-m\u00e4\u00e4rityst\u00e4 + +ORA-17424=Yritet\u00e4\u00e4n toista j\u00e4rjestelytoimintoa + +ORA-17425=PLSQL-lohkon tietovirta palautetaan + +ORA-17426=Sek\u00e4 IN- ett\u00e4 OUT-sidosten arvo on tyhj\u00e4 (NULL) + +ORA-17427=Alustamaton OAC k\u00e4yt\u00f6ss\u00e4 + +ORA-17428=Yhteyden j\u00e4lkeen on kutsuttava sis\u00e4\u00e4nkirjautumista + +ORA-17429=Ainakin palvelimeen on oltava yhteydess\u00e4 + +ORA-17430=Palvelimeen on oltava kirjautuneena + +ORA-17431=J\u00e4sennett\u00e4v\u00e4 SQL-lause on tyhj\u00e4 + +ORA-17432=virheelliset valinnat All7:ss\u00e4 + +ORA-17433=kutsussa virheellisi\u00e4 argumentteja + +ORA-17434=ei tietovirtatilassa + +ORA-17435=virheellinen m\u00e4\u00e4r\u00e4 in_out_binds-sidoksia IOV:ssa + +ORA-17436=virheellinen m\u00e4\u00e4r\u00e4 Out-sidoksia + +ORA-17437=Virhe PLSQL-lohkon IN/OUT-argument(e)issa + +ORA-17438=Sis\u00e4inen - Odottamaton arvo + +ORA-17439=Virheellinen SQL-tyyppi + +ORA-17440=DBItem/DBType on tyhj\u00e4 (NULL) + +ORA-17441=Oraclen versiota ei tueta. Vanhin tuettu versio on 7.2.3. + +ORA-17442=Virheellinen viitekohdistimen arvo + +ORA-17443=THIN-ohjain ei tue k\u00e4ytt\u00e4j\u00e4tunnuksen tai salasanan tyhj\u00e4\u00e4 arvoa + +ORA-17444=Palvelimelta vastaanotettua TTC-yhteysk\u00e4yt\u00e4nn\u00f6n versiota ei tueta + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/0002091a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/0002091a98af001c18c4935e001381da new file mode 100644 index 0000000..29b7f89 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/0002091a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/00b7c91e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/00b7c91e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..c8a2bee --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/00b7c91e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19 + +ORA-17002=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14 IO + +ORA-17003=\u0e14\u0e31\u0e0a\u0e19\u0e35\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17004=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17005=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17006=\u0e0a\u0e37\u0e48\u0e2d\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17007=\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e41\u0e1a\u0e1a\u0e44\u0e14\u0e19\u0e32\u0e21\u0e34\u0e04\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17008=\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e17\u0e35\u0e48\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e41\u0e25\u0e49\u0e27 + +ORA-17009=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e17\u0e35\u0e48\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e41\u0e25\u0e49\u0e27 + +ORA-17010=Resultset \u0e17\u0e35\u0e48\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e41\u0e25\u0e49\u0e27 + +ORA-17011=Resultset \u0e17\u0e35\u0e48\u0e40\u0e25\u0e34\u0e01\u0e43\u0e0a\u0e49 + +ORA-17012=\u0e02\u0e49\u0e2d\u0e02\u0e31\u0e14\u0e41\u0e22\u0e49\u0e07\u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e1e\u0e32\u0e23\u0e32\u0e21\u0e34\u0e40\u0e15\u0e2d\u0e23\u0e4c + +ORA-17014=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 ResultSet.next + +ORA-17015=\u0e22\u0e01\u0e40\u0e25\u0e34\u0e01\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e41\u0e25\u0e49\u0e27 + +ORA-17016=\u0e2b\u0e21\u0e14\u0e40\u0e27\u0e25\u0e32\u0e02\u0e2d\u0e07\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e19\u0e35\u0e49\u0e41\u0e25\u0e49\u0e27 + +ORA-17017=\u0e40\u0e23\u0e34\u0e48\u0e21\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e40\u0e04\u0e2d\u0e23\u0e4c\u0e40\u0e0b\u0e2d\u0e23\u0e4c\u0e41\u0e25\u0e49\u0e27 + +ORA-17018=\u0e40\u0e04\u0e2d\u0e23\u0e4c\u0e40\u0e0b\u0e2d\u0e23\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17019=\u0e2d\u0e18\u0e34\u0e1a\u0e32\u0e22\u0e44\u0e14\u0e49\u0e40\u0e09\u0e1e\u0e32\u0e30\u0e01\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e2a\u0e37\u0e1a\u0e04\u0e49\u0e19 + +ORA-17020=\u0e01\u0e32\u0e23\u0e14\u0e36\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e41\u0e16\u0e27\u0e25\u0e48\u0e27\u0e07\u0e2b\u0e19\u0e49\u0e32\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17021=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e01\u0e33\u0e2b\u0e19\u0e14 + +ORA-17022=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e17\u0e35\u0e48\u0e14\u0e31\u0e0a\u0e19\u0e35 + +ORA-17023=\u0e04\u0e38\u0e13\u0e2a\u0e21\u0e1a\u0e31\u0e15\u0e34\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17024=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e2d\u0e48\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 + +ORA-17025=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e43\u0e19 defines.isNull () + +ORA-17026=\u0e40\u0e01\u0e34\u0e19\u0e08\u0e33\u0e19\u0e27\u0e19 + +ORA-17027=\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e2a\u0e15\u0e23\u0e35\u0e21\u0e41\u0e25\u0e49\u0e27 + +ORA-17028=\u0e40\u0e23\u0e34\u0e48\u0e21\u0e01\u0e32\u0e23\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e43\u0e2b\u0e21\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 \u0e08\u0e19\u0e01\u0e27\u0e48\u0e32\u0e08\u0e30\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14 ResultSet \u0e1b\u0e31\u0e08\u0e08\u0e38\u0e1a\u0e31\u0e19 + +ORA-17029=setReadOnly: \u0e43\u0e0a\u0e49\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e1a\u0e1a\u0e2d\u0e48\u0e32\u0e19\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17030=\u0e23\u0e30\u0e14\u0e31\u0e1a\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e17\u0e35\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e21\u0e35\u0e40\u0e1e\u0e35\u0e22\u0e07 READ_COMMITTED \u0e41\u0e25\u0e30 SERIALIZABLE + +ORA-17031=setAutoClose: \u0e43\u0e0a\u0e49\u0e44\u0e14\u0e49\u0e43\u0e19\u0e01\u0e23\u0e13\u0e35\u0e17\u0e35\u0e48\u0e42\u0e2b\u0e21\u0e14\u0e1b\u0e34\u0e14\u0e42\u0e14\u0e22\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e44\u0e27\u0e49\u0e40\u0e1b\u0e47\u0e19 \'\u0e40\u0e1b\u0e34\u0e14\' + +ORA-17032=\u0e01\u0e32\u0e23\u0e14\u0e36\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e41\u0e16\u0e27\u0e25\u0e48\u0e27\u0e07\u0e2b\u0e19\u0e49\u0e32\u0e08\u0e30\u0e40\u0e1b\u0e47\u0e19\u0e28\u0e39\u0e19\u0e22\u0e4c\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17033=\u0e1e\u0e1a\u0e2a\u0e15\u0e23\u0e34\u0e07 SQL92 \u0e17\u0e35\u0e48\u0e21\u0e35\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e17\u0e35\u0e48\u0e15\u0e33\u0e41\u0e2b\u0e19\u0e48\u0e07 + +ORA-17034=\u0e1e\u0e1a\u0e42\u0e17\u0e40\u0e04\u0e47\u0e19 SQL92 \u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e17\u0e35\u0e48\u0e15\u0e33\u0e41\u0e2b\u0e19\u0e48\u0e07 + +ORA-17035=\u0e43\u0e0a\u0e49\u0e0a\u0e38\u0e14\u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17036=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e43\u0e19 OracleNumber + +ORA-17037=\u0e41\u0e1b\u0e25\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07 UTF8 \u0e01\u0e31\u0e1a UCS2 \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17038=\u0e02\u0e19\u0e32\u0e14\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e2d\u0e07 Byte \u0e22\u0e32\u0e27\u0e44\u0e21\u0e48\u0e1e\u0e2d + +ORA-17039=\u0e02\u0e19\u0e32\u0e14\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e2d\u0e07 Char \u0e22\u0e32\u0e27\u0e44\u0e21\u0e48\u0e1e\u0e2d + +ORA-17040=\u0e15\u0e49\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e38\u0e42\u0e1b\u0e23\u0e42\u0e15\u0e04\u0e2d\u0e25\u0e22\u0e48\u0e2d\u0e22\u0e43\u0e19\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e1c\u0e48\u0e32\u0e19\u0e17\u0e32\u0e07 URL + +ORA-17041=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e1e\u0e32\u0e23\u0e32\u0e21\u0e34\u0e40\u0e15\u0e2d\u0e23\u0e4c IN \u0e2b\u0e23\u0e37\u0e2d OUT \u0e17\u0e35\u0e48\u0e14\u0e31\u0e0a\u0e19\u0e35: + +ORA-17042=\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07\u0e41\u0e1a\u0e17\u0e0a\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17043=\u0e02\u0e19\u0e32\u0e14\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e2a\u0e15\u0e23\u0e35\u0e21\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17044=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e08\u0e31\u0e14\u0e2a\u0e23\u0e23\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 + +ORA-17045=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e04\u0e48\u0e32\u0e15\u0e31\u0e27\u0e41\u0e1b\u0e23\u0e44\u0e1a\u0e19\u0e14\u0e4c\u0e19\u0e2d\u0e01\u0e40\u0e2b\u0e19\u0e37\u0e2d\u0e08\u0e32\u0e01\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07\u0e41\u0e1a\u0e17\u0e0a\u0e4c + +ORA-17046=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e14\u0e31\u0e0a\u0e19\u0e35\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e40\u0e02\u0e49\u0e32\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17047=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e43\u0e19\u0e01\u0e32\u0e23\u0e1e\u0e32\u0e23\u0e4c\u0e0b Descriptor \u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17 + +ORA-17048=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e44\u0e27\u0e49 + +ORA-17049=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c java \u0e41\u0e25\u0e30 sql \u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e19 + +ORA-17050=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e2d\u0e35\u0e25\u0e34\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e14\u0e31\u0e07\u0e01\u0e25\u0e48\u0e32\u0e27\u0e43\u0e19\u0e40\u0e27\u0e01\u0e40\u0e15\u0e2d\u0e23\u0e4c + +ORA-17051=API \u0e19\u0e35\u0e49\u0e08\u0e30\u0e43\u0e0a\u0e49\u0e01\u0e31\u0e1a\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e37\u0e48\u0e19\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e43\u0e0a\u0e48 UDT \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17052=ref \u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17053=\u0e02\u0e19\u0e32\u0e14\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17054=\u0e42\u0e25\u0e40\u0e04\u0e40\u0e15\u0e2d\u0e23\u0e4c\u0e02\u0e2d\u0e07 LOB \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17055=\u0e1e\u0e1a\u0e15\u0e31\u0e27\u0e2d\u0e31\u0e01\u0e29\u0e23\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19 + +ORA-17056=\u0e0a\u0e38\u0e14\u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17057=\u0e1b\u0e34\u0e14 LOB \u0e41\u0e25\u0e49\u0e27 + +ORA-17058=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e2d\u0e31\u0e15\u0e23\u0e32\u0e2a\u0e48\u0e27\u0e19\u0e01\u0e32\u0e23\u0e41\u0e1b\u0e25\u0e07\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07 NLS \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17059=\u0e41\u0e1b\u0e25\u0e07\u0e40\u0e1b\u0e47\u0e19\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e20\u0e32\u0e22\u0e43\u0e19\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17060=\u0e2a\u0e23\u0e49\u0e32\u0e07 Descriptor \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17061=\u0e44\u0e21\u0e48\u0e21\u0e35 Descriptor + +ORA-17062=Ref cursor \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17063=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23 + +ORA-17064=\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 \u0e2b\u0e23\u0e37\u0e2d\u0e0a\u0e37\u0e48\u0e2d\u0e10\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17065=\u0e04\u0e25\u0e32\u0e2a\u0e01\u0e32\u0e23\u0e41\u0e1b\u0e25\u0e07\u0e04\u0e48\u0e32\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17066=\u0e15\u0e49\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e38\u0e01\u0e32\u0e23\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e40\u0e09\u0e1e\u0e32\u0e30\u0e02\u0e2d\u0e07\u0e0a\u0e31\u0e49\u0e19\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19 + +ORA-17067=Oracle URL \u0e17\u0e35\u0e48\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17068=\u0e1e\u0e1a\u0e2d\u0e32\u0e23\u0e4c\u0e01\u0e34\u0e27\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 + +ORA-17069=\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 XA \u0e42\u0e14\u0e22\u0e15\u0e23\u0e07 + +ORA-17070=\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e02\u0e19\u0e32\u0e14\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e19\u0e35\u0e49 + +ORA-17071=\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e02\u0e35\u0e14\u0e08\u0e33\u0e01\u0e31\u0e14\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07 VARRAY + +ORA-17072=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e43\u0e2b\u0e0d\u0e48\u0e01\u0e27\u0e48\u0e32\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c + +ORA-17073=\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25\u0e41\u0e1a\u0e1a\u0e25\u0e2d\u0e08\u0e34\u0e04\u0e31\u0e25\u0e19\u0e35\u0e49\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e41\u0e25\u0e49\u0e27 + +ORA-17074=\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e0a\u0e37\u0e48\u0e2d\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17075=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 'resultset \u0e41\u0e1a\u0e1a\u0e2a\u0e48\u0e07\u0e15\u0e48\u0e2d\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27' \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17076=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 'resultset \u0e41\u0e1a\u0e1a\u0e2d\u0e48\u0e32\u0e19\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27' \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17077=\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e04\u0e48\u0e32 REF \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17078=\u0e40\u0e23\u0e34\u0e48\u0e21\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 \u0e40\u0e19\u0e37\u0e48\u0e2d\u0e07\u0e08\u0e32\u0e01\u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e1b\u0e34\u0e14\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e25\u0e49\u0e27 + +ORA-17079=\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e23\u0e31\u0e1a\u0e23\u0e2d\u0e07\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e1a\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e17\u0e35\u0e48\u0e21\u0e35\u0e2d\u0e22\u0e39\u0e48 + +ORA-17080=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e43\u0e19\u0e41\u0e1a\u0e17\u0e0a\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17081=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e02\u0e13\u0e30\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e41\u0e1a\u0e17\u0e0a\u0e4c + +ORA-17082=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e41\u0e16\u0e27\u0e1b\u0e31\u0e08\u0e08\u0e38\u0e1a\u0e31\u0e19 + +ORA-17083=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e43\u0e19\u0e41\u0e16\u0e27\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01 + +ORA-17084=\u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49\u0e41\u0e16\u0e27\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01 + +ORA-17085=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e02\u0e31\u0e14\u0e41\u0e22\u0e49\u0e07\u0e40\u0e01\u0e35\u0e48\u0e22\u0e27\u0e01\u0e31\u0e1a\u0e04\u0e48\u0e32 + +ORA-17086=\u0e04\u0e48\u0e32\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e43\u0e19\u0e41\u0e16\u0e27\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01 + +ORA-17087=\u0e44\u0e21\u0e48\u0e43\u0e0a\u0e49\u0e04\u0e33\u0e41\u0e19\u0e30\u0e19\u0e33\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e40\u0e1e\u0e34\u0e48\u0e21\u0e1b\u0e23\u0e30\u0e2a\u0e34\u0e17\u0e18\u0e34\u0e20\u0e32\u0e1e: setFetchDirection() + +ORA-17088=\u0e44\u0e21\u0e48\u0e2a\u0e19\u0e31\u0e1a\u0e2a\u0e19\u0e38\u0e19\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e41\u0e25\u0e30\u0e23\u0e30\u0e14\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e1e\u0e23\u0e49\u0e2d\u0e21\u0e01\u0e31\u0e19\u0e02\u0e2d\u0e07 resultset \u0e17\u0e35\u0e48\u0e2a\u0e48\u0e07\u0e04\u0e33\u0e02\u0e2d +ORA-17089=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19 + +ORA-17090=\u0e14\u0e33\u0e40\u0e19\u0e34\u0e19\u0e01\u0e32\u0e23\u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17091=\u0e2a\u0e23\u0e49\u0e32\u0e07 resultset \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e41\u0e25\u0e30/\u0e2b\u0e23\u0e37\u0e2d\u0e17\u0e35\u0e48\u0e23\u0e30\u0e14\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e1e\u0e23\u0e49\u0e2d\u0e21\u0e01\u0e31\u0e19\u0e17\u0e35\u0e48\u0e2a\u0e48\u0e07\u0e04\u0e33\u0e02\u0e2d\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17092=\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e2b\u0e23\u0e37\u0e2d\u0e23\u0e31\u0e19\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 JDBC \u0e2b\u0e25\u0e31\u0e07\u0e08\u0e32\u0e01\u0e1b\u0e23\u0e30\u0e21\u0e27\u0e25\u0e1c\u0e25\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49\u0e41\u0e25\u0e49\u0e27\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17093=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 OCI \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c\u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e19 + +ORA-17095=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e02\u0e19\u0e32\u0e14\u0e41\u0e04\u0e0a\u0e02\u0e2d\u0e07\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 + +ORA-17096=\u0e43\u0e0a\u0e49\u0e41\u0e04\u0e0a\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e01\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e1a\u0e1a\u0e25\u0e2d\u0e08\u0e34\u0e04\u0e31\u0e25\u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17097=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e35\u0e25\u0e34\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e15\u0e32\u0e23\u0e32\u0e07\u0e14\u0e31\u0e0a\u0e19\u0e35 PL/SQL \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17098=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 lob \u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e21\u0e35\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17099=\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e2d\u0e07\u0e15\u0e32\u0e23\u0e32\u0e07\u0e14\u0e31\u0e0a\u0e19\u0e35 PL/SQL \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17100=\u0e08\u0e32\u0e27\u0e32\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e10\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17101=\u0e04\u0e38\u0e13\u0e2a\u0e21\u0e1a\u0e31\u0e15\u0e34\u0e02\u0e2d\u0e07\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c\u0e1e\u0e39\u0e25\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d OCI \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17102=Bfile \u0e43\u0e0a\u0e49\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e2d\u0e48\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27 + +ORA-17103=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e17\u0e35\u0e48\u0e08\u0e30\u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e1c\u0e48\u0e32\u0e19 getConnection \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 \u0e43\u0e2b\u0e49\u0e43\u0e0a\u0e49 getJavaSqlConnection \u0e41\u0e17\u0e19 + +ORA-17104=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 SQL \u0e17\u0e35\u0e48\u0e08\u0e30\u0e23\u0e31\u0e19\u0e08\u0e30\u0e15\u0e49\u0e2d\u0e07\u0e44\u0e21\u0e48\u0e40\u0e27\u0e49\u0e19\u0e27\u0e48\u0e32\u0e07\u0e44\u0e27\u0e49\u0e2b\u0e23\u0e37\u0e2d\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17105=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e42\u0e0b\u0e19\u0e40\u0e27\u0e25\u0e32\u0e02\u0e2d\u0e07\u0e40\u0e0b\u0e2a\u0e0a\u0e31\u0e19\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d + +ORA-17106=\u0e23\u0e30\u0e1a\u0e38\u0e04\u0e2d\u0e19\u0e1f\u0e34\u0e40\u0e01\u0e2d\u0e40\u0e23\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07\u0e1e\u0e39\u0e25\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e44\u0e14\u0e23\u0e40\u0e27\u0e2d\u0e23\u0e4c JDBC-OCI \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17107=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e1e\u0e23\u0e47\u0e2d\u0e01\u0e0b\u0e35\u0e48\u0e17\u0e35\u0e48\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17108=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e23\u0e30\u0e1a\u0e38\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e43\u0e19 defineColumnType + +ORA-17109=\u0e44\u0e21\u0e48\u0e1e\u0e1a\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e23\u0e2b\u0e31\u0e2a\u0e02\u0e2d\u0e07\u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30\u0e08\u0e32\u0e27\u0e32\u0e41\u0e1a\u0e1a\u0e21\u0e32\u0e15\u0e23\u0e10\u0e32\u0e19 + +ORA-17110=\u0e01\u0e32\u0e23\u0e23\u0e31\u0e19\u0e40\u0e2a\u0e23\u0e47\u0e08\u0e2a\u0e21\u0e1a\u0e39\u0e23\u0e13\u0e4c\u0e42\u0e14\u0e22\u0e21\u0e35\u0e04\u0e33\u0e40\u0e15\u0e37\u0e2d\u0e19 + +ORA-17111=\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e17\u0e21\u0e4c\u0e40\u0e2d\u0e32\u0e15\u0e4c TTL \u0e02\u0e2d\u0e07\u0e41\u0e04\u0e0a\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17112=\u0e23\u0e30\u0e1a\u0e38\u0e23\u0e30\u0e22\u0e30\u0e40\u0e27\u0e25\u0e32\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e40\u0e18\u0e23\u0e14\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17113=\u0e04\u0e48\u0e32\u0e23\u0e30\u0e22\u0e30\u0e40\u0e27\u0e25\u0e32\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e40\u0e18\u0e23\u0e14\u0e21\u0e32\u0e01\u0e01\u0e27\u0e48\u0e32\u0e04\u0e48\u0e32\u0e44\u0e17\u0e21\u0e4c\u0e40\u0e2d\u0e32\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e41\u0e04\u0e0a + +ORA-17114=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e1a\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21 + +ORA-17115=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e23\u0e25\u0e41\u0e1a\u0e47\u0e04\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e1a\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21 + +ORA-17116=\u0e40\u0e1b\u0e34\u0e14\u0e01\u0e32\u0e23\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e2d\u0e22\u0e39\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17117=\u0e01\u0e33\u0e2b\u0e19\u0e14 Savepoint \u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e2d\u0e22\u0e39\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17118=\u0e40\u0e23\u0e35\u0e22\u0e01 ID \u0e02\u0e2d\u0e07 Savepoint \u0e17\u0e35\u0e48\u0e15\u0e31\u0e49\u0e07\u0e0a\u0e37\u0e48\u0e2d\u0e44\u0e27\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17119=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e23\u0e35\u0e22\u0e01\u0e0a\u0e37\u0e48\u0e2d\u0e02\u0e2d\u0e07 Savepoint \u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e15\u0e31\u0e49\u0e07\u0e0a\u0e37\u0e48\u0e2d\u0e44\u0e27\u0e49 + +ORA-17120=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e01\u0e33\u0e2b\u0e19\u0e14 Savepoint \u0e02\u0e13\u0e30\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e01\u0e32\u0e23\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34 + +ORA-17121=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e23\u0e25\u0e41\u0e1a\u0e47\u0e04\u0e44\u0e1b\u0e22\u0e31\u0e07 Savepoint \u0e02\u0e13\u0e30\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e01\u0e32\u0e23\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34 + +ORA-17122=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e23\u0e25\u0e41\u0e1a\u0e47\u0e04\u0e01\u0e25\u0e31\u0e1a\u0e44\u0e1b\u0e17\u0e35\u0e48 Savepoint \u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e1a\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21 + +ORA-17123=\u0e23\u0e30\u0e1a\u0e38\u0e02\u0e19\u0e32\u0e14\u0e41\u0e04\u0e0a\u0e02\u0e2d\u0e07\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17124=\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e17\u0e21\u0e4c\u0e40\u0e2d\u0e32\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e0a\u0e48\u0e27\u0e07\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e43\u0e19\u0e41\u0e04\u0e0a\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17200=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e41\u0e1b\u0e25\u0e07\u0e2a\u0e15\u0e23\u0e34\u0e07\u0e40\u0e1b\u0e34\u0e14\u0e02\u0e2d\u0e07 XA \u0e08\u0e32\u0e01 Java \u0e40\u0e1b\u0e47\u0e19 C \u0e2d\u0e22\u0e48\u0e32\u0e07\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17201=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e41\u0e1b\u0e25\u0e07\u0e2a\u0e15\u0e23\u0e34\u0e07\u0e1b\u0e34\u0e14\u0e02\u0e2d\u0e07 XA \u0e08\u0e32\u0e01 Java \u0e40\u0e1b\u0e47\u0e19 C \u0e2d\u0e22\u0e48\u0e32\u0e07\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17202=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e41\u0e1b\u0e25\u0e07\u0e0a\u0e37\u0e48\u0e2d RM \u0e08\u0e32\u0e01 Java \u0e40\u0e1b\u0e47\u0e19 C \u0e44\u0e14\u0e49\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17203=\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e1e\u0e2d\u0e22\u0e40\u0e15\u0e2d\u0e23\u0e4c\u0e40\u0e1b\u0e47\u0e19 jlong \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17204=\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e04\u0e48\u0e32\u0e2d\u0e34\u0e19\u0e1e\u0e38\u0e15\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e40\u0e25\u0e47\u0e01\u0e40\u0e01\u0e34\u0e19\u0e44\u0e1b\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e40\u0e01\u0e47\u0e1a\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 OCI + +ORA-17205=\u0e23\u0e31\u0e1a\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 OCISvcCtx \u0e08\u0e32\u0e01 C-XA \u0e42\u0e14\u0e22\u0e43\u0e0a\u0e49 xaoSvcCtx \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17206=\u0e23\u0e31\u0e1a\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 OCIEnv \u0e08\u0e32\u0e01 C-XA \u0e42\u0e14\u0e22\u0e43\u0e0a\u0e49 xaoEnv \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17207=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e04\u0e38\u0e13\u0e2a\u0e21\u0e1a\u0e31\u0e15\u0e34 tnsEntry \u0e44\u0e27\u0e49\u0e43\u0e19 DataSource + +ORA-17213=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_RMERR \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_open + +ORA-17215=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_INVAL \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_open + +ORA-17216=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_PROTO \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_open + +ORA-17233=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_RMERR \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_close + +ORA-17235=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_INVAL \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_close + +ORA-17236=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_PROTO \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u0e01\u0e32\u0e23\u0e25\u0e30\u0e40\u0e21\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e42\u0e1b\u0e23\u0e42\u0e15\u0e04\u0e2d\u0e25 + +ORA-17402=\u0e15\u0e49\u0e2d\u0e07\u0e01\u0e32\u0e23\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 RPA \u0e40\u0e1e\u0e35\u0e22\u0e07\u0e2b\u0e19\u0e36\u0e48\u0e07\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 + +ORA-17403=\u0e15\u0e49\u0e2d\u0e07\u0e01\u0e32\u0e23\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 RXH \u0e40\u0e1e\u0e35\u0e22\u0e07\u0e2b\u0e19\u0e36\u0e48\u0e07\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 + +ORA-17404=\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a RXD \u0e21\u0e32\u0e01\u0e01\u0e27\u0e48\u0e32\u0e17\u0e35\u0e48\u0e04\u0e32\u0e14\u0e44\u0e27\u0e49 + +ORA-17405=\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e02\u0e2d\u0e07 UAC \u0e44\u0e21\u0e48\u0e40\u0e17\u0e48\u0e32\u0e01\u0e31\u0e1a\u0e28\u0e39\u0e19\u0e22\u0e4c + +ORA-17406=\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e1a\u0e31\u0e1f\u0e40\u0e1f\u0e2d\u0e23\u0e4c + +ORA-17407=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 (setRep) \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17408=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 (getRep) \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17409=\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e1a\u0e31\u0e1f\u0e40\u0e1f\u0e2d\u0e23\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17410=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e17\u0e35\u0e48\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a\u0e08\u0e32\u0e01\u0e0b\u0e47\u0e2d\u0e01\u0e40\u0e01\u0e47\u0e15 + +ORA-17411=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e19 + +ORA-17412=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14 + +ORA-17413=\u0e40\u0e01\u0e34\u0e19\u0e02\u0e19\u0e32\u0e14\u0e02\u0e2d\u0e07\u0e04\u0e35\u0e22\u0e4c + +ORA-17414=\u0e02\u0e19\u0e32\u0e14\u0e1a\u0e31\u0e1f\u0e40\u0e1f\u0e2d\u0e23\u0e4c\u0e17\u0e35\u0e48\u0e08\u0e30\u0e40\u0e01\u0e47\u0e1a\u0e0a\u0e37\u0e48\u0e2d\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e40\u0e1e\u0e35\u0e22\u0e07\u0e1e\u0e2d + +ORA-17415=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e19\u0e35\u0e49\u0e22\u0e31\u0e07\u0e44\u0e21\u0e48\u0e21\u0e35\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 + +ORA-17416=FATAL + +ORA-17417=\u0e40\u0e01\u0e34\u0e14\u0e1b\u0e31\u0e0d\u0e2b\u0e32\u0e40\u0e01\u0e35\u0e48\u0e22\u0e27\u0e01\u0e31\u0e1a NLS \u0e16\u0e2d\u0e14\u0e23\u0e2b\u0e31\u0e2a\u0e0a\u0e37\u0e48\u0e2d\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17418=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e08\u0e32\u0e01\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e1f\u0e34\u0e25\u0e14\u0e4c\u0e02\u0e2d\u0e07\u0e42\u0e04\u0e23\u0e07\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e20\u0e32\u0e22\u0e43\u0e19 + +ORA-17419=\u0e08\u0e33\u0e19\u0e27\u0e19\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e41\u0e2a\u0e14\u0e07\u0e1c\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17420=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07 Oracle + +ORA-17421=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2b\u0e23\u0e37\u0e2d\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d + +ORA-17422=\u0e04\u0e25\u0e32\u0e2a\u0e43\u0e19\u0e41\u0e1f\u0e04\u0e15\u0e2d\u0e23\u0e35\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17423=\u0e01\u0e32\u0e23\u0e43\u0e0a\u0e49\u0e1a\u0e25\u0e47\u0e2d\u0e04 PLSQL \u0e42\u0e14\u0e22\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14 IOV + +ORA-17424=\u0e01\u0e33\u0e25\u0e31\u0e07\u0e40\u0e23\u0e34\u0e48\u0e21\u0e1b\u0e0f\u0e34\u0e1a\u0e31\u0e15\u0e34\u0e01\u0e32\u0e23\u0e21\u0e32\u0e23\u0e4c\u0e41\u0e0a\u0e25\u0e2d\u0e37\u0e48\u0e19 + +ORA-17425=\u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19\u0e2a\u0e15\u0e23\u0e35\u0e21\u0e43\u0e19\u0e1a\u0e25\u0e47\u0e2d\u0e04 PLSQL + +ORA-17426=\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07\u0e15\u0e31\u0e27\u0e41\u0e1b\u0e23\u0e44\u0e1a\u0e19\u0e14\u0e4c\u0e17\u0e31\u0e49\u0e07 IN \u0e41\u0e25\u0e30 OUT \u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17427=\u0e43\u0e0a\u0e49 OAC \u0e17\u0e35\u0e48\u0e22\u0e31\u0e07\u0e44\u0e21\u0e48\u0e40\u0e23\u0e34\u0e48\u0e21\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19 + +ORA-17428=\u0e15\u0e49\u0e2d\u0e07\u0e25\u0e47\u0e2d\u0e01\u0e2d\u0e2d\u0e19\u0e2b\u0e25\u0e31\u0e07\u0e08\u0e32\u0e01\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e25\u0e49\u0e27 + +ORA-17429=\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e40\u0e02\u0e49\u0e32\u0e01\u0e31\u0e1a\u0e40\u0e0b\u0e34\u0e23\u0e4c\u0e1f\u0e40\u0e27\u0e2d\u0e23\u0e4c + +ORA-17430=\u0e15\u0e49\u0e2d\u0e07\u0e25\u0e47\u0e2d\u0e01\u0e2d\u0e2d\u0e19\u0e40\u0e02\u0e49\u0e32\u0e01\u0e31\u0e1a\u0e40\u0e0b\u0e34\u0e23\u0e4c\u0e1f\u0e40\u0e27\u0e2d\u0e23\u0e4c + +ORA-17431=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 SQL \u0e17\u0e35\u0e48\u0e08\u0e30\u0e1e\u0e32\u0e23\u0e4c\u0e0b\u0e21\u0e35\u0e04\u0e48\u0e32\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17432=\u0e1e\u0e1a\u0e15\u0e31\u0e27\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19 all7 + +ORA-17433=\u0e1e\u0e1a\u0e2d\u0e32\u0e23\u0e4c\u0e01\u0e34\u0e27\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 + +ORA-17434=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e43\u0e19\u0e42\u0e2b\u0e21\u0e14\u0e2a\u0e15\u0e23\u0e35\u0e21 + +ORA-17435=\u0e08\u0e33\u0e19\u0e27\u0e19 in_out_binds \u0e43\u0e19 IOV \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17436=\u0e08\u0e33\u0e19\u0e27\u0e19 outbinds \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17437=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e01\u0e31\u0e1a\u0e2d\u0e32\u0e23\u0e4c\u0e01\u0e34\u0e27\u0e40\u0e21\u0e19\u0e15\u0e4c IN/OUT \u0e43\u0e19\u0e1a\u0e25\u0e47\u0e2d\u0e04 PLSQL + +ORA-17438=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19 - \u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e04\u0e32\u0e14\u0e2b\u0e21\u0e32\u0e22 + +ORA-17439=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17 SQL \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17440=DBItem/DBType \u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17441=\u0e43\u0e0a\u0e49\u0e01\u0e31\u0e1a Oracle \u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 \u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e15\u0e48\u0e33\u0e2a\u0e38\u0e14\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e14\u0e49\u0e04\u0e37\u0e2d 7.2.3 + +ORA-17442=\u0e04\u0e48\u0e32 Refcursor \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17443=\u0e23\u0e30\u0e1a\u0e38\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e2b\u0e23\u0e37\u0e2d\u0e23\u0e2b\u0e31\u0e2a\u0e1c\u0e48\u0e32\u0e19\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25\u0e01\u0e31\u0e1a\u0e44\u0e14\u0e23\u0e40\u0e27\u0e2d\u0e23\u0e4c THIN \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17444=\u0e43\u0e0a\u0e49\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07\u0e42\u0e1b\u0e23\u0e42\u0e15\u0e04\u0e2d\u0e25 TTC \u0e17\u0e35\u0e48\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a\u0e08\u0e32\u0e01\u0e40\u0e0b\u0e34\u0e23\u0e4c\u0e1f\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/00e225d400a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/00e225d400a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..67a61fa --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/00e225d400a4001c1027e59cc3e35e89 @@ -0,0 +1,55 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS") + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/b02d0e1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/b02d0e1698af001c18c4935e001381da new file mode 100644 index 0000000..b6b1b00 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/44/b02d0e1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/a02da41e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/a02da41e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..9d6f5b8 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/a02da41e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=B\u0142\u0105d wewn\u0119trzny + +ORA-17002=Wyj\u0105tek we-wy + +ORA-17003=Niepoprawny indeks kolumny + +ORA-17004=Niepoprawny typ kolumny + +ORA-17005=Nieobs\u0142ugiwany typ kolumny + +ORA-17006=Niepoprawna nazwa kolumny + +ORA-17007=Niepoprawna kolumna dynamiczna + +ORA-17008=Zamkni\u0119te po\u0142\u0105czenie + +ORA-17009=Zamkni\u0119ta instrukcja + +ORA-17010=Zamkni\u0119ty zestaw wynik\u00f3w + +ORA-17011=Wyczerpany zestaw wynik\u00f3w + +ORA-17012=Konflikt typu parametru + +ORA-17014=Nie wywo\u0142ano ResultSet.next + +ORA-17015=Instrukcja zosta\u0142a anulowana + +ORA-17016=Przekroczono limit czasu instrukcji + +ORA-17017=Kursor jest ju\u017c zainicjalizowany + +ORA-17018=Niepoprawny kursor + +ORA-17019=Mo\u017cna tylko opisa\u0107 zapytanie + +ORA-17020=Niepoprawne wst\u0119pne pobranie wiersza + +ORA-17021=Brakuj\u0105ce definicje + +ORA-17022=Brakuj\u0105ce definicje w indeksie + +ORA-17023=Funkcja nieobs\u0142ugiwana + +ORA-17024=Nie odczytano danych + +ORA-17025=B\u0142\u0105d w defines.isNull () + +ORA-17026=Nadmiar numeryczny + +ORA-17027=Strumie\u0144 zosta\u0142 ju\u017c zamkni\u0119ty + +ORA-17028=Nie mo\u017cna wykona\u0107 nowych definicji, dop\u00f3ki bie\u017c\u0105cy zestaw wynik\u00f3w nie zostanie zamkni\u0119ty + +ORA-17029=setReadOnly: Po\u0142\u0105czenia \"tylko do odczytu\" nie s\u0105 obs\u0142ugiwane + +ORA-17030=Jedyne poprawne poziomy transakcji to READ_COMMITTED i SERIALIZABLE + +ORA-17031=setAutoClose: obs\u0142ugiwany tylko tryb \"on\" + +ORA-17032=nie mo\u017cna ustawi\u0107 wst\u0119pnego pobierania wierszy na zero + +ORA-17033=Zniekszta\u0142cony ci\u0105g SQL92 - pozycja + +ORA-17034=Nieobs\u0142ugiwany token SQL92 - pozycja + +ORA-17035=Nieobs\u0142ugiwany zestaw znak\u00f3w! + +ORA-17036=wyj\u0105tek w OracleNumber + +ORA-17037=Niepowodzenie konwersji mi\u0119dzy UTF8 i UCS2 + +ORA-17038=Za ma\u0142a tablica bajtowa + +ORA-17039=Za ma\u0142a tablica znakowa + +ORA-17040=Dla URL po\u0142\u0105czenia musi by\u0107 podany protok\u00f3\u0142 podrz\u0119dny + +ORA-17041=Brakuje parametru IN lub OUT przy indeksie: + +ORA-17042=Niepoprawna warto\u015b\u0107 wsadowa + +ORA-17043=Niepoprawny maksymalny rozmiar strumienia + +ORA-17044=B\u0142\u0105d wewn\u0119trzny: nie przydzielono tablicy danych + +ORA-17045=B\u0142\u0105d wewn\u0119trzny: pr\u00f3ba uzyskania dost\u0119pu do warto\u015bci wi\u0105zania poza warto\u015bci\u0105 wsadow\u0105 + +ORA-17046=B\u0142\u0105d wewn\u0119trzny: niepoprawny indeks dost\u0119pu do danych + +ORA-17047=B\u0142\u0105d podczas analizy sk\u0142adniowej deskryptora typu + +ORA-17048=Typ niezdefiniowany + +ORA-17049=Niesp\u00f3jne typy obiekt\u00f3w SQL i obiekt\u00f3w Javy + +ORA-17050=nie ma takiego elementu w wektorze + +ORA-17051=Ten interfejs API nie mo\u017ce by\u0107 u\u017cyty dla typ\u00f3w nie-UDT + +ORA-17052=To odwo\u0142anie jest niepoprawne + +ORA-17053=Ten rozmiar jest niepoprawny + +ORA-17054=Lokalizator LOB jest niepoprawny + +ORA-17055=Napotkano niepoprawny znak w + +ORA-17056=Nieobs\u0142ugiwany zestaw znak\u00f3w + +ORA-17057=Zamkni\u0119ty LOB + +ORA-17058=B\u0142\u0105d wewn\u0119trzny: niepoprawny wsp\u00f3\u0142czynnik konwersji NLS + +ORA-17059=Nie uda\u0142o si\u0119 przekszta\u0142ci\u0107 w reprezentacj\u0119 wewn\u0119trzn\u0105 + +ORA-17060=Nie uda\u0142o si\u0119 utworzy\u0107 deskryptora + +ORA-17061=Brakuj\u0105cy deskryptor + +ORA-17062=Kursor odwo\u0142ania jest niepoprawny + +ORA-17063=Nie w transakcji + +ORA-17064=Niepoprawna sk\u0142adnia lub nazwa bazy danych jest NULL + +ORA-17065=Klasa konwersji jest NULL + +ORA-17066=Wymagana specyficzna implementacja warstwy dost\u0119pu + +ORA-17067=Podano niepoprawny adres Oracle URL + +ORA-17068=Niepoprawne argumenty w wywo\u0142aniu + +ORA-17069=Prosz\u0119 u\u017cy\u0107 bezpo\u015bredniego wywo\u0142ania XA + +ORA-17070=Rozmiar danych jest wi\u0119kszy ni\u017c maksymalny, dopuszczalny dla tego typu + +ORA-17071=Przekroczono maksymaln\u0105 granic\u0119 VARRAY + +ORA-17072=Wstawiana warto\u015b\u0107 jest zbyt du\u017ca dla kolumny + +ORA-17073=Uchwyt logiczny nie jest ju\u017c poprawny + +ORA-17074=niepoprawny wzorzec nazwy + +ORA-17075=Niepoprawna operacja dla zestawu wynik\u00f3w \"tylko do przes\u0142ania\" + +ORA-17076=Niepoprawna operacja dla zestawu wynik\u00f3w \"tylko do odczytu\" + +ORA-17077=Nie uda\u0142o si\u0119 ustawi\u0107 warto\u015bci REF + +ORA-17078=Nie mo\u017cna wykona\u0107 operacji, poniewa\u017c po\u0142\u0105czenia s\u0105 ju\u017c otwarte + +ORA-17079=Uwierzytelnienia u\u017cytkownika r\u00f3\u017cni\u0105 si\u0119 od istniej\u0105cych + +ORA-17080=niepoprawne polecenie wsadowe + +ORA-17081=podczas operacji wsadowej wyst\u0105pi\u0142 b\u0142\u0105d + +ORA-17082=Nie bie\u017c\u0105cy wiersz + +ORA-17083=Nie we wstawianym wierszu + +ORA-17084=Wywo\u0142anie wstawianego wiersza + +ORA-17085=Wyst\u0119puje konflikt warto\u015bci + +ORA-17086=Niezdefiniowana warto\u015b\u0107 kolumny we wstawianym wierszu + +ORA-17087=Zignorowano podpowied\u017a: setFetchDirection() + +ORA-17088=Nieobs\u0142ugiwana sk\u0142adnia dla \u017c\u0105danego typu zestawu wynik\u00f3w i poziomu wsp\u00f3\u0142bie\u017cno\u015bci +ORA-17089=b\u0142\u0105d wewn\u0119trzny + +ORA-17090=niedozwolona operacja + +ORA-17091=Nie mo\u017cna utworzy\u0107 zestawu wyniku \u017c\u0105danego typu i/lub poziomu wsp\u00f3\u0142bie\u017cno\u015bci + +ORA-17092=Instrukcje JDBC nie mog\u0105 by\u0107 utworzone lub wykonane na ko\u0144cu przetwarzania wywo\u0142ania + +ORA-17093=Operacja OCI zwr\u00f3ci\u0142a OCI_SUCCESS_WITH_INFO + +ORA-17094=Niezgodno\u015b\u0107 wersji typu obiektu + +ORA-17095=Nie ustawiono rozmiaru podr\u0119cznej pami\u0119ci instrukcji + +ORA-17096=Buforowanie instrukcji nie mo\u017ce by\u0107 w\u0142\u0105czone dla tego po\u0142\u0105czenia logicznego. + +ORA-17097=Niepoprawny typ elementu tabeli indeksu PL/SQL + +ORA-17098=Niepoprawna operacja opr\u00f3\u017cnienia LOB + +ORA-17099=Niepoprawna d\u0142ugo\u015b\u0107 tablicy dla tabeli indeksu PL/SQL + +ORA-17100=Niepoprawny obiekt Java bazy danych + +ORA-17101=Niepoprawne w\u0142a\u015bciwo\u015bci obiektu puli po\u0142\u0105cze\u0144 OCI + +ORA-17102=BFILE jest tylko do odczytu + +ORA-17103=przez getConnection zostanie zwr\u00f3cony niepoprawny typ po\u0142\u0105czenia. Zamiast tego prosz\u0119 u\u017cy\u0107 getJavaSqlConnection + +ORA-17104=instrukcja SQL do wykonania nie mo\u017ce by\u0107 ani pusta, ani Null + +ORA-17105=nie zosta\u0142a okre\u015blona strefa czasowa po\u0142\u0105czenia sesji + +ORA-17106=okre\u015blono niepoprawn\u0105 konfiguracj\u0119 puli po\u0142\u0105cze\u0144 programu obs\u0142ugi JDBC-OCI + +ORA-17107=podano niepoprawny typ proxy + +ORA-17108=W defineColumnType nie podano maksymalnej d\u0142ugo\u015bci + +ORA-17109=nie znaleziono standardowego kodowania znak\u00f3w w Javie + +ORA-17110=wykonywanie uko\u0144czono z ostrze\u017ceniem + +ORA-17111=Podano niepoprawny limit czasu TTL pami\u0119ci podr\u0119cznej po\u0142\u0105cze\u0144 + +ORA-17112=Podano niepoprawny interwa\u0142 w\u0105tku + +ORA-17113=Interwa\u0142 w\u0105tku jest wi\u0119kszy ni\u017c limit czasu pami\u0119ci podr\u0119cznej + +ORA-17114=nie uda\u0142o si\u0119 u\u017cy\u0107 lokalnego zatwierdzania transakcji w transakcji globalnej + +ORA-17115=nie uda\u0142o si\u0119 u\u017cy\u0107 lokalnego wycofywania transakcji w transakcji globalnej + +ORA-17116=nie uda\u0142o si\u0119 w\u0142\u0105czy\u0107 automatycznego zatwierdzania w aktywnej globalnej transakcji + +ORA-17117=nie uda\u0142o si\u0119 ustawi\u0107 punktu zapisywania w aktywnej globalnej transakcji + +ORA-17118=nie uda\u0142o si\u0119 uzyska\u0107 identyfikatora dla nazwanego punktu zapisywania + +ORA-17119=nie uda\u0142o si\u0119 uzyska\u0107 identyfikatora dla nienazwanego punktu zapisywania + +ORA-17120=nie uda\u0142o si\u0119 ustawi\u0107 punktu zapisywania z w\u0142\u0105czonym automatycznym zatwierdzaniem + +ORA-17121=nie uda\u0142o si\u0119 wycofa\u0107 do punktu zapisywania z w\u0142\u0105czonym automatycznym zatwierdzaniem + +ORA-17122=w transakcji globalnej nie uda\u0142o si\u0119 wycofa\u0107 do lokalnego punktu zapisywania transakcji + +ORA-17123=Podano niepoprawny rozmiar podr\u0119cznej pami\u0119ci instrukcji + +ORA-17124=Podano niepoprawny limit czasu nieaktywno\u015bci pami\u0119ci podr\u0119cznej po\u0142\u0105cze\u0144 + +ORA-17200=Nie mo\u017cna poprawnie przekonwertowa\u0107 ci\u0105gu otwieraj\u0105cego XA z Javy do C + +ORA-17201=Nie mo\u017cna poprawnie przekonwertowa\u0107 ci\u0105gu zamykaj\u0105cego XA z Javy do C + +ORA-17202=Nie mo\u017cna poprawnie przekonwertowa\u0107 nazwy RM z Javy do C + +ORA-17203=Nie uda\u0142o si\u0119 zmieni\u0107 typu wska\u017anika na jlong + +ORA-17204=Tablica wej\u015bciowa zbyt ma\u0142a, aby pomie\u015bci\u0107 uchwyty OCI + +ORA-17205=Nie uda\u0142o si\u0119 uzyska\u0107 uchwytu OCISvcCtx z C-XA u\u017cywaj\u0105c xaoSvcCtx + +ORA-17206=Nie uda\u0142o si\u0119 uzyska\u0107 uchwytu OCIEnv z C-XA u\u017cywaj\u0105c xaoEnv + +ORA-17207=W\u0142a\u015bciwo\u015b\u0107 tnsEntry nie zosta\u0142a okre\u015blona w DataSource + +ORA-17213=C-XA zwr\u00f3ci\u0142o XAER_RMERR podczas xa_open + +ORA-17215=C-XA zwr\u00f3ci\u0142o XAER_INVAL podczas xa_open + +ORA-17216=C-XA zwr\u00f3ci\u0142o XAER_PROTO podczas xa_open + +ORA-17233=C-XA zwr\u00f3ci\u0142o XAER_RMERR podczas xa_close + +ORA-17235=C-XA zwr\u00f3ci\u0142o XAER_INVAL podczas xa_close + +ORA-17236=C-XA zwr\u00f3ci\u0142o XAER_PROTO podczas xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Naruszenie protoko\u0142u + +ORA-17402=Jest oczekiwany tylko jeden komunikat RPA + +ORA-17403=Jest oczekiwany tylko jeden komunikat RXH + +ORA-17404=Otrzymano wi\u0119cej komunikat\u00f3w RXD ni\u017c oczekiwano + +ORA-17405=D\u0142ugo\u015b\u0107 UAC nie jest r\u00f3wna zero + +ORA-17406=Przekroczono maksymalny rozmiar bufora + +ORA-17407=niepoprawna reprezentacja typu (setRep) + +ORA-17408=niepoprawna reprezentacja typu (getRep) + +ORA-17409=niepoprawny rozmiar bufora + +ORA-17410=Nie ma wi\u0119cej danych do odczytu z gniazda + +ORA-17411=Niezgodno\u015b\u0107 reprezentacji typ\u00f3w danych + +ORA-17412=D\u0142ugo\u015b\u0107 typu wi\u0119ksza ni\u017c maksymalna + +ORA-17413=Przekroczono rozmiar klucza + +ORA-17414=Za ma\u0142y rozmiar bufora, aby przechowa\u0107 nazwy kolumn + +ORA-17415=Ten typ nie zosta\u0142 obs\u0142u\u017cony + +ORA-17416=FATAL + +ORA-17417=Problem NLS - nie uda\u0142o si\u0119 zdekodowa\u0107 nazw kolumn + +ORA-17418=B\u0142\u0105d d\u0142ugo\u015bci pola wewn\u0119trznej struktury + +ORA-17419=Zosta\u0142a zwr\u00f3cona niepoprawna liczba kolumn + +ORA-17420=Niezdefiniowana wersja Oracle + +ORA-17421=Niezdefiniowane typy lub niezdefiniowane po\u0142\u0105czenie + +ORA-17422=Niepoprawna klasa w fabryce + +ORA-17423=U\u017cycie bloku PLSQL bez zdefiniowanej IOV + +ORA-17424=Pr\u00f3ba innej operacji zbierania + +ORA-17425=Zwracany strumie\u0144 w bloku PLSQL + +ORA-17426=Oba wi\u0119zy IN i OUT s\u0105 NULL + +ORA-17427=U\u017cycie niezainicjalizowanego OAC + +ORA-17428=Po po\u0142\u0105czeniu trzeba wywo\u0142a\u0107 logowanie (logon) + +ORA-17429=Przynajmniej musi by\u0107 nawi\u0105zane po\u0142\u0105czenie z serwerem + +ORA-17430=Trzeba by\u0107 zalogowanym do serwera + +ORA-17431=Instrukcja SQL przeznaczona do analizy sk\u0142adniowej jest NULL + +ORA-17432=niepoprawne opcje w all7 + +ORA-17433=niepoprawne argumenty w wywo\u0142aniu + +ORA-17434=nie w trybie strumieniowania + +ORA-17435=niepoprawna liczba in_out_binds w IOV + +ORA-17436=niepoprawna liczba wi\u0119z\u00f3w out + +ORA-17437=B\u0142\u0105d w argumencie (argumentach) IN/OUT bloku PLSQL + +ORA-17438=Wewn\u0119trzny - nieoczekiwana warto\u015b\u0107 + +ORA-17439=Niepoprawny typ SQL + +ORA-17440=Element bazy danych/Typ bazy danych jest NULL + +ORA-17441=Nieobs\u0142ugiwana wersja Oracle. Najni\u017csza obs\u0142ugiwana wersja to 7.2.3. + +ORA-17442=Niepoprawna warto\u015b\u0107 kursora odwo\u0142ania + +ORA-17443=W programie obs\u0142ugi THIN nie jest dozwolony ani u\u017cytkownik NULL, ani has\u0142o NULL + +ORA-17444=Uzyskana z serwera wersja protoko\u0142u TTC nie jest obs\u0142ugiwana + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/b0e75221cba4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/b0e75221cba4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..6122e2a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/b0e75221cba4001c1acc9f54b60f9b57 @@ -0,0 +1,83 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new BorderLayout); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + //Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setLayout( new FlowLayout()); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/c0d87b1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/c0d87b1598af001c18c4935e001381da new file mode 100644 index 0000000..7f75162 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/c0d87b1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/e0adef0affa3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/e0adef0affa3001c1027e59cc3e35e89 new file mode 100644 index 0000000..e6ab8ff --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/45/e0adef0affa3001c1027e59cc3e35e89 @@ -0,0 +1,47 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept."); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + } + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/406b5cfd81a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/406b5cfd81a9001c1d3abf97745a02da new file mode 100644 index 0000000..54a0f21 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/406b5cfd81a9001c1d3abf97745a02da @@ -0,0 +1,104 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/a01f110afda3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/a01f110afda3001c1027e59cc3e35e89 new file mode 100644 index 0000000..6148455 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/a01f110afda3001c1027e59cc3e35e89 @@ -0,0 +1,43 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + Connection conn = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/c09ca7e7feae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/c09ca7e7feae001c14499bdcdfff58b3 new file mode 100644 index 0000000..85a0db6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/c09ca7e7feae001c14499bdcdfff58b3 @@ -0,0 +1,203 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; +import javax.swing.JOptionPane; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + private JButton jOk; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypte) : " + this.jtextMdp.getPassword().toString() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(this.jtextMdp.getPassword().toString()); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + + // Fonction de blocage de la fenetre + public void block(){ + this.jtextServeur.setEnabled(false); + this.jtextPort.setEnabled(false); + this.jtextBase.setEnabled(false); + this.jtextIdentifiant.setEnabled(false); + this.jtextMdp.setEnabled(false); + + this.jOk.setEnabled(false); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/f0cd30ae4daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/f0cd30ae4daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..5de350d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/f0cd30ae4daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,202 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + + // Rcupration des donnes entres par l'utilisateur + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getPassword().toString(); + + + this.pr.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/f0e989cb06af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/f0e989cb06af001c14499bdcdfff58b3 new file mode 100644 index 0000000..10f02fe --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/46/f0e989cb06af001c14499bdcdfff58b3 @@ -0,0 +1,12 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + public IHMRequete(IHMPrincipale pr){ + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/00c7921698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/00c7921698af001c18c4935e001381da new file mode 100644 index 0000000..e3b49f6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/00c7921698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/40444bd397af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/40444bd397af001c18c4935e001381da new file mode 100644 index 0000000..f097cf0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/40444bd397af001c18c4935e001381da @@ -0,0 +1,149 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + DatabaseMetaData metaData; + + metaData = connection.getMetaData(); + System.out.print(metaData.getDriverName()); + // getVersion + // getConnectionName ??? + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/5037756782a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/5037756782a9001c1d3abf97745a02da new file mode 100644 index 0000000..af50001 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/5037756782a9001c1d3abf97745a02da @@ -0,0 +1,137 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/706ce87e4caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/706ce87e4caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..c3544e9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/706ce87e4caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + int jo; + jo = JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/c08c7d9549aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/c08c7d9549aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..d666d04 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/c08c7d9549aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/d0edb1c3c6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/d0edb1c3c6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..2cf5e23 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/47/d0edb1c3c6a4001c1acc9f54b60f9b57 @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/48/6059ccdfcba4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/48/6059ccdfcba4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..0e9263e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/48/6059ccdfcba4001c1acc9f54b60f9b57 @@ -0,0 +1,82 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setLayout( new FlowLayout()); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/48/8085541698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/48/8085541698af001c18c4935e001381da new file mode 100644 index 0000000..3d8ea56 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/48/8085541698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/48/c020d51998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/48/c020d51998af001c18c4935e001381da new file mode 100644 index 0000000..778001e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/48/c020d51998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/49/c0cb24f004a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/49/c0cb24f004a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..90dc315 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/49/c0cb24f004a4001c1027e59cc3e35e89 @@ -0,0 +1,75 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/49/e050691798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/49/e050691798af001c18c4935e001381da new file mode 100644 index 0000000..a7a7be0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/49/e050691798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4a/30258a1303a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4a/30258a1303a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..65e2aa6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4a/30258a1303a4001c1027e59cc3e35e89 @@ -0,0 +1,69 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + resultat.next(); + resultat.toString(); + + // traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4a/3052421598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4a/3052421598af001c18c4935e001381da new file mode 100644 index 0000000..568ed93 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4a/3052421598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4a/403eae1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4a/403eae1698af001c18c4935e001381da new file mode 100644 index 0000000..bab3d05 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4a/403eae1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4b/7075651698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4b/7075651698af001c18c4935e001381da new file mode 100644 index 0000000..14622cd Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4b/7075651698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4b/8065dcf820af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4b/8065dcf820af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..5442fea --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4b/8065dcf820af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Eroare intern\u0103 + +ORA-17002=Excep\u0163ie I/O + +ORA-17003=Index coloan\u0103 nevalid + +ORA-17004=Tip coloan\u0103 nevalid + +ORA-17005=Tip de coloan\u0103 neacceptat + +ORA-17006=Nume nevalid de coloan\u0103 + +ORA-17007=Coloan\u0103 dinamic\u0103 nevalid\u0103 + +ORA-17008=Conexiunea a fost \u00eenchis\u0103 + +ORA-17009=Instruc\u0163iunea a fost \u00eenchis\u0103 + +ORA-17010=Setul de rezultate a fost \u00eenchis + +ORA-17011=Setul de rezultate este epuizat + +ORA-17012=Tipuri de parametri \u00een conflict + +ORA-17014=ResultSet.next nu a fost apelat\u0103 + +ORA-17015=Instruc\u0163iunea a fost anulat\u0103 + +ORA-17016=Instruc\u0163iunea a expirat + +ORA-17017=Cursorul a fost deja ini\u0163ializat + +ORA-17018=Cursor nevalid + +ORA-17019=Se poate face numai descrierea unei interog\u0103ri + +ORA-17020=Pre-preluare a unui r\u00e2nd nevalid + +ORA-17021=Lipsesc definiri + +ORA-17022=Lipsesc definiri la index + +ORA-17023=Caracteristic\u0103 neacceptat\u0103 + +ORA-17024=Nu au fost citite date + +ORA-17025=Eroare \u00een defines.isNull () + +ORA-17026=Dep\u0103\u015fire numeric\u0103 + +ORA-17027=Fluxul a fost deja \u00eenchis + +ORA-17028=Nu se pot face noi definiri \u00eenainte ca setul de rezultate curent s\u0103 fie \u00eenchis + +ORA-17029=setReadOnly: Conexiunile read-only nu sunt acceptate + +ORA-17030=READ_COMMITTED \u015fi SERIALIZABLE sunt singurele niveluri de tranzac\u0163ie valide + +ORA-17031=setAutoClose: Modul de \u00eenchidere automat\u0103 este acceptat numai \u00een starea activat + +ORA-17032=pre-preluarea r\u00e2ndului nu poate fi setat\u0103 la zero + +ORA-17033=\u015eir SQL92 deformat la pozi\u0163ia + +ORA-17034=Simbol SQL92 neacceptat la pozi\u0163ia + +ORA-17035=Setul de caractere nu este acceptat !! + +ORA-17036=excep\u0163ie \u00een OracleNumber + +ORA-17037=Nu s-a reu\u015fit conversia \u00eentre UTF8 \u015fi UCS2 + +ORA-17038=Masivul de octe\u0163i nu este suficient de lung + +ORA-17039=Masivul de caractere nu este suficient de lung + +ORA-17040=Trebuie specificat un subprotocol \u00een URL-ul de conectare + +ORA-17041=Lipsesc parametrii IN sau OUT la indexul: + +ORA-17042=Valoare Batch nevalid\u0103 + +ORA-17043=Dimensiunea maxim\u0103 a fluxului este nevalid\u0103 + +ORA-17044=Eroare intern\u0103: Masivul de date nu a fost alocat + +ORA-17045=Eroare intern\u0103: S-a \u00eencercat accesarea valorilor de leg\u0103tur\u0103 \u00eenaintea valorii batch + +ORA-17046=Eroare intern\u0103: Index nevalid pentru accesarea datelor + +ORA-17047=Eroare la analizarea descriptorului de tip + +ORA-17048=Tip nedefinit + +ORA-17049=Tipuri de obiecte java \u015fi sql inconsistente + +ORA-17050=nu exist\u0103 un astfel de element \u00een vector + +ORA-17051=Acest API nu poate fi utilizat dec\u00e2t pentru tipuri definite de utilizator + +ORA-17052=Aceast\u0103 referin\u0163\u0103 nu este valid\u0103 + +ORA-17053=Dimensiunea nu este valid\u0103 + +ORA-17054=Identificatorul LOB nu este valid + +ORA-17055=Caracter nevalid existent \u00een + +ORA-17056=Set de caractere neacceptat + +ORA-17057=LOB a fost \u00eenchis + +ORA-17058=Eroare intern\u0103: Rat\u0103 de conversie NLS nevalid\u0103 + +ORA-17059=Nu s-a reu\u015fit conversia \u00een reprezentare intern\u0103 + +ORA-17060=Nu s-a reu\u015fit generarea descriptorului + +ORA-17061=Descriptor absent + +ORA-17062=Cursorul de tip REF este nevalid + +ORA-17063=Nu sunte\u0163i \u00eentr-o tranzac\u0163ie + +ORA-17064=Sintaxa este nevalid\u0103 sau numele BD este nul + +ORA-17065=Clasa de conversie este nul\u0103 + +ORA-17066=Este necesar\u0103 o implementare specific\u0103 nivelului de acces + +ORA-17067=A fost specificat un URL Oracle nevalid + +ORA-17068=Argument(e) nevalid(e) \u00een apel + +ORA-17069=Utiliza\u0163i apelul explicit XA + +ORA-17070=Dimensiunea datelor dep\u0103\u015fe\u015fte valoarea maxim\u0103 admis\u0103 pentru acest tip + +ORA-17071=Limita maxim\u0103 VARRAY a fost dep\u0103\u015fit\u0103 + +ORA-17072=Valoarea introdus\u0103 este prea mare pentru coloan\u0103 + +ORA-17073=Specificatorul logic nu mai este valid + +ORA-17074=model de nume nevalid + +ORA-17075=Opera\u0163iune nevalid\u0103 pentru setul de rezultate forward-only + +ORA-17076=Opera\u0163iune nevalid\u0103 pentru setul de rezultate read-only + +ORA-17077=Setarea valorii REF a e\u015fuat + +ORA-17078=Opera\u0163ia nu se poate efectua deoarece conexiunile sunt deja deschise + +ORA-17079=Acreditivele utilizatorului nu corespund celor existente + +ORA-17080=Comanda batch este nevalid\u0103 + +ORA-17081=Eroare la executarea pe loturi + +ORA-17082=Nu exist\u0103 nici un r\u00e2nd curent + +ORA-17083=Nu exist\u0103 pe r\u00e2ndul inserat + +ORA-17084=Apelat pe r\u00e2ndul inserat + +ORA-17085=Au survenit conflicte de valori + +ORA-17086=Valoare de coloan\u0103 nedefinit\u0103 pe r\u00e2ndul inserat + +ORA-17087=Sugestie de performan\u0163\u0103 ignorat\u0103: setFetchDirection() + +ORA-17088=Sintax\u0103 neacceptat\u0103 pentru tipul setului de rezultate \u015fi nivelul de concuren\u0163\u0103 solicitate +ORA-17089=eroare intern\u0103 + +ORA-17090=opera\u0163ia nu este permis\u0103 + +ORA-17091=Nu s-a putut crea setul de rezultate de tipul \u015fi/sau de nivelul de concuren\u0163\u0103 solicitate + +ORA-17092=Instruc\u0163iunile JDBC nu pot fi create sau executate la sf\u00e2r\u015fitul proces\u0103rii apelurilor + +ORA-17093=Opera\u0163ia OCI a returnat OCI_SUCCESS_WITH_INFO + +ORA-17094=Versiunile tipului de obiect sunt diferite + +ORA-17095=Nu a fost stabilit\u0103 dimensiunea pentru cache-ul de instruc\u0163iuni + +ORA-17096=Stocarea instruc\u0163iunilor \u00een cache nu poate fi activat\u0103 pentru aceast\u0103 conexiune logic\u0103. + +ORA-17097=Tip de element incorect \u00een tabelul de indec\u015fi PL/SQL + +ORA-17098=Opera\u0163ie incorect\u0103 asupra unei LOB vide + +ORA-17099=Lungime de tablou incorect\u0103 \u00een tabelul de indec\u015fi PL/SQL + +ORA-17100=Obiectul Java din BD este nevalid + +ORA-17101=Obiectul din centralizatorul partajat OCI are propriet\u0103\u0163i nevalide + +ORA-17102=Bfile este ReadOnly + +ORA-17103=tip de conexiune nevalid pentru a fi returnat prin getConnection. Utiliza\u0163i \u00een schimb getJavaSqlConnection + +ORA-17104=instruc\u0163iunea SQL de executat nu poate fi necompletat\u0103 sau nul\u0103 + +ORA-17105=nu a fost stabilit fusul orar al sesiunii de conectare + +ORA-17106=a fost specificat\u0103 o configura\u0163ie nevalid\u0103 pentru centralizatorul de conexiuni ale driverului JDBC-OCI + +ORA-17107=a fost specificat un tip nevalid de proxy + +ORA-17108=Nu s-a specificat lungimea maxim\u0103 \u00een defineColumnType + +ORA-17109=nu a fost g\u0103sit\u0103 codificarea standard pentru caracterele Java + +ORA-17110=execu\u0163ia s-a finalizat cu avertisment + +ORA-17111=A fost specificat un timp de expirare TTL nevalid pentru cache-ul de conexiuni + +ORA-17112=A fost specificat un interval nevalid pentru firul de execu\u0163ie + +ORA-17113=Valoarea intervalului pentru firul de execu\u0163ie este mai mare dec\u00e2t valoarea timpului de expirare al cache-ului + +ORA-17114=nu s-a putut utiliza confirmarea tranzac\u0163iei locale \u00eentr-o tranzac\u0163ie global\u0103 + +ORA-17115=nu s-a putut utiliza derularea \u00eenapoi a tranzac\u0163iei locale \u00eentr-o tranzac\u0163ie global\u0103 + +ORA-17116=nu s-a putut activa confirmarea automat\u0103 \u00eentr-o tranzac\u0163ie global\u0103 activ\u0103 + +ORA-17117=nu s-a putut stabili punctul de salvare \u00eentr-o tranzac\u0163ie global\u0103 activ\u0103 + +ORA-17118=nu s-a putut ob\u0163ine ID-ul pentru un punct de salvare denumit + +ORA-17119=nu s-a putut ob\u0163ine numele pentru un punct de salvare nedenumit + +ORA-17120=nu s-a putut stabili un punct de salvare, fiind activat\u0103 confirmarea automat\u0103 + +ORA-17121=nu s-a putut efectua derularea \u00eenapoi la un punct de salvare, fiind activat\u0103 confirmarea automat\u0103 + +ORA-17122=nu s-a putut efectua derularea \u00eenapoi la un punct de salvare local txn, \u00eentr-o tranzac\u0163ie global\u0103 + +ORA-17123=A fost specificat\u0103 o dimensiune nevalid\u0103 pentru cache-ul de instruc\u0163iuni + +ORA-17124=A fost specificat un timp de expirare nevalid pentru Inactivitate, pentru cache-ul de conexiuni + +ORA-17200=Nu se poate efectua corespunz\u0103tor conversia \u015firului de deschidere XA din Java \u00een C + +ORA-17201=Nu se poate efectua corespunz\u0103tor conversia \u015firului de \u00eenchidere XA din Java \u00een C + +ORA-17202=Nu se poate efectua corespunz\u0103tor conversia numelui RM din Java \u00een C + +ORA-17203=Nu s-a putut face conversia tipului pointer \u00een jlong + +ORA-17204=Tabloul de intrare este prea scurt pentru a re\u0163ine specificatorii OCI + +ORA-17205=Nu s-a putut ob\u0163ine specificatorul OCISvcCtx din C-XA utiliz\u00e2nd xaoSvcCtx + +ORA-17206=Nu s-a putut ob\u0163ine specificatorul OCIEnv din C-XA utiliz\u00e2nd xaoEnv + +ORA-17207=Proprietatea tnsEntry nu a fost setat\u0103 \u00een DataSource + +ORA-17213=C-XA a returnat XAER_RMERR la execu\u0163ia subrutinei xa_open + +ORA-17215=C-XA a returnat XAER_INVAL la execu\u0163ia subrutinei xa_open + +ORA-17216=C-XA a returnat XAER_PROTO la execu\u0163ia subrutinei xa_open + +ORA-17233=C-XA a returnat XAER_RMERR la execu\u0163ia subrutinei xa_close + +ORA-17235=C-XA a returnat XAER_INVAL la execu\u0163ia subrutinei xa_close + +ORA-17236=C-XA a returnat XAER_PROTO la execu\u0163ia subrutinei xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violare de protocol + +ORA-17402=Este a\u015fteptat un singur mesaj RPA + +ORA-17403=Este a\u015fteptat un singur mesaj RXH + +ORA-17404=Au fost recep\u0163ionate mai multe RXD-uri dec\u00e2t erau de a\u015fteptat + +ORA-17405=Lungimea UAC nu este zero + +ORA-17406=Lungimea maxim\u0103 a bufferului a fost dep\u0103\u015fit\u0103 + +ORA-17407=Reprezentare de tip nevalid\u0103 (setRep) + +ORA-17408=Reprezentare de tip nevalid\u0103 (getRep) + +ORA-17409=lungime de buffer nevalid\u0103 + +ORA-17410=Nu mai exist\u0103 date de citit din socket + +ORA-17411=Reprezent\u0103rile tipurilor de date sunt diferite + +ORA-17412=Lungimea tipului dep\u0103\u015fe\u015fte valoarea maxim\u0103 + +ORA-17413=Dimensiunea cheii este dep\u0103\u015fit\u0103 + +ORA-17414=Dimensiunea bufferului este insuficient\u0103 pentru a stoca numele coloanelor + +ORA-17415=Acest tip nu a fost tratat + +ORA-17416=FATAL + +ORA-17417=Problem\u0103 NLS; nu s-a reu\u015fit decodificarea numelor coloanelor + +ORA-17418=Eroare legat\u0103 de lungimea c\u00e2mpului structurii interne + +ORA-17419=A fost returnat un num\u0103r de coloane nevalid + +ORA-17420=Versiunea Oracle nu a fost definit\u0103 + +ORA-17421=Tipurile sau conexiunea nu au fost definite + +ORA-17422=Clas\u0103 nevalid\u0103 \u00een factory + +ORA-17423=Blocul PLSQL este utilizat f\u0103r\u0103 s\u0103 fie definit o LV + +ORA-17424=Se \u00eencearc\u0103 o alt\u0103 opera\u0163ie de dispunere + +ORA-17425=Se returneaz\u0103 un flux \u00een blocul PLSQL + +ORA-17426=Ambele leg\u0103turi, IN \u015fi OUT, au valoarea NULL + +ORA-17427=Se utilizeaz\u0103 OAC neini\u0163ializat + +ORA-17428=Logon trebuie apelat\u0103 dup\u0103 conectare + +ORA-17429=Trebuie s\u0103 fi\u0163i conectat cel pu\u0163in la server + +ORA-17430=Trebuie s\u0103 fi\u0163i conectat la server + +ORA-17431=Instruc\u0163iunea SQL de analizat este nul\u0103 + +ORA-17432=op\u0163iuni nevalide \u00een all7 + +ORA-17433=argumente nevalide \u00een apel + +ORA-17434=nu sunte\u0163i \u00een mod dirijare \u00een flux + +ORA-17435=num\u0103rul in_out_binds din LV este nevalid + +ORA-17436=Num\u0103r nevalid de variabile de leg\u0103tur\u0103 OUT + +ORA-17437=Eroare \u00een argumentele IN/OUT din blocul PLSQL + +ORA-17438=Intern - Valoare nea\u015fteptat\u0103 + +ORA-17439=Tip SQL nevalid + +ORA-17440=DBItem/DBType este nul + +ORA-17441=Versiunea Oracle nu este acceptat\u0103. Versiunea minim\u0103 acceptat\u0103 este 7.2.3. + +ORA-17442=Valoarea Refcursor este nevalid\u0103 + +ORA-17443=Utilizatorii sau parolele nule nu sunt acceptate in driverul THIN + +ORA-17444=Versiunea de protocol TTC recep\u0163ionat\u0103 de la server nu este acceptat\u0103 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/009d7bf720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/009d7bf720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..43f6f9b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/009d7bf720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Error interno + +ORA-17002=Excepci\u00f3n de E/S + +ORA-17003=\u00cdndice de columna no v\u00e1lido + +ORA-17004=Tipo de columna no v\u00e1lido + +ORA-17005=Tipo de columna no soportado + +ORA-17006=Nombre de columna no v\u00e1lido + +ORA-17007=Columna din\u00e1mica no v\u00e1lida + +ORA-17008=Conexi\u00f3n cerrada + +ORA-17009=Sentencia cerrada + +ORA-17010=Juego de resultados cerrado + +ORA-17011=Juego de resultados agotado + +ORA-17012=Conflicto de tipo de par\u00e1metro + +ORA-17014=No se ha llamado a ResultSet.next + +ORA-17015=Se ha cancelado la sentencia + +ORA-17016=Timeout de sentencia + +ORA-17017=Ya se ha inicializado el cursor + +ORA-17018=Cursor no v\u00e1lido + +ORA-17019=S\u00f3lo puede describir una consulta + +ORA-17020=Recuperaci\u00f3n previa de fila no v\u00e1lida + +ORA-17021=Faltan definiciones + +ORA-17022=Faltan definiciones en el \u00edndice + +ORA-17023=Funci\u00f3n no soportada + +ORA-17024=No hay lectura de datos + +ORA-17025=Error en defines.isNull () + +ORA-17026=Desbordamiento Num\u00e9rico + +ORA-17027=El flujo ya se ha cerrado + +ORA-17028=No se pueden realizar nuevas definiciones hasta que no se cierre el juego de resultados actual + +ORA-17029=setReadOnly: Conexiones de s\u00f3lo lectura no soportadas + +ORA-17030=READ_COMMITTED y SERIALIZABLE son los \u00fanicos niveles de transacci\u00f3n v\u00e1lidos + +ORA-17031=setAutoClose: S\u00f3lo soporta el modo de cierre autom\u00e1tico + +ORA-17032=no se puede definir la recuperaci\u00f3n previa de fila en cero + +ORA-17033=Cadena SQL92 con formato incorrecto en la posici\u00f3n + +ORA-17034=Elemento SQL92 no soportado en la posici\u00f3n + +ORA-17035=\u00a1\u00a1Juego de caracteres no soportado!! + +ORA-17036=excepci\u00f3n en OracleNumber + +ORA-17037=Fallo al convertir entre UTF8 y UCS2 + +ORA-17038=La matriz de bytes no es suficientemente larga + +ORA-17039=La matriz de caracteres no es suficientemente larga + +ORA-17040=El subprotocolo se debe especificar en la direcci\u00f3n URL de conexi\u00f3n + +ORA-17041=Falta el par\u00e1metro IN o OUT en el \u00edndice: + +ORA-17042=Valor de lote no v\u00e1lido + +ORA-17043=Tama\u00f1o m\u00e1ximo de flujo no v\u00e1lido + +ORA-17044=Error interno: No se ha asignado la matriz de datos + +ORA-17045=Error interno: Se ha intentado acceder a valores de enlace aparte del valor de lote + +ORA-17046=Error interno: \u00cdndice no v\u00e1lido para el acceso a los datos + +ORA-17047=Error en el an\u00e1lisis del descriptor de tipo + +ORA-17048=Tipo no definido + +ORA-17049=Tipos de objeto JAVA y SQL inconsistentes + +ORA-17050=no existe ese elemento en el vector + +ORA-17051=Esta API no se puede utilizar para tipos que no sean UDT + +ORA-17052=Esta referencia no es v\u00e1lida + +ORA-17053=El tama\u00f1o no es v\u00e1lido + +ORA-17054=El localizador LOB no es v\u00e1lido + +ORA-17055=Se ha encontrado un car\u00e1cter no v\u00e1lido en + +ORA-17056=Juego de caracteres no soportado + +ORA-17057=LOB cerrado + +ORA-17058=Error interno: Ratio de conversi\u00f3n NLS no v\u00e1lida + +ORA-17059=Fallo al convertir a representaci\u00f3n interna + +ORA-17060=Fallo al construir el descriptor + +ORA-17061=Falta el descriptor + +ORA-17062=El cursor de referencia no es v\u00e1lido + +ORA-17063=No est\u00e1 en una transacci\u00f3n + +ORA-17064=La sintaxis no es v\u00e1lida o el nombre de la base de datos es nulo + +ORA-17065=La clase de conversi\u00f3n es nula + +ORA-17066=Se necesita implementaci\u00f3n concreta del nivel de acceso + +ORA-17067=La direcci\u00f3n URL de Oracle especificada no es v\u00e1lida + +ORA-17068=Argumento(s) no v\u00e1lido(s) en la llamada + +ORA-17069=Utilizar llamada XA expl\u00edcita + +ORA-17070=El tama\u00f1o de los datos es mayor que el tama\u00f1o m\u00e1ximo para este tipo + +ORA-17071=Se ha excedido el l\u00edmite m\u00e1ximo de VARRAY + +ORA-17072=El valor insertado es demasiado largo para la columna + +ORA-17073=El manejador l\u00f3gico ya no es v\u00e1lido + +ORA-17074=patr\u00f3n de nombre no v\u00e1lido + +ORA-17075=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo reenv\u00edo + +ORA-17076=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo lectura + +ORA-17077=Fallo al definir el valor REF + +ORA-17078=No se puede realizar la operaci\u00f3n ya que las conexiones ya est\u00e1n abiertas + +ORA-17079=Las credenciales del usuario no coinciden con las existentes + +ORA-17080=comando por lotes no v\u00e1lido + +ORA-17081=se ha producido un error durante el procesamiento por lotes + +ORA-17082=No es la fila actual + +ORA-17083=No est\u00e1 en la fila de inserci\u00f3n + +ORA-17084=Llamada en la fila de inserci\u00f3n + +ORA-17085=Se ha producido un conflicto de valores + +ORA-17086=El valor de la columna no est\u00e1 definido en la fila de inserci\u00f3n + +ORA-17087=Indicaci\u00f3n de rendimiento ignorada: setFetchDirection() + +ORA-17088=Sintaxis no soportada para el tipo de juego de resultados y el nivel de simultaneidad solicitados +ORA-17089=error interno + +ORA-17090=operaci\u00f3n no permitida + +ORA-17091=No se puede crear el juego de resultados en el tipo y/o nivel de simultaneidad solicitados + +ORA-17092=Las sentencias JDBC no se pueden crear o ejecutar al final del procesamiento de la llamada + +ORA-17093=La operaci\u00f3n OCI ha devuelto OCI_SUCCESS_WITH_INFO + +ORA-17094=Las versiones de tipo de objeto no coinciden + +ORA-17095=No se ha definido el tama\u00f1o de la cach\u00e9 de sentencias + +ORA-17096=La cach\u00e9 de sentencias no se puede activar para esta conexi\u00f3n l\u00f3gica. + +ORA-17097=Tipo de elemento de tabla indexada PL/SQL no v\u00e1lido + +ORA-17098=Operaci\u00f3n LOB vac\u00eda no v\u00e1lida + +ORA-17099=Longitud de matriz de tabla indexada PL/SQL no v\u00e1lida + +ORA-17100=Objeto Java de la base de datos no v\u00e1lido + +ORA-17101=Propiedades no v\u00e1lidas del objeto del conjunto de conexiones de OCI + +ORA-17102=Bfile es de s\u00f3lo lectura + +ORA-17103=tipo de conexi\u00f3n no v\u00e1lido para volver mediante getConnection. En su lugar, utilice getJavaSqlConnection + +ORA-17104=La sentencia SQL de ejecuci\u00f3n no puede estar vac\u00eda ni ser nula + +ORA-17105=no se ha definido la zona horaria de la sesi\u00f3n de conexi\u00f3n + +ORA-17106=se ha especificado una configuraci\u00f3n de conjunto de conexiones de controlador JDBC-OCI no v\u00e1lida + +ORA-17107=el tipo de proxy especificado no es v\u00e1lido + +ORA-17108=No se ha especificado la longitud m\u00e1xima en defineColumnType + +ORA-17109=no se ha encontrado la codificaci\u00f3n de car\u00e1cter Java est\u00e1ndar + +ORA-17110=la ejecuci\u00f3n ha terminado con advertencias + +ORA-17111=Se ha especificado un timeout de TTL de cach\u00e9 de conexiones no v\u00e1lido + +ORA-17112=Se ha especificado un intervalo de thread no v\u00e1lido + +ORA-17113=El valor del intervalo de thread es mayor que el valor del timeout de cach\u00e9 + +ORA-17114=no se ha podido utilizar la validaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17115=no se ha podido utilizar el rollback de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17116=no se ha podido activar la validaci\u00f3n autom\u00e1tica en una transacci\u00f3n global activa + +ORA-17117=no se ha podido definir el punto de grabaci\u00f3n en una transacci\u00f3n global activa + +ORA-17118=no se ha podido obtener el identificador de un punto de grabaci\u00f3n denominado + +ORA-17119=no se ha podido obtener el nombre de un punto de grabaci\u00f3n no denominado + +ORA-17120=no se ha podido definir un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17121=no se ha podido realizar rollback en un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17122=no se ha podido realizar rollback en un punto de grabaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17123=Se ha especificado un tama\u00f1o de cach\u00e9 de sentencias no v\u00e1lido + +ORA-17124=Se ha especificado un timout de inactividad de cach\u00e9 de conexi\u00f3n no v\u00e1lido + +ORA-17200=No se ha podido convertir correctamente la cadena de apertura de XA de Java a C + +ORA-17201=No se ha podido convertir correctamente la cadena de cierre de XA de Java a C + +ORA-17202=No se ha podido convertir correctamente el nombre de RM de Java a C + +ORA-17203=No se ha podido convertir el tipo de puntero a jlong + +ORA-17204=Matriz de entrada demasiado peque\u00f1a para contener los manejadores OCI + +ORA-17205=Fallo al obtener el manejador OCISvcCtx de C-XA mediante xaoSvcCtx + +ORA-17206=Fallo al obtener el manejador OCIEnv de C-XA mediante xaoEnv + +ORA-17207=No se ha definido la propiedad tnsEntry en el origen de datos + +ORA-17213=C-XA ha devuelto XAER_RMERR durante xa_open + +ORA-17215=C-XA ha devuelto XAER_INVAL durante xa_open + +ORA-17216=C-XA ha devuelto XAER_PROTO durante xa_open + +ORA-17233=C-XA ha devuelto XAER_RMERR durante xa_close + +ORA-17235=C-XA ha devuelto XAER_INVAL durante xa_close + +ORA-17236=C-XA ha devuelto XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violaci\u00f3n de protocolo + +ORA-17402=S\u00f3lo se espera un mensaje RPA + +ORA-17403=S\u00f3lo se espera un mensaje RXH + +ORA-17404=Se han recibido m\u00e1s RXD de los esperados + +ORA-17405=La longitud UAC no es cero + +ORA-17406=Se ha excedido la longitud m\u00e1xima del buffer + +ORA-17407=representaci\u00f3n de tipo (setRep) no v\u00e1lida + +ORA-17408=representaci\u00f3n de tipo (getRep) no v\u00e1lida + +ORA-17409=longitud de buffer no v\u00e1lida + +ORA-17410=No hay m\u00e1s datos para leer del socket + +ORA-17411=No coinciden las representaciones de Tipo de Dato + +ORA-17412=Longitud de tipo mayor que el m\u00e1ximo permitido + +ORA-17413=Se ha excedido el tama\u00f1o de la clave + +ORA-17414=Tama\u00f1o de buffer insuficiente para almacenar nombres de columnas + +ORA-17415=Este tipo no ha sido tratado + +ORA-17416=FATAL + +ORA-17417=Problema NLS, fallo al descodificar nombres de columna + +ORA-17418=Error interno de longitud de campo de la estructura + +ORA-17419=El sistema ha devuelto un n\u00famero de columnas no v\u00e1lido + +ORA-17420=No se ha definido la versi\u00f3n de Oracle + +ORA-17421=La conexi\u00f3n o los tipos no se han definido + +ORA-17422=Clase no v\u00e1lida en el tipo de objeto Factory + +ORA-17423=Se est\u00e1 utilizando un bloque PLSQL sin haber definido un IOV + +ORA-17424=Se est\u00e1 intentando realizar una operaci\u00f3n de canalizaci\u00f3n de datos entre sistemas diferente + +ORA-17425=Se est\u00e1 devolviendo un flujo en el bloque PLSQL + +ORA-17426=Los enlaces IN y OUT son NULL + +ORA-17427=Se est\u00e1 utilizando OAC no inicializado + +ORA-17428=Logon se debe llamar despu\u00e9s de Connect + +ORA-17429=Debe estar conectado al servidor + +ORA-17430=Debe estar conectado al servidor + +ORA-17431=La sentencia SQL que se va a analizar es nula + +ORA-17432=opciones no v\u00e1lidas en all7 + +ORA-17433=argumentos no v\u00e1lidos en la llamada + +ORA-17434=no est\u00e1 en modo de lectura/escritura continuo + +ORA-17435=n\u00famero no v\u00e1lido de in_out_binds en IOV + +ORA-17436=n\u00famero no v\u00e1lido de par\u00e1metros OUT + +ORA-17437=Error en el argumento o argumentos IN/OUT del bloque PLSQL + +ORA-17438=Error interno - Valor inesperado + +ORA-17439=Tipo SQL no v\u00e1lido + +ORA-17440=DBItem/DBType nulo + +ORA-17441=Versi\u00f3n de Oracle no soportada. La versi\u00f3n m\u00ednima soportada es la 7.2.3. + +ORA-17442=El valor del cursor de referencia no es v\u00e1lido + +ORA-17443=Usuario nulo o contrase\u00f1a no soportada en el controlador THIN + +ORA-17444=Versi\u00f3n no soportada del protocolo TTC recibido del servidor + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/40074f1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/40074f1698af001c18c4935e001381da new file mode 100644 index 0000000..57e5994 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/40074f1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/b01eba1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/b01eba1998af001c18c4935e001381da new file mode 100644 index 0000000..f3fb11b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/b01eba1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/c04937f181a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/c04937f181a9001c1d3abf97745a02da new file mode 100644 index 0000000..29fb61c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/c04937f181a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/e07ca91998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/e07ca91998af001c18c4935e001381da new file mode 100644 index 0000000..6f23103 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4c/e07ca91998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4d/006a89b984a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4d/006a89b984a9001c1d3abf97745a02da new file mode 100644 index 0000000..cc6fefb --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4d/006a89b984a9001c1d3abf97745a02da @@ -0,0 +1,147 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentListener; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + + }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4d/a05c83f381a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4d/a05c83f381a9001c1d3abf97745a02da new file mode 100644 index 0000000..7b5043c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4d/a05c83f381a9001c1d3abf97745a02da @@ -0,0 +1,137 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.*; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4d/c0f03007c6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4d/c0f03007c6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..2631193 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4d/c0f03007c6a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + + JOptionPane.showInputDialog(null); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4e/d00996f800a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4e/d00996f800a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..a204d08 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4e/d00996f800a4001c1027e59cc3e35e89 @@ -0,0 +1,56 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + System.out.println("Requte: Reue"); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4e/e0fc701898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4e/e0fc701898af001c18c4935e001381da new file mode 100644 index 0000000..1a9577f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4e/e0fc701898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/00f5db7004a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/00f5db7004a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..6a1983c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/00f5db7004a4001c1027e59cc3e35e89 @@ -0,0 +1,74 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.toString();); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/70ea8d4081a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/70ea8d4081a9001c1d3abf97745a02da new file mode 100644 index 0000000..a7b8274 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/70ea8d4081a9001c1d3abf97745a02da @@ -0,0 +1,131 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/d0b4530ecda4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/d0b4530ecda4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..5e3ae89 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/d0b4530ecda4001c1acc9f54b60f9b57 @@ -0,0 +1,95 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/f042acee4eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/f042acee4eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..4f0e40e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/4f/f042acee4eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private IHMConnexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void confirmationConnexion(String chaine){ + int resultatConfirmation; + resultatConfirmation = JOptionPane.showConfirmDialog(null, chaine.toString(), "Confirmation" ,JOptionPane.YES_NO_OPTION); + if(resultatConfirmation == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5/300edee4c6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5/300edee4c6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..9edf545 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5/300edee4c6a4001c1acc9f54b60f9b57 @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.GridBagLayout; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new GridBagLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5/a0d5a71698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5/a0d5a71698af001c18c4935e001381da new file mode 100644 index 0000000..76e45d8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5/a0d5a71698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/51/b02e4910feae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/51/b02e4910feae001c14499bdcdfff58b3 new file mode 100644 index 0000000..c205252 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/51/b02e4910feae001c14499bdcdfff58b3 @@ -0,0 +1,224 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + presencePilote(); + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + + private void presencePilote(){ +// On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(objetConnexion.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + conn.block(); + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/51/c0941b1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/51/c0941b1998af001c18c4935e001381da new file mode 100644 index 0000000..e1d291d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/51/c0941b1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/51/e0736c1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/51/e0736c1998af001c18c4935e001381da new file mode 100644 index 0000000..4bfe081 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/51/e0736c1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/52/001ab5f048aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/52/001ab5f048aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..cf25be0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/52/001ab5f048aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + this.invalidate(); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/52/6078b77ccaa4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/52/6078b77ccaa4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..cf32195 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/52/6078b77ccaa4001c1acc9f54b60f9b57 @@ -0,0 +1,78 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setLayout( new FlowLayout()); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/52/b0abca0f05af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/52/b0abca0f05af001c14499bdcdfff58b3 new file mode 100644 index 0000000..238a0e4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/52/b0abca0f05af001c14499bdcdfff58b3 @@ -0,0 +1,150 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + + + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + + if(connection!=null){ + try{connection.close(); + + System.out.println("## Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/30bd2d1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/30bd2d1998af001c18c4935e001381da new file mode 100644 index 0000000..5e08357 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/30bd2d1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/7011b71998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/7011b71998af001c18c4935e001381da new file mode 100644 index 0000000..33bf7d8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/7011b71998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/a03f4f1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/a03f4f1498af001c18c4935e001381da new file mode 100644 index 0000000..2a719c2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/a03f4f1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/a0fd5d6200af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/a0fd5d6200af001c14499bdcdfff58b3 new file mode 100644 index 0000000..291db46 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/53/a0fd5d6200af001c14499bdcdfff58b3 @@ -0,0 +1,210 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; +import javax.swing.JOptionPane; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + private JButton jOk; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypte) : " + this.jtextMdp.getPassword().toString() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(this.jtextMdp.getPassword().toString()); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + + public void driverExist(){ + // On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(connexionToBdd.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + this.jtextServeur.setEnabled(false); + this.jtextPort.setEnabled(false); + this.jtextBase.setEnabled(false); + this.jtextIdentifiant.setEnabled(false); + this.jtextMdp.setEnabled(false); + + this.jOk.setEnabled(false); + + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + else{ + JOptionPane.showMessageDialog(this, "Pilote trouve.", "Information", JOptionPane.INFORMATION_MESSAGE); + } + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/54/0096e9e701a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/54/0096e9e701a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..eba31ae --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/54/0096e9e701a4001c1027e59cc3e35e89 @@ -0,0 +1,77 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + System.out.println(resultat.isbeforeFirst()); +// true + resultat.next(); +// on se retrouve ici sur la premire ligne + +// traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + } + resultat.first(); +// on a replac ici le curseur sur la premire ligne + resultat.afterlast(); +// on a replac le curseur aprs la dernire ligne + while(resultat.previous()){ + // on parcours ici le ResultSet de la dernire la premire ligne + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/54/304cd8a406a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/54/304cd8a406a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..af7c7de --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/54/304cd8a406a4001c1027e59cc3e35e89 @@ -0,0 +1,94 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes (Commence 1 !) +// int i = rsmd.getColumnCount(); +// System.out.println("Nombre de colonne: " + i); + + // Donner les enttes de colonnes +// for(int j = 1; j < i; j++){ +// System.out.print(rsmd.getColumnName(j) + " "); +// } + + System.out.println(rsmd.getColumnName(2) + " " + rsmd.getColumnName(2)); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/0026ad487fa9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/0026ad487fa9001c1d3abf97745a02da new file mode 100644 index 0000000..8ef3a28 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/0026ad487fa9001c1d3abf97745a02da @@ -0,0 +1,78 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/409af21698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/409af21698af001c18c4935e001381da new file mode 100644 index 0000000..da02a38 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/409af21698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/40ab735004af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/40ab735004af001c14499bdcdfff58b3 new file mode 100644 index 0000000..dc4109d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/40ab735004af001c14499bdcdfff58b3 @@ -0,0 +1,225 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/800e288285a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/800e288285a9001c1d3abf97745a02da new file mode 100644 index 0000000..b4c2674 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/800e288285a9001c1d3abf97745a02da @@ -0,0 +1,159 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowsClosing(WindowEvent ev){ + + } + public void windowDeactivated(WindowEvent ev){ + + } + }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/80c12c1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/80c12c1b98af001c18c4935e001381da new file mode 100644 index 0000000..94e4d9d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/55/80c12c1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/007ffd2e03af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/007ffd2e03af001c14499bdcdfff58b3 new file mode 100644 index 0000000..4e611c4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/007ffd2e03af001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n" + url; + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/50c3c56204af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/50c3c56204af001c14499bdcdfff58b3 new file mode 100644 index 0000000..4e071cc --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/50c3c56204af001c14499bdcdfff58b3 @@ -0,0 +1,235 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/70c3b71b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/70c3b71b98af001c18c4935e001381da new file mode 100644 index 0000000..1915960 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/70c3b71b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/b0e2c31998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/b0e2c31998af001c18c4935e001381da new file mode 100644 index 0000000..eb98c0e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/b0e2c31998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/1012deb580a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/1012deb580a9001c1d3abf97745a02da new file mode 100644 index 0000000..7e35cc5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/1012deb580a9001c1d3abf97745a02da @@ -0,0 +1,125 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + + } + + private void menuBddQuitter(){ + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "Blankuissance4\n\n" + + "Version 0.5\n" + + "Developpe par Blankoworld\n\n", + "A propos de Blankuissance4", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/50f03d757aa9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/50f03d757aa9001c1d3abf97745a02da new file mode 100644 index 0000000..7895d41 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/50f03d757aa9001c1d3abf97745a02da @@ -0,0 +1,5 @@ +package fr.blankoworld.ihm; + +public class Principale { + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/6029438dfba3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/6029438dfba3001c1027e59cc3e35e89 new file mode 100644 index 0000000..2ddf4fe --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/6029438dfba3001c1027e59cc3e35e89 @@ -0,0 +1,32 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + try { + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + Connection conn = DriverManager.getConnection(url.toString(), "dut", "dut"); + + System.out.println("Accs la base"); + } catch (SQLException e) { + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/9067c1304caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/9067c1304caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..5c0be84 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/9067c1304caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + + JOptionPane jo = new JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/906ddabafea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/906ddabafea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..414c610 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/906ddabafea3001c1027e59cc3e35e89 @@ -0,0 +1,42 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + new Connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + if(connection!=null){try{connection.close()}catch(Exception e){e.printStackTrace();}} + } + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/90f94ac402a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/90f94ac402a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..a245c45 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/90f94ac402a4001c1027e59cc3e35e89 @@ -0,0 +1,73 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + + System.out.println(resultat.isBeforeFirst()); + // true + resultat.next(); + // on se retrouve ici sur la premire ligne + resultat.getNString(1); + + // traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/d0bb79219baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/d0bb79219baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..c48b504 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/57/d0bb79219baf001c1c2eb8ec16be26ca differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/405ae51398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/405ae51398af001c18c4935e001381da new file mode 100644 index 0000000..f2173f0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/405ae51398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/40ad5d1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/40ad5d1698af001c18c4935e001381da new file mode 100644 index 0000000..4f21b3b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/40ad5d1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/c0470d1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/c0470d1a98af001c18c4935e001381da new file mode 100644 index 0000000..cda9f76 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/c0470d1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/d0021643c9a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/d0021643c9a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..ace95f7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/d0021643c9a4001c1acc9f54b60f9b57 @@ -0,0 +1,73 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + Panneau_Centre_Gauche.setSize(100,null) + Panneau_Centre_Gauche.setBorder(FlowLayout); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/d06188219baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/d06188219baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..b858751 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/d06188219baf001c1c2eb8ec16be26ca differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/f0add71898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/f0add71898af001c18c4935e001381da new file mode 100644 index 0000000..295851c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/58/f0add71898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/50efd04a4eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/50efd04a4eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..d8897bb --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/50efd04a4eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,199 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + + // Rcupration des donnes entres par l'utilisateur + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getPassword().toString(); + + // Affichage du message de configurmation + this.pr.confirmationConnexion(this.serveur); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/7062e71c9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/7062e71c9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..c379ce2 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/7062e71c9baf001c1c2eb8ec16be26ca @@ -0,0 +1,209 @@ +# US English Error messages for JDBC + +EOJ_INVALID_COLUMN_INDEX=ȗłB + +EOJ_INVALID_COLUMN_TYPE=ȗ߂łB + +EOJ_UNSUPPORTED_COLUMN_TYPE=߰ĂȂ߂łB + +EOJ_INVALID_COLUMN_NAME=ȗ񖼂łB + +EOJ_INVALID_DYNAMIC_COLUMN=ȓIłB + +EOJ_CLOSED_CONNECTION=ڑI܂B + +EOJ_CLOSED_STATEMENT=I܂B + +EOJ_CLOSED_RESULTSET=ʾÂ܂B + +EOJ_EXHAUSTED_RESULTSET=ʾĂÂȂĂ܂B + +EOJ_TYPE_CONFLICT=Ұ̌^Ă܂B + +EOJ_RESULTSET_BEFORE_FIRST_ROW=ResultSet.nextĂяo܂łB + +EOJ_STATEMENT_WAS_CANCELLED=܂B + +EOJ_STATEMENT_TIMED_OUT=ѱĂłB + +EOJ_CURSOR_ALREADY_INITIALIZED=ق͂łɏĂ܂B + +EOJ_INVALID_CURSOR=ȶقłB + +EOJ_CAN_ONLY_DESCRIBE_A_QUERY=ذ̋Lq̂݉”\łB + +EOJ_INVALID_ROW_PREFETCH=ȍs̪łB + +EOJ_MISSING_DEFINES=`Ă܂B + +EOJ_MISSING_DEFINES_AT_INDEX=̒`Ă܂B + +EOJ_UNSUPPORTED_FEATURE=߰ĂĂȂ@\łB + +EOJ_NO_DATA_READ=ް͓ǂݍ܂܂łB + +EOJ_IS_DEFINES_NULL_ERROR=defines.isNull ()̴װB + +EOJ_NUMERIC_OVERFLOW=lް۰łB + +EOJ_STREAM_CLOSED=ذт͊ɏIĂ܂B + +EOJ_NO_NEW_DEFINE_IF_RESULT_SET_NOT_CLOSED=݂̌ʾĂI܂ŁA`sƂł܂B + +EOJ_READ_ONLY=setReadOnly: Ǎݐpڑͻ߰ĂĂ܂B + +EOJ_INVALID_TRANSLEVEL=READ_COMMITTEDSERIALIZABLELݻ޸ݥقłB + +EOJ_AUTO_CLOSE_ONLY=setAutoClose: IӰނ̵݂߰Ă܂B + +EOJ_ROW_PREFETCH_NOT_ZERO=s̪ۂɐݒł܂B + +EOJ_MALFORMED_SQL92=̏ꏊł́ASQL92񂪐܂B + +EOJ_NON_SUPPORTED_SQL92_TOKEN=̏ꏊł́ASQL92İ݂ͻ߰Ă܂B + +EOJ_NON_SUPPORTED_CHAR_SET=߰ĂȂ׸ĂłB + +EOJ_ORACLE_NUMBER_EXCEPTION=OracleNumber̗OłB + +EOJ_FAIL_CONVERSION_UTF8_TO_UCS2=UTF8UCS2Ԃł̕ϊװB + +EOJ_CONVERSION_BYTE_ARRAY_ERROR=޲Ĕz̒s\łB + +EOJ_CONVERSION_CHAR_ARRAY_ERROR=z̒s\łB + +EOJ_SUB_SUB_PROTOCOL_ERROR=ڑURLŻĺقw肷Kv܂B + +EOJ_INVALID_IN_OUT_BINDS=ҰIN܂OUT̍ɌĂ܂B + +EOJ_INVALID_BATCH_VALUE=ޯlłB + +EOJ_INVALID_STREAM_SIZE=ذэő廲ނłB + +EOJ_BEYOND_BINDS_BATCH=װ: ޯl𒴂޲ޒlɱ悤Ƃ܂B + +EOJ_DATASET_ITEMS_NOT_ALLOCATED=װ: ްz񂪊蓖ĂĂ܂B + +EOJ_INVALID_RANK=װ: ްɖȍłB + +EOJ_TDS_FORMAT_ERROR=^Lqqʹװ + +EOJ_UNDEFINED_TYPE=`̌^łB + +EOJ_INCONSISTENT_ADT=javasql޼ުČ^Ă܂B + +EOJ_NOSUCHELEMENT=޸قɂ̗vf͂܂B + +EOJ_NOT_AN_OBJECT_TYPE=API͔UDT^Ɏgpł܂B + +EOJ_INVALID_REF=̎QƂ͖łB + +EOJ_INVALID_SIZE=ނłB + +EOJ_INVALID_LOB_LOCATOR=LOB۹łB + +EOJ_FAIL_CONVERSION_CHARACTER=ȕ܂B + +EOJ_UNSUPPORTED_CHARSET=߰ĂȂ׸ĂłB + +EOJ_CLOSED_LOB=LOB͏IĂ܂B + +EOJ_INVALID_NLS_RATIO=װ: NLSϊłB + +EOJ_CONVERSION_JAVA_ERROR=\Lւ̕ϊɎs܂B + +EOJ_FAIL_CREATE_DESC=Lqq̍쐬Ɏs܂B + +EOJ_NO_DESCRIPTOR=LqqĂ܂B + +EOJ_INVALID_REF_CURSOR=RefقłB + +EOJ_NOT_IN_A_TRANSACTION=ݻ޸ݒł͂܂B + +TTC0000=ĺوᔽ + +TTC0001=RPAүނ1‚ɂĂB + +TTC0002=RXHүނ1‚ɂĂB + +TTC0003=\𒴂RXD󂯎܂B + +TTC0004=UAC̒ۂł͂܂B + +TTC0005=őޯ̧𒴂Ă܂B + +TTC0100=Ȍ^\L(setRep)łB + +TTC0101=Ȍ^\L(getRep)łB + +TTC0102=ޯ̧łB + +TTC0103=Ăǂݍް͂܂B + +TTC0104=ް^\L̕svB + +TTC0105=^ől𒴂Ă܂B + +TTC0106=ނ𒴂Ă܂B + +TTC0107=񖼂i[ɂ͕s\ޯ̧ނłB + +TTC0108=̌^͖łB + +TTC0109=vIȴװB + +TTC0110=NLS̖A񖼂޺ނɎs܂B + +TTC0111=\̨̂ޒװB + +TTC0112=ȗ񐔂Ԃ܂B + +TTC0113=`Oracleްޮ݂łB + +TTC0114=`̌^܂͐ڑłB + +TTC0115=̧؂̸׽łB + +TTC0116=IOV`ɁAPLSQLۯgp܂B + +TTC0117=قȂϰّs悤Ƃ܂B + +TTC0118=PLSQLۯɽذтԂĂ܂B + +TTC0119=INOUT޲ނ̗NULLłB + +TTC0120=OACgpĂ܂B + +TTC0200=۸޵݂͐ڑ̌ɌĂяoKv܂B + +TTC0201=܂ްɐڑKv܂B + +TTC0202=ް۸޵݂Kv܂B + +TTC0203=͂SQLNULLłB + +TTC0204=all7ɖȵ߼݂܂B + +TTC0205=قɖȈ܂B + +TTC0206=ذݸޥӰނł͂܂B + +TTC0207=IOVin_out_bindsłB + +TTC0208=޲ނ̐łB + +TTC0209=PLSQLۯIN/OUT(1‚܂͕)̴װB + +TTC0210= - \ʒlłB + +TTC0211=SQL^łB + +TTC0212=DBItem/DBType --> NULL + +TTC0213=߰ĂȂOracleްޮ݂łB7.2.3ȍ~߰Ă܂B + +TTC0214=RefْlłB + +TTC0215=ްނ̌^̍ő廲ނĂ܂B + +TTC0255=̴װɑ΂үނ`Ă܂B diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/909029cbfdae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/909029cbfdae001c14499bdcdfff58b3 new file mode 100644 index 0000000..33229a0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/909029cbfdae001c14499bdcdfff58b3 @@ -0,0 +1,224 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + bloquageFenetreConnexion(); + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + + private void bloquageFenetreConnexion(){ +// On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(objetConnexion.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + conn.block(); + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/c0ee0c1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/c0ee0c1998af001c18c4935e001381da new file mode 100644 index 0000000..e91234f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/c0ee0c1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/d0af010104af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/d0af010104af001c14499bdcdfff58b3 new file mode 100644 index 0000000..520eaa0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/d0af010104af001c14499bdcdfff58b3 @@ -0,0 +1,221 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener((new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/e008fde7ffa3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/e008fde7ffa3001c1027e59cc3e35e89 new file mode 100644 index 0000000..7d3b78a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5a/e008fde7ffa3001c1027e59cc3e35e89 @@ -0,0 +1,49 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept."); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/103c41e07da9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/103c41e07da9001c1d3abf97745a02da new file mode 100644 index 0000000..3d22dd4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/103c41e07da9001c1d3abf97745a02da @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/108cf58c81a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/108cf58c81a9001c1d3abf97745a02da new file mode 100644 index 0000000..03e7bd9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/108cf58c81a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Importation de la fentre de Connexion +import Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + Connexion conn = new Connexion(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/a06527f906a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/a06527f906a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..751992b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/a06527f906a4001c1027e59cc3e35e89 @@ -0,0 +1,94 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes (Commence 1 !) +// int i = rsmd.getColumnCount(); +// System.out.println("Nombre de colonne: " + i); + + // Donner les enttes de colonnes +// for(int j = 1; j < i; j++){ +// System.out.print(rsmd.getColumnName(j) + " "); +// } + + System.out.println(rsmd.getColumnName(2) + " " + rsmd.getColumnName(3)); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/e0e2cc6802a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/e0e2cc6802a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..57d7ca5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5b/e0e2cc6802a4001c1027e59cc3e35e89 @@ -0,0 +1,71 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + System.out.println(resultat.isBeforeFirst()); + // true + resultat.next(); + // on se retrouve ici sur la premire ligne + resultat.toString(); + + // traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5c/b0ac421e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5c/b0ac421e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..0ce6085 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5c/b0ac421e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Intern fejl + +ORA-17002=Io-undtagelse + +ORA-17003=Ugyldigt kolonneindeks + +ORA-17004=Ugyldig kolonnetype + +ORA-17005=Ikke-underst\u00f8ttet kolonnetype + +ORA-17006=Ugyldigt kolonnenavn + +ORA-17007=Ugyldig dynamisk kolonne + +ORA-17008=Lukket forbindelse + +ORA-17009=Lukket s\u00e6tning + +ORA-17010=Lukket resultats\u00e6t + +ORA-17011=Opbrugt resultats\u00e6t + +ORA-17012=Parametertypekonflikt + +ORA-17014=ResultSet.next blev ikke kaldt + +ORA-17015=S\u00e6tning blev annulleret + +ORA-17016=Timeout opstod for s\u00e6tning + +ORA-17017=Mark\u00f8r er allerede initialiseret + +ORA-17018=Ugyldig mark\u00f8r + +ORA-17019=Kan kun beskrive en foresp\u00f8rgsel + +ORA-17020=Ugyldig r\u00e6kke-prefetch + +ORA-17021=Mangler definitioner + +ORA-17022=Mangler definitioner ved indeks + +ORA-17023=Ikke-underst\u00f8ttet facilitet + +ORA-17024=Ingen data er l\u00e6st + +ORA-17025=Fejl i defines.isNull () + +ORA-17026=Numerisk overl\u00f8b + +ORA-17027=Stream er allerede lukket + +ORA-17028=Kan ikke oprette nye definitioner, f\u00f8r det aktuelle ResultSet er lukket + +ORA-17029=setReadOnly: Skrivebeskyttede forbindelser underst\u00f8ttes ikke + +ORA-17030=READ_COMMITTED og SERIALIZABLE er de eneste gyldige transaktionsniveauer + +ORA-17031=setAutoClose: Underst\u00f8t kun auto close on + +ORA-17032=r\u00e6kke-prefetch kan ikke s\u00e6ttes til nul + +ORA-17033=Ugyldig SQL92-streng p\u00e5 position + +ORA-17034=Ikke-underst\u00f8ttet SQL92-token p\u00e5 position + +ORA-17035=Tegns\u00e6t underst\u00f8ttes ikke !! + +ORA-17036=undtagelse i OracleNumber + +ORA-17037=Konvertering mellem UTF8 og UCS2 fejlede + +ORA-17038=Byte-array ikke lang nok + +ORA-17039=Tegn-array ikke lang nok + +ORA-17040=Underprotokol skal v\u00e6re angivet i forbindelses-URL + +ORA-17041=Manglende IN- eller OUT-parameter ved indeks: + +ORA-17042=Ugyldig batch-v\u00e6rdi + +ORA-17043=Ugyldig maksimal stream-st\u00f8rrelse + +ORA-17044=Intern fejl: Data-array ikke allokeret + +ORA-17045=Intern fejl: Fors\u00f8g p\u00e5 at f\u00e5 adgang til tilknytningsv\u00e6rdier, der ligger ud over batch-v\u00e6rdien + +ORA-17046=Intern fejl: Ugyldigt indeks for dataadgang + +ORA-17047=Fejl i analyse af type-descriptor + +ORA-17048=Ikke-defineret type + +ORA-17049=Inkonsistente java- og sql-objekttyper + +ORA-17050=dette element findes ikke i vektor + +ORA-17051=Dette API kan ikke bruges til ikke-UDT-typer + +ORA-17052=Denne reference er ugyldig + +ORA-17053=St\u00f8rrelsen er ugyldig + +ORA-17054=LOB-locator er ugyldig + +ORA-17055=Ugyldigt tegn m\u00f8dt i + +ORA-17056=Ikke-underst\u00f8ttet tegns\u00e6t + +ORA-17057=Lukket LOB + +ORA-17058=Intern fejl: Ugyldigt NLS-konverteringsforhold + +ORA-17059=Konvertering til intern repr\u00e6sentation fejlede + +ORA-17060=Konstruktion af descriptor fejlede + +ORA-17061=Manglende descriptor + +ORA-17062=Referencemark\u00f8ren er ugyldig + +ORA-17063=Ikke i en transaktion + +ORA-17064=Syntaks er ugyldig, eller databasenavn er NULL + +ORA-17065=Konverteringsklasse er NULL + +ORA-17066=Specifik implementering af adgangs-layer er p\u00e5kr\u00e6vet + +ORA-17067=Ugyldig Oracle URL er angivet + +ORA-17068=Ugyldigt argument eller ugyldige argumenter i kald + +ORA-17069=Brug eksplicit XA-kald + +ORA-17070=Datast\u00f8rrelsen overskrider maksimumst\u00f8rrelsen for denne type + +ORA-17071=Overskredet maks. VARRAY-gr\u00e6nse + +ORA-17072=Indsat v\u00e6rdi for stor til kolonne + +ORA-17073=Logisk handle ikke l\u00e6ngere gyldigt + +ORA-17074=ugyldigt navnem\u00f8nster + +ORA-17075=Ugyldig operation p\u00e5 forward only-resultats\u00e6t + +ORA-17076=Ugyldig operation p\u00e5 skrivebeskyttet resultats\u00e6t + +ORA-17077=Kunne ikke s\u00e6tte REF-v\u00e6rdi + +ORA-17078=Kan ikke udf\u00f8re operationen, da forbindelser allerede er \u00e5bnet + +ORA-17079=ID-oplysninger for bruger matcher ikke til de eksisterende oplysninger + +ORA-17080=ugyldig batch-kommando + +ORA-17081=fejl opstod under batching + +ORA-17082=Ingen aktuel r\u00e6kke + +ORA-17083=Ikke p\u00e5 den indsatte r\u00e6kke + +ORA-17084=Kaldt p\u00e5 den indsatte r\u00e6kke + +ORA-17085=V\u00e6rdikonflikter opst\u00e5r + +ORA-17086=Ikke-defineret kolonnev\u00e6rdi p\u00e5 den indsatte r\u00e6kke + +ORA-17087=Ignorerede hj\u00e6lpelinje til ydeevne: setFetchDirection() + +ORA-17088=Ikke-underst\u00f8ttet syntaks for anmodet resultats\u00e6ttype og niveau for samtidighed +ORA-17089=intern fejl + +ORA-17090=operation ikke tilladt + +ORA-17091=Kan ikke oprette resultats\u00e6t p\u00e5 det anmodede niveau for type og/eller samtidighed + +ORA-17092=JDBC-s\u00e6tninger kan ikke oprettes eller udf\u00f8res i slutning af behandling af kald + +ORA-17093=OCI-operation returnerede OCI_SUCCESS_WITH_INFO + +ORA-17094=Objekttypeversion matcher ikke + +ORA-17095=S\u00e6tningscachest\u00f8rrelse er ikke blevet sat + +ORA-17096=Cache af s\u00e6tninger kan ikke aktiveres for denne logiske forbindelse. + +ORA-17097=Ugyldig elementtype for PL/SQL-indekstabel + +ORA-17098=Ugyldig tom lob-operation + +ORA-17099=Ugyldig array-l\u00e6ngde for PL/SQL-indekstabel + +ORA-17100=Ugyldigt database-Java-objekt + +ORA-17101=Ugyldige egenskaber i OCI-forbindelses-pool-objekt + +ORA-17102=BFILE er skrivebeskyttet + +ORA-17103=ugyldig forbindelsestype, der skal returneres via getConnection. Brug getJavaSqlConnection i stedet for + +ORA-17104=SQL-s\u00e6tning, der skal udf\u00f8res, kan ikke v\u00e6re tom eller NULL + +ORA-17105=tidszone for forbindelsessession blev ikke sat + +ORA-17106=ugyldig forbindelsespuljekonfiguration angivet for JDBC-OCI-driver + +ORA-17107=ugyldig proxy-type angivet + +ORA-17108=Ingen maks. l\u00e6ngde angivet i defineColumnType + +ORA-17109=standard-Java-tegnkodning ikke fundet + +ORA-17110=udf\u00f8rt med advarsel + +ORA-17111=Ugyldigt timeout for forbindelsescache-TTL angivet + +ORA-17112=Ugyldigt tr\u00e5dinterval angivet + +ORA-17113=V\u00e6rdi for tr\u00e5dinterval er st\u00f8rre end v\u00e6rdi for cache-timeout + +ORA-17114=kunne ikke bruge lokal transaktionsbekr\u00e6ftelse i en global transaktion + +ORA-17115=kunne ikke bruge lokal transaktionstilbagestilling i en global transaktion + +ORA-17116=kunne ikke aktivere automatisk bekr\u00e6ftelse i en aktiv global transaktion + +ORA-17117=kunne ikke s\u00e6tte sikringspunkt i en aktiv global transaktion + +ORA-17118=kunne ikke opn\u00e5 ID for et navngivet sikringspunkt + +ORA-17119=kunne ikke opn\u00e5 navn for et unavngivet sikringspunkt + +ORA-17120=kunne ikke s\u00e6tte et sikringspunkt med autmatisk bekr\u00e6ftelse aktiveret + +ORA-17121=kunne ikke tilbagestille til et sikringspunkt med autmatisk bekr\u00e6ftelse aktiveret + +ORA-17122=kunne ikke tilbagestille til et lokalt txn-sikringspunkt i en global transaktion + +ORA-17123=Ugyldig s\u00e6tningscachest\u00f8rrelse angivet + +ORA-17124=Ugyldigt timeout for inaktivitet i forbindelsecache angivet + +ORA-17200=Kan ikke konvertere XA-\u00e5bningsstreng fra Java til C korrekt + +ORA-17201=Kan ikke konvertere XA-lukningsstreng fra Java til C korrekt + +ORA-17202=Kan ikke konvertere RM-navn fra Java til C korrekt + +ORA-17203=Kunne ikke udf\u00f8re casting af mark\u00f8rtype til jlong + +ORA-17204=Input-array for kort til at indeholde OCI-handles + +ORA-17205=Hentning af OCISvcCtx-handle fra C-XA ved hj\u00e6lp af xaoSvcCtx fejlede + +ORA-17206=Hentning af OCIEnv-handle fra C-XA ved hj\u00e6lp af xaoEnv fejlede + +ORA-17207=tnsEntry-egenskaben blev ikke sat i DataSource + +ORA-17213=C-XA returnerede XAER_RMERR under xa_open + +ORA-17215=C-XA returnerede XAER_INVAL under xa_open + +ORA-17216=C-XA returnerede XAER_PROTO under xa_open + +ORA-17233=C-XA returnerede XAER_RMERR under xa_close + +ORA-17235=C-XA returnerede XAER_INVAL under xa_close + +ORA-17236=C-XA returnerede XAER_PROTO under xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokolovertr\u00e6delse + +ORA-17402=Kun \u00e9n RPA-meddelelse forventes + +ORA-17403=Kun \u00e9n RXH-meddelelse forventes + +ORA-17404=Modtaget flere RXD\'er end forventet + +ORA-17405=UAC-l\u00e6ngde er ikke nul + +ORA-17406=Overskrider maksimale bufferl\u00e6ngde + +ORA-17407=ugyldig typerepr\u00e6sentation (setRep) + +ORA-17408=ugyldig typerepr\u00e6sentation (getRep) + +ORA-17409=ugyldig bufferl\u00e6ngde + +ORA-17410=Ikke flere data, der skal l\u00e6ses fra socket + +ORA-17411=Datatyperepr\u00e6sentationer matcher ikke + +ORA-17412=Typel\u00e6ngde st\u00f8rre end maksimum + +ORA-17413=Overskrider n\u00f8glest\u00f8rrelse + +ORA-17414=Utilstr\u00e6kkelig bufferst\u00f8rrelse til lagring af kolonnenavne + +ORA-17415=Denne type er ikke h\u00e5ndteret + +ORA-17416=FATAL + +ORA-17417=NLS-problem, afkodning af kolonnenavne fejlede + +ORA-17418=Fejl i feltl\u00e6ngden i intern struktur + +ORA-17419=Et ugyldigt antal kolonner returneret + +ORA-17420=Oracle-versionen ikke defineret + +ORA-17421=Typer eller forbindelse ikke defineret + +ORA-17422=Ugyldig klasse i factory + +ORA-17423=Bruger en PLSQL-blok, uden at en IOV er defineret + +ORA-17424=Fors\u00f8ger forskellige marshalling-operationer + +ORA-17425=Returnerer en stream i PLSQL-blok + +ORA-17426=B\u00e5de IN- og OUT-tilknytninger er NULL + +ORA-17427=Bruger ikke-initialiseret OAC + +ORA-17428=Logon skal kaldes, n\u00e5r forbindelse er oprettet + +ORA-17429=Skal mindst have forbindelse til server + +ORA-17430=Skal v\u00e6re logget p\u00e5 server + +ORA-17431=SQL-s\u00e6tning, der skal analyseres, er NULL + +ORA-17432=Ugyldige valg i all7 + +ORA-17433=ugyldige argumenter i kald + +ORA-17434=ikke i streaming-tilstand + +ORA-17435=ugyldigt antal in_out_binds i IOV + +ORA-17436=ugyldigt antal outbinds + +ORA-17437=Fejl i IN/OUT-argument(er) i PLSQL-blok? + +ORA-17438=Intern - Uventet v\u00e6rdi + +ORA-17439=Ugyldig SQL-type + +ORA-17440=DBItem/DBType er NULL + +ORA-17441=Ikke-underst\u00f8ttet Oracle-version. Den tidligste version, der underst\u00f8ttes, er 7.2.3. + +ORA-17442=V\u00e6rdien for Refcursor er ugyldig + +ORA-17443=NULL-bruger eller -adgangskode underst\u00f8ttes ikke i THIN-driver + +ORA-17444=TTC-protokolversion modtaget fra server underst\u00f8ttes ikke + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5c/e0c8c61998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5c/e0c8c61998af001c18c4935e001381da new file mode 100644 index 0000000..03357bc Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5c/e0c8c61998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5c/f000df1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5c/f000df1898af001c18c4935e001381da new file mode 100644 index 0000000..d62c35c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5c/f000df1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/00a212f720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/00a212f720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..58b9da7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/00a212f720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Error intern + +ORA-17002=Excepci\u00f3 ES + +ORA-17003=\u00cdndex de columna incorrecte + +ORA-17004=Tipus de columna incorrecte + +ORA-17005=Tipus de columna no suportat + +ORA-17006=Nom de columna incorrecte + +ORA-17007=Columna din\u00e0mica no v\u00e0lida + +ORA-17008=Connexi\u00f3 tancada + +ORA-17009=Sent\u00e8ncia tancada + +ORA-17010=Resultset tancat + +ORA-17011=Resultset exhaurit + +ORA-17012=Conflicte en el tipus de par\u00e0metre + +ORA-17014=No s\'ha cridat ResultSet.next + +ORA-17015=S\'ha cancel\u00b7lat la declaraci\u00f3 + +ORA-17016=La declaraci\u00f3 ha superat el temps d\'espera + +ORA-17017=Cursor ja inicialitzat + +ORA-17018=Cursor incorrecte + +ORA-17019=Nom\u00e9s es pot descriure una consulta + +ORA-17020=Preobtenci\u00f3 de fila incorrecta + +ORA-17021=Manca definici\u00f3 + +ORA-17022=Manca definici\u00f3 a l\'\u00edndex + +ORA-17023=Prestaci\u00f3 no suportada + +ORA-17024=No hi ha lectura de dades + +ORA-17025=Error a defines.isNull () + +ORA-17026=Sobreeiximent num\u00e8ric + +ORA-17027=El flux ja ha estat tancat + +ORA-17028=No es poden fer definicions noves fins que no es tanqui el ResultSet actual + +ORA-17029=setReadOnly: Connexions de nom\u00e9s lectura no suportades + +ORA-17030=READ_COMMITTED i SERIALIZABLE s\u00f3n els \u00fanics nivells de transacci\u00f3 v\u00e0lids + +ORA-17031=setAutoClose: Nom\u00e9s suporta el mode de tancament autom\u00e0tic activat + +ORA-17032=no es pot fixar l\'obtenci\u00f3 de fila a zero + +ORA-17033=Cadena SQL92 mal constru\u00efda en la posici\u00f3 + +ORA-17034=Senyal SQL92 no suportada en la posici\u00f3 + +ORA-17035=Joc de car\u00e0cters no suportat !! + +ORA-17036=excepci\u00f3 a OracleNumber + +ORA-17037=Fallada en convertir entre UTF8 i UCS2 + +ORA-17038=Matriu de bytes no suficientment llarga + +ORA-17039=Matriu de car\u00e0cters no suficientment llarga + +ORA-17040=S\'ha d\'especificar el Sub Protocol en l\' URL de connexi\u00f3 + +ORA-17041=Manca el par\u00e0metre IN o OUT en l\'\u00edndex: + +ORA-17042=Valor de Lot Incorrecte + +ORA-17043=Grand\u00e0ria M\u00e0xima de Flux Incorrecta + +ORA-17044=Error intern: Matriu de dades no assignada + +ORA-17045=Error intern: Intent d\'accedir a valors d\'unificaci\u00f3 superiors al valor del lot + +ORA-17046=Error intern: \u00cdndex incorrecte per a l\'acc\u00e9s a les dades + +ORA-17047=Error en l\'an\u00e0lisi del Descriptor de Tipus + +ORA-17048=Tipus no definit + +ORA-17049=Tipus d\'objecte java i sql no inconsistents + +ORA-17050=no hi ha cap element com aquest en el vector + +ORA-17051=Aquest API no pot \u00e9sser utilitzat per a tipus no UDT + +ORA-17052=Aquesta ref no \u00e9s v\u00e0lida + +ORA-17053=Aquesta grand\u00e0ria no \u00e9s v\u00e0lida + +ORA-17054=Aquest localitzador LOB no \u00e9s v\u00e0lid + +ORA-17055=S\'ha trobat un car\u00e0cter incorrecte a + +ORA-17056=Joc de car\u00e0cters no suportat + +ORA-17057=LOB tancat + +ORA-17058=Error intern: Relaci\u00f3 de conversi\u00f3 NLS incorrecta + +ORA-17059=No es pot convertir en representaci\u00f3 interna + +ORA-17060=No es pot construir el descriptor + +ORA-17061=Manca el descriptor + +ORA-17062=El cursor de ref no \u00e9s v\u00e0lid + +ORA-17063=No en una transacci\u00f3 + +ORA-17064=Sintaxi incorrecta o nom de base de dades nul + +ORA-17065=La classe de conversi\u00f3 \u00e9s nul\u00b7la + +ORA-17066=Cal una implementaci\u00f3 espec\u00edfica de l\'estrat d\'acc\u00e9s + +ORA-17067=S\'ha especificat un URL Oracle incorrecte + +ORA-17068=Argument(s) incorrecte(s) a la trucada + +ORA-17069=Utilitzar trucada XA expl\u00edcita + +ORA-17070=Grand\u00e0ria de dades major a la grand\u00e0ria m\u00e0xima per a aquest tipus + +ORA-17071=S\'ha sobrepassat el l\u00edmit VARRAY m\u00e0xim + +ORA-17072=EL valor insertat \u00e9s massa gran per la columna + +ORA-17073=El tractament l\u00f2gic ja no \u00e9s v\u00e0lid + +ORA-17074=patr\u00f3 de nom incorrecte + +ORA-17075=Operaci\u00f3 incorrecta en el joc de resultats de nom\u00e9s reenviament + +ORA-17076=Operaci\u00f3 incorrecta en el joc de resultats de nom\u00e9s lectura + +ORA-17077=Fallada en definir el valor REF + +ORA-17078=No es pot realitzar l\'operaci\u00f3 perqu\u00e8 les connexions ja estan obertes + +ORA-17079=Les credencials d\'usuari no coincideixen amb les ja existents + +ORA-17080=comanda de lot incorrecta + +ORA-17081=s\'ha produ\u00eft un error durant el processament per lots + +ORA-17082=No hi ha cap fila actual + +ORA-17083=No es troba en la fila d\'inserci\u00f3 + +ORA-17084=S\'ha cridat en la fila d\'inserci\u00f3 + +ORA-17085=S\'originen conflictes amb el valor + +ORA-17086=Valor de columna no definit a la fila d\'inserci\u00f3 + +ORA-17087=Indicaci\u00f3 de rendiment ignorada: setFetchDirection() + +ORA-17088=Sintaxi no suportada per al tipus de resultset i el nivell de concurr\u00e8ncia sol\u00b7licitats +ORA-17089=error intern + +ORA-17090=operaci\u00f3 no permesa + +ORA-17091=No es pot crear el tipus un joc de resultats en el tipus i/o nivell de concurr\u00e8ncia sol\u00b7licitats + +ORA-17092=No es poden crear o executar sent\u00e8ncies JDBC al final del processament de crides + +ORA-17093=L\'operaci\u00f3 OCI ha retornat OCI_SUCCESS_WITH_INFO + +ORA-17094=No coincideix la versi\u00f3 del tipus d\'objecte + +ORA-17095=No s'ha definit la grand\u00e0ria de la cach\u00e9 de la declaraci\u00f3 + +ORA-17096=No es pot activar l\'escriptura de sent\u00e8ncies a la cache per a aquesta connexi\u00f3 l\u00f2gica. + +ORA-17097=Tipus d\'element no v\u00e0lid a la Taula d\'\u00cdndex PL/SQL + +ORA-17098=Operaci\u00f3 de lob buit no v\u00e0lida + +ORA-17099=Longitud de vector de taula d\'\u00edndex PL/SQL no v\u00e0lida + +ORA-17100=Objecte Java de base de dades no v\u00e0lid + +ORA-17101=Propietats no v\u00e0lides a l\'Objecte del Conjunt de Connexi\u00f3 OCI + +ORA-17102=Bfile \u00e9s de nom\u00e9s lectura + +ORA-17103=getConnection retornar\u00e0 un tipus de connexi\u00f3 no v\u00e0lid. En el seu lloc, utilitzeu getJavaSqlConnection + +ORA-17104=la sent\u00e8ncia SQL per executar no pot \u00e9sser buida o nul\u00b7la + +ORA-17105=no s\'ha establert la zona hor\u00e0ria de la sessi\u00f3 de connexi\u00f3 + +ORA-17106=s'ha especificat una configuraci\u00f3 d'agrupaci\u00f3 de connexions de controlador JDBC-OCI que no \u00e9s v\u00e0lida + +ORA-17107=el tipus de proxy especificat no \u00e9s v\u00e0lid + +ORA-17108=No s'ha especificat cap longitud m\u00e0xima a defineColumnType + +ORA-17109=no s'ha trobat la codificaci\u00f3 de car\u00e0cters Java est\u00e0ndard + +ORA-17110=execuci\u00f3 completada amb av\u00eds + +ORA-17111=S'ha especificat un temps d'espera de TTL de la cach\u00e9 de connexi\u00f3 incorrecte + +ORA-17112=S'ha especificat un interval de threade que no \u00e9s v\u00e0lid + +ORA-17113=El valor d'interval del thread \u00e9s m\u00e9s gran que el valor de temps d'espera de cach\u00e9 + +ORA-17114=no s'ha pogut utilitzar una validaci\u00f3 de transacci\u00f3 local en una transacci\u00f3 global + +ORA-17115=no s'ha pogut utilitzar un rollback de transacci\u00f3 local en una transacci\u00f3 global + +ORA-17116=no s'ha pogut activar la validaci\u00f3 autom\u00e0tica en una transacci\u00f3 global activa + +ORA-17117=no s'ha pogut establir el punt de restauraci\u00f3 en una transacci\u00f3 global activa + +ORA-17118=no s'ha obtingut cap ID per a un punt de restauraci\u00f3 amb nom + +ORA-17119=no s'ha obtingut cap nom per a un punt de restauraci\u00f3 sense nom + +ORA-17120=no s'ha pogut definir cap Punt de restauraci\u00f3 amb la validaci\u00f3 autom\u00e0tica activada + +ORA-17121=no s'ha pogut efectuar un rollback al Punt de recuperaci\u00f3 amb la validaci\u00f3 autom\u00e0tica activada + +ORA-17122=no s'ha pogut efectuar un rollback a un Punt de restauraci\u00f3 txn local en una transacci\u00f3 global + +ORA-17123=S'ha especificat una grand\u00e0ria de cach\u00e9 de declaraci\u00f3 incorrecta + +ORA-17124=S'ha especificat un temps d'espera d'Inactivitat de la cach\u00e9 de connexi\u00f3 incorrecte + +ORA-17200=No s\'ha pogut convertir b\u00e9 la cadena d\'obertura XA de Java a C + +ORA-17201=No s\'ha pogut convertir b\u00e9 la cadena de tancament XA de Java a C + +ORA-17202=No s\'ha pogut convertir b\u00e9 el nom RM de Java a C + +ORA-17203=No s\'ha pogut canviar el tipus d\'apuntador de fusi\u00f3 per jlong + +ORA-17204=El vector d\'entrada \u00e9s massa curt per contenir gestors OCI + +ORA-17205=No s\'ha pogut obtenir el gestor OCISvcCtx de C-XA mitjan\u00e7ant xaoSvcCtx + +ORA-17206=No s\'ha pogut obtenir el egstor OCIEnv de C-XA mitjan\u00e7ant xaoEnv + +ORA-17207=La propietat tnsEntry no ha estat establerta a l\'Origen de Dades + +ORA-17213=C-XA ha retornat XAER_RMERR durant xa_open + +ORA-17215=C-XA ha retornat XAER_INVAL durant xa_open + +ORA-17216=C-XA ha retornat XAER_PROTO durant xa_open + +ORA-17233=C-XA ha retornat XAER_RMERR durant xa_close + +ORA-17235=C-XA ha retornat XAER_INVAL durant xa_close + +ORA-17236=C-XA ha retornat XAER_PROTO durant xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violaci\u00f3 de protocol + +ORA-17402=Nom\u00e9s s\'espera un missatge RPA + +ORA-17403=Nom\u00e9s s\'espera un missatge RXH + +ORA-17404=S\'han rebut m\u00e9s RXD dels esperats + +ORA-17405=La longitud UAC no \u00e9s zero + +ORA-17406=Sobrepassa la longitud m\u00e0xima del buffer + +ORA-17407=representaci\u00f3 incorrecta del tipus(setRep) + +ORA-17408=representaci\u00f3 incorrecta del tipus(getRep) + +ORA-17409=longitud de buffer incorrecta + +ORA-17410=No hi ha m\u00e9s dades per llegir al s\u00f2col + +ORA-17411=no coincideixen les representacions dels Tipus de Dades + +ORA-17412=Longitud de tipus m\u00e9s gran que la m\u00e0xima + +ORA-17413=Sobrepassa la grand\u00e0ria de la clau + +ORA-17414=Grand\u00e0ria de coix\u00ed insuficient per emmagatzemar els Noms de les Columnes + +ORA-17415=Aquest tipus no ha estat gestionat + +ORA-17416=FATAL + +ORA-17417=Problema NLS, no s\'han pogut descodificar els noms de les columnes + +ORA-17418=Error de longitud del camp d\'estructura interna + +ORA-17419=Nombre de columnes retornades incorrecte + +ORA-17420=Versi\u00f3 d\'Oracle no definida + +ORA-17421=Tipus o Connexi\u00f3 no definits + +ORA-17422=Classe no v\u00e0lida a la f\u00e0brica + +ORA-17423=Utilitzaci\u00f3 de bloc PLSQL sense un IOV definit + +ORA-17424=Intentant una operaci\u00f3 de classificaci\u00f3 diferent + +ORA-17425=Retornant un flux en el bloc PLSQL + +ORA-17426=Tant el lligam IN com l\'OUT s\u00f3n NULL + +ORA-17427=Utilitzant un OAC no inicialitzat + +ORA-17428=S'ha de cridar l'entrada despr\u00e9s de connectar + +ORA-17429=Haur\u00edeu d'estar almenys connectat al servidor + +ORA-17430=Ha d'estar connectat al servidor + +ORA-17431=La sent\u00e8ncia SQL per analitzar \u00e9s nul\u00b7la + +ORA-17432=opcions no v\u00e0lides en la trucada + +ORA-17433=arguments no v\u00e0lids en la trucada + +ORA-17434=no en el mode de flux + +ORA-17435=nombre de in_out_binds en IOV no v\u00e0lid + +ORA-17436=nombre de sortides no v\u00e0lid + +ORA-17437=Error en el(s) argument(s) IN/OUT del bloc PLSQL + +ORA-17438=Intern - Valor no esperat + +ORA-17439=Tipus SQL no v\u00e0lid + +ORA-17440=DBItem/DBType \u00e9s nul + +ORA-17441=Versi\u00f3 d\'Oracle no suportada. La versi\u00f3 m\u00ednima suportada \u00e9s la 7.2.3. + +ORA-17442=El valor de cursor de ref no \u00e9s v\u00e0lid + +ORA-17443=Usuari o paraula clau nuls no suportats al controlador THIN + +ORA-17444=La versi\u00f3 de Protocol TTC rebuda del servidor no \u00e9s suportada + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/50f97e7ec7a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/50f97e7ec7a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..863feeb --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/50f97e7ec7a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + JOptionPane.showOptionDialog(null, "Message d'essai", "Configuration", 1, 1, new Icon(), jlabelBase, "Valeur initiale"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/7031941798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/7031941798af001c18c4935e001381da new file mode 100644 index 0000000..a238502 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/7031941798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/7087c11b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/7087c11b98af001c18c4935e001381da new file mode 100644 index 0000000..85a3dfb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/7087c11b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/80fb060d07a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/80fb060d07a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..2235c09 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5d/80fb060d07a4001c1027e59cc3e35e89 @@ -0,0 +1,94 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("## Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("## Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("## Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("## Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("## Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes (Commence 1 !) +// int i = rsmd.getColumnCount(); +// System.out.println("Nombre de colonne: " + i); + + // Donner les enttes de colonnes +// for(int j = 1; j < i; j++){ +// System.out.print(rsmd.getColumnName(j) + " "); +// } + + System.out.println(rsmd.getColumnName(2) + " " + rsmd.getColumnName(3)); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("## Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("## Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("## Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("## Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5e/504929fdcba4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5e/504929fdcba4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..40dfb52 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5e/504929fdcba4001c1acc9f54b60f9b57 @@ -0,0 +1,90 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5e/e0522d1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5e/e0522d1a98af001c18c4935e001381da new file mode 100644 index 0000000..e064729 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5e/e0522d1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5e/f09cbf1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5e/f09cbf1998af001c18c4935e001381da new file mode 100644 index 0000000..d57433a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5e/f09cbf1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5f/10cc4f1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5f/10cc4f1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..43f6f9b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/5f/10cc4f1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Error interno + +ORA-17002=Excepci\u00f3n de E/S + +ORA-17003=\u00cdndice de columna no v\u00e1lido + +ORA-17004=Tipo de columna no v\u00e1lido + +ORA-17005=Tipo de columna no soportado + +ORA-17006=Nombre de columna no v\u00e1lido + +ORA-17007=Columna din\u00e1mica no v\u00e1lida + +ORA-17008=Conexi\u00f3n cerrada + +ORA-17009=Sentencia cerrada + +ORA-17010=Juego de resultados cerrado + +ORA-17011=Juego de resultados agotado + +ORA-17012=Conflicto de tipo de par\u00e1metro + +ORA-17014=No se ha llamado a ResultSet.next + +ORA-17015=Se ha cancelado la sentencia + +ORA-17016=Timeout de sentencia + +ORA-17017=Ya se ha inicializado el cursor + +ORA-17018=Cursor no v\u00e1lido + +ORA-17019=S\u00f3lo puede describir una consulta + +ORA-17020=Recuperaci\u00f3n previa de fila no v\u00e1lida + +ORA-17021=Faltan definiciones + +ORA-17022=Faltan definiciones en el \u00edndice + +ORA-17023=Funci\u00f3n no soportada + +ORA-17024=No hay lectura de datos + +ORA-17025=Error en defines.isNull () + +ORA-17026=Desbordamiento Num\u00e9rico + +ORA-17027=El flujo ya se ha cerrado + +ORA-17028=No se pueden realizar nuevas definiciones hasta que no se cierre el juego de resultados actual + +ORA-17029=setReadOnly: Conexiones de s\u00f3lo lectura no soportadas + +ORA-17030=READ_COMMITTED y SERIALIZABLE son los \u00fanicos niveles de transacci\u00f3n v\u00e1lidos + +ORA-17031=setAutoClose: S\u00f3lo soporta el modo de cierre autom\u00e1tico + +ORA-17032=no se puede definir la recuperaci\u00f3n previa de fila en cero + +ORA-17033=Cadena SQL92 con formato incorrecto en la posici\u00f3n + +ORA-17034=Elemento SQL92 no soportado en la posici\u00f3n + +ORA-17035=\u00a1\u00a1Juego de caracteres no soportado!! + +ORA-17036=excepci\u00f3n en OracleNumber + +ORA-17037=Fallo al convertir entre UTF8 y UCS2 + +ORA-17038=La matriz de bytes no es suficientemente larga + +ORA-17039=La matriz de caracteres no es suficientemente larga + +ORA-17040=El subprotocolo se debe especificar en la direcci\u00f3n URL de conexi\u00f3n + +ORA-17041=Falta el par\u00e1metro IN o OUT en el \u00edndice: + +ORA-17042=Valor de lote no v\u00e1lido + +ORA-17043=Tama\u00f1o m\u00e1ximo de flujo no v\u00e1lido + +ORA-17044=Error interno: No se ha asignado la matriz de datos + +ORA-17045=Error interno: Se ha intentado acceder a valores de enlace aparte del valor de lote + +ORA-17046=Error interno: \u00cdndice no v\u00e1lido para el acceso a los datos + +ORA-17047=Error en el an\u00e1lisis del descriptor de tipo + +ORA-17048=Tipo no definido + +ORA-17049=Tipos de objeto JAVA y SQL inconsistentes + +ORA-17050=no existe ese elemento en el vector + +ORA-17051=Esta API no se puede utilizar para tipos que no sean UDT + +ORA-17052=Esta referencia no es v\u00e1lida + +ORA-17053=El tama\u00f1o no es v\u00e1lido + +ORA-17054=El localizador LOB no es v\u00e1lido + +ORA-17055=Se ha encontrado un car\u00e1cter no v\u00e1lido en + +ORA-17056=Juego de caracteres no soportado + +ORA-17057=LOB cerrado + +ORA-17058=Error interno: Ratio de conversi\u00f3n NLS no v\u00e1lida + +ORA-17059=Fallo al convertir a representaci\u00f3n interna + +ORA-17060=Fallo al construir el descriptor + +ORA-17061=Falta el descriptor + +ORA-17062=El cursor de referencia no es v\u00e1lido + +ORA-17063=No est\u00e1 en una transacci\u00f3n + +ORA-17064=La sintaxis no es v\u00e1lida o el nombre de la base de datos es nulo + +ORA-17065=La clase de conversi\u00f3n es nula + +ORA-17066=Se necesita implementaci\u00f3n concreta del nivel de acceso + +ORA-17067=La direcci\u00f3n URL de Oracle especificada no es v\u00e1lida + +ORA-17068=Argumento(s) no v\u00e1lido(s) en la llamada + +ORA-17069=Utilizar llamada XA expl\u00edcita + +ORA-17070=El tama\u00f1o de los datos es mayor que el tama\u00f1o m\u00e1ximo para este tipo + +ORA-17071=Se ha excedido el l\u00edmite m\u00e1ximo de VARRAY + +ORA-17072=El valor insertado es demasiado largo para la columna + +ORA-17073=El manejador l\u00f3gico ya no es v\u00e1lido + +ORA-17074=patr\u00f3n de nombre no v\u00e1lido + +ORA-17075=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo reenv\u00edo + +ORA-17076=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo lectura + +ORA-17077=Fallo al definir el valor REF + +ORA-17078=No se puede realizar la operaci\u00f3n ya que las conexiones ya est\u00e1n abiertas + +ORA-17079=Las credenciales del usuario no coinciden con las existentes + +ORA-17080=comando por lotes no v\u00e1lido + +ORA-17081=se ha producido un error durante el procesamiento por lotes + +ORA-17082=No es la fila actual + +ORA-17083=No est\u00e1 en la fila de inserci\u00f3n + +ORA-17084=Llamada en la fila de inserci\u00f3n + +ORA-17085=Se ha producido un conflicto de valores + +ORA-17086=El valor de la columna no est\u00e1 definido en la fila de inserci\u00f3n + +ORA-17087=Indicaci\u00f3n de rendimiento ignorada: setFetchDirection() + +ORA-17088=Sintaxis no soportada para el tipo de juego de resultados y el nivel de simultaneidad solicitados +ORA-17089=error interno + +ORA-17090=operaci\u00f3n no permitida + +ORA-17091=No se puede crear el juego de resultados en el tipo y/o nivel de simultaneidad solicitados + +ORA-17092=Las sentencias JDBC no se pueden crear o ejecutar al final del procesamiento de la llamada + +ORA-17093=La operaci\u00f3n OCI ha devuelto OCI_SUCCESS_WITH_INFO + +ORA-17094=Las versiones de tipo de objeto no coinciden + +ORA-17095=No se ha definido el tama\u00f1o de la cach\u00e9 de sentencias + +ORA-17096=La cach\u00e9 de sentencias no se puede activar para esta conexi\u00f3n l\u00f3gica. + +ORA-17097=Tipo de elemento de tabla indexada PL/SQL no v\u00e1lido + +ORA-17098=Operaci\u00f3n LOB vac\u00eda no v\u00e1lida + +ORA-17099=Longitud de matriz de tabla indexada PL/SQL no v\u00e1lida + +ORA-17100=Objeto Java de la base de datos no v\u00e1lido + +ORA-17101=Propiedades no v\u00e1lidas del objeto del conjunto de conexiones de OCI + +ORA-17102=Bfile es de s\u00f3lo lectura + +ORA-17103=tipo de conexi\u00f3n no v\u00e1lido para volver mediante getConnection. En su lugar, utilice getJavaSqlConnection + +ORA-17104=La sentencia SQL de ejecuci\u00f3n no puede estar vac\u00eda ni ser nula + +ORA-17105=no se ha definido la zona horaria de la sesi\u00f3n de conexi\u00f3n + +ORA-17106=se ha especificado una configuraci\u00f3n de conjunto de conexiones de controlador JDBC-OCI no v\u00e1lida + +ORA-17107=el tipo de proxy especificado no es v\u00e1lido + +ORA-17108=No se ha especificado la longitud m\u00e1xima en defineColumnType + +ORA-17109=no se ha encontrado la codificaci\u00f3n de car\u00e1cter Java est\u00e1ndar + +ORA-17110=la ejecuci\u00f3n ha terminado con advertencias + +ORA-17111=Se ha especificado un timeout de TTL de cach\u00e9 de conexiones no v\u00e1lido + +ORA-17112=Se ha especificado un intervalo de thread no v\u00e1lido + +ORA-17113=El valor del intervalo de thread es mayor que el valor del timeout de cach\u00e9 + +ORA-17114=no se ha podido utilizar la validaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17115=no se ha podido utilizar el rollback de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17116=no se ha podido activar la validaci\u00f3n autom\u00e1tica en una transacci\u00f3n global activa + +ORA-17117=no se ha podido definir el punto de grabaci\u00f3n en una transacci\u00f3n global activa + +ORA-17118=no se ha podido obtener el identificador de un punto de grabaci\u00f3n denominado + +ORA-17119=no se ha podido obtener el nombre de un punto de grabaci\u00f3n no denominado + +ORA-17120=no se ha podido definir un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17121=no se ha podido realizar rollback en un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17122=no se ha podido realizar rollback en un punto de grabaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17123=Se ha especificado un tama\u00f1o de cach\u00e9 de sentencias no v\u00e1lido + +ORA-17124=Se ha especificado un timout de inactividad de cach\u00e9 de conexi\u00f3n no v\u00e1lido + +ORA-17200=No se ha podido convertir correctamente la cadena de apertura de XA de Java a C + +ORA-17201=No se ha podido convertir correctamente la cadena de cierre de XA de Java a C + +ORA-17202=No se ha podido convertir correctamente el nombre de RM de Java a C + +ORA-17203=No se ha podido convertir el tipo de puntero a jlong + +ORA-17204=Matriz de entrada demasiado peque\u00f1a para contener los manejadores OCI + +ORA-17205=Fallo al obtener el manejador OCISvcCtx de C-XA mediante xaoSvcCtx + +ORA-17206=Fallo al obtener el manejador OCIEnv de C-XA mediante xaoEnv + +ORA-17207=No se ha definido la propiedad tnsEntry en el origen de datos + +ORA-17213=C-XA ha devuelto XAER_RMERR durante xa_open + +ORA-17215=C-XA ha devuelto XAER_INVAL durante xa_open + +ORA-17216=C-XA ha devuelto XAER_PROTO durante xa_open + +ORA-17233=C-XA ha devuelto XAER_RMERR durante xa_close + +ORA-17235=C-XA ha devuelto XAER_INVAL durante xa_close + +ORA-17236=C-XA ha devuelto XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violaci\u00f3n de protocolo + +ORA-17402=S\u00f3lo se espera un mensaje RPA + +ORA-17403=S\u00f3lo se espera un mensaje RXH + +ORA-17404=Se han recibido m\u00e1s RXD de los esperados + +ORA-17405=La longitud UAC no es cero + +ORA-17406=Se ha excedido la longitud m\u00e1xima del buffer + +ORA-17407=representaci\u00f3n de tipo (setRep) no v\u00e1lida + +ORA-17408=representaci\u00f3n de tipo (getRep) no v\u00e1lida + +ORA-17409=longitud de buffer no v\u00e1lida + +ORA-17410=No hay m\u00e1s datos para leer del socket + +ORA-17411=No coinciden las representaciones de Tipo de Dato + +ORA-17412=Longitud de tipo mayor que el m\u00e1ximo permitido + +ORA-17413=Se ha excedido el tama\u00f1o de la clave + +ORA-17414=Tama\u00f1o de buffer insuficiente para almacenar nombres de columnas + +ORA-17415=Este tipo no ha sido tratado + +ORA-17416=FATAL + +ORA-17417=Problema NLS, fallo al descodificar nombres de columna + +ORA-17418=Error interno de longitud de campo de la estructura + +ORA-17419=El sistema ha devuelto un n\u00famero de columnas no v\u00e1lido + +ORA-17420=No se ha definido la versi\u00f3n de Oracle + +ORA-17421=La conexi\u00f3n o los tipos no se han definido + +ORA-17422=Clase no v\u00e1lida en el tipo de objeto Factory + +ORA-17423=Se est\u00e1 utilizando un bloque PLSQL sin haber definido un IOV + +ORA-17424=Se est\u00e1 intentando realizar una operaci\u00f3n de canalizaci\u00f3n de datos entre sistemas diferente + +ORA-17425=Se est\u00e1 devolviendo un flujo en el bloque PLSQL + +ORA-17426=Los enlaces IN y OUT son NULL + +ORA-17427=Se est\u00e1 utilizando OAC no inicializado + +ORA-17428=Logon se debe llamar despu\u00e9s de Connect + +ORA-17429=Debe estar conectado al servidor + +ORA-17430=Debe estar conectado al servidor + +ORA-17431=La sentencia SQL que se va a analizar es nula + +ORA-17432=opciones no v\u00e1lidas en all7 + +ORA-17433=argumentos no v\u00e1lidos en la llamada + +ORA-17434=no est\u00e1 en modo de lectura/escritura continuo + +ORA-17435=n\u00famero no v\u00e1lido de in_out_binds en IOV + +ORA-17436=n\u00famero no v\u00e1lido de par\u00e1metros OUT + +ORA-17437=Error en el argumento o argumentos IN/OUT del bloque PLSQL + +ORA-17438=Error interno - Valor inesperado + +ORA-17439=Tipo SQL no v\u00e1lido + +ORA-17440=DBItem/DBType nulo + +ORA-17441=Versi\u00f3n de Oracle no soportada. La versi\u00f3n m\u00ednima soportada es la 7.2.3. + +ORA-17442=El valor del cursor de referencia no es v\u00e1lido + +ORA-17443=Usuario nulo o contrase\u00f1a no soportada en el controlador THIN + +ORA-17444=Versi\u00f3n no soportada del protocolo TTC recibido del servidor + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6/d08b171b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6/d08b171b98af001c18c4935e001381da new file mode 100644 index 0000000..01e74a6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6/d08b171b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/10426d1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/10426d1a98af001c18c4935e001381da new file mode 100644 index 0000000..a538e63 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/10426d1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/303fc910fda3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/303fc910fda3001c1027e59cc3e35e89 new file mode 100644 index 0000000..8df059b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/303fc910fda3001c1027e59cc3e35e89 @@ -0,0 +1,42 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/304ad81898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/304ad81898af001c18c4935e001381da new file mode 100644 index 0000000..9424842 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/304ad81898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/b0302b31cca4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/b0302b31cca4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..ae214cb --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/b0302b31cca4001c1acc9f54b60f9b57 @@ -0,0 +1,92 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche, FlowLayout.LEFT); + Panneau_Centre.add(Panneau_Centre_Droite, FlowLayout.RIGHT); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/b0ee06f203a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/b0ee06f203a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..50bf29a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/60/b0ee06f203a4001c1027e59cc3e35e89 @@ -0,0 +1,73 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + + resultat.toString(); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + resultat.toString(); + + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/20f3f11598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/20f3f11598af001c18c4935e001381da new file mode 100644 index 0000000..a728602 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/20f3f11598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/50c8be1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/50c8be1b98af001c18c4935e001381da new file mode 100644 index 0000000..ae391c8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/50c8be1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/a0dc911698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/a0dc911698af001c18c4935e001381da new file mode 100644 index 0000000..74abad4 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/a0dc911698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/d0761b527da9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/d0761b527da9001c1d3abf97745a02da new file mode 100644 index 0000000..3d22dd4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/61/d0761b527da9001c1d3abf97745a02da @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/62/c04ac21b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/62/c04ac21b98af001c18c4935e001381da new file mode 100644 index 0000000..c51e78e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/62/c04ac21b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/302e712a05af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/302e712a05af001c14499bdcdfff58b3 new file mode 100644 index 0000000..5748d4c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/302e712a05af001c14499bdcdfff58b3 @@ -0,0 +1,151 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + + + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "## Connexion ferme."; + } catch(Exception e){ + e.printStackTrace(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/40c0c8d5fbae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/40c0c8d5fbae001c14499bdcdfff58b3 new file mode 100644 index 0000000..3eade87 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/40c0c8d5fbae001c14499bdcdfff58b3 @@ -0,0 +1,205 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; +import javax.swing.JOptionPane; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + // On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(connexionToBdd.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + jlabelServeur.setEnabled(false); + jlabelPort.setEnabled(false); + jlabelBase.setEnabled(false); + jlabelIdentifiant.setEnabled(false); + jlabelMdp.setEnabled(false); + + jOk.setEnabled(false); + + JOptionPane.showDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.); + } + + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypté) : " + this.jtextMdp.getPassword() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(this.jtextMdp.getPassword().toString()); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/50e5783b9caf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/50e5783b9caf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..e4e989c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/50e5783b9caf001c1c2eb8ec16be26ca @@ -0,0 +1,7 @@ +#Fri Dec 21 09:09:35 CET 2007 +eclipse.preferences.version=1 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org;com;oracle.jdbc; +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/60cae41c9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/60cae41c9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/d0e0001998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/d0e0001998af001c18c4935e001381da new file mode 100644 index 0000000..e8c813f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/63/d0e0001998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/10689d0a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/10689d0a98af001c18c4935e001381da new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/1078e61c9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/1078e61c9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/7046a1ee4eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/7046a1ee4eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..4eb869e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/7046a1ee4eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,152 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + + // Cration de la classe permettant la connexion la base de donnes + private Connexion connexionBDD; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public IHMConnexion(Principale pr) { + + this.pr = pr; + + + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + // Affichage du message de configurmation + this.pr.confirmationConnexion("Mon serveur"); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/a01ef21998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/a01ef21998af001c18c4935e001381da new file mode 100644 index 0000000..8b1e9d2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/a01ef21998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/d0015e1398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/d0015e1398af001c18c4935e001381da new file mode 100644 index 0000000..62028bb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/64/d0015e1398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/65/20e0cdfb20af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/65/20e0cdfb20af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..f5fe76c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/65/20e0cdfb20af001c1bf1a004f0d77fc3 @@ -0,0 +1,326 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Internal Error + +ORA-17002=Io exception + +ORA-17003=Invalid column index + +ORA-17004=Invalid column type + +ORA-17005=Unsupported column type + +ORA-17006=Invalid column name + +ORA-17007=Invalid dynamic column + +ORA-17008=Closed Connection + +ORA-17009=Closed Statement + +ORA-17010=Closed Resultset + +ORA-17011=Exhausted Resultset + +ORA-17012=Parameter Type Conflict + +ORA-17014=ResultSet.next was not called + +ORA-17015=Statement was cancelled + +ORA-17016=Statement timed out + +ORA-17017=Cursor already initialized + +ORA-17018=Invalid cursor + +ORA-17019=Can only describe a query + +ORA-17020=Invalid row prefetch + +ORA-17021=Missing defines + +ORA-17022=Missing defines at index + +ORA-17023=Unsupported feature + +ORA-17024=No data read + +ORA-17025=Error in defines.isNull () + +ORA-17026=Numeric Overflow + +ORA-17027=Stream has already been closed + +ORA-17028=Can not do new defines until the current ResultSet is closed + +ORA-17029=setReadOnly: Read-only connections not supported + +ORA-17030=READ_COMMITTED and SERIALIZABLE are the only valid transaction levels + +ORA-17031=setAutoClose: Only support auto close mode on + +ORA-17032=cannot set row prefetch to zero + +ORA-17033=Malformed SQL92 string at position + +ORA-17034=Non supported SQL92 token at position + +ORA-17035=Character Set Not Supported !! + +ORA-17036=exception in OracleNumber + +ORA-17037=Fail to convert between UTF8 and UCS2 + +ORA-17038=Byte array not long enough + +ORA-17039=Char array not long enough + +ORA-17040=Sub Protocol must be specified in connection URL + +ORA-17041=Missing IN or OUT parameter at index: + +ORA-17042=Invalid Batch Value + +ORA-17043=Invalid stream maximum size + +ORA-17044=Internal error: Data array not allocated + +ORA-17045=Internal error: Attempt to access bind values beyond the batch value + +ORA-17046=Internal error: Invalid index for data access + +ORA-17047=Error in Type Descriptor parse + +ORA-17048=Undefined type + +ORA-17049=Inconsistent java and sql object types + +ORA-17050=no such element in vector + +ORA-17051=This API cannot be be used for non-UDT types + +ORA-17052=This ref is not valid + +ORA-17053=The size is not valid + +ORA-17054=The LOB locator is not valid + +ORA-17055=Invalid character encountered in + +ORA-17056=Non supported character set + +ORA-17057=Closed LOB + +ORA-17058=Internal error: Invalid NLS Conversion ratio + +ORA-17059=Fail to convert to internal representation + +ORA-17060=Fail to construct descriptor + +ORA-17061=Missing descriptor + +ORA-17062=Ref cursor is invalid + +ORA-17063=Not in a transaction + +ORA-17064=Invalid Sytnax or Database name is null + +ORA-17065=Conversion class is null + +ORA-17066=Access layer specific implementation needed + +ORA-17067=Invalid Oracle URL specified + +ORA-17068=Invalid argument(s) in call + +ORA-17069=Use explicit XA call + +ORA-17070=Data size bigger than max size for this type + +ORA-17071=Exceeded maximum VARRAY limit + +ORA-17072=Inserted value too large for column + +ORA-17073=Logical handle no longer valid + +ORA-17074=invalid name pattern + +ORA-17075=Invalid operation for forward only resultset + +ORA-17076=Invalid operation for read only resultset + +ORA-17077=Fail to set REF value + +ORA-17078=Cannot do the operation as connections are already opened + +ORA-17079=User credentials doesn't match the existing ones + +ORA-17080=invalid batch command + +ORA-17081=error occurred during batching + +ORA-17082=No current row + +ORA-17083=Not on the insert row + +ORA-17084=Called on the insert row + +ORA-17085=Value conflicts occurs + +ORA-17086=Undefined column value on the insert row + +ORA-17087=Ignored performance hint: setFetchDirection() + +ORA-17088=Unsupported syntax for requested resultset type and concurrency level +ORA-17089=internal error + +ORA-17090=operation not allowed + +ORA-17091=Unable to create resultset at the requested type and/or concurrency level + +ORA-17092=JDBC statements cannot be created or executed at end of call processing + +ORA-17093=OCI operation returned OCI_SUCCESS_WITH_INFO + +ORA-17094=Object type version mismatched + +ORA-17095=Statement Caching is not enabled for this Connection object + +ORA-17096=Statement Caching cannot be enabled for this logical connection. + +ORA-17097=Invalid PL/SQL Index Table element type + +ORA-17098=Invalid empty lob operation + +ORA-17099=Invalid PL/SQL Index Table array length. + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protocol violation + +ORA-17402=Only one RPA message is expected + +ORA-17403=Only one RXH message is expected + +ORA-17404=Received more RXDs than expected + +ORA-17405=UAC length is not zero + +ORA-17406=Exceeding maximum buffer length + +ORA-17407=invalid Type Representation(setRep) + +ORA-17408=invalid Type Representation(getRep) + +ORA-17409=invalid buffer length + +ORA-17410=No more data to read from socket + +ORA-17411=Data Type representations mismatch + +ORA-17412=Bigger type length than Maximum + +ORA-17413=Exceding key size + +ORA-17414=Insufficient Buffer size to store Columns Names + +ORA-17415=This type hasn't been handled + +ORA-17416=FATAL + +ORA-17417=NLS Problem, failed to decode column names + +ORA-17418=Internal structure's field length error + +ORA-17419=Invalid number of columns returned + +ORA-17420=Oracle Version not defined + +ORA-17421=Types or Connection not defined + +ORA-17422=Invalid class in factory + +ORA-17423=Using a PLSQL block without an IOV defined + +ORA-17424=Attempting different marshaling operation + +ORA-17425=Returning a stream in PLSQL block + +ORA-17426=Both IN and OUT binds are NULL + +ORA-17427=Using Uninitialized OAC + +ORA-17428=Logon must be called after connect + +ORA-17429=Must be at least connected to server + +ORA-17430=Must be logged on to server + +ORA-17431=SQL Statement to parse is null + +ORA-17432=invalid options in all7 + +ORA-17433=invalid arguments in call + +ORA-17434=not in streaming mode + +ORA-17435=invalid number of in_out_binds in IOV + +ORA-17436=invalid number of outbinds + +ORA-17437=Error in PLSQL block IN/OUT argument(s) + +ORA-17438=Internal - Unexpected value + +ORA-17439=Invalid SQL type + +ORA-17440=DBItem/DBType is null + +ORA-17441=Oracle Version not supported. Minimum supported version is 7.2.3. + +ORA-17442=Refcursor value is invalid + +ORA-17443=Null user or password not supported in THIN driver + +ORA-17444=TTC Protocol version received from server not supported + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/65/60f4e41898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/65/60f4e41898af001c18c4935e001381da new file mode 100644 index 0000000..5aeeaaa Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/65/60f4e41898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/65/904af886fba3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/65/904af886fba3001c1027e59cc3e35e89 new file mode 100644 index 0000000..8670fbf --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/65/904af886fba3001c1027e59cc3e35e89 @@ -0,0 +1,32 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager.*; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + try { + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + Connection conn = DriverManager.getConnection(url.toString(), "dut", "dut"); + + System.out.println("Accs la base"); + } catch (SQLException e) { + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/66/1090bb2a01a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/66/1090bb2a01a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..855ff81 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/66/1090bb2a01a4001c1027e59cc3e35e89 @@ -0,0 +1,58 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + System.out.println("Requte: Envoye et reue"); + } catch (Exception ex){ + + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/66/70b8451698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/66/70b8451698af001c18c4935e001381da new file mode 100644 index 0000000..7682234 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/66/70b8451698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/66/c091672a03a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/66/c091672a03a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..5aa5376 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/66/c091672a03a4001c1027e59cc3e35e89 @@ -0,0 +1,69 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + resultat.toString(); + + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/00bf281a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/00bf281a98af001c18c4935e001381da new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/6099021a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/6099021a98af001c18c4935e001381da new file mode 100644 index 0000000..9376df9 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/6099021a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/b0f79fa84aaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/b0f79fa84aaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..3cbb592 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/b0f79fa84aaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,195 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion(pr).setVisible(true); + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + this.pr.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/d0bbaa1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/d0bbaa1698af001c18c4935e001381da new file mode 100644 index 0000000..2bbeb9a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/d0bbaa1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/f0571b1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/f0571b1798af001c18c4935e001381da new file mode 100644 index 0000000..c23afb1 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/67/f0571b1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/68/b0af281598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/68/b0af281598af001c18c4935e001381da new file mode 100644 index 0000000..404ae28 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/68/b0af281598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/68/e050080f85a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/68/e050080f85a9001c1d3abf97745a02da new file mode 100644 index 0000000..cd51c70 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/68/e050080f85a9001c1d3abf97745a02da @@ -0,0 +1,150 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentListener; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + +// conn.addWindowListener(new WindowListener(){ +// private void windowActivated(WindowEvent ev){ +// +// } +// }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/68/f0d3eea5c4a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/68/f0d3eea5c4a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..d2aecb5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/68/f0d3eea5c4a4001c1acc9f54b60f9b57 @@ -0,0 +1,49 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel(); + JLabel jlabelPort = new JLabel(); + JLabel jlabelBase = new JLabel(); + JLabel jlabelIdentifiant = new JLabel(); + JLabel jlabelMdp = new JLabel(); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/69/20218c56cca4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/69/20218c56cca4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..0fdb0af --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/69/20218c56cca4001c1acc9f54b60f9b57 @@ -0,0 +1,87 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche, FlowLayout.LEFT); + Panneau_Centre.add(Panneau_Centre_Droite, FlowLayout.RIGHT); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/69/a066da1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/69/a066da1b98af001c18c4935e001381da new file mode 100644 index 0000000..5eb08d3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/69/a066da1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/2046f91598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/2046f91598af001c18c4935e001381da new file mode 100644 index 0000000..5e1a9c2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/2046f91598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/5090fd1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/5090fd1998af001c18c4935e001381da new file mode 100644 index 0000000..3a73fd5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/5090fd1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/b0a7be1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/b0a7be1898af001c18c4935e001381da new file mode 100644 index 0000000..364d189 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/b0a7be1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/d0d286d9fca3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/d0d286d9fca3001c1027e59cc3e35e89 new file mode 100644 index 0000000..3aa36aa --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6a/d0d286d9fca3001c1027e59cc3e35e89 @@ -0,0 +1,39 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + Connection conn = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/00beabbff9a3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/00beabbff9a3001c1027e59cc3e35e89 new file mode 100644 index 0000000..bdf32b7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/00beabbff9a3001c1027e59cc3e35e89 @@ -0,0 +1,5 @@ +package fr.blankoworld.connexionBDD; + +public class Principal { + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/10dffdae04a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/10dffdae04a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..cdda04d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/10dffdae04a4001c1027e59cc3e35e89 @@ -0,0 +1,74 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/30cb799806a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/30cb799806a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..fbf0fd7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/30cb799806a4001c1027e59cc3e35e89 @@ -0,0 +1,94 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes +// int i = rsmd.getColumnCount(); +// System.out.println("Nombre de colonne: " + i); + + // Donner les enttes de colonnes +// for(int j = 1; j < i; j++){ +// System.out.print(rsmd.getColumnName(j) + " "); +// } + + System.out.println(rsmd.getColumnName(1) + " " rsmd.getColumnName(2)); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/40cd2f894caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/40cd2f894caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..32e9db0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6b/40cd2f894caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + int jo; + jo = JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + if(jo == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton") + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/1064cc8d81a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/1064cc8d81a9001c1d3abf97745a02da new file mode 100644 index 0000000..98a8fb5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/1064cc8d81a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Importation de la fentre de Connexion +import Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + Connexion conn = new Connexion; + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/805b6bdc04a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/805b6bdc04a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..c50006b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/805b6bdc04a4001c1027e59cc3e35e89 @@ -0,0 +1,75 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM").toString()); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/c09c671a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/c09c671a98af001c18c4935e001381da new file mode 100644 index 0000000..6d03433 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/c09c671a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/d04b7b1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/d04b7b1a98af001c18c4935e001381da new file mode 100644 index 0000000..0c54e2c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/d04b7b1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/e004bd1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/e004bd1998af001c18c4935e001381da new file mode 100644 index 0000000..8108885 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6c/e004bd1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6d/20b75dd706af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6d/20b75dd706af001c14499bdcdfff58b3 new file mode 100644 index 0000000..faf3fd1 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6d/20b75dd706af001c14499bdcdfff58b3 @@ -0,0 +1,13 @@ +package fr.blankoworld.ihm; + +import javax.swing.JButton; +import javax.swing.JFrame; + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + public IHMRequete(IHMPrincipale pr){ + JButton jOk = new JButton("Ok"); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6d/c0f6581a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6d/c0f6581a98af001c18c4935e001381da new file mode 100644 index 0000000..4687a5f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6d/c0f6581a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/506d984cc6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/506d984cc6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..5b679c6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/506d984cc6a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + + JOptionPane.showInputDialog("Couillon", "La valeur du couillon", "Paramtre 2", "hi hi hi"); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/a0360a9b83a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/a0360a9b83a9001c1d3abf97745a02da new file mode 100644 index 0000000..d357568 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/a0360a9b83a9001c1d3abf97745a02da @@ -0,0 +1,128 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + } + + private void annuler(){ + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/b05c8c9e7ca9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/b05c8c9e7ca9001c1d3abf97745a02da new file mode 100644 index 0000000..d532a90 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/b05c8c9e7ca9001c1d3abf97745a02da @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + + // Donner un titre notre panneau + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/d04fb35dc4a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/d04fb35dc4a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..ad6d846 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6e/d04fb35dc4a4001c1acc9f54b60f9b57 @@ -0,0 +1,49 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel(); + JLabel jlabelPort = new JLabel(); + JLabel jlabelBase = new JLabel(); + JLabel jlabelIdentifiant = new JLabel(); + JLabel jlabelMdp = new JLabel(); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout); + + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6f/f095f31498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6f/f095f31498af001c18c4935e001381da new file mode 100644 index 0000000..0a28781 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/6f/f095f31498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7/008def1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7/008def1698af001c18c4935e001381da new file mode 100644 index 0000000..e565837 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7/008def1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7/1084eb1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7/1084eb1898af001c18c4935e001381da new file mode 100644 index 0000000..3508215 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7/1084eb1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7/c0089b4a7ea9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7/c0089b4a7ea9001c1d3abf97745a02da new file mode 100644 index 0000000..e0f7dba --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7/c0089b4a7ea9001c1d3abf97745a02da @@ -0,0 +1,80 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + MenuPrincipal.setBorder(new BevelBorder(BevelBorder.RAISED)); + + + + + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/70/50c913ce49aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/70/50c913ce49aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..6dde582 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/70/50c913ce49aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,189 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/70/605ac90b97af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/70/605ac90b97af001c18c4935e001381da new file mode 100644 index 0000000..d5950c9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/70/605ac90b97af001c18c4935e001381da @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.GridLayout; +import java.awt.Insets; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextPane; + + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + // Creation de la zone de texte + private JTextPane panneauTexte; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMRequete().setVisible(true); + } + + public IHMRequete(){ + // Creation d'une etiquette + JLabel jRequete = new JLabel("Entrez votre requete : "); + + // Creation des boutons + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Annuler"); + + // Creation de la zone de texte + panneauTexte = new JTextPane(); + panneauTexte.setCaretPosition(0); + panneauTexte.setMargin(new Insets(5,5,5,5)); + JScrollPane zoneTexteRequete = new JScrollPane(panneauTexte); + zoneTexteRequete.setPreferredSize(new Dimension(200, 130)); + + // Creation des panneaux bas et centre + JPanel Panneau_Bas = new JPanel(); + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(2,1)); + + // Ajout des boutons a chacun des panneaux + Panneau_Centre.add(jRequete); + Panneau_Centre.add(zoneTexteRequete); + + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Gestionnaire de contenus + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.NORTH); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(400,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Requete"); + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/70/c01a857a7aa9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/70/c01a857a7aa9001c1d3abf97745a02da new file mode 100644 index 0000000..517c416 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/70/c01a857a7aa9001c1d3abf97745a02da @@ -0,0 +1,93 @@ +package fr.blankoworld.ihm; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/71/1005151998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/71/1005151998af001c18c4935e001381da new file mode 100644 index 0000000..ca9eee1 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/71/1005151998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/71/70e5e71998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/71/70e5e71998af001c18c4935e001381da new file mode 100644 index 0000000..7558e54 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/71/70e5e71998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/71/80cb2db8fba3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/71/80cb2db8fba3001c1027e59cc3e35e89 new file mode 100644 index 0000000..bb56ef7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/71/80cb2db8fba3001c1027e59cc3e35e89 @@ -0,0 +1,32 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + try { + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + Connection conn = DriverManager.getConnection(url, "dut", "dut"); + + System.out.println("Accs la base"); + } catch (SQLException e) { + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/72/10bfe9a1c7a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/72/10bfe9a1c7a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..90381b4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/72/10bfe9a1c7a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + JOptionPane.showOptionDialog(null, "Message d'essai", "Configuration", 1, 1, , jlabelBase, "Valeur initiale"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/72/e0f6e81998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/72/e0f6e81998af001c18c4935e001381da new file mode 100644 index 0000000..e880edd Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/72/e0f6e81998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/73/5080fa6f83a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/73/5080fa6f83a9001c1d3abf97745a02da new file mode 100644 index 0000000..80fe724 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/73/5080fa6f83a9001c1d3abf97745a02da @@ -0,0 +1,120 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + + } + }); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/74/b05ae235cda4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/74/b05ae235cda4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..d8098b7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/74/b05ae235cda4001c1acc9f54b60f9b57 @@ -0,0 +1,97 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new FlowLayout()) + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/74/b0dbbb1308af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/74/b0dbbb1308af001c14499bdcdfff58b3 new file mode 100644 index 0000000..0a26bef --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/74/b0dbbb1308af001c14499bdcdfff58b3 @@ -0,0 +1,159 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + + DatabaseMetaData metaData; + List listTables = new List(10); + ... + metaData = conn.getMetaData(); + String[] types = { "TABLE", "VIEW" }; + ResultSet rs = metaData.getTables( null, null, "%", types ); + String nomTable; + while ( rs.next() ) { + nomTable = rs.getString( 3 ); + listeTables.add( nomTable ); + } + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/1097431e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/1097431e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..7c2d2f3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/1097431e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Interner Fehler + +ORA-17002=E/A-Exception + +ORA-17003=Ung\u00fcltiger Spaltenindex + +ORA-17004=Ung\u00fcltiger Spaltentyp + +ORA-17005=Nicht unterst\u00fctzter Spaltentyp + +ORA-17006=Ung\u00fcltiger Spaltenname + +ORA-17007=Ung\u00fcltige dynamische Spalte + +ORA-17008=Getrennte Verbindung + +ORA-17009=Geschlossene Anweisung + +ORA-17010=Geschlossene Ergebnismenge + +ORA-17011=Ersch\u00f6pfte Ergebnismenge + +ORA-17012=Konflikt bei Parametertyp + +ORA-17014=ResultSet.next wurde nicht aufgerufen + +ORA-17015=Anweisung wurde abgebrochen + +ORA-17016=Zeit\u00fcberschreitung bei Anweisung + +ORA-17017=Cursor schon initialisiert + +ORA-17018=Ung\u00fcltiger Cursor + +ORA-17019=Nur eine Abfrage kann beschrieben werden + +ORA-17020=Ung\u00fcltiger Abruf von Zeilen im voraus + +ORA-17021=Fehlende Defines + +ORA-17022=Fehlende Defines auf Index + +ORA-17023=Nicht unterst\u00fctzte Funktion + +ORA-17024=Keine Daten gelesen + +ORA-17025=Fehler in defines.isNull () + +ORA-17026=Numerischer \u00dcberlauf + +ORA-17027=Stream wurde schon geschlossen + +ORA-17028=Neue Defines sind erst m\u00f6glich, wenn aktuelle ResultSet geschlossen ist + +ORA-17029=setReadOnly: Schreibgesch\u00fctzte Verbindungen nicht unterst\u00fctzt + +ORA-17030=READ_COMMITTED und SERIALIZABLE sind die einzig g\u00fcltigen Transaktionsebenen + +ORA-17031=setAutoClose: Unterst\u00fctzt nur Auto-Close-Modus Ein + +ORA-17032=Abruf von Zeilen im voraus kann nicht auf Null festgelegt werden + +ORA-17033=SQL92-Zeichenfolge in falschem Format in Position + +ORA-17034=Nicht unterst\u00fctztes SQL92-Token in Position + +ORA-17035=Zeichensatz nicht unterst\u00fctzt !! + +ORA-17036=Exception in OracleNumber + +ORA-17037=Konvertierung zwischen UTF8 und UCS2 nicht erfolgreich + +ORA-17038=Byte-Array nicht lang genug + +ORA-17039=Char-Array nicht lang genug + +ORA-17040=Unterprotokoll mu\u00df in Verbindungs-URL angegeben werden + +ORA-17041=Fehlender IN- oder OUT-Parameter auf Index: + +ORA-17042=Ung\u00fcltiger Stapelwert + +ORA-17043=Ung\u00fcltige maximale Stream-Gr\u00f6\u00dfe + +ORA-17044=Interner Fehler: Daten-Array nicht zugewiesen + +ORA-17045=Interner Fehler: Versuch, auf Bindewerte \u00fcber den Stapelwert hinaus zuzugreifen + +ORA-17046=Interner Fehler: Ung\u00fcltiger Index f\u00fcr Datenzugriff + +ORA-17047=Fehler bei Analyse von Typ-Deskriptor + +ORA-17048=Undefinierter Typ + +ORA-17049=Inkonsistente Java- und SQL-Objekttypen + +ORA-17050=Kein derartiges Element in Vektor + +ORA-17051=Diese API kann nicht f\u00fcr Nicht-UDT-Typen benutzt werden + +ORA-17052=Diese Ref ist nicht g\u00fcltig + +ORA-17053=Die Gr\u00f6\u00dfe ist nicht g\u00fcltig + +ORA-17054=Der LOB-Positionsanzeiger ist nicht g\u00fcltig + +ORA-17055=Ung\u00fcltiges Zeichen aufgetreten in + +ORA-17056=Nicht unterst\u00fctzter Zeichensatz + +ORA-17057=Geschlossenes LOB + +ORA-17058=Interner Fehler: Ung\u00fcltige NLS-Konvertierungsrate + +ORA-17059=Konvertierung zu interner Darstellung nicht erfolgreich + +ORA-17060=Deskriptor konnte nicht erstellt werden + +ORA-17061=Fehlender Deskriptor + +ORA-17062=Ref-Cursor ist ung\u00fcltig + +ORA-17063=Nicht in einer Transaktion + +ORA-17064=Ung\u00fcltige Syntax oder Datenbankname ist null + +ORA-17065=Konvertierungsklasse ist null + +ORA-17066=Zugriffsebenen-spezifische Implementierung erforderlich + +ORA-17067=Ung\u00fcltiger Oracle-URL angegeben + +ORA-17068=Ung\u00fcltige Argumente in Aufruf + +ORA-17069=Expliziten XA-Aufruf verwenden + +ORA-17070=Datengr\u00f6\u00dfe gr\u00f6\u00dfer als max. Gr\u00f6\u00dfe f\u00fcr diesen Typ + +ORA-17071=Maximaler VARRAY-Grenzwert \u00fcberschritten + +ORA-17072=Zu gro\u00dfer Wert f\u00fcr Spalte eingef\u00fcgt + +ORA-17073=Logisches Handle nicht mehr g\u00fcltig + +ORA-17074=Ung\u00fcltiges Namensmuster + +ORA-17075=Ung\u00fcltiger Vorgang bei Nur-Weiterleiten-Ergebnismenge + +ORA-17076=Ung\u00fcltiger Vorgang bei schreibgesch\u00fctzter Ergebnismenge + +ORA-17077=REF-Wert konnte nicht festgelegt werden + +ORA-17078=Vorgang kann nicht durchgef\u00fchrt werden, da schon Verbindungen ge\u00f6ffnet sind + +ORA-17079=Benutzer-ID-Daten stimmen nicht mit bestehenden ID-Daten \u00fcberein + +ORA-17080=Ung\u00fcltiger Stapelbefehl + +ORA-17081=Fehler bei Stapelverarbeitung aufgetreten + +ORA-17082=Keine aktuelle Zeile + +ORA-17083=Nicht auf der Einf\u00fcgenzeile + +ORA-17084=Auf der Einf\u00fcgenzeile aufgerufen + +ORA-17085=Wertkonflikte treten auf + +ORA-17086=Undefinierter Spaltenwert auf Einf\u00fcgenzeile + +ORA-17087=Leistungshinweis ignoriert: setFetchDirection() + +ORA-17088=Nicht unterst\u00fctzte Syntax f\u00fcr angeforderten Ergebnismengentyp und Ebene des gleichzeitigen Zugriffs +ORA-17089=Interner Fehler + +ORA-17090=Vorgang nicht zul\u00e4ssig + +ORA-17091=Ergebnismenge mit angefordertem Typ und/oder angeforderter Ebene des gleichzeitigen Zugriffs kann nicht erstellt werden + +ORA-17092=JDBC-Anweisungen k\u00f6nnen nicht erstellt oder am Ende der Aufrufverarbeitung ausgef\u00fchrt werden. + +ORA-17093=OCI-Vorgang hat OCI_SUCCESS_WITH_INFO zur\u00fcckgegeben + +ORA-17094=Nicht \u00fcbereinstimmende Objekttyp-Version + +ORA-17095=Gr\u00f6\u00dfe von Anweisungs-Cache wurde nicht festgelegt + +ORA-17096=Anweisungs-Caching kann f\u00fcr diese logische Verbindung nicht aktiviert werden. + +ORA-17097=Ung\u00fcltiger PL/SQL-Indextabellen-Elementtyp + +ORA-17098=Ung\u00fcltiger leerer LOB-Vorgang + +ORA-17099=Ung\u00fcltige Array-L\u00e4nge bei PL/SQL-Indextabelle + +ORA-17100=Ung\u00fcltiges Java-Datenbankobjekt + +ORA-17101=Ung\u00fcltige Attribute in Objekt von OCI-Verbindungs-Pool + +ORA-17102=Bfile ist schreibgesch\u00fctzt + +ORA-17103=Ung\u00fcltige Verbindungsart zur R\u00fcckgabe \u00fcber getConnection. Verwenden Sie stattdessen getJavaSqlConnection + +ORA-17104=SQL-Anweisung zur Ausf\u00fchrung darf nicht leer oder null sein + +ORA-17105=Zeitzone f\u00fcr Verbindungs-Session nicht festgelegt + +ORA-17106=Ung\u00fcltige Konfiguration von Verbindungs-Pool von JDBC-OCI-Treiber angegeben + +ORA-17107=Ung\u00fcltiger Proxy-Typ angegeben + +ORA-17108=Keine max. L\u00e4nge in defineColumnType angegeben + +ORA-17109=Java-Standardzeichen-Codierung nicht gefunden + +ORA-17110=Ausf\u00fchrung mit Warnung abgeschlossen + +ORA-17111=Ung\u00fcltige TTL-Zeit\u00fcberschreitung bei Verbindungs-Cache angegeben + +ORA-17112=Ung\u00fcltiges Thread-Intervall angegeben + +ORA-17113=Wert von Thread-Intervall ist gr\u00f6\u00dfer als Cache-Zeit\u00fcberschreitungswert + +ORA-17114=Lokales Transaktions-Commit konnte in einer globalen Transaktion nicht benutzt werden + +ORA-17115=Lokales Transaktions-Rollback konnte in einer globalen Transaktion nicht benutzt werden + +ORA-17116=Auto-Commit konnte in einer aktiven globalen Transaktion nicht eingeschaltet werden + +ORA-17117=Savepoint konnte in einer aktiven globalen Transaktion nicht gesetzt werden + +ORA-17118=ID f\u00fcr einen benannten Savepoint + +ORA-17119=Name f\u00fcr einen unbenannten Savepoint konnte nicht abgerufen werden + +ORA-17120=Ein Savepoint konnte bei eingeschaltetem Auto-Commit nicht gesetzt werden. + +ORA-17121=Rollback zu einem Savepoint bei eingeschaltetem Auto-Commit nicht m\u00f6glich + +ORA-17122=Rollback zu einem lokalen Txn-Savepoint in einer globalen Transaktion nicht m\u00f6glich + +ORA-17123=Ung\u00fcltige Gr\u00f6\u00dfe von Anweisungs-Cache angegeben + +ORA-17124=Ung\u00fcltige Inaktivit\u00e4ts-Zeit\u00fcberschreitung f\u00fcr Verbindungs-Cache angegeben + +ORA-17200=Zeichenfolge f\u00fcr \u00d6ffnen von XA kann nicht richtig von Java in C konvertiert werden + +ORA-17201=Zeichenfolge f\u00fcr Schlie\u00dfen von XA kann nicht richtig von Java in C konvertiert werden + +ORA-17202=RM-Name kann nicht richtig von Java in C konvertiert werden + +ORA-17203=Summierungs-Pointer-Typ konnte nicht in jlong konvertiert werden + +ORA-17204=Eingabe-Array zu kurz zur Aufnahme von OCI-Handles + +ORA-17205=OCISvcCtx-Handle konnte nicht aus C-XA mit xaoSvcCtx abgerufen werden + +ORA-17206=OCIEnv-Handle konnte nicht aus C-XA mit xaoEnv abgerufen werden + +ORA-17207=Das Attribut tnsEntry wurde in DataSource nicht festgelegt + +ORA-17213=C-XA hat XAER_RMERR w\u00e4hrend xa_open zur\u00fcckgegeben + +ORA-17215=C-XA hat XAER_INVAL w\u00e4hrend xa_open zur\u00fcckgegeben + +ORA-17216=C-XA hat XAER_PROTO w\u00e4hrend xa_open zur\u00fcckgegeben + +ORA-17233=C-XA hat XAER_RMERR w\u00e4hrend xa_close zur\u00fcckgegeben + +ORA-17235=C-XA hat XAER_INVAL w\u00e4hrend xa_close zur\u00fcckgegeben + +ORA-17236=C-XA hat XAER_PROTO w\u00e4hrend xa_close zur\u00fcckgegeben + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokollverletzung + +ORA-17402=Nur eine RPA-Meldung wird erwartet + +ORA-17403=Nur eine RXH-Meldung wird erwartet + +ORA-17404=Mehr RXDs empfangen als erwartet + +ORA-17405=UAC-L\u00e4nge ist nicht null + +ORA-17406=Maximale Pufferl\u00e4nge wird \u00fcberschritten + +ORA-17407=Ung\u00fcltige Typdarstellung(setRep) + +ORA-17408=Ung\u00fcltige Typdarstellung(getRep) + +ORA-17409=Ung\u00fcltige Pufferl\u00e4nge + +ORA-17410=Keine weiteren Daten aus Socket zu lesen + +ORA-17411=Datentypdarstellungen stimmen nicht \u00fcberein + +ORA-17412=Typl\u00e4nge gr\u00f6\u00dfer als H\u00f6chstwert + +ORA-17413=Schl\u00fcsselgr\u00f6\u00dfe wird \u00fcberschritten + +ORA-17414=Nicht ausreichende Puffergr\u00f6\u00dfe zum Speichern von Spaltennamen + +ORA-17415=Dieser Typ wurde nicht verarbeitet + +ORA-17416=FATAL + +ORA-17417=NLS-Problem, Spaltennamen konnten nicht entschl\u00fcsselt werden + +ORA-17418=Fehler bei Feldl\u00e4nge von interner Struktur + +ORA-17419=Ung\u00fcltige Anzahl von Spalten zur\u00fcckgegeben + +ORA-17420=Oracle-Version nicht definiert + +ORA-17421=Typen oder Verbindung nicht definiert + +ORA-17422=Ung\u00fcltige Klasse in Factory + +ORA-17423=PLSQL-Block ohne Definition von IOV benutzt + +ORA-17424=Anderer Marshaling-Vorgang wird versucht + +ORA-17425=Stream wird in PLSQL-Block zur\u00fcckgegeben + +ORA-17426=Sowohl IN- als auch OUT-Bindevorg\u00e4nge sind NULL + +ORA-17427=Nicht initialisierter OAC benutzt + +ORA-17428=Anmeldung mu\u00df nach Verbindung aufgerufen werden + +ORA-17429=Mindestens Verbindung zum Server mu\u00df hergestellt sein + +ORA-17430=Anmeldung beim Server mu\u00df erfolgt sein + +ORA-17431=Zu analysierende SQL-Anweisung ist null + +ORA-17432=Ung\u00fcltige Optionen in all7 + +ORA-17433=Ung\u00fcltige Argumente in Aufruf + +ORA-17434=Nicht in Streaming-Modus + +ORA-17435=Ung\u00fcltige Anzahl von in_out_binds in IOV + +ORA-17436=Ung\u00fcltige Anzahl von Out-Bindevorg\u00e4ngen + +ORA-17437=Fehler in IN/OUT-Argument(en) von PLSQL-Block + +ORA-17438=Intern - Unerwarteter Wert + +ORA-17439=Ung\u00fcltiger SQL-Typ + +ORA-17440=DBItem/DBType ist null + +ORA-17441=Oracle-Version nicht unterst\u00fctzt. Minimale unterst\u00fctzte Version ist 7.2.3. + +ORA-17442=Wert von Ref-Cursor ist ung\u00fcltig + +ORA-17443=Keine Benutzer- oder Kennwortangabe in THIN-Treiber nicht unterst\u00fctzt + +ORA-17444=Vom Server empfangene TTC-Protokollversion nicht unterst\u00fctzt + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/2083706581a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/2083706581a9001c1d3abf97745a02da new file mode 100644 index 0000000..f891243 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/2083706581a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Importation de la fentre de Connexion +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + new Connexion(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/404a2f1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/404a2f1698af001c18c4935e001381da new file mode 100644 index 0000000..4ae5c99 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/404a2f1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/90822326cba4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/90822326cba4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..ee0c4b7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/90822326cba4001c1acc9f54b60f9b57 @@ -0,0 +1,83 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new BorderLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + //Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setLayout( new FlowLayout()); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/e071191998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/e071191998af001c18c4935e001381da new file mode 100644 index 0000000..251dc3b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/e071191998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/f0652d2ffda3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/f0652d2ffda3001c1027e59cc3e35e89 new file mode 100644 index 0000000..e268117 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/75/f0652d2ffda3001c1027e59cc3e35e89 @@ -0,0 +1,43 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection conn = new Connection(); + conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/20e7ebd905a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/20e7ebd905a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..fcac7c9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/20e7ebd905a4001c1027e59cc3e35e89 @@ -0,0 +1,86 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + int i = rsmd.getColumnCount(); + + System.out.println("Nombre de colonne: " + i); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/30367c1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/30367c1a98af001c18c4935e001381da new file mode 100644 index 0000000..a994dcf Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/30367c1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/4071671698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/4071671698af001c18c4935e001381da new file mode 100644 index 0000000..5c273c3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/4071671698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/503bc11498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/503bc11498af001c18c4935e001381da new file mode 100644 index 0000000..a18200c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/503bc11498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/b03b1541c7a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/b03b1541c7a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..4d74a71 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/76/b03b1541c7a4001c1acc9f54b60f9b57 @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/20a08d34cda4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/20a08d34cda4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..00b3840 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/20a08d34cda4001c1acc9f54b60f9b57 @@ -0,0 +1,96 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/307f05cac6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/307f05cac6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..d239fb6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/307f05cac6a4001c1acc9f54b60f9b57 @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new GridLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/30ba663f00af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/30ba663f00af001c14499bdcdfff58b3 new file mode 100644 index 0000000..fc04719 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/30ba663f00af001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n" + connection.getCatalog(); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage() + this.getPassword(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/d049d16107af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/d049d16107af001c14499bdcdfff58b3 new file mode 100644 index 0000000..46bfc3b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/d049d16107af001c14499bdcdfff58b3 @@ -0,0 +1,236 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setTabSize(65); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/f06602ac08af001c1040fa160adcae78 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/f06602ac08af001c1040fa160adcae78 new file mode 100644 index 0000000..296e361 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/77/f06602ac08af001c1040fa160adcae78 @@ -0,0 +1,21 @@ +package fr.blankoworld.ihm; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JTextArea; + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + public IHMRequete(IHMPrincipale pr){ + + // Creation des boutons + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Annuler"); + + // Creation de la zone de texte + JTextArea jt + jt.setResizable(false)) + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/1038bb1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/1038bb1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..e080447 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/1038bb1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430 + +ORA-17002=\u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u0432\u043e\u0434\u0430/\u0432\u044b\u0432\u043e\u0434\u0430 + +ORA-17003=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17004=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17005=\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u0442\u0438\u043f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17006=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0438\u043c\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17007=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 + +ORA-17008=\u0417\u0430\u043a\u0440\u044b\u0442\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 + +ORA-17009=\u0417\u0430\u043a\u0440\u044b\u0442\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 + +ORA-17010=\u0417\u0430\u043a\u0440\u044b\u0442\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17011=\u0418\u0441\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17012=\u041a\u043e\u043d\u0444\u043b\u0438\u043a\u0442 \u0442\u0438\u043f\u043e\u0432 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 + +ORA-17014=\u041d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d \u0432\u044b\u0437\u043e\u0432 ResultSet.next + +ORA-17015=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0431\u044b\u043b\u0430 \u043e\u0442\u043c\u0435\u043d\u0435\u043d\u0430 + +ORA-17016=\u0412\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0438\u0441\u0442\u0435\u043a\u043b\u043e + +ORA-17017=\u041a\u0443\u0440\u0441\u043e\u0440 \u0443\u0436\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d + +ORA-17018=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c + +ORA-17019=\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043e\u0447\u0435\u0440\u0435\u0434\u0438 + +ORA-17020=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u0443\u043f\u0440\u0435\u0436\u0434\u0430\u044e\u0449\u0430\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430 \u0441\u0442\u0440\u043e\u043a\u0438 + +ORA-17021=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f + +ORA-17022=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0432 \u0438\u043d\u0434\u0435\u043a\u0441\u0435 + +ORA-17023=\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f + +ORA-17024=\u0414\u0430\u043d\u043d\u044b\u0435 \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u043d\u044b + +ORA-17025=\u041e\u0448\u0438\u0431\u043a\u0430 \u0432 defines.isNull () + +ORA-17026=\u041f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 + +ORA-17027=\u041f\u043e\u0442\u043e\u043a \u0443\u0436\u0435 \u0437\u0430\u043a\u0440\u044b\u0442 + +ORA-17028=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f, \u043f\u043e\u043a\u0430 \u0437\u0430\u043a\u0440\u044b\u0442 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17029=setReadOnly: \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \"\u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f\" \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f + +ORA-17030=\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0443\u0440\u043e\u0432\u043d\u0438 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 READ_COMMITTED \u0438 SERIALIZABLE + +ORA-17031=setAutoClose: \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0436\u0438\u043c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f + +ORA-17032=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0432\u044b\u0431\u043e\u0440\u043a\u0443 \u0441\u0442\u0440\u043e\u043a\u0438 \u043d\u0430 \u043d\u043e\u043b\u044c + +ORA-17033=\u0421\u0442\u0440\u043e\u043a\u0430 SQL92 \u043d\u0435\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0432 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 + +ORA-17034=\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u043c\u0430\u0440\u043a\u0435\u0440 SQL92 \u0432 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 + +ORA-17035=\u041d\u0430\u0431\u043e\u0440 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f !! + +ORA-17036=\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432 OracleNumber + +ORA-17037=\u0421\u0431\u043e\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 UTF8 \u0438 UCS2 + +ORA-17038=\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0431\u0430\u0439\u0442\u043e\u0432 + +ORA-17039=\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 char + +ORA-17040=\u0412 URL \u0434\u043b\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u043d \u0441\u0443\u0431\u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b + +ORA-17041=\u0412 \u0438\u043d\u0434\u0435\u043a\u0441\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 IN \u0438\u043b\u0438 OUT: + +ORA-17042=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0430\u043a\u0435\u0442\u0430 + +ORA-17043=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u043e\u0442\u043e\u043a\u0430 + +ORA-17044=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043c\u0430\u0441\u0441\u0438\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d + +ORA-17045=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c \u0432\u043d\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u0430\u043a\u0435\u0442\u0430 + +ORA-17046=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0434\u0430\u043d\u043d\u044b\u043c + +ORA-17047=\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u0440\u0430\u0437\u0431\u043e\u0440\u0435 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430 \u0442\u0438\u043f\u0430 + +ORA-17048=\u041d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0442\u0438\u043f + +ORA-17049=\u041d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u0435 \u0442\u0438\u043f\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 java \u0438 sql + +ORA-17050=\u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u0430\u043a\u043e\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 + +ORA-17051=\u0414\u0430\u043d\u043d\u044b\u0439 API \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0442\u0438\u043f\u043e\u0432, \u043d\u0435 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0445 \u043a UDT + +ORA-17052=\u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u0430 + +ORA-17053=\u0414\u0430\u043d\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c + +ORA-17054=\u0414\u0430\u043d\u043d\u044b\u0439 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f LOB \u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u0435\u043d + +ORA-17055=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0441\u0438\u043c\u0432\u043e\u043b \u0432 + +ORA-17056=\u041d\u0435\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 + +ORA-17057=\u0417\u0430\u043a\u0440\u044b\u0442\u044b\u0439 LOB + +ORA-17058=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f NLS + +ORA-17059=\u0421\u0431\u043e\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 + +ORA-17060=\u0421\u0431\u043e\u0439 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430 + +ORA-17061=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440 + +ORA-17062=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c Ref + +ORA-17063=\u041d\u0435 \u0432 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17064=\u0421\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u0438\u043b\u0438 \u043f\u0443\u0441\u0442\u043e\u0435 \u0438\u043c\u044f \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 + +ORA-17065=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u043a\u043b\u0430\u0441\u0441 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f + +ORA-17066=\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0443\u0440\u043e\u0432\u043d\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 + +ORA-17067=\u0417\u0430\u0434\u0430\u043d \u043d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 URL Oracle + +ORA-17068=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439(\u0435) \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442(\u044b) \u0432 \u0432\u044b\u0437\u043e\u0432\u0435 + +ORA-17069=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u044f\u0432\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432 XA + +ORA-17070=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d \u0440\u0430\u0437\u043c\u0435\u0440 \u0434\u0430\u043d\u043d\u044b\u0445, \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0442\u0438\u043f\u0430 + +ORA-17071=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 VARRAY + +ORA-17072=\u0412\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0434\u043b\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 + +ORA-17073=\u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u0431\u043e\u043b\u0435\u0435 \u043d\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u0435\u043d + +ORA-17074=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0448\u0430\u0431\u043b\u043e\u043d \u0438\u043c\u0435\u043d\u0438 + +ORA-17075=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17076=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0433\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f \u043d\u0430\u0431\u043e\u0440\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17077=\u0421\u0431\u043e\u0439 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f REF + +ORA-17078=\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0443\u0436\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u044b + +ORA-17079=\u0420\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u0430\u043c + +ORA-17080=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043f\u0430\u043a\u0435\u0442\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 + +ORA-17081=\u043e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u043f\u0430\u043a\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 + +ORA-17082=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 + +ORA-17083=\u041d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 + +ORA-17084=\u041e\u0431\u0440\u0430\u0442\u0438\u0432\u0448\u0438\u0439\u0441\u044f \u043a \u0441\u0442\u0440\u043e\u043a\u0435 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 + +ORA-17085=\u0412\u043e\u0437\u043d\u0438\u043a \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 + +ORA-17086=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 + +ORA-17087=\u041f\u0440\u043e\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043e\u0432\u0435\u0442 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438: setFetchDirection() + +ORA-17088=\u041d\u0435\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u0434\u043b\u044f \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u043d\u0430\u0431\u043e\u0440\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0438 \u0443\u0440\u043e\u0432\u043d\u044f \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c\u0430 +ORA-17089=\u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430 + +ORA-17090=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f + +ORA-17091=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0441 \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u044b\u043c \u0442\u0438\u043f\u043e\u043c \u0438/\u0438\u043b\u0438 \u0443\u0440\u043e\u0432\u043d\u0435\u043c \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c\u0430 + +ORA-17092=\u0412 \u043a\u043e\u043d\u0446\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u044b\u0437\u043e\u0432\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 JDBC \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e + +ORA-17093=\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u044f OCI \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b\u0430 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u041d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0442\u0438\u043f\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 + +ORA-17095=\u041d\u0435 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u0440\u0430\u0437\u043c\u0435\u0440 \u043a\u044d\u0448\u0430 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 + +ORA-17096=\u0414\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0430\u043a\u0442\u0438\u0432\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432. + +ORA-17097=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 PL/SQL + +ORA-17098=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0441 \u043f\u0443\u0441\u0442\u044b\u043c LOB + +ORA-17099=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 PL/SQL + +ORA-17100=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 Java-\u043e\u0431\u044a\u0435\u043a\u0442 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 + +ORA-17101=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043f\u0443\u043b\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 OCI + +ORA-17102=\u0414\u0432\u043e\u0438\u0447\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432\u043d\u044b\u0439 \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f + +ORA-17103=\u043d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u0442\u0438\u043f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0430 \u0447\u0435\u0440\u0435\u0437 getConnection. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 getJavaSqlConnection + +ORA-17104=\u041f\u043e\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 SQL \u043d\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0443\u0441\u0442\u044b\u043c \u0438\u043b\u0438 \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c + +ORA-17105=\u043d\u0435 \u0437\u0430\u0434\u0430\u043d \u0447\u0430\u0441\u043e\u0432\u043e\u0439 \u043f\u043e\u044f\u0441 \u0441\u0435\u0430\u043d\u0441\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f + +ORA-17106=\u0437\u0430\u0434\u0430\u043d\u0430 \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043f\u0443\u043b\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 JDBC-OCI + +ORA-17107=\u0437\u0430\u0434\u0430\u043d \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u043c\u043e\u0434\u0443\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 + +ORA-17108=\u0412 defineColumnType \u043d\u0435 \u0437\u0430\u0434\u0430\u043d\u0430 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 + +ORA-17109=\u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0435 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 Java + +ORA-17110=\u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e \u0441 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435\u043c + +ORA-17111=\u0417\u0430\u0434\u0430\u043d\u043e \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0436\u0438\u0437\u043d\u0438 \u0434\u043b\u044f \u043a\u044d\u0448\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 + +ORA-17112=\u0417\u0430\u0434\u0430\u043d \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u0442\u043e\u043a\u0430\u043c\u0438 + +ORA-17113=\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430 \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u0442\u043e\u043a\u0430\u043c\u0438 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u043a\u044d\u0448\u0430 + +ORA-17114=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0438\u043a\u0441\u0430\u0446\u0438\u044e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17115=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u043a\u0430\u0442 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17116=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u0444\u0438\u043a\u0441\u0430\u0446\u0438\u044e \u0432 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17117=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u0442\u043e\u0447\u043a\u0443 \u043e\u0442\u043a\u0430\u0442\u0430 \u0432 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17118=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0434\u043b\u044f \u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u043e\u0442\u043a\u0430\u0442\u0430 + +ORA-17119=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u043c\u044f \u0434\u043b\u044f \u0431\u0435\u0437\u044b\u043c\u044f\u043d\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u043e\u0442\u043a\u0430\u0442\u0430 + +ORA-17120=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c \u0442\u043e\u0447\u043a\u0443 \u043e\u0442\u043a\u0430\u0442\u0430 \u0441\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0430\u0432\u0442\u043e\u0444\u0438\u043a\u0441\u0430\u0446\u0438\u0435\u0439 + +ORA-17121=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u0442\u043e\u0447\u043a\u0435 \u043e\u0442\u043a\u0430\u0442\u0430 \u0441\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0430\u0432\u0442\u043e\u0444\u0438\u043a\u0441\u0430\u0446\u0438\u0435\u0439 + +ORA-17122=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435 \u043e\u0442\u043a\u0430\u0442\u0430 txn \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17123=\u0417\u0430\u0434\u0430\u043d \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043a\u044d\u0448\u0430 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 + +ORA-17124=\u0417\u0430\u0434\u0430\u043d\u043e \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u0431\u0435\u0437\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043a\u044d\u0448\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 + +ORA-17200=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f XA \u0438\u0437 Java \u0432 C + +ORA-17201=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f XA \u0438\u0437 Java \u0432 C + +ORA-17202=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u043c\u044f RM \u0438\u0437 Java \u0432 C + +ORA-17203=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0438\u043f \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f \u0432 jlong + +ORA-17204=\u0412\u0445\u043e\u0434\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0438\u043c\u0435\u0435\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043c\u0430\u043b\u0443\u044e \u0434\u043b\u0438\u043d\u0443 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 OCI + +ORA-17205=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c OCISvcCtx \u0438\u0437 C-XA \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e xaoSvcCtx + +ORA-17206=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c OCIEnv \u0438\u0437 C-XA \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e xaoEnv + +ORA-17207=\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u043e tnsEntry \u043d\u0435 \u0437\u0430\u0434\u0430\u043d\u043e \u0432 DataSource + +ORA-17213=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_RMERR \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_open + +ORA-17215=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_INVAL \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_open + +ORA-17216=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_PROTO \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_open + +ORA-17233=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_RMERR \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_close + +ORA-17235=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_INVAL \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_close + +ORA-17236=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_PROTO \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u041d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 + +ORA-17402=\u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 RPA + +ORA-17403=\u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 RXH + +ORA-17404=\u0427\u0438\u0441\u043b\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 RXD \u0431\u043e\u043b\u044c\u0448\u0435 \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u043e\u0433\u043e + +ORA-17405=\u0414\u043b\u0438\u043d\u0430 UAC \u043d\u0435 \u0440\u0430\u0432\u043d\u0430 \u043d\u0443\u043b\u044e + +ORA-17406=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u0443\u0444\u0435\u0440\u0430 + +ORA-17407=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f Representation(setRep) + +ORA-17408=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f Representation(getRep) + +ORA-17409=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u0443\u0444\u0435\u0440\u0430 + +ORA-17410=\u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438\u0437 \u0441\u043e\u043a\u0435\u0442\u0430 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 + +ORA-17411=\u041d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0432\u043d\u0443\u0442\u0440. \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0438\u043f\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 + +ORA-17412=\u0414\u043b\u0438\u043d\u0430 \u0442\u0438\u043f\u0430 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c + +ORA-17413=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043a\u043b\u044e\u0447\u0430 + +ORA-17414=\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u0443\u0444\u0435\u0440\u0430 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438\u043c\u0435\u043d \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 + +ORA-17415=\u0414\u0430\u043d\u043d\u044b\u0439 \u0442\u0438\u043f \u043d\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d + +ORA-17416=FATAL + +ORA-17417=\u041e\u0448\u0438\u0431\u043a\u0430 NLS, \u0441\u0431\u043e\u0439 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043c\u0435\u043d \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 + +ORA-17418=\u041e\u0448\u0438\u0431\u043a\u0430 \u0434\u043b\u0438\u043d\u044b \u043f\u043e\u043b\u044f \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b + +ORA-17419=\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u043e \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 + +ORA-17420=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f Oracle + +ORA-17421=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0442\u0438\u043f\u044b \u0438\u043b\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 + +ORA-17422=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 \u0432 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0435 + +ORA-17423=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u043b\u043e\u043a\u0430 PLSQL \u0431\u0435\u0437 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f IOV + +ORA-17424=\u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0434\u0440\u0443\u0433\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043c\u0430\u0440\u0448\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 + +ORA-17425=\u0412\u043e\u0437\u0432\u0440\u0430\u0442 \u043f\u043e\u0442\u043e\u043a\u0430 \u0432 \u0431\u043b\u043e\u043a PLSQL + +ORA-17426=\u0421\u0432\u044f\u0437\u0438 IN \u0438 OUT \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b + +ORA-17427=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e OAC + +ORA-17428=\u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0437\u043e\u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 + +ORA-17429=\u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c + +ORA-17430=\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u043e\u0439\u0442\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 + +ORA-17431=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 SQL \u0434\u043b\u044f \u0440\u0430\u0437\u0431\u043e\u0440\u0430 \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 + +ORA-17432=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0432 all7 + +ORA-17433=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b \u0432 \u0432\u044b\u0437\u043e\u0432\u0435 + +ORA-17434=\u043d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043f\u043e\u0442\u043e\u043a\u043e\u0432\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 + +ORA-17435=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0447\u0438\u0441\u043b\u043e in_out_binds \u0432 IOV + +ORA-17436=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0441\u0432\u044f\u0437\u0435\u0439 + +ORA-17437=\u041e\u0448\u0438\u0431\u043a\u0430 \u0432 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0435(\u0430\u0445) IN/OUT \u0431\u043b\u043e\u043a\u0430 PLSQL + +ORA-17438=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f - \u043d\u0435\u043f\u0440\u0435\u0434\u0432\u0438\u0434\u0435\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 + +ORA-17439=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f SQL + +ORA-17440=DBItem/DBType \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d + +ORA-17441=\u042d\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f Oracle \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0435 \u043d\u0438\u0436\u0435 7.2.3. + +ORA-17442=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 Refcursor + +ORA-17443=\u0412 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0435 THIN \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0438 \u043f\u0430\u0440\u043e\u043b\u0438 + +ORA-17444=\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0430\u044f \u0438\u0437 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 TTC \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/10bff01998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/10bff01998af001c18c4935e001381da new file mode 100644 index 0000000..63a3022 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/10bff01998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/3081800504af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/3081800504af001c14499bdcdfff58b3 new file mode 100644 index 0000000..5d0ac69 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/3081800504af001c14499bdcdfff58b3 @@ -0,0 +1,225 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener((new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/808385884caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/808385884caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..022b5a6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/808385884caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,189 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + int jo; + jo = JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + if(jo == 0){ + System.out.print("Bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/808e5a289aaf001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/808e5a289aaf001c18c4935e001381da new file mode 100644 index 0000000..ee5f1ec --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/808e5a289aaf001c18c4935e001381da @@ -0,0 +1,7 @@ +#Fri Dec 21 08:52:52 CET 2007 +eclipse.preferences.version=1 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org;com; +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/f0a60b1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/f0a60b1498af001c18c4935e001381da new file mode 100644 index 0000000..c458bfa Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/78/f0a60b1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/3002d21b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/3002d21b98af001c18c4935e001381da new file mode 100644 index 0000000..e6569b0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/3002d21b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/30fda45604a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/30fda45604a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..3e02e8a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/30fda45604a4001c1027e59cc3e35e89 @@ -0,0 +1,61 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/b0ca579506a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/b0ca579506a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..0ec396c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/b0ca579506a4001c1027e59cc3e35e89 @@ -0,0 +1,92 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes +// int i = rsmd.getColumnCount(); +// System.out.println("Nombre de colonne: " + i); + + // Donner les enttes de colonnes +// for(int j = 1; j < i; j++){ +// System.out.print(rsmd.getColumnName(j) + " "); +// } + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/b0d07f967ca9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/b0d07f967ca9001c1d3abf97745a02da new file mode 100644 index 0000000..52c8350 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/79/b0d07f967ca9001c1d3abf97745a02da @@ -0,0 +1,60 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + + // Donner un titre notre panneau + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7a/102cbe1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7a/102cbe1b98af001c18c4935e001381da new file mode 100644 index 0000000..03ff4f0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7a/102cbe1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7a/308a741998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7a/308a741998af001c18c4935e001381da new file mode 100644 index 0000000..c3949dc Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7a/308a741998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7a/909fccfc4baa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7a/909fccfc4baa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..dee0e31 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7a/909fccfc4baa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + + JOptionPane.showMessageDialog(null, chaine.toString(), "Attention" ,JOptionPane.WARNING_MESSAGE); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7b/1071801998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7b/1071801998af001c18c4935e001381da new file mode 100644 index 0000000..0092510 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7b/1071801998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7b/407b821b9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7b/407b821b9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..f365cbf Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7b/407b821b9baf001c1c2eb8ec16be26ca differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7b/c0e5b9ed06af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7b/c0e5b9ed06af001c14499bdcdfff58b3 new file mode 100644 index 0000000..9563b5c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7b/c0e5b9ed06af001c14499bdcdfff58b3 @@ -0,0 +1,14 @@ +package fr.blankoworld.ihm; + +import javax.swing.JButton; +import javax.swing.JFrame; + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + public IHMRequete(IHMPrincipale pr){ + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Annuler"); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7c/10863e1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7c/10863e1998af001c18c4935e001381da new file mode 100644 index 0000000..244f6ad Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7c/10863e1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7c/506b181a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7c/506b181a98af001c18c4935e001381da new file mode 100644 index 0000000..3748c6d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7c/506b181a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7c/70edaf1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7c/70edaf1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..dee876d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7c/70edaf1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Erro Interno + +ORA-17002=Excep\u00e7\u00e3o de E/S + +ORA-17003=\u00cdndice de coluna inv\u00e1lido + +ORA-17004=Tipo de coluna inv\u00e1lido + +ORA-17005=Tipo de coluna n\u00e3o suportado + +ORA-17006=Nome de coluna inv\u00e1lido + +ORA-17007=Coluna din\u00e2mica inv\u00e1lida + +ORA-17008=Liga\u00e7\u00e3o Fechada + +ORA-17009=Instru\u00e7\u00e3o Fechada + +ORA-17010=Resultset Fechado + +ORA-17011=Resultset Esgotado + +ORA-17012=Conflito do Tipo de Par\u00e2metro + +ORA-17014=ResultSet.next n\u00e3o foi chamado + +ORA-17015=A instru\u00e7\u00e3o foi cancelada + +ORA-17016=O tempo de espera da instru\u00e7\u00e3o esgotou + +ORA-17017=O cursor j\u00e1 foi inicializado + +ORA-17018=Cursor inv\u00e1lido + +ORA-17019=S\u00f3 \u00e9 poss\u00edvel descrever uma consulta + +ORA-17020=Pr\u00e9-extrac\u00e7\u00e3o de linhas inv\u00e1lida + +ORA-17021=Falta defines + +ORA-17022=Falta defines no \u00edndice + +ORA-17023=Funcionalidade n\u00e3o suportada + +ORA-17024=N\u00e3o foram lidos dados + +ORA-17025=Erro em defines.isNull () + +ORA-17026=Excesso de Dados Num\u00e9ricos + +ORA-17027=O fluxo j\u00e1 foi fechado + +ORA-17028=N\u00e3o \u00e9 poss\u00edvel efectuar novos defines enquanto o ResultSet actual n\u00e3o estiver fechado + +ORA-17029=setReadOnly: Liga\u00e7\u00f5es s\u00f3 de leitura n\u00e3o s\u00e3o suportadas + +ORA-17030=READ_COMMITTED e SERIALIZABLE s\u00e3o os \u00fanicos n\u00edveis de transac\u00e7\u00e3o v\u00e1lidos + +ORA-17031=setAutoClose: Suportar apenas modo de fecho autom\u00e1tico activado + +ORA-17032=n\u00e3o \u00e9 poss\u00edvel definir a pr\u00e9-extrac\u00e7\u00e3o de linhas como zero + +ORA-17033=Cadeia de caracteres SQL92 incorrecta na posi\u00e7\u00e3o + +ORA-17034=S\u00edmbolo SQL92 n\u00e3o suportado na posi\u00e7\u00e3o + +ORA-17035=Conjunto de Caracteres N\u00e3o Suportado !! + +ORA-17036=excep\u00e7\u00e3o em OracleNumber + +ORA-17037=Falha na convers\u00e3o entre UTF8 e UCS2 + +ORA-17038=A matriz de bytes n\u00e3o \u00e9 suficientemente extensa + +ORA-17039=A matriz de caracteres n\u00e3o \u00e9 suficientemente extensa + +ORA-17040=\u00c9 necess\u00e1rio especificar o subprotocolo no URL de liga\u00e7\u00e3o + +ORA-17041=Faltam par\u00e2metros IN ou OUT no \u00edndice: + +ORA-17042=Valor Batch Inv\u00e1lido + +ORA-17043=Dimens\u00e3o m\u00e1xima do fluxo inv\u00e1lida + +ORA-17044=Erro interno: Matriz de dados n\u00e3o atribu\u00edda + +ORA-17045=Erro interno: Tentativa de acesso a valores de associa\u00e7\u00e3o fora do intervalo do valor batch + +ORA-17046=Erro interno: \u00cdndice inv\u00e1lido para acesso a dados + +ORA-17047=Erro na an\u00e1lise do Descritor de Tipos + +ORA-17048=Tipo N\u00e3o Definido + +ORA-17049=Tipos de objecto java e sql inconsistentes + +ORA-17050=n\u00e3o existe esse elemento no vector + +ORA-17051=N\u00e3o \u00e9 poss\u00edvel utilizar esta API em tipos n\u00e3o-UDT + +ORA-17052=Esta refer\u00eancia n\u00e3o \u00e9 v\u00e1lida + +ORA-17053=A dimens\u00e3o n\u00e3o \u00e9 v\u00e1lida + +ORA-17054=O identificador de local do LOB n\u00e3o \u00e9 v\u00e1lido + +ORA-17055=Foi encontrado um car\u00e1cter inv\u00e1lido em + +ORA-17056=Conjunto de caracteres n\u00e3o suportado + +ORA-17057=LOB Fechado + +ORA-17058=Erro Interno: Ratio de Convers\u00e3o de NLS inv\u00e1lido + +ORA-17059=Falha na convers\u00e3o para representa\u00e7\u00e3o interna + +ORA-17060=Falha na cria\u00e7\u00e3o do descritor + +ORA-17061=Falta descritor + +ORA-17062=O cursor da refer\u00eancia \u00e9 inv\u00e1lido + +ORA-17063=N\u00e3o numa transac\u00e7\u00e3o + +ORA-17064=Sintaxe Inv\u00e1lida ou o nome da Base de Dados \u00e9 nulo + +ORA-17065=A classe de convers\u00e3o \u00e9 nula + +ORA-17066=\u00c9 necess\u00e1ria uma implementa\u00e7\u00e3o espec\u00edfica por camada de acesso + +ORA-17067=Foi especificado um URL Oracle inv\u00e1lido + +ORA-17068=Argumento(s) inv\u00e1lido(s) na chamada + +ORA-17069=Utilize uma chamada XA espec\u00edfica + +ORA-17070=A dimens\u00e3o dos dados \u00e9 superior \u00e0 dimens\u00e3o m\u00e1xima para este tipo + +ORA-17071=Foi excedido o limite m\u00e1ximo de VARRAY + +ORA-17072=O valor inserido \u00e9 demasiado extenso para a coluna + +ORA-17073=O par\u00e2metro identificador l\u00f3gico j\u00e1 n\u00e3o \u00e9 v\u00e1lido + +ORA-17074=padr\u00e3o de nomes inv\u00e1lido + +ORA-17075=Opera\u00e7\u00e3o inv\u00e1lida para resultset s\u00f3 de encaminhamento + +ORA-17076=Opera\u00e7\u00e3o inv\u00e1lida para resultset s\u00f3 de leitura + +ORA-17077=Falha na defini\u00e7\u00e3o do valor REF + +ORA-17078=N\u00e3o \u00e9 poss\u00edvel efectuar a opera\u00e7\u00e3o porque as liga\u00e7\u00f5es j\u00e1 est\u00e3o abertas + +ORA-17079=As credenciais do utilizador n\u00e3o correspondem \u00e0s existentes + +ORA-17080=comando batch inv\u00e1lido + +ORA-17081=ocorr\u00eancia de erro durante a coloca\u00e7\u00e3o em batch + +ORA-17082=N\u00e3o existe linha actual + +ORA-17083=N\u00e3o se encontra na linha de inser\u00e7\u00e3o + +ORA-17084=Chamado na linha de inser\u00e7\u00e3o + +ORA-17085=Ocorr\u00eancia de conflitos de valores + +ORA-17086=Valor de coluna n\u00e3o definido na linha de inser\u00e7\u00e3o + +ORA-17087=Sugest\u00e3o de desempenho ignorada: setFetchDirection() + +ORA-17088=A sintaxe do tipo de resultset e do n\u00edvel de concorr\u00eancia pedidos n\u00e3o \u00e9 suportada +ORA-17089=erro interno + +ORA-17090=opera\u00e7\u00e3o n\u00e3o permitida + +ORA-17091=Incapaz de criar o resultset com o tipo e/ou o n\u00edvel de concorr\u00eancia pedido + +ORA-17092=N\u00e3o \u00e9 poss\u00edvel criar ou executar instru\u00e7\u00f5es de JDBC no final do processamento de chamadas + +ORA-17093=A opera\u00e7\u00e3o da OCI devolveu OCI_SUCCESS_WITH_INFO + +ORA-17094=N\u00e3o correspond\u00eancia da vers\u00e3o do tipo de objecto + +ORA-17095=A dimens\u00e3o da cache de instru\u00e7\u00f5es n\u00e3o foi definida + +ORA-17096=N\u00e3o \u00e9 poss\u00edvel activar a Coloca\u00e7\u00e3o de Instru\u00e7\u00f5es na Cache para esta liga\u00e7\u00e3o l\u00f3gica. + +ORA-17097=Tipo de elemento da Tabela de \u00cdndice de PL/SQL inv\u00e1lido + +ORA-17098=Opera\u00e7\u00e3o de lob vazio inv\u00e1lida + +ORA-17099=Comprimento da matriz da Tabela de \u00cdndice de PL/SQL inv\u00e1lido + +ORA-17100=Objecto Java da base de dados inv\u00e1lido + +ORA-17101=Propriedades inv\u00e1lidas de Objecto do Pool de Liga\u00e7\u00f5es da OCI + +ORA-17102=Bfile \u00e9 s\u00f3 de leitura + +ORA-17103=tipo de liga\u00e7\u00e3o inv\u00e1lido para devolver atrav\u00e9s de getConnection. Utilize getJavaSqlConnection + +ORA-17104=n\u00e3o \u00e9 poss\u00edvel que a instru\u00e7\u00e3o de SQL para execu\u00e7\u00e3o esteja vazia ou seja nula + +ORA-17105=o fuso hor\u00e1rio da sess\u00e3o de liga\u00e7\u00e3o n\u00e3o foi definido + +ORA-17106=foi especificada uma configura\u00e7\u00e3o inv\u00e1lida do pool de liga\u00e7\u00f5es do driver JDBC-OCI + +ORA-17107=foi especificado um tipo de proxy inv\u00e1lido + +ORA-17108=N\u00e3o foi especificado o comprimento m\u00e1ximo em defineColumnType + +ORA-17109=a codifica\u00e7\u00e3o de caracteres de Java standard n\u00e3o foi encontrada + +ORA-17110=a execu\u00e7\u00e3o foi conclu\u00edda com aviso + +ORA-17111=Foi especificado um tempo de espera de TTL da cache de liga\u00e7\u00f5es inv\u00e1lido + +ORA-17112=Foi especificado um intervalo de processo leve inv\u00e1lido + +ORA-17113=O valor do intervalo do processo leve \u00e9 superior ao valor do tempo de espera da cache + +ORA-17114=n\u00e3o foi poss\u00edvel utilizar a confirma\u00e7\u00e3o de transac\u00e7\u00e3o local na transac\u00e7\u00e3o global + +ORA-17115=n\u00e3o foi poss\u00edvel utilizar a anula\u00e7\u00e3o de transac\u00e7\u00e3o local na transac\u00e7\u00e3o global + +ORA-17116=n\u00e3o foi poss\u00edvel activar a confirma\u00e7\u00e3o autom\u00e1tica na transac\u00e7\u00e3o global activa + +ORA-17117=n\u00e3o foi poss\u00edvel definir o savepoint na transac\u00e7\u00e3o global activa + +ORA-17118=n\u00e3o foi poss\u00edvel obter a ID do Savepoint nomeado + +ORA-17119=n\u00e3o foi poss\u00edvel obter o nome do Savepoint n\u00e3o nomeado + +ORA-17120=n\u00e3o foi poss\u00edvel definir o Savepoint com a confirma\u00e7\u00e3o autom\u00e1tica activada + +ORA-17121=n\u00e3o foi poss\u00edvel anular o Savepoint com a confirma\u00e7\u00e3o autom\u00e1tica activada + +ORA-17122=n\u00e3o foi poss\u00edvel anular o Savepoint da transac\u00e7\u00e3o local na transac\u00e7\u00e3o global + +ORA-17123=A dimens\u00e3o da cache de instru\u00e7\u00f5es especificada \u00e9 inv\u00e1lida + +ORA-17124=Foi especificado um tempo de espera de Inactividade da cache de liga\u00e7\u00f5es inv\u00e1lido + +ORA-17200=Incapaz de converter correctamente a cadeia de caracteres de abertura XA de Java para C + +ORA-17201=Incapaz de converter correctamente a cadeia de caracteres de fecho XA de Java para C + +ORA-17202=Incapaz de converter correctamente o nome de RM de Java para C + +ORA-17203=N\u00e3o foi poss\u00edvel converter o tipo de apontador para jlong + +ORA-17204=A matriz de entrada de dados \u00e9 demasiado curta para conter par\u00e2metros identificadores da OCI + +ORA-17205=Falha na obten\u00e7\u00e3o do par\u00e2metro identificador OCISvcCtx a partir de C-XA atrav\u00e9s da utiliza\u00e7\u00e3o de xaoSvcCtx + +ORA-17206=Falha na obten\u00e7\u00e3o do par\u00e2metro identificador OCIEnv a partir de C-XA atrav\u00e9s da utiliza\u00e7\u00e3o de xaoEnv + +ORA-17207=A propriedade tnsEntry n\u00e3o foi definida em DataSource + +ORA-17213=C-XA devolveu XAER_RMERR durante xa_open + +ORA-17215=C-XA devolveu XAER_INVAL durante xa_open + +ORA-17216=C-XA devolveu XAER_PROTO durante xa_open + +ORA-17233=C-XA devolveu XAER_RMERR durante xa_close + +ORA-17235=C-XA devolveu XAER_INVAL durante xa_close + +ORA-17236=C-XA devolveu XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Viola\u00e7\u00e3o de protocolo + +ORA-17402=Apenas uma mensagem RPA esperada + +ORA-17403=Apenas uma mensagem RXH esperada + +ORA-17404=Foram recebidas mais mensagens RXD do que o esperado + +ORA-17405=O comprimento de UAC n\u00e3o \u00e9 zero + +ORA-17406=Foi excedido o comprimento m\u00e1ximo do buffer + +ORA-17407=Representa\u00e7\u00e3o de Tipo (setRep) inv\u00e1lida + +ORA-17408=Representa\u00e7\u00e3o de Tipo (getRep) inv\u00e1lida + +ORA-17409=comprimento do buffer inv\u00e1lido + +ORA-17410=N\u00e3o existem mais dados para leitura a partir do socket + +ORA-17411=N\u00e3o correspond\u00eancia entre as representa\u00e7\u00f5es do Tipo de Dados + +ORA-17412=Comprimento do tipo superior ao M\u00e1ximo + +ORA-17413=Foi excedida a dimens\u00e3o da chave + +ORA-17414=A dimens\u00e3o do Buffer \u00e9 insuficiente para armazenar Nomes de Colunas + +ORA-17415=Este tipo n\u00e3o foi tratado + +ORA-17416=FATAL + +ORA-17417=Problema de NLS, falha na descodifica\u00e7\u00e3o dos nomes das colunas + +ORA-17418=Erro de comprimento de campo na estrutura interna + +ORA-17419=Foi devolvido um n\u00famero de colunas inv\u00e1lido + +ORA-17420=Vers\u00e3o Oracle n\u00e3o definida + +ORA-17421=Tipos ou Liga\u00e7\u00e3o n\u00e3o definida + +ORA-17422=Classe inv\u00e1lida na factory + +ORA-17423=A utilizar um bloco de PLSQL sem um IOV definido + +ORA-17424=A tentar uma opera\u00e7\u00e3o do tipo marshaling diferente + +ORA-17425=Devolu\u00e7\u00e3o de um fluxo no bloco de PLSQL + +ORA-17426=As associa\u00e7\u00f5es IN e OUT s\u00e3o NULL + +ORA-17427=A utiliza\u00e7\u00e3o OAC N\u00e3o Inicializado + +ORA-17428=A entrada em sess\u00e3o tem de ser chamada depois de efectuada a liga\u00e7\u00e3o + +ORA-17429=\u00c9 necess\u00e1rio estar, pelo menos, ligado ao servidor + +ORA-17430=\u00c9 necess\u00e1rio ter entrado em sess\u00e3o no servidor + +ORA-17431=A Instru\u00e7\u00e3o de SQL para an\u00e1lise \u00e9 nula + +ORA-17432=op\u00e7\u00f5es inv\u00e1lidas em all7 + +ORA-17433=argumentos inv\u00e1lidos na chamada + +ORA-17434=n\u00e3o est\u00e1 em modo de fluxo + +ORA-17435=n\u00famero inv\u00e1lido de in_out_binds em IOV + +ORA-17436=n\u00famero inv\u00e1lido de associa\u00e7\u00f5es de sa\u00edda + +ORA-17437=Erro em argumentos IN/OUT do bloco de PLSQL + +ORA-17438=Interno - Valor inesperado + +ORA-17439=Tipo de SQL inv\u00e1lido + +ORA-17440=DBItem/DBType \u00e9 nulo + +ORA-17441=Vers\u00e3o Oracle n\u00e3o suportada.A vers\u00e3o m\u00ednima suportada \u00e9 a 7.2.3. + +ORA-17442=Valor de refcursor inv\u00e1lido + +ORA-17443=Utilizador ou senha nula n\u00e3o suportados no driver THIN + +ORA-17444=A vers\u00e3o do Protocolo TTC recebida do servidor n\u00e3o \u00e9 suportada + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/70f50e1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/70f50e1a98af001c18c4935e001381da new file mode 100644 index 0000000..fcfa5b0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/70f50e1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/90b4b26485a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/90b4b26485a9001c1d3abf97745a02da new file mode 100644 index 0000000..1d2d682 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/90b4b26485a9001c1d3abf97745a02da @@ -0,0 +1,153 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + private void actionwindowActivated(WindowEvent ev){ + + } + private void actionwindowClosed(WindowEvent ev){ + + } + }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/a0cb081598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/a0cb081598af001c18c4935e001381da new file mode 100644 index 0000000..1006a8a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/a0cb081598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/e016371a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/e016371a98af001c18c4935e001381da new file mode 100644 index 0000000..1ce7dd5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7d/e016371a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7e/20ffe83ec2a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7e/20ffe83ec2a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..18f347f --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7e/20ffe83ec2a4001c1acc9f54b60f9b57 @@ -0,0 +1,13 @@ +package fr.blankoworld.ihm; + +public class Connexion { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/304747ad01af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/304747ad01af001c14499bdcdfff58b3 new file mode 100644 index 0000000..c162de0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/304747ad01af001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n" + connection.getClientInfo("Driver"); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/50aef81998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/50aef81998af001c18c4935e001381da new file mode 100644 index 0000000..2ae9745 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/50aef81998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/7097e81b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/7097e81b98af001c18c4935e001381da new file mode 100644 index 0000000..9c1c6b4 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/7097e81b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/a01b6eaffdae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/a01b6eaffdae001c14499bdcdfff58b3 new file mode 100644 index 0000000..f1936fe --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/7f/a01b6eaffdae001c14499bdcdfff58b3 @@ -0,0 +1,223 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + bloquageFenetreConnexion(); + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + + private void bloquageFenetreConnexion(){ +// On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(objetConnexion.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + conn.block(); + } + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8/5049af1a01a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8/5049af1a01a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..c70963d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8/5049af1a01a4001c1027e59cc3e35e89 @@ -0,0 +1,58 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + System.out.println("Requte: Envoye et reue"); + } catch (SQLException ex){ + + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8/c02b52b44daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8/c02b52b44daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..776c735 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8/c02b52b44daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,202 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + + // Rcupration des donnes entres par l'utilisateur + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getPassword().toString(); + + // Affichage du message de configurmation + this.pr.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8/f0e1101598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8/f0e1101598af001c18c4935e001381da new file mode 100644 index 0000000..965d493 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8/f0e1101598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/80/3069ea634eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/80/3069ea634eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..bd6a0b3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/80/3069ea634eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,13 @@ +package fr.blankoworld.connexionBDD; + +public class Connexion { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/80/90dc5e6bfba3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/80/90dc5e6bfba3001c1027e59cc3e35e89 new file mode 100644 index 0000000..84a363b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/80/90dc5e6bfba3001c1027e59cc3e35e89 @@ -0,0 +1,32 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + try { + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + Connection conn = DriverManager.getConnection(url, "dut","dut"); + + System.out.println("Accs la base"); + } catch (SQLException e) { + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/80/e037051798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/80/e037051798af001c18c4935e001381da new file mode 100644 index 0000000..6c4050a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/80/e037051798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/81/702cd924c4a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/81/702cd924c4a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..c9c5c2e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/81/702cd924c4a4001c1acc9f54b60f9b57 @@ -0,0 +1,32 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; +import javax.swing.JLabel; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel(); + JLabel jlabelPort = new JLabel(); + JLabel jlabelBase = new JLabel(); + JLabel jlabelIdentifiant = new JLabel(); + JLabel jlabelMdp = new JLabel(); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/81/c098501798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/81/c098501798af001c18c4935e001381da new file mode 100644 index 0000000..28d1419 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/81/c098501798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/81/f0fe42444caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/81/f0fe42444caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..ed1c387 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/81/f0fe42444caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,187 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + + JOptionPane jo = new JOptionPane(); + jo.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/82/1009d91498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/82/1009d91498af001c18c4935e001381da new file mode 100644 index 0000000..a597520 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/82/1009d91498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/82/705dd41998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/82/705dd41998af001c18c4935e001381da new file mode 100644 index 0000000..41caacb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/82/705dd41998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/82/e062ace9fdae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/82/e062ace9fdae001c14499bdcdfff58b3 new file mode 100644 index 0000000..33229a0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/82/e062ace9fdae001c14499bdcdfff58b3 @@ -0,0 +1,224 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + bloquageFenetreConnexion(); + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + + private void bloquageFenetreConnexion(){ +// On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(objetConnexion.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + conn.block(); + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/20ddd11498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/20ddd11498af001c18c4935e001381da new file mode 100644 index 0000000..0cb2439 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/20ddd11498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/8021351798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/8021351798af001c18c4935e001381da new file mode 100644 index 0000000..fb22fae Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/8021351798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/b0eed31698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/b0eed31698af001c18c4935e001381da new file mode 100644 index 0000000..8f360b2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/b0eed31698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/c05339a2c9a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/c05339a2c9a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..5f679d7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/c05339a2c9a4001c1acc9f54b60f9b57 @@ -0,0 +1,72 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + Panneau_Centre.setLayout(new BorderLayout()); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setLayout( new FlowLayout()); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/e042bb6d7ca9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/e042bb6d7ca9001c1d3abf97745a02da new file mode 100644 index 0000000..63d8ad3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/83/e042bb6d7ca9001c1d3abf97745a02da @@ -0,0 +1,103 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/105ed31b7fa9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/105ed31b7fa9001c1d3abf97745a02da new file mode 100644 index 0000000..9c1c019 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/105ed31b7fa9001c1d3abf97745a02da @@ -0,0 +1,79 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + MenuPrincipal.setBorder(new BevelBorder(BevelBorder.RAISED)); + + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/30d1617206af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/30d1617206af001c14499bdcdfff58b3 new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/a0e1706084a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/a0e1706084a9001c1d3abf97745a02da new file mode 100644 index 0000000..278421d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/a0e1706084a9001c1d3abf97745a02da @@ -0,0 +1,146 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addComponentListener(new ComponentListener(){ + public void + }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/c04d73e9c6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/c04d73e9c6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..d239fb6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/c04d73e9c6a4001c1acc9f54b60f9b57 @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new GridLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/e022ece502a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/e022ece502a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..108545a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/e022ece502a4001c1027e59cc3e35e89 @@ -0,0 +1,73 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + + System.out.println(resultat.isBeforeFirst()); + // true + resultat.next(); + // on se retrouve ici sur la premire ligne + resultat.getNString(0); + + // traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/e02d481a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/e02d481a98af001c18c4935e001381da new file mode 100644 index 0000000..64b88d0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/84/e02d481a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/20b33c80fca3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/20b33c80fca3001c1027e59cc3e35e89 new file mode 100644 index 0000000..3aa36aa --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/20b33c80fca3001c1027e59cc3e35e89 @@ -0,0 +1,39 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + Connection conn = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/3045d01698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/3045d01698af001c18c4935e001381da new file mode 100644 index 0000000..4f5ce41 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/3045d01698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/60461a8a04af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/60461a8a04af001c14499bdcdfff58b3 new file mode 100644 index 0000000..d1815fd --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/60461a8a04af001c14499bdcdfff58b3 @@ -0,0 +1,235 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/90bcec1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/90bcec1898af001c18c4935e001381da new file mode 100644 index 0000000..fb81dc7 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/90bcec1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/c0a0adb07ca9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/c0a0adb07ca9001c1d3abf97745a02da new file mode 100644 index 0000000..b0d0e53 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/c0a0adb07ca9001c1d3abf97745a02da @@ -0,0 +1,55 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + + // Donner un titre notre panneau + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/e05e15efc5a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/e05e15efc5a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..1ba258b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/85/e05e15efc5a4001c1acc9f54b60f9b57 @@ -0,0 +1,63 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + + JOptionPane.showMessageDialog(null, "Blankuissance4\n\n" + + "Version 0.5\n" + + "Developpe par Blankoworld\n\n", + "A propos de Blankuissance4", + JOptionPane.QUESTION_MESSAGE); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/86/102992b105a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/86/102992b105a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..3066d6a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/86/102992b105a4001c1027e59cc3e35e89 @@ -0,0 +1,87 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + int i = rsmd.getColumnCount(); + + System.out.println("Nombre de colonne: " + i); + + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/86/4093ea1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/86/4093ea1b98af001c18c4935e001381da new file mode 100644 index 0000000..5a9c440 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/86/4093ea1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/86/c03770d4cca4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/86/c03770d4cca4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..48ce1e3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/86/c03770d4cca4001c1acc9f54b60f9b57 @@ -0,0 +1,95 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche, FlowLayout.LEFT); + Panneau_Centre.add(Panneau_Centre_Droite, FlowLayout.RIGHT); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/87/60b1931698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/87/60b1931698af001c18c4935e001381da new file mode 100644 index 0000000..63aafb4 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/87/60b1931698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/87/d0594f1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/87/d0594f1a98af001c18c4935e001381da new file mode 100644 index 0000000..a55983e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/87/d0594f1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/87/d09ce0e9feae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/87/d09ce0e9feae001c14499bdcdfff58b3 new file mode 100644 index 0000000..06abb71 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/87/d09ce0e9feae001c14499bdcdfff58b3 @@ -0,0 +1,227 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + presencePilote(); + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + + private void presencePilote(){ +// On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(objetConnexion.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + conn.block(); + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + else{ + JOptionPane.showMessageDialog(this, "Pilote trouve.", "Information", JOptionPane.INFORMATION_MESSAGE); + } + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/88/b07afe1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/88/b07afe1998af001c18c4935e001381da new file mode 100644 index 0000000..00ce4e8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/88/b07afe1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/88/c087dc45c7a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/88/c087dc45c7a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..50d83c8 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/88/c087dc45c7a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + JOptionPane.showOptionDialog(null, "Message d'essai", "Configuration", 1, 1, Icon, jlabelBase, "Valeur initiale"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/88/d0a6f281c8a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/88/d0a6f281c8a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..b30eb11 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/88/d0a6f281c8a4001c1acc9f54b60f9b57 @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + + Panneau_Centre.add(jtextServeur) + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/006c211a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/006c211a98af001c18c4935e001381da new file mode 100644 index 0000000..e35919e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/006c211a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/30d05fd8c6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/30d05fd8c6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..a969502 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/30d05fd8c6a4001c1acc9f54b60f9b57 @@ -0,0 +1,57 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.GridLayout; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new GridBagLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/7016dd1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/7016dd1698af001c18c4935e001381da new file mode 100644 index 0000000..3a7fa84 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/7016dd1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/8002671398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/8002671398af001c18c4935e001381da new file mode 100644 index 0000000..39681a7 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/8002671398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/909451b6c3a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/909451b6c3a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..b5c4d8a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/909451b6c3a4001c1acc9f54b60f9b57 @@ -0,0 +1,32 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; +import javax.swing.JLabel; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel(); + JLabel jlabelPort = new JLabel(); + JLabel jlabelBase = new JLabel(); + JLabel jlabelIdentifiant = new JLabel(); + JLabel jlabelMdp = new JLabel(); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Blankuissance 4"); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/a0975e1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/a0975e1698af001c18c4935e001381da new file mode 100644 index 0000000..b2ad3a8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/89/a0975e1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/00564d9882a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/00564d9882a9001c1d3abf97745a02da new file mode 100644 index 0000000..c7cd03b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/00564d9882a9001c1d3abf97745a02da @@ -0,0 +1,104 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/40d940f603af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/40d940f603af001c14499bdcdfff58b3 new file mode 100644 index 0000000..3e63402 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/40d940f603af001c14499bdcdfff58b3 @@ -0,0 +1,221 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener((new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + dsf; + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/40f4b3d2fdae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/40f4b3d2fdae001c14499bdcdfff58b3 new file mode 100644 index 0000000..c4345c6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/40f4b3d2fdae001c14499bdcdfff58b3 @@ -0,0 +1,224 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + this.bloquageFenetreConnexion(); + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + + private void bloquageFenetreConnexion(){ +// On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(objetConnexion.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + conn.block(); + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/7058755f07af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/7058755f07af001c14499bdcdfff58b3 new file mode 100644 index 0000000..8aea06d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/7058755f07af001c14499bdcdfff58b3 @@ -0,0 +1,235 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/7066111a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/7066111a98af001c18c4935e001381da new file mode 100644 index 0000000..5ddee41 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/7066111a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/c0f4f9f720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/c0f4f9f720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..d6dab30 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8a/c0f4f9f720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Errore interno + +ORA-17002=Eccezione IO + +ORA-17003=Indice di colonna non valido + +ORA-17004=Tipo di colonna non valido + +ORA-17005=Tipo di colonna non supportato + +ORA-17006=Nome di colonna non valido + +ORA-17007=Colonna dinamica non valida + +ORA-17008=Connessione chiusa + +ORA-17009=Connessione chiusa + +ORA-17010=Resultset chiuso + +ORA-17011=Resultset esaurito + +ORA-17012=Conflitto tipo di parametro + +ORA-17014=ResultSet.next non \u00e8 stato richiamato + +ORA-17015=L\'istruzione \u00e8 stata annullata + +ORA-17016=Si \u00e8 verificato un timeout dell\'istruzione + +ORA-17017=Cursore gi\u00e0 inizializzato + +ORA-17018=Cursore non valido + +ORA-17019=\u00c8 possibile solo descrivere una query + +ORA-17020=Preestrazione di riga non corretta + +ORA-17021=Definizione mancante + +ORA-17022=Definizioni mancanti nell\'indice + +ORA-17023=Funzione non supportata + +ORA-17024=Nessun dato letto + +ORA-17025=Errore in defines.isNull () + +ORA-17026=Overflow numerico + +ORA-17027=Il flusso \u00e8 gi\u00e0 stato chiuso + +ORA-17028=Impossibile effettuare nuove definizioni fino a che il ResultSet corrente \u00e8 chiuso + +ORA-17029=setReadOnly: Connessioni di sola lettura non supportate + +ORA-17030=READ_COMMITTED e SERIALIZABLE sono i soli livelli di transazione validi + +ORA-17031=setAutoClose: \u00c8 supportata solo la modalit\u00e0 di chiusura automatica attivata + +ORA-17032=impossibile impostare a zero la preestrazione delle righe + +ORA-17033=Stringa SQL92 di formato non valido nella posizione + +ORA-17034=Token SQL92 non supportato nella posizione + +ORA-17035=Set di caratteri non supportato + +ORA-17036=eccezione in OracleNumber + +ORA-17037=Conversione non riuscita tra UTF8 e UCS2 + +ORA-17038=Lunghezza insufficiente di array di byte + +ORA-17039=Lunghezza insufficiente di array di caratteri + +ORA-17040=Nell\'URL di connessione \u00e8 necessario specificare un protocollo secondario + +ORA-17041=Parametro IN o OUT mancante nell\'indice: + +ORA-17042=Valore batch non valido + +ORA-17043=La dimensione massima del flusso non \u00e8 valida + +ORA-17044=Errore interno: Array di dati non allocato + +ORA-17045=Errore interno: Tentativo di accesso a valori di associazione oltre il valore batch + +ORA-17046=Errore interno: Indice non valido per l\'accesso ai dati + +ORA-17047=Errore durante l\'analisi del descrittore di tipo + +ORA-17048=Tipo non definito + +ORA-17049=I tipi di oggetto sql e java non sono congruenti + +ORA-17050=nessun elemento analogo nel vettore + +ORA-17051=Impossibile usare questa interfaccia API per tipi diversi da UDT + +ORA-17052=Questo riferimento non \u00e8 valido + +ORA-17053=La dimensione non \u00e8 valida + +ORA-17054=Il locator LOB non \u00e8 valido + +ORA-17055=Carattere non valido rilevato in + +ORA-17056=Set di caratteri non supportato + +ORA-17057=LOB chiuso + +ORA-17058=Errore interno: Rapporto di conversione NLS non valido + +ORA-17059=Conversione in rappresentazione interna non riuscita + +ORA-17060=Creazione descrittore non riuscita + +ORA-17061=Descrittore mancante + +ORA-17062=Cursore di riferimento non valido + +ORA-17063=Non in una transazione + +ORA-17064=Sintassi non valida o nome di database nullo + +ORA-17065=Classe di conversione nulla + +ORA-17066=\u00c8 necessaria l\\'implementazione specifica del layer di accesso + +ORA-17067=\u00c8 stato specificato un URL Oracle non valido + +ORA-17068=Argomenti non validi nella chiamata + +ORA-17069=Utilizzare la chiamata XA esplicita + +ORA-17070=La dimensione dei dati \u00e8 superiore alla dimensione massima per questo tipo + +ORA-17071=\u00c8 stato superato il limite massimo di VARRAY + +ORA-17072=Il valore inserito \u00e8 troppo grande per la colonna + +ORA-17073=L\'handle logico non \u00e8 pi\u00f9 valido + +ORA-17074=Nome pattern non valido + +ORA-17075=Operazione non valida nel resultset di solo inoltro + +ORA-17076=Operazione non valida nel resultset di sola lettura + +ORA-17077=Errore di impostazione del valore REF + +ORA-17078=Impossibile effettuare l\'operazione poich\u00e9 le connessioni sono gi\u00e0 aperte + +ORA-17079=Le credenziali utente non corrispondono a quelle esistenti + +ORA-17080=comando batch non valido + +ORA-17081=errore durante l\'esecuzione batch + +ORA-17082=Nessuna riga corrente + +ORA-17083=Non nella riga di inserimento + +ORA-17084=Richiamo sulla riga di inserimento + +ORA-17085=Sono presenti conflitti di valore + +ORA-17086=Valore di colonna non definito nella riga di inserimento + +ORA-17087=Indicazione per le prestazioni ignorata: setFetchDirection() + +ORA-17088=Sintassi non supportata per il tipo e il livello di concorrenza richiesti del resultset +ORA-17089=errore interno + +ORA-17090=operazione non consentita + +ORA-17091=Impossibile creare un resultset del tipo e/o al livello di concorrenza richiesti + +ORA-17092=Impossibile creare o eseguire istruzioni JDBC alla fine dell\'elaborazione di una chiamata + +ORA-17093=L\'operazione OCI ha restituito OCI_SUCCESS_WITH_INFO + +ORA-17094=Versione non corrispondente del tipo di oggetto + +ORA-17095=Dimensione della cache delle istruzioni non impostata + +ORA-17096=Impossibile attivare l\'inserimento nella cache delle istruzioni per questa connessione logica. + +ORA-17097=Tipo di elemento tabella indice PL/SQL non valido + +ORA-17098=Operazione svuotamento LOB non valida + +ORA-17099=Lunghezza di array tabella indice PL/SQL non valida + +ORA-17100=Oggetto Java di database non valido + +ORA-17101=Propriet\u00e0 non valide nell\'oggetto OCI Connection Pool + +ORA-17102=Bfile \u00e8 di sola lettura + +ORA-17103=questo tipo di connessione non pu\u00f2 essere restituita mediante getConnection. Utilizzare getJavaSqlConnection + +ORA-17104=L\'istruzione SQL da eseguire non pu\u00f2 essere vuota o nulla + +ORA-17105=il fuso orario della sessione di connessione non \u00e8 stato impostato + +ORA-17106=la configurazione specificata per il connection pool del driver JDBC-OCI non \u00e8 valida + +ORA-17107=il tipo di proxy specificato non \u00e8 valido + +ORA-17108=Nessuna lunghezza massima specificata in defineColumnType + +ORA-17109=codifica dei caratteri Java standard non trovata + +ORA-17110=esecuzione completata con avvertenze + +ORA-17111=Il timeout TTL della cache di connessione specificato non \u00e8 valido + +ORA-17112=L'intervallo di thread specificato non \u00e8 valido + +ORA-17113=Il valore dell'intervallo di thread \u00e8 maggiore del valore di timeout della cache + +ORA-17114=impossibile utilizzare il commit delle transazioni locali in una transazione globale + +ORA-17115=impossibile utilizzare il rollback delle transazioni locali in una transazione globale + +ORA-17116=impossibile attivare il commit automatico in una transazione globale attiva + +ORA-17117=impossibile impostare un savepoint in una transazione globale attiva + +ORA-17118=impossibile ottenere l'ID per un savepoint denominato + +ORA-17119=impossibile ottenere il nome per un savepoint non denominato + +ORA-17120=impossibile impostare un savepoint con commit automatico abilitato + +ORA-17121=impossibile eseguire il rollback a un savepoint con commit automatico abilitato + +ORA-17122=impossibile eseguire il rollback a un savepoint txn locale in una transazione globale + +ORA-17123=La dimensione della cache delle istruzioni specificata non \u00e8 valida + +ORA-17124=Il timeout di inattivit\u00e0 della cache di connessione specificato non \u00e8 valido + +ORA-17200=Impossibile convertire correttamente la stringa di apertura XA da Java in C + +ORA-17201=Impossibile convertire correttamente la stringa di chiusura XA da Java in C + +ORA-17202=Impossibile convertire correttamente il nome RM da Java in C + +ORA-17203=Impossibile eseguire il casting del tipo di puntatore in jlong + +ORA-17204=Array di input troppo piccolo per contenere gli handle OCI + +ORA-17205=Recupero handle OCISvcCtx da C-XA mediante xaoSvcCtx non riuscito + +ORA-17206=Recupero handle OCIEnv da C-XA mediante xaoEnv non riuscito + +ORA-17207=La propriet\u00e0 tnsEntry non \u00e8 stata impostata in DataSource + +ORA-17213=C-XA ha restituito XAER_RMERR durante xa_open + +ORA-17215=C-XA ha restituito XAER_INVAL durante xa_open + +ORA-17216=C-XA ha restituito XAER_PROTO durante xa_open + +ORA-17233=C-XA ha restituito XAER_RMERR durante xa_close + +ORA-17235=C-XA ha restituito XAER_INVAL durante xa_close + +ORA-17236=C-XA ha restituito XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violazione di protocollo + +ORA-17402=\u00c8 previsto un solo messaggio RPA + +ORA-17403=\u00c8 previsto un solo messaggio RXH + +ORA-17404=Sono stati ricevuti pi\u00f9 RXD di quelli previsti + +ORA-17405=La lunghezza UAC \u00e8 diversa da zero + +ORA-17406=Superamento della lunghezza massima del buffer + +ORA-17407=Rappresentazione del tipo (setRep) non valida + +ORA-17408=Rappresentazione del tipo (getRep) non valida + +ORA-17409=lunghezza del buffer non valida + +ORA-17410=Non vi sono altri dati da leggere nel socket + +ORA-17411=Le rappresentazioni dei tipi di dati non corrispondono + +ORA-17412=La lunghezza del tipo \u00e8 superiore al valore massimo + +ORA-17413=Superamento dimensione della chiave + +ORA-17414=La dimensione del buffer non \u00e8 sufficiente per memorizzare i nomi di colonna + +ORA-17415=Questo tipo non \u00e8 stato gestito + +ORA-17416=FATAL + +ORA-17417=Problema NLS, la decodifica dei nomi di colonna non \u00e8 riuscita + +ORA-17418=Errore di lunghezza campo della struttura interna + +ORA-17419=Restituito numero di colonne non valido + +ORA-17420=Versione Oracle non definita + +ORA-17421=Tipi o connessione non definita + +ORA-17422=Classe non valida in factory + +ORA-17423=Uso di un lock PLSQL senza un IOV definito in corso + +ORA-17424=Tentativo differente operazione di marshalling in corso + +ORA-17425=Restituzione di un flusso in blocco PLSQL in corso + +ORA-17426=Entrambe le associazioni IN ed OUT sono NULL + +ORA-17427=Uso di OAC non inizializzato in corso + +ORA-17428=Il collegamento deve essere richiamato dopo la connessione + +ORA-17429=\u00c8 necessaria almeno la connessione al server + +ORA-17430=\u00c8 necessario il collegamento al server + +ORA-17431=L\'istruzione SQL da analizzare \u00e8 nulla + +ORA-17432=opzioni non valide in all7 + +ORA-17433=argomenti non validi nella chiamata + +ORA-17434=non in modalit\u00e0 di flusso + +ORA-17435=numero non valido di in_out_binds in IOV + +ORA-17436=numero non valido di outbinds + +ORA-17437=Errore negli argomenti IN/OUT del blocco PLSQL + +ORA-17438=Interno - valore non previsto + +ORA-17439=Tipo SQL non valido + +ORA-17440=Il tipo DBItem/DBType \u00e8 nullo + +ORA-17441=Versione Oracle non supportata. La versione minima supportata \u00e8 la 7.2.3. + +ORA-17442=Valore di Refcursor non valido + +ORA-17443=Utente nullo o password non supportata nel driver THIN + +ORA-17444=La versione del protocollo TTC ricevuta dal server non \u00e8 supportata + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/607755f720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/607755f720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..7c2d2f3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/607755f720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Interner Fehler + +ORA-17002=E/A-Exception + +ORA-17003=Ung\u00fcltiger Spaltenindex + +ORA-17004=Ung\u00fcltiger Spaltentyp + +ORA-17005=Nicht unterst\u00fctzter Spaltentyp + +ORA-17006=Ung\u00fcltiger Spaltenname + +ORA-17007=Ung\u00fcltige dynamische Spalte + +ORA-17008=Getrennte Verbindung + +ORA-17009=Geschlossene Anweisung + +ORA-17010=Geschlossene Ergebnismenge + +ORA-17011=Ersch\u00f6pfte Ergebnismenge + +ORA-17012=Konflikt bei Parametertyp + +ORA-17014=ResultSet.next wurde nicht aufgerufen + +ORA-17015=Anweisung wurde abgebrochen + +ORA-17016=Zeit\u00fcberschreitung bei Anweisung + +ORA-17017=Cursor schon initialisiert + +ORA-17018=Ung\u00fcltiger Cursor + +ORA-17019=Nur eine Abfrage kann beschrieben werden + +ORA-17020=Ung\u00fcltiger Abruf von Zeilen im voraus + +ORA-17021=Fehlende Defines + +ORA-17022=Fehlende Defines auf Index + +ORA-17023=Nicht unterst\u00fctzte Funktion + +ORA-17024=Keine Daten gelesen + +ORA-17025=Fehler in defines.isNull () + +ORA-17026=Numerischer \u00dcberlauf + +ORA-17027=Stream wurde schon geschlossen + +ORA-17028=Neue Defines sind erst m\u00f6glich, wenn aktuelle ResultSet geschlossen ist + +ORA-17029=setReadOnly: Schreibgesch\u00fctzte Verbindungen nicht unterst\u00fctzt + +ORA-17030=READ_COMMITTED und SERIALIZABLE sind die einzig g\u00fcltigen Transaktionsebenen + +ORA-17031=setAutoClose: Unterst\u00fctzt nur Auto-Close-Modus Ein + +ORA-17032=Abruf von Zeilen im voraus kann nicht auf Null festgelegt werden + +ORA-17033=SQL92-Zeichenfolge in falschem Format in Position + +ORA-17034=Nicht unterst\u00fctztes SQL92-Token in Position + +ORA-17035=Zeichensatz nicht unterst\u00fctzt !! + +ORA-17036=Exception in OracleNumber + +ORA-17037=Konvertierung zwischen UTF8 und UCS2 nicht erfolgreich + +ORA-17038=Byte-Array nicht lang genug + +ORA-17039=Char-Array nicht lang genug + +ORA-17040=Unterprotokoll mu\u00df in Verbindungs-URL angegeben werden + +ORA-17041=Fehlender IN- oder OUT-Parameter auf Index: + +ORA-17042=Ung\u00fcltiger Stapelwert + +ORA-17043=Ung\u00fcltige maximale Stream-Gr\u00f6\u00dfe + +ORA-17044=Interner Fehler: Daten-Array nicht zugewiesen + +ORA-17045=Interner Fehler: Versuch, auf Bindewerte \u00fcber den Stapelwert hinaus zuzugreifen + +ORA-17046=Interner Fehler: Ung\u00fcltiger Index f\u00fcr Datenzugriff + +ORA-17047=Fehler bei Analyse von Typ-Deskriptor + +ORA-17048=Undefinierter Typ + +ORA-17049=Inkonsistente Java- und SQL-Objekttypen + +ORA-17050=Kein derartiges Element in Vektor + +ORA-17051=Diese API kann nicht f\u00fcr Nicht-UDT-Typen benutzt werden + +ORA-17052=Diese Ref ist nicht g\u00fcltig + +ORA-17053=Die Gr\u00f6\u00dfe ist nicht g\u00fcltig + +ORA-17054=Der LOB-Positionsanzeiger ist nicht g\u00fcltig + +ORA-17055=Ung\u00fcltiges Zeichen aufgetreten in + +ORA-17056=Nicht unterst\u00fctzter Zeichensatz + +ORA-17057=Geschlossenes LOB + +ORA-17058=Interner Fehler: Ung\u00fcltige NLS-Konvertierungsrate + +ORA-17059=Konvertierung zu interner Darstellung nicht erfolgreich + +ORA-17060=Deskriptor konnte nicht erstellt werden + +ORA-17061=Fehlender Deskriptor + +ORA-17062=Ref-Cursor ist ung\u00fcltig + +ORA-17063=Nicht in einer Transaktion + +ORA-17064=Ung\u00fcltige Syntax oder Datenbankname ist null + +ORA-17065=Konvertierungsklasse ist null + +ORA-17066=Zugriffsebenen-spezifische Implementierung erforderlich + +ORA-17067=Ung\u00fcltiger Oracle-URL angegeben + +ORA-17068=Ung\u00fcltige Argumente in Aufruf + +ORA-17069=Expliziten XA-Aufruf verwenden + +ORA-17070=Datengr\u00f6\u00dfe gr\u00f6\u00dfer als max. Gr\u00f6\u00dfe f\u00fcr diesen Typ + +ORA-17071=Maximaler VARRAY-Grenzwert \u00fcberschritten + +ORA-17072=Zu gro\u00dfer Wert f\u00fcr Spalte eingef\u00fcgt + +ORA-17073=Logisches Handle nicht mehr g\u00fcltig + +ORA-17074=Ung\u00fcltiges Namensmuster + +ORA-17075=Ung\u00fcltiger Vorgang bei Nur-Weiterleiten-Ergebnismenge + +ORA-17076=Ung\u00fcltiger Vorgang bei schreibgesch\u00fctzter Ergebnismenge + +ORA-17077=REF-Wert konnte nicht festgelegt werden + +ORA-17078=Vorgang kann nicht durchgef\u00fchrt werden, da schon Verbindungen ge\u00f6ffnet sind + +ORA-17079=Benutzer-ID-Daten stimmen nicht mit bestehenden ID-Daten \u00fcberein + +ORA-17080=Ung\u00fcltiger Stapelbefehl + +ORA-17081=Fehler bei Stapelverarbeitung aufgetreten + +ORA-17082=Keine aktuelle Zeile + +ORA-17083=Nicht auf der Einf\u00fcgenzeile + +ORA-17084=Auf der Einf\u00fcgenzeile aufgerufen + +ORA-17085=Wertkonflikte treten auf + +ORA-17086=Undefinierter Spaltenwert auf Einf\u00fcgenzeile + +ORA-17087=Leistungshinweis ignoriert: setFetchDirection() + +ORA-17088=Nicht unterst\u00fctzte Syntax f\u00fcr angeforderten Ergebnismengentyp und Ebene des gleichzeitigen Zugriffs +ORA-17089=Interner Fehler + +ORA-17090=Vorgang nicht zul\u00e4ssig + +ORA-17091=Ergebnismenge mit angefordertem Typ und/oder angeforderter Ebene des gleichzeitigen Zugriffs kann nicht erstellt werden + +ORA-17092=JDBC-Anweisungen k\u00f6nnen nicht erstellt oder am Ende der Aufrufverarbeitung ausgef\u00fchrt werden. + +ORA-17093=OCI-Vorgang hat OCI_SUCCESS_WITH_INFO zur\u00fcckgegeben + +ORA-17094=Nicht \u00fcbereinstimmende Objekttyp-Version + +ORA-17095=Gr\u00f6\u00dfe von Anweisungs-Cache wurde nicht festgelegt + +ORA-17096=Anweisungs-Caching kann f\u00fcr diese logische Verbindung nicht aktiviert werden. + +ORA-17097=Ung\u00fcltiger PL/SQL-Indextabellen-Elementtyp + +ORA-17098=Ung\u00fcltiger leerer LOB-Vorgang + +ORA-17099=Ung\u00fcltige Array-L\u00e4nge bei PL/SQL-Indextabelle + +ORA-17100=Ung\u00fcltiges Java-Datenbankobjekt + +ORA-17101=Ung\u00fcltige Attribute in Objekt von OCI-Verbindungs-Pool + +ORA-17102=Bfile ist schreibgesch\u00fctzt + +ORA-17103=Ung\u00fcltige Verbindungsart zur R\u00fcckgabe \u00fcber getConnection. Verwenden Sie stattdessen getJavaSqlConnection + +ORA-17104=SQL-Anweisung zur Ausf\u00fchrung darf nicht leer oder null sein + +ORA-17105=Zeitzone f\u00fcr Verbindungs-Session nicht festgelegt + +ORA-17106=Ung\u00fcltige Konfiguration von Verbindungs-Pool von JDBC-OCI-Treiber angegeben + +ORA-17107=Ung\u00fcltiger Proxy-Typ angegeben + +ORA-17108=Keine max. L\u00e4nge in defineColumnType angegeben + +ORA-17109=Java-Standardzeichen-Codierung nicht gefunden + +ORA-17110=Ausf\u00fchrung mit Warnung abgeschlossen + +ORA-17111=Ung\u00fcltige TTL-Zeit\u00fcberschreitung bei Verbindungs-Cache angegeben + +ORA-17112=Ung\u00fcltiges Thread-Intervall angegeben + +ORA-17113=Wert von Thread-Intervall ist gr\u00f6\u00dfer als Cache-Zeit\u00fcberschreitungswert + +ORA-17114=Lokales Transaktions-Commit konnte in einer globalen Transaktion nicht benutzt werden + +ORA-17115=Lokales Transaktions-Rollback konnte in einer globalen Transaktion nicht benutzt werden + +ORA-17116=Auto-Commit konnte in einer aktiven globalen Transaktion nicht eingeschaltet werden + +ORA-17117=Savepoint konnte in einer aktiven globalen Transaktion nicht gesetzt werden + +ORA-17118=ID f\u00fcr einen benannten Savepoint + +ORA-17119=Name f\u00fcr einen unbenannten Savepoint konnte nicht abgerufen werden + +ORA-17120=Ein Savepoint konnte bei eingeschaltetem Auto-Commit nicht gesetzt werden. + +ORA-17121=Rollback zu einem Savepoint bei eingeschaltetem Auto-Commit nicht m\u00f6glich + +ORA-17122=Rollback zu einem lokalen Txn-Savepoint in einer globalen Transaktion nicht m\u00f6glich + +ORA-17123=Ung\u00fcltige Gr\u00f6\u00dfe von Anweisungs-Cache angegeben + +ORA-17124=Ung\u00fcltige Inaktivit\u00e4ts-Zeit\u00fcberschreitung f\u00fcr Verbindungs-Cache angegeben + +ORA-17200=Zeichenfolge f\u00fcr \u00d6ffnen von XA kann nicht richtig von Java in C konvertiert werden + +ORA-17201=Zeichenfolge f\u00fcr Schlie\u00dfen von XA kann nicht richtig von Java in C konvertiert werden + +ORA-17202=RM-Name kann nicht richtig von Java in C konvertiert werden + +ORA-17203=Summierungs-Pointer-Typ konnte nicht in jlong konvertiert werden + +ORA-17204=Eingabe-Array zu kurz zur Aufnahme von OCI-Handles + +ORA-17205=OCISvcCtx-Handle konnte nicht aus C-XA mit xaoSvcCtx abgerufen werden + +ORA-17206=OCIEnv-Handle konnte nicht aus C-XA mit xaoEnv abgerufen werden + +ORA-17207=Das Attribut tnsEntry wurde in DataSource nicht festgelegt + +ORA-17213=C-XA hat XAER_RMERR w\u00e4hrend xa_open zur\u00fcckgegeben + +ORA-17215=C-XA hat XAER_INVAL w\u00e4hrend xa_open zur\u00fcckgegeben + +ORA-17216=C-XA hat XAER_PROTO w\u00e4hrend xa_open zur\u00fcckgegeben + +ORA-17233=C-XA hat XAER_RMERR w\u00e4hrend xa_close zur\u00fcckgegeben + +ORA-17235=C-XA hat XAER_INVAL w\u00e4hrend xa_close zur\u00fcckgegeben + +ORA-17236=C-XA hat XAER_PROTO w\u00e4hrend xa_close zur\u00fcckgegeben + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokollverletzung + +ORA-17402=Nur eine RPA-Meldung wird erwartet + +ORA-17403=Nur eine RXH-Meldung wird erwartet + +ORA-17404=Mehr RXDs empfangen als erwartet + +ORA-17405=UAC-L\u00e4nge ist nicht null + +ORA-17406=Maximale Pufferl\u00e4nge wird \u00fcberschritten + +ORA-17407=Ung\u00fcltige Typdarstellung(setRep) + +ORA-17408=Ung\u00fcltige Typdarstellung(getRep) + +ORA-17409=Ung\u00fcltige Pufferl\u00e4nge + +ORA-17410=Keine weiteren Daten aus Socket zu lesen + +ORA-17411=Datentypdarstellungen stimmen nicht \u00fcberein + +ORA-17412=Typl\u00e4nge gr\u00f6\u00dfer als H\u00f6chstwert + +ORA-17413=Schl\u00fcsselgr\u00f6\u00dfe wird \u00fcberschritten + +ORA-17414=Nicht ausreichende Puffergr\u00f6\u00dfe zum Speichern von Spaltennamen + +ORA-17415=Dieser Typ wurde nicht verarbeitet + +ORA-17416=FATAL + +ORA-17417=NLS-Problem, Spaltennamen konnten nicht entschl\u00fcsselt werden + +ORA-17418=Fehler bei Feldl\u00e4nge von interner Struktur + +ORA-17419=Ung\u00fcltige Anzahl von Spalten zur\u00fcckgegeben + +ORA-17420=Oracle-Version nicht definiert + +ORA-17421=Typen oder Verbindung nicht definiert + +ORA-17422=Ung\u00fcltige Klasse in Factory + +ORA-17423=PLSQL-Block ohne Definition von IOV benutzt + +ORA-17424=Anderer Marshaling-Vorgang wird versucht + +ORA-17425=Stream wird in PLSQL-Block zur\u00fcckgegeben + +ORA-17426=Sowohl IN- als auch OUT-Bindevorg\u00e4nge sind NULL + +ORA-17427=Nicht initialisierter OAC benutzt + +ORA-17428=Anmeldung mu\u00df nach Verbindung aufgerufen werden + +ORA-17429=Mindestens Verbindung zum Server mu\u00df hergestellt sein + +ORA-17430=Anmeldung beim Server mu\u00df erfolgt sein + +ORA-17431=Zu analysierende SQL-Anweisung ist null + +ORA-17432=Ung\u00fcltige Optionen in all7 + +ORA-17433=Ung\u00fcltige Argumente in Aufruf + +ORA-17434=Nicht in Streaming-Modus + +ORA-17435=Ung\u00fcltige Anzahl von in_out_binds in IOV + +ORA-17436=Ung\u00fcltige Anzahl von Out-Bindevorg\u00e4ngen + +ORA-17437=Fehler in IN/OUT-Argument(en) von PLSQL-Block + +ORA-17438=Intern - Unerwarteter Wert + +ORA-17439=Ung\u00fcltiger SQL-Typ + +ORA-17440=DBItem/DBType ist null + +ORA-17441=Oracle-Version nicht unterst\u00fctzt. Minimale unterst\u00fctzte Version ist 7.2.3. + +ORA-17442=Wert von Ref-Cursor ist ung\u00fcltig + +ORA-17443=Keine Benutzer- oder Kennwortangabe in THIN-Treiber nicht unterst\u00fctzt + +ORA-17444=Vom Server empfangene TTC-Protokollversion nicht unterst\u00fctzt + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/70412c1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/70412c1a98af001c18c4935e001381da new file mode 100644 index 0000000..8db48b6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/70412c1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/909bb37483a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/909bb37483a9001c1d3abf97745a02da new file mode 100644 index 0000000..4c9047e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/909bb37483a9001c1d3abf97745a02da @@ -0,0 +1,124 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/e0a0bb1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/e0a0bb1598af001c18c4935e001381da new file mode 100644 index 0000000..2c25d96 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/e0a0bb1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8c/003351234daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8c/003351234daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..d7c51ae --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8c/003351234daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,194 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + int resultatConfirmation; + while(JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION) == 0){ + conn.dispose(); + } +// if(jo == 0){ +// System.out.print("Bouton"); +// } +// else{ +// System.out.print("Pas bouton"); +// } +// conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8c/504ff04381a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8c/504ff04381a9001c1d3abf97745a02da new file mode 100644 index 0000000..d7a9cba --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8c/504ff04381a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Importation de la fentre de Connexion +import fr.blankoworld.ihm.*; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + new Connexion(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8c/f01eb9ec03af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8c/f01eb9ec03af001c14499bdcdfff58b3 new file mode 100644 index 0000000..8fba466 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8c/f01eb9ec03af001c14499bdcdfff58b3 @@ -0,0 +1,215 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8d/d005c264fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8d/d005c264fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..6b5fc18 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8d/d005c264fea3001c1027e59cc3e35e89 @@ -0,0 +1,40 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + // Fermer la base de donne + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8d/d007571498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8d/d007571498af001c18c4935e001381da new file mode 100644 index 0000000..37284cf Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8d/d007571498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/10a926e804af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/10a926e804af001c14499bdcdfff58b3 new file mode 100644 index 0000000..dd3acc9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/10a926e804af001c14499bdcdfff58b3 @@ -0,0 +1,149 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + + + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + + if(connection!=null){ + try{connection.close(); + + System.out.println("## Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/50d290d7c4a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/50d290d7c4a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..8ecdfcd --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/50d290d7c4a4001c1acc9f54b60f9b57 @@ -0,0 +1,48 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel(); + JLabel jlabelPort = new JLabel(); + JLabel jlabelBase = new JLabel(); + JLabel jlabelIdentifiant = new JLabel(); + JLabel jlabelMdp = new JLabel(); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/6056221a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/6056221a98af001c18c4935e001381da new file mode 100644 index 0000000..d142582 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/6056221a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/60f6f19601af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/60f6f19601af001c14499bdcdfff58b3 new file mode 100644 index 0000000..c58a6c9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/60f6f19601af001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n" + connection.getClientInfo(Driver); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/80efdd1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/80efdd1898af001c18c4935e001381da new file mode 100644 index 0000000..962b3bd Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/80efdd1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/a0326c1398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/a0326c1398af001c18c4935e001381da new file mode 100644 index 0000000..b161090 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/a0326c1398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/c0fbef1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/c0fbef1998af001c18c4935e001381da new file mode 100644 index 0000000..d42ff08 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/c0fbef1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/e00f24b247aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/e00f24b247aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..4849469 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8e/e00f24b247aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,130 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8f/40fa7e8f7aa9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8f/40fa7e8f7aa9001c1d3abf97745a02da new file mode 100644 index 0000000..3c106b5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8f/40fa7e8f7aa9001c1d3abf97745a02da @@ -0,0 +1,103 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8f/6054cf1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8f/6054cf1998af001c18c4935e001381da new file mode 100644 index 0000000..ccc3866 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8f/6054cf1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8f/f059900ccda4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8f/f059900ccda4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..b4c6816 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8f/f059900ccda4001c1acc9f54b60f9b57 @@ -0,0 +1,95 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche, FlowLayout.LEFT); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9/0044161698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9/0044161698af001c18c4935e001381da new file mode 100644 index 0000000..76ac0d2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9/0044161698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9/b058487d04a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9/b058487d04a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..c267615 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9/b058487d04a4001c1027e59cc3e35e89 @@ -0,0 +1,74 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9/f0345c88ffae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9/f0345c88ffae001c14499bdcdfff58b3 new file mode 100644 index 0000000..fbf2672 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9/f0345c88ffae001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte."; + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/90/3031921398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/90/3031921398af001c18c4935e001381da new file mode 100644 index 0000000..71e4e42 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/90/3031921398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/91/b025a41998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/91/b025a41998af001c18c4935e001381da new file mode 100644 index 0000000..0a05410 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/91/b025a41998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/91/e0d26f587aa9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/91/e0d26f587aa9001c1d3abf97745a02da new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/91/e0feb01e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/91/e0feb01e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..73a1168 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/91/e0feb01e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Erro Interno + +ORA-17002=Exce\u00e7\u00e3o de E/S + +ORA-17003=\u00cdndice de coluna inv\u00e1lido + +ORA-17004=Tipo de coluna inv\u00e1lido + +ORA-17005=Tipo de coluna n\u00e3o suportado + +ORA-17006=Nome de coluna inv\u00e1lido + +ORA-17007=Coluna din\u00e2mica inv\u00e1lida + +ORA-17008=Conex\u00e3o Fechada + +ORA-17009=Instru\u00e7\u00e3o Fechada + +ORA-17010=Conjunto de Resultados Fechado + +ORA-17011=Conjunto de Resultados Esgotado + +ORA-17012=Conflito de Tipo de Par\u00e2metro + +ORA-17014=ResultSet.next n\u00e3o foi chamado + +ORA-17015=Instru\u00e7\u00e3o cancelada + +ORA-17016=Instru\u00e7\u00e3o sofreu timeout + +ORA-17017=Cursor j\u00e1 foi inicializado + +ORA-17018=Cursor inv\u00e1lido + +ORA-17019=S\u00f3 pode descrever uma consulta + +ORA-17020=Pr\u00e9-extra\u00e7\u00e3o de linha inv\u00e1lida + +ORA-17021=Defini\u00e7\u00f5es ausentes + +ORA-17022=Defini\u00e7\u00f5es ausentes no \u00edndice + +ORA-17023=Recurso n\u00e3o suportado + +ORA-17024=Sem leitura de dados + +ORA-17025=Erro em defines.isNull () + +ORA-17026=Overflow Num\u00e9rico + +ORA-17027=Stream j\u00e1 foi fechado + +ORA-17028=N\u00e3o \u00e9 poss\u00edvel criar novas defini\u00e7\u00f5es at\u00e9 que o Conjunto de Resultados seja fechado + +ORA-17029=setReadOnly: Conex\u00f5es somente para leitura n\u00e3o s\u00e3o suportadas + +ORA-17030=READ_COMMITTED e SERIALIZABLE s\u00e3o os \u00fanicos n\u00edveis de transa\u00e7\u00e3o v\u00e1lidos + +ORA-17031=setAutoClose: Suporta apenas o modo de fechamento autom\u00e1tico ativo + +ORA-17032=n\u00e3o \u00e9 poss\u00edvel definir pr\u00e9-extra\u00e7\u00e3o de linha como zero + +ORA-17033=String SQL92 incorreta na posi\u00e7\u00e3o + +ORA-17034=Token SQL92 n\u00e3o suportado na posi\u00e7\u00e3o + +ORA-17035=Conjunto de Caracteres N\u00e3o Suportado! + +ORA-17036=exce\u00e7\u00e3o em OracleNumber + +ORA-17037=Falha ao fazer convers\u00e3o entre UTF8 e UCS2 + +ORA-17038=Array de byte n\u00e3o \u00e9 suficientemente longo + +ORA-17039=Array de caractere n\u00e3o \u00e9 suficientemente longo + +ORA-17040=Subprotocolo deve ser especificado no URL de conex\u00e3o + +ORA-17041=Par\u00e2metro IN ou OUT ausente do \u00edndice: + +ORA-17042=Valor de Lote Inv\u00e1lido + +ORA-17043=Tamanho m\u00e1ximo de stream inv\u00e1lido + +ORA-17044=Erro interno: Array de dados n\u00e3o alocado + +ORA-17045=Erro interno: Tentativa de acessar valores de liga\u00e7\u00e3o ultrapassa o valor do lote + +ORA-17046=Erro interno: \u00cdndice inv\u00e1lido para acesso a dados + +ORA-17047=Erro na an\u00e1lise do Descritor de Tipo + +ORA-17048=Tipo indefinido + +ORA-17049=Tipos de objeto java e sql inconsistentes + +ORA-17050=n\u00e3o existe esse elemento no vetor + +ORA-17051=Esta API n\u00e3o pode ser usada para tipos n\u00e3o-UDT + +ORA-17052=Esta refer\u00eancia n\u00e3o \u00e9 v\u00e1lida + +ORA-17053=Este tamanho n\u00e3o \u00e9 v\u00e1lido + +ORA-17054=Este localizador de LOB n\u00e3o \u00e9 v\u00e1lido + +ORA-17055=Caractere inv\u00e1lido encontrado em + +ORA-17056=Conjunto de caracteres n\u00e3o suportado + +ORA-17057=LOB fechado + +ORA-17058=Erro interno: Raz\u00e3o de Convers\u00e3o NLS inv\u00e1lida + +ORA-17059=Falha ao converter para representa\u00e7\u00e3o interna + +ORA-17060=Falha ao construir descritor + +ORA-17061=Descritor ausente + +ORA-17062=Cursor de refer\u00eancia \u00e9 inv\u00e1lido + +ORA-17063=N\u00e3o \u00e9 uma transa\u00e7\u00e3o + +ORA-17064=Sintaxe Inv\u00e1lida ou nome de Banco de Dados \u00e9 nulo + +ORA-17065=Classe de convers\u00e3o \u00e9 nula + +ORA-17066=\u00c9 necess\u00e1ria uma implementa\u00e7\u00e3o espec\u00edfica para a camada de acesso + +ORA-17067=URL Oracle Inv\u00e1lido especificado + +ORA-17068=Argumento(s) inv\u00e1lido(s) na chamada + +ORA-17069=Use chamada XA expl\u00edcita + +ORA-17070=Tamanho dos dados maior que o tamanho m\u00e1ximo para este tipo + +ORA-17071=Limite m\u00e1ximo de VARRAY excedido + +ORA-17072=Valor inserido grande demais para a coluna + +ORA-17073=Handle l\u00f3gico n\u00e3o \u00e9 mais v\u00e1lido + +ORA-17074=padr\u00e3o de nome inv\u00e1lido + +ORA-17075=Opera\u00e7\u00e3o inv\u00e1lida para encaminhar apenas conjunto de resultados + +ORA-17076=Opera\u00e7\u00e3o inv\u00e1lida para ler apenas conjunto de resultados + +ORA-17077=Falha ao definir o valor REF + +ORA-17078=N\u00e3o foi poss\u00edvel realizar a opera\u00e7\u00e3o uma vez que as conex\u00f5es j\u00e1 est\u00e3o abertas + +ORA-17079=As credenciais de usu\u00e1rio n\u00e3o correspondem \u00e0s existentes + +ORA-17080=comando de lote inv\u00e1lido + +ORA-17081=ocorreu um erro durante a forma\u00e7\u00e3o do lote + +ORA-17082=Nenhuma linha atual + +ORA-17083=Fora da linha de inser\u00e7\u00e3o + +ORA-17084=Chamada na linha de inser\u00e7\u00e3o + +ORA-17085=Conflitos de valores + +ORA-17086=Valor de coluna indefinido na linha de inser\u00e7\u00e3o + +ORA-17087=Dica de desempenho ignorada: setFetchDirection() + +ORA-17088=Sintaxe n\u00e3o suportada para o tipo de conjunto de resultados e o n\u00edvel de concorr\u00eancia solicitados +ORA-17089=erro interno + +ORA-17090=opera\u00e7\u00e3o n\u00e3o permitida + +ORA-17091=N\u00e3o foi poss\u00edvel criar conjunto de resultados no tipo e/ou n\u00edvel de concorr\u00eancia solicitados + +ORA-17092=Instru\u00e7\u00f5es JDBC n\u00e3o podem ser criadas ou executadas no final do processamento da chamada + +ORA-17093=Opera\u00e7\u00e3o OCI retornou OCI_SUCCESS_WITH_INFO + +ORA-17094=Vers\u00e3o do tipo de objeto inv\u00e1lida + +ORA-17095=O tamanho do cache de instru\u00e7\u00f5es n\u00e3o foi definido + +ORA-17096=O Cache de Instru\u00e7\u00f5es n\u00e3o est\u00e1 ativado para esta conex\u00e3o l\u00f3gica. + +ORA-17097=Tipo de elemento de Tabela de \u00cdndice PL/SQL inv\u00e1lido + +ORA-17098=Opera\u00e7\u00e3o de lob vazio inv\u00e1lida + +ORA-17099=Tamanho de array de Tabela de \u00cdndice de PL/SQL inv\u00e1lido + +ORA-17100=Objeto Java de banco de dados inv\u00e1lido + +ORA-17101=Propriedades inv\u00e1lidas no Objeto Pool de Conex\u00f5es OCI + +ORA-17102=Bfile \u00e9 somente para leitura + +ORA-17103=Tipo de conex\u00e3o inv\u00e1lido a ser retornado via getConnection. Use, em vez disso, getJavaSqlConnection + +ORA-17104=A instru\u00e7\u00e3o SQL a ser executada n\u00e3o pode ser vazia ou nula + +ORA-17105=o fuso hor\u00e1rio da sess\u00e3o de conex\u00e3o n\u00e3o foi definido + +ORA-17106=configura\u00e7\u00e3o inv\u00e1lida especificada para o pool de conex\u00e3o do driver OCI JDBC + +ORA-17107=tipo de proxy inv\u00e1lido especificado + +ORA-17108=Tamanho m\u00e1ximo n\u00e3o especificado em defineColumnType + +ORA-17109=codifica\u00e7\u00e3o de caractere Java padr\u00e3o n\u00e3o encontrada + +ORA-17110=execu\u00e7\u00e3o conclu\u00edda com advert\u00eancia + +ORA-17111=Timeout TTL inv\u00e1lido especificado para o cache de conex\u00e3o + +ORA-17112=Intervalo inv\u00e1lido especificado para o thread + +ORA-17113=O valor do intervalo de thread \u00e9 maior que o valor de timeout do cache + +ORA-17114=n\u00e3o foi poss\u00edvel usar o commit de transa\u00e7\u00e3o local em uma transa\u00e7\u00e3o global + +ORA-17115=n\u00e3o foi poss\u00edvel usar o rollback de transa\u00e7\u00e3o local em uma transa\u00e7\u00e3o global + +ORA-17116=n\u00e3o foi poss\u00edvel ativar o commit autom\u00e1tico em uma transa\u00e7\u00e3o global ativa + +ORA-17117=n\u00e3o foi poss\u00edvel definir o ponto de salvamento em uma transa\u00e7\u00e3o global ativa + +ORA-17118=n\u00e3o foi poss\u00edvel obter o ID de um Ponto de Salvamento nomeado + +ORA-17119=n\u00e3o foi poss\u00edvel obter o nome de um Ponto de Salvamento n\u00e3o-nomeado + +ORA-17120=n\u00e3o foi poss\u00edvel definir um Ponto de Salvamento com o commit autom\u00e1tico ativado + +ORA-17121=n\u00e3o foi poss\u00edvel executar rollback para um Ponto de Salvamento com o commit autom\u00e1tico ativado + +ORA-17122=n\u00e3o foi poss\u00edvel executar rollback para um Ponto de Salvamento de trans. local em uma transa\u00e7\u00e3o global + +ORA-17123=O tamanho do cache de instru\u00e7\u00f5es especificado \u00e9 inv\u00e1lido + +ORA-17124=O timeout de Inatividade especificado para o cache de conex\u00e3o \u00e9 inv\u00e1lido + +ORA-17200=N\u00e3o foi poss\u00edvel converter adequadamente a string de abertura XA de Java para C + +ORA-17201=N\u00e3o foi poss\u00edvel converter adequadamente a string de fechamento XA de Java para C + +ORA-17202=N\u00e3o foi poss\u00edvel converter adequadamente o nome RM de Java para C + +ORA-17203=N\u00e3o foi poss\u00edvel transmitir o tipo de ponteiro para jlong + +ORA-17204=Array de entrada muito pequeno para conter handles OCI + +ORA-17205=Falha ao obter handle OCISvcCtx de C-XA usando xaoSvcCtx + +ORA-17206=Falha ao obter handle OCIEnv de C-XA usando xaoEnv + +ORA-17207=A propriedade tnsEntry n\u00e3o foi definida na Origem de Dados + +ORA-17213=C-XA retornou XAER_RMERR durante xa_open + +ORA-17215=C-XA retornou XAER_INVAL durante xa_open + +ORA-17216=C-XA retornou XAER_PROTO durante xa_open + +ORA-17233=C-XA retornou XAER_RMERR durante xa_close + +ORA-17235=C-XA retornou XAER_INVAL durante xa_close + +ORA-17236=C-XA retornou XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Viola\u00e7\u00e3o de protocolo + +ORA-17402=\u00c9 esperada apenas uma mensagem RPA + +ORA-17403=\u00c9 esperada apenas uma mensagem RXH + +ORA-17404=Recebidos mais RXDs do que o esperado + +ORA-17405=Tamanho UAC n\u00e3o \u00e9 zero + +ORA-17406=Excedendo tamanho m\u00e1ximo do buffer + +ORA-17407=Representa\u00e7\u00e3o (setRep) de tipo inv\u00e1lida + +ORA-17408=Representa\u00e7\u00e3o (setRep) de tipo inv\u00e1lida + +ORA-17409=tamanho do buffer inv\u00e1lido + +ORA-17410=N\u00e3o ser\u00e3o lidos mais dados do soquete + +ORA-17411=Incompatibilidade de representa\u00e7\u00f5es de Tipo de Dados + +ORA-17412=Tamanho de tipo maior que o M\u00e1ximo + +ORA-17413=Tamanho de chave excede + +ORA-17414=Tamanho de Buffer Insuficiente para armazenar Nomes de Colunas + +ORA-17415=Este tipo n\u00e3o foi manipulado + +ORA-17416=FATAL + +ORA-17417=Problema de NLS; falha ao decodificar nomes de colunas + +ORA-17418=Erro de tamanho do campo de estrutura interna + +ORA-17419=N\u00famero inv\u00e1lido de colunas retornado + +ORA-17420=Vers\u00e3o do Oracle n\u00e3o foi definida + +ORA-17421=Tipos ou Conex\u00e3o n\u00e3o foi(ram) definido(s) + +ORA-17422=Classe inv\u00e1lida no factory + +ORA-17423=Usando um bloco PLSQL sem um IOV (I/O vector) definido + +ORA-17424=Tentando outra opera\u00e7\u00e3o de marshaling + +ORA-17425=Retornando um stream no bloco PLSQL + +ORA-17426=As liga\u00e7\u00f5es IN e OUT s\u00e3o NULL + +ORA-17427=Usando OAC N\u00e3o-Inicializado + +ORA-17428=Logon deve ser chamado ap\u00f3s conex\u00e3o + +ORA-17429=Deve estar pelo menos conectado ao servidor + +ORA-17430=Deve ter estabelecido logon no servidor + +ORA-17431=Instru\u00e7\u00e3o SQL a ser analisada \u00e9 nula + +ORA-17432=op\u00e7\u00f5es inv\u00e1lidas em all7 + +ORA-17433=argumentos inv\u00e1lidos na chamada + +ORA-17434=n\u00e3o est\u00e1 no modo de stream + +ORA-17435=n\u00famero inv\u00e1lido de in_out_binds no IOV + +ORA-17436=n\u00famero inv\u00e1lido para liga\u00e7\u00f5es externas + +ORA-17437=Erro no(s) argumento(s) IN/OUT do bloco PLSQL + +ORA-17438=Interno - Valor inesperado + +ORA-17439=Tipo SQL inv\u00e1lido + +ORA-17440=DBItem/DBType \u00e9 nulo + +ORA-17441=Vers\u00e3o do Oracle n\u00e3o \u00e9 suportada. A vers\u00e3o m\u00ednima suportada \u00e9 7.2.3. + +ORA-17442=Valor do cursor de refer\u00eancia \u00e9 inv\u00e1lido + +ORA-17443=Usu\u00e1rio nulo ou senha n\u00e3o suportada no driver THIN + +ORA-17444=Vers\u00e3o do Protocolo TTC recebida do servidor n\u00e3o \u00e9 suportada + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/307a6b1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/307a6b1498af001c18c4935e001381da new file mode 100644 index 0000000..1737637 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/307a6b1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/30b8251798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/30b8251798af001c18c4935e001381da new file mode 100644 index 0000000..38b2cfb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/30b8251798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/30ea931b08af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/30ea931b08af001c14499bdcdfff58b3 new file mode 100644 index 0000000..0910360 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/30ea931b08af001c14499bdcdfff58b3 @@ -0,0 +1,161 @@ +package fr.blankoworld.connexionBDD; + +import java.awt.List; +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + DatabaseMetaData metaData; + List listTables = new List(10); + + metaData = connection.getMetaData(); + String[] types = { "TABLE", "VIEW" }; + ResultSet rs = metaData.getTables( null, null, "%", types ); + String nomTable; + while ( rs.next() ) { + nomTable = rs.getString( 3 ); + listeTables.add( nomTable ); + } + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/50c0901598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/50c0901598af001c18c4935e001381da new file mode 100644 index 0000000..87ebbcf Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/50c0901598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/50ff6e42c7a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/50ff6e42c7a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..3a2b271 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/50ff6e42c7a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + JOptionPane.showOptionDialog(null, "Message d'essai", "Configuration", 1, 1, Icon, jlabelBase, "Valeur initiale") + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/a0bc1fd300a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/a0bc1fd300a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..a05cf6d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/a0bc1fd300a4001c1027e59cc3e35e89 @@ -0,0 +1,55 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.prepareStatement(SELECT NOM, PRENOM FROM ENSEIGNANTS); + ResultSet resultSet = connection.prepareStatement(""); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/c076af1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/c076af1698af001c18c4935e001381da new file mode 100644 index 0000000..7c6760c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/c076af1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/d028651e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/d028651e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..74e5424 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/92/d028651e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Bels\u0151 hiba + +ORA-17002=Io kiv\u00e9tel + +ORA-17003=\u00c9rv\u00e9nytelen oszlopindex + +ORA-17004=\u00c9rv\u00e9nytelen oszlopt\u00edpus + +ORA-17005=Nem t\u00e1mogatott oszlopt\u00edpus + +ORA-17006=\u00c9rv\u00e9nytelen oszlopn\u00e9v + +ORA-17007=\u00c9rv\u00e9nytelen dinamikus oszlop + +ORA-17008=Bez\u00e1rt kapcsolat + +ORA-17009=Bez\u00e1rt utas\u00edt\u00e1s + +ORA-17010=Bez\u00e1rt eredm\u00e9nyhalmaz + +ORA-17011=Kimer\u00fclt eredm\u00e9nyhalmaz + +ORA-17012=Param\u00e9tert\u00edpus-\u00fctk\u00f6z\u00e9s + +ORA-17014=A ResultSet.next nem ker\u00fclt megh\u00edv\u00e1sra. + +ORA-17015=Az utas\u00edt\u00e1s v\u00e9grehajt\u00e1sa meg lett szak\u00edtva. + +ORA-17016=Az utas\u00edt\u00e1s v\u00e9grehajt\u00e1sa id\u0151t\u00fall\u00e9p\u00e9s miatt meg lett szak\u00edtva. + +ORA-17017=A kurzor m\u00e1r inicializ\u00e1lva van. + +ORA-17018=\u00c9rv\u00e9nytelen kurzor. + +ORA-17019=Csak lek\u00e9rdez\u00e9s \u00edrhat\u00f3 le. + +ORA-17020=\u00c9rv\u00e9nytelen az el\u0151re behozott sorok sz\u00e1ma. + +ORA-17021=Hi\u00e1nyz\u00f3 defin\u00edci\u00f3k + +ORA-17022=Hi\u00e1nyz\u00f3 defin\u00edci\u00f3k a k\u00f6vetkez\u0151 indexn\u00e9l: + +ORA-17023=Nem t\u00e1mogatott tulajdons\u00e1g + +ORA-17024=Nem ker\u00fclt beolvas\u00e1sra adat. + +ORA-17025=Hiba a k\u00f6vetkez\u0151ben: defines.isNull (). + +ORA-17026=Numerikus t\u00falcsordul\u00e1s + +ORA-17027=Az adatfolyam m\u00e1r le van z\u00e1rva. + +ORA-17028=Nem lehet \u00faj defin\u00edci\u00f3t megadni, am\u00edg az aktu\u00e1lis eredm\u00e9nyhalmaz (ResultSet) nincs lez\u00e1rva. + +ORA-17029=setReadOnly: a csak olvashat\u00f3 kapcsolatok nem t\u00e1mogatottak. + +ORA-17030=Csak READ_COMMITTED \u00e9s SERIALIZABLE adhat\u00f3 meg \u00e9rv\u00e9nyes tranzakci\u00f3szintk\u00e9nt. + +ORA-17031=setAutoClose: csak az automatikus bez\u00e1r\u00e1si m\u00f3d bekapcsolt \u00e1llapota haszn\u00e1lhat\u00f3. + +ORA-17032=az el\u0151re behozott sorok sz\u00e1ma nem lehet nulla. + +ORA-17033=Helytelen form\u00e1j\u00fa SQL92 karakterl\u00e1nc a k\u00f6vetkez\u0151 helyen: + +ORA-17034=Nem t\u00e1mogatott SQL92 token a k\u00f6vetkez\u0151 helyen: + +ORA-17035=Nem t\u00e1mogatott karakterk\u00e9szlet. + +ORA-17036=kiv\u00e9tel az OracleNumber elemben + +ORA-17037=Sikertelen a konvert\u00e1l\u00e1s UTF8 \u00e9s UCS2 k\u00f6z\u00f6tt. + +ORA-17038=A b\u00e1jtt\u00f6mb nem el\u00e9g hossz\u00fa. + +ORA-17039=A karaktert\u00f6mb nem el\u00e9g hossz\u00fa. + +ORA-17040=Az alprotokollt meg kell adni a kapcsol\u00f3d\u00e1si URL c\u00edmben. + +ORA-17041=Hi\u00e1nyz\u00f3 IN vagy OUT param\u00e9ter a k\u00f6vetkez\u0151 indexn\u00e9l: + +ORA-17042=\u00c9rv\u00e9nytelen k\u00f6teg\u00e9rt\u00e9k + +ORA-17043=\u00c9rv\u00e9nytelen az adatfolyam maxim\u00e1lis m\u00e9rete. + +ORA-17044=Bels\u0151 hiba: az adatt\u00f6mb helye nincs lefoglalva. + +ORA-17045=Bels\u0151 hiba: a k\u00f6teg\u00e9rt\u00e9ken t\u00fali k\u00f6t\u00e9si \u00e9rt\u00e9kek el\u00e9r\u00e9s\u00e9re t\u00f6rt\u00e9nt k\u00eds\u00e9rlet. + +ORA-17046=Bels\u0151 hiba: \u00e9rv\u00e9nytelen index az adathozz\u00e1f\u00e9r\u00e9shez. + +ORA-17047=Hiba t\u00f6rt\u00e9nt a t\u00edpusle\u00edr\u00f3 elemz\u00e9se k\u00f6zben. + +ORA-17048=Nem defini\u00e1lt t\u00edpus. + +ORA-17049=Nem \u00f6sszeill\u0151 java \u00e9s sql objektumt\u00edpusok. + +ORA-17050=nincs ilyen elem a vektort\u00f6mbben. + +ORA-17051=Ez az API nem haszn\u00e1lhat\u00f3 nem UDT t\u00edpusokhoz. + +ORA-17052=Ez a hivatkoz\u00e1s nem \u00e9rv\u00e9nyes. + +ORA-17053=A m\u00e9ret nem \u00e9rv\u00e9nyes. + +ORA-17054=A LOB helymeghat\u00e1roz\u00f3ja nem \u00e9rv\u00e9nyes. + +ORA-17055=\u00c9rv\u00e9nytelen karakter a k\u00f6vetkez\u0151 helyen: + +ORA-17056=Nem t\u00e1mogatott karakterk\u00e9szlet, + +ORA-17057=Bez\u00e1rt LOB + +ORA-17058=Bels\u0151 hiba: \u00e9rv\u00e9nytelen NLS konverzi\u00f3s ar\u00e1ny. + +ORA-17059=A bels\u0151 \u00e1br\u00e1zol\u00e1sm\u00f3dra val\u00f3 konverzi\u00f3 sikertelen volt. + +ORA-17060=A le\u00edr\u00f3 l\u00e9trehoz\u00e1sa sikertelen volt. + +ORA-17061=Hi\u00e1nyz\u00f3 le\u00edr\u00f3 + +ORA-17062=A hivatkoz\u00e1si kurzor \u00e9rv\u00e9nytelen. + +ORA-17063=Nem szerepel tranzakci\u00f3ban. + +ORA-17064=\u00c9rv\u00e9nytelen szintaxis vagy \u00fcres adatb\u00e1zisn\u00e9v. + +ORA-17065=\u00dcres konverzi\u00f3s oszt\u00e1ly. + +ORA-17066=A hozz\u00e1f\u00e9r\u00e9si r\u00e9tegre jellemz\u0151 implement\u00e1l\u00e1s sz\u00fcks\u00e9ges. + +ORA-17067=\u00c9rv\u00e9nytelen a megadott Oracle URL. + +ORA-17068=\u00c9rv\u00e9nytelen argumentumok a h\u00edv\u00e1s(ok)ban. + +ORA-17069=Explicit XA h\u00edv\u00e1st kell haszn\u00e1lni. + +ORA-17070=Az adatm\u00e9ret nagyobb a t\u00edpusra enged\u00e9lyezett legnagyobb m\u00e9retn\u00e9l. + +ORA-17071=T\u00fall\u00e9pte a VARRAY fels\u0151 hat\u00e1r\u00e1t. + +ORA-17072=A beillesztett \u00e9rt\u00e9k t\u00fal nagy az oszlop sz\u00e1m\u00e1ra. + +ORA-17073=Ez a logikai kezel\u0151 m\u00e1r nem \u00e9rv\u00e9nyes. + +ORA-17074=\u00e9rv\u00e9nytelen n\u00e9vminta + +ORA-17075=\u00c9rv\u00e9nytelen m\u0171velet a csak tov\u00e1bb\u00edthat\u00f3 eredm\u00e9nyk\u00e9szlethez. + +ORA-17076=\u00c9rv\u00e9nytelen m\u0171velet a csak olvashat\u00f3 eredm\u00e9nyk\u00e9szlethez. + +ORA-17077=A REF \u00e9rt\u00e9k be\u00e1ll\u00edt\u00e1sa nem siker\u00fclt. + +ORA-17078=A m\u0171velet nem hajthat\u00f3 v\u00e9gre, mert a kapcsolatok m\u00e1r meg vannak nyitva. + +ORA-17079=A felhaszn\u00e1l\u00f3i azonos\u00edt\u00f3 \u00e9s jelsz\u00f3 nem egyezik a l\u00e9tez\u0151kkel. + +ORA-17080=\u00e9rv\u00e9nytelen k\u00f6tegparancs + +ORA-17081=hiba t\u00f6rt\u00e9nt a k\u00f6tegel\u00e9s sor\u00e1n + +ORA-17082=Nincs aktu\u00e1lis sor. + +ORA-17083=Nincs a beilleszt\u00e9si sorban. + +ORA-17084=H\u00edv\u00e1s \u00e9rkezett a beilleszt\u00e9si sorra. + +ORA-17085=\u00c9rt\u00e9k\u00fctk\u00f6z\u00e9sek t\u00f6rt\u00e9ntek. + +ORA-17086=\u00c9rv\u00e9nytelen oszlop\u00e9rt\u00e9k a beilleszt\u00e9si sorban. + +ORA-17087=Figyelmen k\u00edv\u00fcl hagyott teljes\u00edtm\u00e9nytipp: setFetchDirection() + +ORA-17088=Nem t\u00e1mogatott szintaxis a k\u00e9rt eredm\u00e9nyk\u00e9szlet-t\u00edpushoz \u00e9s konkurenciaszinthez. +ORA-17089=bels\u0151 hiba + +ORA-17090=a m\u0171velet nem enged\u00e9lyezett + +ORA-17091=Nem hozhat\u00f3 l\u00e9tre az eredm\u00e9nyk\u00e9szlet a k\u00e9rt t\u00edpus-, illetve p\u00e1rhuzamoss\u00e1gi szinten. + +ORA-17092=A h\u00edv\u00e1sfeldolgoz\u00e1s v\u00e9g\u00e9n nem hozhat\u00f3k l\u00e9tre \u00e9s nem hajthat\u00f3k v\u00e9gre JDBC utas\u00edt\u00e1sok. + +ORA-17093=Az OCI m\u0171velet OCI_SUCCESS_WITH_INFO \u00e9rt\u00e9kkel t\u00e9rt vissza. + +ORA-17094=Nem egyez\u0151 objektumt\u00edpus-verzi\u00f3k + +ORA-17095=Az utas\u00edt\u00e1s-gyors\u00edt\u00f3 m\u00e9rete nem lett be\u00e1ll\u00edtva. + +ORA-17096=Ehhez a logikai kapcsolathoz nem haszn\u00e1lhat\u00f3 utas\u00edt\u00e1st\u00e1rol\u00e1s. + +ORA-17097=\u00c9rv\u00e9nytelen elemt\u00edpus a PL/SQL-indext\u00e1bl\u00e1ban + +ORA-17098=\u00c9rv\u00e9nytelen \u00fcres lob m\u0171velet + +ORA-17099=\u00c9r\u00e9vnytelen a PL/SQL indext\u00e1blat\u00f6mbj\u00e9nek hossza. + +ORA-17100=\u00c9rv\u00e9nytelen adatb\u00e1zis Java-objektum + +ORA-17101=\u00c9rv\u00e9nytelen tulajdons\u00e1gok tal\u00e1lhat\u00f3k az OCI kapcsolatigy\u0171jt\u0151sor-objektumban. + +ORA-17102=A Bfile csak olvashat\u00f3. + +ORA-17103=A kapcsolati t\u00edpus nem \u00e9rv\u00e9nyes a getConnection met\u00f3duson kereszt\u00fcli visszat\u00e9r\u00e9shez. Haszn\u00e1lja ink\u00e1bb a getJavaSqlConnection met\u00f3dust. + +ORA-17104=A v\u00e9grehajtand\u00f3 SQL-utas\u00edt\u00e1s nem lehet \u00fcres vagy null \u00e9rt\u00e9k\u0171. + +ORA-17105=A kapcsolati munkamenet id\u0151z\u00f3n\u00e1ja nem lett be\u00e1ll\u00edtva. + +ORA-17106=a megadott JDBC-OCI illeszt\u0151program kapcsolatpool-konfigur\u00e1ci\u00f3ja \u00e9rv\u00e9nytelen. + +ORA-17107=\u00e9rv\u00e9nytelen a megadott proxyt\u00edpus + +ORA-17108=A defineColumnType-hoz nincs megadva maxim\u00e1lis hossz\u00fas\u00e1g. + +ORA-17109=az alap\u00e9rtelmezett Java karakterk\u00f3dol\u00e1s nem tal\u00e1lhat\u00f3 + +ORA-17110=a v\u00e9grehajt\u00e1s figyelmeztet\u00e9ssel z\u00e1rult + +ORA-17111=\u00c9rv\u00e9nytelen a kapcsolatgyors\u00edt\u00f3-TTL megadott id\u0151t\u00fall\u00e9p\u00e9se. + +ORA-17112=A sz\u00e1lak megadott k\u00e9sleltet\u00e9si ideje \u00e9rv\u00e9nytelen. + +ORA-17113=A sz\u00e1lak k\u00e9sleltet\u00e9si ideje nagyobb, mint a gyors\u00edt\u00f3t\u00e1r id\u0151t\u00fall\u00e9p\u00e9si ideje. + +ORA-17114=A helyi tranzakci\u00f3-j\u00f3v\u00e1hagy\u00e1s nem haszn\u00e1lhat\u00f3 a glob\u00e1lis tranzakci\u00f3ban. + +ORA-17115=A helyi tranzakci\u00f3-visszag\u00f6rget\u00e9s nem haszn\u00e1lhat\u00f3 a glob\u00e1lis tranzakci\u00f3ban. + +ORA-17116=nem lehetett bekapcsolni az automatikus j\u00f3v\u00e1hagy\u00e1st az egyik akt\u00edv glob\u00e1lis tranzakci\u00f3ban + +ORA-17117=nem lehetett l\u00e9trehozni a ment\u00e9si pontot az egyik akt\u00edv glob\u00e1lis tranzakci\u00f3ban + +ORA-17118=Nem siker\u00fclt azonos\u00edt\u00f3t szerezni az egyik n\u00e9vvel rendelkez\u0151 ment\u00e9si pontnak. + +ORA-17119=Nem siker\u00fclt nevet szerezni az egyik n\u00e9vvel nem rendelkez\u0151 ment\u00e9si pontnak. + +ORA-17120=Nem siker\u00fclt ment\u00e9si pontot be\u00e1ll\u00edtani az automatikus j\u00f3v\u00e1hagy\u00e1s bekapcsolt \u00e1llapota mellett. + +ORA-17121=Nem siker\u00fclt a visszag\u00f6rget\u00e9s az automatikus j\u00f3v\u00e1hagy\u00e1s bekapcsolt \u00e1llapota mellett. + +ORA-17122=Nem siker\u00fclt a visszag\u00f6rget\u00e9s egy helyi txn ment\u00e9si ponthoz az egyik helyi tranzakci\u00f3ban. + +ORA-17123=\u00c9rv\u00e9nytelen utas\u00edt\u00e1sgyors\u00edt\u00f3t\u00e1r-m\u00e9ret lett megadva. + +ORA-17124=\u00c9rv\u00e9nytelen kapcsolatgyors\u00edt\u00f3-inaktivit\u00e1si id\u0151t\u00fall\u00e9p\u00e9s lett megadva. + +ORA-17200=Az XA megnyit\u00e1si karakterl\u00e1ncot nem siker\u00fclt megfelel\u0151en Java-r\u00f3l C-re konvert\u00e1lni. + +ORA-17201=Az XA bez\u00e1r\u00e1si karakterl\u00e1ncot nem siker\u00fclt megfelel\u0151en Java-r\u00f3l C-re konvert\u00e1lni. + +ORA-17202=Az RM nevet nem siker\u00fclt megfelel\u0151en Java-r\u00f3l C-re konvert\u00e1lni. + +ORA-17203=A mutat\u00f3t\u00edpust nem siker\u00fclt jlong t\u00edpusra m\u00f3dos\u00edtani. + +ORA-17204=A beviteli t\u00f6mb t\u00fal r\u00f6vid az OCI kezel\u0151k t\u00e1rol\u00e1s\u00e1hoz. + +ORA-17205=Nem siker\u00fclt az OCISvcCtx kezel\u0151 xaoSvcCtx \u00e1ltali bek\u00e9r\u00e9se az C-XA elemt\u0151l. + +ORA-17206=Nem siker\u00fclt az OCIEnv kezel\u0151 xaoEnv \u00e1ltali bek\u00e9r\u00e9se az C-XA elemt\u0151l. + +ORA-17207=A tnsEntry tulajdons\u00e1g nem lett be\u00e1ll\u00edtva a DataSource elemn\u00e9l. + +ORA-17213=A C-XA XAER_RMERR hiba\u00fczenetet adott vissza az xa_open v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17215=A C-XA XAER_INVAL hiba\u00fczenetet adott vissza az xa_open v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17216=A C-XA XAER_PROTO hiba\u00fczenetet adott vissza az xa_open v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17233=A C-XA XAER_RMERR hiba\u00fczenetet adott vissza az xa_close v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17235=A C-XA XAER_INVAL hiba\u00fczenetet adott vissza az xa_close v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17236=A C-XA XAER_PROTO hiba\u00fczenetet adott vissza az xa_close v\u00e9grehajt\u00e1sa k\u00f6zben. + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokoll megs\u00e9rt\u00e9se + +ORA-17402=Csak egy RPA \u00fczenet \u00e9rkez\u00e9s\u00e9re sz\u00e1m\u00edt. + +ORA-17403=Csak egy RXH \u00fczenet \u00e9rkez\u00e9s\u00e9re sz\u00e1m\u00edt. + +ORA-17404=A v\u00e1rtn\u00e1l t\u00f6bb RXD \u00e9rkezett. + +ORA-17405=Az UAC hossza nem nulla. + +ORA-17406=T\u00fall\u00e9pte a maxim\u00e1lis pufferm\u00e9retet. + +ORA-17407=\u00e9rv\u00e9nytelen t\u00edpus\u00e1br\u00e1zol\u00e1s(setRep) + +ORA-17408=\u00e9rv\u00e9nytelen t\u00edpus\u00e1br\u00e1zol\u00e1s(getRep) + +ORA-17409=\u00e9rv\u00e9nytelen pufferhossz + +ORA-17410=Nem olvashat\u00f3 t\u00f6bb adat a programcsatorn\u00e1r\u00f3l. + +ORA-17411=Az adatt\u00edpusok \u00e1br\u00e1zol\u00e1si m\u00f3dja nem egyezik. + +ORA-17412=A megengedettn\u00e9l nagyobb a t\u00edpushossz. + +ORA-17413=T\u00fall\u00e9pte a kulcs m\u00e9ret\u00e9t. + +ORA-17414=A puffer m\u00e9rete nem el\u00e9gs\u00e9ges az oszlopnevek t\u00e1rol\u00e1s\u00e1hoz. + +ORA-17415=Ennek a t\u00edpusnak a kezel\u00e9se nem t\u00f6rt\u00e9nt meg. + +ORA-17416=FATAL + +ORA-17417=NLS probl\u00e9ma, az oszlopnevek dek\u00f3dol\u00e1sa nem siker\u00fclt. + +ORA-17418=Hiba a bels\u0151 strukt\u00fara mez\u0151hossz\u00e1ban. + +ORA-17419=\u00c9rv\u00e9nytelen sz\u00e1m\u00fa oszlopot kapott vissza a rendszer. + +ORA-17420=Az Oracle verzi\u00f3sz\u00e1ma nincs megadva. + +ORA-17421=A t\u00edpusok vagy a kapcsol\u00f3d\u00e1s nincs defini\u00e1lva. + +ORA-17422=\u00c9rv\u00e9nytelen oszt\u00e1ly a factory-ban. + +ORA-17423=PLSQL blokk haszn\u00e1lata IOV defini\u00e1l\u00e1sa n\u00e9lk\u00fcl + +ORA-17424=K\u00eds\u00e9rlet k\u00fcl\u00f6nb\u00f6z\u0151 rendez\u0151m\u0171veletek v\u00e9grehajt\u00e1s\u00e1ra. + +ORA-17425=Folyam visszaad\u00e1sa egy PLSQL blokkban + +ORA-17426=Az IN \u00e9s OUT param\u00e9terek egyar\u00e1nt NULL \u00e9rt\u00e9k\u0171ek. + +ORA-17427=Nem inicializ\u00e1lt OAC haszn\u00e1lata + +ORA-17428=A bejelentkez\u00e9st a kapcsol\u00f3d\u00e1s ut\u00e1n kell megh\u00edvni. + +ORA-17429=Legal\u00e1bb kapcsol\u00f3dni kell egy kiszolg\u00e1l\u00f3hoz. + +ORA-17430=Be kell jelentkezni egy kiszolg\u00e1l\u00f3ra. + +ORA-17431=Az elemezni k\u00edv\u00e1nt SQL utas\u00edt\u00e1s NULL \u00e9rt\u00e9k\u0171. + +ORA-17432=\u00e9rv\u00e9nytelen opci\u00f3k a h\u00edv\u00e1sban + +ORA-17433=\u00e9rv\u00e9nytelen argumentumok a h\u00edv\u00e1sban + +ORA-17434=nem folyamkezel\u0151 \u00fczemm\u00f3dban van. + +ORA-17435=\u00e9rv\u00e9nytelen az in_out_binds sz\u00e1m az IOV-ben. + +ORA-17436=\u00e9rv\u00e9nytelen a kimen\u0151 param\u00e9terek (outbinds) sz\u00e1ma. + +ORA-17437=Hiba a PLSQL blokk bemeneti, illetve kimeneti argumentumaiban. + +ORA-17438=Bels\u0151 - V\u00e1ratlan \u00e9rt\u00e9k + +ORA-17439=\u00c9rv\u00e9nytelen SQL t\u00edpus + +ORA-17440=A DBItem/DBType \u00e9rt\u00e9k \u00fcres. + +ORA-17441=Ezen Oracle verzi\u00f3 haszn\u00e1lata nem t\u00e1mogatott. A legr\u00e9gebbi t\u00e1mogatott verzi\u00f3 a 7.2.3-as. + +ORA-17442=A Refcursor \u00e9rt\u00e9ke \u00e9rv\u00e9nytelen. + +ORA-17443=\u00dcres felhaszn\u00e1l\u00f3n\u00e9v vagy nem t\u00e1mogatott THIN meghajt\u00f3. + +ORA-17444=A kiszolg\u00e1l\u00f3t\u00f3l kapott TTC protokollverzi\u00f3 nem t\u00e1mogatott. + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/93/40d3168b7ca9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/93/40d3168b7ca9001c1d3abf97745a02da new file mode 100644 index 0000000..726dee5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/93/40d3168b7ca9001c1d3abf97745a02da @@ -0,0 +1,88 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextArea; +import javax.swing.JTextField; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + + // Donner un titre notre panneau + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/93/d04ec2dd7ca9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/93/d04ec2dd7ca9001c1d3abf97745a02da new file mode 100644 index 0000000..9c7fd9e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/93/d04ec2dd7ca9001c1d3abf97745a02da @@ -0,0 +1,55 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(8,35); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + + // Donner un titre notre panneau + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/93/d0b7931398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/93/d0b7931398af001c18c4935e001381da new file mode 100644 index 0000000..3a73099 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/93/d0b7931398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/10363eb506af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/10363eb506af001c14499bdcdfff58b3 new file mode 100644 index 0000000..50ebbec --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/10363eb506af001c14499bdcdfff58b3 @@ -0,0 +1,12 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + public IHMRequete(){ + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/40818e1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/40818e1698af001c18c4935e001381da new file mode 100644 index 0000000..9ecff06 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/40818e1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/901249354caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/901249354caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..5d5d523 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/901249354caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,187 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + + JOptionPane jo = new JOptionPane; + jo.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/e0ffc38d00a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/e0ffc38d00a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..6931fce --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/94/e0ffc38d00a4001c1027e59cc3e35e89 @@ -0,0 +1,55 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = connection.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/004cd31998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/004cd31998af001c18c4935e001381da new file mode 100644 index 0000000..4424aed Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/004cd31998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/10b67ae77ca9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/10b67ae77ca9001c1d3abf97745a02da new file mode 100644 index 0000000..26f4cc8 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/10b67ae77ca9001c1d3abf97745a02da @@ -0,0 +1,54 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(8,35); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/10fbe61998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/10fbe61998af001c18c4935e001381da new file mode 100644 index 0000000..49b7f0e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/10fbe61998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/60ccbb1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/60ccbb1998af001c18c4935e001381da new file mode 100644 index 0000000..cf9ac39 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/60ccbb1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/b018df1398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/b018df1398af001c18c4935e001381da new file mode 100644 index 0000000..1f96b3f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/b018df1398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/d09f911498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/d09f911498af001c18c4935e001381da new file mode 100644 index 0000000..c486b40 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/96/d09f911498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/10bc48fcc5a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/10bc48fcc5a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..036a821 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/10bc48fcc5a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + + JOptionPane.showInputDialog(); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/a023a71498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/a023a71498af001c18c4935e001381da new file mode 100644 index 0000000..2ba9f12 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/a023a71498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/d037e6a9fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/d037e6a9fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..36ca904 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/d037e6a9fea3001c1027e59cc3e35e89 @@ -0,0 +1,39 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally {if(connection!=null){try{connection.close()}catch(Exception e){e.printStackTrace();}} + } + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/e0a8e91b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/e0a8e91b98af001c18c4935e001381da new file mode 100644 index 0000000..952e42d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/97/e0a8e91b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/107927ae00a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/107927ae00a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..b141e34 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/107927ae00a4001c1027e59cc3e35e89 @@ -0,0 +1,55 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = connection.prepareStatement("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/109ea5f820af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/109ea5f820af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..dee876d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/109ea5f820af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Erro Interno + +ORA-17002=Excep\u00e7\u00e3o de E/S + +ORA-17003=\u00cdndice de coluna inv\u00e1lido + +ORA-17004=Tipo de coluna inv\u00e1lido + +ORA-17005=Tipo de coluna n\u00e3o suportado + +ORA-17006=Nome de coluna inv\u00e1lido + +ORA-17007=Coluna din\u00e2mica inv\u00e1lida + +ORA-17008=Liga\u00e7\u00e3o Fechada + +ORA-17009=Instru\u00e7\u00e3o Fechada + +ORA-17010=Resultset Fechado + +ORA-17011=Resultset Esgotado + +ORA-17012=Conflito do Tipo de Par\u00e2metro + +ORA-17014=ResultSet.next n\u00e3o foi chamado + +ORA-17015=A instru\u00e7\u00e3o foi cancelada + +ORA-17016=O tempo de espera da instru\u00e7\u00e3o esgotou + +ORA-17017=O cursor j\u00e1 foi inicializado + +ORA-17018=Cursor inv\u00e1lido + +ORA-17019=S\u00f3 \u00e9 poss\u00edvel descrever uma consulta + +ORA-17020=Pr\u00e9-extrac\u00e7\u00e3o de linhas inv\u00e1lida + +ORA-17021=Falta defines + +ORA-17022=Falta defines no \u00edndice + +ORA-17023=Funcionalidade n\u00e3o suportada + +ORA-17024=N\u00e3o foram lidos dados + +ORA-17025=Erro em defines.isNull () + +ORA-17026=Excesso de Dados Num\u00e9ricos + +ORA-17027=O fluxo j\u00e1 foi fechado + +ORA-17028=N\u00e3o \u00e9 poss\u00edvel efectuar novos defines enquanto o ResultSet actual n\u00e3o estiver fechado + +ORA-17029=setReadOnly: Liga\u00e7\u00f5es s\u00f3 de leitura n\u00e3o s\u00e3o suportadas + +ORA-17030=READ_COMMITTED e SERIALIZABLE s\u00e3o os \u00fanicos n\u00edveis de transac\u00e7\u00e3o v\u00e1lidos + +ORA-17031=setAutoClose: Suportar apenas modo de fecho autom\u00e1tico activado + +ORA-17032=n\u00e3o \u00e9 poss\u00edvel definir a pr\u00e9-extrac\u00e7\u00e3o de linhas como zero + +ORA-17033=Cadeia de caracteres SQL92 incorrecta na posi\u00e7\u00e3o + +ORA-17034=S\u00edmbolo SQL92 n\u00e3o suportado na posi\u00e7\u00e3o + +ORA-17035=Conjunto de Caracteres N\u00e3o Suportado !! + +ORA-17036=excep\u00e7\u00e3o em OracleNumber + +ORA-17037=Falha na convers\u00e3o entre UTF8 e UCS2 + +ORA-17038=A matriz de bytes n\u00e3o \u00e9 suficientemente extensa + +ORA-17039=A matriz de caracteres n\u00e3o \u00e9 suficientemente extensa + +ORA-17040=\u00c9 necess\u00e1rio especificar o subprotocolo no URL de liga\u00e7\u00e3o + +ORA-17041=Faltam par\u00e2metros IN ou OUT no \u00edndice: + +ORA-17042=Valor Batch Inv\u00e1lido + +ORA-17043=Dimens\u00e3o m\u00e1xima do fluxo inv\u00e1lida + +ORA-17044=Erro interno: Matriz de dados n\u00e3o atribu\u00edda + +ORA-17045=Erro interno: Tentativa de acesso a valores de associa\u00e7\u00e3o fora do intervalo do valor batch + +ORA-17046=Erro interno: \u00cdndice inv\u00e1lido para acesso a dados + +ORA-17047=Erro na an\u00e1lise do Descritor de Tipos + +ORA-17048=Tipo N\u00e3o Definido + +ORA-17049=Tipos de objecto java e sql inconsistentes + +ORA-17050=n\u00e3o existe esse elemento no vector + +ORA-17051=N\u00e3o \u00e9 poss\u00edvel utilizar esta API em tipos n\u00e3o-UDT + +ORA-17052=Esta refer\u00eancia n\u00e3o \u00e9 v\u00e1lida + +ORA-17053=A dimens\u00e3o n\u00e3o \u00e9 v\u00e1lida + +ORA-17054=O identificador de local do LOB n\u00e3o \u00e9 v\u00e1lido + +ORA-17055=Foi encontrado um car\u00e1cter inv\u00e1lido em + +ORA-17056=Conjunto de caracteres n\u00e3o suportado + +ORA-17057=LOB Fechado + +ORA-17058=Erro Interno: Ratio de Convers\u00e3o de NLS inv\u00e1lido + +ORA-17059=Falha na convers\u00e3o para representa\u00e7\u00e3o interna + +ORA-17060=Falha na cria\u00e7\u00e3o do descritor + +ORA-17061=Falta descritor + +ORA-17062=O cursor da refer\u00eancia \u00e9 inv\u00e1lido + +ORA-17063=N\u00e3o numa transac\u00e7\u00e3o + +ORA-17064=Sintaxe Inv\u00e1lida ou o nome da Base de Dados \u00e9 nulo + +ORA-17065=A classe de convers\u00e3o \u00e9 nula + +ORA-17066=\u00c9 necess\u00e1ria uma implementa\u00e7\u00e3o espec\u00edfica por camada de acesso + +ORA-17067=Foi especificado um URL Oracle inv\u00e1lido + +ORA-17068=Argumento(s) inv\u00e1lido(s) na chamada + +ORA-17069=Utilize uma chamada XA espec\u00edfica + +ORA-17070=A dimens\u00e3o dos dados \u00e9 superior \u00e0 dimens\u00e3o m\u00e1xima para este tipo + +ORA-17071=Foi excedido o limite m\u00e1ximo de VARRAY + +ORA-17072=O valor inserido \u00e9 demasiado extenso para a coluna + +ORA-17073=O par\u00e2metro identificador l\u00f3gico j\u00e1 n\u00e3o \u00e9 v\u00e1lido + +ORA-17074=padr\u00e3o de nomes inv\u00e1lido + +ORA-17075=Opera\u00e7\u00e3o inv\u00e1lida para resultset s\u00f3 de encaminhamento + +ORA-17076=Opera\u00e7\u00e3o inv\u00e1lida para resultset s\u00f3 de leitura + +ORA-17077=Falha na defini\u00e7\u00e3o do valor REF + +ORA-17078=N\u00e3o \u00e9 poss\u00edvel efectuar a opera\u00e7\u00e3o porque as liga\u00e7\u00f5es j\u00e1 est\u00e3o abertas + +ORA-17079=As credenciais do utilizador n\u00e3o correspondem \u00e0s existentes + +ORA-17080=comando batch inv\u00e1lido + +ORA-17081=ocorr\u00eancia de erro durante a coloca\u00e7\u00e3o em batch + +ORA-17082=N\u00e3o existe linha actual + +ORA-17083=N\u00e3o se encontra na linha de inser\u00e7\u00e3o + +ORA-17084=Chamado na linha de inser\u00e7\u00e3o + +ORA-17085=Ocorr\u00eancia de conflitos de valores + +ORA-17086=Valor de coluna n\u00e3o definido na linha de inser\u00e7\u00e3o + +ORA-17087=Sugest\u00e3o de desempenho ignorada: setFetchDirection() + +ORA-17088=A sintaxe do tipo de resultset e do n\u00edvel de concorr\u00eancia pedidos n\u00e3o \u00e9 suportada +ORA-17089=erro interno + +ORA-17090=opera\u00e7\u00e3o n\u00e3o permitida + +ORA-17091=Incapaz de criar o resultset com o tipo e/ou o n\u00edvel de concorr\u00eancia pedido + +ORA-17092=N\u00e3o \u00e9 poss\u00edvel criar ou executar instru\u00e7\u00f5es de JDBC no final do processamento de chamadas + +ORA-17093=A opera\u00e7\u00e3o da OCI devolveu OCI_SUCCESS_WITH_INFO + +ORA-17094=N\u00e3o correspond\u00eancia da vers\u00e3o do tipo de objecto + +ORA-17095=A dimens\u00e3o da cache de instru\u00e7\u00f5es n\u00e3o foi definida + +ORA-17096=N\u00e3o \u00e9 poss\u00edvel activar a Coloca\u00e7\u00e3o de Instru\u00e7\u00f5es na Cache para esta liga\u00e7\u00e3o l\u00f3gica. + +ORA-17097=Tipo de elemento da Tabela de \u00cdndice de PL/SQL inv\u00e1lido + +ORA-17098=Opera\u00e7\u00e3o de lob vazio inv\u00e1lida + +ORA-17099=Comprimento da matriz da Tabela de \u00cdndice de PL/SQL inv\u00e1lido + +ORA-17100=Objecto Java da base de dados inv\u00e1lido + +ORA-17101=Propriedades inv\u00e1lidas de Objecto do Pool de Liga\u00e7\u00f5es da OCI + +ORA-17102=Bfile \u00e9 s\u00f3 de leitura + +ORA-17103=tipo de liga\u00e7\u00e3o inv\u00e1lido para devolver atrav\u00e9s de getConnection. Utilize getJavaSqlConnection + +ORA-17104=n\u00e3o \u00e9 poss\u00edvel que a instru\u00e7\u00e3o de SQL para execu\u00e7\u00e3o esteja vazia ou seja nula + +ORA-17105=o fuso hor\u00e1rio da sess\u00e3o de liga\u00e7\u00e3o n\u00e3o foi definido + +ORA-17106=foi especificada uma configura\u00e7\u00e3o inv\u00e1lida do pool de liga\u00e7\u00f5es do driver JDBC-OCI + +ORA-17107=foi especificado um tipo de proxy inv\u00e1lido + +ORA-17108=N\u00e3o foi especificado o comprimento m\u00e1ximo em defineColumnType + +ORA-17109=a codifica\u00e7\u00e3o de caracteres de Java standard n\u00e3o foi encontrada + +ORA-17110=a execu\u00e7\u00e3o foi conclu\u00edda com aviso + +ORA-17111=Foi especificado um tempo de espera de TTL da cache de liga\u00e7\u00f5es inv\u00e1lido + +ORA-17112=Foi especificado um intervalo de processo leve inv\u00e1lido + +ORA-17113=O valor do intervalo do processo leve \u00e9 superior ao valor do tempo de espera da cache + +ORA-17114=n\u00e3o foi poss\u00edvel utilizar a confirma\u00e7\u00e3o de transac\u00e7\u00e3o local na transac\u00e7\u00e3o global + +ORA-17115=n\u00e3o foi poss\u00edvel utilizar a anula\u00e7\u00e3o de transac\u00e7\u00e3o local na transac\u00e7\u00e3o global + +ORA-17116=n\u00e3o foi poss\u00edvel activar a confirma\u00e7\u00e3o autom\u00e1tica na transac\u00e7\u00e3o global activa + +ORA-17117=n\u00e3o foi poss\u00edvel definir o savepoint na transac\u00e7\u00e3o global activa + +ORA-17118=n\u00e3o foi poss\u00edvel obter a ID do Savepoint nomeado + +ORA-17119=n\u00e3o foi poss\u00edvel obter o nome do Savepoint n\u00e3o nomeado + +ORA-17120=n\u00e3o foi poss\u00edvel definir o Savepoint com a confirma\u00e7\u00e3o autom\u00e1tica activada + +ORA-17121=n\u00e3o foi poss\u00edvel anular o Savepoint com a confirma\u00e7\u00e3o autom\u00e1tica activada + +ORA-17122=n\u00e3o foi poss\u00edvel anular o Savepoint da transac\u00e7\u00e3o local na transac\u00e7\u00e3o global + +ORA-17123=A dimens\u00e3o da cache de instru\u00e7\u00f5es especificada \u00e9 inv\u00e1lida + +ORA-17124=Foi especificado um tempo de espera de Inactividade da cache de liga\u00e7\u00f5es inv\u00e1lido + +ORA-17200=Incapaz de converter correctamente a cadeia de caracteres de abertura XA de Java para C + +ORA-17201=Incapaz de converter correctamente a cadeia de caracteres de fecho XA de Java para C + +ORA-17202=Incapaz de converter correctamente o nome de RM de Java para C + +ORA-17203=N\u00e3o foi poss\u00edvel converter o tipo de apontador para jlong + +ORA-17204=A matriz de entrada de dados \u00e9 demasiado curta para conter par\u00e2metros identificadores da OCI + +ORA-17205=Falha na obten\u00e7\u00e3o do par\u00e2metro identificador OCISvcCtx a partir de C-XA atrav\u00e9s da utiliza\u00e7\u00e3o de xaoSvcCtx + +ORA-17206=Falha na obten\u00e7\u00e3o do par\u00e2metro identificador OCIEnv a partir de C-XA atrav\u00e9s da utiliza\u00e7\u00e3o de xaoEnv + +ORA-17207=A propriedade tnsEntry n\u00e3o foi definida em DataSource + +ORA-17213=C-XA devolveu XAER_RMERR durante xa_open + +ORA-17215=C-XA devolveu XAER_INVAL durante xa_open + +ORA-17216=C-XA devolveu XAER_PROTO durante xa_open + +ORA-17233=C-XA devolveu XAER_RMERR durante xa_close + +ORA-17235=C-XA devolveu XAER_INVAL durante xa_close + +ORA-17236=C-XA devolveu XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Viola\u00e7\u00e3o de protocolo + +ORA-17402=Apenas uma mensagem RPA esperada + +ORA-17403=Apenas uma mensagem RXH esperada + +ORA-17404=Foram recebidas mais mensagens RXD do que o esperado + +ORA-17405=O comprimento de UAC n\u00e3o \u00e9 zero + +ORA-17406=Foi excedido o comprimento m\u00e1ximo do buffer + +ORA-17407=Representa\u00e7\u00e3o de Tipo (setRep) inv\u00e1lida + +ORA-17408=Representa\u00e7\u00e3o de Tipo (getRep) inv\u00e1lida + +ORA-17409=comprimento do buffer inv\u00e1lido + +ORA-17410=N\u00e3o existem mais dados para leitura a partir do socket + +ORA-17411=N\u00e3o correspond\u00eancia entre as representa\u00e7\u00f5es do Tipo de Dados + +ORA-17412=Comprimento do tipo superior ao M\u00e1ximo + +ORA-17413=Foi excedida a dimens\u00e3o da chave + +ORA-17414=A dimens\u00e3o do Buffer \u00e9 insuficiente para armazenar Nomes de Colunas + +ORA-17415=Este tipo n\u00e3o foi tratado + +ORA-17416=FATAL + +ORA-17417=Problema de NLS, falha na descodifica\u00e7\u00e3o dos nomes das colunas + +ORA-17418=Erro de comprimento de campo na estrutura interna + +ORA-17419=Foi devolvido um n\u00famero de colunas inv\u00e1lido + +ORA-17420=Vers\u00e3o Oracle n\u00e3o definida + +ORA-17421=Tipos ou Liga\u00e7\u00e3o n\u00e3o definida + +ORA-17422=Classe inv\u00e1lida na factory + +ORA-17423=A utilizar um bloco de PLSQL sem um IOV definido + +ORA-17424=A tentar uma opera\u00e7\u00e3o do tipo marshaling diferente + +ORA-17425=Devolu\u00e7\u00e3o de um fluxo no bloco de PLSQL + +ORA-17426=As associa\u00e7\u00f5es IN e OUT s\u00e3o NULL + +ORA-17427=A utiliza\u00e7\u00e3o OAC N\u00e3o Inicializado + +ORA-17428=A entrada em sess\u00e3o tem de ser chamada depois de efectuada a liga\u00e7\u00e3o + +ORA-17429=\u00c9 necess\u00e1rio estar, pelo menos, ligado ao servidor + +ORA-17430=\u00c9 necess\u00e1rio ter entrado em sess\u00e3o no servidor + +ORA-17431=A Instru\u00e7\u00e3o de SQL para an\u00e1lise \u00e9 nula + +ORA-17432=op\u00e7\u00f5es inv\u00e1lidas em all7 + +ORA-17433=argumentos inv\u00e1lidos na chamada + +ORA-17434=n\u00e3o est\u00e1 em modo de fluxo + +ORA-17435=n\u00famero inv\u00e1lido de in_out_binds em IOV + +ORA-17436=n\u00famero inv\u00e1lido de associa\u00e7\u00f5es de sa\u00edda + +ORA-17437=Erro em argumentos IN/OUT do bloco de PLSQL + +ORA-17438=Interno - Valor inesperado + +ORA-17439=Tipo de SQL inv\u00e1lido + +ORA-17440=DBItem/DBType \u00e9 nulo + +ORA-17441=Vers\u00e3o Oracle n\u00e3o suportada.A vers\u00e3o m\u00ednima suportada \u00e9 a 7.2.3. + +ORA-17442=Valor de refcursor inv\u00e1lido + +ORA-17443=Utilizador ou senha nula n\u00e3o suportados no driver THIN + +ORA-17444=A vers\u00e3o do Protocolo TTC recebida do servidor n\u00e3o \u00e9 suportada + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/30162e1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/30162e1a98af001c18c4935e001381da new file mode 100644 index 0000000..bbbcae3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/30162e1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/60462cf2c6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/60462cf2c6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..2cf5e23 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/60462cf2c6a4001c1acc9f54b60f9b57 @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/60f6371998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/60f6371998af001c18c4935e001381da new file mode 100644 index 0000000..c4f860f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/60f6371998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/b0bf5983fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/b0bf5983fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..6b599f2 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/b0bf5983fea3001c1027e59cc3e35e89 @@ -0,0 +1,39 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + // Fermer la base de donne + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/d03687a106af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/d03687a106af001c14499bdcdfff58b3 new file mode 100644 index 0000000..c5e0f59 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/98/d03687a106af001c14499bdcdfff58b3 @@ -0,0 +1,10 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/99/a0058e1ac5a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/99/a0058e1ac5a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..17ecd22 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/99/a0058e1ac5a4001c1acc9f54b60f9b57 @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Moi"); + JLabel jlabelPort = new JLabel("Moi2"); + JLabel jlabelBase = new JLabel("Toi"); + JLabel jlabelIdentifiant = new JLabel("Toi2"); + JLabel jlabelMdp = new JLabel("Lui"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/99/d0c1f1f9c7a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/99/d0c1f1f9c7a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..387b6f7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/99/d0c1f1f9c7a4001c1acc9f54b60f9b57 @@ -0,0 +1,57 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/99/f0a2b81a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/99/f0a2b81a98af001c18c4935e001381da new file mode 100644 index 0000000..dec2c95 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/99/f0a2b81a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9a/30f9231998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9a/30f9231998af001c18c4935e001381da new file mode 100644 index 0000000..781b2d5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9a/30f9231998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9a/707b5e1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9a/707b5e1798af001c18c4935e001381da new file mode 100644 index 0000000..5f502f1 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9a/707b5e1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9a/9010741598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9a/9010741598af001c18c4935e001381da new file mode 100644 index 0000000..fa08e43 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9a/9010741598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/3098737b06af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/3098737b06af001c14499bdcdfff58b3 new file mode 100644 index 0000000..7fea9da --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/3098737b06af001c14499bdcdfff58b3 @@ -0,0 +1,5 @@ +package fr.blankoworld.ihm; + +public class IHMRequete { + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/80275bfa02a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/80275bfa02a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..33926e6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/80275bfa02a4001c1027e59cc3e35e89 @@ -0,0 +1,73 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + + System.out.println(resultat.isBeforeFirst()); + // true + resultat.next(); + // on se retrouve ici sur la premire ligne + resultat.getString("NOM"); + + // traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/802bd41898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/802bd41898af001c18c4935e001381da new file mode 100644 index 0000000..1d05b83 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/802bd41898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/d026b41598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/d026b41598af001c18c4935e001381da new file mode 100644 index 0000000..feaffa5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/d026b41598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/d0ae7ffd20af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/d0ae7ffd20af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..7e5f5e7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/d0ae7ffd20af001c1bf1a004f0d77fc3 @@ -0,0 +1,71 @@ +# US English Message file for Net components + +# ## Internal [ 0, 19] +GOT_MINUS_ONE=Got minus one from a read call +ASSERTION_FAILED=Internal Error + +# ## NT Errors [ 20, 99] +NT_CONNECTION_FAILED=The Network Adapter could not establish the connection +INVALID_NT_ADAPTER=The Network Adapter in use is Invalid + +# ## Naming Errors [100, 199] +PROTOCOL_NOT_SPECIFIED=The Protocol Value Pair is missing +CSTRING_PARSING=TNS Address String Parsing error +INVALID_CONNECT_DATA=The Connect Data in the TNS Address is not valid +HOSTNAME_NOT_SPECIFIED=The hostname in the TNS Address was not specified +PORT_NOT_SPECIFIED=The port number in the the address was not specified +CONNECT_DATA_MISSING=The CONNECT_DATA in the TNS Address is missing +SID_INFORMATION_MISSING=The SID or SERVICE_NAME in the TNS Address is missing +ADDRESS_NOT_DEFINED=An ADDRESS Value pair was not defined in the TNS Address +JNDI_THREW_EXCEPTION=JNDI Package failure +JNDI_NOT_INITIALIZED=JNDI Access package not initialized +JNDI_CLASSES_NOT_FOUND=JNDI Package failure +USER_PROPERTIES_NOT_DEFINED=User Properties not Initialized, JNDI Access can't be used +NAMING_FACTORY_NOT_DEFINED=Naming factory not defined, JNDI access can't complete +NAMING_PROVIDER_NOT_DEFINED=Naming provider not defined, JNDI access can't complete +PROFILE_NAME_NOT_DEFINED=Profile Name not defined, JNDI access can't complete +HOST_PORT_SID_EXPECTED=Invalid connection string format, a valid format is: "host:port:sid" +PORT_NUMBER_ERROR=Invalid number format for port number +HOST_PORT_SN_EXPECTED=Invalid connection string format, a valid format is: "//host:port/service_name" + +# ## NS Errors [200, 299] +NOT_CONNECTED=Invalid Operation, NOT Connected +CONNECTED_ALREADY=Connected Already +DATA_EOF=End of TNS data channel +SDU_MISMATCH=Size Data Unit (SDU) mismatch +BAD_PKT_TYPE=Bad packet type +UNEXPECTED_PKT=Unexpected packet +REFUSED_CONNECT=Connection refused +INVALID_PKT_LENGTH=Invalid Packet Lenght +CONNECTION_STRING_NULL=Connection String was NULL + +# ##Ano Exception [300, 399] +FAILED_TO_TURN_ENCRYPTION_ON=Failed to Turn encryption On +WRONG_BYTES_IN_NAPACKET=Wrong byte number in na packet +WRONG_MAGIC_NUMBER=Wrong Magic number in na packet +UNKNOWN_ALGORITHM_12649=Unknown Encryption or Data Integrity algorithm +INVALID_ENCRYPTION_PARAMETER=Invalid parameter, use one of ACCEPTED, REJECTED, REQUESTED and REQUIRED +WRONG_SERVICE_SUBPACKETS=Wrong Number of service subpackets +SUPERVISOR_STATUS_FAILURE=Supervisor service received status failure +AUTHENTICATION_STATUS_FAILURE=Authentication service received status failure +SERVICE_CLASSES_NOT_INSTALLED=Service Classes not found in oracle.net.ano package +INVALID_DRIVER=Invalid Ano Driver +ARRAY_HEADER_ERROR=Error in array header received +RECEIVED_UNEXPECTED_LENGTH_FOR_TYPE=Received Unexpected length for a variable length NA type +INVALID_NA_PACKET_TYPE_LENGTH=Invalid length for an NA type +INVALID_NA_PACKET_TYPE=Invalid NA packet type received +UNEXPECTED_NA_PACKET_TYPE_RECEIVED=Unexpected NA Packet Type received +UNKNOWN_ENC_OR_DATAINT_ALGORITHM=Unkown encryption or DataIntegrity algorithm +INVALID_ENCRYPTION_ALGORITHM_FROM_SERVER=Invalid Encryption Algorithm from server +ENCRYPTION_CLASS_NOT_INSTALLED=Encryption Class not installed +DATAINTEGRITY_CLASS_NOT_INSTALLED=Data Integrity Class not installed +INVALID_DATAINTEGRITY_ALGORITHM_FROM_SERVER=Invalid DataIntegrity Algorithm received from server +INVALID_SERVICES_FROM_SERVER=Received Invalid Services from Server +INCOMPLETE_SERVICES_FROM_SERVER=Received Incomplete services from server +INVALID_LEVEL=Level should be one of ACCEPTED, REJECTED, REQUESTED and REQUIRED +INVALID_SERVICES=The service in process is not supported. + +# ##Break Exception [500, ] +NS_BREAK=Break packet was received +NL_EXCEPTION=NL Exception was generated +SO_EXCEPTION=SO Exception was generated diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/e02d661598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/e02d661598af001c18c4935e001381da new file mode 100644 index 0000000..21bee78 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9b/e02d661598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/30f8b6c7fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/30f8b6c7fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..4f8c11b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/30f8b6c7fea3001c1027e59cc3e35e89 @@ -0,0 +1,42 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + if(connection!=null){try{connection.close()}catch(Exception e){e.printStackTrace();}} + } + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/50f8c21998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/50f8c21998af001c18c4935e001381da new file mode 100644 index 0000000..a476f71 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/50f8c21998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/a04fe71698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/a04fe71698af001c18c4935e001381da new file mode 100644 index 0000000..f1ab2a3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/a04fe71698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/c066e9c484a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/c066e9c484a9001c1d3abf97745a02da new file mode 100644 index 0000000..d2c63f1 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/c066e9c484a9001c1d3abf97745a02da @@ -0,0 +1,149 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentListener; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + private void windowActivated(WindowEvent ev){ + + } + }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/c0cb849a9eaf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/c0cb849a9eaf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..8aea06d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/c0cb849a9eaf001c1c2eb8ec16be26ca @@ -0,0 +1,235 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/f08ab61b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/f08ab61b98af001c18c4935e001381da new file mode 100644 index 0000000..0606852 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9c/f08ab61b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/2054c4fa03a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/2054c4fa03a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..6bf2384 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/2054c4fa03a4001c1027e59cc3e35e89 @@ -0,0 +1,74 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + resultat.toString(); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + resultat.toString(); + + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/60c281f820af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/60c281f820af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..26cc623 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/60c281f820af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Intern feil + +ORA-17002=I/U-unntak + +ORA-17003=Ugyldig kolonneindeks + +ORA-17004=Ugyldig kolonnetype + +ORA-17005=Kolonnetypen st\u00f8ttes ikke + +ORA-17006=Ugyldig kolonnenavn + +ORA-17007=Ugyldig dynamisk kolonne + +ORA-17008=Lukket tilkobling + +ORA-17009=Lukket setning + +ORA-17010=Lukket resultatsett + +ORA-17011=Resultatsettet er for lite + +ORA-17012=Parametertypekonflikt + +ORA-17014=ResultSet.next ble ikke kalt opp + +ORA-17015=Setningen ble annullert + +ORA-17016=Setningen fikk tidsavbrudd + +ORA-17017=Pekeren er allerede initialisert + +ORA-17018=Ugyldig peker + +ORA-17019=Kan bare beskrive en sp\u00f8rring + +ORA-17020=Ugyldig rad-prefetch + +ORA-17021=Manglende definisjoner + +ORA-17022=Manglende definisjoner i indeks + +ORA-17023=Ikke st\u00f8ttet funksjon + +ORA-17024=Ingen data ble lest + +ORA-17025=Feil i defines.isNull () + +ORA-17026=Numerisk overflyt + +ORA-17027=Datastr\u00f8mmen er allerede lukket + +ORA-17028=Kan ikke utf\u00f8re nye definisjoner f\u00f8r gjeldende ResultSet er lukket + +ORA-17029=setReadOnly: Skrivebeskyttede tilkoblinger er ikke st\u00f8ttet + +ORA-17030=READ_COMMITTED og SERIALIZABLE er de eneste gyldige transaksjonsniv\u00e5ene + +ORA-17031=setAutoClose: St\u00f8tter bare modus for automatisk lukking p\u00e5 + +ORA-17032=kan ikke sette rad-prefetch til null + +ORA-17033=Misformet SQL92-streng i posisjon + +ORA-17034=Ikke st\u00f8ttet SQL92-symbol i posisjon + +ORA-17035=Tegnsettet er ikke st\u00f8ttet. + +ORA-17036=unntak i OracleNumber + +ORA-17037=Kan ikke konvertere mellom UTF8 og UCS2 + +ORA-17038=Bytedatatabellen er ikke lang nok + +ORA-17039=Tegndatatabellen er ikke lang nok + +ORA-17040=Underprotokollen m\u00e5 angis i tilkoblings-URLen + +ORA-17041=Manglende IN- eller OUT-parameter i indeks: + +ORA-17042=Ugyldig satsvis verdi + +ORA-17043=Ugyldig maksimumsst\u00f8rrelse for datastr\u00f8mmen + +ORA-17044=Intern feil: Datatabellen er ikke tilordnet + +ORA-17045=Intern feil: Fors\u00f8k p\u00e5 f\u00e5 tilgang til bingingsverdier utenfor den satsvise verdien + +ORA-17046=Intern feil: Ugyldig indeks for datatilgang + +ORA-17047=Feil i analyse av typedeskriptor + +ORA-17048=Udefinert type + +ORA-17049=Ikke samsvarende java- og sql-objekttyper + +ORA-17050=ikke noe slikt element i vektoren + +ORA-17051=Dette APIet kan ikke brukes for ikke-UDT-typer + +ORA-17052=Denne referansen er ikke gyldig + +ORA-17053=St\u00f8rrelsen er ikke gyldig + +ORA-17054=LOB-posisjonsindikatoren er ikke gyldig + +ORA-17055=Ugyldig tegn ble funnet i + +ORA-17056=Ikke st\u00f8ttet tegnsett + +ORA-17057=Lukket LOB + +ORA-17058=Intern feil: Ugyldig forhold for NLS-konvertering + +ORA-17059=Kunne ikke konvertere til intern representasjon + +ORA-17060=Kunne ikke konstruere deskriptoren + +ORA-17061=Manglende deskriptor + +ORA-17062=Referansepekeren er ugyldig + +ORA-17063=Ikke i en transaksjon + +ORA-17064=Ugyldig syntaks eller databasenavnet er null + +ORA-17065=Konverteringsklassen er null + +ORA-17066=Spesifikk implementering av tilgangslaget er n\u00f8dvendig + +ORA-17067=Ugyldig Oracle-URL er angitt + +ORA-17068=Ugyldig(e) argument(er) i kall + +ORA-17069=Bruk eksplisitt XA-kall + +ORA-17070=Datast\u00f8rrelsen er st\u00f8rre en maksimal st\u00f8rrelse for denne typen + +ORA-17071=Maksimal VARRAY-grense er overskredet + +ORA-17072=Innsatt verdi er for stor for kolonnen + +ORA-17073=Logisk referanse er ikke lenger gyldig + +ORA-17074=ugyldig navnem\u00f8nster + +ORA-17075=Ugyldig operasjon for FORWARD-ONLY resultatsett + +ORA-17076=Ugyldig operasjon for skrivebeskyttet resultatsett + +ORA-17077=Kunne ikke definere REF-verdi + +ORA-17078=Kan ikke utf\u00f8re operasjonen fordi tilkoblingene allerede er \u00e5pnet + +ORA-17079=P\u00e5loggingsinformasjon for brukere samsvarer ikke med eksisterende informasjon + +ORA-17080=ugyldig satsvis kommando + +ORA-17081=feil oppstod under satsvis kj\u00f8ring + +ORA-17082=Ingen gjeldende rad + +ORA-17083=Ikke p\u00e5 innsettingsraden + +ORA-17084=Kalt opp p\u00e5 innsettingsraden + +ORA-17085=Verdikonflikter oppst\u00e5r + +ORA-17086=Udefinert kolonneverdi p\u00e5 innsettingsraden + +ORA-17087=Ytelsestips ble ignorert: setFetchDirection() + +ORA-17088=Syntaksen st\u00f8ttes ikke for \u00f8nsket type og samtidighetsniv\u00e5 for resultatsettet +ORA-17089=intern feil + +ORA-17090=operasjonen er ikke tillatt + +ORA-17091=Kan ikke opprette resultatsett med \u00f8nsket type og/eller samtidighetsniv\u00e5 + +ORA-17092=JDBC-setninger kan ikke opprettes eller utf\u00f8res p\u00e5 slutten av kallbehandling + +ORA-17093=OCI-operasjonen returnerte OCI_SUCCESS_WITH_INFO + +ORA-17094=Objekttypeversjonen samsvarer ikke + +ORA-17095=St\u00f8rrelsen p\u00e5 setningshurtigbufferen er ikke definert + +ORA-17096=Setningshurtigbufring kan ikke aktiveres for denne logiske tilkoblingen. + +ORA-17097=Ugyldig elementtype for PL/SQL-indekstabellen + +ORA-17098=Ugyldig tom LOB-operasjon + +ORA-17099=Ugyldig datatabellengde for PL/SQL-indekstabell + +ORA-17100=Ugyldig Java-objekt for databasen + +ORA-17101=Ugyldige egenskaper i objektet for OCI-tilkoblingsgruppe + +ORA-17102=Bfile er skrivebeskyttet + +ORA-17103=ugyldig tilkoblingstype for retur via getConnection. Bruk getJavaSqlConnection i stedet + +ORA-17104=SQL-setningen som skal utf\u00f8res, kan ikke v\u00e6re tom eller null + +ORA-17105=tidssonen for tilkoblingssesjonen var ikke angitt + +ORA-17106=ugyldig konfigurasjon av tilkoblingsgruppen for JDBC-OCI-driveren er angitt + +ORA-17107=en ugyldig proxy-type er angitt + +ORA-17108=Ingen maksimal lengde er angitt i defineColumnType + +ORA-17109=standard Java-tegnkoding ble ikke funnet + +ORA-17110=utf\u00f8ringen ble fullf\u00f8rt med en advarsel + +ORA-17111=Ugyldig tidsavbrudd for tilkobling av hurtigbuffer-TTL er angitt + +ORA-17112=Et ugyldig tr\u00e5dintervall er angitt + +ORA-17113=Verdien for tr\u00e5dintervallet er st\u00f8rre enn tidsavbruddsverdien for hurtigbufring + +ORA-17114=kunne ikke bruke lokal transaksjonsbekreftelse i en global transaksjon + +ORA-17115=kunne ikke bruke lokal tilbakestilling av transaksjonen i en global transaksjon + +ORA-17116=kunne ikke sl\u00e5 p\u00e5 automatisk bekreftelse i en aktiv global transaksjon + +ORA-17117=kunne ikke definere tilbakestillingspunktet i en aktiv global transaksjon + +ORA-17118=kunne ikke f\u00e5 tak i IDen for et navngitt tilbakestillingspunkt + +ORA-17119=kunne ikke f\u00e5 tak i navnet p\u00e5 et tilbakestillingspunkt uten navn + +ORA-17120=kunne ikke definere et tilbakestillingspunkt med automatisk bekreftelse p\u00e5 + +ORA-17121=kunne ikke tilbakestille et tilbakestillingspunkt med automatisk lagring p\u00e5 + +ORA-17122=kunne ikke tilbakestille et lokalt txn-tilbakestillingspunkt i en global transaksjon + +ORA-17123=En ugyldig st\u00f8rrelse p\u00e5 setningshurtigbufferen er angitt + +ORA-17124=Det er angitt ugyldig tidsavbrudd ved inaktivitet for tilkoblingshurtigbufferen + +ORA-17200=Kan ikke konvertere XA open-strengen fra Java til C p\u00e5 riktig m\u00e5te + +ORA-17201=Kan ikke konvertere XA close-strengen fra Java til C p\u00e5 riktig m\u00e5te + +ORA-17202=Kan ikke konvertere RM-navn fra Java til C p\u00e5 riktig m\u00e5te + +ORA-17203=Kunne ikke tilordne pekertypen til jlong + +ORA-17204=Inndatatabellen er for kort til OCI-referansene + +ORA-17205=Kan ikke hente OCISvcCtx-referansen fra C-XA ved hjelp av xaoSvcCtx + +ORA-17206=Kan ikke hente OCIEnv-referansen fra C-XA ved hjelp av xaoEnv + +ORA-17207=Egenskapen tnsEntry var ikke angitt i DataSource + +ORA-17213=C-XA returnerte XAER_RMERR under xa_open + +ORA-17215=C-XA returnerte XAER_INVAL under xa_open + +ORA-17216=C-XA returnerte XAER_PROTO under xa_open + +ORA-17233=C-XA returnerte XAER_RMERR under xa_close + +ORA-17235=C-XA returnerte XAER_INVAL under xa_close + +ORA-17236=C-XA returnerte XAER_PROTO under xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokolloverskridelse + +ORA-17402=Bare \u00e9n RPA-medling er forventet + +ORA-17403=Bare \u00e9n RXH-medling er forventet + +ORA-17404=Mottok flere RXDer enn forventet + +ORA-17405=UAC-lengden er ikke null + +ORA-17406=Overskrider maksimal bufferlengde + +ORA-17407=ugyldig typerepresentasjon (setRep) + +ORA-17408=ugyldig typerepresentasjon (getRep) + +ORA-17409=ugyldig bufferlengde + +ORA-17410=Ikke flere data \u00e5 lese fra porten + +ORA-17411=Manglende samsvar i representasjon av datatype + +ORA-17412=Typelengden er st\u00f8rre enn maksimum + +ORA-17413=Overskrider n\u00f8kkelst\u00f8rrelsen + +ORA-17414=Ikke tilstrekkelig bufferst\u00f8rrelse til \u00e5 lagre kolonnenavn + +ORA-17415=Denne typen er ikke h\u00e5ndtert + +ORA-17416=FATAL + +ORA-17417=NLS-problem, kunne ikke dekode kolonnenavn + +ORA-17418=Feil i den interne strukturens feltlengde + +ORA-17419=Ugyldig antall kolonner ble returnert + +ORA-17420=Oracle-versjonen er ikke definert + +ORA-17421=Typer eller tilkobling er ikke definert + +ORA-17422=Ugyldig klasse i fabrikk + +ORA-17423=Bruker en PLSQL-blokk uten en definert IOV + +ORA-17424=Fors\u00f8ker en annen oppstillingsoperasjon + +ORA-17425=Returnerer en datastr\u00f8m i PLSQL-blokk + +ORA-17426=B\u00e5de IN- og OUT-bindinger er NULL + +ORA-17427=Bruker uinitialisert OAC + +ORA-17428=P\u00e5logging m\u00e5 kalles etter tilkobling + +ORA-17429=M\u00e5 i det minste v\u00e6re tilkoblet tjeneren + +ORA-17430=M\u00e5 v\u00e6re logget p\u00e5 tjeneren + +ORA-17431=SQL-setningen som skal analyseres er null + +ORA-17432=ugyldige valg i all7 + +ORA-17433=ugyldige argumenter i kallet + +ORA-17434=ikke i str\u00f8mmodus + +ORA-17435=ugyldig antall in_out_binds i IOV + +ORA-17436=ugyldig antall outbinds + +ORA-17437=Feil i PLSQL-blokkens IN/OUT-argument(er) + +ORA-17438=Intern - Uventet verdi + +ORA-17439=Ugyldig SQL-type + +ORA-17440=DBItem/DBType er null + +ORA-17441=Oracle-versjonen er ikke st\u00f8ttet. Minste st\u00f8ttede versjon er 7.2.3. + +ORA-17442=Refcursor-verdien er ugyldig + +ORA-17443=Nullbruker eller -passord er ikke st\u00f8ttet i THIN-driver + +ORA-17444=TTC-protokollversjonen som er mottatt fra tjeneren, er ikke st\u00f8ttet + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/a0deefc948aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/a0deefc948aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..c8c2d83 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/a0deefc948aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + this.dispose(); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/a0f29b0336aa001c1fe69b2045181082 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/a0f29b0336aa001c1fe69b2045181082 new file mode 100644 index 0000000..021e395 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/a0f29b0336aa001c1fe69b2045181082 @@ -0,0 +1,37 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : IHM Graphique.java +// @ Date : 14/12/2007 +// @ Author : +// +// + + + +package IHM; + + +/** */ +public class IHM Graphique extends Observation.IHMable, Interface { + /** */ + private Color couleur; + + /** */ + private Vektor listeEtat; + + /** */ + public Observation.IHMable sujets; + + /** */ + public void Maj() { + + } + + /** */ + public void Maj() { + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/f0373137c4a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/f0373137c4a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..92b1559 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/f0373137c4a4001c1acc9f54b60f9b57 @@ -0,0 +1,43 @@ +package fr.blankoworld.ihm; + +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel(); + JLabel jlabelPort = new JLabel(); + JLabel jlabelBase = new JLabel(); + JLabel jlabelIdentifiant = new JLabel(); + JLabel jlabelMdp = new JLabel(); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/f078f3f200a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/f078f3f200a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..68f0782 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9d/f078f3f200a4001c1027e59cc3e35e89 @@ -0,0 +1,55 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9e/801f09b182a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9e/801f09b182a9001c1d3abf97745a02da new file mode 100644 index 0000000..efaee16 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9e/801f09b182a9001c1d3abf97745a02da @@ -0,0 +1,104 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9e/c08c401a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9e/c08c401a98af001c18c4935e001381da new file mode 100644 index 0000000..728a312 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9e/c08c401a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9f/20b214d704af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9f/20b214d704af001c14499bdcdfff58b3 new file mode 100644 index 0000000..4e0cb66 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9f/20b214d704af001c14499bdcdfff58b3 @@ -0,0 +1,235 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(objetConnexion); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9f/70f8521998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9f/70f8521998af001c18c4935e001381da new file mode 100644 index 0000000..2c7c826 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9f/70f8521998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9f/8001581998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9f/8001581998af001c18c4935e001381da new file mode 100644 index 0000000..c6ddfd5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/9f/8001581998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/100a3c6981a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/100a3c6981a9001c1d3abf97745a02da new file mode 100644 index 0000000..6fd9533 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/100a3c6981a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Importation de la fentre de Connexion +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + Connexion conn = ,new Connexion(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/108e662b4caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/108e662b4caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..41dd032 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/108e662b4caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + + JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/300e9b75c9a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/300e9b75c9a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..f2f5fd2 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/300e9b75c9a4001c1acc9f54b60f9b57 @@ -0,0 +1,73 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setBorder(FlowLayout.LEFT); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/90d9f61998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/90d9f61998af001c18c4935e001381da new file mode 100644 index 0000000..6f4b139 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a/90d9f61998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a0/6011ef1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a0/6011ef1998af001c18c4935e001381da new file mode 100644 index 0000000..3103bcb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a0/6011ef1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a0/70b49f1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a0/70b49f1598af001c18c4935e001381da new file mode 100644 index 0000000..57ea27e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a0/70b49f1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a0/f0e9cd1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a0/f0e9cd1898af001c18c4935e001381da new file mode 100644 index 0000000..40a36d9 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a0/f0e9cd1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a1/10474d9501af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a1/10474d9501af001c14499bdcdfff58b3 new file mode 100644 index 0000000..73d4f39 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a1/10474d9501af001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n" + connection.getClientInfo().elements().toString(); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a1/807cd00f7da9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a1/807cd00f7da9001c1d3abf97745a02da new file mode 100644 index 0000000..4ccb208 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a1/807cd00f7da9001c1d3abf97745a02da @@ -0,0 +1,54 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(" "); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a1/f0a4bea735aa001c1fe69b2045181082 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a1/f0a4bea735aa001c1fe69b2045181082 new file mode 100644 index 0000000..f4b764d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a1/f0a4bea735aa001c1fe69b2045181082 @@ -0,0 +1,11 @@ + + + FeuTricolore + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a2/601fb7f720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a2/601fb7f720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..61b978c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a2/601fb7f720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Sis\u00e4inen virhe + +ORA-17002=IO-poikkeus + +ORA-17003=Virheellinen sarakeindeksi + +ORA-17004=Virheellinen saraketyyppi + +ORA-17005=Saraketyyppi\u00e4 ei tueta + +ORA-17006=Virheellinen sarakkeen nimi + +ORA-17007=Virheellinen dynaaminen sarake + +ORA-17008=Suljettu yhteys + +ORA-17009=Suljettu lause + +ORA-17010=Suljettu tulosjoukko + +ORA-17011=Tulosjoukko t\u00e4ynn\u00e4 + +ORA-17012=Parametrityypin ristiriita + +ORA-17014=ResultSet.next-funktiota ei kutsuttu + +ORA-17015=Lause peruutettiin + +ORA-17016=Lause aikakatkaistiin + +ORA-17017=Kohdistin on jo alustettu + +ORA-17018=Virheellinen kohdistin + +ORA-17019=Voi vain kuvata kysely\u00e4 + +ORA-17020=Virheellinen rivin esihaku + +ORA-17021=M\u00e4\u00e4ritykset puuttuvat + +ORA-17022=M\u00e4\u00e4ritykset puuttuvat indeksist\u00e4 + +ORA-17023=Ominaisuutta ei tueta + +ORA-17024=Ei luettuja tietoja + +ORA-17025=Virhe: defines.isNull () + +ORA-17026=Numeerinen ylivuoto + +ORA-17027=Tietovirta on jo suljettu + +ORA-17028=Uusia m\u00e4\u00e4rityksi\u00e4 ei voi tehd\u00e4, ennen kuin nykyinen tulosjoukko on suljettu + +ORA-17029=setReadOnly: Vain luku -yhteyksi\u00e4 ei tueta + +ORA-17030=READ_COMMITTED ja SERIALIZABLE ovat ainoat sallitut tapahtumatasot + +ORA-17031=setAutoClose: Tuetaan vain Automaattinen sulkeminen -tilaa + +ORA-17032=rivin esihakuarvoa ei voi asettaa nollaksi + +ORA-17033=V\u00e4\u00e4r\u00e4nmuotoinen SQL92-merkkijono kohdassa + +ORA-17034=Ei-tuettu SQL92-merkki kohdassa + +ORA-17035=Merkist\u00f6\u00e4 ei tueta!! + +ORA-17036=poikkeus kohdassa OracleNumber + +ORA-17037=Muunto UTF8:n ja UCS2:n v\u00e4lill\u00e4 ei onnistunut + +ORA-17038=Tavutaulukko on liian lyhyt + +ORA-17039=Merkkitaulukko on liian lyhyt + +ORA-17040=Aliyhteysk\u00e4yt\u00e4nt\u00f6 on m\u00e4\u00e4ritett\u00e4v\u00e4 yhteyden URL:ia varten + +ORA-17041=Puuttuva IN- tai OUT-parametri indeksiss\u00e4: + +ORA-17042=Virheellinen er\u00e4n arvo + +ORA-17043=Virheellinen tietovirran enimm\u00e4iskoko + +ORA-17044=Sis\u00e4inen virhe: Datataulukkoa ei ole varattu + +ORA-17045=Sis\u00e4inen virhe: Er\u00e4n arvoa suurempia sidosarvoja ei voi k\u00e4ytt\u00e4\u00e4 + +ORA-17046=Sis\u00e4inen virhe: Virheellinen tietojen k\u00e4yt\u00f6n indeksi + +ORA-17047=Virhe tyyppikuvaajan j\u00e4sennyksess\u00e4 + +ORA-17048=M\u00e4\u00e4ritt\u00e4m\u00e4t\u00f6n tyyppi + +ORA-17049=Java- ja sql-objektityypit eiv\u00e4t ole yhdenmukaisia + +ORA-17050=vektorissa ei ole t\u00e4llaista elementti\u00e4 + +ORA-17051=T\u00e4t\u00e4 APIa ei voi k\u00e4ytt\u00e4\u00e4 muille kuin UDT-tyypeille + +ORA-17052=Virheellinen viite + +ORA-17053=Virheellinen koko + +ORA-17054=Virheellinen LOB-paikannin + +ORA-17055=Virheellinen merkki havaittu kohdassa + +ORA-17056=Merkist\u00f6\u00e4 ei tueta + +ORA-17057=Suljettu LOB + +ORA-17058=Sis\u00e4inen virhe: Virheellinen NLS-muuntosuhde + +ORA-17059=Sis\u00e4iseksi vastaavuudeksi muuntaminen ei onnistunut + +ORA-17060=Kuvaajan rakentaminen ei onnistunut + +ORA-17061=Puuttuva kuvaaja + +ORA-17062=Virheellinen viitekohdistin + +ORA-17063=Ei tapahtumassa + +ORA-17064=Virheellinen syntaksi tai tietokannan nimell\u00e4 on tyhj\u00e4 arvo + +ORA-17065=Muuntoluokalla on tyhj\u00e4 arvo + +ORA-17066=Tarvitaan k\u00e4ytt\u00f6oikeustasokohtainen toteutus + +ORA-17067=Virheellinen Oraclen URL-osoite + +ORA-17068=Virheellinen argumentti tai argumentteja kutsussa + +ORA-17069=K\u00e4yt\u00e4 omaa XA-kutsua + +ORA-17070=Tietojen koko on suurempi kuin t\u00e4m\u00e4n tyypin enimm\u00e4iskoko + +ORA-17071=VARRAY-enimm\u00e4israja on ylitetty + +ORA-17072=Lis\u00e4tty arvo liian suuri sarakkeeseen + +ORA-17073=Looginen kahva ei ole en\u00e4\u00e4 sallittu + +ORA-17074=virheellinen nimirakenne + +ORA-17075=Virheellinen toiminto vain eteenp\u00e4in suuntautuvassa tulosjoukossa + +ORA-17076=Virheellinen toiminto vain luku -tyyppisess\u00e4 tulosjoukossa + +ORA-17077=REF-arvoa ei voi asettaa + +ORA-17078=Toimintoa ei voi tehd\u00e4, sill\u00e4 yhteys on jo muodostettu + +ORA-17079=K\u00e4ytt\u00e4j\u00e4n valtuudet eiv\u00e4t vastaa olemassa olevia valtuuksia + +ORA-17080=virheellinen er\u00e4komento + +ORA-17081=virhe er\u00e4ajon aikana + +ORA-17082=Nykyist\u00e4 rivi\u00e4 ei ole + +ORA-17083=Ei lis\u00e4tt\u00e4v\u00e4ll\u00e4 rivill\u00e4 + +ORA-17084=Kutsuttiin lis\u00e4tt\u00e4v\u00e4\u00e4 rivi\u00e4 + +ORA-17085=Arvoristiriitoja + +ORA-17086=M\u00e4\u00e4ritt\u00e4m\u00e4t\u00f6n sarakkeen arvo lis\u00e4tt\u00e4v\u00e4ll\u00e4 rivill\u00e4 + +ORA-17087=Suorityskykyvihje ohitettiin: setFetchDirection() + +ORA-17088=Syntaksia ei tueta pyydetylle tulosjoukkotyypille ja tausta-ajotasolle +ORA-17089=sis\u00e4inen virhe + +ORA-17090=toiminto ei ole sallittu + +ORA-17091=Tulosjoukkoa ei voi luoda pyydetyss\u00e4 tyypiss\u00e4 ja/tai tausta-ajotasossa + +ORA-17092=JDBC-lauseita ei voi luoda tai k\u00e4sitell\u00e4 kutsuprosessin lopussa + +ORA-17093=OCI-operaatio palautti OCI_SUCCESS_WITH_INFO + +ORA-17094=Objektityypin versiot eiv\u00e4t ole yhteensopivia + +ORA-17095=Lausev\u00e4limuistin kokoa ei ole m\u00e4\u00e4ritetty + +ORA-17096=Lauseen v\u00e4limuistiin tallennusta ei voi ottaa k\u00e4ytt\u00f6\u00f6n t\u00e4m\u00e4n loogisen yhteyden yhteydess\u00e4. + +ORA-17097=Virheellinen PL/SQL-indeksitaulun elementtityyppi + +ORA-17098=Virheellinen tyhj\u00e4 lob-operaatio + +ORA-17099=Virheellinen PL/SQL-indeksitaulun taulukon pituus + +ORA-17100=Virheellinen tietokannan Java-objekti + +ORA-17101=Virheelliset ominaisuudet OCI-yhteysvaranto-objektissa + +ORA-17102=Kohdetta Bfile voi vain lukea + +ORA-17103=virheellinen yhteystyyppi getConnection. K\u00e4yt\u00e4 getJavaSqlConnection-rutiinia + +ORA-17104=suoritettava SQL-lause ei voi olla tyhj\u00e4 tai nolla + +ORA-17105=yhteydenottoistunnon aikavy\u00f6hykett\u00e4 ei m\u00e4\u00e4ritetty + +ORA-17106=m\u00e4\u00e4ritettiin virheellinen JDBC-OCI-ohjainyhteysvarannon kokoonpano + +ORA-17107=m\u00e4\u00e4ritettiin virheellinen v\u00e4lipalvelintyyppi + +ORA-17108=Kohteessa defineColumnType ei ole m\u00e4\u00e4ritetty enimm\u00e4ispituutta + +ORA-17109=Java-vakiomerkkikoodausta ei l\u00f6ydy + +ORA-17110=suoritus valmis, aiheutti varoituksen + +ORA-17111=M\u00e4\u00e4ritettiin virheellinen yhteysv\u00e4limuistin TTL-aikakatkaisu + +ORA-17112=M\u00e4\u00e4ritettiin virheellinen s\u00e4iev\u00e4li + +ORA-17113=S\u00e4ikeen v\u00e4lin arvo on suurempi kuin v\u00e4limuistin aikakatkaisuarvo + +ORA-17114=paikallisen tapahtuman vahvistusta ei voi k\u00e4ytt\u00e4\u00e4 yleisess\u00e4 tapahtumassa + +ORA-17115=paikallisen tapahtuman peruutusta ei voi k\u00e4ytt\u00e4\u00e4 yleisess\u00e4 tapahtumassa + +ORA-17116=automaattista vahvistusta ei voi ottaa k\u00e4ytt\u00f6\u00f6n aktiivisessa yleisess\u00e4 tapahtumassa + +ORA-17117=tallennuspistett\u00e4 ei voi asettaa aktiivisessa yleisess\u00e4 tapahtumassa + +ORA-17118=nimetyn tallennuspisteen tunnistetta ei voi hakea + +ORA-17119=nimett\u00f6m\u00e4n tallennuspisteen nime\u00e4 ei voi hakea + +ORA-17120=tallennuspistett\u00e4 ei voi m\u00e4\u00e4ritt\u00e4\u00e4, kun automaattinen vahvistus on k\u00e4yt\u00f6ss\u00e4 + +ORA-17121=tallennuspisteeseen ei voi peruuttaa, kun automaattinen vahvistus on k\u00e4yt\u00f6ss\u00e4 + +ORA-17122=paikalliseen txn-tallennuspisteeseen ei voi peruuttaa yleisess\u00e4 tapahtumassa + +ORA-17123=M\u00e4\u00e4ritettiin virheellinen lausev\u00e4limuistin koko + +ORA-17124=M\u00e4\u00e4ritettiin virheellinen yhteysv\u00e4limuistin toimettomuuden aikakatkaisu + +ORA-17200=XA-avausmerkkijonoa ei voi muuntaa oikein Javasta C:hen + +ORA-17201=XA-sulkemismerkkijonoa ei voi muuntaa oikein Javasta C:hen + +ORA-17202=RM-nime\u00e4 ei voi muuntaa oikein Javasta C:hen + +ORA-17203=Osoitintyyppi\u00e4 ei voi muuntaa jlong-tyypiksi + +ORA-17204=Sy\u00f6tetaulukko on liian lyhyt OCI-kahvojen pit\u00e4miseen + +ORA-17205=OCISvcCtx-kahvan nouto C-XA:sta k\u00e4ytt\u00e4m\u00e4ll\u00e4 xaoSvcCtx:\u00e4\u00e4 ei onnistunut + +ORA-17206=OCIEnv-kahvan nouto C-XA:sta k\u00e4ytt\u00e4m\u00e4ll\u00e4 xaoEnv:i\u00e4 ei onnistunut + +ORA-17207=Ominaisuutta tnsEntry ei m\u00e4\u00e4ritetty kohteessa DataSource + +ORA-17213=C-XA palautti xa_open-rutiinin aikana XAER_RMERR-arvon + +ORA-17215=C-XA palautti xa_open-rutiinin aikana XAER_INVAL-arvon + +ORA-17216=C-XA palautti xa_open-rutiinin aikana XAER_PROTO-arvon + +ORA-17233=C-XA palautti xa_close-rutiinin aikana XAER_RMERR-arvon + +ORA-17235=C-XA palautti xa_close-rutiinin aikana XAER_INVAL-arvon + +ORA-17236=C-XA palautti xa_close-rutiinin aikana XAER_PROTO-arvon + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Yhteysk\u00e4yt\u00e4nt\u00f6virhe + +ORA-17402=Vain yht\u00e4 RPA-sanomaa odotetaan + +ORA-17403=Vain yht\u00e4 RXH-sanomaa odotetaan + +ORA-17404=Vastaanotettu odotettua useampia RXD:it\u00e4 + +ORA-17405=UAC:n pituus ei ole nolla + +ORA-17406=Puskurin enimm\u00e4ispituus ylittyy + +ORA-17407=virheellinen Type Representation(setRep) + +ORA-17408=virheellinen Type Representation(getRep) + +ORA-17409=virheellinen puskurin pituus + +ORA-17410=Vastakkeessa ei en\u00e4\u00e4 luettavia tietoja + +ORA-17411=Tietotyyppien vastaavuusvirhe + +ORA-17412=Tyypin pituus ylitt\u00e4\u00e4 enimm\u00e4ispituuden + +ORA-17413=Avaimen koko ylittyy + +ORA-17414=Puskurin koko ei riit\u00e4 sarakkeiden nimien tallentamiseen + +ORA-17415=T\u00e4t\u00e4 tyyppi\u00e4 ei ole k\u00e4sitelty + +ORA-17416=FATAL + +ORA-17417=NLS-ongelma, sarakkeiden nimien tulkinta ep\u00e4onnistui + +ORA-17418=Sis\u00e4isen rakenteen kent\u00e4n pituusvirhe + +ORA-17419=Virheellinen sarakkeiden m\u00e4\u00e4r\u00e4 palautettu + +ORA-17420=Oraclen versiota ei m\u00e4\u00e4ritetty + +ORA-17421=Tyyppej\u00e4 tai yhteytt\u00e4 ei m\u00e4\u00e4ritetty + +ORA-17422=Virheellinen luokka factory-objektityypiss\u00e4 + +ORA-17423=PLSQL-lohkoa k\u00e4ytet\u00e4\u00e4n ilman IOV-m\u00e4\u00e4rityst\u00e4 + +ORA-17424=Yritet\u00e4\u00e4n toista j\u00e4rjestelytoimintoa + +ORA-17425=PLSQL-lohkon tietovirta palautetaan + +ORA-17426=Sek\u00e4 IN- ett\u00e4 OUT-sidosten arvo on tyhj\u00e4 (NULL) + +ORA-17427=Alustamaton OAC k\u00e4yt\u00f6ss\u00e4 + +ORA-17428=Yhteyden j\u00e4lkeen on kutsuttava sis\u00e4\u00e4nkirjautumista + +ORA-17429=Ainakin palvelimeen on oltava yhteydess\u00e4 + +ORA-17430=Palvelimeen on oltava kirjautuneena + +ORA-17431=J\u00e4sennett\u00e4v\u00e4 SQL-lause on tyhj\u00e4 + +ORA-17432=virheelliset valinnat All7:ss\u00e4 + +ORA-17433=kutsussa virheellisi\u00e4 argumentteja + +ORA-17434=ei tietovirtatilassa + +ORA-17435=virheellinen m\u00e4\u00e4r\u00e4 in_out_binds-sidoksia IOV:ssa + +ORA-17436=virheellinen m\u00e4\u00e4r\u00e4 Out-sidoksia + +ORA-17437=Virhe PLSQL-lohkon IN/OUT-argument(e)issa + +ORA-17438=Sis\u00e4inen - Odottamaton arvo + +ORA-17439=Virheellinen SQL-tyyppi + +ORA-17440=DBItem/DBType on tyhj\u00e4 (NULL) + +ORA-17441=Oraclen versiota ei tueta. Vanhin tuettu versio on 7.2.3. + +ORA-17442=Virheellinen viitekohdistimen arvo + +ORA-17443=THIN-ohjain ei tue k\u00e4ytt\u00e4j\u00e4tunnuksen tai salasanan tyhj\u00e4\u00e4 arvoa + +ORA-17444=Palvelimelta vastaanotettua TTC-yhteysk\u00e4yt\u00e4nn\u00f6n versiota ei tueta + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a2/70e68e2185a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a2/70e68e2185a9001c1d3abf97745a02da new file mode 100644 index 0000000..d3b0b46 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a2/70e68e2185a9001c1d3abf97745a02da @@ -0,0 +1,149 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + +// conn.addWindowListener(new WindowListener(){ +// private void windowActivated(WindowEvent ev){ +// +// } +// }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a2/901295e005a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a2/901295e005a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..e70ac10 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a2/901295e005a4001c1027e59cc3e35e89 @@ -0,0 +1,90 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + int i = rsmd.getColumnCount(); + + System.out.println("Nombre de colonne: " + i); + + for(int j = 0; j < i; j++){ + System.out.println(rsmd.getColumnName(j)); + } + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/40f21f1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/40f21f1498af001c18c4935e001381da new file mode 100644 index 0000000..13ca06c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/40f21f1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/6097273376a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/6097273376a9001c1d3abf97745a02da new file mode 100644 index 0000000..1f47908 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/6097273376a9001c1d3abf97745a02da @@ -0,0 +1,100 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion - Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/80c6e11598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/80c6e11598af001c18c4935e001381da new file mode 100644 index 0000000..26c8a09 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/80c6e11598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/c0803b1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/c0803b1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..58b9da7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a3/c0803b1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Error intern + +ORA-17002=Excepci\u00f3 ES + +ORA-17003=\u00cdndex de columna incorrecte + +ORA-17004=Tipus de columna incorrecte + +ORA-17005=Tipus de columna no suportat + +ORA-17006=Nom de columna incorrecte + +ORA-17007=Columna din\u00e0mica no v\u00e0lida + +ORA-17008=Connexi\u00f3 tancada + +ORA-17009=Sent\u00e8ncia tancada + +ORA-17010=Resultset tancat + +ORA-17011=Resultset exhaurit + +ORA-17012=Conflicte en el tipus de par\u00e0metre + +ORA-17014=No s\'ha cridat ResultSet.next + +ORA-17015=S\'ha cancel\u00b7lat la declaraci\u00f3 + +ORA-17016=La declaraci\u00f3 ha superat el temps d\'espera + +ORA-17017=Cursor ja inicialitzat + +ORA-17018=Cursor incorrecte + +ORA-17019=Nom\u00e9s es pot descriure una consulta + +ORA-17020=Preobtenci\u00f3 de fila incorrecta + +ORA-17021=Manca definici\u00f3 + +ORA-17022=Manca definici\u00f3 a l\'\u00edndex + +ORA-17023=Prestaci\u00f3 no suportada + +ORA-17024=No hi ha lectura de dades + +ORA-17025=Error a defines.isNull () + +ORA-17026=Sobreeiximent num\u00e8ric + +ORA-17027=El flux ja ha estat tancat + +ORA-17028=No es poden fer definicions noves fins que no es tanqui el ResultSet actual + +ORA-17029=setReadOnly: Connexions de nom\u00e9s lectura no suportades + +ORA-17030=READ_COMMITTED i SERIALIZABLE s\u00f3n els \u00fanics nivells de transacci\u00f3 v\u00e0lids + +ORA-17031=setAutoClose: Nom\u00e9s suporta el mode de tancament autom\u00e0tic activat + +ORA-17032=no es pot fixar l\'obtenci\u00f3 de fila a zero + +ORA-17033=Cadena SQL92 mal constru\u00efda en la posici\u00f3 + +ORA-17034=Senyal SQL92 no suportada en la posici\u00f3 + +ORA-17035=Joc de car\u00e0cters no suportat !! + +ORA-17036=excepci\u00f3 a OracleNumber + +ORA-17037=Fallada en convertir entre UTF8 i UCS2 + +ORA-17038=Matriu de bytes no suficientment llarga + +ORA-17039=Matriu de car\u00e0cters no suficientment llarga + +ORA-17040=S\'ha d\'especificar el Sub Protocol en l\' URL de connexi\u00f3 + +ORA-17041=Manca el par\u00e0metre IN o OUT en l\'\u00edndex: + +ORA-17042=Valor de Lot Incorrecte + +ORA-17043=Grand\u00e0ria M\u00e0xima de Flux Incorrecta + +ORA-17044=Error intern: Matriu de dades no assignada + +ORA-17045=Error intern: Intent d\'accedir a valors d\'unificaci\u00f3 superiors al valor del lot + +ORA-17046=Error intern: \u00cdndex incorrecte per a l\'acc\u00e9s a les dades + +ORA-17047=Error en l\'an\u00e0lisi del Descriptor de Tipus + +ORA-17048=Tipus no definit + +ORA-17049=Tipus d\'objecte java i sql no inconsistents + +ORA-17050=no hi ha cap element com aquest en el vector + +ORA-17051=Aquest API no pot \u00e9sser utilitzat per a tipus no UDT + +ORA-17052=Aquesta ref no \u00e9s v\u00e0lida + +ORA-17053=Aquesta grand\u00e0ria no \u00e9s v\u00e0lida + +ORA-17054=Aquest localitzador LOB no \u00e9s v\u00e0lid + +ORA-17055=S\'ha trobat un car\u00e0cter incorrecte a + +ORA-17056=Joc de car\u00e0cters no suportat + +ORA-17057=LOB tancat + +ORA-17058=Error intern: Relaci\u00f3 de conversi\u00f3 NLS incorrecta + +ORA-17059=No es pot convertir en representaci\u00f3 interna + +ORA-17060=No es pot construir el descriptor + +ORA-17061=Manca el descriptor + +ORA-17062=El cursor de ref no \u00e9s v\u00e0lid + +ORA-17063=No en una transacci\u00f3 + +ORA-17064=Sintaxi incorrecta o nom de base de dades nul + +ORA-17065=La classe de conversi\u00f3 \u00e9s nul\u00b7la + +ORA-17066=Cal una implementaci\u00f3 espec\u00edfica de l\'estrat d\'acc\u00e9s + +ORA-17067=S\'ha especificat un URL Oracle incorrecte + +ORA-17068=Argument(s) incorrecte(s) a la trucada + +ORA-17069=Utilitzar trucada XA expl\u00edcita + +ORA-17070=Grand\u00e0ria de dades major a la grand\u00e0ria m\u00e0xima per a aquest tipus + +ORA-17071=S\'ha sobrepassat el l\u00edmit VARRAY m\u00e0xim + +ORA-17072=EL valor insertat \u00e9s massa gran per la columna + +ORA-17073=El tractament l\u00f2gic ja no \u00e9s v\u00e0lid + +ORA-17074=patr\u00f3 de nom incorrecte + +ORA-17075=Operaci\u00f3 incorrecta en el joc de resultats de nom\u00e9s reenviament + +ORA-17076=Operaci\u00f3 incorrecta en el joc de resultats de nom\u00e9s lectura + +ORA-17077=Fallada en definir el valor REF + +ORA-17078=No es pot realitzar l\'operaci\u00f3 perqu\u00e8 les connexions ja estan obertes + +ORA-17079=Les credencials d\'usuari no coincideixen amb les ja existents + +ORA-17080=comanda de lot incorrecta + +ORA-17081=s\'ha produ\u00eft un error durant el processament per lots + +ORA-17082=No hi ha cap fila actual + +ORA-17083=No es troba en la fila d\'inserci\u00f3 + +ORA-17084=S\'ha cridat en la fila d\'inserci\u00f3 + +ORA-17085=S\'originen conflictes amb el valor + +ORA-17086=Valor de columna no definit a la fila d\'inserci\u00f3 + +ORA-17087=Indicaci\u00f3 de rendiment ignorada: setFetchDirection() + +ORA-17088=Sintaxi no suportada per al tipus de resultset i el nivell de concurr\u00e8ncia sol\u00b7licitats +ORA-17089=error intern + +ORA-17090=operaci\u00f3 no permesa + +ORA-17091=No es pot crear el tipus un joc de resultats en el tipus i/o nivell de concurr\u00e8ncia sol\u00b7licitats + +ORA-17092=No es poden crear o executar sent\u00e8ncies JDBC al final del processament de crides + +ORA-17093=L\'operaci\u00f3 OCI ha retornat OCI_SUCCESS_WITH_INFO + +ORA-17094=No coincideix la versi\u00f3 del tipus d\'objecte + +ORA-17095=No s'ha definit la grand\u00e0ria de la cach\u00e9 de la declaraci\u00f3 + +ORA-17096=No es pot activar l\'escriptura de sent\u00e8ncies a la cache per a aquesta connexi\u00f3 l\u00f2gica. + +ORA-17097=Tipus d\'element no v\u00e0lid a la Taula d\'\u00cdndex PL/SQL + +ORA-17098=Operaci\u00f3 de lob buit no v\u00e0lida + +ORA-17099=Longitud de vector de taula d\'\u00edndex PL/SQL no v\u00e0lida + +ORA-17100=Objecte Java de base de dades no v\u00e0lid + +ORA-17101=Propietats no v\u00e0lides a l\'Objecte del Conjunt de Connexi\u00f3 OCI + +ORA-17102=Bfile \u00e9s de nom\u00e9s lectura + +ORA-17103=getConnection retornar\u00e0 un tipus de connexi\u00f3 no v\u00e0lid. En el seu lloc, utilitzeu getJavaSqlConnection + +ORA-17104=la sent\u00e8ncia SQL per executar no pot \u00e9sser buida o nul\u00b7la + +ORA-17105=no s\'ha establert la zona hor\u00e0ria de la sessi\u00f3 de connexi\u00f3 + +ORA-17106=s'ha especificat una configuraci\u00f3 d'agrupaci\u00f3 de connexions de controlador JDBC-OCI que no \u00e9s v\u00e0lida + +ORA-17107=el tipus de proxy especificat no \u00e9s v\u00e0lid + +ORA-17108=No s'ha especificat cap longitud m\u00e0xima a defineColumnType + +ORA-17109=no s'ha trobat la codificaci\u00f3 de car\u00e0cters Java est\u00e0ndard + +ORA-17110=execuci\u00f3 completada amb av\u00eds + +ORA-17111=S'ha especificat un temps d'espera de TTL de la cach\u00e9 de connexi\u00f3 incorrecte + +ORA-17112=S'ha especificat un interval de threade que no \u00e9s v\u00e0lid + +ORA-17113=El valor d'interval del thread \u00e9s m\u00e9s gran que el valor de temps d'espera de cach\u00e9 + +ORA-17114=no s'ha pogut utilitzar una validaci\u00f3 de transacci\u00f3 local en una transacci\u00f3 global + +ORA-17115=no s'ha pogut utilitzar un rollback de transacci\u00f3 local en una transacci\u00f3 global + +ORA-17116=no s'ha pogut activar la validaci\u00f3 autom\u00e0tica en una transacci\u00f3 global activa + +ORA-17117=no s'ha pogut establir el punt de restauraci\u00f3 en una transacci\u00f3 global activa + +ORA-17118=no s'ha obtingut cap ID per a un punt de restauraci\u00f3 amb nom + +ORA-17119=no s'ha obtingut cap nom per a un punt de restauraci\u00f3 sense nom + +ORA-17120=no s'ha pogut definir cap Punt de restauraci\u00f3 amb la validaci\u00f3 autom\u00e0tica activada + +ORA-17121=no s'ha pogut efectuar un rollback al Punt de recuperaci\u00f3 amb la validaci\u00f3 autom\u00e0tica activada + +ORA-17122=no s'ha pogut efectuar un rollback a un Punt de restauraci\u00f3 txn local en una transacci\u00f3 global + +ORA-17123=S'ha especificat una grand\u00e0ria de cach\u00e9 de declaraci\u00f3 incorrecta + +ORA-17124=S'ha especificat un temps d'espera d'Inactivitat de la cach\u00e9 de connexi\u00f3 incorrecte + +ORA-17200=No s\'ha pogut convertir b\u00e9 la cadena d\'obertura XA de Java a C + +ORA-17201=No s\'ha pogut convertir b\u00e9 la cadena de tancament XA de Java a C + +ORA-17202=No s\'ha pogut convertir b\u00e9 el nom RM de Java a C + +ORA-17203=No s\'ha pogut canviar el tipus d\'apuntador de fusi\u00f3 per jlong + +ORA-17204=El vector d\'entrada \u00e9s massa curt per contenir gestors OCI + +ORA-17205=No s\'ha pogut obtenir el gestor OCISvcCtx de C-XA mitjan\u00e7ant xaoSvcCtx + +ORA-17206=No s\'ha pogut obtenir el egstor OCIEnv de C-XA mitjan\u00e7ant xaoEnv + +ORA-17207=La propietat tnsEntry no ha estat establerta a l\'Origen de Dades + +ORA-17213=C-XA ha retornat XAER_RMERR durant xa_open + +ORA-17215=C-XA ha retornat XAER_INVAL durant xa_open + +ORA-17216=C-XA ha retornat XAER_PROTO durant xa_open + +ORA-17233=C-XA ha retornat XAER_RMERR durant xa_close + +ORA-17235=C-XA ha retornat XAER_INVAL durant xa_close + +ORA-17236=C-XA ha retornat XAER_PROTO durant xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violaci\u00f3 de protocol + +ORA-17402=Nom\u00e9s s\'espera un missatge RPA + +ORA-17403=Nom\u00e9s s\'espera un missatge RXH + +ORA-17404=S\'han rebut m\u00e9s RXD dels esperats + +ORA-17405=La longitud UAC no \u00e9s zero + +ORA-17406=Sobrepassa la longitud m\u00e0xima del buffer + +ORA-17407=representaci\u00f3 incorrecta del tipus(setRep) + +ORA-17408=representaci\u00f3 incorrecta del tipus(getRep) + +ORA-17409=longitud de buffer incorrecta + +ORA-17410=No hi ha m\u00e9s dades per llegir al s\u00f2col + +ORA-17411=no coincideixen les representacions dels Tipus de Dades + +ORA-17412=Longitud de tipus m\u00e9s gran que la m\u00e0xima + +ORA-17413=Sobrepassa la grand\u00e0ria de la clau + +ORA-17414=Grand\u00e0ria de coix\u00ed insuficient per emmagatzemar els Noms de les Columnes + +ORA-17415=Aquest tipus no ha estat gestionat + +ORA-17416=FATAL + +ORA-17417=Problema NLS, no s\'han pogut descodificar els noms de les columnes + +ORA-17418=Error de longitud del camp d\'estructura interna + +ORA-17419=Nombre de columnes retornades incorrecte + +ORA-17420=Versi\u00f3 d\'Oracle no definida + +ORA-17421=Tipus o Connexi\u00f3 no definits + +ORA-17422=Classe no v\u00e0lida a la f\u00e0brica + +ORA-17423=Utilitzaci\u00f3 de bloc PLSQL sense un IOV definit + +ORA-17424=Intentant una operaci\u00f3 de classificaci\u00f3 diferent + +ORA-17425=Retornant un flux en el bloc PLSQL + +ORA-17426=Tant el lligam IN com l\'OUT s\u00f3n NULL + +ORA-17427=Utilitzant un OAC no inicialitzat + +ORA-17428=S'ha de cridar l'entrada despr\u00e9s de connectar + +ORA-17429=Haur\u00edeu d'estar almenys connectat al servidor + +ORA-17430=Ha d'estar connectat al servidor + +ORA-17431=La sent\u00e8ncia SQL per analitzar \u00e9s nul\u00b7la + +ORA-17432=opcions no v\u00e0lides en la trucada + +ORA-17433=arguments no v\u00e0lids en la trucada + +ORA-17434=no en el mode de flux + +ORA-17435=nombre de in_out_binds en IOV no v\u00e0lid + +ORA-17436=nombre de sortides no v\u00e0lid + +ORA-17437=Error en el(s) argument(s) IN/OUT del bloc PLSQL + +ORA-17438=Intern - Valor no esperat + +ORA-17439=Tipus SQL no v\u00e0lid + +ORA-17440=DBItem/DBType \u00e9s nul + +ORA-17441=Versi\u00f3 d\'Oracle no suportada. La versi\u00f3 m\u00ednima suportada \u00e9s la 7.2.3. + +ORA-17442=El valor de cursor de ref no \u00e9s v\u00e0lid + +ORA-17443=Usuari o paraula clau nuls no suportats al controlador THIN + +ORA-17444=La versi\u00f3 de Protocol TTC rebuda del servidor no \u00e9s suportada + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a4/60ac8b1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a4/60ac8b1498af001c18c4935e001381da new file mode 100644 index 0000000..899e48d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a4/60ac8b1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a4/906f6d1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a4/906f6d1798af001c18c4935e001381da new file mode 100644 index 0000000..063836d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a4/906f6d1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a4/90e6cc8bcba4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a4/90e6cc8bcba4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..6e092ea --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a4/90e6cc8bcba4001c1acc9f54b60f9b57 @@ -0,0 +1,83 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + //Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setLayout( new FlowLayout()); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a5/308eaf82c8a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a5/308eaf82c8a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..54c2459 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a5/308eaf82c8a4001c1acc9f54b60f9b57 @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + + Panneau_Centre.add(Panneau_Centre_Gauche) + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a5/a0c9b51498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a5/a0c9b51498af001c18c4935e001381da new file mode 100644 index 0000000..82a41a8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a5/a0c9b51498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a5/b0e82c9ec8a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a5/b0e82c9ec8a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..b6fc857 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a5/b0e82c9ec8a4001c1acc9f54b60f9b57 @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + + Panneau_Centre.add(Panneau_Centre_Gauche); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a6/50002a30fba3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a6/50002a30fba3001c1027e59cc3e35e89 new file mode 100644 index 0000000..0281110 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a6/50002a30fba3001c1027e59cc3e35e89 @@ -0,0 +1,33 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + try { + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + Connection conn = DriverManager.getConnection(url, "dut", + "dut"); + + System.out.println("Accs la base"); + } catch (SQLException e) { + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a6/70907245c9a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a6/70907245c9a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..d8c08b8 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a6/70907245c9a4001c1acc9f54b60f9b57 @@ -0,0 +1,73 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + Panneau_Centre_Gauche.setSize(100,null); + Panneau_Centre_Gauche.setBorder(FlowLayout); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a6/c0ba621a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a6/c0ba621a98af001c18c4935e001381da new file mode 100644 index 0000000..428ddca Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a6/c0ba621a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a7/30da551598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a7/30da551598af001c18c4935e001381da new file mode 100644 index 0000000..b8c81e2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a7/30da551598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a7/507491e384a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a7/507491e384a9001c1d3abf97745a02da new file mode 100644 index 0000000..50ac291 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a7/507491e384a9001c1d3abf97745a02da @@ -0,0 +1,149 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentListener; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + +// conn.addWindowListener(new WindowListener(){ +// private void windowActivated(WindowEvent ev){ +// +// } +// }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a7/c0602035fda3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a7/c0602035fda3001c1027e59cc3e35e89 new file mode 100644 index 0000000..9322258 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a7/c0602035fda3001c1027e59cc3e35e89 @@ -0,0 +1,45 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.*; +import javax.sql.*; +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection conn = new Connection(); + conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a8/708f3b6104a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a8/708f3b6104a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..81db6ac --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a8/708f3b6104a4001c1027e59cc3e35e89 @@ -0,0 +1,74 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + resultat.toString(); + + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a9/00d81b1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a9/00d81b1898af001c18c4935e001381da new file mode 100644 index 0000000..5000fbf Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a9/00d81b1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a9/301966f720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a9/301966f720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..8d9fe8a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a9/301966f720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 + +ORA-17002=\u0395\u03be\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u0395\u0395 + +ORA-17003=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17004=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17005=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17006=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03cc\u03bd\u03bf\u03bc\u03b1 \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17007=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b4\u03c5\u03bd\u03b1\u03bc\u03b9\u03ba\u03ae \u03c3\u03c4\u03ae\u03bb\u03b7 + +ORA-17008=\u0397 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17009=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17010=\u03a4\u03bf \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17011=\u03a4\u03bf \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03b5\u03be\u03b1\u03bd\u03c4\u03bb\u03ae\u03b8\u03b7\u03ba\u03b5 + +ORA-17012=\u0394\u03b9\u03ad\u03bd\u03b5\u03be\u03b7 \u03c4\u03cd\u03c0\u03c9\u03bd \u03c0\u03b1\u03c1\u03b1\u03bc\u03ad\u03c4\u03c1\u03c9\u03bd + +ORA-17014=\u0394\u03b5\u03bd \u03ad\u03b3\u03b9\u03bd\u03b5 \u03ba\u03bb\u03ae\u03c3\u03b7 \u03c3\u03c4\u03bf ResultSet.next + +ORA-17015=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 \u03b1\u03ba\u03c5\u03c1\u03ce\u03b8\u03b7\u03ba\u03b5 + +ORA-17016=\u03a5\u03c0\u03ad\u03c1\u03b2\u03b1\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c7\u03c1\u03bf\u03bd\u03b9\u03ba\u03bf\u03cd \u03bf\u03c1\u03af\u03bf\u03c5 \u03c4\u03b7\u03c2 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7\u03c2 + +ORA-17017=O Cursor \u03ad\u03c7\u03b5\u03b9 \u03b1\u03c1\u03c7\u03b9\u03ba\u03bf\u03c0\u03bf\u03b9\u03b7\u03b8\u03b5\u03af \u03ae\u03b4\u03b7 + +ORA-17018=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 cursor + +ORA-17019=\u0395\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03bc\u03cc\u03bd\u03bf \u03b7 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae \u03b5\u03bd\u03cc\u03c2 \u03b5\u03c1\u03c9\u03c4\u03ae\u03bc\u03b1\u03c4\u03bf\u03c2 + +ORA-17020=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03c0\u03c1\u03bf-\u03c0\u03c1\u03bf\u03c3\u03ba\u03cc\u03bc\u03b9\u03c3\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2 + +ORA-17021=\u039f\u03c1\u03b9\u03c3\u03bc\u03bf\u03af \u03c0\u03bf\u03c5 \u03bb\u03b5\u03af\u03c0\u03bf\u03c5\u03bd + +ORA-17022=\u039b\u03b5\u03af\u03c0\u03bf\u03c5\u03bd \u03bf\u03c1\u03b9\u03c3\u03bc\u03bf\u03af \u03b1\u03c0\u03cc \u03c4\u03bf \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf + +ORA-17023=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03b7 \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1 + +ORA-17024=\u0394\u03b5\u03bd \u03ad\u03b3\u03b9\u03bd\u03b5 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd + +ORA-17025=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03c4\u03bf defines.isNull () + +ORA-17026=\u0391\u03c1\u03b9\u03b8\u03bc\u03b7\u03c4\u03b9\u03ba\u03ae \u03c5\u03c0\u03b5\u03c1\u03c7\u03b5\u03af\u03bb\u03b9\u03c3\u03b7 + +ORA-17027=\u03a4\u03bf stream \u03ad\u03c7\u03b5\u03b9 \u03ba\u03bb\u03b5\u03af\u03c3\u03b5\u03b9 \u03ae\u03b4\u03b7 + +ORA-17028=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03bd\u03ad\u03c9\u03bd \u03bf\u03c1\u03b9\u03c3\u03bc\u03ce\u03bd \u03bc\u03ad\u03c7\u03c1\u03b9 \u03bd\u03b1 \u03ba\u03bb\u03b5\u03af\u03c3\u03b5\u03b9 \u03c4\u03bf \u03c4\u03c1\u03ad\u03c7\u03bf\u03bd \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd + +ORA-17029=\u039f\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03bc\u03cc\u03bd\u03bf \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7\u03c2: \u0394\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03bf\u03bd\u03c4\u03b1\u03b9 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03b9\u03c2 \u03bc\u03cc\u03bd\u03bf \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7\u03c2 + +ORA-17030=\u03a4\u03b1 \u03bc\u03cc\u03bd\u03b1 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ac \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03b1 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 READ_COMMITTED \u03ba\u03b1\u03b9 SERIALIZABLE + +ORA-17031=\u039f\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03c3\u03af\u03bc\u03b1\u03c4\u03bf\u03c2: \u03a5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03b7 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03c4\u03c1\u03cc\u03c0\u03bf\u03c5 \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03c3\u03af\u03bc\u03b1\u03c4\u03bf\u03c2 + +ORA-17032=\u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc \u03bd\u03b1 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03c1\u03bf-\u03c0\u03c1\u03bf\u03c3\u03ba\u03cc\u03bc\u03b9\u03c3\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2 \u03b7 \u03c4\u03b9\u03bc\u03ae \u03bc\u03b7\u03b4\u03ad\u03bd + +ORA-17033=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b1\u03bb\u03c6\u03b1\u03c1\u03b9\u03b8\u03bc\u03b7\u03c4\u03b9\u03ba\u03cc SQL92 \u03c3\u03c4\u03b7 \u03b8\u03ad\u03c3\u03b7 + +ORA-17034=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf \u03c3\u03cd\u03bc\u03b2\u03bf\u03bb\u03bf SQL92 \u03c3\u03c4\u03b7 \u03b8\u03ad\u03c3\u03b7 + +ORA-17035=\u0394\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03c4\u03bf \u03c3\u03b5\u03c4 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03c9\u03bd !! + +ORA-17036=\u03b5\u03be\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c3\u03c4\u03bf\u03bd \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc Oracle + +ORA-17037=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 \u03c4\u03bf\u03c5 UTF8 \u03c3\u03b5 UCS2 \u03ae \u03c4\u03bf\u03c5 UCS2 \u03c3\u03b5 UTF8 + +ORA-17038=\u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03c4\u03c9\u03bd Bytes \u03b4\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b1\u03c1\u03ba\u03b5\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 + +ORA-17039=\u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03c4\u03cd\u03c0\u03bf\u03c5 Char \u03b4\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b1\u03c1\u03ba\u03b5\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 + +ORA-17040=\u03a0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03c4\u03bf \u03b4\u03b5\u03c5\u03c4\u03b5\u03c1\u03b5\u03cd\u03bf\u03bd \u03c0\u03c1\u03c9\u03c4\u03cc\u03ba\u03bf\u03bb\u03bb\u03bf \u03c3\u03c4\u03b7 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 + +ORA-17041=\u039b\u03b5\u03af\u03c0\u03bf\u03c5\u03bd \u03bf\u03b9 \u03c0\u03b1\u03c1\u03ac\u03bc\u03b5\u03c4\u03c1\u03bf\u03b9 IN \u03ba\u03b1\u03b9 OUT \u03b1\u03c0\u03cc \u03c4\u03bf \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf: + +ORA-17042=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03c4\u03b9\u03bc\u03ae \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17043=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 stream + +ORA-17044=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b4\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b4\u03b5\u03c3\u03bc\u03b5\u03c5\u03c4\u03b5\u03af + +ORA-17045=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u03a0\u03c1\u03bf\u03c3\u03c0\u03ac\u03b8\u03b5\u03b9\u03b1 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 \u03c3\u03b5 \u03b4\u03b5\u03c3\u03bc\u03b5\u03c5\u03bc\u03ad\u03bd\u03b5\u03c2 \u03c4\u03b9\u03bc\u03ad\u03c2 \u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03b7\u03c2 \u03c4\u03b9\u03bc\u03ae\u03c2 \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17046=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf \u03b3\u03b9\u03b1 \u03c0\u03c1\u03bf\u03c3\u03c0\u03ad\u03bb\u03b1\u03c3\u03b7 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd + +ORA-17047=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03c4\u03b7\u03bd \u03b1\u03bd\u03ac\u03bb\u03c5\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c5 + +ORA-17048=\u039c\u03b7 \u03bf\u03c1\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 + +ORA-17049=\u039c\u03b7 \u03c3\u03c5\u03bd\u03b5\u03c0\u03b5\u03af\u03c2 \u03c4\u03cd\u03c0\u03bf\u03b9 \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03c9\u03bd java \u03ba\u03b1\u03b9 sql + +ORA-17050=\u03b4\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03b5\u03b9 \u03c4\u03ad\u03c4\u03bf\u03b9\u03bf \u03c3\u03c4\u03bf\u03b9\u03c7\u03b5\u03af\u03bf \u03c3\u03c4\u03bf \u03b4\u03b9\u03ac\u03bd\u03c5\u03c3\u03bc\u03b1 + +ORA-17051=\u0391\u03c5\u03c4\u03cc \u03c4\u03bf API \u03b4\u03b5\u03bd \u03bc\u03c0\u03bf\u03c1\u03b5\u03af \u03bd\u03b1 \u03c7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03b7\u03b8\u03b5\u03af \u03b3\u03b9\u03b1 \u03c4\u03cd\u03c0\u03bf\u03c5\u03c2 \u03c0\u03bf\u03c5 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 UDT + +ORA-17052=\u0391\u03c5\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae + +ORA-17053=\u03a4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc + +ORA-17054=\u039f \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1\u03c2 \u03b5\u03bd\u03c4\u03bf\u03c0\u03b9\u03c3\u03bc\u03bf\u03cd LOB \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 + +ORA-17055=\u0392\u03c1\u03ad\u03b8\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03b1\u03c2 \u03c3\u03c4\u03bf + +ORA-17056=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf \u03c3\u03b5\u03c4 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03c9\u03bd + +ORA-17057=\u03a4\u03bf LOB \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17058=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c3\u03c5\u03bd\u03c4\u03b5\u03bb\u03b5\u03c3\u03c4\u03ae\u03c2 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 NLS + +ORA-17059=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 \u03c3\u03c4\u03b7\u03bd \u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03ae \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 + +ORA-17060=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03ba\u03b1\u03c4\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae\u03c2 \u03c4\u03bf\u03c5 \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae\u03c2 + +ORA-17061=\u039b\u03b5\u03af\u03c0\u03b5\u03b9 \u03bf \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1\u03c2 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae\u03c2 + +ORA-17062=\u039f cursor \u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 + +ORA-17063=\u0394\u03b5\u03bd \u03b1\u03bd\u03ae\u03ba\u03b5\u03b9 \u03c3\u03b5 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae + +ORA-17064=\u0395\u03af\u03c4\u03b5 \u03b7 \u03c3\u03cd\u03bd\u03c4\u03b1\u03be\u03b7 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b5\u03af\u03c4\u03b5 \u03c4\u03bf \u03cc\u03bd\u03bf\u03bc\u03b1 \u03c4\u03b7\u03c2 \u03b2\u03ac\u03c3\u03b7\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17065=\u0397 \u03ba\u03bb\u03ac\u03c3\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17066=\u03a7\u03c1\u03b5\u03b9\u03ac\u03b6\u03b5\u03c4\u03b1\u03b9 \u03b5\u03b9\u03b4\u03b9\u03ba\u03ae \u03c5\u03bb\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03bf \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03bf \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 + +ORA-17067=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1\u03c2 Oracle + +ORA-17068=\u03a5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03ad\u03bd\u03b1 \u03ae \u03c0\u03b5\u03c1\u03b9\u03c3\u03c3\u03cc\u03c4\u03b5\u03c1\u03b1 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ac \u03bf\u03c1\u03af\u03c3\u03bc\u03b1\u03c4\u03b1 \u03c3\u03c4\u03b7\u03bd \u03ba\u03bb\u03ae\u03c3\u03b7 + +ORA-17069=\u03a7\u03c1\u03ae\u03c3\u03b7 \u03c1\u03b7\u03c4\u03ae\u03c2 \u03ba\u03bb\u03ae\u03c3\u03b7\u03c2 XA + +ORA-17070=\u03a4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b5\u03b3\u03b1\u03bb\u03cd\u03c4\u03b5\u03c1\u03bf \u03b1\u03c0\u03cc \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b3\u03b9\u03b1 \u03b1\u03c5\u03c4\u03cc\u03bd \u03c4\u03bf \u03c4\u03cd\u03c0\u03bf + +ORA-17071=\u039e\u03b5\u03c0\u03b5\u03c1\u03ac\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03cc\u03c1\u03b9\u03bf VARRAY + +ORA-17072=\u0388\u03b3\u03b9\u03bd\u03b5 \u03b5\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03c4\u03b9\u03bc\u03ae\u03c2 \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03c0\u03bf\u03bb\u03cd \u03bc\u03b5\u03b3\u03ac\u03bb\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7 \u03c3\u03c4\u03ae\u03bb\u03b7 + +ORA-17073=\u039f \u03bb\u03bf\u03b3\u03b9\u03ba\u03cc\u03c2 \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1\u03c2 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03c0\u03b9\u03b1 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 + +ORA-17074=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03c0\u03c1\u03cc\u03c4\u03c5\u03c0\u03bf \u03bf\u03bd\u03cc\u03bc\u03b1\u03c4\u03bf\u03c2 + +ORA-17075=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b3\u03b9\u03b1 \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b3\u03b9\u03b1 \u03c0\u03c1\u03bf\u03ce\u03b8\u03b7\u03c3\u03b7 \u03bc\u03cc\u03bd\u03bf + +ORA-17076=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b3\u03b9\u03b1 \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b3\u03b9\u03b1 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 \u03bc\u03cc\u03bd\u03bf + +ORA-17077=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03bf\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd \u03c4\u03b7\u03c2 \u03c4\u03b9\u03bc\u03ae\u03c2 REF + +ORA-17078=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03b5\u03c0\u03b5\u03b9\u03b4\u03ae \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03b9\u03c2 \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03ae\u03b4\u03b7 \u03b1\u03bd\u03bf\u03b9\u03ba\u03c4\u03ad\u03c2 + +ORA-17079=\u03a4\u03b1 \u03b4\u03b9\u03b1\u03c0\u03b9\u03c3\u03c4\u03b5\u03c5\u03c4\u03ae\u03c1\u03b9\u03b1 \u03c7\u03c1\u03ae\u03c3\u03c4\u03b7 \u03b4\u03b5\u03bd \u03c3\u03c5\u03bc\u03c6\u03c9\u03bd\u03bf\u03cd\u03bd \u03bc\u03b5 \u03c4\u03b1 \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03bd\u03c4\u03b1 + +ORA-17080=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b5\u03bd\u03c4\u03bf\u03bb\u03ae \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17081=\u03c0\u03c1\u03bf\u03ad\u03ba\u03c5\u03c8\u03b5 \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7 \u03b4\u03b9\u03ac\u03c1\u03ba\u03b5\u03b9\u03b1 \u03c4\u03b7\u03c2 \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17082=\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03b5\u03b9 \u03c4\u03c1\u03ad\u03c7\u03bf\u03c5\u03c3\u03b1 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae + +ORA-17083=\u0394\u03b5\u03bd \u03b2\u03c1\u03af\u03c3\u03ba\u03b5\u03c4\u03b1\u03b9 \u03c3\u03c4\u03b7\u03bd \u03b5\u03b9\u03c3\u03b1\u03b3\u03cc\u03bc\u03b5\u03bd\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae + +ORA-17084=\u0388\u03b3\u03b9\u03bd\u03b5 \u03ba\u03bb\u03ae\u03c3\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae \u03b5\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae\u03c2 + +ORA-17085=\u03a0\u03c1\u03bf\u03ba\u03cd\u03c0\u03c4\u03bf\u03c5\u03bd \u03b4\u03b9\u03b5\u03bd\u03ad\u03be\u03b5\u03b9\u03c2 \u03c4\u03b9\u03bc\u03ce\u03bd + +ORA-17086=\u039c\u03b7 \u03bf\u03c1\u03b9\u03c3\u03bc\u03ad\u03bd\u03b7 \u03c4\u03b9\u03bc\u03ae \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 \u03c3\u03c4\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae \u03b5\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae\u03c2 + +ORA-17087=\u0397 \u03c5\u03c0\u03cc\u03b4\u03b5\u03b9\u03be\u03b7 \u03b1\u03c0\u03cc\u03b4\u03bf\u03c3\u03b7\u03c2 \u03b1\u03b3\u03bd\u03bf\u03ae\u03b8\u03b7\u03ba\u03b5: setFetchDirection() + +ORA-17088=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03b7 \u03c3\u03cd\u03bd\u03c4\u03b1\u03be\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03bf\u03bd \u03c4\u03cd\u03c0\u03bf \u03c4\u03bf\u03c5 \u03c3\u03c5\u03bd\u03cc\u03bb\u03bf\u03c5 \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03ba\u03b1\u03b9 \u03c4\u03bf \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03bf \u03c4\u03b1\u03c5\u03c4\u03cc\u03c7\u03c1\u03bf\u03bd\u03b7\u03c2 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7\u03c2 \u03c0\u03bf\u03c5 \u03b6\u03b7\u03c4\u03ae\u03b8\u03b7\u03ba\u03b5 +ORA-17089=\u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 + +ORA-17090=\u03b7 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b4\u03b5\u03bd \u03b5\u03c0\u03b9\u03c4\u03c1\u03ad\u03c0\u03b5\u03c4\u03b1\u03b9 + +ORA-17091=\u0397 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03c4\u03bf\u03c5 \u03c3\u03c5\u03bd\u03cc\u03bb\u03bf\u03c5 \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03c3\u03c4\u03bf \u03b6\u03b7\u03c4\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03bf \u03c4\u03cd\u03c0\u03bf\u03c5 \u03ba\u03b1\u03b9/\u03ae \u03c4\u03b1\u03c5\u03c4\u03cc\u03c7\u03c1\u03bf\u03bd\u03b7\u03c2 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae + +ORA-17092=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03ae \u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03c0\u03c1\u03bf\u03c4\u03ac\u03c3\u03b5\u03c9\u03bd JDBC \u03c3\u03c4\u03bf \u03c4\u03ad\u03bb\u03bf\u03c2 \u03c4\u03b7\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 \u03ba\u03bb\u03ae\u03c3\u03b5\u03c9\u03bd + +ORA-17093=\u0397 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 OCI \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u0397 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03bf\u03c5 \u03b4\u03b5\u03bd \u03c3\u03c5\u03bc\u03c6\u03c9\u03bd\u03b5\u03af + +ORA-17095=\u0394\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03ba\u03c1\u03c5\u03c6\u03ae \u03bc\u03bd\u03ae\u03bc\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 + +ORA-17096=\u0397 \u03b5\u03b3\u03b3\u03c1\u03b1\u03c6\u03ae \u03c0\u03c1\u03bf\u03c4\u03ac\u03c3\u03b5\u03c9\u03bd \u03c3\u03c4\u03b7\u03bd \u03ba\u03c1\u03c5\u03c6\u03ae \u03bc\u03bd\u03ae\u03bc\u03b7 \u03b4\u03b5\u03bd \u03bc\u03c0\u03bf\u03c1\u03b5\u03af \u03bd\u03b1 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03b8\u03b5\u03af \u03b3\u03b9\u03b1 \u03b1\u03c5\u03c4\u03ae \u03c4\u03b7 \u03bb\u03bf\u03b3\u03b9\u03ba\u03ae \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7. + +ORA-17097=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03c4\u03bf\u03b9\u03c7\u03b5\u03af\u03bf\u03c5 \u03b3\u03b9\u03b1 \u03c0\u03af\u03bd\u03b1\u03ba\u03b1 \u03b5\u03c5\u03c1\u03b5\u03c4\u03b7\u03c1\u03af\u03bf\u03c5 PL/SQL + +ORA-17098=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03ba\u03b5\u03bd\u03bf\u03cd lob + +ORA-17099=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ae\u03ba\u03bf\u03c2 \u03bc\u03ae\u03c4\u03c1\u03b1\u03c2 \u03b3\u03b9\u03b1 \u03c0\u03af\u03bd\u03b1\u03ba\u03b1 \u03b5\u03c5\u03c1\u03b5\u03c4\u03b7\u03c1\u03af\u03bf\u03c5 PL/SQL + +ORA-17100=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03af\u03bc\u03b5\u03bd\u03bf Java \u03c4\u03b7\u03c2 \u0392\u0394 + +ORA-17101=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ad\u03c2 \u03b9\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b5\u03c2 \u03c3\u03c4\u03bf \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03af\u03bc\u03b5\u03bd\u03bf \u03c0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae\u03c2 \u03c3\u03c5\u03b3\u03ba\u03ad\u03bd\u03c4\u03c1\u03c9\u03c3\u03b7\u03c2 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03c9\u03bd OCI + +ORA-17102=\u03a4\u03bf Bfile \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03b3\u03b9\u03b1 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 + +ORA-17103=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 \u03b3\u03b9\u03b1 \u03b5\u03c0\u03b9\u03c3\u03c4\u03c1\u03bf\u03c6\u03ae \u03bc\u03ad\u03c3\u03c9 getConnection. \u0391\u03bd\u03c4\u03af \u03b1\u03c5\u03c4\u03ae\u03c2, \u03c7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03c4\u03b5 \u03c4\u03b7\u03bd getJavaSqlConnection + +ORA-17104=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 SQL \u03c0\u03c1\u03bf\u03c2 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03b4\u03b5\u03bd \u03bc\u03c0\u03bf\u03c1\u03b5\u03af \u03bd\u03b1 \u03b5\u03af\u03bd\u03b1\u03b9 \u03ba\u03b5\u03bd\u03ae \u03ae null + +ORA-17105=\u03b4\u03b5\u03bd \u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03b6\u03ce\u03bd\u03b7 \u03ce\u03c1\u03b1\u03c2 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03b5\u03c1\u03af\u03bf\u03b4\u03bf \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03c4\u03b7\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 + +ORA-17106=\u03ad\u03c7\u03b5\u03b9 \u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03c0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae\u03c2 \u03c3\u03c5\u03b3\u03ba\u03ad\u03bd\u03c4\u03c1\u03c9\u03c3\u03b7\u03c2 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03c9\u03bd \u03c4\u03bf\u03c5 \u03bf\u03b4\u03b7\u03b3\u03bf\u03cd JDBC-OCI + +ORA-17107=\u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03bf\u03c5 server + +ORA-17108=\u0394\u03b5\u03bd \u03ba\u03b1\u03b8\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ae\u03ba\u03bf\u03c2 \u03c3\u03c4\u03bf defineColumnType + +ORA-17109=\u03b4\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b5 \u03c4\u03c5\u03c0\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03b7 \u03ba\u03c9\u03b4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03c9\u03bd Java + +ORA-17110=\u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03bf\u03bb\u03bf\u03ba\u03bb\u03b7\u03c1\u03ce\u03b8\u03b7\u03ba\u03b5 \u03bc\u03b5 \u03c0\u03c1\u03bf\u03b5\u03b9\u03b4\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 + +ORA-17111=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2 \u03b1\u03bd\u03b1\u03bc\u03bf\u03bd\u03ae\u03c2 TTL + +ORA-17112=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b4\u03b9\u03ac\u03c3\u03c4\u03b7\u03bc\u03b1 \u03bd\u03ae\u03bc\u03b1\u03c4\u03bf\u03c2 (thread) + +ORA-17113=\u03a4\u03bf \u03c7\u03c1\u03bf\u03bd\u03b9\u03ba\u03cc \u03b4\u03b9\u03ac\u03c3\u03c4\u03b7\u03bc\u03b1 \u03bd\u03ae\u03bc\u03b1\u03c4\u03bf\u03c2 (thread) \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b5\u03b3\u03b1\u03bb\u03cd\u03c4\u03b5\u03c1\u03bf \u03b1\u03c0\u03cc \u03c4\u03bf\u03bd \u03c7\u03c1\u03cc\u03bd\u03bf \u03b1\u03bd\u03b1\u03bc\u03bf\u03bd\u03ae\u03c2 + +ORA-17114=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03c7\u03c1\u03ae\u03c3\u03b7 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c0\u03b9\u03ba\u03ae\u03c2 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 \u03bc\u03af\u03b1 \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae + +ORA-17115=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c4\u03bf\u03c0\u03b9\u03ba\u03ae\u03c2 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 \u03bc\u03af\u03b1 \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae + +ORA-17116=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b7\u03c2 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2 \u03c3\u03b5 \u03bc\u03b9\u03b1 \u03b5\u03bd\u03b5\u03c1\u03b3\u03cc \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae (global transaction) + +ORA-17117=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc\u03c2 \u03bf \u03bf\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 savepoint \u03c3\u03b5 \u03bc\u03b9\u03b1 \u03b5\u03bd\u03b5\u03c1\u03b3\u03cc \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae (global transaction) + +ORA-17118=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03bb\u03ae\u03c8\u03b7 \u03b1\u03bd\u03b1\u03b3\u03bd\u03c9\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03cd \u03b3\u03b9\u03b1 \u03ad\u03bd\u03b1 \u03bf\u03bd\u03bf\u03bc\u03b1\u03c3\u03bc\u03ad\u03bd\u03bf savepoint + +ORA-17119=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03bb\u03ae\u03c8\u03b7 \u03bf\u03bd\u03cc\u03bc\u03b1\u03c4\u03bf\u03c2 \u03b3\u03b9\u03b1 \u03ad\u03bd\u03b1 savepoint \u03c7\u03c9\u03c1\u03af\u03c2 \u03cc\u03bd\u03bf\u03bc\u03b1 + +ORA-17120=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc\u03c2 \u03bf \u03bf\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 savepoint \u03bc\u03b5 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03b7 \u03c4\u03b7\u03bd \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b7 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 + +ORA-17121=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 savepoint \u03bc\u03b5 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03b7 \u03c4\u03b7\u03bd \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b7 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 + +ORA-17122=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 \u03c4\u03bf\u03c0\u03b9\u03ba\u03cc Savepoint \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae\u03c2 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 + +ORA-17123=\u0388\u03c7\u03b5\u03b9 \u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03ba\u03c1\u03c5\u03c6\u03ae\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 + +ORA-17124=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2 \u03b1\u03bd\u03b1\u03bc\u03bf\u03bd\u03ae\u03c2 \u03ba\u03c1\u03c5\u03c6\u03ae\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 \u03c3\u03b5 \u03c0\u03b5\u03c1\u03af\u03c0\u03c4\u03c9\u03c3\u03b7 \u03b1\u03b4\u03c1\u03ac\u03bd\u03b5\u03b9\u03b1\u03c2 + +ORA-17200=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03ba\u03b1\u03c4\u03ac\u03bb\u03bb\u03b7\u03bb\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae \u03c4\u03b7\u03c2 \u03c3\u03c5\u03bc\u03b2\u03bf\u03bb\u03bf\u03c3\u03b5\u03b9\u03c1\u03ac\u03c2 \u03b1\u03bd\u03bf\u03af\u03b3\u03bc\u03b1\u03c4\u03bf\u03c2 XA \u03b1\u03c0\u03cc Java \u03c3\u03b5 C + +ORA-17201=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03ba\u03b1\u03c4\u03ac\u03bb\u03bb\u03b7\u03bb\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae \u03c4\u03b7\u03c2 \u03c3\u03c5\u03bc\u03b2\u03bf\u03bb\u03bf\u03c3\u03b5\u03b9\u03c1\u03ac\u03c2 \u03ba\u03bb\u03b5\u03b9\u03c3\u03af\u03bc\u03b1\u03c4\u03bf\u03c2 XA \u03b1\u03c0\u03cc Java \u03c3\u03b5 C + +ORA-17202=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03ba\u03b1\u03c4\u03ac\u03bb\u03bb\u03b7\u03bb\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae \u03c4\u03bf\u03c5 \u03bf\u03bd\u03cc\u03bc\u03b1\u03c4\u03bf\u03c2 RM \u03b1\u03c0\u03cc Java \u03c3\u03b5 C + +ORA-17203=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae (casting) \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 \u03b4\u03b5\u03af\u03ba\u03c4\u03b7 \u03c3\u03b5 jlong + +ORA-17204=\u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03b5\u03b9\u03c3\u03cc\u03b4\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03c0\u03bf\u03bb\u03cd \u03bc\u03b9\u03ba\u03c1\u03ae \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03c0\u03b5\u03c1\u03b9\u03bb\u03ac\u03b2\u03b5\u03b9 \u03c4\u03bf\u03c5\u03c2 \u03b4\u03b5\u03af\u03ba\u03c4\u03b5\u03c2 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd OCI + +ORA-17205=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03c4\u03b7 \u03bb\u03ae\u03c8\u03b7 \u03c4\u03bf\u03c5 \u03b4\u03b5\u03af\u03ba\u03c4\u03b7 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd OCISvcCtx \u03b1\u03c0\u03cc C-XA \u03bc\u03b5 \u03c7\u03c1\u03ae\u03c3\u03b7 xaoSvcCtx + +ORA-17206=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03c4\u03b7 \u03bb\u03ae\u03c8\u03b7 \u03c4\u03bf\u03c5 \u03b4\u03b5\u03af\u03ba\u03c4\u03b7 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd OCIEnv \u03b1\u03c0\u03cc C-XA \u03bc\u03b5 \u03c7\u03c1\u03ae\u03c3\u03b7 xaoEnv + +ORA-17207=\u0397 \u03b9\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b1 tnsEntry \u03b4\u03b5\u03bd \u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c3\u03c4\u03bf DataSource + +ORA-17213=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_RMERR \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_open + +ORA-17215=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_INVAL \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_open + +ORA-17216=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_PROTO \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_open + +ORA-17233=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_RMERR \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_close + +ORA-17235=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_INVAL \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_close + +ORA-17236=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_PROTO \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u03a0\u03b1\u03c1\u03b1\u03b2\u03af\u03b1\u03c3\u03b7 \u03c0\u03c1\u03c9\u03c4\u03bf\u03ba\u03cc\u03bb\u03bb\u03bf\u03c5 + +ORA-17402=\u0391\u03bd\u03b1\u03bc\u03ad\u03bd\u03b5\u03c4\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03ad\u03bd\u03b1 \u03bc\u03ae\u03bd\u03c5\u03bc\u03b1 RPA + +ORA-17403=\u0391\u03bd\u03b1\u03bc\u03ad\u03bd\u03b5\u03c4\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03ad\u03bd\u03b1 \u03bc\u03ae\u03bd\u03c5\u03bc\u03b1 RXH + +ORA-17404=\u0388\u03b3\u03b9\u03bd\u03b5 \u03bb\u03ae\u03c8\u03b7 \u03c0\u03b5\u03c1\u03b9\u03c3\u03c3\u03cc\u03c4\u03b5\u03c1\u03c9\u03bd RXD \u03b1\u03c0\u03cc \u03c4\u03b1 \u03b1\u03bd\u03b1\u03bc\u03b5\u03bd\u03cc\u03bc\u03b5\u03bd\u03b1 + +ORA-17405=\u03a4\u03bf \u03bc\u03ae\u03ba\u03bf\u03c2 UAC \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7\u03b4\u03b5\u03bd\u03b9\u03ba\u03cc + +ORA-17406=\u039e\u03b5\u03c0\u03b5\u03c1\u03ac\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03c4\u03b7\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03b7\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 + +ORA-17407=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 \u03c4\u03cd\u03c0\u03bf\u03c5(setRep) + +ORA-17408=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 \u03c4\u03cd\u03c0\u03bf\u03c5(getRep) + +ORA-17409=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03b7\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 + +ORA-17410=\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03ac\u03bb\u03bb\u03b1 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03b1 \u03b3\u03b9\u03b1 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 \u03b1\u03c0\u03cc \u03c4\u03b7\u03bd \u03c5\u03c0\u03bf\u03b4\u03bf\u03c7\u03ae + +ORA-17411=\u0391\u03c3\u03c5\u03bc\u03c6\u03c9\u03bd\u03af\u03b1 \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03b1\u03c3\u03c4\u03ac\u03c3\u03b5\u03c9\u03bd \u03c4\u03cd\u03c0\u03c9\u03bd \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd + +ORA-17412=\u03a4\u03bf \u03bc\u03ae\u03ba\u03bf\u03c2 \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b5\u03b3\u03b1\u03bb\u03cd\u03c4\u03b5\u03c1\u03bf \u03b1\u03c0\u03cc \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03b5\u03c0\u03b9\u03c4\u03c1\u03b5\u03c0\u03c4\u03cc + +ORA-17413=\u03a5\u03c0\u03ad\u03c1\u03b2\u03b1\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03bc\u03ae\u03ba\u03bf\u03c5\u03c2 \u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03b4\u03b9\u03bf\u03cd + +ORA-17414=\u03a4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03c4\u03b7\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03b7\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03bd\u03b5\u03c0\u03b1\u03c1\u03ba\u03ad\u03c2 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03b1\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7 \u03c4\u03c9\u03bd \u03bf\u03bd\u03bf\u03bc\u03ac\u03c4\u03c9\u03bd \u03c3\u03c4\u03b7\u03bb\u03ce\u03bd + +ORA-17415=\u0394\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b3\u03af\u03bd\u03b5\u03b9 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03b1\u03c5\u03c4\u03bf\u03cd \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 + +ORA-17416=FATAL + +ORA-17417=\u03a0\u03c1\u03cc\u03b2\u03bb\u03b7\u03bc\u03b1 NLS, \u03b1\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03b1\u03c0\u03bf\u03ba\u03c9\u03b4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2 \u03bf\u03bd\u03bf\u03bc\u03ac\u03c4\u03c9\u03bd \u03c3\u03c4\u03b7\u03bb\u03ce\u03bd + +ORA-17418=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03bc\u03ae\u03ba\u03bf\u03c5\u03c2 \u03c0\u03b5\u03b4\u03af\u03bf\u03c5 \u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03ae\u03c2 \u03b4\u03bf\u03bc\u03ae\u03c2 + +ORA-17419=\u0395\u03c0\u03b9\u03c3\u03c4\u03c1\u03bf\u03c6\u03ae \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03bf\u03cd \u03b1\u03c1\u03b9\u03b8\u03bc\u03bf\u03cd \u03c3\u03c4\u03b7\u03bb\u03ce\u03bd + +ORA-17420=\u0394\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03b7 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03b7\u03c2 Oracle + +ORA-17421=\u0394\u03b5\u03bd \u03ad\u03c7\u03bf\u03c5\u03bd \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03bf\u03b9 \u03c4\u03cd\u03c0\u03bf\u03b9 \u03ae \u03b7 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 + +ORA-17422=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03ba\u03bb\u03ac\u03c3\u03b7 \u03c3\u03b5 \u03b5\u03c1\u03b3\u03bf\u03c3\u03c4\u03ac\u03c3\u03b9\u03bf + +ORA-17423=\u03a7\u03c1\u03ae\u03c3\u03b7 \u03bc\u03c0\u03bb\u03bf\u03ba PLSQL \u03c7\u03c9\u03c1\u03af\u03c2 \u03bf\u03c1\u03b9\u03c3\u03bc\u03cc IOV + +ORA-17424=\u0391\u03c0\u03cc\u03c0\u03b5\u03b9\u03c1\u03b1 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7\u03c2 \u03b4\u03b9\u03b1\u03c6\u03bf\u03c1\u03b5\u03c4\u03b9\u03ba\u03ae\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03b4\u03b9\u03b5\u03c5\u03b8\u03ad\u03c4\u03b7\u03c3\u03b7\u03c2 (marshaling) + +ORA-17425=\u0395\u03c0\u03b9\u03c3\u03c4\u03c1\u03bf\u03c6\u03ae \u03b5\u03bd\u03cc\u03c2 stream \u03c3\u03b5 \u03bc\u03c0\u03bb\u03bf\u03ba \u03b5\u03bd\u03c4\u03bf\u03bb\u03ce\u03bd PLSQL + +ORA-17426=\u03a4\u03cc\u03c3\u03bf \u03bf\u03b9 \u03b4\u03b5\u03c3\u03bc\u03b5\u03c5\u03bc\u03ad\u03bd\u03b5\u03c2 \u03bc\u03b5\u03c4\u03b1\u03b2\u03bb\u03b7\u03c4\u03ad\u03c2 IN \u03cc\u03c3\u03bf \u03ba\u03b1\u03b9 \u03bf\u03b9 OUT \u03b5\u03af\u03bd\u03b1\u03b9 NULL + +ORA-17427=\u03a7\u03c1\u03ae\u03c3\u03b7 \u03bc\u03b7 \u03b1\u03c1\u03c7\u03b9\u03ba\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03bf\u03c5 OAC + +ORA-17428=\u0397 \u03b4\u03b9\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1 Logon \u03c0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03ba\u03bb\u03b7\u03b8\u03b5\u03af \u03bc\u03b5\u03c4\u03ac \u03c4\u03b7\u03bd \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 + +ORA-17429=\u03a0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03c4\u03bf\u03c5\u03bb\u03ac\u03c7\u03b9\u03c3\u03c4\u03bf\u03bd \u03bd\u03b1 \u03c5\u03c0\u03ac\u03c1\u03c7\u03b5\u03b9 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 \u03bc\u03b5 \u03c4\u03bf\u03bd server + +ORA-17430=\u03a0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03b5\u03af\u03c3\u03c4\u03b5 \u03c3\u03c5\u03bd\u03b4\u03b5\u03b4\u03b5\u03bc\u03ad\u03bd\u03bf\u03b9 \u03bc\u03b5 \u03c4\u03bf\u03bd server + +ORA-17431=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 SQL \u03c0\u03bf\u03c5 \u03b8\u03b1 \u03b1\u03bd\u03b1\u03bb\u03c5\u03b8\u03b5\u03af \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17432=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ad\u03c2 \u03b5\u03c0\u03b9\u03bb\u03bf\u03b3\u03ad\u03c2 \u03ba\u03b1\u03b9 \u03c3\u03c4\u03b9\u03c2 7 \u03b5\u03bd\u03c4\u03bf\u03bb\u03ad\u03c2 + +ORA-17433=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ac \u03bf\u03c1\u03af\u03c3\u03bc\u03b1\u03c4\u03b1 \u03c3\u03c4\u03b7\u03bd \u03ba\u03bb\u03ae\u03c3\u03b7 + +ORA-17434=\u039f \u03c4\u03c1\u03cc\u03c0\u03bf\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 streaming + +ORA-17435=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc\u03c2 in_out_binds \u03c3\u03c4\u03bf IOV + +ORA-17436=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc\u03c2 outbinds + +ORA-17437=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03c4\u03b1 \u03bf\u03c1\u03af\u03c3\u03bc\u03b1\u03c4\u03b1 IN/OUT \u03c4\u03bf\u03c5 \u03bc\u03c0\u03bb\u03bf\u03ba \u03b5\u03bd\u03c4\u03bf\u03bb\u03ce\u03bd PLSQL + +ORA-17438=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 - \u039c\u03b7 \u03b1\u03bd\u03b1\u03bc\u03b5\u03bd\u03cc\u03bc\u03b5\u03bd\u03b7 \u03c4\u03b9\u03bc\u03ae + +ORA-17439=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 SQL + +ORA-17440=\u039f\u03b9 \u03c0\u03b1\u03c1\u03ac\u03bc\u03b5\u03c4\u03c1\u03bf\u03b9 DBItem/DBType \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17441=\u0394\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03b1\u03c5\u03c4\u03ae \u03b7 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03b7\u03c2 Oracle. \u0397 \u03c0\u03b1\u03bb\u03b1\u03b9\u03cc\u03c4\u03b5\u03c1\u03b7 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c0\u03bf\u03c5 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b7 7.2.3. + +ORA-17442=\u0397 \u03c4\u03b9\u03bc\u03ae \u03c4\u03bf\u03c5 cursor \u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae + +ORA-17443=\u0395\u03af\u03c4\u03b5 Null \u03c7\u03c1\u03ae\u03c3\u03c4\u03b7\u03c2 \u03b5\u03af\u03c4\u03b5 \u03bc\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf\u03c2 \u03ba\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 \u03c3\u03c4\u03bf\u03bd \u03bf\u03b4\u03b7\u03b3\u03cc \u03a0\u0395\u03a1\u0399\u039f\u03a1\u0399\u03a3\u039c\u0395\u039d\u03a9\u039d \u0394\u03a5\u039d\u0391\u03a4\u039f\u03a4\u0397\u03a4\u03a9\u039d (THIN) + +ORA-17444=\u0397 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c0\u03c1\u03c9\u03c4\u03bf\u03ba\u03cc\u03bb\u03bb\u03bf\u03c5 TTC \u03c0\u03bf\u03c5 \u03bb\u03ae\u03c6\u03b8\u03b7\u03ba\u03b5 \u03b1\u03c0\u03cc \u03c4\u03bf\u03bd server \u03b4\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a9/e02f6cb802a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a9/e02f6cb802a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..04cecb4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/a9/e02f6cb802a4001c1027e59cc3e35e89 @@ -0,0 +1,73 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + + System.out.println(resultat.isBeforeFirst()); + // true + resultat.next(); + // on se retrouve ici sur la premire ligne + resultat.toString(); + + // traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/aa/8057ce1805a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/aa/8057ce1805a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..63cc2fc --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/aa/8057ce1805a4001c1027e59cc3e35e89 @@ -0,0 +1,77 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/aa/906d8b1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/aa/906d8b1998af001c18c4935e001381da new file mode 100644 index 0000000..5a34fbb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/aa/906d8b1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/aa/c0cdeb1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/aa/c0cdeb1498af001c18c4935e001381da new file mode 100644 index 0000000..81becf2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/aa/c0cdeb1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ab/d099091698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ab/d099091698af001c18c4935e001381da new file mode 100644 index 0000000..4d7a342 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ab/d099091698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ac/4029dd1c9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ac/4029dd1c9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..f5fe76c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ac/4029dd1c9baf001c1c2eb8ec16be26ca @@ -0,0 +1,326 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Internal Error + +ORA-17002=Io exception + +ORA-17003=Invalid column index + +ORA-17004=Invalid column type + +ORA-17005=Unsupported column type + +ORA-17006=Invalid column name + +ORA-17007=Invalid dynamic column + +ORA-17008=Closed Connection + +ORA-17009=Closed Statement + +ORA-17010=Closed Resultset + +ORA-17011=Exhausted Resultset + +ORA-17012=Parameter Type Conflict + +ORA-17014=ResultSet.next was not called + +ORA-17015=Statement was cancelled + +ORA-17016=Statement timed out + +ORA-17017=Cursor already initialized + +ORA-17018=Invalid cursor + +ORA-17019=Can only describe a query + +ORA-17020=Invalid row prefetch + +ORA-17021=Missing defines + +ORA-17022=Missing defines at index + +ORA-17023=Unsupported feature + +ORA-17024=No data read + +ORA-17025=Error in defines.isNull () + +ORA-17026=Numeric Overflow + +ORA-17027=Stream has already been closed + +ORA-17028=Can not do new defines until the current ResultSet is closed + +ORA-17029=setReadOnly: Read-only connections not supported + +ORA-17030=READ_COMMITTED and SERIALIZABLE are the only valid transaction levels + +ORA-17031=setAutoClose: Only support auto close mode on + +ORA-17032=cannot set row prefetch to zero + +ORA-17033=Malformed SQL92 string at position + +ORA-17034=Non supported SQL92 token at position + +ORA-17035=Character Set Not Supported !! + +ORA-17036=exception in OracleNumber + +ORA-17037=Fail to convert between UTF8 and UCS2 + +ORA-17038=Byte array not long enough + +ORA-17039=Char array not long enough + +ORA-17040=Sub Protocol must be specified in connection URL + +ORA-17041=Missing IN or OUT parameter at index: + +ORA-17042=Invalid Batch Value + +ORA-17043=Invalid stream maximum size + +ORA-17044=Internal error: Data array not allocated + +ORA-17045=Internal error: Attempt to access bind values beyond the batch value + +ORA-17046=Internal error: Invalid index for data access + +ORA-17047=Error in Type Descriptor parse + +ORA-17048=Undefined type + +ORA-17049=Inconsistent java and sql object types + +ORA-17050=no such element in vector + +ORA-17051=This API cannot be be used for non-UDT types + +ORA-17052=This ref is not valid + +ORA-17053=The size is not valid + +ORA-17054=The LOB locator is not valid + +ORA-17055=Invalid character encountered in + +ORA-17056=Non supported character set + +ORA-17057=Closed LOB + +ORA-17058=Internal error: Invalid NLS Conversion ratio + +ORA-17059=Fail to convert to internal representation + +ORA-17060=Fail to construct descriptor + +ORA-17061=Missing descriptor + +ORA-17062=Ref cursor is invalid + +ORA-17063=Not in a transaction + +ORA-17064=Invalid Sytnax or Database name is null + +ORA-17065=Conversion class is null + +ORA-17066=Access layer specific implementation needed + +ORA-17067=Invalid Oracle URL specified + +ORA-17068=Invalid argument(s) in call + +ORA-17069=Use explicit XA call + +ORA-17070=Data size bigger than max size for this type + +ORA-17071=Exceeded maximum VARRAY limit + +ORA-17072=Inserted value too large for column + +ORA-17073=Logical handle no longer valid + +ORA-17074=invalid name pattern + +ORA-17075=Invalid operation for forward only resultset + +ORA-17076=Invalid operation for read only resultset + +ORA-17077=Fail to set REF value + +ORA-17078=Cannot do the operation as connections are already opened + +ORA-17079=User credentials doesn't match the existing ones + +ORA-17080=invalid batch command + +ORA-17081=error occurred during batching + +ORA-17082=No current row + +ORA-17083=Not on the insert row + +ORA-17084=Called on the insert row + +ORA-17085=Value conflicts occurs + +ORA-17086=Undefined column value on the insert row + +ORA-17087=Ignored performance hint: setFetchDirection() + +ORA-17088=Unsupported syntax for requested resultset type and concurrency level +ORA-17089=internal error + +ORA-17090=operation not allowed + +ORA-17091=Unable to create resultset at the requested type and/or concurrency level + +ORA-17092=JDBC statements cannot be created or executed at end of call processing + +ORA-17093=OCI operation returned OCI_SUCCESS_WITH_INFO + +ORA-17094=Object type version mismatched + +ORA-17095=Statement Caching is not enabled for this Connection object + +ORA-17096=Statement Caching cannot be enabled for this logical connection. + +ORA-17097=Invalid PL/SQL Index Table element type + +ORA-17098=Invalid empty lob operation + +ORA-17099=Invalid PL/SQL Index Table array length. + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protocol violation + +ORA-17402=Only one RPA message is expected + +ORA-17403=Only one RXH message is expected + +ORA-17404=Received more RXDs than expected + +ORA-17405=UAC length is not zero + +ORA-17406=Exceeding maximum buffer length + +ORA-17407=invalid Type Representation(setRep) + +ORA-17408=invalid Type Representation(getRep) + +ORA-17409=invalid buffer length + +ORA-17410=No more data to read from socket + +ORA-17411=Data Type representations mismatch + +ORA-17412=Bigger type length than Maximum + +ORA-17413=Exceding key size + +ORA-17414=Insufficient Buffer size to store Columns Names + +ORA-17415=This type hasn't been handled + +ORA-17416=FATAL + +ORA-17417=NLS Problem, failed to decode column names + +ORA-17418=Internal structure's field length error + +ORA-17419=Invalid number of columns returned + +ORA-17420=Oracle Version not defined + +ORA-17421=Types or Connection not defined + +ORA-17422=Invalid class in factory + +ORA-17423=Using a PLSQL block without an IOV defined + +ORA-17424=Attempting different marshaling operation + +ORA-17425=Returning a stream in PLSQL block + +ORA-17426=Both IN and OUT binds are NULL + +ORA-17427=Using Uninitialized OAC + +ORA-17428=Logon must be called after connect + +ORA-17429=Must be at least connected to server + +ORA-17430=Must be logged on to server + +ORA-17431=SQL Statement to parse is null + +ORA-17432=invalid options in all7 + +ORA-17433=invalid arguments in call + +ORA-17434=not in streaming mode + +ORA-17435=invalid number of in_out_binds in IOV + +ORA-17436=invalid number of outbinds + +ORA-17437=Error in PLSQL block IN/OUT argument(s) + +ORA-17438=Internal - Unexpected value + +ORA-17439=Invalid SQL type + +ORA-17440=DBItem/DBType is null + +ORA-17441=Oracle Version not supported. Minimum supported version is 7.2.3. + +ORA-17442=Refcursor value is invalid + +ORA-17443=Null user or password not supported in THIN driver + +ORA-17444=TTC Protocol version received from server not supported + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ac/60d0765c05af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ac/60d0765c05af001c14499bdcdfff58b3 new file mode 100644 index 0000000..193b2b5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ac/60d0765c05af001c14499bdcdfff58b3 @@ -0,0 +1,235 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ac/a05b681698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ac/a05b681698af001c18c4935e001381da new file mode 100644 index 0000000..3fb3c44 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ac/a05b681698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ad/509c7e1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ad/509c7e1998af001c18c4935e001381da new file mode 100644 index 0000000..83ffe9f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ad/509c7e1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ad/80128e1398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ad/80128e1398af001c18c4935e001381da new file mode 100644 index 0000000..601068b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ad/80128e1398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ad/c055701798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ad/c055701798af001c18c4935e001381da new file mode 100644 index 0000000..bda4ce2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ad/c055701798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/3002b4e0fbae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/3002b4e0fbae001c14499bdcdfff58b3 new file mode 100644 index 0000000..09a5b2f --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/3002b4e0fbae001c14499bdcdfff58b3 @@ -0,0 +1,205 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; +import javax.swing.JOptionPane; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + // On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(connexionToBdd.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + jlabelServeur.setEnabled(false); + jlabelPort.setEnabled(false); + jlabelBase.setEnabled(false); + jlabelIdentifiant.setEnabled(false); + jlabelMdp.setEnabled(false); + + jOk.setEnabled(false); + + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypté) : " + this.jtextMdp.getPassword() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(this.jtextMdp.getPassword().toString()); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/40493e1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/40493e1798af001c18c4935e001381da new file mode 100644 index 0000000..dc3cb64 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/40493e1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/800aefff07af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/800aefff07af001c14499bdcdfff58b3 new file mode 100644 index 0000000..02e6904 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/800aefff07af001c14499bdcdfff58b3 @@ -0,0 +1,149 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + + + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/a0383bf720af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/a0383bf720af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..0ce6085 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/a0383bf720af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Intern fejl + +ORA-17002=Io-undtagelse + +ORA-17003=Ugyldigt kolonneindeks + +ORA-17004=Ugyldig kolonnetype + +ORA-17005=Ikke-underst\u00f8ttet kolonnetype + +ORA-17006=Ugyldigt kolonnenavn + +ORA-17007=Ugyldig dynamisk kolonne + +ORA-17008=Lukket forbindelse + +ORA-17009=Lukket s\u00e6tning + +ORA-17010=Lukket resultats\u00e6t + +ORA-17011=Opbrugt resultats\u00e6t + +ORA-17012=Parametertypekonflikt + +ORA-17014=ResultSet.next blev ikke kaldt + +ORA-17015=S\u00e6tning blev annulleret + +ORA-17016=Timeout opstod for s\u00e6tning + +ORA-17017=Mark\u00f8r er allerede initialiseret + +ORA-17018=Ugyldig mark\u00f8r + +ORA-17019=Kan kun beskrive en foresp\u00f8rgsel + +ORA-17020=Ugyldig r\u00e6kke-prefetch + +ORA-17021=Mangler definitioner + +ORA-17022=Mangler definitioner ved indeks + +ORA-17023=Ikke-underst\u00f8ttet facilitet + +ORA-17024=Ingen data er l\u00e6st + +ORA-17025=Fejl i defines.isNull () + +ORA-17026=Numerisk overl\u00f8b + +ORA-17027=Stream er allerede lukket + +ORA-17028=Kan ikke oprette nye definitioner, f\u00f8r det aktuelle ResultSet er lukket + +ORA-17029=setReadOnly: Skrivebeskyttede forbindelser underst\u00f8ttes ikke + +ORA-17030=READ_COMMITTED og SERIALIZABLE er de eneste gyldige transaktionsniveauer + +ORA-17031=setAutoClose: Underst\u00f8t kun auto close on + +ORA-17032=r\u00e6kke-prefetch kan ikke s\u00e6ttes til nul + +ORA-17033=Ugyldig SQL92-streng p\u00e5 position + +ORA-17034=Ikke-underst\u00f8ttet SQL92-token p\u00e5 position + +ORA-17035=Tegns\u00e6t underst\u00f8ttes ikke !! + +ORA-17036=undtagelse i OracleNumber + +ORA-17037=Konvertering mellem UTF8 og UCS2 fejlede + +ORA-17038=Byte-array ikke lang nok + +ORA-17039=Tegn-array ikke lang nok + +ORA-17040=Underprotokol skal v\u00e6re angivet i forbindelses-URL + +ORA-17041=Manglende IN- eller OUT-parameter ved indeks: + +ORA-17042=Ugyldig batch-v\u00e6rdi + +ORA-17043=Ugyldig maksimal stream-st\u00f8rrelse + +ORA-17044=Intern fejl: Data-array ikke allokeret + +ORA-17045=Intern fejl: Fors\u00f8g p\u00e5 at f\u00e5 adgang til tilknytningsv\u00e6rdier, der ligger ud over batch-v\u00e6rdien + +ORA-17046=Intern fejl: Ugyldigt indeks for dataadgang + +ORA-17047=Fejl i analyse af type-descriptor + +ORA-17048=Ikke-defineret type + +ORA-17049=Inkonsistente java- og sql-objekttyper + +ORA-17050=dette element findes ikke i vektor + +ORA-17051=Dette API kan ikke bruges til ikke-UDT-typer + +ORA-17052=Denne reference er ugyldig + +ORA-17053=St\u00f8rrelsen er ugyldig + +ORA-17054=LOB-locator er ugyldig + +ORA-17055=Ugyldigt tegn m\u00f8dt i + +ORA-17056=Ikke-underst\u00f8ttet tegns\u00e6t + +ORA-17057=Lukket LOB + +ORA-17058=Intern fejl: Ugyldigt NLS-konverteringsforhold + +ORA-17059=Konvertering til intern repr\u00e6sentation fejlede + +ORA-17060=Konstruktion af descriptor fejlede + +ORA-17061=Manglende descriptor + +ORA-17062=Referencemark\u00f8ren er ugyldig + +ORA-17063=Ikke i en transaktion + +ORA-17064=Syntaks er ugyldig, eller databasenavn er NULL + +ORA-17065=Konverteringsklasse er NULL + +ORA-17066=Specifik implementering af adgangs-layer er p\u00e5kr\u00e6vet + +ORA-17067=Ugyldig Oracle URL er angivet + +ORA-17068=Ugyldigt argument eller ugyldige argumenter i kald + +ORA-17069=Brug eksplicit XA-kald + +ORA-17070=Datast\u00f8rrelsen overskrider maksimumst\u00f8rrelsen for denne type + +ORA-17071=Overskredet maks. VARRAY-gr\u00e6nse + +ORA-17072=Indsat v\u00e6rdi for stor til kolonne + +ORA-17073=Logisk handle ikke l\u00e6ngere gyldigt + +ORA-17074=ugyldigt navnem\u00f8nster + +ORA-17075=Ugyldig operation p\u00e5 forward only-resultats\u00e6t + +ORA-17076=Ugyldig operation p\u00e5 skrivebeskyttet resultats\u00e6t + +ORA-17077=Kunne ikke s\u00e6tte REF-v\u00e6rdi + +ORA-17078=Kan ikke udf\u00f8re operationen, da forbindelser allerede er \u00e5bnet + +ORA-17079=ID-oplysninger for bruger matcher ikke til de eksisterende oplysninger + +ORA-17080=ugyldig batch-kommando + +ORA-17081=fejl opstod under batching + +ORA-17082=Ingen aktuel r\u00e6kke + +ORA-17083=Ikke p\u00e5 den indsatte r\u00e6kke + +ORA-17084=Kaldt p\u00e5 den indsatte r\u00e6kke + +ORA-17085=V\u00e6rdikonflikter opst\u00e5r + +ORA-17086=Ikke-defineret kolonnev\u00e6rdi p\u00e5 den indsatte r\u00e6kke + +ORA-17087=Ignorerede hj\u00e6lpelinje til ydeevne: setFetchDirection() + +ORA-17088=Ikke-underst\u00f8ttet syntaks for anmodet resultats\u00e6ttype og niveau for samtidighed +ORA-17089=intern fejl + +ORA-17090=operation ikke tilladt + +ORA-17091=Kan ikke oprette resultats\u00e6t p\u00e5 det anmodede niveau for type og/eller samtidighed + +ORA-17092=JDBC-s\u00e6tninger kan ikke oprettes eller udf\u00f8res i slutning af behandling af kald + +ORA-17093=OCI-operation returnerede OCI_SUCCESS_WITH_INFO + +ORA-17094=Objekttypeversion matcher ikke + +ORA-17095=S\u00e6tningscachest\u00f8rrelse er ikke blevet sat + +ORA-17096=Cache af s\u00e6tninger kan ikke aktiveres for denne logiske forbindelse. + +ORA-17097=Ugyldig elementtype for PL/SQL-indekstabel + +ORA-17098=Ugyldig tom lob-operation + +ORA-17099=Ugyldig array-l\u00e6ngde for PL/SQL-indekstabel + +ORA-17100=Ugyldigt database-Java-objekt + +ORA-17101=Ugyldige egenskaber i OCI-forbindelses-pool-objekt + +ORA-17102=BFILE er skrivebeskyttet + +ORA-17103=ugyldig forbindelsestype, der skal returneres via getConnection. Brug getJavaSqlConnection i stedet for + +ORA-17104=SQL-s\u00e6tning, der skal udf\u00f8res, kan ikke v\u00e6re tom eller NULL + +ORA-17105=tidszone for forbindelsessession blev ikke sat + +ORA-17106=ugyldig forbindelsespuljekonfiguration angivet for JDBC-OCI-driver + +ORA-17107=ugyldig proxy-type angivet + +ORA-17108=Ingen maks. l\u00e6ngde angivet i defineColumnType + +ORA-17109=standard-Java-tegnkodning ikke fundet + +ORA-17110=udf\u00f8rt med advarsel + +ORA-17111=Ugyldigt timeout for forbindelsescache-TTL angivet + +ORA-17112=Ugyldigt tr\u00e5dinterval angivet + +ORA-17113=V\u00e6rdi for tr\u00e5dinterval er st\u00f8rre end v\u00e6rdi for cache-timeout + +ORA-17114=kunne ikke bruge lokal transaktionsbekr\u00e6ftelse i en global transaktion + +ORA-17115=kunne ikke bruge lokal transaktionstilbagestilling i en global transaktion + +ORA-17116=kunne ikke aktivere automatisk bekr\u00e6ftelse i en aktiv global transaktion + +ORA-17117=kunne ikke s\u00e6tte sikringspunkt i en aktiv global transaktion + +ORA-17118=kunne ikke opn\u00e5 ID for et navngivet sikringspunkt + +ORA-17119=kunne ikke opn\u00e5 navn for et unavngivet sikringspunkt + +ORA-17120=kunne ikke s\u00e6tte et sikringspunkt med autmatisk bekr\u00e6ftelse aktiveret + +ORA-17121=kunne ikke tilbagestille til et sikringspunkt med autmatisk bekr\u00e6ftelse aktiveret + +ORA-17122=kunne ikke tilbagestille til et lokalt txn-sikringspunkt i en global transaktion + +ORA-17123=Ugyldig s\u00e6tningscachest\u00f8rrelse angivet + +ORA-17124=Ugyldigt timeout for inaktivitet i forbindelsecache angivet + +ORA-17200=Kan ikke konvertere XA-\u00e5bningsstreng fra Java til C korrekt + +ORA-17201=Kan ikke konvertere XA-lukningsstreng fra Java til C korrekt + +ORA-17202=Kan ikke konvertere RM-navn fra Java til C korrekt + +ORA-17203=Kunne ikke udf\u00f8re casting af mark\u00f8rtype til jlong + +ORA-17204=Input-array for kort til at indeholde OCI-handles + +ORA-17205=Hentning af OCISvcCtx-handle fra C-XA ved hj\u00e6lp af xaoSvcCtx fejlede + +ORA-17206=Hentning af OCIEnv-handle fra C-XA ved hj\u00e6lp af xaoEnv fejlede + +ORA-17207=tnsEntry-egenskaben blev ikke sat i DataSource + +ORA-17213=C-XA returnerede XAER_RMERR under xa_open + +ORA-17215=C-XA returnerede XAER_INVAL under xa_open + +ORA-17216=C-XA returnerede XAER_PROTO under xa_open + +ORA-17233=C-XA returnerede XAER_RMERR under xa_close + +ORA-17235=C-XA returnerede XAER_INVAL under xa_close + +ORA-17236=C-XA returnerede XAER_PROTO under xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokolovertr\u00e6delse + +ORA-17402=Kun \u00e9n RPA-meddelelse forventes + +ORA-17403=Kun \u00e9n RXH-meddelelse forventes + +ORA-17404=Modtaget flere RXD\'er end forventet + +ORA-17405=UAC-l\u00e6ngde er ikke nul + +ORA-17406=Overskrider maksimale bufferl\u00e6ngde + +ORA-17407=ugyldig typerepr\u00e6sentation (setRep) + +ORA-17408=ugyldig typerepr\u00e6sentation (getRep) + +ORA-17409=ugyldig bufferl\u00e6ngde + +ORA-17410=Ikke flere data, der skal l\u00e6ses fra socket + +ORA-17411=Datatyperepr\u00e6sentationer matcher ikke + +ORA-17412=Typel\u00e6ngde st\u00f8rre end maksimum + +ORA-17413=Overskrider n\u00f8glest\u00f8rrelse + +ORA-17414=Utilstr\u00e6kkelig bufferst\u00f8rrelse til lagring af kolonnenavne + +ORA-17415=Denne type er ikke h\u00e5ndteret + +ORA-17416=FATAL + +ORA-17417=NLS-problem, afkodning af kolonnenavne fejlede + +ORA-17418=Fejl i feltl\u00e6ngden i intern struktur + +ORA-17419=Et ugyldigt antal kolonner returneret + +ORA-17420=Oracle-versionen ikke defineret + +ORA-17421=Typer eller forbindelse ikke defineret + +ORA-17422=Ugyldig klasse i factory + +ORA-17423=Bruger en PLSQL-blok, uden at en IOV er defineret + +ORA-17424=Fors\u00f8ger forskellige marshalling-operationer + +ORA-17425=Returnerer en stream i PLSQL-blok + +ORA-17426=B\u00e5de IN- og OUT-tilknytninger er NULL + +ORA-17427=Bruger ikke-initialiseret OAC + +ORA-17428=Logon skal kaldes, n\u00e5r forbindelse er oprettet + +ORA-17429=Skal mindst have forbindelse til server + +ORA-17430=Skal v\u00e6re logget p\u00e5 server + +ORA-17431=SQL-s\u00e6tning, der skal analyseres, er NULL + +ORA-17432=Ugyldige valg i all7 + +ORA-17433=ugyldige argumenter i kald + +ORA-17434=ikke i streaming-tilstand + +ORA-17435=ugyldigt antal in_out_binds i IOV + +ORA-17436=ugyldigt antal outbinds + +ORA-17437=Fejl i IN/OUT-argument(er) i PLSQL-blok? + +ORA-17438=Intern - Uventet v\u00e6rdi + +ORA-17439=Ugyldig SQL-type + +ORA-17440=DBItem/DBType er NULL + +ORA-17441=Ikke-underst\u00f8ttet Oracle-version. Den tidligste version, der underst\u00f8ttes, er 7.2.3. + +ORA-17442=V\u00e6rdien for Refcursor er ugyldig + +ORA-17443=NULL-bruger eller -adgangskode underst\u00f8ttes ikke i THIN-driver + +ORA-17444=TTC-protokolversion modtaget fra server underst\u00f8ttes ikke + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/b0c0221998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/b0c0221998af001c18c4935e001381da new file mode 100644 index 0000000..a482118 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/b0c0221998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/c0075a7ac7a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/c0075a7ac7a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..7fba66e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/c0075a7ac7a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + JOptionPane.showOptionDialog(null, "Message d'essai", "Configuration", 1, 1, Icon ic = new Icon(), jlabelBase, "Valeur initiale"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/e02cd31e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/e02cd31e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..44abbf7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ae/e02cd31e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u5185\u90e8\u9519\u8bef + +ORA-17002=Io \u5f02\u5e38 + +ORA-17003=\u65e0\u6548\u7684\u5217\u7d22\u5f15 + +ORA-17004=\u65e0\u6548\u7684\u5217\u7c7b\u578b + +ORA-17005=\u4e0d\u652f\u6301\u7684\u5217\u7c7b\u578b + +ORA-17006=\u5217\u540d\u65e0\u6548 + +ORA-17007=\u65e0\u6548\u7684\u52a8\u6001\u5217 + +ORA-17008=\u5173\u95ed\u7684\u8fde\u63a5 + +ORA-17009=\u5173\u95ed\u7684\u8bed\u53e5 + +ORA-17010=\u5173\u95ed\u7684 Resultset + +ORA-17011=\u7528\u5c3d\u7684 Resultset + +ORA-17012=\u53c2\u6570\u7c7b\u578b\u51b2\u7a81 + +ORA-17014=\u672a\u8c03\u7528 ResultSet.next + +ORA-17015=\u8bed\u53e5\u88ab\u53d6\u6d88 + +ORA-17016=\u8bed\u53e5\u8d85\u65f6 + +ORA-17017=\u5df2\u521d\u59cb\u5316\u6e38\u6807 + +ORA-17018=\u65e0\u6548\u7684\u6e38\u6807 + +ORA-17019=\u53ea\u80fd\u63cf\u8ff0\u67e5\u8be2 + +ORA-17020=\u65e0\u6548\u7684\u884c\u9884\u53d6 + +ORA-17021=\u5b9a\u4e49\u4e22\u5931 + +ORA-17022=\u5728\u7d22\u5f15\u5904\u5b9a\u4e49\u4e22\u5931 + +ORA-17023=\u4e0d\u652f\u6301\u7684\u7279\u6027 + +ORA-17024=\u672a\u8bfb\u53d6\u6570\u636e + +ORA-17025=defines.isNull () \u4e2d\u51fa\u73b0\u9519\u8bef + +ORA-17026=\u6570\u5b57\u6ea2\u51fa + +ORA-17027=\u6d41\u5df2\u88ab\u5173\u95ed + +ORA-17028=\u76f4\u5230\u5173\u95ed\u5f53\u524d\u7684 ResultSet \u624d\u80fd\u8fdb\u884c\u65b0\u7684\u5b9a\u4e49 + +ORA-17029=setReadOnly: \u4e0d\u652f\u6301\u53ea\u8bfb\u8fde\u63a5 + +ORA-17030=\u4ec5 READ_COMMITTED \u548c SERIALIZABLE \u662f\u6709\u6548\u7684\u4e8b\u52a1\u5904\u7406\u7ea7 + +ORA-17031=setAutoClose: \u4ec5\u652f\u6301\u81ea\u52a8\u5173\u95ed\u6a21\u5f0f\u6253\u5f00\u7684\u60c5\u51b5 + +ORA-17032=\u884c\u9884\u53d6\u4e0d\u80fd\u8bbe\u7f6e\u4e3a\u96f6 + +ORA-17033=\u51fa\u73b0\u683c\u5f0f\u4e0d\u6b63\u786e\u7684 SQL92 \u4e32 + +ORA-17034=\u51fa\u73b0\u4e0d\u652f\u6301\u7684 SQL92 \u6807\u8bb0 + +ORA-17035=\u4e0d\u652f\u6301\u7684\u5b57\u7b26\u96c6 \uff01\uff01 + +ORA-17036=OracleNumber \u4e2d\u7684\u5f02\u5e38 + +ORA-17037=\u4e0d\u80fd\u5728 UTF8 \u548c UCS2 \u4e4b\u95f4\u8f6c\u6362 + +ORA-17038=\u5b57\u8282\u6570\u7ec4\u4e0d\u591f\u957f + +ORA-17039=Char \u6570\u7ec4\u4e0d\u591f\u957f + +ORA-17040=\u5fc5\u987b\u5728\u8fde\u63a5 URL \u4e2d\u6307\u5b9a\u5b50\u534f\u8bae + +ORA-17041=\u7d22\u5f15\u4e2d\u4e22\u5931 IN \u6216 OUT \u53c2\u6570: + +ORA-17042=\u65e0\u6548\u7684\u6279\u503c + +ORA-17043=\u6d41\u7684\u6700\u5927\u957f\u5ea6\u65e0\u6548 + +ORA-17044=\u5185\u90e8\u9519\u8bef: \u672a\u5206\u914d\u6570\u636e\u6570\u7ec4 + +ORA-17045=\u5185\u90e8\u9519\u8bef: \u8bd5\u56fe\u8bbf\u95ee\u6279\u503c\u4e4b\u5916\u7684\u7ed1\u5b9a\u503c + +ORA-17046=\u5185\u90e8\u9519\u8bef: \u6570\u636e\u8bbf\u95ee\u7684\u7d22\u5f15\u65e0\u6548 + +ORA-17047=\u8bed\u6cd5\u5206\u6790\u7c7b\u578b\u63cf\u8ff0\u7b26\u65f6\u51fa\u9519 + +ORA-17048=\u672a\u5b9a\u4e49\u7684\u7c7b\u578b + +ORA-17049=\u4e0d\u4e00\u81f4\u7684 java \u548c sql \u5bf9\u8c61\u7c7b\u578b + +ORA-17050=\u77e2\u91cf\u4e2d\u6ca1\u6709\u8fd9\u6837\u7684\u5143\u7d20 + +ORA-17051=\u6b64 API \u4e0d\u80fd\u7528\u4e8e\u975e UDT \u7c7b\u578b + +ORA-17052=\u6b64 ref \u65e0\u6548 + +ORA-17053=\u957f\u5ea6\u65e0\u6548 + +ORA-17054=LOB \u5b9a\u4f4d\u5668\u65e0\u6548 + +ORA-17055=\u9047\u5230\u65e0\u6548\u5b57\u7b26\uff0c\u5728 + +ORA-17056=\u4e0d\u652f\u6301\u7684\u5b57\u7b26\u96c6 + +ORA-17057=\u5173\u95ed\u7684 LOB + +ORA-17058=\u5185\u90e8\u9519\u8bef: \u65e0\u6548\u7684 NLS \u8f6c\u6362\u7387 + +ORA-17059=\u65e0\u6cd5\u8f6c\u6362\u4e3a\u5185\u90e8\u8868\u793a + +ORA-17060=\u65e0\u6cd5\u6784\u9020\u63cf\u8ff0\u7b26 + +ORA-17061=\u4e22\u5931\u63cf\u8ff0\u7b26 + +ORA-17062=Ref \u6e38\u6807\u65e0\u6548 + +ORA-17063=\u4e0d\u5728\u4e8b\u52a1\u5904\u7406\u4e2d + +ORA-17064=\u65e0\u6548\u7684\u8bed\u6cd5\u6216\u6570\u636e\u5e93\u540d\u4e3a\u7a7a + +ORA-17065=\u8f6c\u6362\u7c7b\u4e3a\u7a7a + +ORA-17066=\u8bbf\u95ee\u5c42\u9700\u8981\u5177\u4f53\u5b9e\u65bd + +ORA-17067=\u6307\u5b9a\u4e86\u65e0\u6548\u7684 Oracle URL + +ORA-17068=\u8c03\u7528\u4e2d\u7684\u65e0\u6548\u53c2\u6570 + +ORA-17069=\u4f7f\u7528\u660e\u786e\u7684 XA \u8c03\u7528 + +ORA-17070=\u6570\u636e\u5927\u5c0f\u8d85\u51fa\u6b64\u7c7b\u578b\u7684\u6700\u5927\u503c + +ORA-17071=\u8d85\u51fa VARRAY \u7684\u6700\u5927\u9650\u5236 + +ORA-17072=\u5bf9\u5217\u6765\u8bf4\u63d2\u5165\u7684\u503c\u592a\u5927 + +ORA-17073=\u903b\u8f91\u53e5\u67c4\u4e0d\u518d\u6709\u6548 + +ORA-17074=\u65e0\u6548\u7684\u540d\u79f0\u6a21\u5f0f + +ORA-17075=\u5bf9\u53ea\u8f6c\u53d1\u7ed3\u679c\u96c6\u7684\u65e0\u6548\u64cd\u4f5c + +ORA-17076=\u5bf9\u53ea\u8bfb\u7ed3\u679c\u96c6\u7684\u65e0\u6548\u64cd\u4f5c + +ORA-17077=\u65e0\u6cd5\u8bbe\u7f6e REF \u503c + +ORA-17078=\u65e0\u6cd5\u8fdb\u884c\u8be5\u64cd\u4f5c\uff0c\u56e0\u4e3a\u8fde\u63a5\u5df2\u6253\u5f00 + +ORA-17079=\u7528\u6237\u8eab\u4efd\u8bc1\u660e\u4e0e\u73b0\u6709\u8eab\u4efd\u8bc1\u660e\u4e0d\u5339\u914d + +ORA-17080=\u65e0\u6548\u7684\u6279\u5904\u7406\u547d\u4ee4 + +ORA-17081=\u6279\u5904\u7406\u4e2d\u51fa\u73b0\u9519\u8bef + +ORA-17082=\u6ca1\u6709\u5f53\u524d\u884c + +ORA-17083=\u4e0d\u5728\u63d2\u5165\u884c\u4e0a + +ORA-17084=\u8bbf\u95ee\u63d2\u5165\u884c + +ORA-17085=\u51fa\u73b0\u503c\u51b2\u7a81 + +ORA-17086=\u63d2\u5165\u884c\u4e0a\u7684\u672a\u5b9a\u4e49\u5217\u503c + +ORA-17087=\u53ef\u5ffd\u7565\u7684\u6267\u884c\u63d0\u793a: setFetchDirection() + +ORA-17088=\u8bf7\u6c42\u7684\u7ed3\u679c\u7c7b\u578b\u548c\u5e76\u53d1\u7ea7\u522b\u7684\u8bed\u6cd5\u4e0d\u53d7\u652f\u6301 +ORA-17089=\u5185\u90e8\u9519\u8bef + +ORA-17090=\u4e0d\u5141\u8bb8\u7684\u64cd\u4f5c + +ORA-17091=\u5728\u6240\u8bf7\u6c42\u7684\u7c7b\u578b\u548c (\u6216) \u5e76\u53d1\u7ea7\u522b\u65e0\u6cd5\u521b\u5efa\u7ed3\u679c\u96c6 + +ORA-17092=\u65e0\u6cd5\u5728\u8c03\u7528\u5904\u7406\u64cd\u4f5c\u7ed3\u675f\u65f6\u521b\u5efa\u6216\u6267\u884c JDBC \u8bed\u53e5 + +ORA-17093=OCI \u64cd\u4f5c\u8fd4\u56de OCI_SUCCESS_WITH_INFO + +ORA-17094=\u5bf9\u8c61\u7c7b\u578b\u7248\u672c\u4e0d\u5339\u914d + +ORA-17095=\u8bed\u53e5\u9ad8\u901f\u7f13\u5b58\u5927\u5c0f\u672a\u4f5c\u8bbe\u7f6e + +ORA-17096=\u4e0d\u80fd\u4e3a\u6b64\u903b\u8f91\u8fde\u63a5\u542f\u7528\u8bed\u53e5\u9ad8\u901f\u7f13\u5b58\u3002 + +ORA-17097=PL/SQL \u7d22\u5f15\u8868\u7684\u5143\u7d20\u7c7b\u578b\u65e0\u6548 + +ORA-17098=\u7a7a\u4e8c\u8fdb\u5236\u5927\u5bf9\u8c61\u64cd\u4f5c\u65e0\u6548 + +ORA-17099=PL/SQL \u7d22\u5f15\u8868\u6570\u7ec4\u957f\u5ea6\u65e0\u6548 + +ORA-17100=\u6570\u636e\u5e93 Java \u5bf9\u8c61\u65e0\u6548 + +ORA-17101=OCI \u8fde\u63a5\u6c60\u5bf9\u8c61\u4e2d\u7684\u5c5e\u6027\u65e0\u6548 + +ORA-17102=Bfile \u4e3a\u53ea\u8bfb + +ORA-17103=\u901a\u8fc7 getConnection \u8fd4\u56de\u7684\u8fde\u63a5\u7c7b\u578b\u65e0\u6548\u3002\u6539\u7528 getJavaSqlConnection + +ORA-17104=\u8981\u6267\u884c\u7684 SQL \u8bed\u53e5\u4e0d\u5f97\u4e3a\u7a7a\u767d\u6216\u7a7a\u503c + +ORA-17105=\u672a\u8bbe\u7f6e\u8fde\u63a5\u4f1a\u8bdd\u65f6\u533a + +ORA-17106=\u6307\u5b9a\u7684 JDBC-OCI \u9a71\u52a8\u7a0b\u5e8f\u8fde\u63a5\u6c60\u914d\u7f6e\u65e0\u6548 + +ORA-17107=\u6307\u5b9a\u7684\u4ee3\u7406\u7c7b\u578b\u65e0\u6548 + +ORA-17108=\u6ca1\u6709\u5728 defineColumnType \u4e2d\u6307\u5b9a\u6700\u5927\u957f\u5ea6 + +ORA-17109=\u627e\u4e0d\u5230\u6807\u51c6 Java \u5b57\u7b26\u7f16\u7801 + +ORA-17110=\u6267\u884c\u5b8c\u6bd5, \u4f46\u5e26\u6709\u8b66\u544a + +ORA-17111=\u6307\u5b9a\u7684\u8fde\u63a5\u9ad8\u901f\u7f13\u5b58 TTL \u8d85\u65f6\u65f6\u95f4\u6ea2\u51fa + +ORA-17112=\u6307\u5b9a\u7684\u7ebf\u7a0b\u65f6\u95f4\u95f4\u9694\u65e0\u6548 + +ORA-17113=\u7ebf\u7a0b\u65f6\u95f4\u95f4\u9694\u503c\u5927\u4e8e\u9ad8\u901f\u7f13\u5b58\u8d85\u65f6\u503c + +ORA-17114=\u65e0\u6cd5\u5728\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u4f7f\u7528\u672c\u5730\u4e8b\u52a1\u5904\u7406\u63d0\u4ea4 + +ORA-17115=\u65e0\u6cd5\u5728\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u4f7f\u7528\u672c\u5730\u4e8b\u52a1\u5904\u7406\u56de\u9000 + +ORA-17116=\u65e0\u6cd5\u5728\u6d3b\u52a8\u7684\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u542f\u7528\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd + +ORA-17117=\u65e0\u6cd5\u5728\u6d3b\u52a8\u7684\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u8bbe\u7f6e\u4fdd\u5b58\u70b9 + +ORA-17118=\u65e0\u6cd5\u83b7\u53d6\u5df2\u547d\u540d\u4fdd\u5b58\u70b9\u7684 ID + +ORA-17119=\u65e0\u6cd5\u83b7\u53d6\u672a\u547d\u540d\u4fdd\u5b58\u70b9\u7684\u540d\u79f0 + +ORA-17120=\u65e0\u6cd5\u8bbe\u7f6e\u542f\u7528\u4e86\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd\u7684\u4fdd\u5b58\u70b9 + +ORA-17121=\u65e0\u6cd5\u56de\u9000\u5230\u542f\u7528\u4e86\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd\u7684\u4fdd\u5b58\u70b9 + +ORA-17122=\u65e0\u6cd5\u56de\u9000\u5230\u542f\u7528\u4e86\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd\u7684\u4fdd\u5b58\u70b9 + +ORA-17123=\u6307\u5b9a\u7684\u8bed\u53e5\u9ad8\u901f\u7f13\u5b58\u5927\u5c0f\u65e0\u6548 + +ORA-17124=\u6307\u5b9a\u7684\u8fde\u63a5\u9ad8\u901f\u7f13\u5b58\u5931\u6d3b\u8d85\u65f6\u65f6\u95f4\u65e0\u6548 + +ORA-17200=\u65e0\u6cd5\u6b63\u786e\u5730\u5c06 XA \u6253\u5f00\u5b57\u7b26\u4e32\u4ece Java \u8f6c\u6362\u6210 C + +ORA-17201=\u65e0\u6cd5\u6b63\u786e\u5730\u5c06 XA \u5173\u95ed\u5b57\u7b26\u4e32\u4ece Java \u8f6c\u6362\u6210 C + +ORA-17202=\u65e0\u6cd5\u6b63\u786e\u5730\u5c06 RM \u540d\u79f0\u4ece Java \u8f6c\u6362\u6210 C + +ORA-17203=\u65e0\u6cd5\u5c06\u6307\u9488\u7c7b\u578b\u5f3a\u5236\u8f6c\u6362\u6210 jlong + +ORA-17204=\u8f93\u5165\u6570\u7ec4\u8fc7\u77ed, \u65e0\u6cd5\u5bb9\u7eb3 OCI \u53e5\u67c4 + +ORA-17205=\u65e0\u6cd5\u4f7f\u7528 xaoSvcCtx \u4ece C-XA \u83b7\u53d6 OCISvcCtx \u53e5\u67c4 + +ORA-17206=\u65e0\u6cd5\u4f7f\u7528 xaoEnv \u4ece C-XA \u83b7\u53d6 OCIEnv \u53e5\u67c4 + +ORA-17207=\u672a\u5728\u6570\u636e\u6e90\u4e2d\u8bbe\u7f6e tnsEntry \u5c5e\u6027 + +ORA-17213=C-XA \u5728 xa_open \u671f\u95f4\u8fd4\u56de XAER_RMERR + +ORA-17215=C-XA \u5728 xa_open \u671f\u95f4\u8fd4\u56de XAER_INVAL + +ORA-17216=C-XA \u5728 xa_open \u671f\u95f4\u8fd4\u56de XAER_PROTO + +ORA-17233=C-XA \u5728 xa_close \u671f\u95f4\u8fd4\u56de XAER_RMERR + +ORA-17235=C-XA \u5728 xa_close \u671f\u95f4\u8fd4\u56de XAER_INVAL + +ORA-17236=C-XA \u5728 xa_close \u671f\u95f4\u8fd4\u56de XAER_PROTO + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u8fdd\u53cd\u534f\u8bae + +ORA-17402=\u53ea\u671f\u671b\u5f97\u5230\u4e00\u4e2a RPA \u6d88\u606f + +ORA-17403=\u53ea\u671f\u671b\u5f97\u5230\u4e00\u4e2a RXH \u6d88\u606f + +ORA-17404=\u6536\u5230\u8d85\u8fc7\u9884\u671f\u7684 RXD + +ORA-17405=UAC \u957f\u5ea6\u4e0d\u4e3a\u96f6 + +ORA-17406=\u8d85\u51fa\u7f13\u51b2\u533a\u7684\u6700\u5927\u957f\u5ea6 + +ORA-17407=\u65e0\u6548\u7684\u7c7b\u578b\u8868\u793a (setRep) + +ORA-17408=\u65e0\u6548\u7684\u7c7b\u578b\u8868\u793a (getRep) + +ORA-17409=\u65e0\u6548\u7684\u7f13\u51b2\u533a\u957f\u5ea6 + +ORA-17410=\u65e0\u6cd5\u4ece\u5957\u63a5\u5b57\u8bfb\u53d6\u66f4\u591a\u7684\u6570\u636e + +ORA-17411=\u6570\u636e\u7c7b\u578b\u8868\u793a\u4e0d\u5339\u914d + +ORA-17412=\u7c7b\u578b\u957f\u5ea6\u5927\u4e8e\u6700\u5927\u503c + +ORA-17413=\u8d85\u51fa\u5173\u952e\u5b57\u5927\u5c0f + +ORA-17414=\u7f13\u51b2\u533a\u5bb9\u91cf\u4e0d\u8db3\u4ee5\u5b58\u50a8\u5217\u540d + +ORA-17415=\u5c1a\u672a\u5904\u7406\u6b64\u7c7b\u578b + +ORA-17416=FATAL + +ORA-17417=NLS \u95ee\u9898\uff0c\u65e0\u6cd5\u5bf9\u5217\u540d\u8fdb\u884c\u89e3\u7801 + +ORA-17418=\u5185\u90e8\u7ed3\u6784\u7684\u5b57\u6bb5\u957f\u5ea6\u9519\u8bef + +ORA-17419=\u8fd4\u56de\u7684\u5217\u6570\u65e0\u6548 + +ORA-17420=\u672a\u5b9a\u4e49 Oracle \u7248\u672c + +ORA-17421=\u672a\u5b9a\u4e49\u7c7b\u578b\u6216\u8fde\u63a5 + +ORA-17422=\u5de5\u5382\u4e2d\u7684\u65e0\u6548\u7c7b + +ORA-17423=\u5728\u672a\u5b9a\u4e49 IOV \u7684\u60c5\u51b5\u4e0b\u4f7f\u7528 PLSQL \u5757 + +ORA-17424=\u5c1d\u8bd5\u4e0d\u540c\u7684\u7f16\u7ec4\u64cd\u4f5c + +ORA-17425=\u8fd4\u56de PLSQL \u5757\u4e2d\u7684\u6d41 + +ORA-17426=IN \u548c OUT \u7684\u7ed1\u5b9a\u5747\u4e3a NULL + +ORA-17427=\u4f7f\u7528\u672a\u521d\u59cb\u5316\u7684 OAC + +ORA-17428=\u8fde\u63a5\u540e\u5fc5\u987b\u8c03\u7528\u767b\u5f55 + +ORA-17429=\u5fc5\u987b\u81f3\u5c11\u4e0e\u670d\u52a1\u5668\u8fde\u63a5 + +ORA-17430=\u5fc5\u987b\u767b\u5f55\u5230\u670d\u52a1\u5668 + +ORA-17431=\u8981\u5206\u6790\u7684 SQL \u8bed\u53e5\u4e3a\u7a7a + +ORA-17432=all7 \u4e2d\u7684\u65e0\u6548\u9009\u9879 + +ORA-17433=\u8c03\u7528\u4e2d\u65e0\u6548\u7684\u53c2\u6570 + +ORA-17434=\u4e0d\u5728\u6d41\u6a21\u5f0f\u4e0b + +ORA-17435=IOV \u4e2d\u65e0\u6548\u7684 in_out_binds \u4e2a\u6570 + +ORA-17436=\u65e0\u6548\u7684 outbinds \u6570 + +ORA-17437=PLSQL \u5757 IN/OUT \u53c2\u6570\u4e2d\u51fa\u73b0\u9519\u8bef + +ORA-17438=\u5185\u90e8 - \u4e0d\u671f\u671b\u7684\u503c + +ORA-17439=\u65e0\u6548\u7684 SQL \u7c7b\u578b + +ORA-17440=DBItem/DBType \u4e3a\u7a7a + +ORA-17441=\u4e0d\u652f\u6301\u7684 Oracle \u7248\u672c\u3002\u652f\u6301\u7684\u6700\u4f4e\u7248\u672c\u4e3a 7.2.3\u3002 + +ORA-17442=Refcursor \u503c\u65e0\u6548 + +ORA-17443=THIN \u9a71\u52a8\u7a0b\u5e8f\u4e2d\u4e0d\u652f\u6301\u4e3a\u7a7a\u7684\u7528\u6237\u6216\u53e3\u4ee4 + +ORA-17444=\u4e0d\u652f\u6301\u4ece\u670d\u52a1\u5668\u63a5\u6536\u5230\u7684 TTC \u534f\u8bae\u7248\u672c + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/af/20be4b6bc9a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/af/20be4b6bc9a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..3c22d94 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/af/20be4b6bc9a4001c1acc9f54b60f9b57 @@ -0,0 +1,73 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setBorder(FlowLayout); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/af/700da01698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/af/700da01698af001c18c4935e001381da new file mode 100644 index 0000000..0c01d4c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/af/700da01698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/af/70b1cc1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/af/70b1cc1898af001c18c4935e001381da new file mode 100644 index 0000000..57cc22b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/af/70b1cc1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/10b7151b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/10b7151b98af001c18c4935e001381da new file mode 100644 index 0000000..12e9278 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/10b7151b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/2089888448aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/2089888448aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..f6f9058 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/2089888448aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,185 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/404ae51afda3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/404ae51afda3001c1027e59cc3e35e89 new file mode 100644 index 0000000..52c09ee --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/404ae51afda3001c1027e59cc3e35e89 @@ -0,0 +1,42 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/70c4c61598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/70c4c61598af001c18c4935e001381da new file mode 100644 index 0000000..095b468 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/70c4c61598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/d053741498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/d053741498af001c18c4935e001381da new file mode 100644 index 0000000..481daa2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/d053741498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/d070e126caa4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/d070e126caa4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..c1af194 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b/d070e126caa4001c1acc9f54b60f9b57 @@ -0,0 +1,72 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setLayout( new FlowLayout()); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/a083911598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/a083911598af001c18c4935e001381da new file mode 100644 index 0000000..e2d9934 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/a083911598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/c094f1fb20af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/c094f1fb20af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/c0adf01b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/c0adf01b98af001c18c4935e001381da new file mode 100644 index 0000000..8bbecb5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/c0adf01b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/c0ca9bf320af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/c0ca9bf320af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..52a78e6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/c0ca9bf320af001c1bf1a004f0d77fc3 @@ -0,0 +1,2199 @@ +Manifest-Version: 1.0 +Specification-Title: "Oracle JDBC driver classes for use with JDK1.4" +Specification-Version: "Oracle JDBC Driver version - 9.0.2.0.0" +Specification-Vendor: "Oracle Corporation" . +Implementation-Title: "ojdbc14.jar" +Implementation-Version: "Oracle JDBC Driver version - 9.0.2.0.0" +Implementation-Vendor: "Oracle Corporation" +Implementation-Time: "Thu Apr 25 23:14:02 2002" + +Name: oracle/sql/ARRAY.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dmaLI4JYUr93CzKOLgN6E21Vi5M= +MD5-Digest: c0XbokBF/OW0//pY4JCVnw== + +Name: oracle/sql/DatumWithConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: LTPZ8X/+DDNWesdKYiAowk0wnH0= +MD5-Digest: IYBoyZ3JK0Xo4oseRqwLcg== + +Name: oracle/sql/ArrayDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: u9tszi0PPXsuj1WeMUwsAP2cDxM= +MD5-Digest: 3jLTHQ6ikYXhjUbGUOdcfg== + +Name: oracle/sql/TypeDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: H4vZ6P3fstokDnYd2r22XcTBTms= +MD5-Digest: 8L1ip338DazRi0eXmkJjhQ== + +Name: oracle/sql/SQLName.class +Digest-Algorithms: SHA MD5 +SHA-Digest: k87KR5IrEgJxw5zijb76Ylbg6P8= +MD5-Digest: 2cH/AlBVz2WO48nMaYbCXg== + +Name: oracle/sql/LobDBAccessImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nMQB1w7ABpBZdpnDKTkHfxAJ5Zg= +MD5-Digest: oJbv0nJlXg4L6hDd4cebqA== + +Name: oracle/sql/BlobDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lCeo6aCNZW09+6wVqchJfDn7WDE= +MD5-Digest: eCidkvOMRjKVZugusWoKZQ== + +Name: oracle/sql/ClobDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WhTW78FBUhUlNCbiwDJ8oJGHcL4= +MD5-Digest: eGAflcBZj4aThvstYOh3oQ== + +Name: oracle/sql/BfileDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U5TpkBUxii9BuJsftF5B40c95vU= +MD5-Digest: n0Olri3rt0+auzn7kzDU9Q== + +Name: oracle/sql/StructDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DZLVHTNLxpM/SrnbmvYU7ZnCjQ8= +MD5-Digest: U3jD6zUYeY8aRenr7QuUgQ== + +Name: oracle/sql/STRUCT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KjRJuf26U56eCC0VFaq4sgQdQvQ= +MD5-Digest: ESh7ekDFr+wHxgYuVXYubQ== + +Name: oracle/sql/BLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YdCoSwsZJODsKxo8/Im33SiW0eg= +MD5-Digest: DG0ZZCIRtwfrRDZ3i6Pslg== + +Name: oracle/sql/CLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 87s7h92BkVrxEzg9A7V3VaF3lMM= +MD5-Digest: zWYfzq4FcBziYd37UWdcmw== + +Name: oracle/sql/BFILE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JBjeYLW56wopswruVu5jC21Ttzw= +MD5-Digest: ZM/xTRYYhYfb8kRNeG9+bg== + +Name: oracle/sql/ROWID.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YKpkYZFRLJvpymBFWdcCtEsYc2E= +MD5-Digest: xCQOZ/Ue3O0BVywsO34rUg== + +Name: oracle/sql/RAW.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WnR4XVYEtn9QQ97pdq7yhOXMU+o= +MD5-Digest: MySTAn1t8VoIO3gJZjGnGQ== + +Name: oracle/sql/CHAR.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WI+n2pYte7/SF06GsJdAdPWyFtA= +MD5-Digest: I6xMrtTaJ6tS6wkiyiygvA== + +Name: oracle/sql/REF.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gcth6Fur3799Dadn8hk+TGA0kTo= +MD5-Digest: 1AoaOGuVIgK3MFfsy43GGA== + +Name: oracle/sql/OPAQUE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tn5BWea4Q1cizI5MtD80CDHCx8s= +MD5-Digest: J7NRoctd8WUR+seJFpLT2w== + +Name: oracle/sql/CustomDatumFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YP1uKDUai1IdrMBOG2bv16xPGX0= +MD5-Digest: IleX9p1VBIJYP/r8ahEceg== + +Name: oracle/sql/CustomDatum.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UYkpvvDlSBoRqPuttVbplZ2bfKE= +MD5-Digest: B1tL8qfjke7u1m0zdI3c+w== + +Name: oracle/sql/ORADataFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pGGV+XvqLAKqEv52So7dZ6exmZQ= +MD5-Digest: 6nvu3d+jXwrhbYBJhpwiAw== + +Name: oracle/sql/ORAData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: QOsLKd6H70Pfz1ozJB+Xc/ncLGw= +MD5-Digest: VKfEdDUBSW0N2mn1jeD3kw== + +Name: oracle/sql/OpaqueDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kXFKCF1da8FvvT9WtRWX5gPpR14= +MD5-Digest: 357qM41FN4ZpomFVxZaBjA== + +Name: oracle/sql/JAVA_STRUCT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +ZokJm+D3cMM/zIp4N1jbdloTD8= +MD5-Digest: B9GYS82UdAjL/aw6147RRA== + +Name: oracle/sql/LobPlsqlUtil.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jdejUNC9LafH3bIVuhHy2yGvQ0c= +MD5-Digest: PfLIMW753A/amrCLichPOw== + +Name: oracle/sql/OracleJdbc2SQLInput.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8F7zpeez+ncywdnvqLNlrtt+lL8= +MD5-Digest: WpuUMEPy2IGSW8s2uf/+XQ== + +Name: oracle/sql/OracleSQLOutput.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rlbc0CqZq+ZfYNamR0r4jLS3UrQ= +MD5-Digest: vucgxszioH3+LKqSstiCFw== + +Name: oracle/sql/SQLUtil.class +Digest-Algorithms: SHA MD5 +SHA-Digest: blujZm0sOm+Jo6gdT4OiC3YQtSE= +MD5-Digest: lVp9oWJUEpeW+40MjK+WQw== + +Name: oracle/sql/Mutable.class +Digest-Algorithms: SHA MD5 +SHA-Digest: I5inGoeXFe4PI4Y+VxOd+FpB6TM= +MD5-Digest: ARLS8eCwvIbU79I0TYSENw== + +Name: oracle/sql/DATE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BmR6VVV+jo5xC9s9HeyLKqZaFxE= +MD5-Digest: jLFfN2EaDG6vDofwRwnClA== + +Name: oracle/sql/Datum.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fLK894qTCMEsmPxZfkdT5h9QbQ8= +MD5-Digest: KlyY5/IYpbiF1Nj6p5yV4Q== + +Name: oracle/sql/INTERVALYM.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HRejRz4Bg7tl8lUTVYc0e8Xa9MA= +MD5-Digest: pVh3Vpjf+2FmJl+nR2ZfvQ== + +Name: oracle/sql/LdxLib.class +Digest-Algorithms: SHA MD5 +SHA-Digest: V1WsJh65/NyK/X/9F8Po2VXayRY= +MD5-Digest: lcre3ar7E9GtPmPMtZ+Aew== + +Name: oracle/sql/LdxLibServer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: u7CMGGuGcSdxFydurPULd8yyCdw= +MD5-Digest: QgITiGHPBVLPzsOzbAY9JA== + +Name: oracle/sql/LdxLibThin.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qqaOmLsJ/tBgB1aqEJMbnMEO26k= +MD5-Digest: PWIm08r24Ztm66Anpsw7tw== + +Name: oracle/sql/LnxLib.class +Digest-Algorithms: SHA MD5 +SHA-Digest: CqDxmXoq4gsE18BRzRVWh4LETTA= +MD5-Digest: RoKoDx5IO4yK3wJzthp5TA== + +Name: oracle/sql/LnxLibServer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: E6KD4v4XPv1UO91d61SimuH7j2k= +MD5-Digest: lhSPa0mika9yWGyGAtQ4cQ== + +Name: oracle/sql/LnxLibThin$lnxqc.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kidzMmd4QNnZ8ATm3/vzVKv/dvA= +MD5-Digest: 1/MQeJPu1kJz+Mi9eRsCYA== + +Name: oracle/sql/LnxLibThin.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qZ8JiUYqODUHkGVx07uCmZSYTVk= +MD5-Digest: uSoZVN7tw1Nhynzs7f8wlg== + +Name: oracle/sql/LnxLibThinFormat.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pcpbQGm1g3AnRr6RPxQJLAM7IXk= +MD5-Digest: ik9vH2MjY8wnc7ibQwVbig== + +Name: oracle/sql/LoadCorejava.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HIBxiVR1VtP4hutHoni6EFf9ANo= +MD5-Digest: P4leeiZ3muq76m+apKT05Q== + +Name: oracle/sql/NUMBER.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ACLbxB2dcQ9DeIP5i8FqTbXoJC0= +MD5-Digest: sGBRHkRgocK7T6nEJ3cjFA== + +Name: oracle/sql/OffsetDST.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MVp0aUKK3IbZ7infn4TsbDiWwZ8= +MD5-Digest: LA2MLQC3EV4RW2UqjSBZdQ== + +Name: oracle/sql/TIMESTAMP.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Z8CBMiqzuCuexsLgDajZPLKnC6w= +MD5-Digest: Yyl/K5ZBf6Hoy0djLe/wrg== + +Name: oracle/sql/TIMESTAMPLTZ.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mUKvAZ5LQ4aH3Kh4ors+/FECx00= +MD5-Digest: gy+Mojrf4ljjOLZ1IDV8Nw== + +Name: oracle/sql/TIMESTAMPTZ.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vuD2FkJsbuAlxaInKwX1Z7ohA6M= +MD5-Digest: H6eih0gyd+JtBwOBNWJdcg== + +Name: oracle/sql/TIMEZONETAB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xedgHU5FnHV0Jn7c5JlZIjYfu8s= +MD5-Digest: 7Mx5oUE7lh21FOojQe5W6A== + +Name: oracle/sql/TRANSDUMP.class +Digest-Algorithms: SHA MD5 +SHA-Digest: F7hSpgN0hnAh5Y37Sla/b9wk2fg= +MD5-Digest: V2RdJTahcD9OpvfgdM8z4w== + +Name: oracle/sql/TableClass.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bSljZt8ygEaM0y/xsCGQLsaMpwg= +MD5-Digest: /9mVnFgK9MouJXmRPuH26A== + +Name: oracle/sql/ZONEIDMAP.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Xv3eMJYjqyUcUjaazd8QgXUDi8c= +MD5-Digest: lyjtjxXvqd/ib+cF4ajudQ== + +Name: oracle/sql/CharacterBuffer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bDyggPTeaIIAvdn9ZeE+QF4INtA= +MD5-Digest: i8yWpwx8F2+2t0lk0QAdWw== + +Name: oracle/sql/converter/CharacterConverter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZOPUomREpwnpcDXHnT5mayumIWg= +MD5-Digest: oQ2tnvtAlt6ZBbxATu0iAw== + +Name: oracle/sql/converter/CharacterConverter12Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: uafWI+z8Mo0VGD/4HRKiA92z1UQ= +MD5-Digest: hw5MByOetgFvrYAcIGJ+/w== + +Name: oracle/sql/converter/CharacterConverter1Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: swB/pfZ2l9Afdbb6b34tPv1Qxq4= +MD5-Digest: ziNzzD85HXqobkHbBbMgoQ== + +Name: oracle/sql/converter/CharacterConverter2ByteFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KmL0ZynWywM0cOB9c0qXW4Cbevk= +MD5-Digest: +6TS5W6ZaBtI18U3a5uOSA== + +Name: oracle/sql/converter/CharacterConverterGB18030.class +Digest-Algorithms: SHA MD5 +SHA-Digest: zD25mvmaiAiiP8gGOysCiujhJy0= +MD5-Digest: ldmrXEbp2W7YNjuG6dVURw== + +Name: oracle/sql/converter/CharacterConverterGroup.class +Digest-Algorithms: SHA MD5 +SHA-Digest: EzLOxY5U8H6Qihx6h6RA3k+i4R0= +MD5-Digest: WAqx8mq5qRv5QXXCTSk++g== + +Name: oracle/sql/converter/CharacterConverterJAEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: W3wiUSq2bia/erC6uPJmWSpOXpI= +MD5-Digest: Oen4i22sJTb/YiuPq1O2Qg== + +Name: oracle/sql/converter/CharacterConverterLC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U+Q4s3oOYLrbNTe82ly357E2QX8= +MD5-Digest: MqQSllgTkGh+/wG+9WY9RQ== + +Name: oracle/sql/converter/CharacterConverterLCFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: sx0qSwu0GrDEQW+gHp7g90b8xFY= +MD5-Digest: PZtrt/8GEHVOhHd5IChOzA== + +Name: oracle/sql/converter/CharacterConverterSJIS.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yM8fTP69yUownQjQlzLG9W36saY= +MD5-Digest: n+qmst7aSqLkIwk5Jfa5Hw== + +Name: oracle/sql/converter/CharacterConverterShift.class +Digest-Algorithms: SHA MD5 +SHA-Digest: sGTaFp3SbfSMT8UiWkwHn5wL4ww= +MD5-Digest: 7tmLvyL+R4V5+CaMpuRhPA== + +Name: oracle/sql/converter/CharacterConverterZHTEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Y+3bV7epIGi0ScCwDE/dRn/lPi8= +MD5-Digest: bc9k3dtSdMzm6zZYkNN9MA== + +Name: oracle/sql/CharacterRepConstants.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lWMTpI+SzYpz/Y8O+b+LLymca7w= +MD5-Digest: i1cnc7lSBo/GtEd11UujWQ== + +Name: oracle/sql/CharacterSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DmlhMQXFjVJtfUGhJqO4ZhEm70c= +MD5-Digest: 0a/y5sG7jV3ybIbPnBbm7w== + +Name: oracle/sql/CharacterSet12Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8j2MDk10lMX9BKHwAQyZQ5egkaY= +MD5-Digest: 1SVdT+BQAYQQF6GsPWE5ww== + +Name: oracle/sql/CharacterSet1Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5UjyOx6B1QhuPMX1qxohFXMnrbI= +MD5-Digest: 1nFNKF7GIyU9Z0fV+VMzlQ== + +Name: oracle/sql/CharacterSet2ByteFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kaYdbzyyB17Nb137sndmlk+K6jw= +MD5-Digest: 5H68ulQQGeYRfhGK7pdZbw== + +Name: oracle/sql/CharacterSetAL16UTF16.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wK13JeML28ElJddybKIIdnDkM0A= +MD5-Digest: 2aBcF1y3SyNGIPU8MX/HlA== + +Name: oracle/sql/CharacterSetAL16UTF16LE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Diz5QLXjf6CcpXtPUJIbK5FX9WQ= +MD5-Digest: 2qhFKv1zlTtcMs0V/G8SLg== + +Name: oracle/sql/CharacterSetAL32UTF8.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mLN1mrMg5065CDbYmd1mc4CRYek= +MD5-Digest: n66jBlOap0uu30Prg/ukfQ== + +Name: oracle/sql/CharacterSetFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Qlwjz43Q4gHryS522JV9hZW0UlU= +MD5-Digest: S913Wsz9heUq3VsK9oYr6g== + +Name: oracle/sql/CharacterSetFactoryDefault.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4La8H+hk58/YoyPRAFDOiRq/ZVI= +MD5-Digest: /Olol7UWOuf8SjgOb6LwBA== + +Name: oracle/sql/CharacterSetFactoryThin.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rYoGGThtO/TaXAmLEywji+TL49U= +MD5-Digest: +ooX8tlnw/83rDyzibZMUw== + +Name: oracle/sql/CharacterSetByte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1qdr8DEyw82Cf4vNXZjZKE5ZuH0= +MD5-Digest: pvNROxQklg3iu0EcwMoe+Q== + +Name: oracle/sql/CharacterSetUnknown.class +Digest-Algorithms: SHA MD5 +SHA-Digest: g1tIpWM0g0cWJ4fkuBObrT02e/0= +MD5-Digest: R/IUrofcoLhjAZU9+h7iEQ== + +Name: oracle/sql/CharacterSetGB18030.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JV+nhbN0CQIC4c/qRxeZeOZ5WXE= +MD5-Digest: FJgyxBwW8QIxsPiymZt6+A== + +Name: oracle/sql/CharacterSetJAEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: TYoK69edpanLC3AIFbKmppgglks= +MD5-Digest: zlS0Lq36kiYcyYrtKCLuUw== + +Name: oracle/sql/CharacterSetLCFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lPtJJi8fHZKNElnV0RmcT3yeNDg= +MD5-Digest: /8iJPYgthyb6H0fyAav3YQ== + +Name: oracle/sql/CharacterSetSJIS.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tX86UTKxDPkQ33ZU+MoDEPZ/hPY= +MD5-Digest: LwTLAU1st3wl/GAxKENe5w== + +Name: oracle/sql/CharacterSetShift.class +Digest-Algorithms: SHA MD5 +SHA-Digest: L3MvGw8xif7OWTYYQvcVCViKVvg= +MD5-Digest: 4eHmVGzZEEDES2wX9Nk9yQ== + +Name: oracle/sql/CharacterSetUTF.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KWMIVG11tbjuJRivEz6WnV4d+YU= +MD5-Digest: 9ynBExsrCQ2cR/P1emuHpw== + +Name: oracle/sql/CharacterSetUTFE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qo0GCbrWnG9OGrvwbW699SQSywQ= +MD5-Digest: VXaooXe99G/AqXIh4fBVZA== + +Name: oracle/sql/CharacterSetWithConverter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UkA8dsD/rCBPhIkIkR2Epu95M34= +MD5-Digest: dTgk0gVSzPmZuOgbbjacHQ== + +Name: oracle/sql/CharacterSetZHTEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3a10jnHE9tWoGNk2MtDuDbpgjhE= +MD5-Digest: FjJvJB1nrAfb/7vzyyn/6Q== + +Name: oracle/sql/CharacterWalker.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4nBXhhqJQjUtM2tjl+b9/rcU/h0= +MD5-Digest: YD/3ozwM/3tq6qLGazqBFw== + +Name: oracle/sql/ConverterArchive.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ERj2nqUCjNV0mYnz2JTpXmmfUvM= +MD5-Digest: vQrqx/UkQNqdxVyKjcDHog== + +Name: oracle/sql/converter_xcharset/CharacterConverter0001.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: kFLuLis32bAHzkjW0d2MVxn3k4c= +MD5-Digest: 3DfN9ipognA5JGMX9E2apg== + +Name: oracle/sql/converter_xcharset/CharacterConverter0002.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: jCXbK+9R4wwve5aSnJ1q5pKOlyU= +MD5-Digest: Y3J8irmFbS4CUoaAsHRkjg== + +Name: oracle/sql/converter_xcharset/CharacterConverter001f.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: Ex7Zbc3wANbl+JeVjaYXE01LMTE= +MD5-Digest: heGmQ94DltToro31bhXdyA== + +Name: oracle/jdbc/driver/OracleConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dIFZNLqSnEox48XWJauHETUii0o= +MD5-Digest: myC2JK8f3B31IKHvK3MZoQ== + +Name: oracle/jdbc/driver/ClientDataSupport.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dG0e6A68x0c8iHpwHwWwKm9XaIw= +MD5-Digest: V9/l/AIVtBt+mRGvoJ6TGg== + +Name: oracle/jdbc/driver/OracleStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pmfdytTNs+3okE1B7F6FZFaW8OI= +MD5-Digest: Iye6DfThk1KPqE1Fgb7wCQ== + +Name: oracle/jdbc/driver/ScrollRsetStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: acwZHgCk+IqgzUDXIf2BgI053dA= +MD5-Digest: aaJm6mZaxM0J39EHQBZl8w== + +Name: oracle/jdbc/driver/OracleSql.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 03C21c0tcrp2o3G1c7pSRAicVBg= +MD5-Digest: 9WWP98Ka/D7VOX47pFHh4A== + +Name: oracle/jdbc/driver/LRUStatementCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jzV1cNJlPfd1wEqKSVaeU1dVDDE= +MD5-Digest: p4pQsBhlYeGiDlymycxHBQ== + +Name: oracle/jdbc/driver/OracleCloseCallback.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Kl94tVClCPaXQu05eTpJRgekUmQ= +MD5-Digest: JGA24F3oVuXuEb6qsmisww== + +Name: oracle/jdbc/driver/OraclePreparedStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PPogw9+dVoU+ntyrjVGR6KtCG4A= +MD5-Digest: MbKbYkQNFn0S9HL1o0naPQ== + +Name: oracle/jdbc/driver/OracleInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: P8qfiRDWEbCHK2Z12LvS8PsK4kw= +MD5-Digest: mIn8vE4AugQBuOE7i8KerQ== + +Name: oracle/jdbc/driver/OracleBufferedStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mUHdlpiYPv2MJ5CJf5QlQxYaoNA= +MD5-Digest: z922IVW37aN2jS40yPUGEg== + +Name: oracle/jdbc/driver/OracleResultSetImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YyI5kKZWzgwoi6koqNXBvhUJxL0= +MD5-Digest: 8HwvhknA0jz3y9bhL2QPfQ== + +Name: oracle/jdbc/driver/BaseResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1xDfVVRt0+a7rUglF/+y2fvxdsc= +MD5-Digest: WlkmA69i6gmllos+kr92mg== + +Name: oracle/jdbc/driver/OracleResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZJZUU9mgTG3xkVRP1jioI3DIbEQ= +MD5-Digest: 7gDWzL4qBUBMKk0MDe/e5A== + +Name: oracle/jdbc/driver/OracleResultSetCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fojBILGEiZ10rqbAFR5fkf2KcME= +MD5-Digest: R/5JZhRQKEgmJeDFtiEc3A== + +Name: oracle/jdbc/driver/OracleStatementCacheEntry.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IrBBGVnZJwkwlqzPcZ7p5n1Shew= +MD5-Digest: 8LzsLuT8h7UM+gv42mqmgA== + +Name: oracle/jdbc/driver/OracleDriver.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +kQoXYXD1XNlH27KWY4yXDYH4Gw= +MD5-Digest: hCkWSivVIzkNRLcrxyCj0Q== + +Name: oracle/jdbc/driver/OracleLog.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tajkgOPHY9j0mHwjr4M5RnRjy3c= +MD5-Digest: A6TALU7aUdhksgmzeFyqXA== + +Name: oracle/jdbc/driver/ArrayDataResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NZEdqj11shdD1LFzUFsIY5NfJac= +MD5-Digest: JXYHfPAN4mT481NLKGgEYw== + +Name: oracle/jdbc/driver/ArrayLocatorResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: uZqkt5oxVIMe5vsTzgz5w/HekKo= +MD5-Digest: nfZOiFX2kUanEavcdhFjTA== + +Name: oracle/jdbc/driver/ResultSetUtil.class +Digest-Algorithms: SHA MD5 +SHA-Digest: D0GhA8mwiAJJ+lEIslpg/me+YFU= +MD5-Digest: B717RTfmVsU3LzvVieJb5w== + +Name: oracle/jdbc/driver/Const.class +Digest-Algorithms: SHA MD5 +SHA-Digest: svpqAvt4G3MPz5Ss/vAGB1lB6s0= +MD5-Digest: oAzlR+q1yUq4X2LQG46vVg== + +Name: oracle/jdbc/driver/OracleCallableStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eKKSrgWx5UuR6GT0FDJkcuf+PcA= +MD5-Digest: onov/ArBWsL4ydM6hXRbtg== + +Name: oracle/jdbc/driver/OracleDatabaseMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: byfdq5x6IQ6sxS8/ONJpmNHdtYU= +MD5-Digest: tGP9cLyKdb1Gd5wSu8q4yg== + +Name: oracle/jdbc/driver/ByteArrayKey.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8L+COpDqKFSLReTARIVxl/xqFBU= +MD5-Digest: LVGdgWfJxVqVlN+tC5qMDg== + +Name: oracle/jdbc/driver/OracleSavepoint.class +Digest-Algorithms: SHA MD5 +SHA-Digest: USqSsv83jJ1GBjfxOE8JRr3V0mE= +MD5-Digest: J53LgOHcfX+px82s8QHcVw== + +Name: oracle/jdbc/driver/OracleTypes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5kzo5r3LN6fxDN4hPwOo7RxwnT8= +MD5-Digest: QTvTF3LCbXJjpYdXEl83Hw== + +Name: oracle/jdbc/driver/OracleConversionInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nORSP1KS5YYZEwgW6tIA1qQPYAg= +MD5-Digest: K9eW1yE20S5QkaEW7C1PrQ== + +Name: oracle/jdbc/driver/OracleConversionReader.class +Digest-Algorithms: SHA MD5 +SHA-Digest: XJDY8UaHxeQRNDMmyjc7ymu9MKo= +MD5-Digest: fq/Jdjzc8gNKxfF92KQYAw== + +Name: oracle/jdbc/driver/OracleBlobInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eipm9JdLSm+hwGNN0VNaPbGZVzE= +MD5-Digest: qPk4yTBM0U8Kocnajk4oNA== + +Name: oracle/jdbc/driver/OracleBlobOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lujwo3I4TTcqf94v0vEPbOhLWyc= +MD5-Digest: 2an1PB3kY7llAF088cdaNg== + +Name: oracle/jdbc/driver/OracleClobInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kNqd05r0nLz5uLVufy9WpMGfdrI= +MD5-Digest: Khuh8UrXou4Wve3KMNvahw== + +Name: oracle/jdbc/driver/OracleClobOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: REucv5a/8ojNBWhi8+yoBHdrrIQ= +MD5-Digest: JxIq60qsh21H1ZkJMuA8yw== + +Name: oracle/jdbc/driver/OracleClobReader.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aAl5vT9MYFDaX9pPqVIMe0UHF8A= +MD5-Digest: qt9heRHrTIaslM2Wl5hDkg== + +Name: oracle/jdbc/driver/OracleClobWriter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aUU6BIDtY2LkYacWG3AvykhVuL0= +MD5-Digest: ut6yFV/54d8H74hNys3kSQ== + +Name: oracle/jdbc/driver/OracleCancelThread.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gAooUGhvwyYIVeOxWGc/FyBG0rQ= +MD5-Digest: hKCSZ5HXuiD4m1dMbMQjew== + +Name: oracle/jdbc/driver/StructMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: VmbSBG2srXxMP6BjeHF2v2jx9S0= +MD5-Digest: 4EQVNLh4cFmBlWnTAWFM3g== + +Name: oracle/jdbc/driver/OracleResultSetMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JzMprpg0OGhON3P07jXhxKxesQg= +MD5-Digest: i3F9hrAOc0CtAQS+DTwtSA== + +Name: oracle/jdbc/driver/UpdatableResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: GqLJk2mJ46rqZMjZK/L+/cN9w2o= +MD5-Digest: O55O4ARRq74SJ8Q8ZgRfvg== + +Name: oracle/jdbc/driver/ScrollableResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 9gVz/kjtSgVWvKliOZooq6kGl70= +MD5-Digest: DpjmZ/YJQbrAr8iZu7Bh5A== + +Name: oracle/jdbc/driver/SensitiveScrollableResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: FFURhgebCXARxLfJmEKoMnvscl8= +MD5-Digest: 0RxND0b4TqIUrz0jgR80ZA== + +Name: oracle/jdbc/driver/OracleResultSetCacheImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: taz9F6cF8/qzFJY5PpQJ+JL2uM4= +MD5-Digest: +lXUEvGW30lG0X951rrNmw== + +Name: oracle/jdbc/driver/DMSFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xrS8MNRworrtS1kuymGcCFBHTnI= +MD5-Digest: /HXsOtM0/8t/fYUy+6giig== + +Name: oracle/jdbc/driver/OracleParameterMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: j8KqZzcgFViRKUBgLIqZ7+p8umU= +MD5-Digest: 0lXHr1SD3VE//1ccrosj2g== + +Name: oracle/jdbc/driver/OracleSQLException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NJvdCmsMPhKoSdK8SXlTdIXq2Bg= +MD5-Digest: lR0q+xCw+7Gj/AkEjlTpZg== + +Name: oracle/jdbc/internal/OracleConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nzM8pqTb3wqKRR4EXuq8QQ6s0Gc= +MD5-Digest: 3GtR7aBXXoADDf+JFP5rPg== + +Name: oracle/jdbc/internal/OracleStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MrSHUj6l1PHlKD89mP5YSQeMKp0= +MD5-Digest: engwGLJrcbDH1TDo7+BxQg== + +Name: oracle/jdbc/internal/OraclePreparedStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hMvpahCcudSvOHDou9ypx0Py0oY= +MD5-Digest: k0O5XU+xdhVt876wgk9hEg== + +Name: oracle/jdbc/internal/OracleResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: q/NNyroJbTXFv8Krqs0c3tX14SQ= +MD5-Digest: 9/px3W9+t9H4UL+MN+DjCA== + +Name: oracle/jdbc/internal/ObjectDataFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: imqorRov66+HXSvJqdibkiTmiwA= +MD5-Digest: 4BPTJOOTT9f1owCsVa4Zug== + +Name: oracle/jdbc/internal/ObjectData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 0vwNtrJ382/vYmzRl+nFHHS2lpY= +MD5-Digest: WyOZcon25tJtSkZMNZC6YA== + +Name: oracle/jdbc/internal/OracleResultSetCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8ssfDRCANVVRIMlfzHIaozU3F5E= +MD5-Digest: qybM8S4dAayydSea3yA1hw== + +Name: oracle/jdbc/internal/OracleCallableStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YHCN2HWUj9QfWAuKjW+3ZI+Sc2M= +MD5-Digest: 1Nxhg9x+cSNuk0wJ053/iw== + +Name: oracle/jdbc/internal/OracleTypes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: n8hhGDytltaEHr5VKLjD3sdqQSs= +MD5-Digest: t91ajrGR4yBqCVfRMpSayQ== + +Name: oracle/jdbc/internal/StructMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +GqkqPej3cvotKNYGPr6VFDmi6w= +MD5-Digest: HSAfY43tonC4cwgUKKDEAg== + +Name: oracle/jdbc/internal/OracleResultSetMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nACMIvQM4B6Gy0WG0yv+2/rD/Vk= +MD5-Digest: H/bK1zqTltPdNeN3m58cPA== + +Name: oracle/jdbc/OracleConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dktyU9g1vpb99rfnUF9ksFV5wB0= +MD5-Digest: WdhMDLZjOfVuoi9KvBKgbA== + +Name: oracle/jdbc/oracore/OracleTypeCOLLECTION.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lQ0CSJ6y/iDUHBR2KIWw2DUb55k= +MD5-Digest: EDGNz1nj0Urn97KcrEdlOg== + +Name: oracle/jdbc/oracore/OracleTypeADT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fb7d+gD/PiHRTszmsyvlzPZRU1I= +MD5-Digest: V7bbUTyrDtKq+QZrZNMT/A== + +Name: oracle/jdbc/oracore/OracleNamedType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hW5wO+anoJTb6cqMZYW5jpFhuLw= +MD5-Digest: yjBjsEuj9e5NfDnPaq4rcQ== + +Name: oracle/jdbc/oracore/OracleType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Kv24/UAMqoSeZmegcrAsGLv0gEE= +MD5-Digest: E5ecnFAfJMV8/KIjgXqW8Q== + +Name: oracle/jdbc/oracore/StreamInfo.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U8QYHfHALSdpVLJBmYzRCbF1t68= +MD5-Digest: H/fRWRuvRSmGfQ8bhZ+Sjg== + +Name: oracle/jdbc/oracore/UnpickleContext.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZdBA/y+CcTflJyym7Rp5VPfQFAI= +MD5-Digest: 9ec2xwcrDSnagy7Wsh8N8A== + +Name: oracle/jdbc/oracore/PickleContext.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vq6MIRzcfzknSbZcu8PieKvIpzU= +MD5-Digest: GmukBSGjlR50VkqcwLumwA== + +Name: oracle/jdbc/oracore/OracleTypeCLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7VzbdaXQsYXMCVqPE2SCjV+CdrU= +MD5-Digest: M7M3YZEQLGPfRiuthcQzeQ== + +Name: oracle/jdbc/oracore/TDSPatch.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UDLjJxB8qB0R3XA6U6JlgLWwkFw= +MD5-Digest: 2rOtF97QZhDaLIJ2UOtlag== + +Name: oracle/jdbc/oracore/PickleOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Np02Tim5dWfVHtPaOEYUE2GN8xg= +MD5-Digest: WIPZdwxFnyUz5Rv9hyQIaA== + +Name: oracle/jdbc/oracore/OracleTypeOPAQUE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: t1NY1FwN0AvwKoXbJNkp4c1rvio= +MD5-Digest: IQltNk5lRwXwH0VhAHEysw== + +Name: oracle/jdbc/oracore/OracleTypeREF.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZL7o7tEi3w3q5AyIEFfLNBKGoHk= +MD5-Digest: asfoAQXcm+uhSHZzlA4tYA== + +Name: oracle/jdbc/oracore/OracleTypeNUMBER.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Ox60a9JjPxOJJBvF99OFQLcFZxY= +MD5-Digest: O7eDgBkvue+W+FnOxg69Nw== + +Name: oracle/jdbc/oracore/OracleTypeFLOAT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DgqUKuXbNEkfRzpkB0A9cXC1lUM= +MD5-Digest: JNwrNT/1FzgeEBvE4Yqj2Q== + +Name: oracle/jdbc/oracore/Util.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KL5lVJ1dgx8RiluniV1MddcodA8= +MD5-Digest: KMbwpfC6VDZWycbK0CODjQ== + +Name: oracle/jdbc/oracore/OracleTypeUPT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wdATwCMFENvk07kPquo1M8oNApA= +MD5-Digest: bQ+F3Q/JAGPzaYF+WC3rlQ== + +Name: oracle/jdbc/oracore/OracleTypeDATE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lJKsHuazZ+xmlgFC47sfP697ugo= +MD5-Digest: jo2PNroJw+YgHYSgPew77w== + +Name: oracle/jdbc/oracore/OracleTypeCHAR.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KQgBBnSCWl76cjPSYSrqcWM1O8I= +MD5-Digest: YAG/po539KQXXp5VcnGiMQ== + +Name: oracle/jdbc/oracore/OracleTypeSINT32.class +Digest-Algorithms: SHA MD5 +SHA-Digest: l9QFvuZ8PzT4jFS3oydkj3Zi070= +MD5-Digest: 6LyG/VNx988qUasCN0A9HA== + +Name: oracle/jdbc/oracore/OracleTypeBFILE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lXtM7/c6zwZs26caxWcNSVdx1Lw= +MD5-Digest: Sc1lvl3d9ACyTzDzm0MRTA== + +Name: oracle/jdbc/oracore/OracleTypeRAW.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RAkACvLtqIx8kBU7TYJm3i7FEOo= +MD5-Digest: gmYYlCrDmD+dI5+GckhHXw== + +Name: oracle/jdbc/oracore/OracleTypeBLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3ur/15cQ+mbEt9M25nLwncd1qp8= +MD5-Digest: bifFubfnIALr+BpZW8rm6g== + +Name: oracle/jdbc/oracore/OracleTypeINTERVAL.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fVPaHH8B88N1vDoOuY3tbAIMkvQ= +MD5-Digest: G37TUuTJOih4KoXIvTtVJw== + +Name: oracle/jdbc/dbaccess/DBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8t68J52pfRJD3TbqdPBrLbb78Sk= +MD5-Digest: eIKMVZq8t8Tim1DWQhbj+Q== + +Name: oracle/jdbc/dbaccess/DBConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JkxZGuMy+Exa+TLzKlGNwZDjNlI= +MD5-Digest: N6VdaV59cCYJvyx4e1wwTQ== + +Name: oracle/jdbc/dbaccess/DBStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Nau4VtjubsK5ju+9RKk9BAFTPZs= +MD5-Digest: 6QluVgZhcaRugOed2qIqgw== + +Name: oracle/jdbc/dbaccess/DBColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Jxt4k5Gz+bzm8z6tKGRR67CZpIQ= +MD5-Digest: n7QJusf4ejh+n/Rl39tYmA== + +Name: oracle/jdbc/dbaccess/DBDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: oh3HCSid08cEVHxVdeTBsKr/rOo= +MD5-Digest: 0DH+ZjJGwkUfnqJriqfM9g== + +Name: oracle/jdbc/dbaccess/DBType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mQa/AiFUd9wfb4v9M0MVUkVPKes= +MD5-Digest: DP+hi8gnGmJw35LUnzm8mg== + +Name: oracle/jdbc/dbaccess/DBItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fQ8r8eIctoj/3pxltTBapcX1qTk= +MD5-Digest: jMYVjDQ1A06VJLMMBTfEQQ== + +Name: oracle/jdbc/dbaccess/DBError.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WM6UO+0RF985hmBvwlk4/6bZAkk= +MD5-Digest: l6kRDKOQU7gDsLU/pm0D7w== + +Name: oracle/jdbc/dbaccess/Message.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pyerCR9z5ty/XTKvcTZsygQOMIY= +MD5-Digest: 8/ASvF26ws10WqiBa3twxA== + +Name: oracle/jdbc/dbaccess/DBDataSetImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Wuvnc5JbY3eXjnPkHQfsq3n5Dks= +MD5-Digest: Y/gQ8kjrYJJ0FjIJlw1FBw== + +Name: oracle/jdbc/dbaccess/DBData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: m29QsTipCHnLCrJSMUbq2wrOJbQ= +MD5-Digest: VEBpIFcjexj1Oe87ybo9+g== + +Name: oracle/jdbc/dbaccess/Message11.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bsK+OTepamFNSji0W7POShRyFdo= +MD5-Digest: US7HSAJjixN/D2BpkFmZvg== + +Name: oracle/jdbc/dbaccess/Messages.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: IAkLN9aRm6OiJS21kUA1eWPiruY= +MD5-Digest: aHizyytr2pOsbbm17iHbww== + +Name: oracle/jdbc/dbaccess/Messages_ar.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: N/gfHdLlhayUCSI4FcGjoeRoL9Y= +MD5-Digest: Ep5I8JMMrSbV143XBaEdmw== + +Name: oracle/jdbc/dbaccess/Messages_ca.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: I2GdPdLICy/6UxDDVSviqf7JT1Y= +MD5-Digest: RTAbIxblIl/xu7xYFvFHCg== + +Name: oracle/jdbc/dbaccess/Messages_cs.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: o8Ojl8Ke5YQTf88Wm558CQyqkQc= +MD5-Digest: 9GMytA4NjsuC96sVIyWR5A== + +Name: oracle/jdbc/dbaccess/Messages_da.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: ZEHdJ3/gMAnFoG3ftSChxCfB7cw= +MD5-Digest: IsFGfxE6oqhpL4+eHdYcVw== + +Name: oracle/jdbc/dbaccess/Messages_de.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: yur6aPBjAvyiIROR5SgXnh7wqjI= +MD5-Digest: NVe/q638PpzzbRhCki1vyw== + +Name: oracle/jdbc/dbaccess/Messages_el.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: YOwYAMw+EljaC7gRWenwUWv1EPU= +MD5-Digest: NExXz4a5iFDRhj6JQemwqQ== + +Name: oracle/jdbc/dbaccess/Messages_es.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: QuKETqjQxiBn7uNm0xSGiXL0Nq8= +MD5-Digest: jReVUv4WTEOHzuF/U2OyLA== + +Name: oracle/jdbc/dbaccess/Messages_es_ES.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: QuKETqjQxiBn7uNm0xSGiXL0Nq8= +MD5-Digest: jReVUv4WTEOHzuF/U2OyLA== + +Name: oracle/jdbc/dbaccess/Messages_fi.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: b0c2xEXZJCIAQmTvHJsu2rT/qVE= +MD5-Digest: poVxZ4q7uabNAMtClRDftA== + +Name: oracle/jdbc/dbaccess/Messages_fr.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: KRGkq5Cf4Ri6cHdy0cJ8sFvddUQ= +MD5-Digest: ZXpXdQ/Ph5dOQ/GreFylJQ== + +Name: oracle/jdbc/dbaccess/Messages_hu.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JUwaUGCwMeYNgX+ctjSUtFk/0nI= +MD5-Digest: AUNqTqI6RQNazCdcS0SJnA== + +Name: oracle/jdbc/dbaccess/Messages_it.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JEPFrTDxKNC8kMoiJDgD2jVhE+4= +MD5-Digest: bZvnQSB0AUkedyS97mF97A== + +Name: oracle/jdbc/dbaccess/Messages_iw.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: kwqDcP3RzPJ2l+Uaj1n9jGuVPZQ= +MD5-Digest: hAjbA3MLZ4VnaatLD3RpKg== + +Name: oracle/jdbc/dbaccess/Messages_ja.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: /1kj/NbZ+zOj4QNiCtHWvoK/6TE= +MD5-Digest: aIm8X/RnuHtVNiDSd2xBoQ== + +Name: oracle/jdbc/dbaccess/Messages_ko.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: mX7vI0b8CZAkXu2pRyifKNVDdCk= +MD5-Digest: Dojn9VDcJQ1cEy9dx/WUMg== + +Name: oracle/jdbc/dbaccess/Messages_nl.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: cmm8lwjJvA+1RsjB9qwMmuG2Hz4= +MD5-Digest: F3ggefrZ4yc0q30jSpprZQ== + +Name: oracle/jdbc/dbaccess/Messages_no.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: ftJnDqB94nnBdA6//yAgrGX7x1o= +MD5-Digest: rc7CRwrN1YWZAYP4N/e5Cw== + +Name: oracle/jdbc/dbaccess/Messages_pl.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: BXk0fvkJNTIgV3RNSsjh4fd6Mi0= +MD5-Digest: JNmWaeZ30crUOuiwwioNoQ== + +Name: oracle/jdbc/dbaccess/Messages_pt.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: dVn//VCTAAw8rf2CZ6l8Gg7seLY= +MD5-Digest: rCYtijIsdFqcc9Wuv0ZrVw== + +Name: oracle/jdbc/dbaccess/Messages_pt_BR.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: 58xIZtjVidSNJP6MVpHjscwHqEE= +MD5-Digest: rsGdKMZgHeMhYaZSiYxeWQ== + +Name: oracle/jdbc/dbaccess/Messages_ro.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JkgSgMyINQFfurXLFHOXsTFhcuU= +MD5-Digest: 9rhetK5yFiildYbSH2rFtQ== + +Name: oracle/jdbc/dbaccess/Messages_ru.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JcknwAKKoiooTgckmVqTUzDQlPM= +MD5-Digest: VgtnIflP/Tf5iuYJzyCWig== + +Name: oracle/jdbc/dbaccess/Messages_sk.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: zRyncvD2pd99zy1T+4bSWedKPDc= +MD5-Digest: +lq28hQGKBlS8L9XFMpZTg== + +Name: oracle/jdbc/dbaccess/Messages_sv.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: S2djNe6Nxr4/2RTwmfsW+EgvKWU= +MD5-Digest: 17FpXlYjdkm5yUO3ukvnjQ== + +Name: oracle/jdbc/dbaccess/Messages_th.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: nfwCYyZ8phAFNU6+XqCsHPsCTlI= +MD5-Digest: BB6bEXDTWY8SJD4ToCcQhQ== + +Name: oracle/jdbc/dbaccess/Messages_tr.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: d+iLMJCeaa616Q54jCqsmghnF0U= +MD5-Digest: OwinZoMKsj4KpKKBRLWxog== + +Name: oracle/jdbc/dbaccess/Messages_zh_CN.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: lWwKHAU20uAPy8vD3RF+A6Nje+U= +MD5-Digest: wNoyiC/U6YFU/RgePGRpEw== + +Name: oracle/jdbc/dbaccess/Messages_zh_TW.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: wfWE6gOrEm6Va3L8qhyR8vYwD64= +MD5-Digest: UheRONj2O4bGeg5zxVw6kQ== + +Name: oracle/jdbc/OracleStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wvL/1wpW42c/gJ5by+dAb3EoJiw= +MD5-Digest: GXIjjxBjbGKpeUJc7u6C1w== + +Name: oracle/jdbc/OracleDatabaseMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: FMYMB0H4OaNzun3vHFagOedMu0o= +MD5-Digest: oGjKscvgDAqSiIBLJ/TJTg== + +Name: oracle/jdbc/pool/OraclePooledConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KR5JKUtZW/h0gP+UQtIhhcgU8lU= +MD5-Digest: SckFzlL+yP9u3wZ7l5AANg== + +Name: oracle/jdbc/pool/OracleOCIConnectionPool.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UO2n21gR+cZlQPUNil1Caqmpbzc= +MD5-Digest: nAmluKnXHs5TSm/o5ygzfQ== + +Name: oracle/jdbc/pool/OracleDataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Xo/yZdFmhYP9ZGUEt0aMqCvFlRI= +MD5-Digest: GCxQe3nM+HoxB0vYtQJrtA== + +Name: oracle/jdbc/pool/OracleConnectionEventListener.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ShMjFahoBEkjy2Qjha1mn5gvtZc= +MD5-Digest: qtAc63hYWkQMl6p9wnHj1w== + +Name: oracle/jdbc/pool/OracleConnectionCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: sgKefYDNLfZKDyyt852zbf9JdRE= +MD5-Digest: WZCoLFWdKxEZ5d7qoXgxVQ== + +Name: oracle/jdbc/pool/OracleConnectionCacheImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: VaNwdl6BJJy8CZlePH9oqow++x0= +MD5-Digest: Bx9SKs9GFoF5EoGH3fHRVQ== + +Name: oracle/jdbc/pool/OracleConnectionCacheTimeOutThread.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tsuI/9AL8w34m3wwCrItVRNE3Gw= +MD5-Digest: z6g96Dc7Qur12vszH6idJQ== + +Name: oracle/jdbc/pool/OracleConnectionPoolDataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: AXZzEXUL2lr7MapgK5wRV8EdfTs= +MD5-Digest: DoCqMa7mXh8dz/utw3ETqw== + +Name: oracle/jdbc/pool/OracleDataSourceFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: TZdWyUxze85qOvpPJxiNhiAkyIY= +MD5-Digest: qU34on1NIyO336vMCHQkjA== + +Name: oracle/jdbc/pool/OracleXAConnectionCacheImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: H/QMDhxfFXN9SSa2XhHoV/g72Uk= +MD5-Digest: htQUeHKHgc2XwymTwQNYQw== + +Name: oracle/jdbc/OracleSavepoint.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lOaKTVUL57m4sFTblD9MzR2tjI8= +MD5-Digest: aBF+fSRcpgibu5IJqpGqpQ== + +Name: oracle/jdbc/OraclePreparedStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yiUAlkRZEzqOjdT0Vd+F1Zuly54= +MD5-Digest: 0RXjZmZIPaws8hBRJHsdCg== + +Name: oracle/jdbc/OracleOCIFailover.class +Digest-Algorithms: SHA MD5 +SHA-Digest: oxJ7wVfVU5DH5s3smL4YAXoU/5Q= +MD5-Digest: G8N6fQHQb9x14Ti/7exZtQ== + +Name: oracle/jdbc/OracleResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: S4kmz7G0cjkKJGXNRQdxZLqmh88= +MD5-Digest: vwMs1VcmVgKXkBsFgZPvJQ== + +Name: oracle/jdbc/OracleResultSetCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: C1aQWKNdjLX0Ak1ruPVHcCLybbc= +MD5-Digest: Sh+MzOSX4Vrr0/a7acwIeQ== + +Name: oracle/jdbc/OracleParameterMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RLxiTe51yEBDrs9n5/e5b4+M5o0= +MD5-Digest: 0/8RLpWxTenXd1Lo4XL7/g== + +Name: oracle/jdbc/util/SQLStateMapping.class +Digest-Algorithms: SHA MD5 +SHA-Digest: i8TQMVonFNp35QDGV0N5B2HMif8= +MD5-Digest: 4K23GUeIdoY29p05cDjI7Q== + +Name: oracle/jdbc/util/SQLStateRange.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6odEBwqDV03DLQY33sJV2mffOnE= +MD5-Digest: xWApNMxWzLus63BJoEtbwA== + +Name: oracle/jdbc/util/RepConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: n/tQEmVitMn9Ln1+76rjXBPxiN4= +MD5-Digest: QttHZ4UhNUovgHG7kGwGnQ== + +Name: oracle/jdbc/util/Login.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yLwyB1LTCqa7ddJw33P1p9KvCak= +MD5-Digest: VciLvPsgNaB4mpb051G33Q== + +Name: oracle/jdbc/OracleTypes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rUwGM231n+7+eOMWOuCu6cGoprk= +MD5-Digest: WAH1phAdiDv6IzKhIlk7LA== + +Name: oracle/jdbc/oci/OracleOCIConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: A74KOrw1Y5gcid3Pd/14jCFHDA8= +MD5-Digest: mhYBZqdfKQLYQvZpjGFXPQ== + +Name: oracle/jdbc/Const.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MvL6jFVR0YhlatN4W/362sPEigo= +MD5-Digest: uBLzcnKoNiFYpUy/sz1AEg== + +Name: oracle/jdbc/OracleCallableStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: b/25CXnAwz6ktWJgoA9rIC7YypA= +MD5-Digest: k1R4SaX2m/sbJMV2Bn+n0A== + +Name: oracle/jdbc/StructMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: CwhOnsHLAcNAgJphMzItPXl27tw= +MD5-Digest: dXDBMeLuj6tnhv5HMFH43Q== + +Name: oracle/jdbc/OracleResultSetMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 56gD4E1ttbleTZT29Wf0KEmURaI= +MD5-Digest: Tax/JHYAO02ICbVYh5J9iQ== + +Name: oracle/jdbc/oci8/OCIDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6VR4VQYU2ccl5cnfbQS3s9AY4IE= +MD5-Digest: 4xMZkhHcbWaKw71vscg7/g== + +Name: oracle/jdbc/oci8/OCIDBStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BH3ONQEQf7FyN6+UoW6a5VcjY/0= +MD5-Digest: VTp9oZL8wITAQilv3j5qfw== + +Name: oracle/jdbc/oci8/OCIDBError.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aS+Bipezyq7aNuq/emzG4hnTL+M= +MD5-Digest: 8SMB1JwTTC+OsxKawGaafA== + +Name: oracle/jdbc/oci8/OCIEnv.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eaglQUNvZL7BhaibatVrpFXY0dI= +MD5-Digest: +sHgHlsCd4VorXB5CzE1aQ== + +Name: oracle/jdbc/oci8/OCIDBType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4ftL03TVcpGA/7qErYKIvFrO/tA= +MD5-Digest: 1l87vv3BK3R0645gFPRqog== + +Name: oracle/jdbc/oci8/OCIDBItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gkiYPgAG7jAhDH5bP1lynXp5a3c= +MD5-Digest: 6CcxPaPUSzP72HgoHbh5WA== + +Name: oracle/jdbc/oci8/OCIDBDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: z7s5vuUv1Qvfc+MxnA3DjrhJbLg= +MD5-Digest: 9/VBPdi/xiGt2gc3LGUVTA== + +Name: oracle/jdbc/ttc7/FunCodes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5+zD9Th4bceq8QUSX4UDd53lgFM= +MD5-Digest: 7E7TaUvWGKjJfiA2E2Q1uQ== + +Name: oracle/jdbc/ttc7/LongTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U4RCcoO6lwddMtDWGXVzjdBs/iQ= +MD5-Digest: 5A2CEMDT3Gav43IRnrq32w== + +Name: oracle/jdbc/ttc7/TTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: iBq4IQwlIi5rRfDv9wq4JI7HNW4= +MD5-Digest: dD7PQrS/5DCE5VckZ8j9mA== + +Name: oracle/jdbc/ttc7/MAREngine.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cxHG4v2TS9mobu2YBLNpQ6SzPt4= +MD5-Digest: 0mmVp47dEu+RhovTkhkIkg== + +Name: oracle/jdbc/ttc7/TTCTypeRep.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bwuOyccEx4ibScN1co22kCsJozo= +MD5-Digest: 2eM9pxBn5i8Oulh53F6IXQ== + +Name: oracle/jdbc/ttc7/TTIfun.class +Digest-Algorithms: SHA MD5 +SHA-Digest: orvGo4QlF2+yYW4QPaWvRDX818A= +MD5-Digest: QGVlR3vNFb1tTiRALr+/jw== + +Name: oracle/jdbc/ttc7/TTIMsg.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ODXGlYPyUnsEqce6pjeb60Ed+Hg= +MD5-Digest: pPnY5jxDWwQAoUGf6matOg== + +Name: oracle/jdbc/ttc7/TTCcodes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qqiJk/Gv36/OCd5ukHr+XrcQKvE= +MD5-Digest: hRAmpWBw1/HEN4iK8+ouxw== + +Name: oracle/jdbc/ttc7/TTIoer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hFAV3ob5T0b8n0TS1y1C3JAiuUM= +MD5-Digest: gwlOgV9tGGPoNWDlD+Wgew== + +Name: oracle/jdbc/ttc7/TTIrid.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZQEUhOdmkh6RBSzrniodI/S6JkI= +MD5-Digest: Q1sj8OfC25oKWDwO+QXxYg== + +Name: oracle/jdbc/ttc7/TTIti5.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2eBXZhhGP3QYjSUDQ2ouLhxYzXY= +MD5-Digest: L0URsD511saYNTUToRQIPw== + +Name: oracle/jdbc/ttc7/TTCConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: w0i6PNNwYYvJwXUGSDxVdJwmmO0= +MD5-Digest: NYQUhxjJnDuROHms91W2pA== + +Name: oracle/jdbc/ttc7/TTC7Protocol.class +Digest-Algorithms: SHA MD5 +SHA-Digest: iIvyN2vLqGfEUQogj7fog7V4na4= +MD5-Digest: 15SHRpY4xsWCJYYm+lLjng== + +Name: oracle/jdbc/ttc7/v8TTIpro.class +Digest-Algorithms: SHA MD5 +SHA-Digest: B3l6NEfvD7wRBAHeDakesOOPCJw= +MD5-Digest: PsebP2sF7J4Je9nuHbvzSw== + +Name: oracle/jdbc/ttc7/TTIpro.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kiRIqoJvly7W+WiSTCv+DurITnY= +MD5-Digest: NbzHlDJUo6U0OjSmkP/u0w== + +Name: oracle/jdbc/ttc7/TTIdty.class +Digest-Algorithms: SHA MD5 +SHA-Digest: m/tdJ1lsf3O2UgVVxOget7t+/Is= +MD5-Digest: 8U4TKAlMyr1pFhPz0Y1DHQ== + +Name: oracle/jdbc/ttc7/TTIrxd.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lZorK5WbN4OHlztuuKcshEMkJSw= +MD5-Digest: ktO40+N2eGAwrQuuIbRpLw== + +Name: oracle/jdbc/ttc7/TTCDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: oaWZz04J4RGTu/7iNkE4gc12/0I= +MD5-Digest: LfpEMUCXxToMLXMfd4nT8A== + +Name: oracle/jdbc/ttc7/TTCColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2x8oKcdFBGG4s6JwGsRfiiQMyQE= +MD5-Digest: 7rNQxBr+99X+7CDgvmlqEA== + +Name: oracle/jdbc/ttc7/TTIoac.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jVTAh5wPZk6Svp3UTM1f+qcYPz8= +MD5-Digest: e4WX4jRgdLM5uEjvHcGxcg== + +Name: oracle/jdbc/ttc7/O3log.class +Digest-Algorithms: SHA MD5 +SHA-Digest: o524N+J/Hv9g1JDdYosy6VDOK4c= +MD5-Digest: ogFwJJhuabBuIcEosSNBEQ== + +Name: oracle/jdbc/ttc7/Oversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xOH29AEPih972cYpi3/zidaDu2o= +MD5-Digest: QCDGAR5PBl9iBJhZjtzorg== + +Name: oracle/jdbc/ttc7/Oopen.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JK9fepJ4cB7JLIt3bZgnBi/O5kY= +MD5-Digest: /osBEAtt4YYKsagU6Dx5gg== + +Name: oracle/jdbc/ttc7/Odscrarr.class +Digest-Algorithms: SHA MD5 +SHA-Digest: XL7zYBC6sMYNgIYteKfJ9E7NNrU= +MD5-Digest: UEq3KeCeovJHT7ali6aYDQ== + +Name: oracle/jdbc/ttc7/TTIuds.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qfH/tyAnSsMJgweu/oqIHv4m178= +MD5-Digest: 78RvaNMhbr9mvkIlg3CDBA== + +Name: oracle/jdbc/ttc7/TTCStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ikDPBBFY55cqR2mWI/sXZ068DBM= +MD5-Digest: kRNZsk4QzcvNxx9BMe4ziA== + +Name: oracle/jdbc/ttc7/Oall7.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yvOfzybs+jegZlg6d5AZfHw5Enk= +MD5-Digest: sS6B60pWQohQy6bkgQIbrg== + +Name: oracle/jdbc/ttc7/TTIrxh.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2/oNRuqGvlcHcZ6MWkqq6ADKPVk= +MD5-Digest: sFMwO2YORXn1zar+YBJJQQ== + +Name: oracle/jdbc/ttc7/Oclose.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 9EncC+wLTgs9OMHneJYXHPyrcgY= +MD5-Digest: eOYlKuPWQ3UzTA2TQJY0Aw== + +Name: oracle/jdbc/ttc7/Ocommoncall.class +Digest-Algorithms: SHA MD5 +SHA-Digest: AHjNInhGrKujpHlGmrsAiWGapSo= +MD5-Digest: OX3bZTFKG0tzpfWq2e8hrg== + +Name: oracle/jdbc/ttc7/v8TTIBfile.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +zKR/gT6/dTLa2L1una5tAb0niY= +MD5-Digest: diGoTlZ4l6ybak1lOk6mOA== + +Name: oracle/jdbc/ttc7/v8TTILob.class +Digest-Algorithms: SHA MD5 +SHA-Digest: weF1z51I8V+sBAlx/LfYDjQWJlM= +MD5-Digest: lfLNTjfVut8UjNBZSjRqxQ== + +Name: oracle/jdbc/ttc7/v8TTILobd.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vJ7Uwa4045O5hylRNlipRhFDUng= +MD5-Digest: IAUMtB0kzND4lHRWiI7kMg== + +Name: oracle/jdbc/ttc7/v8TTIBlob.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YYqA/oXNMPVaT/RdVZd6ccvhL4k= +MD5-Digest: WzPYIegzwsuh9S5Hm3Ap9w== + +Name: oracle/jdbc/ttc7/v8TTIClob.class +Digest-Algorithms: SHA MD5 +SHA-Digest: LT5ujgvHS0mRWTsD+il5f1CK2MU= +MD5-Digest: ms0M2J/bugYo/b7Cax/bag== + +Name: oracle/jdbc/ttc7/v8Odscrarr.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6YaRcfo/oFaJsgpiGv0J9vkKU0Q= +MD5-Digest: 2D4Hhg+QDkCTk84p0HK+qg== + +Name: oracle/jdbc/ttc7/v8TTIuds.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mF6+J8KBQhYrd+B219x8lERPcBs= +MD5-Digest: UqGaiKQKUSmpnUBKxbcKBw== + +Name: oracle/jdbc/ttc7/v8TTIoac.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WCB10rc9lEiJXMr3lKurdz13ftM= +MD5-Digest: CHeGQe25ZC3OvDOZdRlQhg== + +Name: oracle/jdbc/ttc7/v8TTIdty.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UAXHYbqDX4Y+cIRfSYvti2iWTwY= +MD5-Digest: 7vj3PWZBQl0O3ck0px5oqg== + +Name: oracle/jdbc/ttc7/v8TTIrxh.class +Digest-Algorithms: SHA MD5 +SHA-Digest: urubprymatzm/6EkH5PS3GQ+3Sg= +MD5-Digest: OjApadJoSw3AfGqOv/11Nw== + +Name: oracle/jdbc/ttc7/TTCAdapter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fYRAfXURWJXJ/lri1ZFldJYWUUA= +MD5-Digest: GsqNKxm0kYmv9p6gw0C3Mw== + +Name: oracle/jdbc/ttc7/PlsqlTTCDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NjpjpuRnr9VzTgrNDrCieNSmQdw= +MD5-Digest: NusvUIr+wmakt14B5t+SHQ== + +Name: oracle/jdbc/ttc7/PlsqlTTCColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bBg2Zs69Q/6C3GSObrdlRcRdsSM= +MD5-Digest: tmUqauvrSmBms5BoyHp8+Q== + +Name: oracle/jdbc/ttc7/NonPlsqlTTCDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eFviLj7fi2DoUEMXS6ilnxZwpuY= +MD5-Digest: /agZY+oFcnZMgJnP7tD9VQ== + +Name: oracle/jdbc/ttc7/NonPlsqlTTCColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UYHwJ74u0wPh3uSVGyMQLf+ngvs= +MD5-Digest: HYMvEnk290qJTDt2sevJ0A== + +Name: oracle/jdbc/ttc7/Okod.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cHSVQCyhMpadUfU6CwiSblTV5ZU= +MD5-Digest: aycpG1Ih0peFqgfjxuE3YQ== + +Name: oracle/jdbc/ttc7/NtyTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PEOiwJMdjzHmeDaiKWmAn0FrNXM= +MD5-Digest: SY23Z+tPjdXWZHmzk+Vy9Q== + +Name: oracle/jdbc/ttc7/RefTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: OfL8qh7Bnm9Yw4nIZRHssNbqxXY= +MD5-Digest: Asb0TzJPIs8RMqrFXW/q0A== + +Name: oracle/jdbc/ttc7/RefCursorTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4pUK8POUDOoKU0rmWSv2wc+Rvt4= +MD5-Digest: tDGCDtQjDV+kt3VNbe1Ubg== + +Name: oracle/jdbc/ttc7/TTIiov.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8rKTqz+JUQcUimMtoujRk+IJ+jg= +MD5-Digest: 2vR7bKfMC8v7Cfspik/6nw== + +Name: oracle/jdbc/OracleConnectionWrapper.class +Digest-Algorithms: SHA MD5 +SHA-Digest: SHEdZajr/fa2vFC5rsxUIZIj/YI= +MD5-Digest: IimDXsGVQYNOzUfZ/8alog== + +Name: oracle/jdbc/xa/client/OracleXADataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BYJCGo8t38UlwZ8yod0B16IKkYc= +MD5-Digest: mUv54rP6AIwi+MEvFt4Ueg== + +Name: oracle/jdbc/xa/client/OracleXAHeteroConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dI/+Bln+/A7EeNSX2bOgEl1IiUA= +MD5-Digest: DwEGcIxtFzT+8faZxqkogg== + +Name: oracle/jdbc/xa/client/OracleXAConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: o0yCsN03DjNWTCekQA/kCrwp4RE= +MD5-Digest: Lbk8b59AIBNSNKuuqEpKCw== + +Name: oracle/jdbc/xa/client/OracleXAHeteroCloseCallback.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WPW0gzXKp46Y3ki6wfR0J4X7YOY= +MD5-Digest: kqPNFkob8+2GNYck8ge3sw== + +Name: oracle/jdbc/xa/client/OracleXAResource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mhqx6EvK7EuiVB/AXoCaLV9RZ2A= +MD5-Digest: w6mG3vFyG/ypZvUAbfg9rQ== + +Name: oracle/jdbc/xa/client/OracleXAHeteroResource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: glITEif+1BgtJVkZ4QYsrtDEVCU= +MD5-Digest: uI3zKtjINtn5pKlZLs5M4g== + +Name: oracle/jdbc/xa/OracleXADataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jGDFjvlXeBqYYjzPd2d8fl8rLH4= +MD5-Digest: xV29W3Dw5ZMQR4sBicWUzw== + +Name: oracle/jdbc/xa/OracleXAConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6CC9KzicurkdZvRDyqsmLQK64OA= +MD5-Digest: KPR1Z2ad9HAxO8nPQO7KZg== + +Name: oracle/jdbc/xa/OracleXAResource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DCLLyCC3XNNUek7yQmSzbiUnPy0= +MD5-Digest: BRllhH8RR2iwSjjr5hQeAg== + +Name: oracle/jdbc/xa/OracleXAException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BaLY4T8EQhd39WGnIgXAqK8cQmI= +MD5-Digest: 3wNcmNdXhVXLm0gao+nSxg== + +Name: oracle/jdbc/xa/OracleXid.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Re3NEvEi8J7BhUk27ZXT+wBijc8= +MD5-Digest: 7LlJIDjzSGT7Vi6VhbqOig== + +Name: oracle/jdbc/xa/OracleMultiPhaseArgs.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2A6rSIE6VqPwsZ8muSVSiAWfd6o= +MD5-Digest: Yk4Fhff1HTqtXbh5r8+6ow== + +Name: oracle/jdbc/OracleDriver.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 9rr5c/SS5xy+kDpBjpboBNk57WM= +MD5-Digest: w1RZecZ/Yww53LqxuqZItA== + +Name: oracle/jpub/runtime/MutableArray.class +Digest-Algorithms: SHA MD5 +SHA-Digest: C6ND8+igREz2cLiJ3YZZZX+haXg= +MD5-Digest: CmObGly+4CjP81K4B7uYRA== + +Name: oracle/jpub/runtime/Util.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xzY5TiG1n1zAcxvJzkoYsiYMxi0= +MD5-Digest: 7cAHSJCTjvasM+9KACe18w== + +Name: oracle/jpub/runtime/MutableStruct.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HA0TjtsrCtRV81bh/ShBJCU+RiA= +MD5-Digest: tjqdVD+bfbTJ9B/BuvywVQ== + +Name: oracle/core/lmx/CoreException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RWZRNRk3MDNNnOK5QrwmzbdOhTI= +MD5-Digest: U/DZVwsWUL4BX88hS3YHng== + +Name: oracle/core/lmx/LmxRepConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 66LU9R3lJvYxRMoAt/JHPxjK4H0= +MD5-Digest: LF1ptfrSy2M9IaWjmfzkTw== + +Name: oracle/core/lvf/VersionMgr.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2iTCGy1VSnAxR7SzQ3BqQhtwc2U= +MD5-Digest: ArmzUCnch/oYVIv5EjwB1g== + +Name: oracle/gss/util/CharConvBuilder/BigCharDataParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Sctr90SFcACkWC7kfAkRW34CLRM= +MD5-Digest: AZ0zowPVXmRB+AxJjMJT8g== + +Name: oracle/gss/util/CharConvBuilder/BigMappingParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pPk49MXa6EsTCnV+XN/WJyhK2gI= +MD5-Digest: 1jf/BDHuYV5yK2EGqpgvMg== + +Name: oracle/gss/util/CharConvBuilder/BootBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4QBzMv8mp1wBlHajwb0btete6UI= +MD5-Digest: UDolJq6TP2v4dd3mi67/0A== + +Name: oracle/gss/util/CharConvBuilder/CharConv12ByteBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cx01rYyD2xHvb6C+I9aVscxgCyY= +MD5-Digest: GEbvwANjzuFDZq5t8q2nTQ== + +Name: oracle/gss/util/CharConvBuilder/CharConv1ByteBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: prMLmPHKoUXd1tbpPvLDwJtO924= +MD5-Digest: CxYy0gLf4np0itTZ5ohhlw== + +Name: oracle/gss/util/CharConvBuilder/CharConv2ByteFixedBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NcJowBWQ7Dl8nx6KhaMzi/tw3Ws= +MD5-Digest: /pvp7splqjiueC1wB1kq9g== + +Name: oracle/gss/util/CharConvBuilder/CharConvBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xunRKC1cmRFfxPhARG+MO+3WICo= +MD5-Digest: sYb3JrP8P33lCW+vuurxCQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvGB18030Builder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Nkdw84k18Ir+o+zMYuLDY+6uj9c= +MD5-Digest: h8UqxpBWSiaVDkDtbMGqaQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvJAEUCBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DNi4wK9Thxoavv07AaSIhpnK0DU= +MD5-Digest: t67anBDxe2mweUcoEb+fdQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvLCFixedBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7NdLJQX3nUvjP9suPmnBZqnxlEs= +MD5-Digest: pSXyL/RuIHi9YSnPyM48+A== + +Name: oracle/gss/util/CharConvBuilder/CharConvSJISBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IcVRut6TTpKT0Po1JDZAklq6oE4= +MD5-Digest: GVeXtrdpvZ8RN/WyH5GhNA== + +Name: oracle/gss/util/CharConvBuilder/CharConvShiftBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BbBOKp7HS/9FTz82qHSy1S43k4k= +MD5-Digest: tVRTJ7Ezf7mtneAH9xzfqQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvZHTEUCBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: FMGKhexf7hkqkjXm+2DnO3oVuJ8= +MD5-Digest: 9pWTYHwm7tExDupCSDRMow== + +Name: oracle/gss/util/CharConvBuilder/LCMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gHuDZoSR1TB/MKx6M9MRZ+i08sQ= +MD5-Digest: wlspm0Srb//KkPfbt+eBQw== + +Name: oracle/gss/util/CharConvBuilder/CharDataParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ysKBYRhSzKgoO263c7ZO12Dwczs= +MD5-Digest: 1L02P3I72nDaaq0hKZeK9g== + +Name: oracle/gss/util/CharConvBuilder/DataTypeParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pXzdGH9mWj6q+80ep0JO7hrDWi8= +MD5-Digest: SJct8fK+e76Vs1AmfdfzBg== + +Name: oracle/gss/util/CharConvBuilder/ExtraMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nu8BOdQPu+BEyOtUTeNEP4zm9f0= +MD5-Digest: JmV3NruSiXJtBT+5nW2mng== + +Name: oracle/gss/util/CharConvBuilder/JAEUCMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8jGM8Py6/3aK0ieLjJEprZaTuq8= +MD5-Digest: Ny1UlSOWAX10aIUCAnw9Yw== + +Name: oracle/gss/util/CharConvBuilder/LCFixedMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rYYyjOrgmbvFL497CI8l0ONvKT0= +MD5-Digest: gVpC4Z2BuWheSE9opczpcw== + +Name: oracle/gss/util/CharConvBuilder/MappingParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wN+inNerUiA1Zey+dWbmnfyTev0= +MD5-Digest: L1rxrXbmLclaYAb3nnGlcQ== + +Name: oracle/gss/util/CharConvBuilder/MappingSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WCuE3bs0L4RBsK+hQnrqkecW5kg= +MD5-Digest: RwATRKLjD8rPL+QiymPpVQ== + +Name: oracle/gss/util/CharConvBuilder/MultiByte12MapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tM2Mla1Yai4CcVSvDs7dWZ+TWVM= +MD5-Digest: fwb2OkoK9pXIQ2Y7NeD+BQ== + +Name: oracle/gss/util/CharConvBuilder/SJISMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MfAb89hEMPi7aYtSm2FtzlvGrGU= +MD5-Digest: QNLb66KrpYI7Q7zczCMYoQ== + +Name: oracle/gss/util/CharConvBuilder/SingleByteMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fqacn50g6AhBZtyCSBGliGzNfOk= +MD5-Digest: wpl4bD5gBCkuTHEorMO/dQ== + +Name: oracle/gss/util/CharConvBuilder/TokenParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ceRntz5Gv00J3ZwKFwLR/LQ9NSU= +MD5-Digest: ytSPU9vDjBtbLpZaSDanKw== + +Name: oracle/gss/util/CharConvBuilder/UniPropBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1BmnIQfTPXL55pJLFGnL4WmBGBI= +MD5-Digest: W7xhqr+hqwez5M2KgwsaMA== + +Name: oracle/gss/util/CharConvBuilder/ZHTEUCMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: e6n7gm58OwDLz6U4gx5LZqWXDO8= +MD5-Digest: mo4SqiswHic4aXdmimiEZg== + +Name: oracle/gss/util/JNLS.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xigpparUT8s8B2M/mjZYhhk9JJU= +MD5-Digest: ntuXsmTLgWvYSRUvQSIAUQ== + +Name: oracle/gss/util/NLSCharacter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RD7d/7BWfQz/KeJbuMWJGDtqCHs= +MD5-Digest: ODMjhSDEcNAd/g6mya9aaA== + +Name: oracle/gss/util/NLSError.class +Digest-Algorithms: SHA MD5 +SHA-Digest: B/aWgr90LYTXOnwcGAscgCmZnxc= +MD5-Digest: aucyLypHr7nTYvhQ23nNJA== + +Name: oracle/gss/util/NLSLocale.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HPLERtaYUiIX7WlICIOLTVeMjj8= +MD5-Digest: pC0oT/cAn9cpuOdPgNCEAA== + +Name: oracle/gss/util/NLSLocale001.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +G4hZMZLIiUt5VQd9DUnmwtOCXM= +MD5-Digest: DEVnNvrotxZY1sU4SW3zMw== + +Name: oracle/gss/util/NLSLocale002.class +Digest-Algorithms: SHA MD5 +SHA-Digest: /eSJetBGhMeLqErwjX03DGl0p88= +MD5-Digest: lUCHFK/uEPSe6Ot9M5lLzA== + +Name: oracle/gss/util/NLSLocale003.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DNRsl0BvZRIZPq75NEuX73/+iew= +MD5-Digest: Bg5vF2Phf8RR0f0CRqiOmg== + +Name: oracle/gss/util/NLSLocale004.class +Digest-Algorithms: SHA MD5 +SHA-Digest: n/2N7QQbWBXFjhdbcLjkLeq98+E= +MD5-Digest: xozdVtKz4vuHtE05Iboj8A== + +Name: oracle/gss/util/NLSLocale005.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IUUQVkKo83qrPoMv8wkdKKy0FdM= +MD5-Digest: nsj29N94UhyJEFh0cZ/qUg== + +Name: oracle/gss/util/NLSMessage.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7eJOMxZEyRX99rww8rY0HUSx63I= +MD5-Digest: WPQ2M2pQQKOtqCGBAkzm7Q== + +Name: oracle/gss/util/UnicodeProperty.class +Digest-Algorithms: SHA MD5 +SHA-Digest: upge6Nm/PZF5lCY69GPmItyp67A= +MD5-Digest: 1bQoOpfJCcy5UOcBrJLGOw== + +Name: oracle/gss/util/XmlValidate.class +Digest-Algorithms: SHA MD5 +SHA-Digest: L63ryJzAHqnzfhXZiaL81KgxnsM= +MD5-Digest: IJ2WCGmRhh2ESR4JVMl7KA== + +Name: oracle/gss/util/data/lx0boot.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: AJVSta1L3N3R5fJp0AV73LG//bA= +MD5-Digest: 86bK41gMhkd+O0ajysD+7A== + +Name: oracle/gss/util/data/unicodeprop.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: DbQZpTKlgGTLctGJxFC75K3zZA0= +MD5-Digest: 1gcfl0y7WDYf91JGbJ6M8w== + +Name: oracle/gss/util/message/ORAMessages.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: lhxtij6kLERhT1HzZsjvuiahPc8= +MD5-Digest: FAg9Ndaf6dcDW1nZ0O1UdQ== + +Name: oracle/gss/util/message/ORAMessages_de.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: 2jmj7l5rSw0yVb/vlWAYkK/YBwk= +MD5-Digest: 1B2M2Y8AsgTpgAmY7PhCfg== + +Name: oracle/gss/util/message/ORAMessages_fr.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: 2jmj7l5rSw0yVb/vlWAYkK/YBwk= +MD5-Digest: 1B2M2Y8AsgTpgAmY7PhCfg== + +Name: oracle/gss/util/message/ORAMessages_ja.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: O3XjLeVVI6CHK/2MixV5xXz4ZlE= +MD5-Digest: g32EPjSpSPBOcSxFY4L+qw== + +Name: oracle/net/TNSAddress/Address.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ABJxoxPmwEdR5IeZMdNqxSB1SB0= +MD5-Digest: MdDS036Kqym8X5u6CeJZlw== + +Name: oracle/net/TNSAddress/AddressList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1j9vyjdcwiC3JbOp1BXqXMbHubo= +MD5-Digest: SnmMHC7dbBAfVozOLyBgVQ== + +Name: oracle/net/TNSAddress/Description.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IFg/Ohxp0aWc2vDbN1BdvCz+N24= +MD5-Digest: KvXQKZwZDadEtJGt/2xEyQ== + +Name: oracle/net/TNSAddress/DescriptionList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3bi84oeDlDQArdmAXL1D+j2tP9A= +MD5-Digest: jNjRL2FrcjmpAFmWOTrewQ== + +Name: oracle/net/TNSAddress/SOException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Bu5Gv9RTtF043Qhh5X4ehXncn3w= +MD5-Digest: hx38kUciVuZoLkFwrenIWA== + +Name: oracle/net/TNSAddress/SchemaObject.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DmH6md7wlXtm+kvePKEelAE3hSI= +MD5-Digest: EUuozzxXA3ZbvBgreTcBDw== + +Name: oracle/net/TNSAddress/SchemaObjectFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hJRQ8ejwVnVvGlaTzaX3jK4hyCw= +MD5-Digest: BXSidLHUnMWXDCf4y0+Z9A== + +Name: oracle/net/TNSAddress/SchemaObjectFactoryInterface.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8IFFUCz9wuGOwsIESNKhOFA7y9A= +MD5-Digest: YS44/t5IVud79qGdhFiCkw== + +Name: oracle/net/TNSAddress/ServiceAlias.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wz36zj68w0jCRE8Wo+VR6kygWDQ= +MD5-Digest: lXat7gHVbok0/Wb4teZJ1A== + +Name: oracle/net/nl/NLException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ALT8ZTz5RjILxYqjEc5Fa4DPkzc= +MD5-Digest: 4mW7t/W+6CJ4b1bO22Seww== + +Name: oracle/net/nl/NLParamParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: /h+NGCz2f5/l3N7L/xN+GML2dS0= +MD5-Digest: bB6zk/IVqz8qw3Lp1cfS5w== + +Name: oracle/net/nl/NVFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 0PaM38Z+XxvpYD7l5Ldc0b/XALQ= +MD5-Digest: RZXQiw5Gofba1AGKgNwjdQ== + +Name: oracle/net/nl/NVNavigator.class +Digest-Algorithms: SHA MD5 +SHA-Digest: P3A7qP1cFT9IKAM2FF5Q0SvaHEw= +MD5-Digest: x7yEGETF7rSlXfSIdxGbZg== + +Name: oracle/net/nl/NVPair.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vf/FWn0bPkGI7b+DcPkLBKGTqmQ= +MD5-Digest: DdFNcwImujeaPz0BQHmzNA== + +Name: oracle/net/nl/NVTokens.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 42CfcuZp/TkwLyWRkBXD+Ugiv6c= +MD5-Digest: mBpm7VBnTBI+jAKIw1Mj9A== + +Name: oracle/net/nl/RepConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cOoEvFlbxB9Rt1twHeQEZT9REzg= +MD5-Digest: LB0V87y8uB3KWEWHHG75gQ== + +Name: oracle/net/nt/ConnOption.class +Digest-Algorithms: SHA MD5 +SHA-Digest: u9sD7KsIx6dQbZmdyK/IQFDrIJw= +MD5-Digest: 4NQC56oC2SmXY3esPmzhLA== + +Name: oracle/net/nt/ConnStrategy.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qAKNA71ZEXJnKoCgn5Z3TFKU7T8= +MD5-Digest: t4nGO+FvG9InE7KtfUVt2A== + +Name: oracle/net/nt/NTAdapter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: J1K8H1mQkFir4+p/wRWxdE6U+JA= +MD5-Digest: vVULU0NaBVbmmvyOGTdvXQ== + +Name: oracle/net/nt/TcpNTAdapter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xPlQDkxlOHx5p9wdwhCM2Esy0Jc= +MD5-Digest: 5h6t/6P2ckmnnGL/UolTTA== + +Name: oracle/net/jndi/JndiAttrs.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ouKbgRT9pKR10bJJCJq5aKHipkY= +MD5-Digest: jXvjfqPhByVJM9kQqdppeQ== + +Name: oracle/net/resolver/AddrResolution.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RVwWkltMCQjQvb8VsFMVS0jxizE= +MD5-Digest: W0Kdwmbed8JTPmk54z9j1g== + +Name: oracle/net/resolver/NavAddress.class +Digest-Algorithms: SHA MD5 +SHA-Digest: F8YBe/Z+A44zv2t/vbQM6oxKXrk= +MD5-Digest: 6Q1WsetTeffT1TxPDDm1VQ== + +Name: oracle/net/resolver/NavAddressList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PetQLvezakwaCBv7l5qfpbjirpE= +MD5-Digest: 87RBJViFh33la/7oeh+eTw== + +Name: oracle/net/resolver/NavDescription.class +Digest-Algorithms: SHA MD5 +SHA-Digest: R0dkcDhsxmAzcySquGfGTG/Ym6o= +MD5-Digest: DUf77z/cFZTp63Z7jxKm3g== + +Name: oracle/net/resolver/NavDescriptionList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nfEKw14IdkQeo2Ji8lLJZbctHbU= +MD5-Digest: QoUD6+8wHlSk2eFlDcb2pQ== + +Name: oracle/net/resolver/NavSchemaObject.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6KXdJwO3E2S7s3CxzzEEZzMfedQ= +MD5-Digest: s2CrDc9zp86PlsPKZgqgOw== + +Name: oracle/net/resolver/NavSchemaObjectFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wig1ms29RqxIGOQ1GzbYILckQ2w= +MD5-Digest: zvQs9qXskfrnnGLm0p4sUA== + +Name: oracle/net/resolver/NavServiceAlias.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nY6wqgdJdxt/qAPAYfQ8RKWkjsQ= +MD5-Digest: a00GsjUmr6MMiPIi+yIp7Q== + +Name: oracle/net/ns/AcceptPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: SwomXWZpXJriF1zsuU8olLGtlBo= +MD5-Digest: WuYsg031tWC/+xJcMtIMwA== + +Name: oracle/net/ns/BreakNetException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7lQgG3p/dZedwtfYCezCk5yszgI= +MD5-Digest: 5BcBBp80p7oWz98r14nHrQ== + +Name: oracle/net/ns/ClientProfile.class +Digest-Algorithms: SHA MD5 +SHA-Digest: l6iUHl/cnthwx1j8JfqCdsf9vf4= +MD5-Digest: Ja9r4i6lla48iyaZiRt0jA== + +Name: oracle/net/ns/Communication.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UyBxGVwH9g63MxkxgwB3fokvuTc= +MD5-Digest: GcWrjUTF67694PJB+7+ErQ== + +Name: oracle/net/ns/ConnectPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 0ml31zcfBCSYUGlI25eqy7pD05I= +MD5-Digest: iUdDLsp1pHGtmzd26NU/ag== + +Name: oracle/net/ns/DataPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: X8FGhGc7RBXTSIZbxDsGYULhNBw= +MD5-Digest: nssmlr7mnpXEOG0EGzBOow== + +Name: oracle/net/ns/MarkerPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UH55FZonpb/mot2ii3pREGXtQ+I= +MD5-Digest: FpWNF/bGOMKMZWjQTDUTgQ== + +Name: oracle/net/ns/Message.class +Digest-Algorithms: SHA MD5 +SHA-Digest: LuMDu+EwJ4RMp4xYzgPFvBz9r3k= +MD5-Digest: Jg6/bCspYoqEVanvuc4nMA== + +Name: oracle/net/ns/Message10.class +Digest-Algorithms: SHA MD5 +SHA-Digest: By75bE4tvqCSYIxvqmdUtda1wzc= +MD5-Digest: bxaOKNHeZi8JdGErurAErA== + +Name: oracle/net/ns/Message11.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WHnUvZoMbxBykli9d4jpIinRqos= +MD5-Digest: V0dGxCS2SIML/vUKETB3Ig== + +Name: oracle/net/ns/NSProtocol.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NqIhcxKQHUD4HkeQdTUCFReZZqo= +MD5-Digest: BDsD1PIghwGVOYqBa7fHrg== + +Name: oracle/net/ns/NetException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DachUsb+bnuVsm0Q+6tsc5QF2x8= +MD5-Digest: 1BThAVpdpcmG4lPJJc/JUw== + +Name: oracle/net/ns/NetInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Hu1e33625+BBExU8Is9TF9Ed5F8= +MD5-Digest: GfJDsaY+vqzFYdltvOpbRw== + +Name: oracle/net/ns/NetOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5r9aNSSW5y9ppL2LYFZrqpNwpgY= +MD5-Digest: DN+1ms1IkhkJ3Bl/OBWyPw== + +Name: oracle/net/ns/Packet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pnmx1ARnO/tW8IxwPGCl6FRYUnU= +MD5-Digest: mZO80lZmNuXiH0LzMiFOug== + +Name: oracle/net/ns/RedirectPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: VaoAfWQkmyjTY7Ijh/Rej5NdApY= +MD5-Digest: rXc11iE8tn5aAoS8R5GKMg== + +Name: oracle/net/ns/RefusePacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lK3PfQh4R3W23K4OGoyzoCr6Piw= +MD5-Digest: C44ZV0wJCkLaHv1RLBSgrA== + +Name: oracle/net/ns/SQLnetDef.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8Gk8K16+ZXZplKWhrDFtJuTVZVk= +MD5-Digest: d46YzwEs9BjL4LXw3620vw== + +Name: oracle/net/ns/SessionAtts.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YnVUMvlhO7Xj417RcFlTI9oxaCI= +MD5-Digest: n+Fic6fBWsSg62KOMrvOsg== + +Name: oracle/net/ano/Ano.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qebCuOQBDKqMfDwW/TuTvDm6zH4= +MD5-Digest: 3v0lkCZ+/Hua6TwmXy0DaQ== + +Name: oracle/net/ano/AnoComm.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tjH7wIdt8eSL6l3ytRtzc/CjtpI= +MD5-Digest: X71CBgcm8+ZfVp96TvMzUQ== + +Name: oracle/net/ano/AnoNetInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: C1WGBh1v5+i/a/AyOJI0QRLd3lw= +MD5-Digest: 8JGgPgnDYWmzQcHRKJf5FQ== + +Name: oracle/net/ano/AnoNetOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tsHsSYgDizKHUbRISUZ1g3S5xJk= +MD5-Digest: 9gD18V8hADoOQcaynnoK/w== + +Name: oracle/net/ano/AnoServices.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZYpDacLwAn3XIa6IUgjj2Xk345g= +MD5-Digest: rnuwTgj2p1i2AON/+tMv7Q== + +Name: oracle/net/ano/AuthenticationService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: GzYyNsqrw+Y0m0eWr3r803FNcNA= +MD5-Digest: BIBiY536+SIWYRKSoOo1jQ== + +Name: oracle/net/ano/CryptoDataPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jRMp5HwLrmWDk92KN6xf3+D46ZE= +MD5-Digest: RyuCSXKN9+0k9QbdvVItlQ== + +Name: oracle/net/ano/DataIntegrityService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: R45/SUNCm+P4yBdIWBfnd9Bhqwo= +MD5-Digest: 3s1iAB8Fn+Hq4lvtPUx4pA== + +Name: oracle/net/ano/EncryptionService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WFD9c/5FsjT+9ExxM67N5DWWqu0= +MD5-Digest: q0SVli1fzF5sNjqtCfwTEA== + +Name: oracle/net/ano/Service.class +Digest-Algorithms: SHA MD5 +SHA-Digest: V6Nv29ym3sZVaIy3rHy5JogUIxs= +MD5-Digest: qX6bQ5ZOHJrRTIFmTmbSDA== + +Name: oracle/net/ano/SupervisorService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 04yXcE3+T/hAou3+iDRzzmZAY4g= +MD5-Digest: u9l9GU3ONMo1GElPyyNHCw== + +Name: oracle/net/aso/C00.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fEBwtoLIQ3xuihCPqXYdCPEamcY= +MD5-Digest: LFeaS5Uoc5Ve+CRLDwqubg== + +Name: oracle/net/aso/C01.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wHrosv+1/B+lQBdcsX+hU6uOakI= +MD5-Digest: Vr6rR+tHmM3Z77UdLPi58g== + +Name: oracle/net/aso/C02.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5tYlAFOdca69FRWaHdefA6QcZZ4= +MD5-Digest: gAGr3l9G8qd9uc+AcvvteQ== + +Name: oracle/net/aso/C03.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aIkmhFdFrwxu1Fi/AlSykh3Z6TY= +MD5-Digest: 0mY+FVr50NTthVCVcvX6pA== + +Name: oracle/net/aso/C04.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nbkjqpIqPkcf4FUmYQVqm75ZE8g= +MD5-Digest: 9qcfSgydU5jwYmiWPjQOFw== + +Name: oracle/net/aso/C05.class +Digest-Algorithms: SHA MD5 +SHA-Digest: XiKDOuCnzzU6COhlytR+YYnh3zI= +MD5-Digest: CB3x7rtIHWJXVf86BrSKVw== + +Name: oracle/net/aso/C06.class +Digest-Algorithms: SHA MD5 +SHA-Digest: if4EQiITXDMnXJxLSuSKR70mR+4= +MD5-Digest: 3nX6xSWX60je2TaYYaV7Wg== + +Name: oracle/net/aso/C07.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PzXa9ysMt1oQ1vQyFyEk5Qn5it4= +MD5-Digest: 02uTGAvQGJM7xDAPXt7uJw== + +Name: oracle/net/aso/C08.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5IBroAGvzNVgLZdCOpL2JDj7LIk= +MD5-Digest: pKbaLpeghI8uMzt/Cvn8JA== + +Name: oracle/net/aso/C09.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3Kl/7ILzDty4z4sszvItRZ9Hgxs= +MD5-Digest: 2R3ILSYYZcp02o2rDz5QrA== + +Name: oracle/net/aso/C10.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NXI8AZ+useODDJjKW9LdI3fyUi4= +MD5-Digest: 8jdsfQS8nct4Nwm5tDundw== + +Name: oracle/net/aso/MD5$SD5.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4+XiSYbLLeNGJxi+I/zM1vFb748= +MD5-Digest: CFSmytMjOv0gPefkHt3JrA== + +Name: oracle/net/aso/MD5.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HEdjwFi1FgYTMVnjpIomwFY50ns= +MD5-Digest: lHPwIsENTjsVA6NlydWqUQ== + +Name: oracle/net/mesg/Message.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: nJoAzVhhSgqK1FoWRSCdTdCBESk= +MD5-Digest: eQGvbe5bnTxq5vTLlv2mIA== + +Name: oracle/security/o3logon/C0.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1PSNMbUjvRnn6yg1bBVn3wHSLms= +MD5-Digest: giCJ9ExrsQ/d/4umx6x3Gw== + +Name: oracle/security/o3logon/O3LoginProtocolHelper.class +Digest-Algorithms: SHA MD5 +SHA-Digest: j0LqttJlzSbtOHIkqTBfUB5Bd28= +MD5-Digest: Bbl2ml54ub1xNQNMtQFeeg== + +Name: oracle/security/o3logon/O3LoginClientHelper.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bGYEV9e49nNb1tBQ7BFXQiBO8oM= +MD5-Digest: hvoqfL4syqwChVof/Mvuew== + +Name: oracle/security/o3logon/C1.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8+kpgGMq6Iw5f5y/W2vnN1isnZU= +MD5-Digest: y1HzXAcjXmtS+NBWAfibbQ== + diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/f04b23af05a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/f04b23af05a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..e4ba0b9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b0/f04b23af05a4001c1027e59cc3e35e89 @@ -0,0 +1,87 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + int i = rsmd.getColumnCount(); + + System.println("Nombre de colonne: "); + + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b1/506b9fb250aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b1/506b9fb250aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..178f2bd --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b1/506b9fb250aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private IHMConnexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void confirmationConnexion(String chaine){ + int resultatConfirmation; + resultatConfirmation = JOptionPane.showConfirmDialog(null, chaine.toString(), "Confirmation" ,JOptionPane.YES_NO_OPTION); + if(resultatConfirmation == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b1/60d64ef920af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b1/60d64ef920af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..c8a2bee --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b1/60d64ef920af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19 + +ORA-17002=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14 IO + +ORA-17003=\u0e14\u0e31\u0e0a\u0e19\u0e35\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17004=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17005=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17006=\u0e0a\u0e37\u0e48\u0e2d\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17007=\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e41\u0e1a\u0e1a\u0e44\u0e14\u0e19\u0e32\u0e21\u0e34\u0e04\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17008=\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e17\u0e35\u0e48\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e41\u0e25\u0e49\u0e27 + +ORA-17009=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e17\u0e35\u0e48\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e41\u0e25\u0e49\u0e27 + +ORA-17010=Resultset \u0e17\u0e35\u0e48\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e41\u0e25\u0e49\u0e27 + +ORA-17011=Resultset \u0e17\u0e35\u0e48\u0e40\u0e25\u0e34\u0e01\u0e43\u0e0a\u0e49 + +ORA-17012=\u0e02\u0e49\u0e2d\u0e02\u0e31\u0e14\u0e41\u0e22\u0e49\u0e07\u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e1e\u0e32\u0e23\u0e32\u0e21\u0e34\u0e40\u0e15\u0e2d\u0e23\u0e4c + +ORA-17014=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 ResultSet.next + +ORA-17015=\u0e22\u0e01\u0e40\u0e25\u0e34\u0e01\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e41\u0e25\u0e49\u0e27 + +ORA-17016=\u0e2b\u0e21\u0e14\u0e40\u0e27\u0e25\u0e32\u0e02\u0e2d\u0e07\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e19\u0e35\u0e49\u0e41\u0e25\u0e49\u0e27 + +ORA-17017=\u0e40\u0e23\u0e34\u0e48\u0e21\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e40\u0e04\u0e2d\u0e23\u0e4c\u0e40\u0e0b\u0e2d\u0e23\u0e4c\u0e41\u0e25\u0e49\u0e27 + +ORA-17018=\u0e40\u0e04\u0e2d\u0e23\u0e4c\u0e40\u0e0b\u0e2d\u0e23\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17019=\u0e2d\u0e18\u0e34\u0e1a\u0e32\u0e22\u0e44\u0e14\u0e49\u0e40\u0e09\u0e1e\u0e32\u0e30\u0e01\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e2a\u0e37\u0e1a\u0e04\u0e49\u0e19 + +ORA-17020=\u0e01\u0e32\u0e23\u0e14\u0e36\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e41\u0e16\u0e27\u0e25\u0e48\u0e27\u0e07\u0e2b\u0e19\u0e49\u0e32\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17021=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e01\u0e33\u0e2b\u0e19\u0e14 + +ORA-17022=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e17\u0e35\u0e48\u0e14\u0e31\u0e0a\u0e19\u0e35 + +ORA-17023=\u0e04\u0e38\u0e13\u0e2a\u0e21\u0e1a\u0e31\u0e15\u0e34\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17024=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e2d\u0e48\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 + +ORA-17025=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e43\u0e19 defines.isNull () + +ORA-17026=\u0e40\u0e01\u0e34\u0e19\u0e08\u0e33\u0e19\u0e27\u0e19 + +ORA-17027=\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e2a\u0e15\u0e23\u0e35\u0e21\u0e41\u0e25\u0e49\u0e27 + +ORA-17028=\u0e40\u0e23\u0e34\u0e48\u0e21\u0e01\u0e32\u0e23\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e43\u0e2b\u0e21\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 \u0e08\u0e19\u0e01\u0e27\u0e48\u0e32\u0e08\u0e30\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14 ResultSet \u0e1b\u0e31\u0e08\u0e08\u0e38\u0e1a\u0e31\u0e19 + +ORA-17029=setReadOnly: \u0e43\u0e0a\u0e49\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e1a\u0e1a\u0e2d\u0e48\u0e32\u0e19\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17030=\u0e23\u0e30\u0e14\u0e31\u0e1a\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e17\u0e35\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e21\u0e35\u0e40\u0e1e\u0e35\u0e22\u0e07 READ_COMMITTED \u0e41\u0e25\u0e30 SERIALIZABLE + +ORA-17031=setAutoClose: \u0e43\u0e0a\u0e49\u0e44\u0e14\u0e49\u0e43\u0e19\u0e01\u0e23\u0e13\u0e35\u0e17\u0e35\u0e48\u0e42\u0e2b\u0e21\u0e14\u0e1b\u0e34\u0e14\u0e42\u0e14\u0e22\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e44\u0e27\u0e49\u0e40\u0e1b\u0e47\u0e19 \'\u0e40\u0e1b\u0e34\u0e14\' + +ORA-17032=\u0e01\u0e32\u0e23\u0e14\u0e36\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e41\u0e16\u0e27\u0e25\u0e48\u0e27\u0e07\u0e2b\u0e19\u0e49\u0e32\u0e08\u0e30\u0e40\u0e1b\u0e47\u0e19\u0e28\u0e39\u0e19\u0e22\u0e4c\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17033=\u0e1e\u0e1a\u0e2a\u0e15\u0e23\u0e34\u0e07 SQL92 \u0e17\u0e35\u0e48\u0e21\u0e35\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e17\u0e35\u0e48\u0e15\u0e33\u0e41\u0e2b\u0e19\u0e48\u0e07 + +ORA-17034=\u0e1e\u0e1a\u0e42\u0e17\u0e40\u0e04\u0e47\u0e19 SQL92 \u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e17\u0e35\u0e48\u0e15\u0e33\u0e41\u0e2b\u0e19\u0e48\u0e07 + +ORA-17035=\u0e43\u0e0a\u0e49\u0e0a\u0e38\u0e14\u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17036=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e43\u0e19 OracleNumber + +ORA-17037=\u0e41\u0e1b\u0e25\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07 UTF8 \u0e01\u0e31\u0e1a UCS2 \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17038=\u0e02\u0e19\u0e32\u0e14\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e2d\u0e07 Byte \u0e22\u0e32\u0e27\u0e44\u0e21\u0e48\u0e1e\u0e2d + +ORA-17039=\u0e02\u0e19\u0e32\u0e14\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e2d\u0e07 Char \u0e22\u0e32\u0e27\u0e44\u0e21\u0e48\u0e1e\u0e2d + +ORA-17040=\u0e15\u0e49\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e38\u0e42\u0e1b\u0e23\u0e42\u0e15\u0e04\u0e2d\u0e25\u0e22\u0e48\u0e2d\u0e22\u0e43\u0e19\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e1c\u0e48\u0e32\u0e19\u0e17\u0e32\u0e07 URL + +ORA-17041=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e1e\u0e32\u0e23\u0e32\u0e21\u0e34\u0e40\u0e15\u0e2d\u0e23\u0e4c IN \u0e2b\u0e23\u0e37\u0e2d OUT \u0e17\u0e35\u0e48\u0e14\u0e31\u0e0a\u0e19\u0e35: + +ORA-17042=\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07\u0e41\u0e1a\u0e17\u0e0a\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17043=\u0e02\u0e19\u0e32\u0e14\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e2a\u0e15\u0e23\u0e35\u0e21\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17044=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e08\u0e31\u0e14\u0e2a\u0e23\u0e23\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 + +ORA-17045=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e04\u0e48\u0e32\u0e15\u0e31\u0e27\u0e41\u0e1b\u0e23\u0e44\u0e1a\u0e19\u0e14\u0e4c\u0e19\u0e2d\u0e01\u0e40\u0e2b\u0e19\u0e37\u0e2d\u0e08\u0e32\u0e01\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07\u0e41\u0e1a\u0e17\u0e0a\u0e4c + +ORA-17046=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e14\u0e31\u0e0a\u0e19\u0e35\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e40\u0e02\u0e49\u0e32\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17047=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e43\u0e19\u0e01\u0e32\u0e23\u0e1e\u0e32\u0e23\u0e4c\u0e0b Descriptor \u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17 + +ORA-17048=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e44\u0e27\u0e49 + +ORA-17049=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c java \u0e41\u0e25\u0e30 sql \u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e19 + +ORA-17050=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e2d\u0e35\u0e25\u0e34\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e14\u0e31\u0e07\u0e01\u0e25\u0e48\u0e32\u0e27\u0e43\u0e19\u0e40\u0e27\u0e01\u0e40\u0e15\u0e2d\u0e23\u0e4c + +ORA-17051=API \u0e19\u0e35\u0e49\u0e08\u0e30\u0e43\u0e0a\u0e49\u0e01\u0e31\u0e1a\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e37\u0e48\u0e19\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e43\u0e0a\u0e48 UDT \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17052=ref \u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17053=\u0e02\u0e19\u0e32\u0e14\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17054=\u0e42\u0e25\u0e40\u0e04\u0e40\u0e15\u0e2d\u0e23\u0e4c\u0e02\u0e2d\u0e07 LOB \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17055=\u0e1e\u0e1a\u0e15\u0e31\u0e27\u0e2d\u0e31\u0e01\u0e29\u0e23\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19 + +ORA-17056=\u0e0a\u0e38\u0e14\u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17057=\u0e1b\u0e34\u0e14 LOB \u0e41\u0e25\u0e49\u0e27 + +ORA-17058=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e2d\u0e31\u0e15\u0e23\u0e32\u0e2a\u0e48\u0e27\u0e19\u0e01\u0e32\u0e23\u0e41\u0e1b\u0e25\u0e07\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07 NLS \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17059=\u0e41\u0e1b\u0e25\u0e07\u0e40\u0e1b\u0e47\u0e19\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e20\u0e32\u0e22\u0e43\u0e19\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17060=\u0e2a\u0e23\u0e49\u0e32\u0e07 Descriptor \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17061=\u0e44\u0e21\u0e48\u0e21\u0e35 Descriptor + +ORA-17062=Ref cursor \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17063=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23 + +ORA-17064=\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 \u0e2b\u0e23\u0e37\u0e2d\u0e0a\u0e37\u0e48\u0e2d\u0e10\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17065=\u0e04\u0e25\u0e32\u0e2a\u0e01\u0e32\u0e23\u0e41\u0e1b\u0e25\u0e07\u0e04\u0e48\u0e32\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17066=\u0e15\u0e49\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e38\u0e01\u0e32\u0e23\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e40\u0e09\u0e1e\u0e32\u0e30\u0e02\u0e2d\u0e07\u0e0a\u0e31\u0e49\u0e19\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19 + +ORA-17067=Oracle URL \u0e17\u0e35\u0e48\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17068=\u0e1e\u0e1a\u0e2d\u0e32\u0e23\u0e4c\u0e01\u0e34\u0e27\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 + +ORA-17069=\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 XA \u0e42\u0e14\u0e22\u0e15\u0e23\u0e07 + +ORA-17070=\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e02\u0e19\u0e32\u0e14\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e19\u0e35\u0e49 + +ORA-17071=\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e02\u0e35\u0e14\u0e08\u0e33\u0e01\u0e31\u0e14\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07 VARRAY + +ORA-17072=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e43\u0e2b\u0e0d\u0e48\u0e01\u0e27\u0e48\u0e32\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c + +ORA-17073=\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25\u0e41\u0e1a\u0e1a\u0e25\u0e2d\u0e08\u0e34\u0e04\u0e31\u0e25\u0e19\u0e35\u0e49\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e41\u0e25\u0e49\u0e27 + +ORA-17074=\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e0a\u0e37\u0e48\u0e2d\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17075=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 'resultset \u0e41\u0e1a\u0e1a\u0e2a\u0e48\u0e07\u0e15\u0e48\u0e2d\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27' \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17076=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 'resultset \u0e41\u0e1a\u0e1a\u0e2d\u0e48\u0e32\u0e19\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27' \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17077=\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e04\u0e48\u0e32 REF \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17078=\u0e40\u0e23\u0e34\u0e48\u0e21\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 \u0e40\u0e19\u0e37\u0e48\u0e2d\u0e07\u0e08\u0e32\u0e01\u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e1b\u0e34\u0e14\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e25\u0e49\u0e27 + +ORA-17079=\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e23\u0e31\u0e1a\u0e23\u0e2d\u0e07\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e1a\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e17\u0e35\u0e48\u0e21\u0e35\u0e2d\u0e22\u0e39\u0e48 + +ORA-17080=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e43\u0e19\u0e41\u0e1a\u0e17\u0e0a\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17081=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e02\u0e13\u0e30\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e41\u0e1a\u0e17\u0e0a\u0e4c + +ORA-17082=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e41\u0e16\u0e27\u0e1b\u0e31\u0e08\u0e08\u0e38\u0e1a\u0e31\u0e19 + +ORA-17083=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e43\u0e19\u0e41\u0e16\u0e27\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01 + +ORA-17084=\u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49\u0e41\u0e16\u0e27\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01 + +ORA-17085=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e02\u0e31\u0e14\u0e41\u0e22\u0e49\u0e07\u0e40\u0e01\u0e35\u0e48\u0e22\u0e27\u0e01\u0e31\u0e1a\u0e04\u0e48\u0e32 + +ORA-17086=\u0e04\u0e48\u0e32\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e43\u0e19\u0e41\u0e16\u0e27\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01 + +ORA-17087=\u0e44\u0e21\u0e48\u0e43\u0e0a\u0e49\u0e04\u0e33\u0e41\u0e19\u0e30\u0e19\u0e33\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e40\u0e1e\u0e34\u0e48\u0e21\u0e1b\u0e23\u0e30\u0e2a\u0e34\u0e17\u0e18\u0e34\u0e20\u0e32\u0e1e: setFetchDirection() + +ORA-17088=\u0e44\u0e21\u0e48\u0e2a\u0e19\u0e31\u0e1a\u0e2a\u0e19\u0e38\u0e19\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e41\u0e25\u0e30\u0e23\u0e30\u0e14\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e1e\u0e23\u0e49\u0e2d\u0e21\u0e01\u0e31\u0e19\u0e02\u0e2d\u0e07 resultset \u0e17\u0e35\u0e48\u0e2a\u0e48\u0e07\u0e04\u0e33\u0e02\u0e2d +ORA-17089=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19 + +ORA-17090=\u0e14\u0e33\u0e40\u0e19\u0e34\u0e19\u0e01\u0e32\u0e23\u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17091=\u0e2a\u0e23\u0e49\u0e32\u0e07 resultset \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e41\u0e25\u0e30/\u0e2b\u0e23\u0e37\u0e2d\u0e17\u0e35\u0e48\u0e23\u0e30\u0e14\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e1e\u0e23\u0e49\u0e2d\u0e21\u0e01\u0e31\u0e19\u0e17\u0e35\u0e48\u0e2a\u0e48\u0e07\u0e04\u0e33\u0e02\u0e2d\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17092=\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e2b\u0e23\u0e37\u0e2d\u0e23\u0e31\u0e19\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 JDBC \u0e2b\u0e25\u0e31\u0e07\u0e08\u0e32\u0e01\u0e1b\u0e23\u0e30\u0e21\u0e27\u0e25\u0e1c\u0e25\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49\u0e41\u0e25\u0e49\u0e27\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17093=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 OCI \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c\u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e19 + +ORA-17095=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e02\u0e19\u0e32\u0e14\u0e41\u0e04\u0e0a\u0e02\u0e2d\u0e07\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 + +ORA-17096=\u0e43\u0e0a\u0e49\u0e41\u0e04\u0e0a\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e01\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e1a\u0e1a\u0e25\u0e2d\u0e08\u0e34\u0e04\u0e31\u0e25\u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17097=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e35\u0e25\u0e34\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e15\u0e32\u0e23\u0e32\u0e07\u0e14\u0e31\u0e0a\u0e19\u0e35 PL/SQL \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17098=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 lob \u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e21\u0e35\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17099=\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e2d\u0e07\u0e15\u0e32\u0e23\u0e32\u0e07\u0e14\u0e31\u0e0a\u0e19\u0e35 PL/SQL \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17100=\u0e08\u0e32\u0e27\u0e32\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e10\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17101=\u0e04\u0e38\u0e13\u0e2a\u0e21\u0e1a\u0e31\u0e15\u0e34\u0e02\u0e2d\u0e07\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c\u0e1e\u0e39\u0e25\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d OCI \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17102=Bfile \u0e43\u0e0a\u0e49\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e2d\u0e48\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27 + +ORA-17103=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e17\u0e35\u0e48\u0e08\u0e30\u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e1c\u0e48\u0e32\u0e19 getConnection \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 \u0e43\u0e2b\u0e49\u0e43\u0e0a\u0e49 getJavaSqlConnection \u0e41\u0e17\u0e19 + +ORA-17104=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 SQL \u0e17\u0e35\u0e48\u0e08\u0e30\u0e23\u0e31\u0e19\u0e08\u0e30\u0e15\u0e49\u0e2d\u0e07\u0e44\u0e21\u0e48\u0e40\u0e27\u0e49\u0e19\u0e27\u0e48\u0e32\u0e07\u0e44\u0e27\u0e49\u0e2b\u0e23\u0e37\u0e2d\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17105=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e42\u0e0b\u0e19\u0e40\u0e27\u0e25\u0e32\u0e02\u0e2d\u0e07\u0e40\u0e0b\u0e2a\u0e0a\u0e31\u0e19\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d + +ORA-17106=\u0e23\u0e30\u0e1a\u0e38\u0e04\u0e2d\u0e19\u0e1f\u0e34\u0e40\u0e01\u0e2d\u0e40\u0e23\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07\u0e1e\u0e39\u0e25\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e44\u0e14\u0e23\u0e40\u0e27\u0e2d\u0e23\u0e4c JDBC-OCI \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17107=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e1e\u0e23\u0e47\u0e2d\u0e01\u0e0b\u0e35\u0e48\u0e17\u0e35\u0e48\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17108=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e23\u0e30\u0e1a\u0e38\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e43\u0e19 defineColumnType + +ORA-17109=\u0e44\u0e21\u0e48\u0e1e\u0e1a\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e23\u0e2b\u0e31\u0e2a\u0e02\u0e2d\u0e07\u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30\u0e08\u0e32\u0e27\u0e32\u0e41\u0e1a\u0e1a\u0e21\u0e32\u0e15\u0e23\u0e10\u0e32\u0e19 + +ORA-17110=\u0e01\u0e32\u0e23\u0e23\u0e31\u0e19\u0e40\u0e2a\u0e23\u0e47\u0e08\u0e2a\u0e21\u0e1a\u0e39\u0e23\u0e13\u0e4c\u0e42\u0e14\u0e22\u0e21\u0e35\u0e04\u0e33\u0e40\u0e15\u0e37\u0e2d\u0e19 + +ORA-17111=\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e17\u0e21\u0e4c\u0e40\u0e2d\u0e32\u0e15\u0e4c TTL \u0e02\u0e2d\u0e07\u0e41\u0e04\u0e0a\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17112=\u0e23\u0e30\u0e1a\u0e38\u0e23\u0e30\u0e22\u0e30\u0e40\u0e27\u0e25\u0e32\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e40\u0e18\u0e23\u0e14\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17113=\u0e04\u0e48\u0e32\u0e23\u0e30\u0e22\u0e30\u0e40\u0e27\u0e25\u0e32\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e40\u0e18\u0e23\u0e14\u0e21\u0e32\u0e01\u0e01\u0e27\u0e48\u0e32\u0e04\u0e48\u0e32\u0e44\u0e17\u0e21\u0e4c\u0e40\u0e2d\u0e32\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e41\u0e04\u0e0a + +ORA-17114=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e1a\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21 + +ORA-17115=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e23\u0e25\u0e41\u0e1a\u0e47\u0e04\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e1a\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21 + +ORA-17116=\u0e40\u0e1b\u0e34\u0e14\u0e01\u0e32\u0e23\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e2d\u0e22\u0e39\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17117=\u0e01\u0e33\u0e2b\u0e19\u0e14 Savepoint \u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e2d\u0e22\u0e39\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17118=\u0e40\u0e23\u0e35\u0e22\u0e01 ID \u0e02\u0e2d\u0e07 Savepoint \u0e17\u0e35\u0e48\u0e15\u0e31\u0e49\u0e07\u0e0a\u0e37\u0e48\u0e2d\u0e44\u0e27\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17119=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e23\u0e35\u0e22\u0e01\u0e0a\u0e37\u0e48\u0e2d\u0e02\u0e2d\u0e07 Savepoint \u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e15\u0e31\u0e49\u0e07\u0e0a\u0e37\u0e48\u0e2d\u0e44\u0e27\u0e49 + +ORA-17120=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e01\u0e33\u0e2b\u0e19\u0e14 Savepoint \u0e02\u0e13\u0e30\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e01\u0e32\u0e23\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34 + +ORA-17121=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e23\u0e25\u0e41\u0e1a\u0e47\u0e04\u0e44\u0e1b\u0e22\u0e31\u0e07 Savepoint \u0e02\u0e13\u0e30\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e01\u0e32\u0e23\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34 + +ORA-17122=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e23\u0e25\u0e41\u0e1a\u0e47\u0e04\u0e01\u0e25\u0e31\u0e1a\u0e44\u0e1b\u0e17\u0e35\u0e48 Savepoint \u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e1a\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21 + +ORA-17123=\u0e23\u0e30\u0e1a\u0e38\u0e02\u0e19\u0e32\u0e14\u0e41\u0e04\u0e0a\u0e02\u0e2d\u0e07\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17124=\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e17\u0e21\u0e4c\u0e40\u0e2d\u0e32\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e0a\u0e48\u0e27\u0e07\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e43\u0e19\u0e41\u0e04\u0e0a\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17200=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e41\u0e1b\u0e25\u0e07\u0e2a\u0e15\u0e23\u0e34\u0e07\u0e40\u0e1b\u0e34\u0e14\u0e02\u0e2d\u0e07 XA \u0e08\u0e32\u0e01 Java \u0e40\u0e1b\u0e47\u0e19 C \u0e2d\u0e22\u0e48\u0e32\u0e07\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17201=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e41\u0e1b\u0e25\u0e07\u0e2a\u0e15\u0e23\u0e34\u0e07\u0e1b\u0e34\u0e14\u0e02\u0e2d\u0e07 XA \u0e08\u0e32\u0e01 Java \u0e40\u0e1b\u0e47\u0e19 C \u0e2d\u0e22\u0e48\u0e32\u0e07\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17202=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e41\u0e1b\u0e25\u0e07\u0e0a\u0e37\u0e48\u0e2d RM \u0e08\u0e32\u0e01 Java \u0e40\u0e1b\u0e47\u0e19 C \u0e44\u0e14\u0e49\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17203=\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e1e\u0e2d\u0e22\u0e40\u0e15\u0e2d\u0e23\u0e4c\u0e40\u0e1b\u0e47\u0e19 jlong \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17204=\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e04\u0e48\u0e32\u0e2d\u0e34\u0e19\u0e1e\u0e38\u0e15\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e40\u0e25\u0e47\u0e01\u0e40\u0e01\u0e34\u0e19\u0e44\u0e1b\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e40\u0e01\u0e47\u0e1a\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 OCI + +ORA-17205=\u0e23\u0e31\u0e1a\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 OCISvcCtx \u0e08\u0e32\u0e01 C-XA \u0e42\u0e14\u0e22\u0e43\u0e0a\u0e49 xaoSvcCtx \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17206=\u0e23\u0e31\u0e1a\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 OCIEnv \u0e08\u0e32\u0e01 C-XA \u0e42\u0e14\u0e22\u0e43\u0e0a\u0e49 xaoEnv \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17207=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e04\u0e38\u0e13\u0e2a\u0e21\u0e1a\u0e31\u0e15\u0e34 tnsEntry \u0e44\u0e27\u0e49\u0e43\u0e19 DataSource + +ORA-17213=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_RMERR \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_open + +ORA-17215=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_INVAL \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_open + +ORA-17216=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_PROTO \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_open + +ORA-17233=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_RMERR \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_close + +ORA-17235=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_INVAL \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_close + +ORA-17236=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_PROTO \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u0e01\u0e32\u0e23\u0e25\u0e30\u0e40\u0e21\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e42\u0e1b\u0e23\u0e42\u0e15\u0e04\u0e2d\u0e25 + +ORA-17402=\u0e15\u0e49\u0e2d\u0e07\u0e01\u0e32\u0e23\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 RPA \u0e40\u0e1e\u0e35\u0e22\u0e07\u0e2b\u0e19\u0e36\u0e48\u0e07\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 + +ORA-17403=\u0e15\u0e49\u0e2d\u0e07\u0e01\u0e32\u0e23\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 RXH \u0e40\u0e1e\u0e35\u0e22\u0e07\u0e2b\u0e19\u0e36\u0e48\u0e07\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 + +ORA-17404=\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a RXD \u0e21\u0e32\u0e01\u0e01\u0e27\u0e48\u0e32\u0e17\u0e35\u0e48\u0e04\u0e32\u0e14\u0e44\u0e27\u0e49 + +ORA-17405=\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e02\u0e2d\u0e07 UAC \u0e44\u0e21\u0e48\u0e40\u0e17\u0e48\u0e32\u0e01\u0e31\u0e1a\u0e28\u0e39\u0e19\u0e22\u0e4c + +ORA-17406=\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e1a\u0e31\u0e1f\u0e40\u0e1f\u0e2d\u0e23\u0e4c + +ORA-17407=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 (setRep) \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17408=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 (getRep) \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17409=\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e1a\u0e31\u0e1f\u0e40\u0e1f\u0e2d\u0e23\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17410=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e17\u0e35\u0e48\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a\u0e08\u0e32\u0e01\u0e0b\u0e47\u0e2d\u0e01\u0e40\u0e01\u0e47\u0e15 + +ORA-17411=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e19 + +ORA-17412=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14 + +ORA-17413=\u0e40\u0e01\u0e34\u0e19\u0e02\u0e19\u0e32\u0e14\u0e02\u0e2d\u0e07\u0e04\u0e35\u0e22\u0e4c + +ORA-17414=\u0e02\u0e19\u0e32\u0e14\u0e1a\u0e31\u0e1f\u0e40\u0e1f\u0e2d\u0e23\u0e4c\u0e17\u0e35\u0e48\u0e08\u0e30\u0e40\u0e01\u0e47\u0e1a\u0e0a\u0e37\u0e48\u0e2d\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e40\u0e1e\u0e35\u0e22\u0e07\u0e1e\u0e2d + +ORA-17415=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e19\u0e35\u0e49\u0e22\u0e31\u0e07\u0e44\u0e21\u0e48\u0e21\u0e35\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 + +ORA-17416=FATAL + +ORA-17417=\u0e40\u0e01\u0e34\u0e14\u0e1b\u0e31\u0e0d\u0e2b\u0e32\u0e40\u0e01\u0e35\u0e48\u0e22\u0e27\u0e01\u0e31\u0e1a NLS \u0e16\u0e2d\u0e14\u0e23\u0e2b\u0e31\u0e2a\u0e0a\u0e37\u0e48\u0e2d\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17418=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e08\u0e32\u0e01\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e1f\u0e34\u0e25\u0e14\u0e4c\u0e02\u0e2d\u0e07\u0e42\u0e04\u0e23\u0e07\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e20\u0e32\u0e22\u0e43\u0e19 + +ORA-17419=\u0e08\u0e33\u0e19\u0e27\u0e19\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e41\u0e2a\u0e14\u0e07\u0e1c\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17420=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07 Oracle + +ORA-17421=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2b\u0e23\u0e37\u0e2d\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d + +ORA-17422=\u0e04\u0e25\u0e32\u0e2a\u0e43\u0e19\u0e41\u0e1f\u0e04\u0e15\u0e2d\u0e23\u0e35\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17423=\u0e01\u0e32\u0e23\u0e43\u0e0a\u0e49\u0e1a\u0e25\u0e47\u0e2d\u0e04 PLSQL \u0e42\u0e14\u0e22\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14 IOV + +ORA-17424=\u0e01\u0e33\u0e25\u0e31\u0e07\u0e40\u0e23\u0e34\u0e48\u0e21\u0e1b\u0e0f\u0e34\u0e1a\u0e31\u0e15\u0e34\u0e01\u0e32\u0e23\u0e21\u0e32\u0e23\u0e4c\u0e41\u0e0a\u0e25\u0e2d\u0e37\u0e48\u0e19 + +ORA-17425=\u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19\u0e2a\u0e15\u0e23\u0e35\u0e21\u0e43\u0e19\u0e1a\u0e25\u0e47\u0e2d\u0e04 PLSQL + +ORA-17426=\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07\u0e15\u0e31\u0e27\u0e41\u0e1b\u0e23\u0e44\u0e1a\u0e19\u0e14\u0e4c\u0e17\u0e31\u0e49\u0e07 IN \u0e41\u0e25\u0e30 OUT \u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17427=\u0e43\u0e0a\u0e49 OAC \u0e17\u0e35\u0e48\u0e22\u0e31\u0e07\u0e44\u0e21\u0e48\u0e40\u0e23\u0e34\u0e48\u0e21\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19 + +ORA-17428=\u0e15\u0e49\u0e2d\u0e07\u0e25\u0e47\u0e2d\u0e01\u0e2d\u0e2d\u0e19\u0e2b\u0e25\u0e31\u0e07\u0e08\u0e32\u0e01\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e25\u0e49\u0e27 + +ORA-17429=\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e40\u0e02\u0e49\u0e32\u0e01\u0e31\u0e1a\u0e40\u0e0b\u0e34\u0e23\u0e4c\u0e1f\u0e40\u0e27\u0e2d\u0e23\u0e4c + +ORA-17430=\u0e15\u0e49\u0e2d\u0e07\u0e25\u0e47\u0e2d\u0e01\u0e2d\u0e2d\u0e19\u0e40\u0e02\u0e49\u0e32\u0e01\u0e31\u0e1a\u0e40\u0e0b\u0e34\u0e23\u0e4c\u0e1f\u0e40\u0e27\u0e2d\u0e23\u0e4c + +ORA-17431=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 SQL \u0e17\u0e35\u0e48\u0e08\u0e30\u0e1e\u0e32\u0e23\u0e4c\u0e0b\u0e21\u0e35\u0e04\u0e48\u0e32\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17432=\u0e1e\u0e1a\u0e15\u0e31\u0e27\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19 all7 + +ORA-17433=\u0e1e\u0e1a\u0e2d\u0e32\u0e23\u0e4c\u0e01\u0e34\u0e27\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 + +ORA-17434=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e43\u0e19\u0e42\u0e2b\u0e21\u0e14\u0e2a\u0e15\u0e23\u0e35\u0e21 + +ORA-17435=\u0e08\u0e33\u0e19\u0e27\u0e19 in_out_binds \u0e43\u0e19 IOV \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17436=\u0e08\u0e33\u0e19\u0e27\u0e19 outbinds \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17437=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e01\u0e31\u0e1a\u0e2d\u0e32\u0e23\u0e4c\u0e01\u0e34\u0e27\u0e40\u0e21\u0e19\u0e15\u0e4c IN/OUT \u0e43\u0e19\u0e1a\u0e25\u0e47\u0e2d\u0e04 PLSQL + +ORA-17438=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19 - \u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e04\u0e32\u0e14\u0e2b\u0e21\u0e32\u0e22 + +ORA-17439=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17 SQL \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17440=DBItem/DBType \u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17441=\u0e43\u0e0a\u0e49\u0e01\u0e31\u0e1a Oracle \u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 \u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e15\u0e48\u0e33\u0e2a\u0e38\u0e14\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e14\u0e49\u0e04\u0e37\u0e2d 7.2.3 + +ORA-17442=\u0e04\u0e48\u0e32 Refcursor \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17443=\u0e23\u0e30\u0e1a\u0e38\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e2b\u0e23\u0e37\u0e2d\u0e23\u0e2b\u0e31\u0e2a\u0e1c\u0e48\u0e32\u0e19\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25\u0e01\u0e31\u0e1a\u0e44\u0e14\u0e23\u0e40\u0e27\u0e2d\u0e23\u0e4c THIN \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17444=\u0e43\u0e0a\u0e49\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07\u0e42\u0e1b\u0e23\u0e42\u0e15\u0e04\u0e2d\u0e25 TTC \u0e17\u0e35\u0e48\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a\u0e08\u0e32\u0e01\u0e40\u0e0b\u0e34\u0e23\u0e4c\u0e1f\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b1/800e3b1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b1/800e3b1a98af001c18c4935e001381da new file mode 100644 index 0000000..5eaa365 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b1/800e3b1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/30d594f820af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/30d594f820af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..9d6f5b8 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/30d594f820af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=B\u0142\u0105d wewn\u0119trzny + +ORA-17002=Wyj\u0105tek we-wy + +ORA-17003=Niepoprawny indeks kolumny + +ORA-17004=Niepoprawny typ kolumny + +ORA-17005=Nieobs\u0142ugiwany typ kolumny + +ORA-17006=Niepoprawna nazwa kolumny + +ORA-17007=Niepoprawna kolumna dynamiczna + +ORA-17008=Zamkni\u0119te po\u0142\u0105czenie + +ORA-17009=Zamkni\u0119ta instrukcja + +ORA-17010=Zamkni\u0119ty zestaw wynik\u00f3w + +ORA-17011=Wyczerpany zestaw wynik\u00f3w + +ORA-17012=Konflikt typu parametru + +ORA-17014=Nie wywo\u0142ano ResultSet.next + +ORA-17015=Instrukcja zosta\u0142a anulowana + +ORA-17016=Przekroczono limit czasu instrukcji + +ORA-17017=Kursor jest ju\u017c zainicjalizowany + +ORA-17018=Niepoprawny kursor + +ORA-17019=Mo\u017cna tylko opisa\u0107 zapytanie + +ORA-17020=Niepoprawne wst\u0119pne pobranie wiersza + +ORA-17021=Brakuj\u0105ce definicje + +ORA-17022=Brakuj\u0105ce definicje w indeksie + +ORA-17023=Funkcja nieobs\u0142ugiwana + +ORA-17024=Nie odczytano danych + +ORA-17025=B\u0142\u0105d w defines.isNull () + +ORA-17026=Nadmiar numeryczny + +ORA-17027=Strumie\u0144 zosta\u0142 ju\u017c zamkni\u0119ty + +ORA-17028=Nie mo\u017cna wykona\u0107 nowych definicji, dop\u00f3ki bie\u017c\u0105cy zestaw wynik\u00f3w nie zostanie zamkni\u0119ty + +ORA-17029=setReadOnly: Po\u0142\u0105czenia \"tylko do odczytu\" nie s\u0105 obs\u0142ugiwane + +ORA-17030=Jedyne poprawne poziomy transakcji to READ_COMMITTED i SERIALIZABLE + +ORA-17031=setAutoClose: obs\u0142ugiwany tylko tryb \"on\" + +ORA-17032=nie mo\u017cna ustawi\u0107 wst\u0119pnego pobierania wierszy na zero + +ORA-17033=Zniekszta\u0142cony ci\u0105g SQL92 - pozycja + +ORA-17034=Nieobs\u0142ugiwany token SQL92 - pozycja + +ORA-17035=Nieobs\u0142ugiwany zestaw znak\u00f3w! + +ORA-17036=wyj\u0105tek w OracleNumber + +ORA-17037=Niepowodzenie konwersji mi\u0119dzy UTF8 i UCS2 + +ORA-17038=Za ma\u0142a tablica bajtowa + +ORA-17039=Za ma\u0142a tablica znakowa + +ORA-17040=Dla URL po\u0142\u0105czenia musi by\u0107 podany protok\u00f3\u0142 podrz\u0119dny + +ORA-17041=Brakuje parametru IN lub OUT przy indeksie: + +ORA-17042=Niepoprawna warto\u015b\u0107 wsadowa + +ORA-17043=Niepoprawny maksymalny rozmiar strumienia + +ORA-17044=B\u0142\u0105d wewn\u0119trzny: nie przydzielono tablicy danych + +ORA-17045=B\u0142\u0105d wewn\u0119trzny: pr\u00f3ba uzyskania dost\u0119pu do warto\u015bci wi\u0105zania poza warto\u015bci\u0105 wsadow\u0105 + +ORA-17046=B\u0142\u0105d wewn\u0119trzny: niepoprawny indeks dost\u0119pu do danych + +ORA-17047=B\u0142\u0105d podczas analizy sk\u0142adniowej deskryptora typu + +ORA-17048=Typ niezdefiniowany + +ORA-17049=Niesp\u00f3jne typy obiekt\u00f3w SQL i obiekt\u00f3w Javy + +ORA-17050=nie ma takiego elementu w wektorze + +ORA-17051=Ten interfejs API nie mo\u017ce by\u0107 u\u017cyty dla typ\u00f3w nie-UDT + +ORA-17052=To odwo\u0142anie jest niepoprawne + +ORA-17053=Ten rozmiar jest niepoprawny + +ORA-17054=Lokalizator LOB jest niepoprawny + +ORA-17055=Napotkano niepoprawny znak w + +ORA-17056=Nieobs\u0142ugiwany zestaw znak\u00f3w + +ORA-17057=Zamkni\u0119ty LOB + +ORA-17058=B\u0142\u0105d wewn\u0119trzny: niepoprawny wsp\u00f3\u0142czynnik konwersji NLS + +ORA-17059=Nie uda\u0142o si\u0119 przekszta\u0142ci\u0107 w reprezentacj\u0119 wewn\u0119trzn\u0105 + +ORA-17060=Nie uda\u0142o si\u0119 utworzy\u0107 deskryptora + +ORA-17061=Brakuj\u0105cy deskryptor + +ORA-17062=Kursor odwo\u0142ania jest niepoprawny + +ORA-17063=Nie w transakcji + +ORA-17064=Niepoprawna sk\u0142adnia lub nazwa bazy danych jest NULL + +ORA-17065=Klasa konwersji jest NULL + +ORA-17066=Wymagana specyficzna implementacja warstwy dost\u0119pu + +ORA-17067=Podano niepoprawny adres Oracle URL + +ORA-17068=Niepoprawne argumenty w wywo\u0142aniu + +ORA-17069=Prosz\u0119 u\u017cy\u0107 bezpo\u015bredniego wywo\u0142ania XA + +ORA-17070=Rozmiar danych jest wi\u0119kszy ni\u017c maksymalny, dopuszczalny dla tego typu + +ORA-17071=Przekroczono maksymaln\u0105 granic\u0119 VARRAY + +ORA-17072=Wstawiana warto\u015b\u0107 jest zbyt du\u017ca dla kolumny + +ORA-17073=Uchwyt logiczny nie jest ju\u017c poprawny + +ORA-17074=niepoprawny wzorzec nazwy + +ORA-17075=Niepoprawna operacja dla zestawu wynik\u00f3w \"tylko do przes\u0142ania\" + +ORA-17076=Niepoprawna operacja dla zestawu wynik\u00f3w \"tylko do odczytu\" + +ORA-17077=Nie uda\u0142o si\u0119 ustawi\u0107 warto\u015bci REF + +ORA-17078=Nie mo\u017cna wykona\u0107 operacji, poniewa\u017c po\u0142\u0105czenia s\u0105 ju\u017c otwarte + +ORA-17079=Uwierzytelnienia u\u017cytkownika r\u00f3\u017cni\u0105 si\u0119 od istniej\u0105cych + +ORA-17080=niepoprawne polecenie wsadowe + +ORA-17081=podczas operacji wsadowej wyst\u0105pi\u0142 b\u0142\u0105d + +ORA-17082=Nie bie\u017c\u0105cy wiersz + +ORA-17083=Nie we wstawianym wierszu + +ORA-17084=Wywo\u0142anie wstawianego wiersza + +ORA-17085=Wyst\u0119puje konflikt warto\u015bci + +ORA-17086=Niezdefiniowana warto\u015b\u0107 kolumny we wstawianym wierszu + +ORA-17087=Zignorowano podpowied\u017a: setFetchDirection() + +ORA-17088=Nieobs\u0142ugiwana sk\u0142adnia dla \u017c\u0105danego typu zestawu wynik\u00f3w i poziomu wsp\u00f3\u0142bie\u017cno\u015bci +ORA-17089=b\u0142\u0105d wewn\u0119trzny + +ORA-17090=niedozwolona operacja + +ORA-17091=Nie mo\u017cna utworzy\u0107 zestawu wyniku \u017c\u0105danego typu i/lub poziomu wsp\u00f3\u0142bie\u017cno\u015bci + +ORA-17092=Instrukcje JDBC nie mog\u0105 by\u0107 utworzone lub wykonane na ko\u0144cu przetwarzania wywo\u0142ania + +ORA-17093=Operacja OCI zwr\u00f3ci\u0142a OCI_SUCCESS_WITH_INFO + +ORA-17094=Niezgodno\u015b\u0107 wersji typu obiektu + +ORA-17095=Nie ustawiono rozmiaru podr\u0119cznej pami\u0119ci instrukcji + +ORA-17096=Buforowanie instrukcji nie mo\u017ce by\u0107 w\u0142\u0105czone dla tego po\u0142\u0105czenia logicznego. + +ORA-17097=Niepoprawny typ elementu tabeli indeksu PL/SQL + +ORA-17098=Niepoprawna operacja opr\u00f3\u017cnienia LOB + +ORA-17099=Niepoprawna d\u0142ugo\u015b\u0107 tablicy dla tabeli indeksu PL/SQL + +ORA-17100=Niepoprawny obiekt Java bazy danych + +ORA-17101=Niepoprawne w\u0142a\u015bciwo\u015bci obiektu puli po\u0142\u0105cze\u0144 OCI + +ORA-17102=BFILE jest tylko do odczytu + +ORA-17103=przez getConnection zostanie zwr\u00f3cony niepoprawny typ po\u0142\u0105czenia. Zamiast tego prosz\u0119 u\u017cy\u0107 getJavaSqlConnection + +ORA-17104=instrukcja SQL do wykonania nie mo\u017ce by\u0107 ani pusta, ani Null + +ORA-17105=nie zosta\u0142a okre\u015blona strefa czasowa po\u0142\u0105czenia sesji + +ORA-17106=okre\u015blono niepoprawn\u0105 konfiguracj\u0119 puli po\u0142\u0105cze\u0144 programu obs\u0142ugi JDBC-OCI + +ORA-17107=podano niepoprawny typ proxy + +ORA-17108=W defineColumnType nie podano maksymalnej d\u0142ugo\u015bci + +ORA-17109=nie znaleziono standardowego kodowania znak\u00f3w w Javie + +ORA-17110=wykonywanie uko\u0144czono z ostrze\u017ceniem + +ORA-17111=Podano niepoprawny limit czasu TTL pami\u0119ci podr\u0119cznej po\u0142\u0105cze\u0144 + +ORA-17112=Podano niepoprawny interwa\u0142 w\u0105tku + +ORA-17113=Interwa\u0142 w\u0105tku jest wi\u0119kszy ni\u017c limit czasu pami\u0119ci podr\u0119cznej + +ORA-17114=nie uda\u0142o si\u0119 u\u017cy\u0107 lokalnego zatwierdzania transakcji w transakcji globalnej + +ORA-17115=nie uda\u0142o si\u0119 u\u017cy\u0107 lokalnego wycofywania transakcji w transakcji globalnej + +ORA-17116=nie uda\u0142o si\u0119 w\u0142\u0105czy\u0107 automatycznego zatwierdzania w aktywnej globalnej transakcji + +ORA-17117=nie uda\u0142o si\u0119 ustawi\u0107 punktu zapisywania w aktywnej globalnej transakcji + +ORA-17118=nie uda\u0142o si\u0119 uzyska\u0107 identyfikatora dla nazwanego punktu zapisywania + +ORA-17119=nie uda\u0142o si\u0119 uzyska\u0107 identyfikatora dla nienazwanego punktu zapisywania + +ORA-17120=nie uda\u0142o si\u0119 ustawi\u0107 punktu zapisywania z w\u0142\u0105czonym automatycznym zatwierdzaniem + +ORA-17121=nie uda\u0142o si\u0119 wycofa\u0107 do punktu zapisywania z w\u0142\u0105czonym automatycznym zatwierdzaniem + +ORA-17122=w transakcji globalnej nie uda\u0142o si\u0119 wycofa\u0107 do lokalnego punktu zapisywania transakcji + +ORA-17123=Podano niepoprawny rozmiar podr\u0119cznej pami\u0119ci instrukcji + +ORA-17124=Podano niepoprawny limit czasu nieaktywno\u015bci pami\u0119ci podr\u0119cznej po\u0142\u0105cze\u0144 + +ORA-17200=Nie mo\u017cna poprawnie przekonwertowa\u0107 ci\u0105gu otwieraj\u0105cego XA z Javy do C + +ORA-17201=Nie mo\u017cna poprawnie przekonwertowa\u0107 ci\u0105gu zamykaj\u0105cego XA z Javy do C + +ORA-17202=Nie mo\u017cna poprawnie przekonwertowa\u0107 nazwy RM z Javy do C + +ORA-17203=Nie uda\u0142o si\u0119 zmieni\u0107 typu wska\u017anika na jlong + +ORA-17204=Tablica wej\u015bciowa zbyt ma\u0142a, aby pomie\u015bci\u0107 uchwyty OCI + +ORA-17205=Nie uda\u0142o si\u0119 uzyska\u0107 uchwytu OCISvcCtx z C-XA u\u017cywaj\u0105c xaoSvcCtx + +ORA-17206=Nie uda\u0142o si\u0119 uzyska\u0107 uchwytu OCIEnv z C-XA u\u017cywaj\u0105c xaoEnv + +ORA-17207=W\u0142a\u015bciwo\u015b\u0107 tnsEntry nie zosta\u0142a okre\u015blona w DataSource + +ORA-17213=C-XA zwr\u00f3ci\u0142o XAER_RMERR podczas xa_open + +ORA-17215=C-XA zwr\u00f3ci\u0142o XAER_INVAL podczas xa_open + +ORA-17216=C-XA zwr\u00f3ci\u0142o XAER_PROTO podczas xa_open + +ORA-17233=C-XA zwr\u00f3ci\u0142o XAER_RMERR podczas xa_close + +ORA-17235=C-XA zwr\u00f3ci\u0142o XAER_INVAL podczas xa_close + +ORA-17236=C-XA zwr\u00f3ci\u0142o XAER_PROTO podczas xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Naruszenie protoko\u0142u + +ORA-17402=Jest oczekiwany tylko jeden komunikat RPA + +ORA-17403=Jest oczekiwany tylko jeden komunikat RXH + +ORA-17404=Otrzymano wi\u0119cej komunikat\u00f3w RXD ni\u017c oczekiwano + +ORA-17405=D\u0142ugo\u015b\u0107 UAC nie jest r\u00f3wna zero + +ORA-17406=Przekroczono maksymalny rozmiar bufora + +ORA-17407=niepoprawna reprezentacja typu (setRep) + +ORA-17408=niepoprawna reprezentacja typu (getRep) + +ORA-17409=niepoprawny rozmiar bufora + +ORA-17410=Nie ma wi\u0119cej danych do odczytu z gniazda + +ORA-17411=Niezgodno\u015b\u0107 reprezentacji typ\u00f3w danych + +ORA-17412=D\u0142ugo\u015b\u0107 typu wi\u0119ksza ni\u017c maksymalna + +ORA-17413=Przekroczono rozmiar klucza + +ORA-17414=Za ma\u0142y rozmiar bufora, aby przechowa\u0107 nazwy kolumn + +ORA-17415=Ten typ nie zosta\u0142 obs\u0142u\u017cony + +ORA-17416=FATAL + +ORA-17417=Problem NLS - nie uda\u0142o si\u0119 zdekodowa\u0107 nazw kolumn + +ORA-17418=B\u0142\u0105d d\u0142ugo\u015bci pola wewn\u0119trznej struktury + +ORA-17419=Zosta\u0142a zwr\u00f3cona niepoprawna liczba kolumn + +ORA-17420=Niezdefiniowana wersja Oracle + +ORA-17421=Niezdefiniowane typy lub niezdefiniowane po\u0142\u0105czenie + +ORA-17422=Niepoprawna klasa w fabryce + +ORA-17423=U\u017cycie bloku PLSQL bez zdefiniowanej IOV + +ORA-17424=Pr\u00f3ba innej operacji zbierania + +ORA-17425=Zwracany strumie\u0144 w bloku PLSQL + +ORA-17426=Oba wi\u0119zy IN i OUT s\u0105 NULL + +ORA-17427=U\u017cycie niezainicjalizowanego OAC + +ORA-17428=Po po\u0142\u0105czeniu trzeba wywo\u0142a\u0107 logowanie (logon) + +ORA-17429=Przynajmniej musi by\u0107 nawi\u0105zane po\u0142\u0105czenie z serwerem + +ORA-17430=Trzeba by\u0107 zalogowanym do serwera + +ORA-17431=Instrukcja SQL przeznaczona do analizy sk\u0142adniowej jest NULL + +ORA-17432=niepoprawne opcje w all7 + +ORA-17433=niepoprawne argumenty w wywo\u0142aniu + +ORA-17434=nie w trybie strumieniowania + +ORA-17435=niepoprawna liczba in_out_binds w IOV + +ORA-17436=niepoprawna liczba wi\u0119z\u00f3w out + +ORA-17437=B\u0142\u0105d w argumencie (argumentach) IN/OUT bloku PLSQL + +ORA-17438=Wewn\u0119trzny - nieoczekiwana warto\u015b\u0107 + +ORA-17439=Niepoprawny typ SQL + +ORA-17440=Element bazy danych/Typ bazy danych jest NULL + +ORA-17441=Nieobs\u0142ugiwana wersja Oracle. Najni\u017csza obs\u0142ugiwana wersja to 7.2.3. + +ORA-17442=Niepoprawna warto\u015b\u0107 kursora odwo\u0142ania + +ORA-17443=W programie obs\u0142ugi THIN nie jest dozwolony ani u\u017cytkownik NULL, ani has\u0142o NULL + +ORA-17444=Uzyskana z serwera wersja protoko\u0142u TTC nie jest obs\u0142ugiwana + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/7031051a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/7031051a98af001c18c4935e001381da new file mode 100644 index 0000000..5b594ea Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/7031051a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/70f9d21598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/70f9d21598af001c18c4935e001381da new file mode 100644 index 0000000..21ca7e7 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/70f9d21598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/90ff7712cca4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/90ff7712cca4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..4581e14 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/90ff7712cca4001c1acc9f54b60f9b57 @@ -0,0 +1,92 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche, FlowLayout.LEFT); + + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/a0406c764aaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/a0406c764aaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..a7f7698 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/a0406c764aaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,195 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + Principale.this.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/a0a33d1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/a0a33d1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..7903d22 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/a0a33d1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Vnit\u0159n\u00ed chyba + +ORA-17002=V\u00fdjimka vstupu/v\u00fdstupu + +ORA-17003=Neplatn\u00fd index sloupce + +ORA-17004=Neplatn\u00fd typ sloupce + +ORA-17005=Nepodporovan\u00fd typ sloupce + +ORA-17006=Neplatn\u00fd n\u00e1zev sloupce + +ORA-17007=Neplatn\u00fd dynamick\u00fd sloupec + +ORA-17008=Ukon\u010den\u00e9 p\u0159ipojen\u00ed + +ORA-17009=Uzav\u0159en\u00fd p\u0159\u00edkaz + +ORA-17010=Uzav\u0159en\u00e1 mno\u017eina v\u00fdsledk\u016f + +ORA-17011=Vy\u010derpan\u00e1 mno\u017eina v\u00fdsledk\u016f + +ORA-17012=Konflikt typu parametr\u016f + +ORA-17014=Nebyl vyvol\u00e1n ResultSet.next + +ORA-17015=P\u0159\u00edkaz byl zru\u0161en + +ORA-17016=\u010casov\u00fd limit pro p\u0159\u00edkaz vypr\u0161el + +ORA-17017=Kurzor je ji\u017e inicializov\u00e1n + +ORA-17018=Neplatn\u00fd kurzor + +ORA-17019=Lze popsat jen dotaz + +ORA-17020=Neplatn\u00e9 p\u0159edb\u011b\u017en\u00e9 vyvol\u00e1n\u00ed \u0159\u00e1dku + +ORA-17021=Chyb\u011bj\u00edc\u00ed definice + +ORA-17022=Chyb\u011bj\u00edc\u00ed definice v indexu + +ORA-17023=Nepodporovan\u00e1 funkce + +ORA-17024=Nena\u010dtena \u017e\u00e1dn\u00e1 data + +ORA-17025=Chyba v defines.isNull () + +ORA-17026=\u010c\u00edseln\u00e9 p\u0159ete\u010den\u00ed + +ORA-17027=Proud dat je ji\u017e uzav\u0159en + +ORA-17028=Nelze prov\u00e1d\u011bt nov\u00e9 definice, dokud nebude uzav\u0159ena aktu\u00e1ln\u00ed mno\u017eina v\u00fdsledk\u016f + +ORA-17029=setReadOnly: Spojen\u00ed Read-only nejsou podporov\u00e1na + +ORA-17030=READ_COMMITTED a SERIALIZABLE jsou jedin\u00e9 platn\u00e9 \u00farovn\u011b transakc\u00ed + +ORA-17031=setAutoClose: Podpora jen zapnut\u00e9ho re\u017eimu automatick\u00e9ho zav\u00edr\u00e1n\u00ed + +ORA-17032=nelze nastavit p\u0159edb\u011b\u017en\u00e9 vyvol\u00e1n\u00ed \u0159\u00e1dku na nulu + +ORA-17033=Chybn\u011b formulovan\u00fd \u0159et\u011bzec SQL92 na pozici + +ORA-17034=Nepodporovan\u00e1 lexik\u00e1ln\u00ed jednotka SQL92 na pozici + +ORA-17035=Nepodporovan\u00e1 znakov\u00e1 sada !! + +ORA-17036=v\u00fdjimka v OracleNumber + +ORA-17037=Selh\u00e1n\u00ed p\u0159i konverzi mezi UTF8 a UCS2 + +ORA-17038=Nedostate\u010dn\u00e1 d\u00e9lka bajtov\u00e9ho pole + +ORA-17039=Nedostate\u010dn\u00e1 d\u00e9lka znakov\u00e9ho pole + +ORA-17040=Je t\u0159eba zadat Sub Protokol v p\u0159ipojovac\u00ed URL + +ORA-17041=Chyb\u011bj\u00edc\u00ed parametr IN nebo OUT v indexu: + +ORA-17042=Neplatn\u00e1 hodnota d\u00e1vky + +ORA-17043=Neplatn\u00e1 maxim\u00e1ln\u00ed velikost toku + +ORA-17044=Vnit\u0159n\u00ed chyba: Nebylo alokov\u00e1no datov\u00e9 pole + +ORA-17045=Vnit\u0159n\u00ed chyba: Pokus o p\u0159\u00edstup k vazebn\u00edm hodnot\u00e1m mimo hodnotu d\u00e1vky + +ORA-17046=Vnit\u0159n\u00ed chyba: Neplatn\u00fd index pro p\u0159\u00edstup k dat\u016fm + +ORA-17047=Chyba v anal\u00fdze Deskriptoru typu + +ORA-17048=Nedefinovan\u00fd typ + +ORA-17049=Nekonzistentn\u00ed typy objektu java a sql + +ORA-17050=\u017e\u00e1dn\u00fd takov\u00fd prvek ve vektoru + +ORA-17051=Toto API nelze pou\u017e\u00edt pro jin\u00fd typ ne\u017e UDT + +ORA-17052=Tento odkaz je neplatn\u00fd + +ORA-17053=Tato velikost je neplatn\u00e1 + +ORA-17054=Lok\u00e1tor LOB je neplatn\u00fd + +ORA-17055=Nalezen neplatn\u00fd znak v + +ORA-17056=Nepodporovan\u00e1 znakov\u00e1 sada + +ORA-17057=Uzav\u0159en\u00fd LOB + +ORA-17058=Vnit\u0159n\u00ed chyba: Neplatn\u00fd p\u0159evodov\u00fd pom\u011br NLS + +ORA-17059=Selh\u00e1n\u00ed p\u0159i p\u0159evodu na vnit\u0159n\u00ed reprezentaci + +ORA-17060=Selh\u00e1n\u00ed p\u0159i vytv\u00e1\u0159en\u00ed deskriptoru + +ORA-17061=Chyb\u011bj\u00edc\u00ed deskriptor + +ORA-17062=Kurzor odkazu je neplatn\u00fd + +ORA-17063=Nen\u00ed v transakci + +ORA-17064=Neplatn\u00e1 syntaxe nebo pr\u00e1zdn\u00fd n\u00e1zev datab\u00e1ze + +ORA-17065=P\u0159evodn\u00ed t\u0159\u00edda je pr\u00e1zdn\u00e1 + +ORA-17066=Je t\u0159eba specifick\u00e9 zaveden\u00ed \u00farovn\u011b p\u0159\u00edstupu + +ORA-17067=Neplatn\u011b zadan\u00e1 Oracle URL + +ORA-17068=Vol\u00e1n\u00ed neplatn\u00e9ho argumentu(-\u016f) + +ORA-17069=Pou\u017eijte z\u0159eteln\u00e9 vol\u00e1n\u00ed XA + +ORA-17070=Velikost dat je v\u011bt\u0161\u00ed ne\u017e maxim\u00e1ln\u00ed velikost pro tento typ + +ORA-17071=P\u0159ekro\u010den maxim\u00e1ln\u00ed limit VARRAY + +ORA-17072=Vlo\u017een\u00e1 hodnota je pro sloupec p\u0159\u00edli\u0161 velk\u00e1 + +ORA-17073=Logick\u00fd odkaz ji\u017e neplat\u00ed + +ORA-17074=neplatn\u00fd vzor n\u00e1zvu + +ORA-17075=Neplatn\u00e1 operace pro mno\u017einu v\u00fdsledk\u016f jen pro p\u0159ed\u00e1n\u00ed + +ORA-17076=Neplatn\u00e1 operace pro mno\u017einu v\u00fdsledk\u016f jen pro \u010dten\u00ed + +ORA-17077=Selhalo nastaven\u00ed hodnoty REF + +ORA-17078=Nelze prov\u00e9st operaci, proto\u017ee p\u0159ipojen\u00ed je ji\u017e otev\u0159eno + +ORA-17079=Ov\u011b\u0159ovac\u00ed \u00fadaje u\u017eivatele neodpov\u00edd\u00e1 st\u00e1vaj\u00edc\u00edm \u00fadaj\u016fm + +ORA-17080=neplatn\u00fd p\u0159\u00edkaz d\u00e1vky + +ORA-17081=p\u0159i vytv\u00e1\u0159en\u00ed d\u00e1vky se vyskytla chyba + +ORA-17082=Nen\u00ed aktu\u00e1ln\u00ed \u0159\u00e1dek + +ORA-17083=Nen\u00ed na vlo\u017een\u00e9m \u0159\u00e1dku + +ORA-17084=Vol\u00e1no na vlo\u017een\u00e9m \u0159\u00e1dku + +ORA-17085=Doch\u00e1z\u00ed ke konflikt\u016fm hodnot + +ORA-17086=Ve vlo\u017een\u00e9m \u0159\u00e1dku je nedefinovan\u00e1 hodnota sloupce + +ORA-17087=Ignorovan\u00e9 upozorn\u011bn\u00ed na v\u00fdkon: setFetchDirection() + +ORA-17088=Nepodporovan\u00e1 syntaxe pro po\u017eadovan\u00fd typ mno\u017einy v\u00fdsledk\u016f a \u00farove\u0148 soub\u011b\u017en\u00e9ho zpracov\u00e1n\u00ed +ORA-17089=vnit\u0159n\u00ed chyba + +ORA-17090=operace nen\u00ed povolena + +ORA-17091=Nelze vytvo\u0159it mno\u017einu v\u00fdsledk\u016f po\u017eadovan\u00e9ho typu nebo na soub\u011b\u017en\u00e9 \u00farovni + +ORA-17092=Na konci zpracov\u00e1n\u00ed vol\u00e1n\u00ed nelze vytvo\u0159it ani prov\u00e9st p\u0159\u00edkazy JDBC + +ORA-17093=Operace OCI vr\u00e1tila OCI_SUCCESS_WITH_INFO + +ORA-17094=Nen\u00ed shoda verze typu objektu + +ORA-17095=Velikost vyrovn\u00e1vac\u00ed pam\u011bti p\u0159\u00edkazu nebyla nastavena + +ORA-17096=Ukl\u00e1d\u00e1n\u00ed p\u0159\u00edkaz\u016f do vyrovn\u00e1vac\u00ed pam\u011bti nelze pro toto logick\u00e9 p\u0159ipojen\u00ed aktivovat + +ORA-17097=Neplatn\u00fd typ prvku tabulky indexu PL/SQL + +ORA-17098=Neplatn\u00e1 pr\u00e1zdn\u00e1 operace lob + +ORA-17099=Neplatn\u00e1 d\u00e9lka pole indexov\u00e9 tabulky PL/SQL + +ORA-17100=Neplatn\u00e1 datab\u00e1ze Java Object + +ORA-17101=Neplatn\u00e9 vlastnosti v OCI Connection Pool Object + +ORA-17102=Bfile je jen ke \u010dten\u00ed + +ORA-17103=getConnection vr\u00e1til neplatn\u00fd typ spojen\u00ed. M\u00edsto toho pou\u017eijte getJavaSqlConnection + +ORA-17104=P\u0159\u00edkaz SQL, kter\u00fd se m\u00e1 prov\u00e9st, nesm\u00ed b\u00fdt pr\u00e1zdn\u00fd nebo nab\u00fdvat hondoty null + +ORA-17105=nebyla nastavena \u010dasov\u00e1 z\u00f3na pro relaci p\u0159ipojen\u00ed + +ORA-17106=byla specifikov\u00e1na neplatn\u00e1 konfigurace fondu p\u0159ipojen\u00ed ovlada\u010de JDBC-OCI + +ORA-17107=byl specifikov\u00e1n neplatn\u00fd typ proxy + +ORA-17108=Nebyla specifikov\u00e1na maxim\u00e1ln\u00ed d\u00e9lka v defineColumnType + +ORA-17109=nebylo nalezeno standardn\u00ed k\u00f3dov\u00e1n\u00ed znak\u016f Java + +ORA-17110=prov\u00e1d\u011bn\u00ed k\u00f3du bylo dokon\u010deno s varov\u00e1n\u00edm + +ORA-17111=Byl specifikov\u00e1n neplatn\u00fd \u010dasov\u00fd limit TTL pam\u011bti cache pro p\u0159ipojen\u00ed + +ORA-17112=Byl specifikov\u00e1n neplatn\u00fd interval vl\u00e1kna + +ORA-17113=Hodnota intervalu vl\u00e1kna je v\u011bt\u0161\u00ed ne\u017e hodnota \u010dasov\u00e9ho limitu pam\u011bti cache + +ORA-17114=nebylo mo\u017en\u00e9 pou\u017e\u00edt potvrzen\u00ed lok\u00e1ln\u00ed transakce v glob\u00e1ln\u00ed transakci + +ORA-17115=nebylo mo\u017en\u00e9 pou\u017e\u00edt n\u00e1vrat lok\u00e1ln\u00ed transakce v glob\u00e1ln\u00ed transakci + +ORA-17116=nebylo mo\u017en\u00e9 zapnout automatick\u00e9 potvrzen\u00ed v aktivn\u00ed glob\u00e1ln\u00ed transakci + +ORA-17117=nebylo mo\u017en\u00e9 nastavit bod ulo\u017een\u00ed v aktivn\u00ed glob\u00e1ln\u00ed transakci + +ORA-17118=nebylo mo\u017en\u00e9 z\u00edskat ID pro pojmenovan\u00fd bod ulo\u017een\u00ed + +ORA-17119=nebylo mo\u017en\u00e9 z\u00edskat ID pro nepojmenovan\u00fd bod ulo\u017een\u00ed + +ORA-17120=nebylo mo\u017en\u00e9 nastavit bod ulo\u017een\u00ed se zapnut\u00fdm automatick\u00fdm potvrzen\u00edm + +ORA-17121=nebylo mo\u017en\u00e9 prov\u00e9st n\u00e1vrat do bodu ulo\u017een\u00ed se zapnut\u00fdm automatick\u00fdm potvrzen\u00edm + +ORA-17122=nebylo mo\u017en\u00e9 prov\u00e9st n\u00e1vrat do lok\u00e1ln\u00edho bodu ulo\u017een\u00ed txn v glob\u00e1ln\u00ed transakci + +ORA-17123=Byla specifikov\u00e1na neplatn\u00e1 velikost pam\u011bti cache p\u0159\u00edkazu + +ORA-17124=Byl specifikov\u00e1n neplatn\u00fd \u010dasov\u00fd limit ne\u010dinnosti pam\u011bti cache pro p\u0159ipojen\u00ed + +ORA-17200=Nelze spr\u00e1vn\u011b konvertovat otev\u0159en\u00fd \u0159et\u011bzec XA z Java do C + +ORA-17201=Nelze spr\u00e1vn\u011b konvertovat zav\u0159en\u00fd \u0159et\u011bzec XA z Java do C + +ORA-17202=Nelze spr\u00e1vn\u011b konvertovat n\u00e1zev RM z Java do C + +ORA-17203=Nebylo mo\u017en\u00e9 zm\u011bnit typ ukazatele na jlong + +ORA-17204=Vstupn\u00ed pole je p\u0159\u00edli\u0161 kr\u00e1tk\u00e9, aby se do n\u011bj ve\u0161ly deskriptory OCI + +ORA-17205=Selhalo z\u00edsk\u00e1n\u00ed deskriptoru OCISvcCtx z C-XA pomoc\u00ed xaoSvcCtx + +ORA-17206=Selhalo z\u00edsk\u00e1n\u00ed deskriptoru OCIEnv z C-XA pomoc\u00ed xaoEnv + +ORA-17207=Vlastnost tnsEntry nebyla v DataSource nastavena + +ORA-17213=C-XA vr\u00e1til XAER_RMERR b\u011bhem xa_open + +ORA-17215=C-XA vr\u00e1til XAER_INVAL b\u011bhem xa_open + +ORA-17216=C-XA vr\u00e1til XAER_PROTO b\u011bhem xa_open + +ORA-17233=C-XA vr\u00e1til XAER_RMERR b\u011bhem xa_close + +ORA-17235=C-XA vr\u00e1til XAER_INVAL b\u011bhem xa_close + +ORA-17236=C-XA vr\u00e1til XAER_PROTO b\u011bhem xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Poru\u0161en\u00ed protokolu + +ORA-17402=O\u010dek\u00e1v\u00e1 se pouze jedna zpr\u00e1va RPA + +ORA-17403=O\u010dek\u00e1v\u00e1 se pouze jedna zpr\u00e1va RXH + +ORA-17404=P\u0159ijato v\u00edce RXD ne\u017e bylo o\u010dek\u00e1v\u00e1no + +ORA-17405=D\u00e9lka UAC nen\u00ed nulov\u00e1 + +ORA-17406=P\u0159ekro\u010dena maxim\u00e1ln\u00ed d\u00e9lka vyrovn\u00e1vac\u00ed pam\u011bti + +ORA-17407=Neplatn\u00e1 reprezentace typu(setRep) + +ORA-17408=Neplatn\u00e1 reprezentace typu(getRep) + +ORA-17409=neplatn\u00e1 d\u00e9lka vyrovn\u00e1vac\u00ed pam\u011bti + +ORA-17410=\u017d\u00e1dn\u00e1 dal\u0161\u00ed data ke \u010dten\u00ed ze soketu + +ORA-17411=Neshoda reprezentace typu dat + +ORA-17412=D\u00e9lka typu v\u011bt\u0161\u00ed ne\u017e maximum + +ORA-17413=P\u0159ekro\u010den\u00ed velikosti kl\u00ed\u010de + +ORA-17414=Nedostate\u010dn\u00e1 velikost vyrovn\u00e1vac\u00ed pam\u011bti pro ulo\u017een\u00ed n\u00e1zv\u016f sloupc\u016f + +ORA-17415=Tento typ nebyl zpracov\u00e1v\u00e1n + +ORA-17416=FATAL + +ORA-17417=Probl\u00e9m NLS, selh\u00e1n\u00ed p\u0159i dek\u00f3dov\u00e1n\u00ed n\u00e1zv\u016f sloupc\u016f + +ORA-17418=Chyba v d\u00e9lce pole intern\u00ed struktury + +ORA-17419=Vr\u00e1cen neplatn\u00fd po\u010det sloupc\u016f + +ORA-17420=Verze Oracle nen\u00ed definov\u00e1na + +ORA-17421=Nejsou definov\u00e1ny typy nebo p\u0159ipojen\u00ed + +ORA-17422=Neplatn\u00e1 t\u0159\u00edda v producentovi + +ORA-17423=Pou\u017eit\u00ed bloku PLSQL bez definov\u00e1n\u00ed IOV + +ORA-17424=Pokus o r\u016fzn\u00e9 marshaling operace (konverze na line\u00e1rn\u00ed tok dat) + +ORA-17425=Vr\u00e1cen\u00ed proudu dat v bloku PLSQL + +ORA-17426=P\u0159i\u0159azen\u00ed IN i OUT je PR\u00c1ZDN\u00c9 + +ORA-17427=Pou\u017eit\u00ed neinicializovan\u00e9ho OAC + +ORA-17428=po p\u0159ipojen\u00ed je t\u0159eba vyvolat vytvo\u0159en\u00ed spojen\u00ed + +ORA-17429=Mus\u00ed b\u00fdt alespo\u0148 p\u0159ipojen k serveru + +ORA-17430=Mus\u00ed b\u00fdt p\u0159ihl\u00e1\u0161en k serveru + +ORA-17431=P\u0159\u00edkaz SQL pro odd\u011blen\u00ed je pr\u00e1zdn\u00fd + +ORA-17432=neplatn\u00e9 volby v all7 + +ORA-17433=vol\u00e1n\u00ed neplatn\u00fdch argument\u016f + +ORA-17434=nen\u00ed v proudov\u00e9m re\u017eimu + +ORA-17435=neplatn\u00fd po\u010det in_out_binds v IOV + +ORA-17436=neplatn\u00fd po\u010det outbinds + +ORA-17437=Chyba v argumentu(-ech) IN/OUT v bloku PLSQL + +ORA-17438=Intern\u00ed - neo\u010dek\u00e1van\u00e1 hodnota + +ORA-17439=Neplatn\u00fd typ SQL + +ORA-17440=DBItem/DBType je pr\u00e1zdn\u00fd + +ORA-17441=Nepodporovan\u00e1 verze Oracle. Minim\u00e1ln\u00ed podporovan\u00e1 verze je 7.2.3. + +ORA-17442=Hodnota odkazov\u00e9ho kurzoru je neplatn\u00e1 + +ORA-17443=Pr\u00e1zdn\u00fd u\u017eivatel nebo heslo nen\u00ed podporov\u00e1no v ovl\u00e1da\u010di THIN + +ORA-17444=Nepodporovan\u00e1 verze protokolu TTC p\u0159ijat\u00e1 ze serveru + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/b090fdfd04a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/b090fdfd04a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..7e4a306 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/b090fdfd04a4001c1027e59cc3e35e89 @@ -0,0 +1,75 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + "" + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/b0921e1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/b0921e1498af001c18c4935e001381da new file mode 100644 index 0000000..506a878 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/b0921e1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c0faab1398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c0faab1398af001c18c4935e001381da new file mode 100644 index 0000000..96788b6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c0faab1398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/10bae6e603a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/10bae6e603a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..d665349 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/10bae6e603a4001c1027e59cc3e35e89 @@ -0,0 +1,71 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.toString(); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + resultat.toString(); + + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/50d6b01698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/50d6b01698af001c18c4935e001381da new file mode 100644 index 0000000..82f8538 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/50d6b01698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/60ec091a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/60ec091a98af001c18c4935e001381da new file mode 100644 index 0000000..b8ad529 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/60ec091a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/60fbce1898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/60fbce1898af001c18c4935e001381da new file mode 100644 index 0000000..70ccc29 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b3/60fbce1898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b4/7060361498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b4/7060361498af001c18c4935e001381da new file mode 100644 index 0000000..ebf88e6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b4/7060361498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b4/90b2269ffbae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b4/90b2269ffbae001c14499bdcdfff58b3 new file mode 100644 index 0000000..2dcec1a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b4/90b2269ffbae001c14499bdcdfff58b3 @@ -0,0 +1,126 @@ +package fr.blankoworld.connexionBDD; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp; + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte."; + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse."; + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b4/a0c41e1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b4/a0c41e1598af001c18c4935e001381da new file mode 100644 index 0000000..f1a2ed2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b4/a0c41e1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b5/c02bf06607af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b5/c02bf06607af001c14499bdcdfff58b3 new file mode 100644 index 0000000..fdb40f8 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b5/c02bf06607af001c14499bdcdfff58b3 @@ -0,0 +1,19 @@ +package fr.blankoworld.ihm; + +import javax.swing.JButton; +import javax.swing.JFrame; + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + public IHMRequete(IHMPrincipale pr){ + + // Creation des boutons + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Annuler"); + + // Creation de la zone de texte + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/1072a9ca81a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/1072a9ca81a9001c1d3abf97745a02da new file mode 100644 index 0000000..ba9f167 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/1072a9ca81a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Importation de la fentre de Connexion +import Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + Connexion conn = new Connexion().setVisible(true); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/30574a1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/30574a1798af001c18c4935e001381da new file mode 100644 index 0000000..1c42584 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/30574a1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/40c2791e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/40c2791e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..51057a0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/40c2791e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea + +ORA-17002=\u05d7\u05e8\u05d9\u05d2\u05ea Io + +ORA-17003=\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17004=\u05e1\u05d5\u05d2 \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17005=\u05e1\u05d5\u05d2 \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05e0\u05ea\u05de\u05da + +ORA-17006=\u05e9\u05dd \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17007=\u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d4\u05d3\u05d9\u05e0\u05de\u05d9\u05ea \u05d0\u05d9\u05e0\u05d4 \u05ea\u05e7\u05e4\u05d4 + +ORA-17008=\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05e1\u05d2\u05e8\u05d4 + +ORA-17009=\u05de\u05e9\u05e4\u05d8 \u05e1\u05d2\u05d5\u05e8 + +ORA-17010=\u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05e1\u05d2\u05d5\u05e8 + +ORA-17011=\u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05de\u05e8\u05d5\u05e7\u05df + +ORA-17012=\u05e1\u05ea\u05d9\u05e8\u05d4 \u05d1\u05e1\u05d5\u05d2 \u05d4\u05e4\u05e8\u05de\u05d8\u05e8 + +ORA-17014=\u05dc\u05d0 \u05d1\u05d5\u05e6\u05e2\u05d4 \u05e7\u05e8\u05d9\u05d0\u05d4 \u05dc- ResultSet.next + +ORA-17015=\u05d4\u05de\u05e9\u05e4\u05d8 \u05d1\u05d5\u05d8\u05dc + +ORA-17016=\u05e4\u05e1\u05e7-\u05d6\u05de\u05df \u05d1\u05de\u05e9\u05e4\u05d8 + +ORA-17017=\u05d4\u05e1\u05de\u05df \u05db\u05d1\u05e8 \u05d0\u05d5\u05ea\u05d7\u05dc + +ORA-17018=\u05d4\u05e1\u05de\u05df \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17019=\u05e0\u05d9\u05ea\u05df \u05e8\u05e7 \u05dc\u05ea\u05d0\u05e8 \u05e9\u05d0\u05d9\u05dc\u05ea\u05d4 + +ORA-17020=\u05d4\u05d1\u05d0\u05d4 \u05de\u05d5\u05e7\u05d3\u05de\u05ea \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05e9\u05dc \u05e9\u05d5\u05e8\u05d4 + +ORA-17021=\u05d7\u05e1\u05e8\u05d5\u05ea \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea + +ORA-17022=\u05d7\u05e1\u05e8\u05d5\u05ea \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05d1\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 + +ORA-17023=\u05d4\u05ea\u05db\u05d5\u05e0\u05d4 \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea + +ORA-17024=\u05dc\u05d0 \u05e0\u05e7\u05e8\u05d0\u05d5 \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17025=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05d4\u05d2\u05d3\u05e8\u05d5\u05ea. \u05d4\u05df \u05e8\u05d9\u05e7\u05d5\u05ea (Null) () + +ORA-17026=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05de\u05e1\u05e4\u05e8\u05d9\u05ea + +ORA-17027=\u05d4\u05d6\u05e8\u05dd \u05db\u05d1\u05e8 \u05e0\u05e1\u05d2\u05e8 + +ORA-17028=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05e7\u05d1\u05d5\u05e2 \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05d7\u05d3\u05e9\u05d5\u05ea \u05e2\u05d3 \u05e9\u05d9\u05d9\u05e1\u05d2\u05e8 \u05e1\u05dc \u05d4\u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05d4\u05e0\u05d5\u05db\u05d7\u05d9 + +ORA-17029=setReadOnly: \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4-\u05d1\u05dc\u05d1\u05d3 \u05d0\u05d9\u05e0\u05df \u05e0\u05ea\u05de\u05db\u05d5\u05ea + +ORA-17030=READ_COMMITTED \u05d5- SERIALIZABLE \u05d4\u05df \u05e8\u05de\u05d5\u05ea \u05d4\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d4\u05d9\u05d7\u05d9\u05d3\u05d5\u05ea \u05d4\u05ea\u05e7\u05e4\u05d5\u05ea + +ORA-17031=setAutoClose: \u05e8\u05e7 \u05de\u05e6\u05d1 \u05d4\u05e1\u05d2\u05d9\u05e8\u05d4 \u05d4\u05d0\u05d5\u05d8\u05d5\u05de\u05d8\u05d9\u05ea \u05e9\u05dc \u05d4\u05ea\u05de\u05d9\u05db\u05d4 \u05de\u05d5\u05e4\u05e2\u05dc + +ORA-17032=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d0\u05e4\u05e1 \u05d0\u05ea \u05d4\u05d4\u05d2\u05d3\u05e8\u05d4 \u05d4\u05de\u05d5\u05e7\u05d3\u05de\u05ea \u05e9\u05dc \u05d4\u05e9\u05d5\u05e8\u05d4 + +ORA-17033=\u05de\u05d7\u05e8\u05d5\u05d6\u05ea SQL92 \u05dc\u05d0 \u05ea\u05e7\u05d9\u05e0\u05d4 \u05d1\u05de\u05d9\u05e7\u05d5\u05dd + +ORA-17034=\u05d0\u05e1\u05d9\u05de\u05d5\u05df SQL92 \u05dc\u05d0 \u05e0\u05ea\u05de\u05da \u05d1\u05de\u05d9\u05e7\u05d5\u05dd + +ORA-17035=\u05de\u05e2\u05e8\u05db\u05ea \u05d4\u05ea\u05d5\u05d5\u05d9\u05dd \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea! + +ORA-17036=\u05d7\u05e8\u05d9\u05d2 \u05d1-OracleNumber + +ORA-17037=\u05d4\u05d4\u05de\u05e8\u05d4 \u05d1\u05d9\u05df UTF8 \u05d5- UCS2 \u05e0\u05db\u05e9\u05dc\u05d4 + +ORA-17038=\u05de\u05e2\u05e8\u05da \u05d4\u05d1\u05d9\u05d9\u05d8\u05d9\u05dd \u05e7\u05e6\u05e8 \u05de\u05d3\u05d9 + +ORA-17039=\u05de\u05e2\u05e8\u05da \u05d4\u05ea\u05d5\u05d5\u05d9\u05dd \u05e7\u05e6\u05e8 \u05de\u05d3\u05d9 + +ORA-17040=\u05d9\u05e9 \u05dc\u05e6\u05d9\u05d9\u05df \u05d0\u05ea \u05e4\u05e8\u05d5\u05d8\u05d5\u05e7\u05d5\u05dc \u05d4\u05de\u05e9\u05e0\u05d4 \u05d1-URL \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea + +ORA-17041=\u05d7\u05e1\u05e8 \u05e4\u05e8\u05de\u05d8\u05e8 IN \u05d0\u05d5 OUT \u05d1\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1: + +ORA-17042=\u05e2\u05e8\u05da \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17043=\u05d2\u05d5\u05d3\u05dc \u05d4\u05d6\u05e8\u05dd \u05d4\u05de\u05e8\u05d1\u05d9 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17044=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05dc\u05d0 \u05d4\u05d5\u05e7\u05e6\u05d4 \u05de\u05e2\u05e8\u05da \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17045=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05e0\u05e2\u05e9\u05d4 \u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d2\u05e9\u05ea \u05dc\u05e2\u05e8\u05db\u05d9 \u05db\u05e8\u05d9\u05db\u05d4 \u05e9\u05de\u05e2\u05d1\u05e8 \u05dc\u05e2\u05e8\u05da \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 + +ORA-17046=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05d4\u05d2\u05d9\u05e9\u05d4 \u05dc\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17047=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05e0\u05d9\u05ea\u05d5\u05d7 \u05de\u05ea\u05d0\u05e8 \u05d4\u05e1\u05d5\u05d2 + +ORA-17048=\u05d4\u05e1\u05d5\u05d2 \u05d0\u05d9\u05e0\u05d5 \u05de\u05d5\u05d2\u05d3\u05e8 + +ORA-17049=\u05d7\u05d5\u05e1\u05e8 \u05d0\u05d7\u05d9\u05d3\u05d5\u05ea \u05d1\u05d9\u05df \u05e1\u05d5\u05d2\u05d9 \u05d4\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8\u05d9\u05dd \u05e9\u05dc java \u05d5- sql + +ORA-17050=\u05d0\u05dc\u05de\u05e0\u05d8 \u05d6\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05e7\u05d9\u05d9\u05dd \u05d1\u05d5\u05e7\u05d8\u05d5\u05e8 + +ORA-17051=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1- API \u05d6\u05d4 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05d5\u05d2\u05d9\u05dd \u05e9\u05d0\u05d9\u05e0\u05dd UDT + +ORA-17052=\u05d9\u05d7\u05d5\u05e1 \u05d6\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17053=\u05d4\u05d2\u05d5\u05d3\u05dc \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17054=\u05de\u05d0\u05ea\u05e8 \u05d4-LOBS \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17055=\u05e0\u05de\u05e6\u05d0 \u05ea\u05d5 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d1- + +ORA-17056=\u05de\u05e2\u05e8\u05db\u05ea \u05d4\u05ea\u05d5\u05d5\u05d9\u05dd \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea + +ORA-17057=LOB \u05e1\u05d2\u05d5\u05e8 + +ORA-17058=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05e9\u05d9\u05e2\u05d5\u05e8 \u05d4\u05de\u05e8\u05ea \u05d4- NLS \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17059=\u05d4\u05d4\u05de\u05e8\u05d4 \u05dc\u05d9\u05d9\u05e6\u05d5\u05d2 \u05e4\u05e0\u05d9\u05de\u05d9 \u05e0\u05db\u05e9\u05dc\u05d4 + +ORA-17060=\u05d1\u05e0\u05d9\u05d9\u05ea \u05d4\u05de\u05ea\u05d0\u05e8 \u05e0\u05db\u05e9\u05dc\u05d4 + +ORA-17061=\u05d7\u05e1\u05e8 \u05de\u05ea\u05d0\u05e8 + +ORA-17062=\u05e1\u05de\u05df \u05d4\u05d9\u05d9\u05d7\u05d5\u05e1 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17063=\u05dc\u05d0 \u05e0\u05de\u05e6\u05d0 \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 + +ORA-17064=\u05ea\u05d7\u05d1\u05d9\u05e8 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d0\u05d5 \u05e9\u05e9\u05dd \u05de\u05e1\u05d3 \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05d4\u05d5\u05d0 Null + +ORA-17065=\u05de\u05d7\u05dc\u05e7\u05ea \u05d4\u05d4\u05de\u05e8\u05d4 \u05d4\u05d9\u05d0 Null + +ORA-17066=\u05d9\u05e9 \u05dc\u05d9\u05d9\u05e9\u05dd \u05d1\u05d0\u05d5\u05e4\u05df \u05e1\u05e4\u05e6\u05d9\u05e4\u05d9 \u05d0\u05ea \u05e9\u05db\u05d1\u05ea \u05d4\u05d2\u05d9\u05e9\u05d4 + +ORA-17067=\u05e6\u05d5\u05d9\u05df URL \u05e9\u05dc Oracle \u05e9\u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17068=\u05d1\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d9\u05e9 \u05d0\u05e8\u05d2\u05d5\u05de\u05e0\u05d8\u05d9\u05dd \u05e9\u05d0\u05d9\u05e0\u05dd \u05ea\u05e7\u05e4\u05d9\u05dd + +ORA-17069=\u05d9\u05e9 \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1\u05e7\u05e8\u05d9\u05d0\u05ea XA \u05de\u05e4\u05d5\u05e8\u05e9\u05ea + +ORA-17070=\u05d2\u05d5\u05d3\u05dc \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05e2\u05d5\u05dc\u05d4 \u05e2\u05dc \u05d4\u05d2\u05d5\u05d3\u05dc \u05d4\u05de\u05e8\u05d1\u05d9 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05d5\u05d2 \u05d6\u05d4 + +ORA-17071=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05de\u05d4\u05d2\u05d1\u05d5\u05dc \u05d4\u05de\u05e8\u05d1\u05d9 \u05e9\u05dc VARRAY + +ORA-17072=\u05d4\u05e2\u05e8\u05da \u05e9\u05d4\u05d5\u05db\u05e0\u05e1 \u05d2\u05d3\u05d5\u05dc \u05de\u05d3\u05d9 \u05dc\u05e2\u05de\u05d5\u05d3\u05d4 + +ORA-17073=\u05d4\u05de\u05e6\u05d1\u05d9\u05e2 \u05d4\u05dc\u05d5\u05d2\u05d9 (logical handle) \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 \u05e2\u05d5\u05d3 + +ORA-17074=\u05d3\u05d2\u05dd \u05d4\u05e9\u05dd \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17075=\u05e4\u05e2\u05d5\u05dc\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05dc\u05e7\u05d9\u05d3\u05d5\u05dd \u05d1\u05dc\u05d1\u05d3 + +ORA-17076=\u05e4\u05e2\u05d5\u05dc\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d1\u05dc\u05d1\u05d3 + +ORA-17077=\u05db\u05d9\u05e9\u05dc\u05d5\u05df \u05d1\u05e7\u05d1\u05d9\u05e2\u05ea \u05e2\u05e8\u05da REF + +ORA-17078=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d1\u05e6\u05e2 \u05d0\u05ea \u05d4\u05e4\u05e2\u05d5\u05dc\u05d4, \u05e9\u05db\u05df \u05d4\u05d7\u05d9\u05d1\u05d5\u05e8\u05d9\u05dd \u05db\u05d1\u05e8 \u05e4\u05ea\u05d5\u05d7\u05d9\u05dd + +ORA-17079=\u05e0\u05ea\u05d5\u05e0\u05d9 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e9\u05dc \u05d4\u05de\u05e9\u05ea\u05de\u05e9 \u05d0\u05d9\u05e0\u05dd \u05ea\u05d5\u05d0\u05de\u05d9\u05dd \u05d0\u05ea \u05d0\u05dc\u05d4 \u05d4\u05e7\u05d9\u05d9\u05de\u05d9\u05dd + +ORA-17080=\u05e4\u05e7\u05d5\u05d3\u05ea \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 \u05d0\u05d9\u05e0\u05d4 \u05ea\u05e7\u05e4\u05d4 + +ORA-17081=\u05d0\u05e8\u05e2\u05d4 \u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05e2\u05ea \u05d9\u05e6\u05d9\u05e8\u05ea \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 + +ORA-17082=\u05d0\u05d9\u05df \u05e9\u05d5\u05e8\u05d4 \u05db\u05e2\u05ea + +ORA-17083=\u05dc\u05d0 \u05d1\u05e9\u05d5\u05e8\u05d4 \u05e9\u05d4\u05d5\u05db\u05e0\u05e1\u05d4 + +ORA-17084=\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d1\u05e9\u05d5\u05e8\u05d4 \u05dc\u05d4\u05db\u05e0\u05e1\u05d4 + +ORA-17085=\u05e1\u05ea\u05d9\u05e8\u05d4 \u05d1\u05e2\u05e8\u05db\u05d9\u05dd + +ORA-17086=\u05e2\u05e8\u05da \u05e2\u05de\u05d5\u05d3\u05d4 \u05dc\u05d0 \u05de\u05d5\u05d2\u05d3\u05e8 \u05d1\u05e9\u05d5\u05e8\u05d4 \u05e9\u05d4\u05d5\u05db\u05e0\u05e1\u05d4 + +ORA-17087=\u05d4\u05ea\u05e2\u05dc\u05de\u05d5\u05ea \u05de\u05e8\u05de\u05d6 \u05d4\u05d1\u05d9\u05e6\u05d5\u05e2\u05d9\u05dd: setFetchDirection() + +ORA-17088=\u05ea\u05d7\u05d1\u05d9\u05e8 \u05dc\u05d0 \u05e0\u05ea\u05de\u05da \u05e2\u05d1\u05d5\u05e8 \u05e1\u05d5\u05d2 \u05e1\u05d8 \u05d4\u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05d5\u05e8\u05de\u05ea \u05d4\u05de\u05e7\u05d1\u05d9\u05dc\u05d9\u05d5\u05ea \u05d4\u05de\u05d1\u05d5\u05e7\u05e9\u05d9\u05dd +ORA-17089=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea + +ORA-17090=\u05d4\u05e4\u05e2\u05d5\u05dc\u05d4 \u05d0\u05e1\u05d5\u05e8\u05d4 + +ORA-17091=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d9\u05e6\u05d5\u05e8 \u05e1\u05d8 \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05d1\u05e1\u05d5\u05d2 \u05d5/\u05d0\u05d5 \u05d1\u05e8\u05de\u05ea \u05d4\u05de\u05e7\u05d1\u05d9\u05dc\u05d9\u05d5\u05ea \u05d4\u05de\u05d1\u05d5\u05e7\u05e9\u05d9\u05dd + +ORA-17092=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d9\u05e6\u05d5\u05e8 \u05d0\u05d5 \u05dc\u05d1\u05e6\u05e2 \u05de\u05e9\u05e4\u05d8\u05d9 JDBC \u05d1\u05e1\u05d5\u05e3 \u05e2\u05d9\u05d1\u05d5\u05d3 \u05d4\u05e7\u05e8\u05d9\u05d0\u05d5\u05ea + +ORA-17093=\u05e4\u05e2\u05d5\u05dc\u05ea OCI \u05d4\u05d7\u05d6\u05d9\u05e8\u05d4 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u05d0\u05d9\u05df \u05d4\u05ea\u05d0\u05de\u05d4 \u05dc\u05d2\u05e8\u05e1\u05d4 \u05e9\u05dc \u05e1\u05d5\u05d2 \u05d4\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8 + +ORA-17095=\u05dc\u05d0 \u05e0\u05e7\u05d1\u05e2 \u05d2\u05d5\u05d3\u05dc \u05de\u05d8\u05de\u05d5\u05df \u05d4\u05de\u05e9\u05e4\u05d8\u05d9\u05dd + +ORA-17096=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d0\u05e4\u05e9\u05e8 \u05d4\u05e2\u05d1\u05e8\u05d4 \u05dc\u05de\u05d8\u05de\u05d5\u05df \u05e9\u05dc \u05de\u05e9\u05e4\u05d8\u05d9\u05dd \u05e2\u05d1\u05d5\u05e8 \u05d7\u05d9\u05d1\u05d5\u05e8 \u05dc\u05d5\u05d2\u05d9 \u05d6\u05d4. + +ORA-17097=\u05e1\u05d5\u05d2 \u05d0\u05dc\u05de\u05e0\u05d8 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d1\u05d8\u05d1\u05dc\u05ea \u05d4\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05e9\u05dc PL/SQL + +ORA-17098=\u05e4\u05e2\u05d5\u05dc\u05ea \u05e8\u05d9\u05e7\u05d5\u05df \u05d4- lob \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 + +ORA-17099=\u05d0\u05d5\u05e8\u05da \u05de\u05e2\u05e8\u05da \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d1\u05d8\u05d1\u05dc\u05ea \u05d4\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05e9\u05dc PL/SQL + +ORA-17100=\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8 Java \u05e9\u05dc \u05de\u05e1\u05d3 \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05dc\u05d0 \u05ea\u05e7\u05e3 + +ORA-17101=\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9\u05dd \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d9\u05dd \u05d1\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8 \u05de\u05d0\u05d2\u05e8 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea OCI + +ORA-17102=Bfile \u05de\u05d9\u05d5\u05e2\u05d3 \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d1\u05dc\u05d1\u05d3 + +ORA-17103=\u05e1\u05d5\u05d2 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05dc\u05d4\u05d7\u05d6\u05e8\u05d4 \u05d3\u05e8\u05da getConnection \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3. \u05d9\u05e9 \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1-getJavaSqlConnection + +ORA-17104=\u05de\u05e9\u05e4\u05d8 SQL \u05dc\u05d4\u05e4\u05e2\u05dc\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05d9\u05db\u05d5\u05dc \u05dc\u05d4\u05d9\u05d5\u05ea \u05e8\u05d9\u05e7 \u05d0\u05d5 Null + +ORA-17105=\u05dc\u05d0 \u05e0\u05e7\u05d1\u05e2 \u05d0\u05d6\u05d5\u05e8 \u05d6\u05de\u05df \u05dc\u05de\u05d5\u05e9\u05d1 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea + +ORA-17106=\u05d4\u05d5\u05d2\u05d3\u05e8\u05d4 \u05ea\u05e6\u05d5\u05e8\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05dc\u05de\u05d0\u05d2\u05e8 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea \u05e9\u05dc \u05d3\u05e8\u05d9\u05d9\u05d1\u05e8 \u05d4-JDBC-OCI + +ORA-17107=\u05d4\u05d5\u05d2\u05d3\u05e8 \u05e1\u05d5\u05d2 proxy \u05dc\u05d0 \u05ea\u05e7\u05e3 + +ORA-17108=\u05dc\u05d0 \u05e6\u05d5\u05d9\u05df \u05d0\u05d5\u05e8\u05da \u05de\u05e8\u05d1\u05d9 \u05d1-defineColumnType + +ORA-17109=\u05dc\u05d0 \u05e0\u05de\u05e6\u05d0\u05d4 \u05d4\u05e6\u05e4\u05e0\u05ea Java character encoding \u05d4\u05e8\u05d2\u05d9\u05dc\u05d4 + +ORA-17110=\u05d4\u05d1\u05d9\u05e6\u05d5\u05e2 \u05d4\u05d5\u05e9\u05dc\u05dd \u05e2\u05dd \u05d0\u05d6\u05d4\u05e8\u05d4 + +ORA-17111=\u05e6\u05d5\u05d9\u05df \u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e2\u05d1\u05d5\u05e8 TTL \u05e9\u05dc \u05de\u05d8\u05de\u05d5\u05df \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea + +ORA-17112=\u05e6\u05d5\u05d9\u05df \u05de\u05e8\u05d5\u05d5\u05d7 thread \u05dc\u05d0 \u05ea\u05e7\u05e3 + +ORA-17113=\u05e2\u05e8\u05da \u05de\u05e8\u05d5\u05d5\u05d7 \u05d4-Thread \u05d2\u05d3\u05d5\u05dc \u05de\u05d4\u05e2\u05e8\u05da \u05e9\u05dc \u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05d4\u05de\u05d8\u05de\u05d5\u05df + +ORA-17114=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1-commit \u05e9\u05dc \u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05de\u05e7\u05d5\u05de\u05d9\u05ea \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea + +ORA-17115=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1-rollback \u05e9\u05dc \u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05de\u05e7\u05d5\u05de\u05d9\u05ea \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea + +ORA-17116=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e4\u05e2\u05d9\u05dc \u05d0\u05ea auto-commit \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea \u05e4\u05e2\u05d9\u05dc\u05d4 + +ORA-17117=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05e7\u05d1\u05d5\u05e2 savepoint \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea \u05e4\u05e2\u05d9\u05dc\u05d4 + +ORA-17118=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05d6\u05d9\u05d4\u05d5\u05d9 \u05e2\u05d1\u05d5\u05e8 Savepoint \u05e9\u05de\u05d9 + +ORA-17119=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05e9\u05dd \u05e2\u05d1\u05d5\u05e8 Savepoint \u05dc\u05dc\u05d0 \u05e9\u05dd + +ORA-17120=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05e7\u05d1\u05d5\u05e2 Savepoint \u05db\u05d0\u05e9\u05e8 \u05de\u05d5\u05e4\u05e2\u05dc\u05ea \u05d4\u05ea\u05db\u05d5\u05e0\u05d4 auto commit + +ORA-17121=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d1\u05e6\u05e2 rollback \u05dc-Savepoint \u05db\u05d0\u05e9\u05e8 \u05de\u05d5\u05e4\u05e2\u05dc\u05ea \u05d4\u05ea\u05db\u05d5\u05e0\u05d4 auto commit + +ORA-17122=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d1\u05e6\u05e2 rollback \u05dc-Savepoint \u05e9\u05dc \u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05de\u05e7\u05d5\u05de\u05d9\u05ea \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea + +ORA-17123=\u05e6\u05d5\u05d9\u05df \u05d2\u05d5\u05d3\u05dc \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e2\u05d1\u05d5\u05e8 \u05de\u05d8\u05de\u05d5\u05df \u05d4\u05de\u05e9\u05e4\u05d8\u05d9\u05dd + +ORA-17124=\u05e6\u05d5\u05d9\u05df \u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e9\u05dc \u05d7\u05d5\u05e1\u05e8 \u05e4\u05e2\u05d9\u05dc\u05d5\u05ea \u05d1\u05de\u05d8\u05de\u05d5\u05df \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea + +ORA-17200=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05de\u05d9\u05e8 \u05d1\u05d0\u05d5\u05e4\u05df \u05ea\u05e7\u05d9\u05df \u05d0\u05ea \u05de\u05d7\u05e8\u05d5\u05d6\u05ea \u05e4\u05ea\u05d9\u05d7\u05ea \u05d4-XA \u05de- Java \u05dc\u05e9\u05e4\u05ea C + +ORA-17201=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05de\u05d9\u05e8 \u05d1\u05d0\u05d5\u05e4\u05df \u05ea\u05e7\u05d9\u05df \u05d0\u05ea \u05de\u05d7\u05e8\u05d5\u05d6\u05ea \u05e1\u05d2\u05d9\u05e8\u05ea \u05d4-XA \u05de- Java \u05dc\u05e9\u05e4\u05ea C + +ORA-17202=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05de\u05d9\u05e8 \u05d1\u05d0\u05d5\u05e4\u05df \u05ea\u05e7\u05d9\u05df \u05d0\u05ea \u05e9\u05dd \u05d4-RM \u05de-Java \u05dc\u05e9\u05e4\u05ea C + +ORA-17203=\u05d4\u05d7\u05dc\u05e4\u05ea \u05e1\u05d5\u05d2 \u05d4\u05de\u05e6\u05d1\u05d9\u05e2 (\u05d1\u05d9\u05e6\u05d5\u05e2 cast) \u05dc-jlong \u05e0\u05db\u05e9\u05dc + +ORA-17204=\u05de\u05e2\u05e8\u05da \u05d4\u05e7\u05dc\u05d8 \u05e7\u05e6\u05e8 \u05de\u05db\u05d3\u05d9 \u05dc\u05d4\u05db\u05d9\u05dc \u05de\u05e6\u05d1\u05d9\u05e2\u05d9\u05dd (handles) \u05e9\u05dc OCI + +ORA-17205=\u05db\u05db\u05e9\u05dc \u05d1\u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05de\u05e6\u05d1\u05d9\u05e2 OCISvcCtx \u05de\u05ea\u05d5\u05da C-XA \u05ea\u05d5\u05da \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1- xaoSvcCtx + +ORA-17206=\u05e0\u05db\u05e9\u05dc \u05d1\u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05de\u05e6\u05d1\u05d9\u05e2 OCIEnv \u05de\u05ea\u05d5\u05da C-XA \u05ea\u05d5\u05da \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1- xaoEnv + +ORA-17207=\u05d4\u05de\u05d0\u05e4\u05d9\u05d9\u05df tnsEntry \u05dc\u05d0 \u05d4\u05d5\u05d2\u05d3\u05e8 \u05d1\u05de\u05e7\u05d5\u05e8 \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17213=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 XAER_RMERR \u05d1\u05de\u05d4\u05dc\u05da xa_open + +ORA-17215=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_INVAL \u05d1\u05de\u05d4\u05dc\u05da xa_open + +ORA-17216=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_PROTO \u05d1\u05de\u05d4\u05dc\u05da xa_open + +ORA-17233=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_RMERR \u05d1\u05de\u05d4\u05dc\u05da xa_close + +ORA-17235=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_INVAL \u05d1\u05de\u05d4\u05dc\u05da xa_close + +ORA-17236=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_PROTO \u05d1\u05de\u05d4\u05dc\u05da xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u05d4\u05e4\u05e8\u05ea \u05e4\u05e8\u05d5\u05d8\u05d5\u05e7\u05d5\u05dc + +ORA-17402=\u05e6\u05e4\u05d5\u05d9\u05d4 \u05d4\u05d5\u05d3\u05e2\u05ea RPA \u05d0\u05d7\u05ea \u05d1\u05dc\u05d1\u05d3 + +ORA-17403=\u05e6\u05e4\u05d5\u05d9\u05d4 \u05d4\u05d5\u05d3\u05e2\u05ea RXH \u05d0\u05d7\u05ea \u05d1\u05dc\u05d1\u05d3 + +ORA-17404=\u05d4\u05ea\u05e7\u05d1\u05dc\u05d5 \u05d9\u05d5\u05ea\u05e8 RXD \u05de\u05d4\u05e6\u05e4\u05d5\u05d9 + +ORA-17405=\u05d0\u05d5\u05e8\u05da \u05d4- UAC \u05d0\u05d9\u05e0\u05d5 \u05d0\u05e4\u05e1 + +ORA-17406=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05de\u05d4\u05d0\u05d5\u05e8\u05da \u05d4\u05de\u05e8\u05d1\u05d9 \u05e9\u05dc \u05d4\u05de\u05d0\u05d2\u05e8 (buffer) + +ORA-17407=\u05d9\u05d9\u05e6\u05d5\u05d2 \u05d4\u05e1\u05d5\u05d2 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 (setRep) + +ORA-17408=\u05d9\u05d9\u05e6\u05d5\u05d2 \u05d4\u05e1\u05d5\u05d2 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 (getRep) + +ORA-17409=\u05d0\u05d5\u05e8\u05da \u05d4\u05de\u05d0\u05d2\u05e8 (buffer) \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17410=\u05d0\u05d9\u05df \u05d9\u05d5\u05ea\u05e8 \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4 \u05de\u05d4-socket + +ORA-17411=\u05d7\u05d5\u05e1\u05e8 \u05d4\u05ea\u05d0\u05de\u05d4 \u05d1\u05d9\u05d9\u05e6\u05d5\u05d2\u05d9 \u05e1\u05d5\u05d2 \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17412=\u05d0\u05d5\u05e8\u05da \u05d4\u05e1\u05d5\u05d2 \u05e2\u05d5\u05dc\u05d4 \u05e2\u05dc \u05d4\u05d0\u05d5\u05e8\u05da \u05d4\u05de\u05e8\u05d1\u05d9 + +ORA-17413=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05d1\u05d2\u05d5\u05d3\u05dc \u05d4\u05de\u05e4\u05ea\u05d7 + +ORA-17414=\u05d0\u05d9\u05df \u05de\u05e1\u05e4\u05d9\u05e7 \u05de\u05e7\u05d5\u05dd \u05d1\u05de\u05d0\u05d2\u05e8 (buffer) \u05dc\u05d0\u05d7\u05e1\u05d5\u05df \u05e9\u05de\u05d5\u05ea \u05d4\u05e2\u05de\u05d5\u05d3\u05d5\u05ea + +ORA-17415=\u05e1\u05d5\u05d2 \u05d6\u05d4 \u05dc\u05d0 \u05d8\u05d5\u05e4\u05dc + +ORA-17416=FATAL + +ORA-17417=\u05d1\u05e2\u05d9\u05d4 \u05d1- NLS, \u05e4\u05e2\u05e0\u05d5\u05d7 \u05e9\u05de\u05d5\u05ea \u05d4\u05e2\u05de\u05d5\u05d3\u05d5\u05ea \u05e0\u05db\u05e9\u05dc + +ORA-17418=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05d0\u05d5\u05e8\u05da \u05d4\u05e9\u05d3\u05d4 \u05e9\u05dc \u05d4\u05de\u05d1\u05e0\u05d4 \u05d4\u05e4\u05e0\u05d9\u05de\u05d9 + +ORA-17419=\u05de\u05e1\u05e4\u05e8 \u05d4\u05e2\u05de\u05d5\u05d3\u05d5\u05ea \u05e9\u05d4\u05d5\u05d7\u05d6\u05e8 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17420=\u05d2\u05e8\u05e1\u05ea Oracle \u05dc\u05d0 \u05de\u05d5\u05d2\u05d3\u05e8\u05ea + +ORA-17421=\u05d4\u05e1\u05d5\u05d2\u05d9\u05dd \u05d0\u05d5 \u05d4\u05d7\u05d9\u05d1\u05d5\u05e8 \u05d0\u05d9\u05e0\u05dd \u05de\u05d5\u05d2\u05d3\u05e8\u05d9\u05dd + +ORA-17422=\u05de\u05d7\u05dc\u05e7\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05d1-factory + +ORA-17423=\u05e0\u05e2\u05e9\u05d4 \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1\u05d1\u05dc\u05d5\u05e7 PLSQL \u05de\u05d1\u05dc\u05d9 \u05dc\u05d4\u05d2\u05d3\u05d9\u05e8 IOV + +ORA-17424=\u05de\u05e0\u05e1\u05d4 \u05e4\u05e2\u05d5\u05dc\u05ea Marsahling \u05d0\u05d7\u05e8\u05ea + +ORA-17425=\u05de\u05d5\u05d7\u05d6\u05e8 \u05d6\u05e8\u05dd \u05d1\u05d1\u05dc\u05d5\u05e7 PLSQL + +ORA-17426=\u05db\u05e8\u05d9\u05db\u05ea \u05d4\u05d9\u05e6\u05d9\u05d0\u05d4 \u05d5\u05d2\u05dd \u05db\u05e8\u05d9\u05db\u05ea \u05d4\u05db\u05e0\u05d9\u05e1\u05d4 \u05d4\u05df NULL + +ORA-17427=\u05e0\u05e2\u05e9\u05d4 \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1- OAC \u05e9\u05dc\u05d0 \u05d0\u05d5\u05ea\u05d7\u05dc + +ORA-17428=\u05d9\u05e9 \u05dc\u05d1\u05e6\u05e2 \u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea (logon) \u05dc\u05d0\u05d7\u05e8 \u05d4\u05d4\u05ea\u05e7\u05e9\u05e8\u05d5\u05ea (connect) + +ORA-17429=\u05d7\u05d9\u05d9\u05d1 \u05dc\u05d4\u05d9\u05d5\u05ea \u05dc\u05db\u05dc \u05d4\u05e4\u05d7\u05d5\u05ea \u05de\u05d7\u05d5\u05d1\u05e8 \u05dc\u05e9\u05e8\u05ea + +ORA-17430=\u05d7\u05d9\u05d9\u05d1 \u05dc\u05d4\u05d9\u05d5\u05ea \u05de\u05d7\u05d5\u05d1\u05e8 \u05dc\u05e9\u05e8\u05ea + +ORA-17431=\u05de\u05e9\u05e4\u05d8 \u05d4- SQL \u05dc\u05e0\u05d9\u05ea\u05d5\u05d7 \u05e8\u05d9\u05e7 + +ORA-17432=\u05d0\u05e4\u05e9\u05e8\u05d5\u05d9\u05d5\u05ea \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d5\u05ea \u05d1- all7 + +ORA-17433=\u05d0\u05e8\u05d2\u05d5\u05de\u05e0\u05d8\u05d9\u05dd \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d9\u05dd \u05d1\u05e7\u05e8\u05d9\u05d0\u05d4 + +ORA-17434=\u05d0\u05d9\u05e0\u05d5 \u05e0\u05de\u05e6\u05d0 \u05d1\u05de\u05e6\u05d1 \'\u05d6\u05e8\u05d9\u05de\u05d4\' + +ORA-17435=\u05de\u05e1\u05e4\u05e8 \u05d4- in_out_binds \u05d1- IOV \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17436=\u05de\u05e1\u05e4\u05e8 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e9\u05dc \u05d9\u05e6\u05d9\u05d0\u05d5\u05ea (outbinds) + +ORA-17437=\u05d4\u05d0\u05e8\u05d2\u05d5\u05de\u05e0\u05d8\u05d9\u05dd IN/OUT \u05d1\u05d1\u05dc\u05d5\u05e7 PLSQL \u05e9\u05d2\u05d5\u05d9\u05d9\u05dd + +ORA-17438=\u05e4\u05e0\u05d9\u05de\u05d9 - \u05e2\u05e8\u05da \u05d1\u05dc\u05ea\u05d9 \u05e6\u05e4\u05d5\u05d9 + +ORA-17439=\u05e1\u05d5\u05d2 \u05d4- SQL \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17440=DBItem/DBType \u05d4\u05d5\u05d0 null + +ORA-17441=\u05d2\u05e8\u05e1\u05ea Oracle \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea. \u05d4\u05d2\u05e8\u05e1\u05d4 \u05d4\u05de\u05d9\u05e0\u05d9\u05de\u05dc\u05d9\u05ea \u05d4\u05e0\u05ea\u05de\u05db\u05ea \u05d4\u05d9\u05d0 7.2.3. + +ORA-17442=\u05e2\u05e8\u05da \u05e1\u05de\u05df \u05d4\u05d9\u05d9\u05d7\u05d5\u05e1 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17443=\u05d0\u05d9\u05df \u05ea\u05de\u05d9\u05db\u05d4 \u05dc\u05de\u05e9\u05ea\u05de\u05e9 \u05d0\u05d5 \u05e1\u05d9\u05e1\u05de\u05d4 \u05e9\u05d4\u05dd null \u05d1\u05d3\u05e8\u05d9\u05d9\u05d1\u05e8 THIN + +ORA-17444=\u05d2\u05e8\u05e1\u05ea \u05d4\u05e4\u05e8\u05d5\u05d8\u05d5\u05e7\u05d5\u05dc TTC \u05e9\u05d4\u05ea\u05e7\u05d1\u05dc\u05d4 \u05de\u05d4\u05e9\u05e8\u05ea \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/d05c931998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/d05c931998af001c18c4935e001381da new file mode 100644 index 0000000..afdaaf0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/d05c931998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/e08d501698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/e08d501698af001c18c4935e001381da new file mode 100644 index 0000000..adc44ef Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b6/e08d501698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/103b84814eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/103b84814eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..731ad52 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/103b84814eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,153 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + // Rcupration des donnes entres par l'utilisateur + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getPassword().toString(); + + // Affichage du message de configurmation + this.pr.confirmationConnexion(this.serveur); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/204dca94c9a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/204dca94c9a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..2a6c22d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/204dca94c9a4001c1acc9f54b60f9b57 @@ -0,0 +1,73 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setLayout(FlowLayout.LEFT); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/706e25ccc5a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/706e25ccc5a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..7223589 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/706e25ccc5a4001c1acc9f54b60f9b57 @@ -0,0 +1,56 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/c09c5bf820af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/c09c5bf820af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..ae7a80a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b7/c09c5bf820af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\ub0b4\ubd80 \uc624\ub958 + +ORA-17002=IO \uc608\uc678 \uc0c1\ud669 + +ORA-17003=\ubd80\uc801\ud569\ud55c \uc5f4 \uc778\ub371\uc2a4 + +ORA-17004=\ubd80\uc801\ud569\ud55c \uc5f4 \uc720\ud615 + +ORA-17005=\uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \uc5f4 \uc720\ud615 + +ORA-17006=\ubd80\uc801\ud569\ud55c \uc5f4 \uc774\ub984 + +ORA-17007=\ubd80\uc801\ud569\ud55c \ub3d9\uc801 \uc5f4 + +ORA-17008=\uc811\uc18d \uc885\ub8cc + +ORA-17009=\uba85\ub839\ubb38 \uc885\ub8cc + +ORA-17010=\uacb0\uacfc \uc9d1\ud569\uc744 \uc885\ub8cc\ud588\uc74c + +ORA-17011=\uacb0\uacfc \uc9d1\ud569\uc744 \ubaa8\ub450 \uc18c\ubaa8\ud588\uc74c + +ORA-17012=\ub9e4\uac1c\ubcc0\uc218 \uc720\ud615 \ucda9\ub3cc + +ORA-17014=ResultSet.next\uac00 \ud638\ucd9c\ub418\uc9c0 \uc54a\uc558\uc74c + +ORA-17015=\uba85\ub839\ubb38\uc774 \ucde8\uc18c\ub418\uc5c8\uc74c + +ORA-17016=\uba85\ub839\ubb38\uc774 \uc2dc\uac04 \ucd08\uacfc\ub418\uc5c8\uc74c + +ORA-17017=\ucee4\uc11c\uac00 \uc774\ubbf8 \ucd08\uae30\ud654\ub418\uc5c8\uc74c + +ORA-17018=\ubd80\uc801\ud569\ud55c \ucee4\uc11c + +ORA-17019=\uc9c8\uc758\ub9cc \uc124\uba85\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17020=\ubd80\uc801\ud569\ud55c \ud589 \uc0ac\uc804 \uc778\ucd9c\uc785\ub2c8\ub2e4 + +ORA-17021=\uc815\uc758\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17022=\uc778\ub371\uc2a4\uc5d0 \uc815\uc758\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17023=\uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \uae30\ub2a5\uc785\ub2c8\ub2e4 + +ORA-17024=\uc77d\uc740 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17025=defines.isNull ()\uc5d0 \uc624\ub958\uac00 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17026=\uc22b\uc790 \uc624\ubc84\ud50c\ub85c\uc6b0 + +ORA-17027=\uc2a4\ud2b8\ub9bc\uc774 \uc774\ubbf8 \uc885\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17028=\ud604\uc7ac ResultSet\uc774 \uc885\ub8cc\ub420 \ub54c\uae4c\uc9c0 \uc0c8\ub85c\uc6b4 \uc815\uc758\ub97c \uc218\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17029=setReadOnly: \uc77d\uae30 \uc804\uc6a9 \uc5f0\uacb0\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17030=READ_COMMITTED\uc640 SERIALIZABLE\ub9cc\uc774 \uc801\ud569\ud55c \ud2b8\ub79c\uc7ad\uc158 \ub808\ubca8\uc785\ub2c8\ub2e4 + +ORA-17031=setAutoClose: \uc790\ub3d9 \uc885\ub8cc \ubaa8\ub4dc \uc2e4\ud589\ub9cc \uc9c0\uc6d0\ud569\ub2c8\ub2e4 + +ORA-17032=\ud589 \uc0ac\uc804 \uc778\ucd9c\uc744 0\uc73c\ub85c \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17033=\ud574\ub2f9 \uc704\uce58\uc5d0 \ud3d0\uae30\ub41c SQL92 \ubb38\uc790\uc5f4 + +ORA-17034=\ud574\ub2f9 \uc704\uce58\uc5d0 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 SQL92 \ud1a0\ud070 + +ORA-17035=\ubb38\uc790 \uc9d1\ud569\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4!! + +ORA-17036=OracleNumber\uc5d0 \uc608\uc678 \uc0c1\ud669\uc774 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17037=UTF8\uacfc UCS2 \uac04\uc5d0 \uc11c\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17038=\ubc14\uc774\ud2b8 \ubc30\uc5f4\uc774 \ucda9\ubd84\ud788 \uae38\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17039=\ubb38\uc790 \ubc30\uc5f4\uc774 \ucda9\ubd84\ud788 \uae38\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17040=\uc5f0\uacb0 URL\uc5d0 \ud558\uc704 \ud504\ub85c\ud1a0\ucf5c\uc774 \uc9c0\uc815\ub418\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17041=\uc778\ub371\uc2a4\uc5d0 IN \ub610\ub294 OUT \ub9e4\uac1c\ubcc0\uc218\uac00 \uc5c6\uc74c: + +ORA-17042=\ubd80\uc801\ud569\ud55c \uc77c\uad04\ucc98\ub9ac \uac12\uc785\ub2c8\ub2e4 + +ORA-17043=\ubd80\uc801\ud569\ud55c \uc2a4\ud2b8\ub9bc \ucd5c\ub300 \ud06c\uae30\uc785\ub2c8\ub2e4 + +ORA-17044=\ub0b4\ubd80 \uc624\ub958: \ub370\uc774\ud130 \ubc30\uc5f4\uc774 \ud560\ub2f9\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17045=\ub0b4\ubd80 \uc624\ub958: \uc77c\uad04\ucc98\ub9ac \uac12\uc744 \ucd08\uacfc\ud558\ub294 \ubc14\uc778\ub4dc \uac12\uc5d0 \uc561\uc138\uc2a4\ub97c \uc2dc\ub3c4\ud569\ub2c8\ub2e4 + +ORA-17046=\ub0b4\ubd80 \uc624\ub958: \ub370\uc774\ud130 \uc561\uc138\uc2a4\uc5d0 \ubd80\uc801\ud569\ud55c \uc778\ub371\uc2a4\uc785\ub2c8\ub2e4 + +ORA-17047=\uc720\ud615 \uae30\uc220\uc790 \uad6c\ubb38 \ubd84\uc11d\uc5d0 \uc624\ub958\uac00 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17048=\uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uc720\ud615\uc785\ub2c8\ub2e4 + +ORA-17049=java \ubc0f sql \uac1d\uccb4 \uc720\ud615\uc5d0 \uc77c\uad00\uc131\uc774 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17050=\ud574\ub2f9 \uc694\uc18c\uac00 \ubca1\ud130\uc5d0 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17051=\uc774 API\ub294 UDT\uac00 \uc544\ub2cc \uc720\ud615\uc5d0 \uc0ac\uc6a9\ub420 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17052=\ubd80\uc801\ud569\ud55c \ucc38\uc870\uc785\ub2c8\ub2e4 + +ORA-17053=\ubd80\uc801\ud569\ud55c \ud06c\uae30\uc785\ub2c8\ub2e4 + +ORA-17054=\ubd80\uc801\ud569\ud55c LOB \ub85c\ucf00\uc774\ud130\uc785\ub2c8\ub2e4 + +ORA-17055=\ubd80\uc801\ud569\ud55c \ubb38\uc790\uc785\ub2c8\ub2e4 + +ORA-17056=\uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \ubb38\uc790 \uc9d1\ud569\uc785\ub2c8\ub2e4 + +ORA-17057=LOB\ub97c \uc885\ub8cc\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17058=\ub0b4\ubd80 \uc624\ub958: NLS \ubcc0\ud658 \ube44\uc728\uc774 \ubd80\uc801\ud569\ud569\ub2c8\ub2e4 + +ORA-17059=\ub0b4\ubd80 \ud45c\uae30\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17060=\uae30\uc220\uc790\ub97c \uc0dd\uc131\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17061=\uae30\uc220\uc790\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17062=\ubd80\uc801\ud569\ud55c \ucc38\uc870 \ucee4\uc11c\uc785\ub2c8\ub2e4 + +ORA-17063=\ud2b8\ub79c\uc7ad\uc158 \uc911\uc774 \uc544\ub2d9\ub2c8\ub2e4 + +ORA-17064=\uad6c\ubb38\uc774 \ubd80\uc801\ud569\ud558\uac70\ub098 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc774\ub984\uc774 \ub110\uc785\ub2c8\ub2e4 + +ORA-17065=\ubcc0\ud658 \ud074\ub798\uc2a4\uac00 \ub110\uc785\ub2c8\ub2e4 + +ORA-17066=\uc561\uc138\uc2a4 \uce35\uc5d0 \uc801\ud569\ud55c \uad6c\ud604\uc774 \ud544\uc694\ud569\ub2c8\ub2e4 + +ORA-17067=\ubd80\uc801\ud569\ud55c Oracle URL\uc774 \uc9c0\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17068=\ud638\ucd9c\uc5d0 \ubd80\uc801\ud569\ud55c \uc778\uc218\uc785\ub2c8\ub2e4 + +ORA-17069=\uba85\uc2dc\uc801 XA \ud638\ucd9c\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4 + +ORA-17070=\ub370\uc774\ud130 \ud06c\uae30\uac00 \ud574\ub2f9 \uc720\ud615\uc758 \ucd5c\ub300 \ud06c\uae30\ubcf4\ub2e4 \ud07d\ub2c8\ub2e4 + +ORA-17071=\ucd5c\ub300 VARRAY \ud55c\uacc4\ub97c \ucd08\uacfc\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17072=\uc5f4\uc5d0 \ub108\ubb34 \ud070 \uac12\uc774 \uc0bd\uc785\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17073=\ub17c\ub9ac\uc801 \ud578\ub4e4\uc774 \ub354 \uc774\uc0c1 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17074=\ubd80\uc801\ud569\ud55c \uc774\ub984 \ud328\ud134\uc785\ub2c8\ub2e4 + +ORA-17075=\uc804\ubc29\ud5a5 \uc804\uc6a9 \uacb0\uacfc \uc9d1\ud569\uc5d0 \ubd80\uc801\ud569\ud55c \uc791\uc5c5\uc774 \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17076=\uc77d\uae30 \uc804\uc6a9 \uacb0\uacfc \uc9d1\ud569\uc5d0 \ubd80\uc801\ud569\ud55c \uc791\uc5c5\uc774 \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17077=REF \uac12 \uc124\uc815\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17078=\uc5f0\uacb0\uc774 \uc5f4\ub824 \uc788\uc73c\ubbc0\ub85c \uc791\uc5c5\uc744 \uc218\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17079=\uc0ac\uc6a9\uc790 \uc778\uc99d\uc11c\uac00 \uae30\uc874 \uc778\uc99d\uc11c\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc74c + +ORA-17080=\ubd80\uc801\ud569\ud55c \uc77c\uad04\ucc98\ub9ac \uba85\ub839\uc785\ub2c8\ub2e4 + +ORA-17081=\uc77c\uad04\ucc98\ub9ac \uc791\uc5c5 \uc911 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17082=\ud604\uc7ac \ud589\uc774 \uc544\ub2d9\ub2c8\ub2e4 + +ORA-17083=\uc0bd\uc785 \ud589\uc5d0 \uc788\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17084=\uc0bd\uc785 \ud589\uc5d0\uc11c \ud638\ucd9c\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17085=\uac12 \ucda9\ub3cc\uc774 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17086=\uc0bd\uc785 \ud589\uc5d0\uc11c \uc5f4 \uac12\uc774 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17087=\uc131\ub2a5 \ud78c\ud2b8 \ubb34\uc2dc: setFetchDirection() + +ORA-17088=\uc694\uccad\ub41c \uacb0\uacfc \uc9d1\ud569 \uc720\ud615\uacfc \ub3d9\uc2dc\uc131 \uc218\uc900\uc744 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \uad6c\ubb38\uc785\ub2c8\ub2e4 +ORA-17089=\ub0b4\ubd80 \uc624\ub958 + +ORA-17090=\ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc740 \uc791\uc5c5 + +ORA-17091=\uc694\uccad\ub41c \uc720\ud615 \ubc0f \ub3d9\uc2dc\uc131 \uc218\uc900\uc5d0\uc11c \uacb0\uacfc \uc9d1\ud569\uc744 \uc0dd\uc131\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17092=\ud638\ucd9c \ucc98\ub9ac \uc885\ub8cc \uc2dc JDBC \ubb38\uc744 \uc0dd\uc131\ud558\uac70\ub098 \uc2e4\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. + +ORA-17093=OCI \uc791\uc5c5\uc774 OCI_SUCCESS_WITH_INFO\ub97c \ubc18\ud658\ud588\uc2b5\ub2c8\ub2e4. + +ORA-17094=\uac1d\uccb4 \uc720\ud615 \ubc84\uc804\uc774 \ub9de\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. + +ORA-17095=\uba85\ub839\ubb38 \uce90\uc2dc \ud06c\uae30\uac00 \uc124\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17096=\uc774 \ub17c\ub9ac\uc801 \uc811\uc18d\uc5d0 \uba85\ub839\ubb38\uc744 \uce90\uc2dc\ub85c \uc800\uc7a5\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. + +ORA-17097=\ubd80\uc801\ud569\ud55c PL/SQL \uc778\ub371\uc2a4 \ud14c\uc774\ube14 \uc694\uc18c \uc720\ud615 + +ORA-17098=\ubd80\uc801\ud569\ud55c \ube48 lob \uc791\uc5c5 + +ORA-17099=\ubd80\uc801\ud569\ud55c PL/SQL \uc778\ub371\uc2a4 \ud14c\uc774\ube14 \ubc30\uc5f4 \uae38\uc774 + +ORA-17100=\ubd80\uc801\ud569\ud55c \ub370\uc774\ud130\ubca0\uc774\uc2a4 Java \uac1d\uccb4 + +ORA-17101=OCI \uc811\uc18d \ud480 \uac1d\uccb4\uc5d0 \ubd80\uc801\ud569\ud55c \ub4f1\ub85d\uc815\ubcf4 + +ORA-17102=Bfile\uc774 \uc77d\uae30 \uc804\uc6a9\uc784 + +ORA-17103=getConnection\uc744 \ud1b5\ud574 \ubc18\ud658\ud558\uae30\uc5d0 \ubd80\uc801\ud569\ud55c \uc811\uc18d \uc720\ud615\uc785\ub2c8\ub2e4. \ub300\uc2e0 getJavaSqlConnection\uc744 \uc0ac\uc6a9\ud558\uc2ed\uc2dc\uc624. + +ORA-17104=\uc2e4\ud589\ud560 SQL \ubb38\uc740 \ube44\uc5b4 \uc788\uac70\ub098 \ub110\uc77c \uc218 \uc5c6\uc74c + +ORA-17105=\uc811\uc18d \uc138\uc158 \uc2dc\uac04\ub300\uac00 \uc124\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17106=\ubd80\uc801\ud569\ud55c JDBC-OCI \ub4dc\ub77c\uc774\ubc84 \uc811\uc18d \ud480 \uad6c\uc131\uc774 \uc9c0\uc815\ub428 + +ORA-17107=\ubd80\uc801\ud569\ud55c proxy \uc720\ud615\uc774 \uc9c0\uc815\ub428 + +ORA-17108=defineColumnType\uc5d0 \ucd5c\ub300 \uae38\uc774\uac00 \uc9c0\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17109=\ud45c\uc900 Java \ubb38\uc790 \uc778\ucf54\ub529\uc744 \ucc3e\uc744 \uc218 \uc5c6\uc74c + +ORA-17110=\uacbd\uace0\uc640 \ud568\uaed8 \uc2e4\ud589\uc774 \uc644\ub8cc\ub428 + +ORA-17111=\ubd80\uc801\ud569\ud55c \uc811\uc18d \uce90\uc2dc TTL \uc2dc\uac04 \ucd08\uacfc\uac00 \uc9c0\uc815\ub428 + +ORA-17112=\ubd80\uc801\ud569\ud55c \uc2a4\ub808\ub4dc \uac04\uaca9\uc774 \uc9c0\uc815\ub428 + +ORA-17113=\uc2a4\ub808\ub4dc \uac04\uaca9 \uac12\uc774 \uce90\uc2dc \uc2dc\uac04 \ucd08\uacfc \uac12\ubcf4\ub2e4 \ud07c + +ORA-17114=\uc740(\ub294) \uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \ub85c\uceec \ud2b8\ub79c\uc7ad\uc158 \ucee4\ubc0b\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc74c + +ORA-17115=\uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \ub85c\uceec \ud2b8\ub79c\uc7ad\uc158 \ub864\ubc31\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc74c + +ORA-17116=\ud65c\uc131 \uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \uc790\ub3d9 \ucee4\ubc0b\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc74c + +ORA-17117=\ud65c\uc131 \uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \uc800\uc7a5\uc810\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc74c + +ORA-17118=\uc774\ub984\uc774 \uc9c0\uc815\ub41c \uc800\uc7a5\uc810\uc5d0 \ub300\ud55c ID\ub97c \uac00\uc838\uc62c \uc218 \uc5c6\uc74c + +ORA-17119=\uc774\ub984\uc774 \uc9c0\uc815\ub418\uc9c0 \uc54a\uc740 \uc800\uc7a5\uc810\uc5d0 \ub300\ud55c \uc774\ub984\uc744 \uac00\uc838\uc62c \uc218 \uc5c6\uc74c + +ORA-17120=\uc790\ub3d9 \ucee4\ubc0b\uc744 \uc124\uc815\ud55c \uc0c1\ud0dc\ub85c \uc800\uc7a5\uc810\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc74c + +ORA-17121=\uc790\ub3d9 \ucee4\ubc0b\uc744 \uc124\uc815\ud55c \uc0c1\ud0dc\ub85c \uc800\uc7a5\uc810\uc73c\ub85c \ub864\ubc31\ud560 \uc218 \uc5c6\uc74c + +ORA-17122=\uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc758 \ub85c\uceec txn \uc800\uc7a5\uc810\uc73c\ub85c \ub864\ubc31\ud560 \uc218 \uc5c6\uc74c + +ORA-17123=\ubd80\uc801\ud569\ud55c \uba85\ub839\ubb38 \uce90\uc2dc \ud06c\uae30\uac00 \uc9c0\uc815\ub428 + +ORA-17124=\ubd80\uc801\ud569\ud55c \uc811\uc18d \uce90\uc2dc \ube44\ud65c\uc131 \uc2dc\uac04 \ucd08\uacfc\uac00 \uc9c0\uc815\ub428 + +ORA-17200=Java\uc5d0\uc11c C\ub85c XA \uc5f4\uae30 \ubb38\uc790\uc5f4\uc744 \uc81c\ub300\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17201=Java\uc5d0\uc11c C\ub85c XA \ub2eb\uae30 \ubb38\uc790\uc5f4\uc744 \uc81c\ub300\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17202=Java\uc5d0\uc11c C\ub85c RM \uc774\ub984\uc744 \uc81c\ub300\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17203=jlong\uc73c\ub85c \ud3ec\uc778\ud130 \uc720\ud615\uc744 \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17204=\uc785\ub825 \ubc30\uc5f4\uc774 OCI \ud578\ub4e4\uc744 \ubcf4\uc720\ud558\uae30\uc5d0 \ub108\ubb34 \uc9e7\uc74c + +ORA-17205=xaoSvcCtx\ub97c \uc0ac\uc6a9\ud558\uc5ec C-XA\uc5d0\uc11c OCISvcCtx \ud578\ub4e4 \uc5bb\uae30 \uc2e4\ud328 + +ORA-17206=xaoEnv\ub97c \uc0ac\uc6a9\ud558\uc5ec C-XA\uc5d0\uc11c OCIEnv \ud578\ub4e4 \uc5bb\uae30 \uc2e4\ud328 + +ORA-17207=tnsEntry \ub4f1\ub85d\uc815\ubcf4\uac00 DataSource\uc5d0 \uc124\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17213=xa_open \ub3c4\uc911 C-XA\uac00 XAER_RMERR \ubc18\ud658 + +ORA-17215=xa_open \ub3c4\uc911 C-XA\uac00 XAER_INVAL \ubc18\ud658 + +ORA-17216=xa_open \ub3c4\uc911 C-XA\uac00 XAER_PROTO \ubc18\ud658 + +ORA-17233=xa_close \ub3c4\uc911 C-XA\uac00 XAER_RMERR \ubc18\ud658 + +ORA-17235=xa_close \ub3c4\uc911 C-XA\uac00 XAER_INVAL \ubc18\ud658 + +ORA-17236=xa_close \ub3c4\uc911 C-XA\uac00 XAER_PROTO \ubc18\ud658 + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\ud504\ub85c\ud1a0\ucf5c \uc704\ubc18 + +ORA-17402=\ud558\ub098\uc758 RPA \uba54\uc2dc\uc9c0\ub9cc \ud544\uc694 + +ORA-17403=\ud558\ub098\uc758 RXH \uba54\uc2dc\uc9c0\ub9cc \ud544\uc694 + +ORA-17404=\uc608\uc0c1\ubcf4\ub2e4 \ub9ce\uc740 RXD \uc218\uc2e0 + +ORA-17405=UAC \uae38\uc774\uac00 0\uc774 \uc544\ub2d8 + +ORA-17406=\ucd5c\ub300 \ubc84\ud37c \uae38\uc774 \ucd08\uacfc + +ORA-17407=\ubd80\uc801\ud569\ud55c \uc720\ud615 \ud45c\uae30(set \ubc29\uc2dd)\r\n + +ORA-17408=\ubd80\uc801\ud569\ud55c \uc720\ud615 \ud45c\uae30(get \ubc29\uc2dd) + +ORA-17409=\ubc84\ud37c \uae38\uc774\uac00 \ubd80\uc801\ud569\ud569\ub2c8\ub2e4 + +ORA-17410=\uc18c\ucf13\uc5d0\uc11c \uc77d\uc744 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17411=\ub370\uc774\ud130 \uc720\ud615 \ud45c\uae30\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17412=\uc720\ud615 \uae38\uc774\uac00 \ucd5c\ub300\uac12\ubcf4\ub2e4 \ud07d\ub2c8\ub2e4 + +ORA-17413=\ud0a4 \ud06c\uae30\ub97c \ucd08\uacfc\ud569\ub2c8\ub2e4 + +ORA-17414=\uc5f4 \uc774\ub984\uc744 \uc800\uc7a5\ud558\uae30\uc5d0 \ubc84\ud37c \ud06c\uae30\uac00 \ubd80\uc871\ud569\ub2c8\ub2e4 + +ORA-17415=\ud574\ub2f9 \uc720\ud615\uc774 \ucc98\ub9ac\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17416=FATAL + +ORA-17417=NLS \ubb38\uc81c, \uc5f4 \uc774\ub984\uc744 \ud574\ub3c5\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17418=\ub0b4\ubd80 \uad6c\uc870\uc758 \ud544\ub4dc \uae38\uc774\uc5d0 \uc624\ub958\uac00 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17419=\ubd80\uc801\ud569\ud55c \uac1c\uc218\uc758 \uc5f4\uc774 \ubc18\ud658\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17420=Oracle \ubc84\uc804\uc774 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17421=\uc720\ud615 \ub610\ub294 \uc5f0\uacb0\uc774 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17422=factory\uc5d0 \ubd80\uc801\ud569\ud55c \ud074\ub798\uc2a4 + +ORA-17423=\uc815\uc758\ub41c IOV\uac00 \uc5c6\uc774 PLSQL \ube14\ub85d \uc0ac\uc6a9 + +ORA-17424=\ub2e4\ub978 \ub9c8\uc15c\ub9c1 \uc791\uc5c5\uc744 \uc2dc\ub3c4 \uc911 + +ORA-17425=PLSQL \ube14\ub85d\uc5d0 \uc788\ub294 \uc2a4\ud2b8\ub9bc\uc744 \ubc18\ud658 + +ORA-17426=IN \ub9e4\uac1c\ubcc0\uc218\uc640 OUT \ub9e4\uac1c\ubcc0\uc218\uac00 \ubaa8\ub450 NULL\uc784 + +ORA-17427=\ucd08\uae30\ud654\ub418\uc9c0 \uc54a\uc740 OAC\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4 + +ORA-17428=\ub85c\uadf8\uc778\uc740 \uc811\uc18d \ud6c4\uc5d0 \ud638\ucd9c\ub418\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17429=\uc801\uc5b4\ub3c4 \uc11c\ubc84\uc5d0 \uc5f0\uacb0\ub418\uc5b4 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17430=\uc11c\ubc84\uc5d0 \ub85c\uadf8\uc628\ub418\uc5b4 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17431=\uad6c\ubb38 \ubd84\uc11d\ud560 SQL \ubb38\uc774 \ub110\uc785\ub2c8\ub2e4 + +ORA-17432=oracle 7\uc5d0 \ubd80\uc801\ud569\ud55c \uc635\uc158 + +ORA-17433=\ud638\ucd9c\uc5d0 \ubd80\uc801\ud569\ud55c \uc778\uc218\uc785\ub2c8\ub2e4 + +ORA-17434=\uc2a4\ud2b8\ub9bc \ubaa8\ub4dc\uac00 \uc544\ub2d9\ub2c8\ub2e4 + +ORA-17435=IOV\uc5d0\uc11c in_out_binds \uc218\uac00 \ubd80\uc801\ud569\ud569\ub2c8\ub2e4 + +ORA-17436=\ubd80\uc801\ud569\ud55c OUT \ub9e4\uac1c\ubcc0\uc218 \uc218 + +ORA-17437=PLSQL \ube14\ub85d\uc758 IN/OUT \uc778\uc218\uc5d0 \uc624\ub958 + +ORA-17438=\ub0b4\ubd80 - \uc608\uae30\uce58 \ubabb\ud55c \uac12\uc785\ub2c8\ub2e4 + +ORA-17439=\ubd80\uc801\ud569\ud55c SQL \uc720\ud615\uc785\ub2c8\ub2e4 + +ORA-17440=DBItem/DBType\uc774 \ub110\uc785\ub2c8\ub2e4 + +ORA-17441=Oracle \ubc84\uc804\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \ucd5c\uc18c\ud55c 7.2.3 \ubc84\uc804 \uc774\uc0c1\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. + +ORA-17442=\ubd80\uc801\ud569\ud55c Refcursor \uac12\uc785\ub2c8\ub2e4 + +ORA-17443=\ub110 \uc0ac\uc6a9\uc790\ub098 \uc554\ud638\uac00 THIN \ub4dc\ub77c\uc774\ubc84\uc5d0\uc11c \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17444=\uc11c\ubc84\ub85c\ubd80\ud130 \uc218\uc2e0\ub41c TTC \ud504\ub85c\ud1a0\ucf5c \ubc84\uc804\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/20cf628780a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/20cf628780a9001c1d3abf97745a02da new file mode 100644 index 0000000..39e8ba7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/20cf628780a9001c1d3abf97745a02da @@ -0,0 +1,125 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + + } + + private void menuBddQuitter(){ + + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "Blankuissance4\n\n" + + "Version 0.5\n" + + "Developpe par Blankoworld\n\n", + "A propos de Blankuissance4", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/7037fffc7ea9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/7037fffc7ea9001c1d3abf97745a02da new file mode 100644 index 0000000..e0f7dba --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/7037fffc7ea9001c1d3abf97745a02da @@ -0,0 +1,80 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + MenuPrincipal.setBorder(new BevelBorder(BevelBorder.RAISED)); + + + + + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/90c6a79584a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/90c6a79584a9001c1d3abf97745a02da new file mode 100644 index 0000000..40c3702 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/90c6a79584a9001c1d3abf97745a02da @@ -0,0 +1,146 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addComponentListener(new ComponentListener(){ + + }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/f075871998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/f075871998af001c18c4935e001381da new file mode 100644 index 0000000..a8563a0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b8/f075871998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b9/40ab68cf04a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b9/40ab68cf04a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..9f735c0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b9/40ab68cf04a4001c1027e59cc3e35e89 @@ -0,0 +1,75 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + System.out.println(resultat.getNString(1)); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b0c86e1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b0c86e1a98af001c18c4935e001381da new file mode 100644 index 0000000..65dcb4b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b0c86e1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/309e1d8881a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/309e1d8881a9001c1d3abf97745a02da new file mode 100644 index 0000000..a55e6f6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/309e1d8881a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Importation de la fentre de Connexion +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + Connexion conn = new Connexion(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/a0477d1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/a0477d1a98af001c18c4935e001381da new file mode 100644 index 0000000..47928e1 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/a0477d1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/b04d32f920af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/b04d32f920af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..49612cf --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/b04d32f920af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Internt fel + +ORA-17002=I/O-undantag + +ORA-17003=Ogiltigt kolumnindex + +ORA-17004=Ogiltig kolumntyp + +ORA-17005=Kolumntypen st\u00f6ds inte + +ORA-17006=Ogiltigt kolumnnamn + +ORA-17007=Ogiltig dynamisk kolumn + +ORA-17008=St\u00e4ngd anslutning + +ORA-17009=St\u00e4ngd sats + +ORA-17010=St\u00e4ngd resultatupps\u00e4ttning + +ORA-17011=Utt\u00f6md resultatupps\u00e4ttning + +ORA-17012=Parametertypskonflikt + +ORA-17014=ResultSet.next anropades inte + +ORA-17015=Satsen avbr\u00f6ts + +ORA-17016=Satsen \u00f6verskred tidsgr\u00e4nsen + +ORA-17017=Mark\u00f6ren har redan initierats + +ORA-17018=Ogiltig mark\u00f6r + +ORA-17019=Kan bara beskriva en fr\u00e5ga + +ORA-17020=Ogiltig f\u00f6rh\u00e4mtning av rader + +ORA-17021=Definitioner saknas + +ORA-17022=Definitioner saknas i index + +ORA-17023=Funktionen st\u00f6ds inte + +ORA-17024=Inga data har l\u00e4sts + +ORA-17025=Fel i defines.isNull () + +ORA-17026=Numeriskt spill + +ORA-17027=Fl\u00f6det har redan st\u00e4ngts + +ORA-17028=Kan inte ta fram n\u00e5gra nya definitioner f\u00f6rr\u00e4n aktuell resultatupps\u00e4ttning har st\u00e4ngts + +ORA-17029=setReadOnly: Skrivskyddade anslutningar st\u00f6ds inte + +ORA-17030=READ_COMMITTED och SERIALIZABLE \u00e4r de enda giltiga transaktionsniv\u00e5erna + +ORA-17031=setAutoClose: St\u00f6der bara aktivt autost\u00e4ngningsl\u00e4ge + +ORA-17032=kan inte ge f\u00f6rh\u00e4mtning av rader v\u00e4rdet noll + +ORA-17033=Felaktigt utformad SQL92-str\u00e4ng i position + +ORA-17034=Ogiltigt SQL92-token i position + +ORA-17035=Teckenupps\u00e4ttningen st\u00f6ds inte!! + +ORA-17036=undantag i OracleNumber + +ORA-17037=Misslyckades att konvertera mellan UTF8 och UCS2 + +ORA-17038=Byte-vektorn \u00e4r inte tillr\u00e4ckligt l\u00e5ng + +ORA-17039=Teckenvektorn \u00e4r inte tillr\u00e4ckligt l\u00e5ng + +ORA-17040=Delprotokollet m\u00e5ste anges i anslutnings-URL + +ORA-17041=IN- eller OUT-parameter saknas i index: + +ORA-17042=Ogiltigt satsv\u00e4rde + +ORA-17043=Ogiltig maxstorlek f\u00f6r fl\u00f6de + +ORA-17044=Internt fel: Datavektor har inte tilldelats + +ORA-17045=Internt fel: Du f\u00f6rs\u00f6kte att h\u00e4mta bindningsv\u00e4rden utanf\u00f6r giltigt satsv\u00e4rde + +ORA-17046=Internt fel: Ogiltigt index f\u00f6r data\u00e5tkomst + +ORA-17047=Fel i typbeskrivningsanalys + +ORA-17048=Odefinierad typ + +ORA-17049=Of\u00f6renliga java- och sql-objekttyper + +ORA-17050=s\u00e5dant element finns inte i vektorn + +ORA-17051=Detta applikationsgr\u00e4nssnitt (API) kan inte anv\u00e4ndas f\u00f6r icke anv\u00e4ndardefinierade typer + +ORA-17052=Referensen \u00e4r inte giltig + +ORA-17053=Storleken \u00e4r inte giltig + +ORA-17054=LOB-pekaren \u00e4r inte giltig + +ORA-17055=Ett ogiltigt tecken har p\u00e5tr\u00e4ffats i + +ORA-17056=Teckenupps\u00e4ttningen st\u00f6ds inte + +ORA-17057=LOB \u00e4r st\u00e4ngd + +ORA-17058=Internt fel: Ogiltig NLS-omvandlingskvot + +ORA-17059=Kunde inte konvertera till intern representation + +ORA-17060=Kunde inte konstruera beskrivning + +ORA-17061=Beskrivning saknas + +ORA-17062=REFCURSOR \u00e4r ogiltig + +ORA-17063=F\u00f6rekommer ej i n\u00e5gon transaktion + +ORA-17064=Syntaxen \u00e4r ogiltig eller databasens namn null + +ORA-17065=Omvandlingsklassen \u00e4r null + +ORA-17066=Implementation specifik f\u00f6r \u00e5tkomstskikt kr\u00e4vs + +ORA-17067=Ogiltig Oracle-URL angavs + +ORA-17068=Anropet inneh\u00e5ller minst ett ogiltigt argument + +ORA-17069=Anv\u00e4nd explicit XA-anrop + +ORA-17070=Datastorleken \u00e4r st\u00f6rre \u00e4n till\u00e5tet f\u00f6r den h\u00e4r typen + +ORA-17071=St\u00f6rsta till\u00e5tna storlek f\u00f6r VARRAY har \u00f6verskridits + +ORA-17072=Det v\u00e4rde som infogades ryms inte i kolumnen + +ORA-17073=Det logiska handtaget \u00e4r inte l\u00e4ngre giltigt + +ORA-17074=ogiltigt namnm\u00f6nster + +ORA-17075=Ogiltig \u00e5tg\u00e4rd f\u00f6r endast vidarebefordrad resultatupps\u00e4ttning + +ORA-17076=Ogiltig \u00e5tg\u00e4rd f\u00f6r skrivskyddad resultatupps\u00e4ttning + +ORA-17077=Kunde inte st\u00e4lla in REF-v\u00e4rde + +ORA-17078=Kan inte utf\u00f6ra \u00e5tg\u00e4rden eftersom anslutningarna redan \u00e4r \u00f6ppnade + +ORA-17079=Anv\u00e4ndarautentiseringarna motsvarar inte de befintliga + +ORA-17080=ogiltigt batchkommando + +ORA-17081=fel uppstod vid satsvis bearbetning + +ORA-17082=Ingen aktuell rad + +ORA-17083=Inte p\u00e5 den infogade raden + +ORA-17084=Anropad p\u00e5 den infogade raden + +ORA-17085=V\u00e4rdekonflikter uppst\u00e5r + +ORA-17086=Odefinierat kolumnv\u00e4rde p\u00e5 den infogade raden + +ORA-17087=Ignorerat prestandaf\u00f6rslag: setFetchDirection() + +ORA-17088=Ogiltig syntax f\u00f6r efterfr\u00e5gad resultatupps\u00e4ttningstyp och samtidighetsniv\u00e5 +ORA-17089=internt fel + +ORA-17090=otill\u00e5ten \u00e5tg\u00e4rd + +ORA-17091=Kan inte skapa resultatupps\u00e4ttning vid efterfr\u00e5gad typ och/eller samtidighetsniv\u00e5 + +ORA-17092=JDBC-satser kan inte skapas eller k\u00f6ras vid slutet av anropsbearbetning + +ORA-17093=OCI-operationen returnerade OCI_SUCCESS_WITH_INFO + +ORA-17094=Objekttypsversionerna \u00e4r inkompatibla + +ORA-17095=Storleken p\u00e5 satscachen har inte st\u00e4llts in + +ORA-17096=Satscachning kan inte aktiveras f\u00f6r den h\u00e4r logiska anslutningen. + +ORA-17097=Ogiltig elementtyp f\u00f6r PL/SQL-indextabell + +ORA-17098=Ogiltig tom LOB-\u00e5tg\u00e4rd + +ORA-17099=Ogiltig vektorl\u00e4ngd f\u00f6r PL/SQL-indextabell + +ORA-17100=Ogiltigt Java-objekt i databasen + +ORA-17101=Ogiltiga egenskaper i OCI-objekt f\u00f6r anslutningspool + +ORA-17102=Bfile \u00e4r skrivskyddad + +ORA-17103=ogiltig anslutningstyp att returnera via getConnection. Anv\u00e4nd getJavaSqlConnection i st\u00e4llet + +ORA-17104=Den SQL-sats som ska k\u00f6ras f\u00e5r inte vara tom eller null + +ORA-17105=tidszon f\u00f6r anslutningssession har inte st\u00e4llts in + +ORA-17106=ogiltig konfiguration f\u00f6r JDBC-OCI-drivrutinens anslutningspool har angetts + +ORA-17107=ogiltig proxy-typ angiven + +ORA-17108=Ingen maxl\u00e4ngd har angetts i defineColumnType + +ORA-17109=standardteckenupps\u00e4ttning f\u00f6r Java saknas + +ORA-17110=k\u00f6rningen slutf\u00f6rd med varning + +ORA-17111=Ogiltig TTL-tidsgr\u00e4ns f\u00f6r anslutningscache har angetts + +ORA-17112=Ogiltigt tr\u00e5dintervall har angetts + +ORA-17113=V\u00e4rdet f\u00f6r tr\u00e5dintervall \u00e4r st\u00f6rre \u00e4n v\u00e4rdet f\u00f6r cachetidsgr\u00e4ns + +ORA-17114=kunde inte anv\u00e4nda lokal transaktionsbekr\u00e4ftelse i en global transaktion + +ORA-17115=kunde inte anv\u00e4nda lokal transaktions\u00e5terst\u00e4llning i en global transaktion + +ORA-17116=kunde inte aktivera automatisk bekr\u00e4ftelse i en aktiv global transaktion + +ORA-17117=kunde inte st\u00e4lla in lagringspunkt i en aktiv global transaktion + +ORA-17118=kunde inte h\u00e4mta id f\u00f6r namngiven lagringspunkt + +ORA-17119=kunde inte h\u00e4mta namn f\u00f6r lagringspunkt utan namn + +ORA-17120=kunde inte st\u00e4lla in en lagringspunkt med aktiverad automatisk bekr\u00e4ftelse + +ORA-17121=kunde inte \u00e5terst\u00e4lla till en lagringspunkt med aktiverad automatisk bekr\u00e4ftelse + +ORA-17122=kunde inte \u00e5terst\u00e4lla till en lokal transaktionslagringspunkt i en global transaktion + +ORA-17123=Ogiltig storlek p\u00e5 satscache har angetts + +ORA-17124=Ogiltig inaktivitetstidsgr\u00e4ns f\u00f6r anslutningscache har angetts + +ORA-17200=Det gick inte att konvertera \u00f6ppen XA-str\u00e4ng fr\u00e5n Java till C + +ORA-17201=Det gick inte att konvertera sluten XA-str\u00e4ng fr\u00e5n Java till C + +ORA-17202=Det gick inte att konvertera RM-namn fr\u00e5n Java till C + +ORA-17203=Det gick inte att konvertera pekartypen till jlong + +ORA-17204=Den inmatade vektorn \u00e4r f\u00f6r liten f\u00f6r att inneh\u00e5lla OCI-handtag + +ORA-17205=Det gick inte att h\u00e4mta handtaget OCISvcCtx fr\u00e5n C-XA med xaoSvcCtx + +ORA-17206=Det gick inte att h\u00e4mta handtaget OCIEnv fr\u00e5n C-XA med xaoEnv + +ORA-17207=Egenskapen tnsEntry har inte st\u00e4llts in i DataSource + +ORA-17213=C-XA returnerade XAER_RMERR vid xa_open + +ORA-17215=C-XA returnerade XAER_INVAL vid xa_open + +ORA-17216=C-XA returnerade XAER_PROTO vid xa_open + +ORA-17233=C-XA returnerade XAER_RMERR vid xa_close + +ORA-17235=C-XA returnerade XAER_INVAL vid xa_close + +ORA-17236=C-XA returnerade XAER_PROTO vid xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Brott mot protokoll + +ORA-17402=Bara ett RPA-meddelande f\u00f6rv\u00e4ntas + +ORA-17403=Bara ett RXH-meddelande f\u00f6rv\u00e4ntas + +ORA-17404=Tog emot fler RXD:er \u00e4n f\u00f6rv\u00e4ntat + +ORA-17405=UAC-l\u00e4ngden \u00e4r inte noll + +ORA-17406=St\u00f6rsta till\u00e5tna buffertl\u00e4ngd har \u00f6verskridits + +ORA-17407=ogiltig Typrepresentation(setRep) + +ORA-17408=ogiltig Typrepresentation(getRep) + +ORA-17409=ogiltig buffertl\u00e4ngd + +ORA-17410=Inga fler data att l\u00e4sa fr\u00e5n socket + +ORA-17411=Datatypsrepresentationerna \u00e4r inkompatibla + +ORA-17412=St\u00f6rre typl\u00e4ngd \u00e4n maximum + +ORA-17413=\u00d6verskrider nyckelstorlek + +ORA-17414=Otillr\u00e4cklig buffertstorlek f\u00f6r att lagra kolumnnamn + +ORA-17415=Den h\u00e4r typen har inte hanterats + +ORA-17416=FATAL + +ORA-17417=NLS-problem: kunde inte avkoda kolumnnamn + +ORA-17418=F\u00e4ltl\u00e4ngdsfel i intern struktur + +ORA-17419=Ett ogiltigt antal kolumner returnerades + +ORA-17420=Oracle-versionen \u00e4r inte definierad + +ORA-17421=Typer eller anslutning \u00e4r inte definierade + +ORA-17422=Ogiltig klass i genereringen + +ORA-17423=Anv\u00e4nder ett PL/SQL-block utan definierad IOV + +ORA-17424=Du f\u00f6rs\u00f6kte anv\u00e4nda en annan \u00f6vervaknings\u00e5tg\u00e4rd + +ORA-17425=Returnerar ett fl\u00f6de i PL/SQL-block + +ORA-17426=B\u00e5de IN- och OUT-bindningar \u00e4r NULL + +ORA-17427=Anv\u00e4nder oinitierad OAC + +ORA-17428=Inloggningen m\u00e5ste anropas efter anslutning + +ORA-17429=M\u00e5ste \u00e5tminstone vara ansluten till servern + +ORA-17430=M\u00e5ste vara inloggad p\u00e5 servern + +ORA-17431=Den SQL-sats som ska analyseras \u00e4r null + +ORA-17432=ogiltiga alternativ i all7 + +ORA-17433=ogiltiga argument i anrop + +ORA-17434=ej i direktuppspelningsl\u00e4ge + +ORA-17435=ogiltigt antal in_out_binds i IOV + +ORA-17436=ogiltigt antal OUT-parametrar + +ORA-17437=Fel i IN/OUT-argument i PL/SQL-block + +ORA-17438=Internt: ov\u00e4ntat v\u00e4rde + +ORA-17439=Ogiltig SQL-typ + +ORA-17440=DBItem/DBType \u00e4r null + +ORA-17441=Oracle-versionen st\u00f6ds inte. Den l\u00e4gsta version som st\u00f6ds \u00e4r 7.2.3. + +ORA-17442=V\u00e4rdet f\u00f6r REFCURSOR \u00e4r ogiltigt + +ORA-17443=Anv\u00e4ndare \u00e4r null eller ocks\u00e5 st\u00f6ds inte l\u00f6senordet i drivrutinen THIN + +ORA-17444=Den version av TTC-protokollet som mottogs fr\u00e5n servern st\u00f6ds inte + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/e02c041498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/e02c041498af001c18c4935e001381da new file mode 100644 index 0000000..bb971d6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ba/e02c041498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bb/30dbb71698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bb/30dbb71698af001c18c4935e001381da new file mode 100644 index 0000000..1324811 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bb/30dbb71698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bb/b016df78faa3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bb/b016df78faa3001c1027e59cc3e35e89 new file mode 100644 index 0000000..07e8854 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bb/b016df78faa3001c1027e59cc3e35e89 @@ -0,0 +1,19 @@ +package fr.blankoworld.connexionBDD; +package oracle.jdbc.driver.*; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bb/b095621398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bb/b095621398af001c18c4935e001381da new file mode 100644 index 0000000..755d2e5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bb/b095621398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bc/5024bc4601a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bc/5024bc4601a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..9765e8a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bc/5024bc4601a4001c1027e59cc3e35e89 @@ -0,0 +1,58 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + System.out.println("Requte: Envoye et reue."); + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bc/b0b0e2347da9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bc/b0b0e2347da9001c1d3abf97745a02da new file mode 100644 index 0000000..d712839 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bc/b0b0e2347da9001c1d3abf97745a02da @@ -0,0 +1,54 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JTextArea; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu + // A FAIRE + + JTextArea zoneTexteStatut = new JTextArea(6,60); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bc/c05d4b1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bc/c05d4b1698af001c18c4935e001381da new file mode 100644 index 0000000..0839220 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bc/c05d4b1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bd/1061ca1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bd/1061ca1b98af001c18c4935e001381da new file mode 100644 index 0000000..91f2b42 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bd/1061ca1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bd/50d8e51b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bd/50d8e51b98af001c18c4935e001381da new file mode 100644 index 0000000..5508725 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bd/50d8e51b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bd/d0446135c2a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bd/d0446135c2a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/be/a0b9ff1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/be/a0b9ff1698af001c18c4935e001381da new file mode 100644 index 0000000..3c40cfd Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/be/a0b9ff1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/0021201905a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/0021201905a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..7485cb1 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/0021201905a4001c1027e59cc3e35e89 @@ -0,0 +1,77 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + System.out.println(r); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/40eb0f7e00a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/40eb0f7e00a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..f155295 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/40eb0f7e00a4001c1027e59cc3e35e89 @@ -0,0 +1,54 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = connection.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/80e09e4cc7a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/80e09e4cc7a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..6f3b28b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/80e09e4cc7a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + JOptionPane.showOptionDialog(null, "Message d'essai", "Configuration", 1, 1, jlabelBase, "Valeur initiale"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/d081781998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/d081781998af001c18c4935e001381da new file mode 100644 index 0000000..db5e164 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/d081781998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/d0904a5d83a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/d0904a5d83a9001c1d3abf97745a02da new file mode 100644 index 0000000..a008df8 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/d0904a5d83a9001c1d3abf97745a02da @@ -0,0 +1,107 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/f0a9052b9daf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/f0a9052b9daf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..16c567f --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/bf/f0a9052b9daf001c1c2eb8ec16be26ca @@ -0,0 +1,149 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + DatabaseMetaData metaData; + + metaData = connection.getMetaData(); + System.out.println(metaData.getDriverName()); + System.out.println(metaData.getDriverVersion());// getVersion + System.out.println(metaData.getConnection().toString());// getConnectionName ??? + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/009fda1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/009fda1998af001c18c4935e001381da new file mode 100644 index 0000000..73248a9 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/009fda1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/304b1bcc79a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/304b1bcc79a9001c1d3abf97745a02da new file mode 100644 index 0000000..15e7657 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/304b1bcc79a9001c1d3abf97745a02da @@ -0,0 +1,100 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/305a64f920af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/305a64f920af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..9e2c745 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/305a64f920af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Dahili Hata + +ORA-17002=G/\u00c7 istisnas\u0131 + +ORA-17003=Ge\u00e7ersiz s\u00fctun dizini + +ORA-17004=Ge\u00e7ersiz s\u00fctun t\u00fcr\u00fc + +ORA-17005=Desteklenmeyen s\u00fctun t\u00fcr\u00fc + +ORA-17006=Ge\u00e7ersiz s\u00fctun ad\u0131 + +ORA-17007=Ge\u00e7ersiz dinamik s\u00fctun + +ORA-17008=Kapal\u0131 Ba\u011flant\u0131 + +ORA-17009=Kapal\u0131 Deyim + +ORA-17010=Kapal\u0131 Sonu\u00e7 K\u00fcmesi + +ORA-17011=Yetersiz Sonu\u00e7 K\u00fcmesi + +ORA-17012=Parametre T\u00fcr\u00fc \u00c7ak\u0131\u015fmas\u0131 + +ORA-17014=ResultSet.next \u00e7a\u011fr\u0131lmad\u0131 + +ORA-17015=Deyim iptal edildi + +ORA-17016=Deyim zaman a\u015f\u0131m\u0131na u\u011frad\u0131 + +ORA-17017=\u0130mle\u00e7 zaten ba\u015flat\u0131lm\u0131\u015f + +ORA-17018=Ge\u00e7ersiz imle\u00e7 + +ORA-17019=Yaln\u0131zca bir sorgu tan\u0131mlanabilir + +ORA-17020=Ge\u00e7ersiz sat\u0131r getirme + +ORA-17021=Eksik tan\u0131mlama + +ORA-17022=Dizinde eksik tan\u0131mlama + +ORA-17023=Desteklenmeyen \u00f6zellik + +ORA-17024=Veri okunmad\u0131 + +ORA-17025=Defines.isNull () fonksiyonunda hata + +ORA-17026=Say\u0131sal Ta\u015fma + +ORA-17027=Veri ak\u0131\u015f\u0131 zaten kapat\u0131lm\u0131\u015f + +ORA-17028=Ge\u00e7erli Sonu\u00e7 K\u00fcmesi kapat\u0131l\u0131ncaya kadar yeni tan\u0131mlamalar yap\u0131lamaz + +ORA-17029=setReadOnly: Salt okunur ba\u011flant\u0131lar desteklenmiyor + +ORA-17030=Ge\u00e7erli hareket d\u00fczeyleri yaln\u0131zca READ_COMMITTED ve SERIALIZABLE''d\u0131r + +ORA-17031=setAutoClose: Yaln\u0131zca otomatik kapatma modunun a\u00e7\u0131k olmas\u0131n\u0131 destekler + +ORA-17032=sat\u0131r getirme, s\u0131f\u0131r olarak ayarlanamaz + +ORA-17033=Hatal\u0131 olu\u015fturulan SQL92 dizesinin konumu: + +ORA-17034=Desteklenmeyen SQL92 belirtecinin konumu: + +ORA-17035=Karakter K\u00fcmesi Desteklenmiyor !! + +ORA-17036=OracleNumber istisnas\u0131 + +ORA-17037=UTF8 ile UCS2 aras\u0131nda d\u00f6n\u00fc\u015ft\u00fcrme ba\u015far\u0131s\u0131z + +ORA-17038=Byte dizisi yeterince uzun de\u011fil + +ORA-17039=Char dizisi yeterince uzun de\u011fil + +ORA-17040=Ba\u011flant\u0131 URL''sinde Alt Protokol belirlenmeli + +ORA-17041=IN veya OUT parametresinin eksik oldu\u011fu dizin: + +ORA-17042=Ge\u00e7ersiz Toplu \u0130\u015flem De\u011feri + +ORA-17043=Ge\u00e7ersiz maksimum veri ak\u0131\u015f\u0131 de\u011feri + +ORA-17044=Dahili hata: Veri dizisi ayr\u0131lmad\u0131 + +ORA-17045=Dahili hata: Toplu i\u015flem de\u011ferinin sonras\u0131ndaki ba\u011flama de\u011ferine eri\u015fim denemesi + +ORA-17046=Dahili hata: Veri eri\u015fimi i\u00e7in ge\u00e7ersiz dizin + +ORA-17047=T\u00fcr A\u00e7\u0131klay\u0131c\u0131s\u0131 ayr\u0131\u015ft\u0131rma hatas\u0131 + +ORA-17048=Tan\u0131ms\u0131z t\u00fcr + +ORA-17049=Tutars\u0131z java ve sql nesne t\u00fcrleri + +ORA-17050=vekt\u00f6rde b\u00f6yle \u00f6\u011fe yok + +ORA-17051=Bu API, UDT d\u0131\u015f\u0131ndaki t\u00fcrlerde kullan\u0131lamaz + +ORA-17052=Bu ba\u015fvuru ge\u00e7ersiz + +ORA-17053=Boyut ge\u00e7erli de\u011fil + +ORA-17054=\u0130\u015eK yerle\u015ftiricisi ge\u00e7erli de\u011fil + +ORA-17055=Ge\u00e7ersiz karakterlerle kar\u015f\u0131la\u015f\u0131ld\u0131 + +ORA-17056=Desteklenmeyen karakter k\u00fcmesi + +ORA-17057=Kapal\u0131 \u0130\u015eK + +ORA-17058=Dahili hata: Ge\u00e7ersiz NLS D\u00f6n\u00fc\u015ft\u00fcrme oran\u0131 + +ORA-17059=Dahili g\u00f6sterime d\u00f6n\u00fc\u015ft\u00fcr\u00fclemedi + +ORA-17060=A\u00e7\u0131klay\u0131c\u0131y\u0131 olu\u015fturulamad\u0131 + +ORA-17061=Eksik a\u00e7\u0131klay\u0131c\u0131 + +ORA-17062=Ba\u015fvuru imleci ge\u00e7ersiz + +ORA-17063=Hareket i\u00e7inde de\u011fil + +ORA-17064=Ge\u00e7ersiz s\u00f6zdizimi veya veritaban\u0131 ad\u0131 bo\u015f + +ORA-17065=D\u00f6n\u00fc\u015ft\u00fcrme s\u0131n\u0131f\u0131 bo\u015f + +ORA-17066=Eri\u015fim katman\u0131na \u00f6zel uygulama gerekiyor + +ORA-17067=Ge\u00e7ersiz Oracle URL''si belirlendi + +ORA-17068=\u00c7a\u011fr\u0131da ge\u00e7ersiz ba\u011f\u0131ms\u0131z de\u011fi\u015fkenler var + +ORA-17069=Belirtilik XA \u00e7a\u011fr\u0131s\u0131 kullan + +ORA-17070=Veri boyutu, bu t\u00fcr\u00fcn maksimum de\u011ferinden daha b\u00fcy\u00fck + +ORA-17071=Maksimum VARRAY s\u0131n\u0131r\u0131 a\u015f\u0131ld\u0131 + +ORA-17072=Girilen de\u011fer s\u00fctun i\u00e7in \u00e7ok b\u00fcy\u00fck + +ORA-17073=Mant\u0131ksal kontrol noktas\u0131 art\u0131k ge\u00e7erli de\u011fil + +ORA-17074=ge\u00e7ersiz ad deseni + +ORA-17075=Salt iletilen sonu\u00e7 k\u00fcmesi i\u00e7in ge\u00e7ersiz i\u015flem + +ORA-17076=Salt okunur sonu\u00e7 k\u00fcmesi i\u00e7in ge\u00e7ersiz i\u015flem + +ORA-17077=REF de\u011feri ayarlanamad\u0131 + +ORA-17078=Ba\u011flant\u0131lar zaten a\u00e7\u0131k oldu\u011fundan i\u015flem yap\u0131lam\u0131yor + +ORA-17079=Kullan\u0131c\u0131n\u0131n kimlik bilgileri mevcut olanlarla e\u015fle\u015fmiyor + +ORA-17080=ge\u00e7ersiz toplu i\u015flem komutu + +ORA-17081=toplu i\u015flem s\u0131ras\u0131nda hata olu\u015ftu + +ORA-17082=Ge\u00e7erli sat\u0131r yok + +ORA-17083=Araya eklenen sat\u0131rda de\u011fil + +ORA-17084=Araya eklenen sat\u0131rda \u00e7a\u011fr\u0131ld\u0131 + +ORA-17085=De\u011fer \u00e7ak\u0131\u015fmas\u0131 olu\u015ftu + +ORA-17086=Ekleme sat\u0131r\u0131nda tan\u0131mlanmam\u0131\u015f s\u00fctun de\u011feri + +ORA-17087=Yoksay\u0131lan sistem performans\u0131 ipucu: setFetchDirection() + +ORA-17088=\u0130stenen sonu\u00e7 k\u00fcmesi t\u00fcr\u00fc ve verilere e\u015fzamanl\u0131 eri\u015fim d\u00fczeyi i\u00e7in desteklenmeyen s\u00f6zdizimi +ORA-17089=dahili hata + +ORA-17090=i\u015fleme izin verilmedi + +ORA-17091=\u0130stenen t\u00fcrde ve/veya verilere e\u015fzamanl\u0131 eri\u015fim d\u00fczeyinde sonu\u00e7 k\u00fcmesi yarat\u0131lam\u0131yor + +ORA-17092=\u00c7a\u011fr\u0131 i\u015fleminin sonunda JDBC deyimleri yarat\u0131lamaz veya y\u00fcr\u00fct\u00fclemez + +ORA-17093=OCI i\u015flemi OCI_SUCCESS_WITH_INFO d\u00f6nd\u00fcrd\u00fc + +ORA-17094=Nesne t\u00fcr\u00fc s\u00fcr\u00fcm uyu\u015fmazl\u0131\u011f\u0131 + +ORA-17095=Deyim \u00f6nbellek boyutu ayarlanmam\u0131\u015f + +ORA-17096=Bu mant\u0131ksal ba\u011flant\u0131 i\u00e7in Deyimi \u00d6nbelle\u011fe Alma etkinle\u015ftirilemez. + +ORA-17097=Ge\u00e7ersiz PL/SQL Dizin Tablosu \u00f6\u011fe t\u00fcr\u00fc + +ORA-17098=Ge\u00e7ersiz bo\u015f i\u015f kolu i\u015flemi + +ORA-17099=Ge\u00e7ersiz PL/SQL Dizin Tablosu dizi uzunlu\u011fu + +ORA-17100=Ge\u00e7ersiz veritaban\u0131 Java Nesnesi + +ORA-17101=OCI Ba\u011flant\u0131 Havuzu Nesnesi'nde ge\u00e7ersiz nitelikler + +ORA-17102=Bfile salt okunur + +ORA-17103=getConnection \u00fczerinden d\u00f6nmek i\u00e7in ba\u011flant\u0131 t\u00fcr\u00fc ge\u00e7ersiz. Yerine GetJavaSqlConnection'\u0131 kullan\u0131n + +ORA-17104=Y\u00fcr\u00fct\u00fclecek SQL deyimi bo\u015f veya NULL olamaz + +ORA-17105=ba\u011flant\u0131 oturumu saat dilimi ayarlanmad\u0131 + +ORA-17106=ge\u00e7ersiz JDBC-OCI s\u00fcr\u00fcc\u00fcs\u00fc ba\u011flant\u0131 havuzu konfig\u00fcrasyonu belirlendi + +ORA-17107=ge\u00e7ersiz proxy t\u00fcr\u00fc belirlendi + +ORA-17108=defineColumnType y\u00f6nteminde maksimum uzunluk belirlenmemi\u015f + +ORA-17109=standart Java karakter kodlamas\u0131 bulunamad\u0131 + +ORA-17110=y\u00fcr\u00fctme uyar\u0131 ile tamamland\u0131 + +ORA-17111=Ge\u00e7ersiz ba\u011flant\u0131 \u00f6nbelle\u011fi TTL zaman a\u015f\u0131m\u0131 belirlendi + +ORA-17112=Ge\u00e7ersiz thread aral\u0131\u011f\u0131 belirlendi + +ORA-17113=Thread aral\u0131k de\u011feri, \u00f6nbellek zaman a\u015f\u0131m\u0131 de\u011ferinden b\u00fcy\u00fck + +ORA-17114=yerel i\u015flemi kaydetme, genel i\u015flemde kullan\u0131lamad\u0131 + +ORA-17115=yerel i\u015flem geri alma, genel i\u015flemde kullan\u0131lamad\u0131 + +ORA-17116=etkin genel hareket i\u00e7inde otomatik kaydetme a\u00e7\u0131lamad\u0131 + +ORA-17117=etkin genel hareket i\u00e7inde kay\u0131t noktas\u0131 ayarlanamad\u0131 + +ORA-17118=adland\u0131r\u0131lan bir Kaydetme Noktas\u0131n\u0131n No.'su al\u0131namad\u0131 + +ORA-17119=adland\u0131r\u0131lmayan bir Kaydetme Noktas\u0131n\u0131n ad\u0131 al\u0131namad\u0131 + +ORA-17120=otomatik kaydetme a\u00e7\u0131kken bir Kaydetme Noktas\u0131 ayarlanamad\u0131 + +ORA-17121=otomatik kaydetme a\u00e7\u0131kken bir Kaydetme Noktas\u0131na geri d\u00f6n\u00fclemedi + +ORA-17122=genel bir i\u015flemde yerel bir i\u015flem Kaydetme Noktas\u0131na geri d\u00f6n\u00fclemedi + +ORA-17123=Ge\u00e7ersiz deyim \u00f6nbellek boyutu belirlendi + +ORA-17124=Ge\u00e7ersiz ba\u011flant\u0131 \u00f6nbelle\u011fi Edilgenlik zaman a\u015f\u0131m\u0131 belirlendi + +ORA-17200=XA a\u00e7ma dizesi Java'dan C'ye d\u00fczg\u00fcn bi\u00e7imde d\u00f6n\u00fc\u015ft\u00fcr\u00fclemiyor + +ORA-17201=XA kapatma dizesi Java'dan C'ye d\u00fczg\u00fcn bi\u00e7imde d\u00f6n\u00fc\u015ft\u00fcr\u00fclemiyor + +ORA-17202=RM ad\u0131 Java'dan C'ye d\u00fczg\u00fcn bi\u00e7imde d\u00f6n\u00fc\u015ft\u00fcr\u00fclemiyor + +ORA-17203=\u0130\u015faret\u00e7i t\u00fcr\u00fc jlong t\u00fcr\u00fcne d\u00f6n\u00fc\u015ft\u00fcr\u00fclemedi + +ORA-17204=Girdi dizisi, OCI tutama\u00e7lar\u0131n\u0131 tutamayacak kadar k\u0131sa + +ORA-17205=OCISvcCtx tutamac\u0131 xaoSvcCtx kullan\u0131larak C-XA'dan al\u0131namad\u0131 + +ORA-17206=OCIEnv tutamac\u0131 xaoEnv kullan\u0131larak C-XA'dan al\u0131namad\u0131 + +ORA-17207=TnsEntry niteli\u011fi, Veri Kayna\u011f\u0131 i\u00e7inde ayarlanmad\u0131 + +ORA-17213=xa_open s\u0131ras\u0131nda C-XA, XAER_RMERR d\u00f6nd\u00fcrd\u00fc + +ORA-17215=xa_open s\u0131ras\u0131nda C-XA, XAER_INVAL d\u00f6nd\u00fcrd\u00fc + +ORA-17216=xa_open s\u0131ras\u0131nda C-XA, XAER_PROTO d\u00f6nd\u00fcrd\u00fc + +ORA-17233=xa_close s\u0131ras\u0131nda C-XA, XAER_RMERR d\u00f6nd\u00fcrd\u00fc + +ORA-17235=xa_close s\u0131ras\u0131nda C-XA, XAER_INVAL d\u00f6nd\u00fcrd\u00fc + +ORA-17236=xa_close s\u0131ras\u0131nda C-XA, XAER_PROTO d\u00f6nd\u00fcrd\u00fc + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokol ihlali + +ORA-17402=Tek bir RPA mesaj\u0131 bekleniyor + +ORA-17403=Yaln\u0131zca bir RXH mesaj\u0131 bekleniyor + +ORA-17404=Beklenenden daha \u00e7ok say\u0131da RXD al\u0131nd\u0131 + +ORA-17405=UAC uzunlu\u011fu s\u0131f\u0131r de\u011fil + +ORA-17406=Maksimum arabellek uzunlu\u011fu a\u015f\u0131l\u0131yor + +ORA-17407=ge\u00e7ersiz T\u00fcr Temsili (setRep) + +ORA-17408=Ge\u00e7ersiz T\u00fcr Sunumu (getRep) + +ORA-17409=ge\u00e7ersiz arabellek uzunlu\u011fu + +ORA-17410=Yuvadan okunacak ba\u015fka veri yok + +ORA-17411=Veri T\u00fcr\u00fc sunumlar\u0131 uyumsuzlu\u011fu + +ORA-17412=T\u00fcr uzunlu\u011fu maksimum de\u011ferden daha b\u00fcy\u00fck + +ORA-17413=Anahtar boyutu a\u015f\u0131l\u0131yor + +ORA-17414=S\u00fctun Adlar\u0131n\u0131 saklamak i\u00e7in yetersiz Arabellek boyutu + +ORA-17415=Bu t\u00fcr i\u015flenmedi + +ORA-17416=FATAL + +ORA-17417=NLS Sorunu, s\u00fctun adlar\u0131n\u0131n kodlamas\u0131 \u00e7\u00f6z\u00fclemedi + +ORA-17418=Dahili yap\u0131n\u0131n alan uzunlu\u011funda hata + +ORA-17419=Ge\u00e7ersiz say\u0131da s\u00fctun d\u00f6nd\u00fcr\u00fcld\u00fc + +ORA-17420=Oracle S\u00fcr\u00fcm\u00fc tan\u0131mlanmam\u0131\u015f + +ORA-17421=T\u00fcrler veya Ba\u011flant\u0131 tan\u0131mlanmam\u0131\u015f + +ORA-17422=Factory i\u00e7inde ge\u00e7ersiz s\u0131n\u0131f + +ORA-17423=Tan\u0131ml\u0131 bir IOV olmaks\u0131z\u0131n PLSQL blo\u011fu kullan\u0131l\u0131yor + +ORA-17424=Farkl\u0131 marshaling i\u015flemi deneniyor + +ORA-17425=PLSQL blo\u011funda veri ak\u0131\u015f\u0131 d\u00f6nd\u00fcr\u00fcl\u00fcyor + +ORA-17426=Hem IN hem de OUT ba\u011flar\u0131 NULL + +ORA-17427=Ba\u015flat\u0131lmam\u0131\u015f OAC kullan\u0131l\u0131yor + +ORA-17428=Connect sonras\u0131nda logon \u00e7a\u011fr\u0131lmal\u0131d\u0131r + +ORA-17429=En az\u0131ndan sunucuya ba\u011fl\u0131 olmal\u0131d\u0131r + +ORA-17430=Sunucuda oturum a\u00e7m\u0131\u015f olmal\u0131d\u0131r + +ORA-17431=Ayr\u0131\u015ft\u0131r\u0131lacak SQL Deyimi bo\u015f + +ORA-17432=all7 i\u00e7inde ge\u00e7ersiz se\u00e7enekler + +ORA-17433=\u00e7a\u011fr\u0131da ge\u00e7ersiz ba\u011f\u0131ms\u0131z de\u011fi\u015fkenler + +ORA-17434=veri ak\u0131\u015f\u0131 modunda de\u011fil + +ORA-17435=IOV i\u00e7inde ge\u00e7ersiz say\u0131da in_out_binds + +ORA-17436=ge\u00e7ersiz say\u0131da outbind + +ORA-17437=PLSQL blo\u011fu IN/OUT ba\u011f\u0131ms\u0131z de\u011fi\u015fkenlerinde hata + +ORA-17438=Dahili - Beklenmeyen de\u011fer + +ORA-17439=Ge\u00e7ersiz SQL t\u00fcr\u00fc + +ORA-17440=DBItem/DBType bo\u015f + +ORA-17441=Oracle S\u00fcr\u00fcm\u00fc desteklenmiyor. Desteklenen en eski s\u00fcr\u00fcm 7.2.3. + +ORA-17442=Refcursor de\u011feri ge\u00e7ersiz + +ORA-17443=THIN s\u00fcr\u00fcc\u00fcs\u00fcnde bo\u015f kullan\u0131c\u0131 ad\u0131 veya parola desteklenmiyor + +ORA-17444=Sunucudan al\u0131nan TTC Protokol\u00fc s\u00fcr\u00fcm\u00fc desteklenmiyor + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/e09fca1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/e09fca1698af001c18c4935e001381da new file mode 100644 index 0000000..d157928 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c/e09fca1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c0/100fd21598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c0/100fd21598af001c18c4935e001381da new file mode 100644 index 0000000..c4a4800 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c0/100fd21598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c0/8074813b80a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c0/8074813b80a9001c1d3abf97745a02da new file mode 100644 index 0000000..3b4c138 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c0/8074813b80a9001c1d3abf97745a02da @@ -0,0 +1,104 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuJeu_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuJeuQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c0/9040781398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c0/9040781398af001c18c4935e001381da new file mode 100644 index 0000000..dd077c4 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c0/9040781398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/00f4341a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/00f4341a98af001c18c4935e001381da new file mode 100644 index 0000000..35adc75 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/00f4341a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/b013391efea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/b013391efea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..ea03b0e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/b013391efea3001c1027e59cc3e35e89 @@ -0,0 +1,42 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.*; +import javax.sql.*; +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + // Fermer la base de donne + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/b02f52ef79a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/b02f52ef79a9001c1d3abf97745a02da new file mode 100644 index 0000000..50d4309 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/b02f52ef79a9001c1d3abf97745a02da @@ -0,0 +1,104 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/b0a38a814eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/b0a38a814eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..731ad52 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/b0a38a814eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,153 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + // Rcupration des donnes entres par l'utilisateur + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getPassword().toString(); + + // Affichage du message de configurmation + this.pr.confirmationConnexion(this.serveur); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/f088811698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/f088811698af001c18c4935e001381da new file mode 100644 index 0000000..14cd117 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c1/f088811698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c2/80b266fafda3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c2/80b266fafda3001c1027e59cc3e35e89 new file mode 100644 index 0000000..2cc148d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c2/80b266fafda3001c1027e59cc3e35e89 @@ -0,0 +1,44 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.*; +import javax.sql.*; +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c2/9092e11b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c2/9092e11b98af001c18c4935e001381da new file mode 100644 index 0000000..831b955 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c2/9092e11b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c3/30acb9d597af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c3/30acb9d597af001c18c4935e001381da new file mode 100644 index 0000000..8f310ce --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c3/30acb9d597af001c18c4935e001381da @@ -0,0 +1,149 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + DatabaseMetaData metaData; + + metaData = connection.getMetaData(); + System.out.println(metaData.getDriverName()); + System.out.println(metaData.getDriverVersion());// getVersion + System.out.println(metaData.getConnection().toString())// getConnectionName ??? + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c3/80c86650c8a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c3/80c86650c8a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..baf44b6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c3/80c86650c8a4001c1acc9f54b60f9b57 @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre.set + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + + Panneau_Centre.add(jtextServeur) + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c4/0069591e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c4/0069591e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..471a3db --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c4/0069591e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Erreur interne + +ORA-17002=Exception d\'E/S + +ORA-17003=Index de colonne non valide + +ORA-17004=Type de colonne non valide + +ORA-17005=Type de colonne non pris en charge + +ORA-17006=Nom de colonne non valide + +ORA-17007=Colonne dynamique non valide + +ORA-17008=Connexion interrompue + +ORA-17009=Instruction ferm\u00e9e + +ORA-17010=Ensemble de r\u00e9sultats ferm\u00e9 + +ORA-17011=Ensemble de r\u00e9sultats \u00e9puis\u00e9 + +ORA-17012=Conflit de type de param\u00e8tre + +ORA-17014=ResultSet.next n\'a pas \u00e9t\u00e9 appel\u00e9 + +ORA-17015=Instruction annul\u00e9e + +ORA-17016=D\u00e9lai de l\'instruction d\u00e9pass\u00e9 + +ORA-17017=Curseur d\u00e9j\u00e0 initialis\u00e9 + +ORA-17018=Curseur non valide + +ORA-17019=Peut uniquement d\u00e9crire une interrogation + +ORA-17020=Pr\u00e9-extraction de ligne non valide + +ORA-17021=D\u00e9finitions manquantes + +ORA-17022=D\u00e9finitions manquantes dans l\'index + +ORA-17023=Fonction non prise en charge + +ORA-17024=Aucune donn\u00e9e n\'a \u00e9t\u00e9 lue + +ORA-17025=Erreur dans defines.isNull () + +ORA-17026=D\u00e9passement num\u00e9rique + +ORA-17027=Le flux de donn\u00e9es est d\u00e9j\u00e0 ferm\u00e9 + +ORA-17028=Nouvelles d\u00e9finitions impossibles avant la fermeture de l\'ensemble de r\u00e9sultats courant + +ORA-17029=setReadOnly: connexions en lecture seule non prises en charge + +ORA-17030=READ_COMMITTED et SERIALIZABLE sont les seuls niveaux de transaction valides + +ORA-17031=setAutoClose: ne prend en charge que le mode auto close on + +ORA-17032=impossible de d\u00e9finir la pr\u00e9-extraction de ligne \u00e0 z\u00e9ro + +ORA-17033=Cha\u00eene SQL92 mal formul\u00e9e \u00e0 l\'emplacement + +ORA-17034=Token SQL92 non pris en charge \u00e0 l\'emplacement + +ORA-17035=Jeu de caract\u00e8res non pris en charge + +ORA-17036=exception dans OracleNumber + +ORA-17037=Echec de conversion entre UTF8 et UCS2 + +ORA-17038=Tableau d\'octets trop court + +ORA-17039=Tableau de caract\u00e8res trop court + +ORA-17040=Le sous-protocole doit \u00eatre pr\u00e9cis\u00e9 dans l\'URL de la connexion + +ORA-17041=Param\u00e8tre IN ou OUT absent dans l\'index : + +ORA-17042=Valeur de lot non valide + +ORA-17043=Taille maximale du flux de donn\u00e9es non valide + +ORA-17044=Erreur interne : tableau de donn\u00e9es non allou\u00e9 + +ORA-17045=Erreur interne : tentative d\'acc\u00e8s \u00e0 des valeurs de lien sup\u00e9rieures \u00e0 la valeur de lot + +ORA-17046=Erreur interne : index non valide pour l\'acc\u00e8s aux donn\u00e9es + +ORA-17047=Erreur dans l\'analyse du descripteur de type + +ORA-17048=Type non d\u00e9termin\u00e9 + +ORA-17049=Types d\'objet JAVA et SQL incoh\u00e9rents + +ORA-17050=\u00e9l\u00e9ment inexistant dans le vecteur + +ORA-17051=Cette API ne peut pas \u00eatre utilis\u00e9e pour les types autres que UDT + +ORA-17052=R\u00e9f\u00e9rence non valide + +ORA-17053=Taille non valide + +ORA-17054=Indicateur LOB non valide + +ORA-17055=Caract\u00e8re non valide rencontr\u00e9 dans + +ORA-17056=Jeu de caract\u00e8res non pris en charge + +ORA-17057=LOB ferm\u00e9 + +ORA-17058=Erreur interne : taux de conversion NLS non valide + +ORA-17059=Echec de conversion dans la repr\u00e9sentation interne + +ORA-17060=Echec de construction du descripteur + +ORA-17061=Descripteur absent + +ORA-17062=Curseur REF non valide + +ORA-17063=Pas dans une transaction + +ORA-17064=La syntaxe n\'est pas valide ou le nom de la base de donn\u00e9es est NULL + +ORA-17065=La classe de conversion a la valeur NULL + +ORA-17066=N\u00e9cessite une mise en oeuvre sp\u00e9cifique \u00e0 la couche d\'acc\u00e8s + +ORA-17067=L\'URL Oracle indiqu\u00e9e n\'est pas valide + +ORA-17068=Arguments non valides dans l\'appel + +ORA-17069=Utiliser un appel XA explicite + +ORA-17070=La taille des donn\u00e9es est sup\u00e9rieure \u00e0 la taille max. pour ce type + +ORA-17071=Limite VARRAY maximale d\u00e9pass\u00e9e + +ORA-17072=La valeur ins\u00e9r\u00e9e est trop grande pour la colonne + +ORA-17073=Le descripteur logique n\'est plus valide + +ORA-17074=Le mod\u00e8le de nom n\'est pas valide + +ORA-17075=Op\u00e9ration non valide sur un ensemble de r\u00e9sultats de type forward-only + +ORA-17076=Op\u00e9ration non valide sur un ensemble de r\u00e9sultats de type read-only + +ORA-17077=Echec de la d\u00e9finition de la valeur REF + +ORA-17078=Impossible d\'effectuer l\'op\u00e9ration car des connexions sont d\u00e9j\u00e0 ouvertes + +ORA-17079=Les informations d\'identification et de connexion de l\'utilisateur ne correspondent pas \u00e0 celles existantes + +ORA-17080=commande par lot non valide + +ORA-17081=erreur pendant le traitement par lots + +ORA-17082=Aucune ligne en cours + +ORA-17083=Pas sur la ligne d\'insertion + +ORA-17084=Appel\u00e9 sur la ligne d\'insertion + +ORA-17085=Un conflit de valeur s\'est produit + +ORA-17086=Valeur de colonne non d\u00e9finie sur la ligne d\'insertion + +ORA-17087=Conseil de performance ignor\u00e9 : setFetchDirection() + +ORA-17088=Syntaxe non prise en charge pour le type d\'ensemble de r\u00e9sultats et le niveau de simultan\u00e9it\u00e9 requis +ORA-17089=erreur interne + +ORA-17090=op\u00e9ration interdite + +ORA-17091=Impossible de cr\u00e9er un ensemble de r\u00e9sultats avec le type et/ou le niveau de simultan\u00e9it\u00e9 requis + +ORA-17092=Impossible de cr\u00e9er ou d\'ex\u00e9cuter des instructions JDBC \u00e0 la fin du traitement d\'appel + +ORA-17093=L\'op\u00e9ration OCI a renvoy\u00e9 OCI_SUCCESS_WITH_INFO + +ORA-17094=Non-concordance de la version de type d\'objet + +ORA-17095=La taille du cache d'instruction n'a pas \u00e9t\u00e9 d\u00e9fini + +ORA-17096=La mise en m\u00e9moire cache d\'instruction ne peut pas \u00eatre activ\u00e9e pour cette connexion logique. + +ORA-17097=Type d\'\u00e9l\u00e9ment de table d\'index PL/SQL non valide + +ORA-17098=Op\u00e9ration LOB vide non valide + +ORA-17099=Longueur de tableau de table d\'index PL/SQL non valide + +ORA-17100=Objet Java de base de donn\u00e9es non valide + +ORA-17101=Propri\u00e9t\u00e9s non valides dans l\'objet de pool de connexions OCI + +ORA-17102=Le fichier BFILE est en lecture seule + +ORA-17103=type de connexion non valide \u00e0 renvoyer via getConnection. Utilisez getJavaSqlConnection \u00e0 la place + +ORA-17104=L\'instruction SQL \u00e0 ex\u00e9cuter ne peut \u00eatre ni vide ni null + +ORA-17105=fuseau horaire de la session de connexion non d\u00e9fini + +ORA-17106=La configuration de pool de connexions de pilote JDBC-OCI indiqu\u00e9e n'est pas valide + +ORA-17107=Type proxy indiqu\u00e9 non valide + +ORA-17108=Aucune longueur max. indiqu\u00e9e dans defineColumnType + +ORA-17109=encodage de caract\u00e8res Java standard introuvable + +ORA-17110=ex\u00e9cution termin\u00e9e avec avertissement + +ORA-17111=Le d\u00e9lai de temporisation de cache de connexion TTL indiqu\u00e9 n'est pas valide + +ORA-17112=L'intervalle de thread indiqu\u00e9 n'est pas valide + +ORA-17113=La valeur de l'intervalle de thread est sup\u00e9rieure \u00e0 la valeur de temporisation du cache + +ORA-17114=impossible d'utiliser une validation (commit) de transaction locale dans une transaction globale + +ORA-17115=impossible d'utiliser une annulation (rollback) de transaction locale dans une transaction globale + +ORA-17116=impossible d'activer le mode autocommit dans une transaction globale active + +ORA-17117=impossible de d\u00e9finir un savepoint dans une transaction globale active + +ORA-17118=impossible d'obtenir l'ID d'un savepoint nomm\u00e9 + +ORA-17119=impossible d'obtenir le nom d'un savepoint sans nom + +ORA-17120=impossible de d\u00e9finir un savepoint lorsque le mode autocommit est activ\u00e9 + +ORA-17121=impossible d'annuler (rollback) un savepoint lorsque le mode autocommit est activ\u00e9 + +ORA-17122=impossible d'annuler (rollback) un savepoint de transaction locale dans une transaction globale + +ORA-17123=La taille de cache d'instruction indiqu\u00e9e n'est pas valide + +ORA-17124=Le d\u00e9lai d'inactivit\u00e9 de cache de connexion indiqu\u00e9 n'est pas valide + +ORA-17200=Impossible de convertir correctement la cha\u00eene XA open de Java en C + +ORA-17201=Impossible de convertir correctement la cha\u00eene de XA close de Java en C + +ORA-17202=Impossible de convertir correctement le nom RM de Java en C + +ORA-17203=Impossible de convertir le type de pointeur en jlong + +ORA-17204=Tableau d\'entr\u00e9e trop court pour contenir les descripteurs OCI + +ORA-17205=Echec d\'obtention du descripteur OCISvcCtx \u00e0 partir de C-XA \u00e0 l\'aide de xaoSvcCtx + +ORA-17206=Echec d\'obtention du descripteur OCIEnv \u00e0 partir de C-XA \u00e0 l\'aide de xaoEnv + +ORA-17207=La propri\u00e9t\u00e9 tnsEntry n\'a pas \u00e9t\u00e9 d\u00e9finie dans la source de donn\u00e9es + +ORA-17213=C-XA a renvoy\u00e9 XAER_RMERR au cours de xa_open + +ORA-17215=C-XA a renvoy\u00e9 XAER_INVAL au cours de xa_open + +ORA-17216=C-XA a renvoy\u00e9 XAER_PROTO au cours de xa_open + +ORA-17233=C-XA a renvoy\u00e9 XAER_RMERR au cours de xa_close + +ORA-17235=C-XA a renvoy\u00e9 XAER_INVAL au cours de xa_close + +ORA-17236=C-XA a renvoy\u00e9 XAER_PROTO au cours de xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violation de protocole + +ORA-17402=Un seul message RPA est attendu + +ORA-17403=Un seul message RXH est attendu + +ORA-17404=Plus de messages RXD re\u00e7us que pr\u00e9vu + +ORA-17405=La longueur UAC n\'est pas \u00e9gale \u00e0 z\u00e9ro + +ORA-17406=D\u00e9passement de la taille maximale du tampon + +ORA-17407=repr\u00e9sentation de type (setRep) non valide + +ORA-17408=repr\u00e9sentation de type (getRep) non valide + +ORA-17409=taille de tampon non valide + +ORA-17410=Il n\'y a plus de donn\u00e9es \u00e0 lire dans le socket + +ORA-17411=Non-concordance des repr\u00e9sentations de type de donn\u00e9es + +ORA-17412=La longueur du type est sup\u00e9rieure \u00e0 la valeur maximale + +ORA-17413=D\u00e9passement de la taille de la cl\u00e9 + +ORA-17414=Taille de tampon insuffisante pour le stockage des noms de colonnes + +ORA-17415=Ce type n\'a pas \u00e9t\u00e9 g\u00e9r\u00e9 + +ORA-17416=FATAL + +ORA-17417=Probl\u00e8me NLS, \u00e9chec de d\u00e9codage des noms de colonne + +ORA-17418=Erreur de longueur de champ de la structure interne + +ORA-17419=Nombre de colonnes renvoy\u00e9 non valide + +ORA-17420=Version d\'Oracle non d\u00e9finie + +ORA-17421=Connexion ou types non d\u00e9finis + +ORA-17422=Classe non valide dans l\'objet COM cr\u00e9ateur de classes + +ORA-17423=Utilisation d\'un bloc PLSQL sans d\u00e9finition d\'IOV + +ORA-17424=Tentative de r\u00e9alisation d\'une autre op\u00e9ration de conversion et de canalisation du flux de donn\u00e9es + +ORA-17425=Renvoi d\'une cha\u00eene dans le bloc PLSQL + +ORA-17426=Les liens IN et OUT ont la valeur NULL + +ORA-17427=Utilisation d\'une OAC non initialis\u00e9e + +ORA-17428=La commande Logon doit \u00eatre appel\u00e9e apr\u00e8s la connexion + +ORA-17429=Doit \u00eatre au moins connect\u00e9 au serveur + +ORA-17430=Doit \u00eatre connect\u00e9 au serveur + +ORA-17431=L\'instruction SQL \u00e0 analyser a la valeur NULL + +ORA-17432=options non valides dans all7 + +ORA-17433=arguments non valides dans l\'appel + +ORA-17434=mode d\'\u00e9criture en continu non activ\u00e9 + +ORA-17435=nombre de in_out_binds dans IOV non valide + +ORA-17436=nombre incorrect de liens outbinds + +ORA-17437=Erreur dans les arguments IN/OUT du bloc PLSQL + +ORA-17438=Interne - Valeur inattendue + +ORA-17439=Type SQL non valide + +ORA-17440=DBItem/DBType a la valeur NULL + +ORA-17441=Version d\'Oracle non prise en charge. La premi\u00e8re version support\u00e9e est la 7.2.3. + +ORA-17442=Valeur de Refcursor non valide + +ORA-17443=Utilisateur ou mot de passe NULL non pris en charge par le pilote THIN + +ORA-17444=La version de protocole TTC re\u00e7ue du serveur n\'est pas prise en charge + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c4/604f5420faa3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c4/604f5420faa3001c1027e59cc3e35e89 new file mode 100644 index 0000000..0c9acba --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c4/604f5420faa3001c1027e59cc3e35e89 @@ -0,0 +1,18 @@ +package fr.blankoworld.connexionBDD; + +public class Principal { + +static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/002ac11698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/002ac11698af001c18c4935e001381da new file mode 100644 index 0000000..1606f02 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/002ac11698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/20c4c01b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/20c4c01b98af001c18c4935e001381da new file mode 100644 index 0000000..39e2937 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/20c4c01b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/70eaef1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/70eaef1b98af001c18c4935e001381da new file mode 100644 index 0000000..fbfeef5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/70eaef1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0d324e1fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0d324e1fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..87b1f37 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0d324e1fea3001c1027e59cc3e35e89 @@ -0,0 +1,45 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + } + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/e08e231a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/e08e231a98af001c18c4935e001381da new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/f09b4a1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/f09b4a1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..43f6f9b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c6/f09b4a1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Error interno + +ORA-17002=Excepci\u00f3n de E/S + +ORA-17003=\u00cdndice de columna no v\u00e1lido + +ORA-17004=Tipo de columna no v\u00e1lido + +ORA-17005=Tipo de columna no soportado + +ORA-17006=Nombre de columna no v\u00e1lido + +ORA-17007=Columna din\u00e1mica no v\u00e1lida + +ORA-17008=Conexi\u00f3n cerrada + +ORA-17009=Sentencia cerrada + +ORA-17010=Juego de resultados cerrado + +ORA-17011=Juego de resultados agotado + +ORA-17012=Conflicto de tipo de par\u00e1metro + +ORA-17014=No se ha llamado a ResultSet.next + +ORA-17015=Se ha cancelado la sentencia + +ORA-17016=Timeout de sentencia + +ORA-17017=Ya se ha inicializado el cursor + +ORA-17018=Cursor no v\u00e1lido + +ORA-17019=S\u00f3lo puede describir una consulta + +ORA-17020=Recuperaci\u00f3n previa de fila no v\u00e1lida + +ORA-17021=Faltan definiciones + +ORA-17022=Faltan definiciones en el \u00edndice + +ORA-17023=Funci\u00f3n no soportada + +ORA-17024=No hay lectura de datos + +ORA-17025=Error en defines.isNull () + +ORA-17026=Desbordamiento Num\u00e9rico + +ORA-17027=El flujo ya se ha cerrado + +ORA-17028=No se pueden realizar nuevas definiciones hasta que no se cierre el juego de resultados actual + +ORA-17029=setReadOnly: Conexiones de s\u00f3lo lectura no soportadas + +ORA-17030=READ_COMMITTED y SERIALIZABLE son los \u00fanicos niveles de transacci\u00f3n v\u00e1lidos + +ORA-17031=setAutoClose: S\u00f3lo soporta el modo de cierre autom\u00e1tico + +ORA-17032=no se puede definir la recuperaci\u00f3n previa de fila en cero + +ORA-17033=Cadena SQL92 con formato incorrecto en la posici\u00f3n + +ORA-17034=Elemento SQL92 no soportado en la posici\u00f3n + +ORA-17035=\u00a1\u00a1Juego de caracteres no soportado!! + +ORA-17036=excepci\u00f3n en OracleNumber + +ORA-17037=Fallo al convertir entre UTF8 y UCS2 + +ORA-17038=La matriz de bytes no es suficientemente larga + +ORA-17039=La matriz de caracteres no es suficientemente larga + +ORA-17040=El subprotocolo se debe especificar en la direcci\u00f3n URL de conexi\u00f3n + +ORA-17041=Falta el par\u00e1metro IN o OUT en el \u00edndice: + +ORA-17042=Valor de lote no v\u00e1lido + +ORA-17043=Tama\u00f1o m\u00e1ximo de flujo no v\u00e1lido + +ORA-17044=Error interno: No se ha asignado la matriz de datos + +ORA-17045=Error interno: Se ha intentado acceder a valores de enlace aparte del valor de lote + +ORA-17046=Error interno: \u00cdndice no v\u00e1lido para el acceso a los datos + +ORA-17047=Error en el an\u00e1lisis del descriptor de tipo + +ORA-17048=Tipo no definido + +ORA-17049=Tipos de objeto JAVA y SQL inconsistentes + +ORA-17050=no existe ese elemento en el vector + +ORA-17051=Esta API no se puede utilizar para tipos que no sean UDT + +ORA-17052=Esta referencia no es v\u00e1lida + +ORA-17053=El tama\u00f1o no es v\u00e1lido + +ORA-17054=El localizador LOB no es v\u00e1lido + +ORA-17055=Se ha encontrado un car\u00e1cter no v\u00e1lido en + +ORA-17056=Juego de caracteres no soportado + +ORA-17057=LOB cerrado + +ORA-17058=Error interno: Ratio de conversi\u00f3n NLS no v\u00e1lida + +ORA-17059=Fallo al convertir a representaci\u00f3n interna + +ORA-17060=Fallo al construir el descriptor + +ORA-17061=Falta el descriptor + +ORA-17062=El cursor de referencia no es v\u00e1lido + +ORA-17063=No est\u00e1 en una transacci\u00f3n + +ORA-17064=La sintaxis no es v\u00e1lida o el nombre de la base de datos es nulo + +ORA-17065=La clase de conversi\u00f3n es nula + +ORA-17066=Se necesita implementaci\u00f3n concreta del nivel de acceso + +ORA-17067=La direcci\u00f3n URL de Oracle especificada no es v\u00e1lida + +ORA-17068=Argumento(s) no v\u00e1lido(s) en la llamada + +ORA-17069=Utilizar llamada XA expl\u00edcita + +ORA-17070=El tama\u00f1o de los datos es mayor que el tama\u00f1o m\u00e1ximo para este tipo + +ORA-17071=Se ha excedido el l\u00edmite m\u00e1ximo de VARRAY + +ORA-17072=El valor insertado es demasiado largo para la columna + +ORA-17073=El manejador l\u00f3gico ya no es v\u00e1lido + +ORA-17074=patr\u00f3n de nombre no v\u00e1lido + +ORA-17075=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo reenv\u00edo + +ORA-17076=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo lectura + +ORA-17077=Fallo al definir el valor REF + +ORA-17078=No se puede realizar la operaci\u00f3n ya que las conexiones ya est\u00e1n abiertas + +ORA-17079=Las credenciales del usuario no coinciden con las existentes + +ORA-17080=comando por lotes no v\u00e1lido + +ORA-17081=se ha producido un error durante el procesamiento por lotes + +ORA-17082=No es la fila actual + +ORA-17083=No est\u00e1 en la fila de inserci\u00f3n + +ORA-17084=Llamada en la fila de inserci\u00f3n + +ORA-17085=Se ha producido un conflicto de valores + +ORA-17086=El valor de la columna no est\u00e1 definido en la fila de inserci\u00f3n + +ORA-17087=Indicaci\u00f3n de rendimiento ignorada: setFetchDirection() + +ORA-17088=Sintaxis no soportada para el tipo de juego de resultados y el nivel de simultaneidad solicitados +ORA-17089=error interno + +ORA-17090=operaci\u00f3n no permitida + +ORA-17091=No se puede crear el juego de resultados en el tipo y/o nivel de simultaneidad solicitados + +ORA-17092=Las sentencias JDBC no se pueden crear o ejecutar al final del procesamiento de la llamada + +ORA-17093=La operaci\u00f3n OCI ha devuelto OCI_SUCCESS_WITH_INFO + +ORA-17094=Las versiones de tipo de objeto no coinciden + +ORA-17095=No se ha definido el tama\u00f1o de la cach\u00e9 de sentencias + +ORA-17096=La cach\u00e9 de sentencias no se puede activar para esta conexi\u00f3n l\u00f3gica. + +ORA-17097=Tipo de elemento de tabla indexada PL/SQL no v\u00e1lido + +ORA-17098=Operaci\u00f3n LOB vac\u00eda no v\u00e1lida + +ORA-17099=Longitud de matriz de tabla indexada PL/SQL no v\u00e1lida + +ORA-17100=Objeto Java de la base de datos no v\u00e1lido + +ORA-17101=Propiedades no v\u00e1lidas del objeto del conjunto de conexiones de OCI + +ORA-17102=Bfile es de s\u00f3lo lectura + +ORA-17103=tipo de conexi\u00f3n no v\u00e1lido para volver mediante getConnection. En su lugar, utilice getJavaSqlConnection + +ORA-17104=La sentencia SQL de ejecuci\u00f3n no puede estar vac\u00eda ni ser nula + +ORA-17105=no se ha definido la zona horaria de la sesi\u00f3n de conexi\u00f3n + +ORA-17106=se ha especificado una configuraci\u00f3n de conjunto de conexiones de controlador JDBC-OCI no v\u00e1lida + +ORA-17107=el tipo de proxy especificado no es v\u00e1lido + +ORA-17108=No se ha especificado la longitud m\u00e1xima en defineColumnType + +ORA-17109=no se ha encontrado la codificaci\u00f3n de car\u00e1cter Java est\u00e1ndar + +ORA-17110=la ejecuci\u00f3n ha terminado con advertencias + +ORA-17111=Se ha especificado un timeout de TTL de cach\u00e9 de conexiones no v\u00e1lido + +ORA-17112=Se ha especificado un intervalo de thread no v\u00e1lido + +ORA-17113=El valor del intervalo de thread es mayor que el valor del timeout de cach\u00e9 + +ORA-17114=no se ha podido utilizar la validaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17115=no se ha podido utilizar el rollback de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17116=no se ha podido activar la validaci\u00f3n autom\u00e1tica en una transacci\u00f3n global activa + +ORA-17117=no se ha podido definir el punto de grabaci\u00f3n en una transacci\u00f3n global activa + +ORA-17118=no se ha podido obtener el identificador de un punto de grabaci\u00f3n denominado + +ORA-17119=no se ha podido obtener el nombre de un punto de grabaci\u00f3n no denominado + +ORA-17120=no se ha podido definir un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17121=no se ha podido realizar rollback en un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17122=no se ha podido realizar rollback en un punto de grabaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17123=Se ha especificado un tama\u00f1o de cach\u00e9 de sentencias no v\u00e1lido + +ORA-17124=Se ha especificado un timout de inactividad de cach\u00e9 de conexi\u00f3n no v\u00e1lido + +ORA-17200=No se ha podido convertir correctamente la cadena de apertura de XA de Java a C + +ORA-17201=No se ha podido convertir correctamente la cadena de cierre de XA de Java a C + +ORA-17202=No se ha podido convertir correctamente el nombre de RM de Java a C + +ORA-17203=No se ha podido convertir el tipo de puntero a jlong + +ORA-17204=Matriz de entrada demasiado peque\u00f1a para contener los manejadores OCI + +ORA-17205=Fallo al obtener el manejador OCISvcCtx de C-XA mediante xaoSvcCtx + +ORA-17206=Fallo al obtener el manejador OCIEnv de C-XA mediante xaoEnv + +ORA-17207=No se ha definido la propiedad tnsEntry en el origen de datos + +ORA-17213=C-XA ha devuelto XAER_RMERR durante xa_open + +ORA-17215=C-XA ha devuelto XAER_INVAL durante xa_open + +ORA-17216=C-XA ha devuelto XAER_PROTO durante xa_open + +ORA-17233=C-XA ha devuelto XAER_RMERR durante xa_close + +ORA-17235=C-XA ha devuelto XAER_INVAL durante xa_close + +ORA-17236=C-XA ha devuelto XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violaci\u00f3n de protocolo + +ORA-17402=S\u00f3lo se espera un mensaje RPA + +ORA-17403=S\u00f3lo se espera un mensaje RXH + +ORA-17404=Se han recibido m\u00e1s RXD de los esperados + +ORA-17405=La longitud UAC no es cero + +ORA-17406=Se ha excedido la longitud m\u00e1xima del buffer + +ORA-17407=representaci\u00f3n de tipo (setRep) no v\u00e1lida + +ORA-17408=representaci\u00f3n de tipo (getRep) no v\u00e1lida + +ORA-17409=longitud de buffer no v\u00e1lida + +ORA-17410=No hay m\u00e1s datos para leer del socket + +ORA-17411=No coinciden las representaciones de Tipo de Dato + +ORA-17412=Longitud de tipo mayor que el m\u00e1ximo permitido + +ORA-17413=Se ha excedido el tama\u00f1o de la clave + +ORA-17414=Tama\u00f1o de buffer insuficiente para almacenar nombres de columnas + +ORA-17415=Este tipo no ha sido tratado + +ORA-17416=FATAL + +ORA-17417=Problema NLS, fallo al descodificar nombres de columna + +ORA-17418=Error interno de longitud de campo de la estructura + +ORA-17419=El sistema ha devuelto un n\u00famero de columnas no v\u00e1lido + +ORA-17420=No se ha definido la versi\u00f3n de Oracle + +ORA-17421=La conexi\u00f3n o los tipos no se han definido + +ORA-17422=Clase no v\u00e1lida en el tipo de objeto Factory + +ORA-17423=Se est\u00e1 utilizando un bloque PLSQL sin haber definido un IOV + +ORA-17424=Se est\u00e1 intentando realizar una operaci\u00f3n de canalizaci\u00f3n de datos entre sistemas diferente + +ORA-17425=Se est\u00e1 devolviendo un flujo en el bloque PLSQL + +ORA-17426=Los enlaces IN y OUT son NULL + +ORA-17427=Se est\u00e1 utilizando OAC no inicializado + +ORA-17428=Logon se debe llamar despu\u00e9s de Connect + +ORA-17429=Debe estar conectado al servidor + +ORA-17430=Debe estar conectado al servidor + +ORA-17431=La sentencia SQL que se va a analizar es nula + +ORA-17432=opciones no v\u00e1lidas en all7 + +ORA-17433=argumentos no v\u00e1lidos en la llamada + +ORA-17434=no est\u00e1 en modo de lectura/escritura continuo + +ORA-17435=n\u00famero no v\u00e1lido de in_out_binds en IOV + +ORA-17436=n\u00famero no v\u00e1lido de par\u00e1metros OUT + +ORA-17437=Error en el argumento o argumentos IN/OUT del bloque PLSQL + +ORA-17438=Error interno - Valor inesperado + +ORA-17439=Tipo SQL no v\u00e1lido + +ORA-17440=DBItem/DBType nulo + +ORA-17441=Versi\u00f3n de Oracle no soportada. La versi\u00f3n m\u00ednima soportada es la 7.2.3. + +ORA-17442=El valor del cursor de referencia no es v\u00e1lido + +ORA-17443=Usuario nulo o contrase\u00f1a no soportada en el controlador THIN + +ORA-17444=Versi\u00f3n no soportada del protocolo TTC recibido del servidor + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c7/205363c896af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c7/205363c896af001c18c4935e001381da new file mode 100644 index 0000000..5f51a06 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c7/205363c896af001c18c4935e001381da @@ -0,0 +1,72 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.GridLayout; +import java.awt.Insets; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextPane; + + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + // Creation de la zone de texte + private JTextPane panneauTexte; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMRequete().setVisible(true); + } + + public IHMRequete(){ + // Creation d'une etiquette + JLabel jRequete = new JLabel("Entrez votre requete : "); + + // Creation des boutons + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Annuler"); + + // Creation de la zone de texte + panneauTexte = new JTextPane(); + panneauTexte.setCaretPosition(0); + panneauTexte.setMargin(new Insets(5,5,5,5)); + JScrollPane zoneTexteRequete = new JScrollPane(panneauTexte); + zoneTexteRequete.setPreferredSize(new Dimension(200, 130)); + zoneTexteRequete.setViewportBorder(new EmptyBorder); + + // Creation des panneaux bas et centre + JPanel Panneau_Bas = new JPanel(); + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(2,1)); + + // Ajout des boutons a chacun des panneaux + Panneau_Centre.add(jRequete); + Panneau_Centre.add(zoneTexteRequete); + + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Gestionnaire de contenus + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(400,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Requete"); + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c7/30236e90fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c7/30236e90fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..4ac7136 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c7/30236e90fea3001c1027e59cc3e35e89 @@ -0,0 +1,41 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try{ + connection.close(); + } + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c7/e052bc1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c7/e052bc1798af001c18c4935e001381da new file mode 100644 index 0000000..a950b6c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c7/e052bc1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/00ec311405a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/00ec311405a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..5231f41 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/00ec311405a4001c1027e59cc3e35e89 @@ -0,0 +1,77 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + System + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/4084611398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/4084611398af001c18c4935e001381da new file mode 100644 index 0000000..a5e0409 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/4084611398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/70f4802b9daf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/70f4802b9daf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..8aea06d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/70f4802b9daf001c1c2eb8ec16be26ca @@ -0,0 +1,235 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/802d289d05a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/802d289d05a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..e758323 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/802d289d05a4001c1027e59cc3e35e89 @@ -0,0 +1,80 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + ResultSetMetaData rsmd = resultat.getMetaData(); + rsmd.get + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/90e5e444fca3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/90e5e444fca3001c1027e59cc3e35e89 new file mode 100644 index 0000000..93e7775 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/90e5e444fca3001c1027e59cc3e35e89 @@ -0,0 +1,36 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + Connection conn = null; + + try { + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + conn = DriverManager.getConnection(url, "dut", "dut"); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/b07636da81a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/b07636da81a9001c1d3abf97745a02da new file mode 100644 index 0000000..958baed --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/b07636da81a9001c1d3abf97745a02da @@ -0,0 +1,138 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +import fr.blankoworld.plateau.PlateauPuissance4; + +// Importation de la fentre de Connexion +import Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + private Connexion conn = new Connexion(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/c05ccb1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/c05ccb1998af001c18c4935e001381da new file mode 100644 index 0000000..4d9685e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/c05ccb1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/f0083adf96af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/f0083adf96af001c18c4935e001381da new file mode 100644 index 0000000..2b5caf0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c8/f0083adf96af001c18c4935e001381da @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.GridLayout; +import java.awt.Insets; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextPane; + + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + // Creation de la zone de texte + private JTextPane panneauTexte; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMRequete().setVisible(true); + } + + public IHMRequete(){ + // Creation d'une etiquette + JLabel jRequete = new JLabel("Entrez votre requete : "); + + // Creation des boutons + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Annuler"); + + // Creation de la zone de texte + panneauTexte = new JTextPane(); + panneauTexte.setCaretPosition(0); + panneauTexte.setMargin(new Insets(5,5,5,5)); + JScrollPane zoneTexteRequete = new JScrollPane(panneauTexte); + zoneTexteRequete.setPreferredSize(new Dimension(200, 130)); + + // Creation des panneaux bas et centre + JPanel Panneau_Bas = new JPanel(); + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(2,1)); + + // Ajout des boutons a chacun des panneaux + Panneau_Centre.add(jRequete); + Panneau_Centre.add(zoneTexteRequete); + + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Gestionnaire de contenus + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(400,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Requete"); + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c9/006d77f920af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c9/006d77f920af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..44abbf7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c9/006d77f920af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u5185\u90e8\u9519\u8bef + +ORA-17002=Io \u5f02\u5e38 + +ORA-17003=\u65e0\u6548\u7684\u5217\u7d22\u5f15 + +ORA-17004=\u65e0\u6548\u7684\u5217\u7c7b\u578b + +ORA-17005=\u4e0d\u652f\u6301\u7684\u5217\u7c7b\u578b + +ORA-17006=\u5217\u540d\u65e0\u6548 + +ORA-17007=\u65e0\u6548\u7684\u52a8\u6001\u5217 + +ORA-17008=\u5173\u95ed\u7684\u8fde\u63a5 + +ORA-17009=\u5173\u95ed\u7684\u8bed\u53e5 + +ORA-17010=\u5173\u95ed\u7684 Resultset + +ORA-17011=\u7528\u5c3d\u7684 Resultset + +ORA-17012=\u53c2\u6570\u7c7b\u578b\u51b2\u7a81 + +ORA-17014=\u672a\u8c03\u7528 ResultSet.next + +ORA-17015=\u8bed\u53e5\u88ab\u53d6\u6d88 + +ORA-17016=\u8bed\u53e5\u8d85\u65f6 + +ORA-17017=\u5df2\u521d\u59cb\u5316\u6e38\u6807 + +ORA-17018=\u65e0\u6548\u7684\u6e38\u6807 + +ORA-17019=\u53ea\u80fd\u63cf\u8ff0\u67e5\u8be2 + +ORA-17020=\u65e0\u6548\u7684\u884c\u9884\u53d6 + +ORA-17021=\u5b9a\u4e49\u4e22\u5931 + +ORA-17022=\u5728\u7d22\u5f15\u5904\u5b9a\u4e49\u4e22\u5931 + +ORA-17023=\u4e0d\u652f\u6301\u7684\u7279\u6027 + +ORA-17024=\u672a\u8bfb\u53d6\u6570\u636e + +ORA-17025=defines.isNull () \u4e2d\u51fa\u73b0\u9519\u8bef + +ORA-17026=\u6570\u5b57\u6ea2\u51fa + +ORA-17027=\u6d41\u5df2\u88ab\u5173\u95ed + +ORA-17028=\u76f4\u5230\u5173\u95ed\u5f53\u524d\u7684 ResultSet \u624d\u80fd\u8fdb\u884c\u65b0\u7684\u5b9a\u4e49 + +ORA-17029=setReadOnly: \u4e0d\u652f\u6301\u53ea\u8bfb\u8fde\u63a5 + +ORA-17030=\u4ec5 READ_COMMITTED \u548c SERIALIZABLE \u662f\u6709\u6548\u7684\u4e8b\u52a1\u5904\u7406\u7ea7 + +ORA-17031=setAutoClose: \u4ec5\u652f\u6301\u81ea\u52a8\u5173\u95ed\u6a21\u5f0f\u6253\u5f00\u7684\u60c5\u51b5 + +ORA-17032=\u884c\u9884\u53d6\u4e0d\u80fd\u8bbe\u7f6e\u4e3a\u96f6 + +ORA-17033=\u51fa\u73b0\u683c\u5f0f\u4e0d\u6b63\u786e\u7684 SQL92 \u4e32 + +ORA-17034=\u51fa\u73b0\u4e0d\u652f\u6301\u7684 SQL92 \u6807\u8bb0 + +ORA-17035=\u4e0d\u652f\u6301\u7684\u5b57\u7b26\u96c6 \uff01\uff01 + +ORA-17036=OracleNumber \u4e2d\u7684\u5f02\u5e38 + +ORA-17037=\u4e0d\u80fd\u5728 UTF8 \u548c UCS2 \u4e4b\u95f4\u8f6c\u6362 + +ORA-17038=\u5b57\u8282\u6570\u7ec4\u4e0d\u591f\u957f + +ORA-17039=Char \u6570\u7ec4\u4e0d\u591f\u957f + +ORA-17040=\u5fc5\u987b\u5728\u8fde\u63a5 URL \u4e2d\u6307\u5b9a\u5b50\u534f\u8bae + +ORA-17041=\u7d22\u5f15\u4e2d\u4e22\u5931 IN \u6216 OUT \u53c2\u6570: + +ORA-17042=\u65e0\u6548\u7684\u6279\u503c + +ORA-17043=\u6d41\u7684\u6700\u5927\u957f\u5ea6\u65e0\u6548 + +ORA-17044=\u5185\u90e8\u9519\u8bef: \u672a\u5206\u914d\u6570\u636e\u6570\u7ec4 + +ORA-17045=\u5185\u90e8\u9519\u8bef: \u8bd5\u56fe\u8bbf\u95ee\u6279\u503c\u4e4b\u5916\u7684\u7ed1\u5b9a\u503c + +ORA-17046=\u5185\u90e8\u9519\u8bef: \u6570\u636e\u8bbf\u95ee\u7684\u7d22\u5f15\u65e0\u6548 + +ORA-17047=\u8bed\u6cd5\u5206\u6790\u7c7b\u578b\u63cf\u8ff0\u7b26\u65f6\u51fa\u9519 + +ORA-17048=\u672a\u5b9a\u4e49\u7684\u7c7b\u578b + +ORA-17049=\u4e0d\u4e00\u81f4\u7684 java \u548c sql \u5bf9\u8c61\u7c7b\u578b + +ORA-17050=\u77e2\u91cf\u4e2d\u6ca1\u6709\u8fd9\u6837\u7684\u5143\u7d20 + +ORA-17051=\u6b64 API \u4e0d\u80fd\u7528\u4e8e\u975e UDT \u7c7b\u578b + +ORA-17052=\u6b64 ref \u65e0\u6548 + +ORA-17053=\u957f\u5ea6\u65e0\u6548 + +ORA-17054=LOB \u5b9a\u4f4d\u5668\u65e0\u6548 + +ORA-17055=\u9047\u5230\u65e0\u6548\u5b57\u7b26\uff0c\u5728 + +ORA-17056=\u4e0d\u652f\u6301\u7684\u5b57\u7b26\u96c6 + +ORA-17057=\u5173\u95ed\u7684 LOB + +ORA-17058=\u5185\u90e8\u9519\u8bef: \u65e0\u6548\u7684 NLS \u8f6c\u6362\u7387 + +ORA-17059=\u65e0\u6cd5\u8f6c\u6362\u4e3a\u5185\u90e8\u8868\u793a + +ORA-17060=\u65e0\u6cd5\u6784\u9020\u63cf\u8ff0\u7b26 + +ORA-17061=\u4e22\u5931\u63cf\u8ff0\u7b26 + +ORA-17062=Ref \u6e38\u6807\u65e0\u6548 + +ORA-17063=\u4e0d\u5728\u4e8b\u52a1\u5904\u7406\u4e2d + +ORA-17064=\u65e0\u6548\u7684\u8bed\u6cd5\u6216\u6570\u636e\u5e93\u540d\u4e3a\u7a7a + +ORA-17065=\u8f6c\u6362\u7c7b\u4e3a\u7a7a + +ORA-17066=\u8bbf\u95ee\u5c42\u9700\u8981\u5177\u4f53\u5b9e\u65bd + +ORA-17067=\u6307\u5b9a\u4e86\u65e0\u6548\u7684 Oracle URL + +ORA-17068=\u8c03\u7528\u4e2d\u7684\u65e0\u6548\u53c2\u6570 + +ORA-17069=\u4f7f\u7528\u660e\u786e\u7684 XA \u8c03\u7528 + +ORA-17070=\u6570\u636e\u5927\u5c0f\u8d85\u51fa\u6b64\u7c7b\u578b\u7684\u6700\u5927\u503c + +ORA-17071=\u8d85\u51fa VARRAY \u7684\u6700\u5927\u9650\u5236 + +ORA-17072=\u5bf9\u5217\u6765\u8bf4\u63d2\u5165\u7684\u503c\u592a\u5927 + +ORA-17073=\u903b\u8f91\u53e5\u67c4\u4e0d\u518d\u6709\u6548 + +ORA-17074=\u65e0\u6548\u7684\u540d\u79f0\u6a21\u5f0f + +ORA-17075=\u5bf9\u53ea\u8f6c\u53d1\u7ed3\u679c\u96c6\u7684\u65e0\u6548\u64cd\u4f5c + +ORA-17076=\u5bf9\u53ea\u8bfb\u7ed3\u679c\u96c6\u7684\u65e0\u6548\u64cd\u4f5c + +ORA-17077=\u65e0\u6cd5\u8bbe\u7f6e REF \u503c + +ORA-17078=\u65e0\u6cd5\u8fdb\u884c\u8be5\u64cd\u4f5c\uff0c\u56e0\u4e3a\u8fde\u63a5\u5df2\u6253\u5f00 + +ORA-17079=\u7528\u6237\u8eab\u4efd\u8bc1\u660e\u4e0e\u73b0\u6709\u8eab\u4efd\u8bc1\u660e\u4e0d\u5339\u914d + +ORA-17080=\u65e0\u6548\u7684\u6279\u5904\u7406\u547d\u4ee4 + +ORA-17081=\u6279\u5904\u7406\u4e2d\u51fa\u73b0\u9519\u8bef + +ORA-17082=\u6ca1\u6709\u5f53\u524d\u884c + +ORA-17083=\u4e0d\u5728\u63d2\u5165\u884c\u4e0a + +ORA-17084=\u8bbf\u95ee\u63d2\u5165\u884c + +ORA-17085=\u51fa\u73b0\u503c\u51b2\u7a81 + +ORA-17086=\u63d2\u5165\u884c\u4e0a\u7684\u672a\u5b9a\u4e49\u5217\u503c + +ORA-17087=\u53ef\u5ffd\u7565\u7684\u6267\u884c\u63d0\u793a: setFetchDirection() + +ORA-17088=\u8bf7\u6c42\u7684\u7ed3\u679c\u7c7b\u578b\u548c\u5e76\u53d1\u7ea7\u522b\u7684\u8bed\u6cd5\u4e0d\u53d7\u652f\u6301 +ORA-17089=\u5185\u90e8\u9519\u8bef + +ORA-17090=\u4e0d\u5141\u8bb8\u7684\u64cd\u4f5c + +ORA-17091=\u5728\u6240\u8bf7\u6c42\u7684\u7c7b\u578b\u548c (\u6216) \u5e76\u53d1\u7ea7\u522b\u65e0\u6cd5\u521b\u5efa\u7ed3\u679c\u96c6 + +ORA-17092=\u65e0\u6cd5\u5728\u8c03\u7528\u5904\u7406\u64cd\u4f5c\u7ed3\u675f\u65f6\u521b\u5efa\u6216\u6267\u884c JDBC \u8bed\u53e5 + +ORA-17093=OCI \u64cd\u4f5c\u8fd4\u56de OCI_SUCCESS_WITH_INFO + +ORA-17094=\u5bf9\u8c61\u7c7b\u578b\u7248\u672c\u4e0d\u5339\u914d + +ORA-17095=\u8bed\u53e5\u9ad8\u901f\u7f13\u5b58\u5927\u5c0f\u672a\u4f5c\u8bbe\u7f6e + +ORA-17096=\u4e0d\u80fd\u4e3a\u6b64\u903b\u8f91\u8fde\u63a5\u542f\u7528\u8bed\u53e5\u9ad8\u901f\u7f13\u5b58\u3002 + +ORA-17097=PL/SQL \u7d22\u5f15\u8868\u7684\u5143\u7d20\u7c7b\u578b\u65e0\u6548 + +ORA-17098=\u7a7a\u4e8c\u8fdb\u5236\u5927\u5bf9\u8c61\u64cd\u4f5c\u65e0\u6548 + +ORA-17099=PL/SQL \u7d22\u5f15\u8868\u6570\u7ec4\u957f\u5ea6\u65e0\u6548 + +ORA-17100=\u6570\u636e\u5e93 Java \u5bf9\u8c61\u65e0\u6548 + +ORA-17101=OCI \u8fde\u63a5\u6c60\u5bf9\u8c61\u4e2d\u7684\u5c5e\u6027\u65e0\u6548 + +ORA-17102=Bfile \u4e3a\u53ea\u8bfb + +ORA-17103=\u901a\u8fc7 getConnection \u8fd4\u56de\u7684\u8fde\u63a5\u7c7b\u578b\u65e0\u6548\u3002\u6539\u7528 getJavaSqlConnection + +ORA-17104=\u8981\u6267\u884c\u7684 SQL \u8bed\u53e5\u4e0d\u5f97\u4e3a\u7a7a\u767d\u6216\u7a7a\u503c + +ORA-17105=\u672a\u8bbe\u7f6e\u8fde\u63a5\u4f1a\u8bdd\u65f6\u533a + +ORA-17106=\u6307\u5b9a\u7684 JDBC-OCI \u9a71\u52a8\u7a0b\u5e8f\u8fde\u63a5\u6c60\u914d\u7f6e\u65e0\u6548 + +ORA-17107=\u6307\u5b9a\u7684\u4ee3\u7406\u7c7b\u578b\u65e0\u6548 + +ORA-17108=\u6ca1\u6709\u5728 defineColumnType \u4e2d\u6307\u5b9a\u6700\u5927\u957f\u5ea6 + +ORA-17109=\u627e\u4e0d\u5230\u6807\u51c6 Java \u5b57\u7b26\u7f16\u7801 + +ORA-17110=\u6267\u884c\u5b8c\u6bd5, \u4f46\u5e26\u6709\u8b66\u544a + +ORA-17111=\u6307\u5b9a\u7684\u8fde\u63a5\u9ad8\u901f\u7f13\u5b58 TTL \u8d85\u65f6\u65f6\u95f4\u6ea2\u51fa + +ORA-17112=\u6307\u5b9a\u7684\u7ebf\u7a0b\u65f6\u95f4\u95f4\u9694\u65e0\u6548 + +ORA-17113=\u7ebf\u7a0b\u65f6\u95f4\u95f4\u9694\u503c\u5927\u4e8e\u9ad8\u901f\u7f13\u5b58\u8d85\u65f6\u503c + +ORA-17114=\u65e0\u6cd5\u5728\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u4f7f\u7528\u672c\u5730\u4e8b\u52a1\u5904\u7406\u63d0\u4ea4 + +ORA-17115=\u65e0\u6cd5\u5728\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u4f7f\u7528\u672c\u5730\u4e8b\u52a1\u5904\u7406\u56de\u9000 + +ORA-17116=\u65e0\u6cd5\u5728\u6d3b\u52a8\u7684\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u542f\u7528\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd + +ORA-17117=\u65e0\u6cd5\u5728\u6d3b\u52a8\u7684\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u8bbe\u7f6e\u4fdd\u5b58\u70b9 + +ORA-17118=\u65e0\u6cd5\u83b7\u53d6\u5df2\u547d\u540d\u4fdd\u5b58\u70b9\u7684 ID + +ORA-17119=\u65e0\u6cd5\u83b7\u53d6\u672a\u547d\u540d\u4fdd\u5b58\u70b9\u7684\u540d\u79f0 + +ORA-17120=\u65e0\u6cd5\u8bbe\u7f6e\u542f\u7528\u4e86\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd\u7684\u4fdd\u5b58\u70b9 + +ORA-17121=\u65e0\u6cd5\u56de\u9000\u5230\u542f\u7528\u4e86\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd\u7684\u4fdd\u5b58\u70b9 + +ORA-17122=\u65e0\u6cd5\u56de\u9000\u5230\u542f\u7528\u4e86\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd\u7684\u4fdd\u5b58\u70b9 + +ORA-17123=\u6307\u5b9a\u7684\u8bed\u53e5\u9ad8\u901f\u7f13\u5b58\u5927\u5c0f\u65e0\u6548 + +ORA-17124=\u6307\u5b9a\u7684\u8fde\u63a5\u9ad8\u901f\u7f13\u5b58\u5931\u6d3b\u8d85\u65f6\u65f6\u95f4\u65e0\u6548 + +ORA-17200=\u65e0\u6cd5\u6b63\u786e\u5730\u5c06 XA \u6253\u5f00\u5b57\u7b26\u4e32\u4ece Java \u8f6c\u6362\u6210 C + +ORA-17201=\u65e0\u6cd5\u6b63\u786e\u5730\u5c06 XA \u5173\u95ed\u5b57\u7b26\u4e32\u4ece Java \u8f6c\u6362\u6210 C + +ORA-17202=\u65e0\u6cd5\u6b63\u786e\u5730\u5c06 RM \u540d\u79f0\u4ece Java \u8f6c\u6362\u6210 C + +ORA-17203=\u65e0\u6cd5\u5c06\u6307\u9488\u7c7b\u578b\u5f3a\u5236\u8f6c\u6362\u6210 jlong + +ORA-17204=\u8f93\u5165\u6570\u7ec4\u8fc7\u77ed, \u65e0\u6cd5\u5bb9\u7eb3 OCI \u53e5\u67c4 + +ORA-17205=\u65e0\u6cd5\u4f7f\u7528 xaoSvcCtx \u4ece C-XA \u83b7\u53d6 OCISvcCtx \u53e5\u67c4 + +ORA-17206=\u65e0\u6cd5\u4f7f\u7528 xaoEnv \u4ece C-XA \u83b7\u53d6 OCIEnv \u53e5\u67c4 + +ORA-17207=\u672a\u5728\u6570\u636e\u6e90\u4e2d\u8bbe\u7f6e tnsEntry \u5c5e\u6027 + +ORA-17213=C-XA \u5728 xa_open \u671f\u95f4\u8fd4\u56de XAER_RMERR + +ORA-17215=C-XA \u5728 xa_open \u671f\u95f4\u8fd4\u56de XAER_INVAL + +ORA-17216=C-XA \u5728 xa_open \u671f\u95f4\u8fd4\u56de XAER_PROTO + +ORA-17233=C-XA \u5728 xa_close \u671f\u95f4\u8fd4\u56de XAER_RMERR + +ORA-17235=C-XA \u5728 xa_close \u671f\u95f4\u8fd4\u56de XAER_INVAL + +ORA-17236=C-XA \u5728 xa_close \u671f\u95f4\u8fd4\u56de XAER_PROTO + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u8fdd\u53cd\u534f\u8bae + +ORA-17402=\u53ea\u671f\u671b\u5f97\u5230\u4e00\u4e2a RPA \u6d88\u606f + +ORA-17403=\u53ea\u671f\u671b\u5f97\u5230\u4e00\u4e2a RXH \u6d88\u606f + +ORA-17404=\u6536\u5230\u8d85\u8fc7\u9884\u671f\u7684 RXD + +ORA-17405=UAC \u957f\u5ea6\u4e0d\u4e3a\u96f6 + +ORA-17406=\u8d85\u51fa\u7f13\u51b2\u533a\u7684\u6700\u5927\u957f\u5ea6 + +ORA-17407=\u65e0\u6548\u7684\u7c7b\u578b\u8868\u793a (setRep) + +ORA-17408=\u65e0\u6548\u7684\u7c7b\u578b\u8868\u793a (getRep) + +ORA-17409=\u65e0\u6548\u7684\u7f13\u51b2\u533a\u957f\u5ea6 + +ORA-17410=\u65e0\u6cd5\u4ece\u5957\u63a5\u5b57\u8bfb\u53d6\u66f4\u591a\u7684\u6570\u636e + +ORA-17411=\u6570\u636e\u7c7b\u578b\u8868\u793a\u4e0d\u5339\u914d + +ORA-17412=\u7c7b\u578b\u957f\u5ea6\u5927\u4e8e\u6700\u5927\u503c + +ORA-17413=\u8d85\u51fa\u5173\u952e\u5b57\u5927\u5c0f + +ORA-17414=\u7f13\u51b2\u533a\u5bb9\u91cf\u4e0d\u8db3\u4ee5\u5b58\u50a8\u5217\u540d + +ORA-17415=\u5c1a\u672a\u5904\u7406\u6b64\u7c7b\u578b + +ORA-17416=FATAL + +ORA-17417=NLS \u95ee\u9898\uff0c\u65e0\u6cd5\u5bf9\u5217\u540d\u8fdb\u884c\u89e3\u7801 + +ORA-17418=\u5185\u90e8\u7ed3\u6784\u7684\u5b57\u6bb5\u957f\u5ea6\u9519\u8bef + +ORA-17419=\u8fd4\u56de\u7684\u5217\u6570\u65e0\u6548 + +ORA-17420=\u672a\u5b9a\u4e49 Oracle \u7248\u672c + +ORA-17421=\u672a\u5b9a\u4e49\u7c7b\u578b\u6216\u8fde\u63a5 + +ORA-17422=\u5de5\u5382\u4e2d\u7684\u65e0\u6548\u7c7b + +ORA-17423=\u5728\u672a\u5b9a\u4e49 IOV \u7684\u60c5\u51b5\u4e0b\u4f7f\u7528 PLSQL \u5757 + +ORA-17424=\u5c1d\u8bd5\u4e0d\u540c\u7684\u7f16\u7ec4\u64cd\u4f5c + +ORA-17425=\u8fd4\u56de PLSQL \u5757\u4e2d\u7684\u6d41 + +ORA-17426=IN \u548c OUT \u7684\u7ed1\u5b9a\u5747\u4e3a NULL + +ORA-17427=\u4f7f\u7528\u672a\u521d\u59cb\u5316\u7684 OAC + +ORA-17428=\u8fde\u63a5\u540e\u5fc5\u987b\u8c03\u7528\u767b\u5f55 + +ORA-17429=\u5fc5\u987b\u81f3\u5c11\u4e0e\u670d\u52a1\u5668\u8fde\u63a5 + +ORA-17430=\u5fc5\u987b\u767b\u5f55\u5230\u670d\u52a1\u5668 + +ORA-17431=\u8981\u5206\u6790\u7684 SQL \u8bed\u53e5\u4e3a\u7a7a + +ORA-17432=all7 \u4e2d\u7684\u65e0\u6548\u9009\u9879 + +ORA-17433=\u8c03\u7528\u4e2d\u65e0\u6548\u7684\u53c2\u6570 + +ORA-17434=\u4e0d\u5728\u6d41\u6a21\u5f0f\u4e0b + +ORA-17435=IOV \u4e2d\u65e0\u6548\u7684 in_out_binds \u4e2a\u6570 + +ORA-17436=\u65e0\u6548\u7684 outbinds \u6570 + +ORA-17437=PLSQL \u5757 IN/OUT \u53c2\u6570\u4e2d\u51fa\u73b0\u9519\u8bef + +ORA-17438=\u5185\u90e8 - \u4e0d\u671f\u671b\u7684\u503c + +ORA-17439=\u65e0\u6548\u7684 SQL \u7c7b\u578b + +ORA-17440=DBItem/DBType \u4e3a\u7a7a + +ORA-17441=\u4e0d\u652f\u6301\u7684 Oracle \u7248\u672c\u3002\u652f\u6301\u7684\u6700\u4f4e\u7248\u672c\u4e3a 7.2.3\u3002 + +ORA-17442=Refcursor \u503c\u65e0\u6548 + +ORA-17443=THIN \u9a71\u52a8\u7a0b\u5e8f\u4e2d\u4e0d\u652f\u6301\u4e3a\u7a7a\u7684\u7528\u6237\u6216\u53e3\u4ee4 + +ORA-17444=\u4e0d\u652f\u6301\u4ece\u670d\u52a1\u5668\u63a5\u6536\u5230\u7684 TTC \u534f\u8bae\u7248\u672c + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c9/300c1e1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c9/300c1e1698af001c18c4935e001381da new file mode 100644 index 0000000..cc49f1b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c9/300c1e1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c9/4032bc1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c9/4032bc1498af001c18c4935e001381da new file mode 100644 index 0000000..89f9c0d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/c9/4032bc1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ca/60ef4d1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ca/60ef4d1998af001c18c4935e001381da new file mode 100644 index 0000000..56aae10 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ca/60ef4d1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ca/d0a977f0cca4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ca/d0a977f0cca4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..244fa05 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ca/d0a977f0cca4001c1acc9f54b60f9b57 @@ -0,0 +1,95 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/303f351e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/303f351e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..c8f1be3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/303f351e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,411 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Internal Error + +ORA-17002=Io exception + +ORA-17003=Invalid column index + +ORA-17004=Invalid column type + +ORA-17005=Unsupported column type + +ORA-17006=Invalid column name + +ORA-17007=Invalid dynamic column + +ORA-17008=Closed Connection + +ORA-17009=Closed Statement + +ORA-17010=Closed Resultset + +ORA-17011=Exhausted Resultset + +ORA-17012=Parameter Type Conflict + +ORA-17014=ResultSet.next was not called + +ORA-17015=Statement was cancelled + +ORA-17016=Statement timed out + +ORA-17017=Cursor already initialized + +ORA-17018=Invalid cursor + +ORA-17019=Can only describe a query + +ORA-17020=Invalid row prefetch + +ORA-17021=Missing defines + +ORA-17022=Missing defines at index + +ORA-17023=Unsupported feature + +ORA-17024=No data read + +ORA-17025=Error in defines.isNull () + +ORA-17026=Numeric Overflow + +ORA-17027=Stream has already been closed + +ORA-17028=Can not do new defines until the current ResultSet is closed + +ORA-17029=setReadOnly: Read-only connections not supported + +ORA-17030=READ_COMMITTED and SERIALIZABLE are the only valid transaction levels + +ORA-17031=setAutoClose: Only support auto close mode on + +ORA-17032=cannot set row prefetch to zero + +ORA-17033=Malformed SQL92 string at position + +ORA-17034=Non supported SQL92 token at position + +ORA-17035=Character Set Not Supported !! + +ORA-17036=exception in OracleNumber + +ORA-17037=Fail to convert between UTF8 and UCS2 + +ORA-17038=Byte array not long enough + +ORA-17039=Char array not long enough + +ORA-17040=Sub Protocol must be specified in connection URL + +ORA-17041=Missing IN or OUT parameter at index: + +ORA-17042=Invalid Batch Value + +ORA-17043=Invalid stream maximum size + +ORA-17044=Internal error: Data array not allocated + +ORA-17045=Internal error: Attempt to access bind values beyond the batch value + +ORA-17046=Internal error: Invalid index for data access + +ORA-17047=Error in Type Descriptor parse + +ORA-17048=Undefined type + +ORA-17049=Inconsistent java and sql object types + +ORA-17050=no such element in vector + +ORA-17051=This API cannot be be used for non-UDT types + +ORA-17052=This ref is not valid + +ORA-17053=The size is not valid + +ORA-17054=The LOB locator is not valid + +ORA-17055=Invalid character encountered in + +ORA-17056=Non supported character set + +ORA-17057=Closed LOB + +ORA-17058=Internal error: Invalid NLS Conversion ratio + +ORA-17059=Fail to convert to internal representation + +ORA-17060=Fail to construct descriptor + +ORA-17061=Missing descriptor + +ORA-17062=Ref cursor is invalid + +ORA-17063=Not in a transaction + +ORA-17064=Invalid Sytnax or Database name is null + +ORA-17065=Conversion class is null + +ORA-17066=Access layer specific implementation needed + +ORA-17067=Invalid Oracle URL specified + +ORA-17068=Invalid argument(s) in call + +ORA-17069=Use explicit XA call + +ORA-17070=Data size bigger than max size for this type + +ORA-17071=Exceeded maximum VARRAY limit + +ORA-17072=Inserted value too large for column + +ORA-17073=Logical handle no longer valid + +ORA-17074=invalid name pattern + +ORA-17075=Invalid operation for forward only resultset + +ORA-17076=Invalid operation for read only resultset + +ORA-17077=Fail to set REF value + +ORA-17078=Cannot do the operation as connections are already opened + +ORA-17079=User credentials doesn't match the existing ones + +ORA-17080=invalid batch command + +ORA-17081=error occurred during batching + +ORA-17082=No current row + +ORA-17083=Not on the insert row + +ORA-17084=Called on the insert row + +ORA-17085=Value conflicts occurs + +ORA-17086=Undefined column value on the insert row + +ORA-17087=Ignored performance hint: setFetchDirection() + +ORA-17088=Unsupported syntax for requested resultset type and concurrency level +ORA-17089=internal error + +ORA-17090=operation not allowed + +ORA-17091=Unable to create resultset at the requested type and/or concurrency level + +ORA-17092=JDBC statements cannot be created or executed at end of call processing + +ORA-17093=OCI operation returned OCI_SUCCESS_WITH_INFO + +ORA-17094=Object type version mismatched + +ORA-17095=Statement cache size has not been set + +ORA-17096=Statement Caching cannot be enabled for this logical connection. + +ORA-17097=Invalid PL/SQL Index Table element type + +ORA-17098=Invalid empty lob operation + +ORA-17099=Invalid PL/SQL Index Table array length + +ORA-17100=Invalid database Java Object + +ORA-17101=Invalid properties in OCI Connection Pool Object + +ORA-17102=Bfile is read only + +ORA-17103=invalid connection type to return via getConnection. Use getJavaSqlConnection instead + +ORA-17104=SQL statement to execute cannot be empty or null + +ORA-17105=connection session time zone was not set + +ORA-17106=invalid JDBC-OCI driver connection pool configuration specified + +ORA-17107=invalid proxy type specified + +ORA-17108=No max length specified in defineColumnType + +ORA-17109=standard Java character encoding not found + +ORA-17110=execution completed with warning + +ORA-17111=Invalid connection cache TTL timeout specified + +ORA-17112=Invalid thread interval specified + +ORA-17113=Thread interval value is more than the cache timeout value + +ORA-17114=could not use local transaction commit in a global transaction + +ORA-17115=could not use local transaction rollback in a global transaction + +ORA-17116=could not turn on auto-commit in an active global transaction + +ORA-17117=could not set savepoint in an active global transaction + +ORA-17118=could not obtain ID for a named Savepoint + +ORA-17119=could not obtain name for an un-named Savepoint + +ORA-17120=could not set a Savepoint with auto-commit on + +ORA-17121=could not rollback to a Savepoint with auto-commit on + +ORA-17122=could not rollback to a local txn Savepoint in a global transaction + +ORA-17123=Invalid statement cache size specified + +ORA-17124=Invalid connection cache Inactivity timeout specified + +ORA-17125=Improper statement type returned by explicit cache + +ORA-17126=Fixed Wait timeout elapsed + +ORA-17127=Invalid Fixed Wait timeout specified + +ORA-17200=Unable to properly convert XA open string from Java to C + +ORA-17201=Unable to properly convert XA close string from Java to C + +ORA-17202=Unable to properly convert RM name from Java to C + +ORA-17203=Could not casting pointer type to jlong + +ORA-17204=Input array too short to hold OCI handles + +ORA-17205=Failed to obtain OCISvcCtx handle from C-XA using xaoSvcCtx + +ORA-17206=Failed to obtain OCIEnv handle from C-XA using xaoEnv + +ORA-17207=The tnsEntry property was not set in DataSource + +ORA-17213=C-XA returned XAER_RMERR during xa_open + +ORA-17215=C-XA returned XAER_INVAL during xa_open + +ORA-17216=C-XA returned XAER_PROTO during xa_open + +ORA-17233=C-XA returned XAER_RMERR during xa_close + +ORA-17235=C-XA returned XAER_INVAL during xa_close + +ORA-17236=C-XA returned XAER_PROTO during xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protocol violation + +ORA-17402=Only one RPA message is expected + +ORA-17403=Only one RXH message is expected + +ORA-17404=Received more RXDs than expected + +ORA-17405=UAC length is not zero + +ORA-17406=Exceeding maximum buffer length + +ORA-17407=invalid Type Representation(setRep) + +ORA-17408=invalid Type Representation(getRep) + +ORA-17409=invalid buffer length + +ORA-17410=No more data to read from socket + +ORA-17411=Data Type representations mismatch + +ORA-17412=Bigger type length than Maximum + +ORA-17413=Exceding key size + +ORA-17414=Insufficient Buffer size to store Columns Names + +ORA-17415=This type hasn't been handled + +ORA-17416=FATAL + +ORA-17417=NLS Problem, failed to decode column names + +ORA-17418=Internal structure's field length error + +ORA-17419=Invalid number of columns returned + +ORA-17420=Oracle Version not defined + +ORA-17421=Types or Connection not defined + +ORA-17422=Invalid class in factory + +ORA-17423=Using a PLSQL block without an IOV defined + +ORA-17424=Attempting different marshaling operation + +ORA-17425=Returning a stream in PLSQL block + +ORA-17426=Both IN and OUT binds are NULL + +ORA-17427=Using Uninitialized OAC + +ORA-17428=Logon must be called after connect + +ORA-17429=Must be at least connected to server + +ORA-17430=Must be logged on to server + +ORA-17431=SQL Statement to parse is null + +ORA-17432=invalid options in all7 + +ORA-17433=invalid arguments in call + +ORA-17434=not in streaming mode + +ORA-17435=invalid number of in_out_binds in IOV + +ORA-17436=invalid number of outbinds + +ORA-17437=Error in PLSQL block IN/OUT argument(s) + +ORA-17438=Internal - Unexpected value + +ORA-17439=Invalid SQL type + +ORA-17440=DBItem/DBType is null + +ORA-17441=Oracle Version not supported. Minimum supported version is 7.2.3. + +ORA-17442=Refcursor value is invalid + +ORA-17443=Null user or password not supported in THIN driver + +ORA-17444=TTC Protocol version received from server not supported + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/804d041798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/804d041798af001c18c4935e001381da new file mode 100644 index 0000000..91c62ae Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/804d041798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/80b14a1dfda3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/80b14a1dfda3001c1027e59cc3e35e89 new file mode 100644 index 0000000..54375c1 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/80b14a1dfda3001c1027e59cc3e35e89 @@ -0,0 +1,43 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection conn = new Connection() + conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/a000151598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/a000151598af001c18c4935e001381da new file mode 100644 index 0000000..bd7ed7f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/a000151598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/d0842d1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/d0842d1b98af001c18c4935e001381da new file mode 100644 index 0000000..9232bc7 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/d0842d1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/e01fd83e4caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/e01fd83e4caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..ed1c387 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/e01fd83e4caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,187 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + + JOptionPane jo = new JOptionPane(); + jo.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/f034181598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/f034181598af001c18c4935e001381da new file mode 100644 index 0000000..75355c4 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cb/f034181598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cc/00d62c06fca3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cc/00d62c06fca3001c1027e59cc3e35e89 new file mode 100644 index 0000000..377408d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cc/00d62c06fca3001c1027e59cc3e35e89 @@ -0,0 +1,34 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + try { + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + Connection conn = DriverManager.getConnection(url, "dut", "dut"); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cc/70f6446e04a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cc/70f6446e04a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..8632811 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cc/70f6446e04a4001c1027e59cc3e35e89 @@ -0,0 +1,74 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cc/e07015209baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cc/e07015209baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..7e5f5e7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cc/e07015209baf001c1c2eb8ec16be26ca @@ -0,0 +1,71 @@ +# US English Message file for Net components + +# ## Internal [ 0, 19] +GOT_MINUS_ONE=Got minus one from a read call +ASSERTION_FAILED=Internal Error + +# ## NT Errors [ 20, 99] +NT_CONNECTION_FAILED=The Network Adapter could not establish the connection +INVALID_NT_ADAPTER=The Network Adapter in use is Invalid + +# ## Naming Errors [100, 199] +PROTOCOL_NOT_SPECIFIED=The Protocol Value Pair is missing +CSTRING_PARSING=TNS Address String Parsing error +INVALID_CONNECT_DATA=The Connect Data in the TNS Address is not valid +HOSTNAME_NOT_SPECIFIED=The hostname in the TNS Address was not specified +PORT_NOT_SPECIFIED=The port number in the the address was not specified +CONNECT_DATA_MISSING=The CONNECT_DATA in the TNS Address is missing +SID_INFORMATION_MISSING=The SID or SERVICE_NAME in the TNS Address is missing +ADDRESS_NOT_DEFINED=An ADDRESS Value pair was not defined in the TNS Address +JNDI_THREW_EXCEPTION=JNDI Package failure +JNDI_NOT_INITIALIZED=JNDI Access package not initialized +JNDI_CLASSES_NOT_FOUND=JNDI Package failure +USER_PROPERTIES_NOT_DEFINED=User Properties not Initialized, JNDI Access can't be used +NAMING_FACTORY_NOT_DEFINED=Naming factory not defined, JNDI access can't complete +NAMING_PROVIDER_NOT_DEFINED=Naming provider not defined, JNDI access can't complete +PROFILE_NAME_NOT_DEFINED=Profile Name not defined, JNDI access can't complete +HOST_PORT_SID_EXPECTED=Invalid connection string format, a valid format is: "host:port:sid" +PORT_NUMBER_ERROR=Invalid number format for port number +HOST_PORT_SN_EXPECTED=Invalid connection string format, a valid format is: "//host:port/service_name" + +# ## NS Errors [200, 299] +NOT_CONNECTED=Invalid Operation, NOT Connected +CONNECTED_ALREADY=Connected Already +DATA_EOF=End of TNS data channel +SDU_MISMATCH=Size Data Unit (SDU) mismatch +BAD_PKT_TYPE=Bad packet type +UNEXPECTED_PKT=Unexpected packet +REFUSED_CONNECT=Connection refused +INVALID_PKT_LENGTH=Invalid Packet Lenght +CONNECTION_STRING_NULL=Connection String was NULL + +# ##Ano Exception [300, 399] +FAILED_TO_TURN_ENCRYPTION_ON=Failed to Turn encryption On +WRONG_BYTES_IN_NAPACKET=Wrong byte number in na packet +WRONG_MAGIC_NUMBER=Wrong Magic number in na packet +UNKNOWN_ALGORITHM_12649=Unknown Encryption or Data Integrity algorithm +INVALID_ENCRYPTION_PARAMETER=Invalid parameter, use one of ACCEPTED, REJECTED, REQUESTED and REQUIRED +WRONG_SERVICE_SUBPACKETS=Wrong Number of service subpackets +SUPERVISOR_STATUS_FAILURE=Supervisor service received status failure +AUTHENTICATION_STATUS_FAILURE=Authentication service received status failure +SERVICE_CLASSES_NOT_INSTALLED=Service Classes not found in oracle.net.ano package +INVALID_DRIVER=Invalid Ano Driver +ARRAY_HEADER_ERROR=Error in array header received +RECEIVED_UNEXPECTED_LENGTH_FOR_TYPE=Received Unexpected length for a variable length NA type +INVALID_NA_PACKET_TYPE_LENGTH=Invalid length for an NA type +INVALID_NA_PACKET_TYPE=Invalid NA packet type received +UNEXPECTED_NA_PACKET_TYPE_RECEIVED=Unexpected NA Packet Type received +UNKNOWN_ENC_OR_DATAINT_ALGORITHM=Unkown encryption or DataIntegrity algorithm +INVALID_ENCRYPTION_ALGORITHM_FROM_SERVER=Invalid Encryption Algorithm from server +ENCRYPTION_CLASS_NOT_INSTALLED=Encryption Class not installed +DATAINTEGRITY_CLASS_NOT_INSTALLED=Data Integrity Class not installed +INVALID_DATAINTEGRITY_ALGORITHM_FROM_SERVER=Invalid DataIntegrity Algorithm received from server +INVALID_SERVICES_FROM_SERVER=Received Invalid Services from Server +INCOMPLETE_SERVICES_FROM_SERVER=Received Incomplete services from server +INVALID_LEVEL=Level should be one of ACCEPTED, REJECTED, REQUESTED and REQUIRED +INVALID_SERVICES=The service in process is not supported. + +# ##Break Exception [500, ] +NS_BREAK=Break packet was received +NL_EXCEPTION=NL Exception was generated +SO_EXCEPTION=SO Exception was generated diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cd/10c0ce1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cd/10c0ce1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..9e2c745 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cd/10c0ce1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Dahili Hata + +ORA-17002=G/\u00c7 istisnas\u0131 + +ORA-17003=Ge\u00e7ersiz s\u00fctun dizini + +ORA-17004=Ge\u00e7ersiz s\u00fctun t\u00fcr\u00fc + +ORA-17005=Desteklenmeyen s\u00fctun t\u00fcr\u00fc + +ORA-17006=Ge\u00e7ersiz s\u00fctun ad\u0131 + +ORA-17007=Ge\u00e7ersiz dinamik s\u00fctun + +ORA-17008=Kapal\u0131 Ba\u011flant\u0131 + +ORA-17009=Kapal\u0131 Deyim + +ORA-17010=Kapal\u0131 Sonu\u00e7 K\u00fcmesi + +ORA-17011=Yetersiz Sonu\u00e7 K\u00fcmesi + +ORA-17012=Parametre T\u00fcr\u00fc \u00c7ak\u0131\u015fmas\u0131 + +ORA-17014=ResultSet.next \u00e7a\u011fr\u0131lmad\u0131 + +ORA-17015=Deyim iptal edildi + +ORA-17016=Deyim zaman a\u015f\u0131m\u0131na u\u011frad\u0131 + +ORA-17017=\u0130mle\u00e7 zaten ba\u015flat\u0131lm\u0131\u015f + +ORA-17018=Ge\u00e7ersiz imle\u00e7 + +ORA-17019=Yaln\u0131zca bir sorgu tan\u0131mlanabilir + +ORA-17020=Ge\u00e7ersiz sat\u0131r getirme + +ORA-17021=Eksik tan\u0131mlama + +ORA-17022=Dizinde eksik tan\u0131mlama + +ORA-17023=Desteklenmeyen \u00f6zellik + +ORA-17024=Veri okunmad\u0131 + +ORA-17025=Defines.isNull () fonksiyonunda hata + +ORA-17026=Say\u0131sal Ta\u015fma + +ORA-17027=Veri ak\u0131\u015f\u0131 zaten kapat\u0131lm\u0131\u015f + +ORA-17028=Ge\u00e7erli Sonu\u00e7 K\u00fcmesi kapat\u0131l\u0131ncaya kadar yeni tan\u0131mlamalar yap\u0131lamaz + +ORA-17029=setReadOnly: Salt okunur ba\u011flant\u0131lar desteklenmiyor + +ORA-17030=Ge\u00e7erli hareket d\u00fczeyleri yaln\u0131zca READ_COMMITTED ve SERIALIZABLE''d\u0131r + +ORA-17031=setAutoClose: Yaln\u0131zca otomatik kapatma modunun a\u00e7\u0131k olmas\u0131n\u0131 destekler + +ORA-17032=sat\u0131r getirme, s\u0131f\u0131r olarak ayarlanamaz + +ORA-17033=Hatal\u0131 olu\u015fturulan SQL92 dizesinin konumu: + +ORA-17034=Desteklenmeyen SQL92 belirtecinin konumu: + +ORA-17035=Karakter K\u00fcmesi Desteklenmiyor !! + +ORA-17036=OracleNumber istisnas\u0131 + +ORA-17037=UTF8 ile UCS2 aras\u0131nda d\u00f6n\u00fc\u015ft\u00fcrme ba\u015far\u0131s\u0131z + +ORA-17038=Byte dizisi yeterince uzun de\u011fil + +ORA-17039=Char dizisi yeterince uzun de\u011fil + +ORA-17040=Ba\u011flant\u0131 URL''sinde Alt Protokol belirlenmeli + +ORA-17041=IN veya OUT parametresinin eksik oldu\u011fu dizin: + +ORA-17042=Ge\u00e7ersiz Toplu \u0130\u015flem De\u011feri + +ORA-17043=Ge\u00e7ersiz maksimum veri ak\u0131\u015f\u0131 de\u011feri + +ORA-17044=Dahili hata: Veri dizisi ayr\u0131lmad\u0131 + +ORA-17045=Dahili hata: Toplu i\u015flem de\u011ferinin sonras\u0131ndaki ba\u011flama de\u011ferine eri\u015fim denemesi + +ORA-17046=Dahili hata: Veri eri\u015fimi i\u00e7in ge\u00e7ersiz dizin + +ORA-17047=T\u00fcr A\u00e7\u0131klay\u0131c\u0131s\u0131 ayr\u0131\u015ft\u0131rma hatas\u0131 + +ORA-17048=Tan\u0131ms\u0131z t\u00fcr + +ORA-17049=Tutars\u0131z java ve sql nesne t\u00fcrleri + +ORA-17050=vekt\u00f6rde b\u00f6yle \u00f6\u011fe yok + +ORA-17051=Bu API, UDT d\u0131\u015f\u0131ndaki t\u00fcrlerde kullan\u0131lamaz + +ORA-17052=Bu ba\u015fvuru ge\u00e7ersiz + +ORA-17053=Boyut ge\u00e7erli de\u011fil + +ORA-17054=\u0130\u015eK yerle\u015ftiricisi ge\u00e7erli de\u011fil + +ORA-17055=Ge\u00e7ersiz karakterlerle kar\u015f\u0131la\u015f\u0131ld\u0131 + +ORA-17056=Desteklenmeyen karakter k\u00fcmesi + +ORA-17057=Kapal\u0131 \u0130\u015eK + +ORA-17058=Dahili hata: Ge\u00e7ersiz NLS D\u00f6n\u00fc\u015ft\u00fcrme oran\u0131 + +ORA-17059=Dahili g\u00f6sterime d\u00f6n\u00fc\u015ft\u00fcr\u00fclemedi + +ORA-17060=A\u00e7\u0131klay\u0131c\u0131y\u0131 olu\u015fturulamad\u0131 + +ORA-17061=Eksik a\u00e7\u0131klay\u0131c\u0131 + +ORA-17062=Ba\u015fvuru imleci ge\u00e7ersiz + +ORA-17063=Hareket i\u00e7inde de\u011fil + +ORA-17064=Ge\u00e7ersiz s\u00f6zdizimi veya veritaban\u0131 ad\u0131 bo\u015f + +ORA-17065=D\u00f6n\u00fc\u015ft\u00fcrme s\u0131n\u0131f\u0131 bo\u015f + +ORA-17066=Eri\u015fim katman\u0131na \u00f6zel uygulama gerekiyor + +ORA-17067=Ge\u00e7ersiz Oracle URL''si belirlendi + +ORA-17068=\u00c7a\u011fr\u0131da ge\u00e7ersiz ba\u011f\u0131ms\u0131z de\u011fi\u015fkenler var + +ORA-17069=Belirtilik XA \u00e7a\u011fr\u0131s\u0131 kullan + +ORA-17070=Veri boyutu, bu t\u00fcr\u00fcn maksimum de\u011ferinden daha b\u00fcy\u00fck + +ORA-17071=Maksimum VARRAY s\u0131n\u0131r\u0131 a\u015f\u0131ld\u0131 + +ORA-17072=Girilen de\u011fer s\u00fctun i\u00e7in \u00e7ok b\u00fcy\u00fck + +ORA-17073=Mant\u0131ksal kontrol noktas\u0131 art\u0131k ge\u00e7erli de\u011fil + +ORA-17074=ge\u00e7ersiz ad deseni + +ORA-17075=Salt iletilen sonu\u00e7 k\u00fcmesi i\u00e7in ge\u00e7ersiz i\u015flem + +ORA-17076=Salt okunur sonu\u00e7 k\u00fcmesi i\u00e7in ge\u00e7ersiz i\u015flem + +ORA-17077=REF de\u011feri ayarlanamad\u0131 + +ORA-17078=Ba\u011flant\u0131lar zaten a\u00e7\u0131k oldu\u011fundan i\u015flem yap\u0131lam\u0131yor + +ORA-17079=Kullan\u0131c\u0131n\u0131n kimlik bilgileri mevcut olanlarla e\u015fle\u015fmiyor + +ORA-17080=ge\u00e7ersiz toplu i\u015flem komutu + +ORA-17081=toplu i\u015flem s\u0131ras\u0131nda hata olu\u015ftu + +ORA-17082=Ge\u00e7erli sat\u0131r yok + +ORA-17083=Araya eklenen sat\u0131rda de\u011fil + +ORA-17084=Araya eklenen sat\u0131rda \u00e7a\u011fr\u0131ld\u0131 + +ORA-17085=De\u011fer \u00e7ak\u0131\u015fmas\u0131 olu\u015ftu + +ORA-17086=Ekleme sat\u0131r\u0131nda tan\u0131mlanmam\u0131\u015f s\u00fctun de\u011feri + +ORA-17087=Yoksay\u0131lan sistem performans\u0131 ipucu: setFetchDirection() + +ORA-17088=\u0130stenen sonu\u00e7 k\u00fcmesi t\u00fcr\u00fc ve verilere e\u015fzamanl\u0131 eri\u015fim d\u00fczeyi i\u00e7in desteklenmeyen s\u00f6zdizimi +ORA-17089=dahili hata + +ORA-17090=i\u015fleme izin verilmedi + +ORA-17091=\u0130stenen t\u00fcrde ve/veya verilere e\u015fzamanl\u0131 eri\u015fim d\u00fczeyinde sonu\u00e7 k\u00fcmesi yarat\u0131lam\u0131yor + +ORA-17092=\u00c7a\u011fr\u0131 i\u015fleminin sonunda JDBC deyimleri yarat\u0131lamaz veya y\u00fcr\u00fct\u00fclemez + +ORA-17093=OCI i\u015flemi OCI_SUCCESS_WITH_INFO d\u00f6nd\u00fcrd\u00fc + +ORA-17094=Nesne t\u00fcr\u00fc s\u00fcr\u00fcm uyu\u015fmazl\u0131\u011f\u0131 + +ORA-17095=Deyim \u00f6nbellek boyutu ayarlanmam\u0131\u015f + +ORA-17096=Bu mant\u0131ksal ba\u011flant\u0131 i\u00e7in Deyimi \u00d6nbelle\u011fe Alma etkinle\u015ftirilemez. + +ORA-17097=Ge\u00e7ersiz PL/SQL Dizin Tablosu \u00f6\u011fe t\u00fcr\u00fc + +ORA-17098=Ge\u00e7ersiz bo\u015f i\u015f kolu i\u015flemi + +ORA-17099=Ge\u00e7ersiz PL/SQL Dizin Tablosu dizi uzunlu\u011fu + +ORA-17100=Ge\u00e7ersiz veritaban\u0131 Java Nesnesi + +ORA-17101=OCI Ba\u011flant\u0131 Havuzu Nesnesi'nde ge\u00e7ersiz nitelikler + +ORA-17102=Bfile salt okunur + +ORA-17103=getConnection \u00fczerinden d\u00f6nmek i\u00e7in ba\u011flant\u0131 t\u00fcr\u00fc ge\u00e7ersiz. Yerine GetJavaSqlConnection'\u0131 kullan\u0131n + +ORA-17104=Y\u00fcr\u00fct\u00fclecek SQL deyimi bo\u015f veya NULL olamaz + +ORA-17105=ba\u011flant\u0131 oturumu saat dilimi ayarlanmad\u0131 + +ORA-17106=ge\u00e7ersiz JDBC-OCI s\u00fcr\u00fcc\u00fcs\u00fc ba\u011flant\u0131 havuzu konfig\u00fcrasyonu belirlendi + +ORA-17107=ge\u00e7ersiz proxy t\u00fcr\u00fc belirlendi + +ORA-17108=defineColumnType y\u00f6nteminde maksimum uzunluk belirlenmemi\u015f + +ORA-17109=standart Java karakter kodlamas\u0131 bulunamad\u0131 + +ORA-17110=y\u00fcr\u00fctme uyar\u0131 ile tamamland\u0131 + +ORA-17111=Ge\u00e7ersiz ba\u011flant\u0131 \u00f6nbelle\u011fi TTL zaman a\u015f\u0131m\u0131 belirlendi + +ORA-17112=Ge\u00e7ersiz thread aral\u0131\u011f\u0131 belirlendi + +ORA-17113=Thread aral\u0131k de\u011feri, \u00f6nbellek zaman a\u015f\u0131m\u0131 de\u011ferinden b\u00fcy\u00fck + +ORA-17114=yerel i\u015flemi kaydetme, genel i\u015flemde kullan\u0131lamad\u0131 + +ORA-17115=yerel i\u015flem geri alma, genel i\u015flemde kullan\u0131lamad\u0131 + +ORA-17116=etkin genel hareket i\u00e7inde otomatik kaydetme a\u00e7\u0131lamad\u0131 + +ORA-17117=etkin genel hareket i\u00e7inde kay\u0131t noktas\u0131 ayarlanamad\u0131 + +ORA-17118=adland\u0131r\u0131lan bir Kaydetme Noktas\u0131n\u0131n No.'su al\u0131namad\u0131 + +ORA-17119=adland\u0131r\u0131lmayan bir Kaydetme Noktas\u0131n\u0131n ad\u0131 al\u0131namad\u0131 + +ORA-17120=otomatik kaydetme a\u00e7\u0131kken bir Kaydetme Noktas\u0131 ayarlanamad\u0131 + +ORA-17121=otomatik kaydetme a\u00e7\u0131kken bir Kaydetme Noktas\u0131na geri d\u00f6n\u00fclemedi + +ORA-17122=genel bir i\u015flemde yerel bir i\u015flem Kaydetme Noktas\u0131na geri d\u00f6n\u00fclemedi + +ORA-17123=Ge\u00e7ersiz deyim \u00f6nbellek boyutu belirlendi + +ORA-17124=Ge\u00e7ersiz ba\u011flant\u0131 \u00f6nbelle\u011fi Edilgenlik zaman a\u015f\u0131m\u0131 belirlendi + +ORA-17200=XA a\u00e7ma dizesi Java'dan C'ye d\u00fczg\u00fcn bi\u00e7imde d\u00f6n\u00fc\u015ft\u00fcr\u00fclemiyor + +ORA-17201=XA kapatma dizesi Java'dan C'ye d\u00fczg\u00fcn bi\u00e7imde d\u00f6n\u00fc\u015ft\u00fcr\u00fclemiyor + +ORA-17202=RM ad\u0131 Java'dan C'ye d\u00fczg\u00fcn bi\u00e7imde d\u00f6n\u00fc\u015ft\u00fcr\u00fclemiyor + +ORA-17203=\u0130\u015faret\u00e7i t\u00fcr\u00fc jlong t\u00fcr\u00fcne d\u00f6n\u00fc\u015ft\u00fcr\u00fclemedi + +ORA-17204=Girdi dizisi, OCI tutama\u00e7lar\u0131n\u0131 tutamayacak kadar k\u0131sa + +ORA-17205=OCISvcCtx tutamac\u0131 xaoSvcCtx kullan\u0131larak C-XA'dan al\u0131namad\u0131 + +ORA-17206=OCIEnv tutamac\u0131 xaoEnv kullan\u0131larak C-XA'dan al\u0131namad\u0131 + +ORA-17207=TnsEntry niteli\u011fi, Veri Kayna\u011f\u0131 i\u00e7inde ayarlanmad\u0131 + +ORA-17213=xa_open s\u0131ras\u0131nda C-XA, XAER_RMERR d\u00f6nd\u00fcrd\u00fc + +ORA-17215=xa_open s\u0131ras\u0131nda C-XA, XAER_INVAL d\u00f6nd\u00fcrd\u00fc + +ORA-17216=xa_open s\u0131ras\u0131nda C-XA, XAER_PROTO d\u00f6nd\u00fcrd\u00fc + +ORA-17233=xa_close s\u0131ras\u0131nda C-XA, XAER_RMERR d\u00f6nd\u00fcrd\u00fc + +ORA-17235=xa_close s\u0131ras\u0131nda C-XA, XAER_INVAL d\u00f6nd\u00fcrd\u00fc + +ORA-17236=xa_close s\u0131ras\u0131nda C-XA, XAER_PROTO d\u00f6nd\u00fcrd\u00fc + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokol ihlali + +ORA-17402=Tek bir RPA mesaj\u0131 bekleniyor + +ORA-17403=Yaln\u0131zca bir RXH mesaj\u0131 bekleniyor + +ORA-17404=Beklenenden daha \u00e7ok say\u0131da RXD al\u0131nd\u0131 + +ORA-17405=UAC uzunlu\u011fu s\u0131f\u0131r de\u011fil + +ORA-17406=Maksimum arabellek uzunlu\u011fu a\u015f\u0131l\u0131yor + +ORA-17407=ge\u00e7ersiz T\u00fcr Temsili (setRep) + +ORA-17408=Ge\u00e7ersiz T\u00fcr Sunumu (getRep) + +ORA-17409=ge\u00e7ersiz arabellek uzunlu\u011fu + +ORA-17410=Yuvadan okunacak ba\u015fka veri yok + +ORA-17411=Veri T\u00fcr\u00fc sunumlar\u0131 uyumsuzlu\u011fu + +ORA-17412=T\u00fcr uzunlu\u011fu maksimum de\u011ferden daha b\u00fcy\u00fck + +ORA-17413=Anahtar boyutu a\u015f\u0131l\u0131yor + +ORA-17414=S\u00fctun Adlar\u0131n\u0131 saklamak i\u00e7in yetersiz Arabellek boyutu + +ORA-17415=Bu t\u00fcr i\u015flenmedi + +ORA-17416=FATAL + +ORA-17417=NLS Sorunu, s\u00fctun adlar\u0131n\u0131n kodlamas\u0131 \u00e7\u00f6z\u00fclemedi + +ORA-17418=Dahili yap\u0131n\u0131n alan uzunlu\u011funda hata + +ORA-17419=Ge\u00e7ersiz say\u0131da s\u00fctun d\u00f6nd\u00fcr\u00fcld\u00fc + +ORA-17420=Oracle S\u00fcr\u00fcm\u00fc tan\u0131mlanmam\u0131\u015f + +ORA-17421=T\u00fcrler veya Ba\u011flant\u0131 tan\u0131mlanmam\u0131\u015f + +ORA-17422=Factory i\u00e7inde ge\u00e7ersiz s\u0131n\u0131f + +ORA-17423=Tan\u0131ml\u0131 bir IOV olmaks\u0131z\u0131n PLSQL blo\u011fu kullan\u0131l\u0131yor + +ORA-17424=Farkl\u0131 marshaling i\u015flemi deneniyor + +ORA-17425=PLSQL blo\u011funda veri ak\u0131\u015f\u0131 d\u00f6nd\u00fcr\u00fcl\u00fcyor + +ORA-17426=Hem IN hem de OUT ba\u011flar\u0131 NULL + +ORA-17427=Ba\u015flat\u0131lmam\u0131\u015f OAC kullan\u0131l\u0131yor + +ORA-17428=Connect sonras\u0131nda logon \u00e7a\u011fr\u0131lmal\u0131d\u0131r + +ORA-17429=En az\u0131ndan sunucuya ba\u011fl\u0131 olmal\u0131d\u0131r + +ORA-17430=Sunucuda oturum a\u00e7m\u0131\u015f olmal\u0131d\u0131r + +ORA-17431=Ayr\u0131\u015ft\u0131r\u0131lacak SQL Deyimi bo\u015f + +ORA-17432=all7 i\u00e7inde ge\u00e7ersiz se\u00e7enekler + +ORA-17433=\u00e7a\u011fr\u0131da ge\u00e7ersiz ba\u011f\u0131ms\u0131z de\u011fi\u015fkenler + +ORA-17434=veri ak\u0131\u015f\u0131 modunda de\u011fil + +ORA-17435=IOV i\u00e7inde ge\u00e7ersiz say\u0131da in_out_binds + +ORA-17436=ge\u00e7ersiz say\u0131da outbind + +ORA-17437=PLSQL blo\u011fu IN/OUT ba\u011f\u0131ms\u0131z de\u011fi\u015fkenlerinde hata + +ORA-17438=Dahili - Beklenmeyen de\u011fer + +ORA-17439=Ge\u00e7ersiz SQL t\u00fcr\u00fc + +ORA-17440=DBItem/DBType bo\u015f + +ORA-17441=Oracle S\u00fcr\u00fcm\u00fc desteklenmiyor. Desteklenen en eski s\u00fcr\u00fcm 7.2.3. + +ORA-17442=Refcursor de\u011feri ge\u00e7ersiz + +ORA-17443=THIN s\u00fcr\u00fcc\u00fcs\u00fcnde bo\u015f kullan\u0131c\u0131 ad\u0131 veya parola desteklenmiyor + +ORA-17444=Sunucudan al\u0131nan TTC Protokol\u00fc s\u00fcr\u00fcm\u00fc desteklenmiyor + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cd/309bcbc84eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cd/309bcbc84eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..3037a10 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cd/309bcbc84eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,146 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public IHMConnexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + // Affichage du message de configurmation + this.pr.confirmationConnexion("Mon serveur"); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/30f0751698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/30f0751698af001c18c4935e001381da new file mode 100644 index 0000000..79dbfc0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/30f0751698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/608bbd1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/608bbd1798af001c18c4935e001381da new file mode 100644 index 0000000..37c7de0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/608bbd1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/9058bf3a08af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/9058bf3a08af001c14499bdcdfff58b3 new file mode 100644 index 0000000..ef2979c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/9058bf3a08af001c14499bdcdfff58b3 @@ -0,0 +1,161 @@ +package fr.blankoworld.connexionBDD; + +import java.awt.List; +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + +// DatabaseMetaData metaData; +// List listTables = new List(10); +// +// metaData = connection.getMetaData(); +// String[] types = { "TABLE", "VIEW" }; +// ResultSet rs = metaData.getTables( null, null, "%", types ); +// String nomTable; +// while ( rs.next() ) { +// nomTable = rs.getString( 3 ); +// listeTables.add( nomTable ); +// } + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/a0b3e81a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/a0b3e81a98af001c18c4935e001381da new file mode 100644 index 0000000..b7eaf88 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/a0b3e81a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/b0b4b4e2f9a3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/b0b4b4e2f9a3001c1027e59cc3e35e89 new file mode 100644 index 0000000..cdb5ea6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/b0b4b4e2f9a3001c1027e59cc3e35e89 @@ -0,0 +1,13 @@ +package fr.blankoworld.connexionBDD; + +public class Principal { + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(){ + System.out.println("Pas trouv"); + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/c041141998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/c041141998af001c18c4935e001381da new file mode 100644 index 0000000..9fa42ec Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/c041141998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/d06c491798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/d06c491798af001c18c4935e001381da new file mode 100644 index 0000000..0824dfb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/d06c491798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/e060fae001a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/e060fae001a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..5c51587 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/e060fae001a4001c1027e59cc3e35e89 @@ -0,0 +1,77 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + System.out.println(resultat.isbeforeFirst()); +// true + resultat.next(); +// on se retrouve ici sur la premire ligne + +// traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + } + resultat.first(); +// on a replac ici le curseur sur la premire ligne + resultset.afterlast(); +// on a replac le curseur aprs la dernire ligne + while(resultat.previous()){ + // on parcours ici le ResultSet de la dernire la premire ligne + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/e0bdc51698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/e0bdc51698af001c18c4935e001381da new file mode 100644 index 0000000..93d1520 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ce/e0bdc51698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cf/2000046afea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cf/2000046afea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..d5e974a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cf/2000046afea3001c1027e59cc3e35e89 @@ -0,0 +1,41 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp, user, password); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + // Fermer la base de donne + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cf/e0d5791b4faa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cf/e0d5791b4faa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..542200c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cf/e0d5791b4faa001c10fbbbdbedbe1ee6 @@ -0,0 +1,152 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private IHMPrincipale pr; + + // Cration de la classe permettant la connexion la base de donnes + private Connexion connexionBDD; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public IHMConnexion(IHMPrincipale pr, Connexion conn) { + + this.pr = pr; + + this.connexionBDD = conn; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + // Affichage du message de configurmation + this.pr.confirmationConnexion("Mon serveur"); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cf/f0f45d1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cf/f0f45d1998af001c18c4935e001381da new file mode 100644 index 0000000..5cad17b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/cf/f0f45d1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d/309e0d2103a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d/309e0d2103a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..5842b2a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d/309e0d2103a4001c1027e59cc3e35e89 @@ -0,0 +1,69 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne ... + resultat.toString(); + + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d/d033081998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d/d033081998af001c18c4935e001381da new file mode 100644 index 0000000..3670c0f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d/d033081998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d0/308ffff620af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d0/308ffff620af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..9f51478 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d0/308ffff620af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a + +ORA-17002=\u0627\u0633\u062a\u062b\u0646\u0627\u0621 \u0645\u062f\u062e\u0644\u0627\u062a/\u0645\u062e\u0631\u062c\u0627\u062a + +ORA-17003=\u0641\u0647\u0631\u0633 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17004=\u0646\u0648\u0639 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17005=\u0646\u0648\u0639 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0645\u062f\u0639\u0645 + +ORA-17006=\u0627\u0633\u0645 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17007=\u0639\u0645\u0648\u062f \u062f\u064a\u0646\u0627\u0645\u064a\u0643\u064a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17008=\u0627\u062a\u0635\u0627\u0644 \u0645\u063a\u0644\u0642 + +ORA-17009=\u062c\u0645\u0644\u0629 \u0645\u063a\u0644\u0642\u0629 + +ORA-17010=\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0645\u063a\u0644\u0642\u0629 + +ORA-17011=\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0646\u0627\u0641\u062f\u0629 + +ORA-17012=\u062a\u0636\u0627\u0631\u0628 \u0646\u0648\u0639 \u0627\u0644\u0645\u0639\u0627\u0645\u0644 + +ORA-17014=\u0644\u0645 \u064a\u062a\u0645 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 ResultSet.next + +ORA-17015=\u062a\u0645 \u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062c\u0645\u0644\u0629 + +ORA-17016=\u0627\u0646\u062a\u0647\u0649 \u0648\u0642\u062a \u0627\u0644\u062c\u0645\u0644\u0629 + +ORA-17017=\u062a\u0645\u062a \u062a\u0647\u064a\u0626\u0629 \u0627\u0644\u0645\u0624\u0634\u0631 \u0645\u0646 \u0642\u0628\u0644 + +ORA-17018=\u0645\u0624\u0634\u0631 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17019=\u064a\u0645\u0643\u0646 \u0641\u0642\u0637 \u0648\u0635\u0641 \u0627\u0633\u062a\u0639\u0644\u0627\u0645 + +ORA-17020=\u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0633\u062d\u0628 \u0645\u0633\u0628\u0642 \u0644\u0644\u0635\u0641 + +ORA-17021=\u062a\u0639\u0631\u064a\u0641\u0627\u062a \u0645\u0641\u0642\u0648\u062f\u0629 + +ORA-17022=\u062a\u0639\u0631\u064a\u0641\u0627\u062a \u0645\u0641\u0642\u0648\u062f\u0629 \u0641\u064a \u0627\u0644\u0641\u0647\u0631\u0633 + +ORA-17023=\u062e\u0627\u0635\u064a\u0629 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 + +ORA-17024=\u0644\u0645 \u062a\u062a\u0645 \u0642\u0631\u0627\u0621\u0629 \u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17025=\u062e\u0637\u0623 \u0641\u064a defines.isNull () + +ORA-17026=\u062a\u062c\u0627\u0648\u0632 \u0627\u0644\u062d\u062f \u0631\u0642\u0645\u064a + +ORA-17027=\u062a\u0645 \u0628\u0627\u0644\u0641\u0639\u0644 \u0625\u063a\u0644\u0627\u0642 \u0627\u0644\u062a\u062f\u0641\u0642 + +ORA-17028=\u0644\u0627 \u064a\u0645\u0643\u0646 \u0639\u0645\u0644 \u062a\u0639\u0631\u064a\u0641\u0627\u062a \u062c\u062f\u064a\u062f\u0629 \u062d\u062a\u0649 \u064a\u062a\u0645 \u0625\u063a\u0644\u0627\u0642 ResultSet \u0627\u0644\u062d\u0627\u0644\u064a\u0629 + +ORA-17029=setReadOnly: \u0627\u062a\u0635\u0627\u0644\u0627\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0641\u0642\u0637 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 + +ORA-17030=READ_COMMITTED \u0648 SERIALIZABLE \u0647\u064a \u0641\u0642\u0637 \u0645\u0633\u062a\u0648\u064a\u0627\u062a \u0627\u0644\u0639\u0645\u0644\u064a\u0627\u062a \u0627\u0644\u0635\u0627\u0644\u062d\u0629 + +ORA-17031=setAutoClose: \u0627\u0644\u062f\u0639\u0645 \u0641\u0642\u0637 \u0644\u0648\u0636\u0639 \u0627\u0644\u063a\u0644\u0642 \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a + +ORA-17032=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0639\u064a\u064a\u0646 \u0627\u0644\u0633\u062d\u0628 \u0627\u0644\u0645\u0633\u0628\u0642 \u0625\u0644\u0649 \u0635\u0641\u0631 + +ORA-17033=\u0633\u0644\u0633\u0644\u0629 Malformed SQL92 \u0641\u064a \u0627\u0644\u0645\u0631\u0643\u0632 + +ORA-17034=\u0645\u0642\u0637\u0639 SQL92 \u063a\u064a\u0631 \u0645\u062f\u0639\u0648\u0645 \u0641\u064a \u0627\u0644\u0645\u0631\u0643\u0632 + +ORA-17035=\u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u062d\u0631\u0648\u0641 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 !! + +ORA-17036=\u0627\u0633\u062a\u062b\u0646\u0627\u0621 \u0641\u064a OracleNumber + +ORA-17037=\u0641\u0634\u0644 \u0627\u0644\u062a\u062d\u0648\u064a\u0644 \u0628\u064a\u0646 UTF8 \u0648 UCS2 + +ORA-17038=\u0645\u0635\u0641\u0648\u0641\u0629 \u0627\u0644\u0628\u0627\u064a\u062a \u0644\u064a\u0633\u062a \u0637\u0648\u064a\u0644\u0629 \u0628\u0627\u0644\u0642\u062f\u0631 \u0627\u0644\u0643\u0627\u0641\u064a + +ORA-17039=\u0645\u0635\u0641\u0648\u0641\u0629 char \u0644\u064a\u0633\u062a \u0637\u0648\u064a\u0644\u0629 \u0628\u0627\u0644\u0642\u062f\u0631 \u0627\u0644\u0643\u0627\u0641\u064a + +ORA-17040=\u064a\u062c\u0628 \u062a\u062d\u062f\u064a\u062f \u0627\u0644\u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 \u0627\u0644\u0641\u0631\u0639\u064a \u0641\u064a \u0627\u062a\u0635\u0627\u0644 URL + +ORA-17041=\u0645\u0639\u0627\u0645\u0644 IN \u0623\u0648 OUT \u0645\u0641\u0642\u0648\u062f \u0641\u064a \u0627\u0644\u0641\u0647\u0631\u0633: + +ORA-17042=\u0642\u064a\u0645\u0629 \u0627\u0644\u062f\u0641\u0639\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17043=\u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0649 \u0644\u062d\u062c\u0645 \u0627\u0644\u062a\u062f\u0641\u0642 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17044=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0645\u0635\u0641\u0648\u0641\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u063a\u064a\u0631 \u0645\u062e\u0635\u0635\u0629 + +ORA-17045=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0645\u062d\u0627\u0648\u0644\u0629 \u0644\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0642\u064a\u0645 \u0631\u0628\u0637 \u0648\u0631\u0627\u0621 \u0642\u064a\u0645\u0629 \u0627\u0644\u062f\u0641\u0639\u0629 + +ORA-17046=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0641\u0647\u0631\u0633 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17047=\u062e\u0637\u0623 \u0641\u064a \u0627\u0644\u062a\u062d\u0644\u064a\u0644 \u0627\u0644\u0644\u063a\u0648\u064a \u0644\u0648\u0627\u0635\u0641 \u0627\u0644\u0646\u0648\u0639 + +ORA-17048=\u0646\u0648\u0639 \u063a\u064a\u0631 \u0645\u062d\u062f\u062f + +ORA-17049=\u0623\u0646\u0648\u0627\u0639 \u0643\u0627\u0626\u0646 sql \u0648\u062c\u0627\u0641\u0627 \u063a\u064a\u0631 \u0645\u062a\u0646\u0627\u0633\u0642\u0629 + +ORA-17050=\u0644\u0627 \u064a\u0648\u062c\u062f \u0645\u062b\u0644 \u0647\u0630\u0627 \u0627\u0644\u0639\u0646\u0635\u0631 \u0641\u064a \u0627\u0644\u0645\u0648\u062c\u0651\u064e\u0647 + +ORA-17051=\u0644\u0627 \u064a\u0645\u0643\u0646 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 API \u0647\u0630\u0627 \u0644\u0623\u0646\u0648\u0627\u0639 non-UDT + +ORA-17052=\u0647\u0630\u0627 ref \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17053=\u0627\u0644\u062d\u062c\u0645 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17054=\u0645\u062d\u062f\u062f \u0627\u0644\u0645\u0648\u0627\u0642\u0639 LOB \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17055=\u062a\u0645\u062a \u0645\u0635\u0627\u062f\u0641\u0629 \u062d\u0631\u0641 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0641\u064a + +ORA-17056=\u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u062d\u0631\u0648\u0641 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 + +ORA-17057=LOB \u0645\u063a\u0644\u0642 + +ORA-17058=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0646\u0633\u0628\u0629 \u062a\u062d\u0648\u064a\u0644 NLS \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17059=\u0641\u0634\u0644 \u0627\u0644\u062a\u062d\u0648\u064a\u0644 \u0625\u0644\u0649 \u0627\u0644\u062a\u0645\u062b\u064a\u0644 \u0627\u0644\u062f\u0627\u062e\u0644\u064a + +ORA-17060=\u0641\u0634\u0644 \u062a\u0643\u0648\u064a\u0646 \u0627\u0644\u0648\u0627\u0635\u0641 + +ORA-17061=\u0648\u0627\u0635\u0641 \u0645\u0641\u0642\u0648\u062f + +ORA-17062=\u0645\u0624\u0634\u0631 Ref \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17063=\u0644\u064a\u0633 \u0636\u0645\u0646 \u0639\u0645\u0644\u064a\u0629 + +ORA-17064=\u0635\u064a\u0627\u063a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0623\u0648 \u0623\u0646 \u0627\u0633\u0645 \u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u062e\u0627\u0644\u064a + +ORA-17065=\u0637\u0628\u0642\u0629 \u0627\u0644\u062a\u062d\u0648\u064a\u0644 \u062e\u0627\u0644\u064a\u0629 + +ORA-17066=\u0645\u0637\u0644\u0648\u0628 \u062a\u0646\u0641\u064a\u0630 \u0645\u0639\u064a\u0646 \u0644\u0637\u0628\u0642\u0629 \u0627\u0644\u0648\u0635\u0648\u0644 + +ORA-17067=\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 URL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0623\u0648\u0631\u0627\u0643\u0644 + +ORA-17068=\u0648\u0633\u064a\u0637\u0629 (\u0648\u0633\u0627\u0626\u0637) \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0627\u0644\u0627\u0633\u062a\u062f\u0639\u0627\u0621 + +ORA-17069=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 XA \u0627\u0644\u0636\u0645\u0646\u064a + +ORA-17070=\u062d\u062c\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u062d\u062c\u0645 \u0627\u0644\u0623\u0642\u0635\u0649 \u0644\u0647\u0630\u0627 \u0627\u0644\u0646\u0648\u0639 + +ORA-17071=\u062a\u0645 \u062a\u062c\u0627\u0648\u0632 \u062d\u062f VARRAY \u0627\u0644\u0623\u0642\u0635\u0649 + +ORA-17072=\u062a\u0645 \u0625\u0636\u0627\u0641\u0629 \u0642\u064a\u0645\u0629 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0639\u0645\u0648\u062f \u0628\u0643\u062b\u064a\u0631 + +ORA-17073=\u0644\u0645 \u064a\u0639\u062f \u0627\u0644\u0645\u0631\u062c\u0639 \u0627\u0644\u0645\u0646\u0637\u0642\u064a \u0635\u0627\u0644\u062d\u0627\u064b + +ORA-17074=\u0646\u0645\u0637 \u0627\u0644\u0627\u0633\u0645 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17075=\u0639\u0645\u0644\u064a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0644\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0627\u0644\u062a\u0648\u062c\u064a\u0647 \u0641\u0642\u0637 + +ORA-17076=\u0639\u0645\u0644\u064a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0644\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0641\u0642\u0637 + +ORA-17077=\u0641\u0634\u0644 \u062a\u0639\u064a\u064a\u0646 \u0642\u064a\u0645\u0629 REF + +ORA-17078=\u0644\u0627 \u064a\u0645\u0643\u0646 \u0625\u062c\u0631\u0627\u0621 \u0627\u0644\u0639\u0645\u0644\u064a\u0629 \u0644\u0623\u0646 \u0627\u0644\u0627\u062a\u0635\u0627\u0644\u0627\u062a \u0645\u0641\u062a\u0648\u062d\u0629 \u0628\u0627\u0644\u0641\u0639\u0644 + +ORA-17079=\u0635\u0644\u0627\u062d\u064a\u0627\u062a \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645 \u063a\u064a\u0631 \u0645\u062a\u0637\u0627\u0628\u0642\u0629 \u0645\u0639 \u0627\u0644\u0635\u0644\u0627\u062d\u064a\u0627\u062a \u0627\u0644\u0645\u0648\u062c\u0648\u062f\u0629 + +ORA-17080=\u0623\u0645\u0631 \u062f\u0641\u0639\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17081=\u062d\u062f\u062b \u062e\u0637\u0623 \u062e\u0644\u0627\u0644 \u0625\u062c\u0631\u0627\u0621 \u0627\u0644\u062f\u0641\u0639\u0629 + +ORA-17082=\u0644\u0627 \u064a\u0648\u062c\u062f \u0635\u0641 \u062d\u0627\u0644\u064a + +ORA-17083=\u0644\u064a\u0633 \u0639\u0644\u0649 \u0635\u0641 \u0627\u0644\u0625\u0636\u0627\u0641\u0629 + +ORA-17084=\u0645\u0633\u062a\u062f\u0639\u0649 \u0639\u0644\u0649 \u0635\u0641 \u0627\u0644\u0625\u0636\u0627\u0641\u0629 + +ORA-17085=\u062d\u062f\u062b \u062a\u0636\u0627\u0631\u0628 \u0641\u064a \u0627\u0644\u0642\u064a\u0645 + +ORA-17086=\u0642\u064a\u0645\u0629 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0645\u0639\u0631\u0641\u0629 \u0639\u0644\u0649 \u0635\u0641 \u0627\u0644\u0625\u0636\u0627\u0641\u0629 + +ORA-17087=\u062a\u062c\u0627\u0647\u0644 \u062a\u0644\u0645\u064a\u062d \u0627\u0644\u0623\u062f\u0627\u0621: setFetchDirection() + +ORA-17088=\u0635\u064a\u0627\u063a\u0629 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 \u0644\u0646\u0648\u0639 \u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u0646\u062a\u0627\u0626\u062c \u0627\u0644\u0645\u0637\u0644\u0648\u0628 \u0648\u0645\u0633\u062a\u0648\u0649 \u0627\u0644\u062a\u0632\u0627\u0645\u0646 \u0627\u0644\u0645\u0637\u0644\u0648\u0628 +ORA-17089=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a + +ORA-17090=\u063a\u064a\u0631 \u0645\u0633\u0645\u0648\u062d \u0628\u0627\u0644\u0639\u0645\u0644\u064a\u0629 + +ORA-17091=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u0649 \u062a\u0643\u0648\u064a\u0646 \u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u0646\u062a\u0627\u0626\u062c \u0641\u064a \u0627\u0644\u0646\u0648\u0639 \u0627\u0644\u0645\u0637\u0644\u0648\u0628 \u0648/\u0623\u0648 \u0645\u0633\u062a\u0648\u0649 \u0627\u0644\u062a\u0632\u0627\u0645\u0646 \u0627\u0644\u0645\u0637\u0644\u0648\u0628 + +ORA-17092=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0643\u0648\u064a\u0646 \u0623\u0648 \u062a\u0646\u0641\u064a\u0630 \u062c\u0645\u0644 JDBC \u0641\u064a \u0646\u0647\u0627\u064a\u0629 \u0645\u0639\u0627\u0644\u062c\u0629 \u0627\u0644\u0627\u0633\u062a\u062f\u0639\u0627\u0621. + +ORA-17093=\u0642\u0627\u0645\u062a \u0639\u0645\u0644\u064a\u0629 \u0648\u0633\u064a\u0637 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 \u0623\u0648\u0631\u0627\u0643\u0644 \u0628\u0625\u0639\u0627\u062f\u0629 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u0625\u0635\u062f\u0627\u0631 \u0646\u0648\u0639 \u0627\u0644\u0643\u0627\u0626\u0646 \u063a\u064a\u0631 \u0645\u062a\u0637\u0627\u0628\u0642 + +ORA-17095=\u0644\u0645 \u064a\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 \u062d\u062c\u0645 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u062c\u0645\u0644\u0629 + +ORA-17096=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 \u0627\u0644\u062e\u0627\u0635\u0629 \u0628\u0627\u0644\u062c\u0645\u0644\u0629 \u0644\u0647\u0630\u0627 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 \u0627\u0644\u0645\u0646\u0637\u0642\u064a. + +ORA-17097=\u0646\u0648\u0639 \u0639\u0646\u0635\u0631 \u062c\u062f\u0648\u0644 \u0641\u0647\u0631\u0633 PL/SQL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17098=\u0639\u0645\u0644\u064a\u0629 lob \u0641\u0627\u0631\u063a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17099=\u0637\u0648\u0644 \u0645\u0635\u0641\u0648\u0641\u0629 \u062c\u062f\u0648\u0644 \u0641\u0647\u0631\u0633 PL/SQL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17100=\u0643\u0627\u0626\u0646 \u0628\u064a\u0627\u0646\u0627\u062a \u062c\u0627\u0641\u0627 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17101=\u062e\u0635\u0627\u0626\u0635 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0643\u0627\u0626\u0646 \u0645\u062c\u0645\u0639 \u0627\u062a\u0635\u0627\u0644 OCI + +ORA-17102=Bfile \u0644\u0644\u0642\u0631\u0627\u0621\u0629 \u0641\u0642\u0637 + +ORA-17103=\u062a\u0645 \u0625\u0631\u062c\u0627\u0639 \u0646\u0648\u0639 \u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0628\u0648\u0627\u0633\u0637\u0629 getConnection. \u0627\u0633\u062a\u062e\u062f\u0645 getJavaSqlConnection \u0628\u062f\u0644\u0627 \u0645\u0646 \u0630\u0644\u0643 + +ORA-17104=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0646\u0641\u064a\u0630 \u062c\u0645\u0644\u0629 SQL \u0641\u0627\u0631\u063a\u0629 \u0623\u0648 \u062e\u0627\u0644\u064a\u0629 + +ORA-17105=\u0644\u0645 \u064a\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 \u0646\u0637\u0627\u0642 \u0627\u0644\u0648\u0642\u062a \u0644\u062c\u0644\u0633\u0629 \u0639\u0645\u0644 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 + +ORA-17106=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u062a\u0643\u0648\u064a\u0646 \u0645\u062c\u0645\u0639 \u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0628\u0631\u0646\u0627\u0645\u062c \u062a\u0634\u063a\u064a\u0644 JDBC-OCI + +ORA-17107=\u0646\u0648\u0639 \u0627\u0644\u0628\u0631\u0648\u0643\u0633\u064a \u0627\u0644\u0645\u062d\u062f\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17108=\u0644\u0645 \u064a\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u062d\u062f \u0623\u0642\u0635\u0649 \u0644\u0644\u0637\u0648\u0644 \u0641\u064a defineColumnType + +ORA-17109=\u062a\u0639\u0630\u0631 \u0627\u0644\u0639\u062b\u0648\u0631 \u0639\u0644\u0649 \u062a\u0631\u0645\u064a\u0632 \u062d\u0631\u0648\u0641 \u062c\u0627\u0641\u0627 \u0627\u0644\u0642\u064a\u0627\u0633\u064a + +ORA-17110=\u0627\u0643\u062a\u0645\u0644 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0645\u0639 \u0638\u0647\u0648\u0631 \u062a\u062d\u0630\u064a\u0631\u0627\u062a + +ORA-17111=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u0648\u0642\u062a \u0627\u0646\u062a\u0647\u0627\u0621 TTL \u0644\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17112=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u0641\u0627\u0635\u0644 \u0632\u0645\u0646\u064a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0633\u0644\u0633\u0644\u0629 \u0627\u0644\u0639\u0645\u0644\u064a\u0627\u062a + +ORA-17113=\u0642\u064a\u0645\u0629 \u0627\u0644\u0641\u0627\u0635\u0644 \u0627\u0644\u0632\u0645\u0646\u064a \u0644\u0633\u0644\u0633\u0644\u0629 \u0627\u0644\u0639\u0645\u0644\u064a\u0627\u062a \u0623\u0643\u0628\u0631 \u0645\u0646 \u0642\u064a\u0645\u0629 \u0648\u0642\u062a \u0627\u0646\u062a\u0647\u0627\u0621 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0645\u062e\u0628\u0626\u064a\u0629 + +ORA-17114=\u062a\u0639\u0630\u0631 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u062a\u062b\u0628\u064a\u062a \u0639\u0645\u0644\u064a\u0629 \u0645\u062d\u0644\u064a\u0629 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 + +ORA-17115=\u062a\u0639\u0630\u0631 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0625\u0644\u063a\u0627\u0621 \u062a\u0639\u062f\u064a\u0644\u0627\u062a \u0639\u0645\u0644\u064a\u0629 \u0645\u062d\u0644\u064a\u0629 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 + +ORA-17116=\u062a\u0639\u0630\u0631 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 \u0646\u0634\u0637\u0629 + +ORA-17117=\u062a\u0639\u0630\u0631 \u062a\u0639\u064a\u064a\u0646 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 \u0646\u0634\u0637\u0629 + +ORA-17118=\u062a\u0639\u0630\u0631 \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0645\u0639\u0631\u0641 \u0644\u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0645\u0633\u0645\u0627\u0629 + +ORA-17119=\u062a\u0639\u0630\u0631 \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0633\u0645 \u0644\u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u063a\u064a\u0631 \u0645\u0633\u0645\u0627\u0629 + +ORA-17120=\u062a\u0639\u0630\u0631 \u062a\u0639\u064a\u064a\u0646 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0645\u0639 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a + +ORA-17121=\u062a\u0639\u0630\u0631 \u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062a\u0639\u062f\u064a\u0644\u0627\u062a \u0625\u0644\u0649 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0645\u0639 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a + +ORA-17122=\u062a\u0639\u0630\u0631 \u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062a\u0639\u062f\u064a\u0644\u0627\u062a \u0625\u0644\u0649 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 txn \u0645\u062d\u0644\u064a\u0629 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 + +ORA-17123=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u062d\u062c\u0645 \u0630\u0627\u0643\u0631\u0629 \u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u062c\u0645\u0644\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17124=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u0648\u0642\u062a \u0627\u0646\u062a\u0647\u0627\u0621 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0639\u062f\u0645 \u0646\u0634\u0627\u0637 \u0630\u0627\u0643\u0631\u0629 \u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u0627\u062a\u0635\u0627\u0644 + +ORA-17200=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u064a \u062a\u062d\u0648\u064a\u0644 \u0633\u0644\u0633\u0644\u0629 \u0641\u062a\u062d XA \u0645\u0646 \u062c\u0627\u0641\u0627 \u0625\u0644\u064a C \u0628\u0627\u0644\u0634\u0643\u0644 \u0627\u0644\u0645\u0646\u0627\u0633\u0628 + +ORA-17201=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u0649 \u062a\u062d\u0648\u064a\u0644 \u0633\u0644\u0633\u0644\u0629 \u0625\u063a\u0644\u0627\u0642 XA \u0645\u0646 \u062c\u0627\u0641\u0627 \u0625\u0644\u064a C \u0628\u0627\u0644\u0634\u0643\u0644 \u0627\u0644\u0645\u0646\u0627\u0633\u0628 + +ORA-17202=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u064a \u062a\u062d\u0648\u064a\u0644 \u0627\u0633\u0645 RM \u0645\u0646 \u062c\u0627\u0641\u0627 \u0625\u0644\u064a C \u0628\u0627\u0644\u0634\u0643\u0644 \u0627\u0644\u0645\u0646\u0627\u0633\u0628 + +ORA-17203=\u062a\u0639\u0630\u0631 \u062a\u0639\u064a\u064a\u0646 \u0646\u0648\u0639 \u0627\u0644\u0645\u0624\u0634\u0631 \u0625\u0644\u064a \u0627\u0644\u0637\u0648\u0644 jlong + +ORA-17204=\u0645\u0635\u0641\u0648\u0641\u0629 \u0627\u0644\u0645\u062f\u062e\u0644\u0627\u062a \u0642\u0635\u064a\u0631\u0629 \u0644\u0644\u063a\u0627\u064a\u0629 \u0644\u062f\u0631\u062c\u0629 \u0644\u0627 \u064a\u0645\u0643\u0646\u0647\u0627 \u0627\u0644\u0627\u062d\u062a\u0641\u0627\u0638 \u0628\u0645\u0631\u0627\u062c\u0639 OCI + +ORA-17205=\u0641\u0634\u0644 \u0641\u064a \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0645\u0631\u062c\u0639 OCISvcCtx \u0645\u0646 C-XA \u0628\u0627\u0633\u062a\u062e\u062f\u0627\u0645 xaoSvcCtx + +ORA-17206=\u0641\u0634\u0644 \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u064a \u0645\u0631\u062c\u0639 OCIEnv \u0645\u0646 C-XA \u0628\u0627\u0633\u062a\u062e\u062f\u0627\u0645 xaoEnv + +ORA-17207=\u0644\u0645 \u064a\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 \u062e\u0627\u0635\u064a\u0629 tnsEntry \u0641\u064a \u0645\u0635\u062f\u0631 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17213=C-XA \u0623\u0631\u062c\u0639 XAER_RMERR \u0623\u062b\u0646\u0627\u0621 xa_open + +ORA-17215=C-XA \u0623\u0631\u062c\u0639 XAER_INVAL \u0623\u062b\u0646\u0627\u0621 xa_open + +ORA-17216=C-XA \u0623\u0631\u062c\u0639 XAER_PROTO \u0623\u062b\u0646\u0627\u0621 xa_open + +ORA-17233=C-XA \u0623\u0631\u062c\u0639 XAER_RMERR \u0623\u062b\u0646\u0627\u0621 xa_close + +ORA-17235=C-XA \u0623\u0631\u062c\u0639 XAER_INVAL \u0623\u062b\u0646\u0627\u0621 xa_close + +ORA-17236=C-XA \u0623\u0631\u062c\u0639 XAER_PROTO \u0623\u062b\u0646\u0627\u0621 xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u0627\u0646\u062d\u0631\u0627\u0641 \u0627\u0644\u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 + +ORA-17402=\u062a\u0648\u0642\u0639 \u0631\u0633\u0627\u0644\u0629 RPA \u0648\u0627\u062d\u062f\u0629 \u0641\u0642\u0637 + +ORA-17403=\u062a\u0648\u0642\u0639 \u0631\u0633\u0627\u0644\u0629 RXH \u0648\u0627\u062d\u062f\u0629 \u0641\u0642\u0637 + +ORA-17404=\u062a\u0644\u0642\u064a RXD \u0623\u0643\u062b\u0631 \u0645\u0646 \u0627\u0644\u0645\u062a\u0648\u0642\u0639 + +ORA-17405=\u0637\u0648\u0644 UAC \u0644\u064a\u0633 \u0635\u0641\u0631\u0627\u064b + +ORA-17406=\u062a\u062c\u0627\u0648\u0632 \u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0649 \u0644\u0637\u0648\u0644 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 + +ORA-17407=\u0646\u0648\u0639 \u0627\u0644\u062a\u0645\u062b\u064a\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d(setRep) + +ORA-17408=\u062a\u0645\u062b\u064a\u0644 \u0646\u0648\u0639 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d(getRep) + +ORA-17409=\u0637\u0648\u0644 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17410=\u0644\u0645 \u062a\u0639\u062f \u0647\u0646\u0627\u0643 \u0628\u064a\u0627\u0646\u0627\u062a \u0644\u0644\u0642\u0631\u0627\u0621\u0629 \u0645\u0646 \u0627\u0644\u0645\u0642\u0628\u0633 + +ORA-17411=\u0639\u062f\u0645 \u062a\u0637\u0627\u0628\u0642 \u062a\u0645\u062b\u064a\u0644\u0627\u062a \u0646\u0648\u0639 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17412=\u0637\u0648\u0644 \u0627\u0644\u0646\u0648\u0639 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0649 + +ORA-17413=\u062a\u062c\u0627\u0648\u0632 \u062d\u062c\u0645 \u0627\u0644\u0645\u0641\u062a\u0627\u062d + +ORA-17414=\u062d\u062c\u0645 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 \u063a\u064a\u0631 \u0643\u0627\u0641\u064a \u0644\u062a\u062e\u0632\u064a\u0646 \u0623\u0633\u0645\u0627\u0621 \u0627\u0644\u0623\u0639\u0645\u062f\u0629 + +ORA-17415=\u0644\u0645 \u062a\u062a\u0645 \u0645\u0639\u0627\u0644\u062c\u0629 \u0647\u0630\u0627 \u0627\u0644\u0646\u0648\u0639 + +ORA-17416=FATAL + +ORA-17417=\u0645\u0634\u0643\u0644\u0629 NLS\u060c \u0641\u0634\u0644 \u0641\u064a \u0641\u0643 \u0634\u0641\u0631\u0629 \u0623\u0633\u0645\u0627\u0621 \u0627\u0644\u0639\u0645\u0648\u062f + +ORA-17418=\u062e\u0637\u0623 \u0641\u064a \u0637\u0648\u0644 \u062d\u0642\u0644 \u0627\u0644\u0647\u064a\u0643\u0644 \u0627\u0644\u062f\u0627\u062e\u0644\u064a + +ORA-17419=\u062a\u0645 \u0631\u062c\u0648\u0639 \u0631\u0642\u0645 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0645\u0646 \u0627\u0644\u0623\u0639\u0645\u062f\u0629 + +ORA-17420=\u0625\u0635\u062f\u0627\u0631 \u0623\u0648\u0631\u0627\u0643\u0644 \u063a\u064a\u0631 \u0645\u0639\u0631\u0641 + +ORA-17421=\u0627\u0644\u0623\u0646\u0648\u0627\u0639 \u0623\u0648 \u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0645\u0639\u0631\u0641\u0629 + +ORA-17422=\u0637\u0628\u0642\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0627\u0644\u0645\u0635\u0646\u0639 + +ORA-17423=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0642\u0637\u0639\u0629 PLSQL \u062f\u0648\u0646 \u062a\u0639\u0631\u064a\u0641 IOV + +ORA-17424=\u0645\u062d\u0627\u0648\u0644\u0629 \u0639\u0645\u0644\u064a\u0629 \u0645\u0646\u0638\u0645\u0629 \u0645\u062e\u062a\u0644\u0641\u0629 + +ORA-17425=\u0631\u062c\u0648\u0639 \u062a\u062f\u0641\u0642 \u0641\u064a \u0642\u0637\u0639\u0629 PLSQL + +ORA-17426=\u0643\u0644\u0627\u064b \u0645\u0646 \u0631\u0648\u0627\u0628\u0637 IN \u0648 OUT \u0647\u064a NULL + +ORA-17427=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 OAC \u063a\u064a\u0631 \u0645\u0647\u064a\u0623 + +ORA-17428=\u064a\u062c\u0628 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 \u0627\u0644\u062f\u062e\u0648\u0644 \u0628\u064e\u0639\u062f \u0627\u0644\u0627\u062a\u0635\u0627\u0644 + +ORA-17429=\u064a\u062c\u0628 \u0639\u0644\u0649 \u0627\u0644\u0623\u0642\u0644 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 \u0628\u062e\u0627\u062f\u0645 + +ORA-17430=\u064a\u062c\u0628 \u0627\u0644\u062f\u062e\u0648\u0644 \u0625\u0644\u0649 \u062e\u0627\u062f\u0645 + +ORA-17431=\u0639\u0628\u0627\u0631\u0629 SQL \u0644\u0644\u062a\u062d\u0644\u064a\u0644 \u0627\u0644\u0644\u063a\u0648\u064a \u062e\u0627\u0644\u064a\u0629 + +ORA-17432=\u062e\u064a\u0627\u0631\u0627\u062a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a all7 + +ORA-17433=\u0648\u0633\u0627\u0626\u0637 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0627\u0644\u0627\u0633\u062a\u062f\u0639\u0627\u0621 + +ORA-17434=\u0644\u064a\u0633 \u0641\u064a \u0637\u0648\u0631 \u0627\u0644\u062a\u062f\u0641\u0642 + +ORA-17435=\u0631\u0642\u0645 in_out_binds \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0641\u064a IOV + +ORA-17436=\u0639\u062f\u062f \u0627\u0644\u0631\u0648\u0627\u0628\u0637 \u0627\u0644\u062e\u0627\u0631\u062c\u064a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17437=\u062e\u0637\u0623 \u0641\u064a \u0642\u0637\u0639\u0629 PLSQL \u0648\u0633\u064a\u0637\u0629 (\u0648\u0633\u0627\u0626\u0637) IN/OUT + +ORA-17438=\u062f\u0627\u062e\u0644\u064a - \u0642\u064a\u0645\u0629 \u063a\u064a\u0631 \u0645\u062a\u0648\u0642\u0639\u0629 + +ORA-17439=\u0646\u0648\u0639 SQL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17440=DBItem/DBType \u062e\u0627\u0644\u064a + +ORA-17441=\u0625\u0635\u062f\u0627\u0631 \u0623\u0648\u0631\u0627\u0643\u0644 \u063a\u064a\u0631 \u0645\u062f\u0639\u0648\u0645. \u0627\u0644\u062d\u062f \u0627\u0644\u0623\u062f\u0646\u0649 \u0644\u0644\u0625\u0635\u062f\u0627\u0631\u0627\u062a \u0627\u0644\u0645\u062f\u0639\u0648\u0645\u0629 \u0647\u0648 \u0627\u0644\u0625\u0635\u062f\u0627\u0631 7.2.3. + +ORA-17442=\u0642\u064a\u0645\u0629 Refcursor \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17443=\u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645 \u0623\u0648 \u0643\u0644\u0645\u0629 \u0627\u0644\u0633\u0631 \u0627\u0644\u062e\u0627\u0644\u064a\u0629 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 \u0641\u064a \u0628\u0631\u0646\u0627\u0645\u062c \u062a\u0634\u063a\u064a\u0644 THIN + +ORA-17444=\u0625\u0635\u062f\u0627\u0631 \u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 TTC \u0627\u0644\u0630\u064a \u062a\u0645 \u0627\u0633\u062a\u0644\u0627\u0645\u0647 \u0645\u0646 \u0627\u0644\u062e\u0627\u062f\u0645 \u063a\u064a\u0631 \u0645\u062f\u0639\u0648\u0645 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d0/f0987fe9f9a3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d0/f0987fe9f9a3001c1027e59cc3e35e89 new file mode 100644 index 0000000..121f14b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d0/f0987fe9f9a3001c1027e59cc3e35e89 @@ -0,0 +1,18 @@ +package fr.blankoworld.connexionBDD; + +public class Principal { + +static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(){ + System.out.println("Pas trouv"); + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/302ebf1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/302ebf1698af001c18c4935e001381da new file mode 100644 index 0000000..db034b4 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/302ebf1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/60a66e954eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/60a66e954eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..4ca742a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/60a66e954eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,153 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public IHMConnexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + // Rcupration des donnes entres par l'utilisateur + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getPassword().toString(); + + // Affichage du message de configurmation + this.pr.confirmationConnexion(this.serveur); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/70626b1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/70626b1998af001c18c4935e001381da new file mode 100644 index 0000000..1985fdb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/70626b1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/7095b46981a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/7095b46981a9001c1d3abf97745a02da new file mode 100644 index 0000000..7947679 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/7095b46981a9001c1d3abf97745a02da @@ -0,0 +1,136 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Importation de la fentre de Connexion +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + Connexion conn =new Connexion(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/a055511a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/a055511a98af001c18c4935e001381da new file mode 100644 index 0000000..9ce574d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d1/a055511a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/10ee61219baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/10ee61219baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..44c4e0b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/10ee61219baf001c1c2eb8ec16be26ca differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/6014331998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/6014331998af001c18c4935e001381da new file mode 100644 index 0000000..87a9813 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/6014331998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/e0581af920af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/e0581af920af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..5b16298 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/e0581af920af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Intern\u00e1 chyba + +ORA-17002=Vstupno-v\u00fdstupn\u00e1 chyba + +ORA-17003=Neplatn\u00fd index st\u013apca + +ORA-17004=Neplatn\u00fd typ st\u013apca + +ORA-17005=Nepodporovan\u00fd typ st\u013apca + +ORA-17006=Neplatn\u00fd n\u00e1zov st\u013apca + +ORA-17007=Neplatn\u00fd dynamick\u00fd st\u013apec + +ORA-17008=Uzatvoren\u00e9 spojenie + +ORA-17009=Uzatvoren\u00fd pr\u00edkaz + +ORA-17010=Uzatvoren\u00fd Resultset + +ORA-17011=Vy\u010derpan\u00fd Resultset + +ORA-17012=Konflikt typov parametrov + +ORA-17014=ResultSet.next nebolo volan\u00e9 + +ORA-17015=Pr\u00edkaz bol zru\u0161en\u00fd + +ORA-17016=\u010casov\u00fd limit pr\u00edkazu uplynul + +ORA-17017=Kurzor je u\u017e iniciovan\u00fd + +ORA-17018=Neplatn\u00fd kurzor + +ORA-17019=Op\u00edsa\u0165 mo\u017eno iba dopyt + +ORA-17020=Neplatn\u00e9 predbe\u017en\u00e9 vyvolanie riadka + +ORA-17021=Ch\u00fdba defines + +ORA-17022=Ch\u00fdba defines pri indexe + +ORA-17023=Nepodporovan\u00e1 vlastnos\u0165 + +ORA-17024=Nena\u010d\u00edtali sa \u017eiadne d\u00e1ta + +ORA-17025=Chyba v defines.isNull () + +ORA-17026=Numerick\u00e9 prete\u010denie + +ORA-17027=Tok je u\u017e zatvoren\u00fd + +ORA-17028=Nemo\u017eno robi\u0165 nov\u00e9 defines, k\u00fdm nebude aktu\u00e1lny ResultSet zatvoren\u00fd + +ORA-17029=setReadOnly: Spojenia len na \u010d\u00edtanie nie s\u00fa podporovan\u00e9 + +ORA-17030=READ_COMMITTED a SERIALIZABLE s\u00fa jedin\u00e9 platn\u00e9 transak\u010dn\u00e9 \u00farovne + +ORA-17031=setAutoClose: Podpora len pre zapnut\u00fd re\u017eim auto close + +ORA-17032=nemo\u017eno nastavi\u0165 predbe\u017en\u00e9 vyvolanie riadkov na nulu + +ORA-17033=Deformovan\u00fd re\u0165azec SQL92 na poz\u00edcii + +ORA-17034=Nepodporovan\u00fd token SQL92 na poz\u00edcii + +ORA-17035=Nepodporovan\u00e1 znakov\u00e1 mno\u017eina + +ORA-17036=v\u00fdnimka v OracleNumber + +ORA-17037=Zlyhanie konverzie medzi UTF8 a UCS2 + +ORA-17038=Bajtov\u00e9 pole nie je dos\u0165 dlh\u00e9 + +ORA-17039=Znakov\u00e9 pole nie je dos\u0165 dlh\u00e9 + +ORA-17040=V pripojovacom URL mus\u00ed by\u0165 \u0161pecifikovan\u00fd podprotokol + +ORA-17041=Ch\u00fdba parameter IN alebo OUT pri indexe: + +ORA-17042=Neplatn\u00e1 hodnota d\u00e1vky + +ORA-17043=Neplatn\u00e1 maxim\u00e1lna ve\u013ekos\u0165 toku + +ORA-17044=Intern\u00e1 chyba: D\u00e1tov\u00e9 pole nealokovan\u00e9 + +ORA-17045=Intern\u00e1 chyba: Pokus o pr\u00edstup k v\u00e4zobn\u00fdm hodnot\u00e1m prekra\u010duj\u00facim hodnotu d\u00e1vky + +ORA-17046=Intern\u00e1 chyba: Neplatn\u00fd index pre pr\u00edstup k d\u00e1tam + +ORA-17047=Chyba v syntaktickej anal\u00fdze typov\u00e9ho deskriptora + +ORA-17048=Nedefinovan\u00fd typ + +ORA-17049=Nekonzistentn\u00e9 typy java a sql objektov + +ORA-17050=tento prvok vo vektore neexistuje + +ORA-17051=Toto API nemo\u017eno pou\u017ei\u0165 pre nie-UDT typy + +ORA-17052=Tento odkaz je neplatn\u00fd + +ORA-17053=Ve\u013ekos\u0165 je neplatn\u00e1 + +ORA-17054=Lok\u00e1tor LOB nie je platn\u00fd + +ORA-17055=Neplatn\u00fd znak n\u00e1jden\u00fd v + +ORA-17056=Nepodporovan\u00e1 znakov\u00e1 mno\u017eina + +ORA-17057=Uzavret\u00fd LOB + +ORA-17058=Intern\u00e1 chyba: Neplatn\u00fd pomer konverzie NLS + +ORA-17059=Nepodarilo sa konvertova\u0165 na intern\u00fa reprezent\u00e1ciu + +ORA-17060=Nepodarilo sa skon\u0161truova\u0165 deskriptor + +ORA-17061=Ch\u00fdba deskriptor + +ORA-17062=Referen\u010dn\u00fd kurzor je neplatn\u00fd + +ORA-17063=Nie je v transakcii + +ORA-17064=Neplatn\u00e1 syntax alebo n\u00e1zov datab\u00e1zy je pr\u00e1zdny + +ORA-17065=Trieda konverzie je nulov\u00e1 + +ORA-17066=Je potrebn\u00e1 implement\u00e1cia \u0161pecifick\u00e1 pre pr\u00edstupov\u00fa vrstvu + +ORA-17067=\u0160pecifikovan\u00e9 neplatn\u00e9 Oracle URL + +ORA-17068=Neplatn\u00e9 argumenty vo volan\u00ed + +ORA-17069=Pou\u017eite explicitn\u00e9 XA volanie + +ORA-17070=Ve\u013ekos\u0165 d\u00e1t v\u00e4\u010d\u0161ia ako maxim\u00e1lna ve\u013ekos\u0165 pre tento typ + +ORA-17071=Prekro\u010den\u00fd maxim\u00e1lny limit VARRAY + +ORA-17072=Vlo\u017een\u00e1 hodnota je prive\u013ek\u00e1 pre st\u013apec + +ORA-17073=Logick\u00e1 rukov\u00e4\u0165 u\u017e nie je platn\u00e1 + +ORA-17074=neplatn\u00fd vzor n\u00e1zvu + +ORA-17075=Neplatn\u00e1 oper\u00e1cia pre resultset iba na odoslanie \u010falej + +ORA-17076=Neplatn\u00e1 oper\u00e1cia pre resultset iba na \u010d\u00edtanie + +ORA-17077=Zlyhanie pri nastavovan\u00ed hodnoty REF + +ORA-17078=Nemo\u017eno uskuto\u010dni\u0165 oper\u00e1ciu, lebo s\u00fa u\u017e otvoren\u00e9 spojenia + +ORA-17079=Doklady pou\u017e\u00edvate\u013ea sa nezhoduj\u00fa s existuj\u00facimi + +ORA-17080=neplatn\u00fd d\u00e1vkov\u00fd pr\u00edkaz + +ORA-17081=po\u010das d\u00e1vkovania do\u0161lo k chybe + +ORA-17082=\u017diadny aktu\u00e1lny riadok + +ORA-17083=Nie je na vlo\u017eenom riadku + +ORA-17084=Volan\u00e9 na vlo\u017eenom riadku + +ORA-17085=Vyskytuj\u00fa sa konflikty hodn\u00f4t + +ORA-17086=Nedefinovan\u00e1 hodnota st\u013apca na vlo\u017eenom riadku + +ORA-17087=Ignorovan\u00fd pokyn na zv\u00fd\u0161enie v\u00fdkonnosti: setFetchDirection() + +ORA-17088=Nepodporovan\u00e1 syntax pre po\u017eadovan\u00fd typ resultsetu a \u00farove\u0148 s\u00fabe\u017enosti +ORA-17089=intern\u00e1 chyba + +ORA-17090=oper\u00e1cia nepovolen\u00e1 + +ORA-17091=Nemo\u017eno vytvori\u0165 resultset na po\u017eadovanej \u00farovni typu a/alebo s\u00fabe\u017enosti + +ORA-17092=Pr\u00edkazy JDBC nemo\u017eno vytv\u00e1ra\u0165 alebo vykon\u00e1va\u0165 na konci spracovania volania + +ORA-17093=Oper\u00e1cia OCI vr\u00e1tila OCI_SUCCESS_WITH_INFO + +ORA-17094=Nezhoda verzie typu objektu + +ORA-17095=Ve\u013ekos\u0165 cache pr\u00edkazov nie je nastaven\u00e1 + +ORA-17096=Pre toto logick\u00e9 spojenie nemo\u017eno aktivova\u0165 cacheovanie pr\u00edkazov. + +ORA-17097=Neplatn\u00fd typ prvku indexovej tabu\u013eky PL/SQL + +ORA-17098=Neplatn\u00e1 oper\u00e1cia s pr\u00e1zdnym ve\u013ek\u00fdm objektom + +ORA-17099=Neplatn\u00e1 d\u013a\u017eka po\u013ea tabu\u013eky indexu PL/SQL + +ORA-17100=Neplatn\u00fd datab\u00e1zov\u00fd objekt Java + +ORA-17101=Neplatn\u00e9 vlastnosti v objekte spolo\u010dnej oblasti spojenia OCI + +ORA-17102=Bfile je len na \u010d\u00edtanie + +ORA-17103=neplatn\u00fd typ spojenia na n\u00e1vrat cez getConnection. Pou\u017eite namiesto neho getJavaSqlConnection + +ORA-17104=Pr\u00edkaz SQL na vykonanie nem\u00f4\u017ee by\u0165 pr\u00e1zdny alebo nulov\u00fd + +ORA-17105=\u010dasov\u00e1 z\u00f3na rel\u00e1cie spojenia nebola nastaven\u00e1 + +ORA-17106=\u0161pecifikovan\u00e1 neplatn\u00e1 konfigur\u00e1cia spolo\u010dnej oblasti pripojen\u00ed ovl\u00e1da\u010dov JDBC-OCI + +ORA-17107=zadan\u00fd neplatn\u00fd typ proxy + +ORA-17108=V defineColumnType nie je uveden\u00e1 maxim\u00e1lna d\u013a\u017eka + +ORA-17109=nena\u0161lo sa \u0161tandardn\u00e9 k\u00f3dovanie znakov Java + +ORA-17110=vykonanie dokon\u010den\u00e9 s upozornen\u00edm + +ORA-17111=Zadan\u00fd neplatn\u00fd \u010dasov\u00fd limit TTL cache pripojenia + +ORA-17112=Zadan\u00fd neplatn\u00fd interval pre thread + +ORA-17113=Hodnota intervalu pre thread je vy\u0161\u0161ia ako hodnota \u010dasov\u00e9ho limitu cache + +ORA-17114=nebolo mo\u017en\u00e9 pou\u017ei\u0165 lok\u00e1lne potvrdenie transakcie v glob\u00e1lnej transakcii + +ORA-17115=nebolo mo\u017en\u00e9 pou\u017ei\u0165 lok\u00e1lny rollback transakcie v glob\u00e1lnej transakcii + +ORA-17116=nebolo mo\u017en\u00e9 zapn\u00fa\u0165 automatick\u00e9 potvrdzovanie v akt\u00edvnej glob\u00e1lnej transakcii + +ORA-17117=nebolo mo\u017en\u00e9 nastavi\u0165 bod n\u00e1vratu v akt\u00edvnej glob\u00e1lnej transakcii + +ORA-17118=nebolo mo\u017en\u00e9 z\u00edska\u0165 ID pre pomenovan\u00fd bod n\u00e1vratu + +ORA-17119=nebolo mo\u017en\u00e9 z\u00edska\u0165 n\u00e1zov pre nepomenovan\u00fd bod n\u00e1vratu + +ORA-17120=nebolo mo\u017en\u00e9 nastavi\u0165 bod n\u00e1vratu so zapnut\u00fdm automatick\u00fdm potvrdzovan\u00edm + +ORA-17121=nebolo mo\u017en\u00e9 vykona\u0165 rollback na bod n\u00e1vratu so zapnut\u00fdm automatick\u00fdm potvrdzovan\u00edm + +ORA-17122=nebolo mo\u017en\u00e9 vykona\u0165 rollback na lok\u00e1lny bod n\u00e1vratu transakcie v glob\u00e1lnej transakcii + +ORA-17123=Zadan\u00e1 neplatn\u00e1 ve\u013ekos\u0165 cache pr\u00edkazov + +ORA-17124=Zadan\u00fd neplatn\u00fd \u010dasov\u00fd limit inaktivity cache pripojenia + +ORA-17200=Nie je mo\u017en\u00e9 spr\u00e1vne skonvertova\u0165 re\u0165azec XA open z Java do C + +ORA-17201=Nie je mo\u017en\u00e9 spr\u00e1vne skonvertova\u0165 re\u0165azec XA close z Java do C + +ORA-17202=Nie je mo\u017en\u00e9 spr\u00e1vne skonvertova\u0165 n\u00e1zov RM z Java do C + +ORA-17203=Nie je mo\u017en\u00e9 previes\u0165 typ smern\u00edka na jlong + +ORA-17204=Vstupn\u00e9 pole je prikr\u00e1tke na obsiahnutie rukov\u00e4t\u00ed OCI + +ORA-17205=Zlyhanie pri z\u00edskavan\u00ed rukov\u00e4te OCISvcCtx z C-XA pomocou xaoSvcCtx + +ORA-17206=Zlyhanie pri z\u00edskavan\u00ed rukov\u00e4te OCIEnv z C-XA pomocou xaoEnv + +ORA-17207=Vlastnos\u0165 tnsEntry nebola nastaven\u00e1 v DataSource + +ORA-17213=C-XA vr\u00e1tilo XAER_RMERR po\u010das xa_open + +ORA-17215=C-XA vr\u00e1tilo XAER_INVAL po\u010das xa_open + +ORA-17216=C-XA vr\u00e1tilo XAER_PROTO po\u010das xa_open + +ORA-17233=C-XA vr\u00e1tilo XAER_RMERR po\u010das xa_close + +ORA-17235=C-XA vr\u00e1tilo XAER_INVAL po\u010das xa_close + +ORA-17236=C-XA vr\u00e1tilo XAER_PROTO po\u010das xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Poru\u0161enie protokolu + +ORA-17402=O\u010dak\u00e1va sa iba jedna spr\u00e1va RPA + +ORA-17403=O\u010dak\u00e1va sa iba jedna spr\u00e1va RXH + +ORA-17404=Prijat\u00fdch viac RXD, ako sa o\u010dak\u00e1valo + +ORA-17405=D\u013a\u017eka UAC nie je nulov\u00e1 + +ORA-17406=Prekro\u010denie maxim\u00e1lnej d\u013a\u017eky buffra + +ORA-17407=neplatn\u00e1 typov\u00e1 reprezent\u00e1cia (setRep) + +ORA-17408=neplatn\u00e1 typov\u00e1 reprezent\u00e1cia (getRep) + +ORA-17409=neplatn\u00e1 d\u013a\u017eka buffra + +ORA-17410=V sokete u\u017e nie s\u00fa \u010fal\u0161ie d\u00e1ta na \u010d\u00edtanie + +ORA-17411=Nezhoda reprezent\u00e1ci\u00ed d\u00e1tov\u00e9ho typu + +ORA-17412=Typov\u00e1 d\u013a\u017eka v\u00e4\u010d\u0161ia ako maximum + +ORA-17413=Prekro\u010denie ve\u013ekosti k\u013e\u00fa\u010da + +ORA-17414=Nedostato\u010dn\u00e1 ve\u013ekos\u0165 buffra na ulo\u017eenie n\u00e1zvov st\u013apcov + +ORA-17415=Tento typ nie je o\u0161etren\u00fd + +ORA-17416=FATAL + +ORA-17417=Probl\u00e9m NLS, nepodarilo sa dek\u00f3dova\u0165 n\u00e1zvy st\u013apcov + +ORA-17418=Chyba d\u013a\u017eky po\u013ea internej \u0161trukt\u00fary + +ORA-17419=Vr\u00e1ten\u00fd neplatn\u00fd po\u010det st\u013apcov + +ORA-17420=Nedefinovan\u00e1 verzia Oracle + +ORA-17421=Nedefinovan\u00e9 typy alebo spojenie + +ORA-17422=Neplatn\u00e1 trieda vo factory + +ORA-17423=Pou\u017eitie bloku PLSQL bez definovania IOV + +ORA-17424=Pokus o in\u00fa oper\u00e1ciu radenia + +ORA-17425=Vr\u00e1tenie toku v bloku PLSQL + +ORA-17426=V\u00e4zby IN aj OUT s\u00fa NULL + +ORA-17427=Pou\u017eitie neiniciovan\u00e9ho OAC + +ORA-17428=Logon treba vola\u0165 po connect + +ORA-17429=Treba ma\u0165 aspo\u0148 spojenie na server + +ORA-17430=Treba by\u0165 prihl\u00e1sen\u00fd na server + +ORA-17431=Pr\u00edkaz SQL na syntaktick\u00fa anal\u00fdzu je pr\u00e1zdny + +ORA-17432=neplatn\u00e9 vo\u013eby v all7 + +ORA-17433=neplatn\u00e9 argumenty vo volan\u00ed + +ORA-17434=nie je v tokovom re\u017eime + +ORA-17435=neplatn\u00fd po\u010det in_out_binds v IOV + +ORA-17436=neplatn\u00fd po\u010det outbinds + +ORA-17437=Chyba v IN/OUT argumentoch bloku PLSQL + +ORA-17438=Intern\u00e1 - neo\u010dak\u00e1van\u00e1 hodnota + +ORA-17439=Neplatn\u00fd typ SQL + +ORA-17440=DBItem/DBType je pr\u00e1zdny + +ORA-17441=Verzia Oracle nepodporovan\u00e1. Minim\u00e1lna podporovan\u00e1 verzia je 7.2.3. + +ORA-17442=Hodnota Refcursor je neplatn\u00e1 + +ORA-17443=Pr\u00e1zdny pou\u017e\u00edvate\u013e alebo heslo nepodporovan\u00e9 u THIN ovl\u00e1da\u010da + +ORA-17444=Verzia protokolu TTC prijat\u00e1 zo servera nie je podporovan\u00e1 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/f0af1af3c4a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/f0af1af3c4a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..89fdb0b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d2/f0af1af3c4a4001c1acc9f54b60f9b57 @@ -0,0 +1,55 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel(); + JLabel jlabelPort = new JLabel(); + JLabel jlabelBase = new JLabel(); + JLabel jlabelIdentifiant = new JLabel(); + JLabel jlabelMdp = new JLabel(); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/40115f1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/40115f1a98af001c18c4935e001381da new file mode 100644 index 0000000..1ae1c74 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/40115f1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/8044c71698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/8044c71698af001c18c4935e001381da new file mode 100644 index 0000000..65fadd2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/8044c71698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/80a8441e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/80a8441e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..8d9fe8a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/80a8441e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 + +ORA-17002=\u0395\u03be\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u0395\u0395 + +ORA-17003=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17004=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17005=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17006=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03cc\u03bd\u03bf\u03bc\u03b1 \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17007=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b4\u03c5\u03bd\u03b1\u03bc\u03b9\u03ba\u03ae \u03c3\u03c4\u03ae\u03bb\u03b7 + +ORA-17008=\u0397 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17009=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17010=\u03a4\u03bf \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17011=\u03a4\u03bf \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03b5\u03be\u03b1\u03bd\u03c4\u03bb\u03ae\u03b8\u03b7\u03ba\u03b5 + +ORA-17012=\u0394\u03b9\u03ad\u03bd\u03b5\u03be\u03b7 \u03c4\u03cd\u03c0\u03c9\u03bd \u03c0\u03b1\u03c1\u03b1\u03bc\u03ad\u03c4\u03c1\u03c9\u03bd + +ORA-17014=\u0394\u03b5\u03bd \u03ad\u03b3\u03b9\u03bd\u03b5 \u03ba\u03bb\u03ae\u03c3\u03b7 \u03c3\u03c4\u03bf ResultSet.next + +ORA-17015=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 \u03b1\u03ba\u03c5\u03c1\u03ce\u03b8\u03b7\u03ba\u03b5 + +ORA-17016=\u03a5\u03c0\u03ad\u03c1\u03b2\u03b1\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c7\u03c1\u03bf\u03bd\u03b9\u03ba\u03bf\u03cd \u03bf\u03c1\u03af\u03bf\u03c5 \u03c4\u03b7\u03c2 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7\u03c2 + +ORA-17017=O Cursor \u03ad\u03c7\u03b5\u03b9 \u03b1\u03c1\u03c7\u03b9\u03ba\u03bf\u03c0\u03bf\u03b9\u03b7\u03b8\u03b5\u03af \u03ae\u03b4\u03b7 + +ORA-17018=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 cursor + +ORA-17019=\u0395\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03bc\u03cc\u03bd\u03bf \u03b7 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae \u03b5\u03bd\u03cc\u03c2 \u03b5\u03c1\u03c9\u03c4\u03ae\u03bc\u03b1\u03c4\u03bf\u03c2 + +ORA-17020=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03c0\u03c1\u03bf-\u03c0\u03c1\u03bf\u03c3\u03ba\u03cc\u03bc\u03b9\u03c3\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2 + +ORA-17021=\u039f\u03c1\u03b9\u03c3\u03bc\u03bf\u03af \u03c0\u03bf\u03c5 \u03bb\u03b5\u03af\u03c0\u03bf\u03c5\u03bd + +ORA-17022=\u039b\u03b5\u03af\u03c0\u03bf\u03c5\u03bd \u03bf\u03c1\u03b9\u03c3\u03bc\u03bf\u03af \u03b1\u03c0\u03cc \u03c4\u03bf \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf + +ORA-17023=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03b7 \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1 + +ORA-17024=\u0394\u03b5\u03bd \u03ad\u03b3\u03b9\u03bd\u03b5 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd + +ORA-17025=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03c4\u03bf defines.isNull () + +ORA-17026=\u0391\u03c1\u03b9\u03b8\u03bc\u03b7\u03c4\u03b9\u03ba\u03ae \u03c5\u03c0\u03b5\u03c1\u03c7\u03b5\u03af\u03bb\u03b9\u03c3\u03b7 + +ORA-17027=\u03a4\u03bf stream \u03ad\u03c7\u03b5\u03b9 \u03ba\u03bb\u03b5\u03af\u03c3\u03b5\u03b9 \u03ae\u03b4\u03b7 + +ORA-17028=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03bd\u03ad\u03c9\u03bd \u03bf\u03c1\u03b9\u03c3\u03bc\u03ce\u03bd \u03bc\u03ad\u03c7\u03c1\u03b9 \u03bd\u03b1 \u03ba\u03bb\u03b5\u03af\u03c3\u03b5\u03b9 \u03c4\u03bf \u03c4\u03c1\u03ad\u03c7\u03bf\u03bd \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd + +ORA-17029=\u039f\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03bc\u03cc\u03bd\u03bf \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7\u03c2: \u0394\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03bf\u03bd\u03c4\u03b1\u03b9 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03b9\u03c2 \u03bc\u03cc\u03bd\u03bf \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7\u03c2 + +ORA-17030=\u03a4\u03b1 \u03bc\u03cc\u03bd\u03b1 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ac \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03b1 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 READ_COMMITTED \u03ba\u03b1\u03b9 SERIALIZABLE + +ORA-17031=\u039f\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03c3\u03af\u03bc\u03b1\u03c4\u03bf\u03c2: \u03a5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03b7 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03c4\u03c1\u03cc\u03c0\u03bf\u03c5 \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03c3\u03af\u03bc\u03b1\u03c4\u03bf\u03c2 + +ORA-17032=\u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc \u03bd\u03b1 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03c1\u03bf-\u03c0\u03c1\u03bf\u03c3\u03ba\u03cc\u03bc\u03b9\u03c3\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2 \u03b7 \u03c4\u03b9\u03bc\u03ae \u03bc\u03b7\u03b4\u03ad\u03bd + +ORA-17033=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b1\u03bb\u03c6\u03b1\u03c1\u03b9\u03b8\u03bc\u03b7\u03c4\u03b9\u03ba\u03cc SQL92 \u03c3\u03c4\u03b7 \u03b8\u03ad\u03c3\u03b7 + +ORA-17034=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf \u03c3\u03cd\u03bc\u03b2\u03bf\u03bb\u03bf SQL92 \u03c3\u03c4\u03b7 \u03b8\u03ad\u03c3\u03b7 + +ORA-17035=\u0394\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03c4\u03bf \u03c3\u03b5\u03c4 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03c9\u03bd !! + +ORA-17036=\u03b5\u03be\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c3\u03c4\u03bf\u03bd \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc Oracle + +ORA-17037=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 \u03c4\u03bf\u03c5 UTF8 \u03c3\u03b5 UCS2 \u03ae \u03c4\u03bf\u03c5 UCS2 \u03c3\u03b5 UTF8 + +ORA-17038=\u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03c4\u03c9\u03bd Bytes \u03b4\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b1\u03c1\u03ba\u03b5\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 + +ORA-17039=\u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03c4\u03cd\u03c0\u03bf\u03c5 Char \u03b4\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b1\u03c1\u03ba\u03b5\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 + +ORA-17040=\u03a0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03c4\u03bf \u03b4\u03b5\u03c5\u03c4\u03b5\u03c1\u03b5\u03cd\u03bf\u03bd \u03c0\u03c1\u03c9\u03c4\u03cc\u03ba\u03bf\u03bb\u03bb\u03bf \u03c3\u03c4\u03b7 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 + +ORA-17041=\u039b\u03b5\u03af\u03c0\u03bf\u03c5\u03bd \u03bf\u03b9 \u03c0\u03b1\u03c1\u03ac\u03bc\u03b5\u03c4\u03c1\u03bf\u03b9 IN \u03ba\u03b1\u03b9 OUT \u03b1\u03c0\u03cc \u03c4\u03bf \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf: + +ORA-17042=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03c4\u03b9\u03bc\u03ae \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17043=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 stream + +ORA-17044=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b4\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b4\u03b5\u03c3\u03bc\u03b5\u03c5\u03c4\u03b5\u03af + +ORA-17045=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u03a0\u03c1\u03bf\u03c3\u03c0\u03ac\u03b8\u03b5\u03b9\u03b1 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 \u03c3\u03b5 \u03b4\u03b5\u03c3\u03bc\u03b5\u03c5\u03bc\u03ad\u03bd\u03b5\u03c2 \u03c4\u03b9\u03bc\u03ad\u03c2 \u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03b7\u03c2 \u03c4\u03b9\u03bc\u03ae\u03c2 \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17046=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf \u03b3\u03b9\u03b1 \u03c0\u03c1\u03bf\u03c3\u03c0\u03ad\u03bb\u03b1\u03c3\u03b7 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd + +ORA-17047=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03c4\u03b7\u03bd \u03b1\u03bd\u03ac\u03bb\u03c5\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c5 + +ORA-17048=\u039c\u03b7 \u03bf\u03c1\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 + +ORA-17049=\u039c\u03b7 \u03c3\u03c5\u03bd\u03b5\u03c0\u03b5\u03af\u03c2 \u03c4\u03cd\u03c0\u03bf\u03b9 \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03c9\u03bd java \u03ba\u03b1\u03b9 sql + +ORA-17050=\u03b4\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03b5\u03b9 \u03c4\u03ad\u03c4\u03bf\u03b9\u03bf \u03c3\u03c4\u03bf\u03b9\u03c7\u03b5\u03af\u03bf \u03c3\u03c4\u03bf \u03b4\u03b9\u03ac\u03bd\u03c5\u03c3\u03bc\u03b1 + +ORA-17051=\u0391\u03c5\u03c4\u03cc \u03c4\u03bf API \u03b4\u03b5\u03bd \u03bc\u03c0\u03bf\u03c1\u03b5\u03af \u03bd\u03b1 \u03c7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03b7\u03b8\u03b5\u03af \u03b3\u03b9\u03b1 \u03c4\u03cd\u03c0\u03bf\u03c5\u03c2 \u03c0\u03bf\u03c5 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 UDT + +ORA-17052=\u0391\u03c5\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae + +ORA-17053=\u03a4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc + +ORA-17054=\u039f \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1\u03c2 \u03b5\u03bd\u03c4\u03bf\u03c0\u03b9\u03c3\u03bc\u03bf\u03cd LOB \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 + +ORA-17055=\u0392\u03c1\u03ad\u03b8\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03b1\u03c2 \u03c3\u03c4\u03bf + +ORA-17056=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf \u03c3\u03b5\u03c4 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03c9\u03bd + +ORA-17057=\u03a4\u03bf LOB \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17058=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c3\u03c5\u03bd\u03c4\u03b5\u03bb\u03b5\u03c3\u03c4\u03ae\u03c2 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 NLS + +ORA-17059=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 \u03c3\u03c4\u03b7\u03bd \u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03ae \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 + +ORA-17060=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03ba\u03b1\u03c4\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae\u03c2 \u03c4\u03bf\u03c5 \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae\u03c2 + +ORA-17061=\u039b\u03b5\u03af\u03c0\u03b5\u03b9 \u03bf \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1\u03c2 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae\u03c2 + +ORA-17062=\u039f cursor \u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 + +ORA-17063=\u0394\u03b5\u03bd \u03b1\u03bd\u03ae\u03ba\u03b5\u03b9 \u03c3\u03b5 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae + +ORA-17064=\u0395\u03af\u03c4\u03b5 \u03b7 \u03c3\u03cd\u03bd\u03c4\u03b1\u03be\u03b7 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b5\u03af\u03c4\u03b5 \u03c4\u03bf \u03cc\u03bd\u03bf\u03bc\u03b1 \u03c4\u03b7\u03c2 \u03b2\u03ac\u03c3\u03b7\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17065=\u0397 \u03ba\u03bb\u03ac\u03c3\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17066=\u03a7\u03c1\u03b5\u03b9\u03ac\u03b6\u03b5\u03c4\u03b1\u03b9 \u03b5\u03b9\u03b4\u03b9\u03ba\u03ae \u03c5\u03bb\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03bf \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03bf \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 + +ORA-17067=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1\u03c2 Oracle + +ORA-17068=\u03a5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03ad\u03bd\u03b1 \u03ae \u03c0\u03b5\u03c1\u03b9\u03c3\u03c3\u03cc\u03c4\u03b5\u03c1\u03b1 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ac \u03bf\u03c1\u03af\u03c3\u03bc\u03b1\u03c4\u03b1 \u03c3\u03c4\u03b7\u03bd \u03ba\u03bb\u03ae\u03c3\u03b7 + +ORA-17069=\u03a7\u03c1\u03ae\u03c3\u03b7 \u03c1\u03b7\u03c4\u03ae\u03c2 \u03ba\u03bb\u03ae\u03c3\u03b7\u03c2 XA + +ORA-17070=\u03a4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b5\u03b3\u03b1\u03bb\u03cd\u03c4\u03b5\u03c1\u03bf \u03b1\u03c0\u03cc \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b3\u03b9\u03b1 \u03b1\u03c5\u03c4\u03cc\u03bd \u03c4\u03bf \u03c4\u03cd\u03c0\u03bf + +ORA-17071=\u039e\u03b5\u03c0\u03b5\u03c1\u03ac\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03cc\u03c1\u03b9\u03bf VARRAY + +ORA-17072=\u0388\u03b3\u03b9\u03bd\u03b5 \u03b5\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03c4\u03b9\u03bc\u03ae\u03c2 \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03c0\u03bf\u03bb\u03cd \u03bc\u03b5\u03b3\u03ac\u03bb\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7 \u03c3\u03c4\u03ae\u03bb\u03b7 + +ORA-17073=\u039f \u03bb\u03bf\u03b3\u03b9\u03ba\u03cc\u03c2 \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1\u03c2 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03c0\u03b9\u03b1 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 + +ORA-17074=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03c0\u03c1\u03cc\u03c4\u03c5\u03c0\u03bf \u03bf\u03bd\u03cc\u03bc\u03b1\u03c4\u03bf\u03c2 + +ORA-17075=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b3\u03b9\u03b1 \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b3\u03b9\u03b1 \u03c0\u03c1\u03bf\u03ce\u03b8\u03b7\u03c3\u03b7 \u03bc\u03cc\u03bd\u03bf + +ORA-17076=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b3\u03b9\u03b1 \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b3\u03b9\u03b1 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 \u03bc\u03cc\u03bd\u03bf + +ORA-17077=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03bf\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd \u03c4\u03b7\u03c2 \u03c4\u03b9\u03bc\u03ae\u03c2 REF + +ORA-17078=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03b5\u03c0\u03b5\u03b9\u03b4\u03ae \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03b9\u03c2 \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03ae\u03b4\u03b7 \u03b1\u03bd\u03bf\u03b9\u03ba\u03c4\u03ad\u03c2 + +ORA-17079=\u03a4\u03b1 \u03b4\u03b9\u03b1\u03c0\u03b9\u03c3\u03c4\u03b5\u03c5\u03c4\u03ae\u03c1\u03b9\u03b1 \u03c7\u03c1\u03ae\u03c3\u03c4\u03b7 \u03b4\u03b5\u03bd \u03c3\u03c5\u03bc\u03c6\u03c9\u03bd\u03bf\u03cd\u03bd \u03bc\u03b5 \u03c4\u03b1 \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03bd\u03c4\u03b1 + +ORA-17080=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b5\u03bd\u03c4\u03bf\u03bb\u03ae \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17081=\u03c0\u03c1\u03bf\u03ad\u03ba\u03c5\u03c8\u03b5 \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7 \u03b4\u03b9\u03ac\u03c1\u03ba\u03b5\u03b9\u03b1 \u03c4\u03b7\u03c2 \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17082=\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03b5\u03b9 \u03c4\u03c1\u03ad\u03c7\u03bf\u03c5\u03c3\u03b1 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae + +ORA-17083=\u0394\u03b5\u03bd \u03b2\u03c1\u03af\u03c3\u03ba\u03b5\u03c4\u03b1\u03b9 \u03c3\u03c4\u03b7\u03bd \u03b5\u03b9\u03c3\u03b1\u03b3\u03cc\u03bc\u03b5\u03bd\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae + +ORA-17084=\u0388\u03b3\u03b9\u03bd\u03b5 \u03ba\u03bb\u03ae\u03c3\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae \u03b5\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae\u03c2 + +ORA-17085=\u03a0\u03c1\u03bf\u03ba\u03cd\u03c0\u03c4\u03bf\u03c5\u03bd \u03b4\u03b9\u03b5\u03bd\u03ad\u03be\u03b5\u03b9\u03c2 \u03c4\u03b9\u03bc\u03ce\u03bd + +ORA-17086=\u039c\u03b7 \u03bf\u03c1\u03b9\u03c3\u03bc\u03ad\u03bd\u03b7 \u03c4\u03b9\u03bc\u03ae \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 \u03c3\u03c4\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae \u03b5\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae\u03c2 + +ORA-17087=\u0397 \u03c5\u03c0\u03cc\u03b4\u03b5\u03b9\u03be\u03b7 \u03b1\u03c0\u03cc\u03b4\u03bf\u03c3\u03b7\u03c2 \u03b1\u03b3\u03bd\u03bf\u03ae\u03b8\u03b7\u03ba\u03b5: setFetchDirection() + +ORA-17088=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03b7 \u03c3\u03cd\u03bd\u03c4\u03b1\u03be\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03bf\u03bd \u03c4\u03cd\u03c0\u03bf \u03c4\u03bf\u03c5 \u03c3\u03c5\u03bd\u03cc\u03bb\u03bf\u03c5 \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03ba\u03b1\u03b9 \u03c4\u03bf \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03bf \u03c4\u03b1\u03c5\u03c4\u03cc\u03c7\u03c1\u03bf\u03bd\u03b7\u03c2 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7\u03c2 \u03c0\u03bf\u03c5 \u03b6\u03b7\u03c4\u03ae\u03b8\u03b7\u03ba\u03b5 +ORA-17089=\u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 + +ORA-17090=\u03b7 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b4\u03b5\u03bd \u03b5\u03c0\u03b9\u03c4\u03c1\u03ad\u03c0\u03b5\u03c4\u03b1\u03b9 + +ORA-17091=\u0397 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03c4\u03bf\u03c5 \u03c3\u03c5\u03bd\u03cc\u03bb\u03bf\u03c5 \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03c3\u03c4\u03bf \u03b6\u03b7\u03c4\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03bf \u03c4\u03cd\u03c0\u03bf\u03c5 \u03ba\u03b1\u03b9/\u03ae \u03c4\u03b1\u03c5\u03c4\u03cc\u03c7\u03c1\u03bf\u03bd\u03b7\u03c2 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae + +ORA-17092=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03ae \u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03c0\u03c1\u03bf\u03c4\u03ac\u03c3\u03b5\u03c9\u03bd JDBC \u03c3\u03c4\u03bf \u03c4\u03ad\u03bb\u03bf\u03c2 \u03c4\u03b7\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 \u03ba\u03bb\u03ae\u03c3\u03b5\u03c9\u03bd + +ORA-17093=\u0397 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 OCI \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u0397 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03bf\u03c5 \u03b4\u03b5\u03bd \u03c3\u03c5\u03bc\u03c6\u03c9\u03bd\u03b5\u03af + +ORA-17095=\u0394\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03ba\u03c1\u03c5\u03c6\u03ae \u03bc\u03bd\u03ae\u03bc\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 + +ORA-17096=\u0397 \u03b5\u03b3\u03b3\u03c1\u03b1\u03c6\u03ae \u03c0\u03c1\u03bf\u03c4\u03ac\u03c3\u03b5\u03c9\u03bd \u03c3\u03c4\u03b7\u03bd \u03ba\u03c1\u03c5\u03c6\u03ae \u03bc\u03bd\u03ae\u03bc\u03b7 \u03b4\u03b5\u03bd \u03bc\u03c0\u03bf\u03c1\u03b5\u03af \u03bd\u03b1 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03b8\u03b5\u03af \u03b3\u03b9\u03b1 \u03b1\u03c5\u03c4\u03ae \u03c4\u03b7 \u03bb\u03bf\u03b3\u03b9\u03ba\u03ae \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7. + +ORA-17097=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03c4\u03bf\u03b9\u03c7\u03b5\u03af\u03bf\u03c5 \u03b3\u03b9\u03b1 \u03c0\u03af\u03bd\u03b1\u03ba\u03b1 \u03b5\u03c5\u03c1\u03b5\u03c4\u03b7\u03c1\u03af\u03bf\u03c5 PL/SQL + +ORA-17098=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03ba\u03b5\u03bd\u03bf\u03cd lob + +ORA-17099=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ae\u03ba\u03bf\u03c2 \u03bc\u03ae\u03c4\u03c1\u03b1\u03c2 \u03b3\u03b9\u03b1 \u03c0\u03af\u03bd\u03b1\u03ba\u03b1 \u03b5\u03c5\u03c1\u03b5\u03c4\u03b7\u03c1\u03af\u03bf\u03c5 PL/SQL + +ORA-17100=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03af\u03bc\u03b5\u03bd\u03bf Java \u03c4\u03b7\u03c2 \u0392\u0394 + +ORA-17101=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ad\u03c2 \u03b9\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b5\u03c2 \u03c3\u03c4\u03bf \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03af\u03bc\u03b5\u03bd\u03bf \u03c0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae\u03c2 \u03c3\u03c5\u03b3\u03ba\u03ad\u03bd\u03c4\u03c1\u03c9\u03c3\u03b7\u03c2 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03c9\u03bd OCI + +ORA-17102=\u03a4\u03bf Bfile \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03b3\u03b9\u03b1 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 + +ORA-17103=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 \u03b3\u03b9\u03b1 \u03b5\u03c0\u03b9\u03c3\u03c4\u03c1\u03bf\u03c6\u03ae \u03bc\u03ad\u03c3\u03c9 getConnection. \u0391\u03bd\u03c4\u03af \u03b1\u03c5\u03c4\u03ae\u03c2, \u03c7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03c4\u03b5 \u03c4\u03b7\u03bd getJavaSqlConnection + +ORA-17104=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 SQL \u03c0\u03c1\u03bf\u03c2 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03b4\u03b5\u03bd \u03bc\u03c0\u03bf\u03c1\u03b5\u03af \u03bd\u03b1 \u03b5\u03af\u03bd\u03b1\u03b9 \u03ba\u03b5\u03bd\u03ae \u03ae null + +ORA-17105=\u03b4\u03b5\u03bd \u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03b6\u03ce\u03bd\u03b7 \u03ce\u03c1\u03b1\u03c2 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03b5\u03c1\u03af\u03bf\u03b4\u03bf \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03c4\u03b7\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 + +ORA-17106=\u03ad\u03c7\u03b5\u03b9 \u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03c0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae\u03c2 \u03c3\u03c5\u03b3\u03ba\u03ad\u03bd\u03c4\u03c1\u03c9\u03c3\u03b7\u03c2 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03c9\u03bd \u03c4\u03bf\u03c5 \u03bf\u03b4\u03b7\u03b3\u03bf\u03cd JDBC-OCI + +ORA-17107=\u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03bf\u03c5 server + +ORA-17108=\u0394\u03b5\u03bd \u03ba\u03b1\u03b8\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ae\u03ba\u03bf\u03c2 \u03c3\u03c4\u03bf defineColumnType + +ORA-17109=\u03b4\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b5 \u03c4\u03c5\u03c0\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03b7 \u03ba\u03c9\u03b4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03c9\u03bd Java + +ORA-17110=\u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03bf\u03bb\u03bf\u03ba\u03bb\u03b7\u03c1\u03ce\u03b8\u03b7\u03ba\u03b5 \u03bc\u03b5 \u03c0\u03c1\u03bf\u03b5\u03b9\u03b4\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 + +ORA-17111=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2 \u03b1\u03bd\u03b1\u03bc\u03bf\u03bd\u03ae\u03c2 TTL + +ORA-17112=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b4\u03b9\u03ac\u03c3\u03c4\u03b7\u03bc\u03b1 \u03bd\u03ae\u03bc\u03b1\u03c4\u03bf\u03c2 (thread) + +ORA-17113=\u03a4\u03bf \u03c7\u03c1\u03bf\u03bd\u03b9\u03ba\u03cc \u03b4\u03b9\u03ac\u03c3\u03c4\u03b7\u03bc\u03b1 \u03bd\u03ae\u03bc\u03b1\u03c4\u03bf\u03c2 (thread) \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b5\u03b3\u03b1\u03bb\u03cd\u03c4\u03b5\u03c1\u03bf \u03b1\u03c0\u03cc \u03c4\u03bf\u03bd \u03c7\u03c1\u03cc\u03bd\u03bf \u03b1\u03bd\u03b1\u03bc\u03bf\u03bd\u03ae\u03c2 + +ORA-17114=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03c7\u03c1\u03ae\u03c3\u03b7 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c0\u03b9\u03ba\u03ae\u03c2 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 \u03bc\u03af\u03b1 \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae + +ORA-17115=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c4\u03bf\u03c0\u03b9\u03ba\u03ae\u03c2 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 \u03bc\u03af\u03b1 \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae + +ORA-17116=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b7\u03c2 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2 \u03c3\u03b5 \u03bc\u03b9\u03b1 \u03b5\u03bd\u03b5\u03c1\u03b3\u03cc \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae (global transaction) + +ORA-17117=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc\u03c2 \u03bf \u03bf\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 savepoint \u03c3\u03b5 \u03bc\u03b9\u03b1 \u03b5\u03bd\u03b5\u03c1\u03b3\u03cc \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae (global transaction) + +ORA-17118=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03bb\u03ae\u03c8\u03b7 \u03b1\u03bd\u03b1\u03b3\u03bd\u03c9\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03cd \u03b3\u03b9\u03b1 \u03ad\u03bd\u03b1 \u03bf\u03bd\u03bf\u03bc\u03b1\u03c3\u03bc\u03ad\u03bd\u03bf savepoint + +ORA-17119=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03bb\u03ae\u03c8\u03b7 \u03bf\u03bd\u03cc\u03bc\u03b1\u03c4\u03bf\u03c2 \u03b3\u03b9\u03b1 \u03ad\u03bd\u03b1 savepoint \u03c7\u03c9\u03c1\u03af\u03c2 \u03cc\u03bd\u03bf\u03bc\u03b1 + +ORA-17120=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc\u03c2 \u03bf \u03bf\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 savepoint \u03bc\u03b5 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03b7 \u03c4\u03b7\u03bd \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b7 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 + +ORA-17121=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 savepoint \u03bc\u03b5 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03b7 \u03c4\u03b7\u03bd \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b7 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 + +ORA-17122=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 \u03c4\u03bf\u03c0\u03b9\u03ba\u03cc Savepoint \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae\u03c2 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 + +ORA-17123=\u0388\u03c7\u03b5\u03b9 \u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03ba\u03c1\u03c5\u03c6\u03ae\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 + +ORA-17124=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2 \u03b1\u03bd\u03b1\u03bc\u03bf\u03bd\u03ae\u03c2 \u03ba\u03c1\u03c5\u03c6\u03ae\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 \u03c3\u03b5 \u03c0\u03b5\u03c1\u03af\u03c0\u03c4\u03c9\u03c3\u03b7 \u03b1\u03b4\u03c1\u03ac\u03bd\u03b5\u03b9\u03b1\u03c2 + +ORA-17200=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03ba\u03b1\u03c4\u03ac\u03bb\u03bb\u03b7\u03bb\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae \u03c4\u03b7\u03c2 \u03c3\u03c5\u03bc\u03b2\u03bf\u03bb\u03bf\u03c3\u03b5\u03b9\u03c1\u03ac\u03c2 \u03b1\u03bd\u03bf\u03af\u03b3\u03bc\u03b1\u03c4\u03bf\u03c2 XA \u03b1\u03c0\u03cc Java \u03c3\u03b5 C + +ORA-17201=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03ba\u03b1\u03c4\u03ac\u03bb\u03bb\u03b7\u03bb\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae \u03c4\u03b7\u03c2 \u03c3\u03c5\u03bc\u03b2\u03bf\u03bb\u03bf\u03c3\u03b5\u03b9\u03c1\u03ac\u03c2 \u03ba\u03bb\u03b5\u03b9\u03c3\u03af\u03bc\u03b1\u03c4\u03bf\u03c2 XA \u03b1\u03c0\u03cc Java \u03c3\u03b5 C + +ORA-17202=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03ba\u03b1\u03c4\u03ac\u03bb\u03bb\u03b7\u03bb\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae \u03c4\u03bf\u03c5 \u03bf\u03bd\u03cc\u03bc\u03b1\u03c4\u03bf\u03c2 RM \u03b1\u03c0\u03cc Java \u03c3\u03b5 C + +ORA-17203=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae (casting) \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 \u03b4\u03b5\u03af\u03ba\u03c4\u03b7 \u03c3\u03b5 jlong + +ORA-17204=\u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03b5\u03b9\u03c3\u03cc\u03b4\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03c0\u03bf\u03bb\u03cd \u03bc\u03b9\u03ba\u03c1\u03ae \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03c0\u03b5\u03c1\u03b9\u03bb\u03ac\u03b2\u03b5\u03b9 \u03c4\u03bf\u03c5\u03c2 \u03b4\u03b5\u03af\u03ba\u03c4\u03b5\u03c2 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd OCI + +ORA-17205=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03c4\u03b7 \u03bb\u03ae\u03c8\u03b7 \u03c4\u03bf\u03c5 \u03b4\u03b5\u03af\u03ba\u03c4\u03b7 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd OCISvcCtx \u03b1\u03c0\u03cc C-XA \u03bc\u03b5 \u03c7\u03c1\u03ae\u03c3\u03b7 xaoSvcCtx + +ORA-17206=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03c4\u03b7 \u03bb\u03ae\u03c8\u03b7 \u03c4\u03bf\u03c5 \u03b4\u03b5\u03af\u03ba\u03c4\u03b7 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd OCIEnv \u03b1\u03c0\u03cc C-XA \u03bc\u03b5 \u03c7\u03c1\u03ae\u03c3\u03b7 xaoEnv + +ORA-17207=\u0397 \u03b9\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b1 tnsEntry \u03b4\u03b5\u03bd \u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c3\u03c4\u03bf DataSource + +ORA-17213=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_RMERR \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_open + +ORA-17215=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_INVAL \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_open + +ORA-17216=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_PROTO \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_open + +ORA-17233=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_RMERR \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_close + +ORA-17235=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_INVAL \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_close + +ORA-17236=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_PROTO \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u03a0\u03b1\u03c1\u03b1\u03b2\u03af\u03b1\u03c3\u03b7 \u03c0\u03c1\u03c9\u03c4\u03bf\u03ba\u03cc\u03bb\u03bb\u03bf\u03c5 + +ORA-17402=\u0391\u03bd\u03b1\u03bc\u03ad\u03bd\u03b5\u03c4\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03ad\u03bd\u03b1 \u03bc\u03ae\u03bd\u03c5\u03bc\u03b1 RPA + +ORA-17403=\u0391\u03bd\u03b1\u03bc\u03ad\u03bd\u03b5\u03c4\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03ad\u03bd\u03b1 \u03bc\u03ae\u03bd\u03c5\u03bc\u03b1 RXH + +ORA-17404=\u0388\u03b3\u03b9\u03bd\u03b5 \u03bb\u03ae\u03c8\u03b7 \u03c0\u03b5\u03c1\u03b9\u03c3\u03c3\u03cc\u03c4\u03b5\u03c1\u03c9\u03bd RXD \u03b1\u03c0\u03cc \u03c4\u03b1 \u03b1\u03bd\u03b1\u03bc\u03b5\u03bd\u03cc\u03bc\u03b5\u03bd\u03b1 + +ORA-17405=\u03a4\u03bf \u03bc\u03ae\u03ba\u03bf\u03c2 UAC \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7\u03b4\u03b5\u03bd\u03b9\u03ba\u03cc + +ORA-17406=\u039e\u03b5\u03c0\u03b5\u03c1\u03ac\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03c4\u03b7\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03b7\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 + +ORA-17407=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 \u03c4\u03cd\u03c0\u03bf\u03c5(setRep) + +ORA-17408=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 \u03c4\u03cd\u03c0\u03bf\u03c5(getRep) + +ORA-17409=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03b7\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 + +ORA-17410=\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03ac\u03bb\u03bb\u03b1 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03b1 \u03b3\u03b9\u03b1 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 \u03b1\u03c0\u03cc \u03c4\u03b7\u03bd \u03c5\u03c0\u03bf\u03b4\u03bf\u03c7\u03ae + +ORA-17411=\u0391\u03c3\u03c5\u03bc\u03c6\u03c9\u03bd\u03af\u03b1 \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03b1\u03c3\u03c4\u03ac\u03c3\u03b5\u03c9\u03bd \u03c4\u03cd\u03c0\u03c9\u03bd \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd + +ORA-17412=\u03a4\u03bf \u03bc\u03ae\u03ba\u03bf\u03c2 \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b5\u03b3\u03b1\u03bb\u03cd\u03c4\u03b5\u03c1\u03bf \u03b1\u03c0\u03cc \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03b5\u03c0\u03b9\u03c4\u03c1\u03b5\u03c0\u03c4\u03cc + +ORA-17413=\u03a5\u03c0\u03ad\u03c1\u03b2\u03b1\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03bc\u03ae\u03ba\u03bf\u03c5\u03c2 \u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03b4\u03b9\u03bf\u03cd + +ORA-17414=\u03a4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03c4\u03b7\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03b7\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03bd\u03b5\u03c0\u03b1\u03c1\u03ba\u03ad\u03c2 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03b1\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7 \u03c4\u03c9\u03bd \u03bf\u03bd\u03bf\u03bc\u03ac\u03c4\u03c9\u03bd \u03c3\u03c4\u03b7\u03bb\u03ce\u03bd + +ORA-17415=\u0394\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b3\u03af\u03bd\u03b5\u03b9 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03b1\u03c5\u03c4\u03bf\u03cd \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 + +ORA-17416=FATAL + +ORA-17417=\u03a0\u03c1\u03cc\u03b2\u03bb\u03b7\u03bc\u03b1 NLS, \u03b1\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03b1\u03c0\u03bf\u03ba\u03c9\u03b4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2 \u03bf\u03bd\u03bf\u03bc\u03ac\u03c4\u03c9\u03bd \u03c3\u03c4\u03b7\u03bb\u03ce\u03bd + +ORA-17418=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03bc\u03ae\u03ba\u03bf\u03c5\u03c2 \u03c0\u03b5\u03b4\u03af\u03bf\u03c5 \u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03ae\u03c2 \u03b4\u03bf\u03bc\u03ae\u03c2 + +ORA-17419=\u0395\u03c0\u03b9\u03c3\u03c4\u03c1\u03bf\u03c6\u03ae \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03bf\u03cd \u03b1\u03c1\u03b9\u03b8\u03bc\u03bf\u03cd \u03c3\u03c4\u03b7\u03bb\u03ce\u03bd + +ORA-17420=\u0394\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03b7 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03b7\u03c2 Oracle + +ORA-17421=\u0394\u03b5\u03bd \u03ad\u03c7\u03bf\u03c5\u03bd \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03bf\u03b9 \u03c4\u03cd\u03c0\u03bf\u03b9 \u03ae \u03b7 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 + +ORA-17422=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03ba\u03bb\u03ac\u03c3\u03b7 \u03c3\u03b5 \u03b5\u03c1\u03b3\u03bf\u03c3\u03c4\u03ac\u03c3\u03b9\u03bf + +ORA-17423=\u03a7\u03c1\u03ae\u03c3\u03b7 \u03bc\u03c0\u03bb\u03bf\u03ba PLSQL \u03c7\u03c9\u03c1\u03af\u03c2 \u03bf\u03c1\u03b9\u03c3\u03bc\u03cc IOV + +ORA-17424=\u0391\u03c0\u03cc\u03c0\u03b5\u03b9\u03c1\u03b1 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7\u03c2 \u03b4\u03b9\u03b1\u03c6\u03bf\u03c1\u03b5\u03c4\u03b9\u03ba\u03ae\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03b4\u03b9\u03b5\u03c5\u03b8\u03ad\u03c4\u03b7\u03c3\u03b7\u03c2 (marshaling) + +ORA-17425=\u0395\u03c0\u03b9\u03c3\u03c4\u03c1\u03bf\u03c6\u03ae \u03b5\u03bd\u03cc\u03c2 stream \u03c3\u03b5 \u03bc\u03c0\u03bb\u03bf\u03ba \u03b5\u03bd\u03c4\u03bf\u03bb\u03ce\u03bd PLSQL + +ORA-17426=\u03a4\u03cc\u03c3\u03bf \u03bf\u03b9 \u03b4\u03b5\u03c3\u03bc\u03b5\u03c5\u03bc\u03ad\u03bd\u03b5\u03c2 \u03bc\u03b5\u03c4\u03b1\u03b2\u03bb\u03b7\u03c4\u03ad\u03c2 IN \u03cc\u03c3\u03bf \u03ba\u03b1\u03b9 \u03bf\u03b9 OUT \u03b5\u03af\u03bd\u03b1\u03b9 NULL + +ORA-17427=\u03a7\u03c1\u03ae\u03c3\u03b7 \u03bc\u03b7 \u03b1\u03c1\u03c7\u03b9\u03ba\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03bf\u03c5 OAC + +ORA-17428=\u0397 \u03b4\u03b9\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1 Logon \u03c0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03ba\u03bb\u03b7\u03b8\u03b5\u03af \u03bc\u03b5\u03c4\u03ac \u03c4\u03b7\u03bd \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 + +ORA-17429=\u03a0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03c4\u03bf\u03c5\u03bb\u03ac\u03c7\u03b9\u03c3\u03c4\u03bf\u03bd \u03bd\u03b1 \u03c5\u03c0\u03ac\u03c1\u03c7\u03b5\u03b9 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 \u03bc\u03b5 \u03c4\u03bf\u03bd server + +ORA-17430=\u03a0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03b5\u03af\u03c3\u03c4\u03b5 \u03c3\u03c5\u03bd\u03b4\u03b5\u03b4\u03b5\u03bc\u03ad\u03bd\u03bf\u03b9 \u03bc\u03b5 \u03c4\u03bf\u03bd server + +ORA-17431=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 SQL \u03c0\u03bf\u03c5 \u03b8\u03b1 \u03b1\u03bd\u03b1\u03bb\u03c5\u03b8\u03b5\u03af \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17432=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ad\u03c2 \u03b5\u03c0\u03b9\u03bb\u03bf\u03b3\u03ad\u03c2 \u03ba\u03b1\u03b9 \u03c3\u03c4\u03b9\u03c2 7 \u03b5\u03bd\u03c4\u03bf\u03bb\u03ad\u03c2 + +ORA-17433=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ac \u03bf\u03c1\u03af\u03c3\u03bc\u03b1\u03c4\u03b1 \u03c3\u03c4\u03b7\u03bd \u03ba\u03bb\u03ae\u03c3\u03b7 + +ORA-17434=\u039f \u03c4\u03c1\u03cc\u03c0\u03bf\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 streaming + +ORA-17435=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc\u03c2 in_out_binds \u03c3\u03c4\u03bf IOV + +ORA-17436=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc\u03c2 outbinds + +ORA-17437=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03c4\u03b1 \u03bf\u03c1\u03af\u03c3\u03bc\u03b1\u03c4\u03b1 IN/OUT \u03c4\u03bf\u03c5 \u03bc\u03c0\u03bb\u03bf\u03ba \u03b5\u03bd\u03c4\u03bf\u03bb\u03ce\u03bd PLSQL + +ORA-17438=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 - \u039c\u03b7 \u03b1\u03bd\u03b1\u03bc\u03b5\u03bd\u03cc\u03bc\u03b5\u03bd\u03b7 \u03c4\u03b9\u03bc\u03ae + +ORA-17439=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 SQL + +ORA-17440=\u039f\u03b9 \u03c0\u03b1\u03c1\u03ac\u03bc\u03b5\u03c4\u03c1\u03bf\u03b9 DBItem/DBType \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17441=\u0394\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03b1\u03c5\u03c4\u03ae \u03b7 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03b7\u03c2 Oracle. \u0397 \u03c0\u03b1\u03bb\u03b1\u03b9\u03cc\u03c4\u03b5\u03c1\u03b7 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c0\u03bf\u03c5 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b7 7.2.3. + +ORA-17442=\u0397 \u03c4\u03b9\u03bc\u03ae \u03c4\u03bf\u03c5 cursor \u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae + +ORA-17443=\u0395\u03af\u03c4\u03b5 Null \u03c7\u03c1\u03ae\u03c3\u03c4\u03b7\u03c2 \u03b5\u03af\u03c4\u03b5 \u03bc\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf\u03c2 \u03ba\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 \u03c3\u03c4\u03bf\u03bd \u03bf\u03b4\u03b7\u03b3\u03cc \u03a0\u0395\u03a1\u0399\u039f\u03a1\u0399\u03a3\u039c\u0395\u039d\u03a9\u039d \u0394\u03a5\u039d\u0391\u03a4\u039f\u03a4\u0397\u03a4\u03a9\u039d (THIN) + +ORA-17444=\u0397 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c0\u03c1\u03c9\u03c4\u03bf\u03ba\u03cc\u03bb\u03bb\u03bf\u03c5 TTC \u03c0\u03bf\u03c5 \u03bb\u03ae\u03c6\u03b8\u03b7\u03ba\u03b5 \u03b1\u03c0\u03cc \u03c4\u03bf\u03bd server \u03b4\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/9026231498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/9026231498af001c18c4935e001381da new file mode 100644 index 0000000..d11fe28 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/9026231498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/b0cc141b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/b0cc141b98af001c18c4935e001381da new file mode 100644 index 0000000..be2cb7a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/b0cc141b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/d0c0b12c4eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d3/d0c0b12c4eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d4/307ca01998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d4/307ca01998af001c18c4935e001381da new file mode 100644 index 0000000..ef1cdd9 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d4/307ca01998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d4/60ba411998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d4/60ba411998af001c18c4935e001381da new file mode 100644 index 0000000..c4de734 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d4/60ba411998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/00111d5dc9a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/00111d5dc9a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..c83219c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/00111d5dc9a4001c1acc9f54b60f9b57 @@ -0,0 +1,73 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + Panneau_Centre_Gauche.WIDTH(100); + Panneau_Centre_Gauche.setBorder(FlowLayout); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/206bde1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/206bde1598af001c18c4935e001381da new file mode 100644 index 0000000..1c47334 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/206bde1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/5061ea1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/5061ea1a98af001c18c4935e001381da new file mode 100644 index 0000000..0a92b7f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/5061ea1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/70c77b1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/70c77b1798af001c18c4935e001381da new file mode 100644 index 0000000..9381f48 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d5/70c77b1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/206acf1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/206acf1b98af001c18c4935e001381da new file mode 100644 index 0000000..a17a5e1 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/206acf1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/6096d7834daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/6096d7834daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..77d5d1c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/6096d7834daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,194 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + this.pr.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/70af0d414aaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/70af0d414aaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..af2b810 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/70af0d414aaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,193 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + Principale.this.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/e0035c67f9a3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d6/e0035c67f9a3001c1027e59cc3e35e89 new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d7/006709f64caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d7/006709f64caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..4f3b70b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d7/006709f64caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + int jo; + jo = JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + if(jo == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d7/208aac1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d7/208aac1998af001c18c4935e001381da new file mode 100644 index 0000000..9bcefdb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d7/208aac1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d8/a045481598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d8/a045481598af001c18c4935e001381da new file mode 100644 index 0000000..061b8bc Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d8/a045481598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/206eb487fdae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/206eb487fdae001c14499bdcdfff58b3 new file mode 100644 index 0000000..9fbe831 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/206eb487fdae001c14499bdcdfff58b3 @@ -0,0 +1,190 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; +import javax.swing.JOptionPane; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypte) : " + this.jtextMdp.getPassword().toString() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(this.jtextMdp.getPassword().toString()); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/405e6d1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/405e6d1998af001c18c4935e001381da new file mode 100644 index 0000000..12432ca Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/405e6d1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/601e35fa01a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/601e35fa01a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..9465379 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/601e35fa01a4001c1027e59cc3e35e89 @@ -0,0 +1,77 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + System.out.println(resultat.isBeforeFirst()); +// true + resultat.next(); +// on se retrouve ici sur la premire ligne + +// traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + } + resultat.first(); +// on a replac ici le curseur sur la premire ligne + resultat.afterLast(); +// on a replac le curseur aprs la dernire ligne + while(resultat.previous()){ + // on parcours ici le ResultSet de la dernire la premire ligne + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/80ea461998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/80ea461998af001c18c4935e001381da new file mode 100644 index 0000000..583ce65 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/80ea461998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/f0a37e404caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/f0a37e404caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..871c5fe --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/d9/f0a37e404caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,187 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + + static JOptionPane jo = new JOptionPane(); + jo.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/2066d61398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/2066d61398af001c18c4935e001381da new file mode 100644 index 0000000..d2e5ea8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/2066d61398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/40f2901698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/40f2901698af001c18c4935e001381da new file mode 100644 index 0000000..e63175c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/40f2901698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/50a3640606a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/50a3640606a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..424380e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/50a3640606a4001c1027e59cc3e35e89 @@ -0,0 +1,90 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + int i = rsmd.getColumnCount(); + + System.out.println("Nombre de colonne: " + i); + + for(int j = 1; j < i; j++){ + System.out.println(rsmd.getColumnName(j)); + } + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/90fedb1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/90fedb1998af001c18c4935e001381da new file mode 100644 index 0000000..81047c1 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/90fedb1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/b097b51398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/b097b51398af001c18c4935e001381da new file mode 100644 index 0000000..61fa425 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/da/b097b51398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/10dac44605a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/10dac44605a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..63cc2fc --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/10dac44605a4001c1027e59cc3e35e89 @@ -0,0 +1,77 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/40e9b11e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/40e9b11e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..5442fea --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/40e9b11e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Eroare intern\u0103 + +ORA-17002=Excep\u0163ie I/O + +ORA-17003=Index coloan\u0103 nevalid + +ORA-17004=Tip coloan\u0103 nevalid + +ORA-17005=Tip de coloan\u0103 neacceptat + +ORA-17006=Nume nevalid de coloan\u0103 + +ORA-17007=Coloan\u0103 dinamic\u0103 nevalid\u0103 + +ORA-17008=Conexiunea a fost \u00eenchis\u0103 + +ORA-17009=Instruc\u0163iunea a fost \u00eenchis\u0103 + +ORA-17010=Setul de rezultate a fost \u00eenchis + +ORA-17011=Setul de rezultate este epuizat + +ORA-17012=Tipuri de parametri \u00een conflict + +ORA-17014=ResultSet.next nu a fost apelat\u0103 + +ORA-17015=Instruc\u0163iunea a fost anulat\u0103 + +ORA-17016=Instruc\u0163iunea a expirat + +ORA-17017=Cursorul a fost deja ini\u0163ializat + +ORA-17018=Cursor nevalid + +ORA-17019=Se poate face numai descrierea unei interog\u0103ri + +ORA-17020=Pre-preluare a unui r\u00e2nd nevalid + +ORA-17021=Lipsesc definiri + +ORA-17022=Lipsesc definiri la index + +ORA-17023=Caracteristic\u0103 neacceptat\u0103 + +ORA-17024=Nu au fost citite date + +ORA-17025=Eroare \u00een defines.isNull () + +ORA-17026=Dep\u0103\u015fire numeric\u0103 + +ORA-17027=Fluxul a fost deja \u00eenchis + +ORA-17028=Nu se pot face noi definiri \u00eenainte ca setul de rezultate curent s\u0103 fie \u00eenchis + +ORA-17029=setReadOnly: Conexiunile read-only nu sunt acceptate + +ORA-17030=READ_COMMITTED \u015fi SERIALIZABLE sunt singurele niveluri de tranzac\u0163ie valide + +ORA-17031=setAutoClose: Modul de \u00eenchidere automat\u0103 este acceptat numai \u00een starea activat + +ORA-17032=pre-preluarea r\u00e2ndului nu poate fi setat\u0103 la zero + +ORA-17033=\u015eir SQL92 deformat la pozi\u0163ia + +ORA-17034=Simbol SQL92 neacceptat la pozi\u0163ia + +ORA-17035=Setul de caractere nu este acceptat !! + +ORA-17036=excep\u0163ie \u00een OracleNumber + +ORA-17037=Nu s-a reu\u015fit conversia \u00eentre UTF8 \u015fi UCS2 + +ORA-17038=Masivul de octe\u0163i nu este suficient de lung + +ORA-17039=Masivul de caractere nu este suficient de lung + +ORA-17040=Trebuie specificat un subprotocol \u00een URL-ul de conectare + +ORA-17041=Lipsesc parametrii IN sau OUT la indexul: + +ORA-17042=Valoare Batch nevalid\u0103 + +ORA-17043=Dimensiunea maxim\u0103 a fluxului este nevalid\u0103 + +ORA-17044=Eroare intern\u0103: Masivul de date nu a fost alocat + +ORA-17045=Eroare intern\u0103: S-a \u00eencercat accesarea valorilor de leg\u0103tur\u0103 \u00eenaintea valorii batch + +ORA-17046=Eroare intern\u0103: Index nevalid pentru accesarea datelor + +ORA-17047=Eroare la analizarea descriptorului de tip + +ORA-17048=Tip nedefinit + +ORA-17049=Tipuri de obiecte java \u015fi sql inconsistente + +ORA-17050=nu exist\u0103 un astfel de element \u00een vector + +ORA-17051=Acest API nu poate fi utilizat dec\u00e2t pentru tipuri definite de utilizator + +ORA-17052=Aceast\u0103 referin\u0163\u0103 nu este valid\u0103 + +ORA-17053=Dimensiunea nu este valid\u0103 + +ORA-17054=Identificatorul LOB nu este valid + +ORA-17055=Caracter nevalid existent \u00een + +ORA-17056=Set de caractere neacceptat + +ORA-17057=LOB a fost \u00eenchis + +ORA-17058=Eroare intern\u0103: Rat\u0103 de conversie NLS nevalid\u0103 + +ORA-17059=Nu s-a reu\u015fit conversia \u00een reprezentare intern\u0103 + +ORA-17060=Nu s-a reu\u015fit generarea descriptorului + +ORA-17061=Descriptor absent + +ORA-17062=Cursorul de tip REF este nevalid + +ORA-17063=Nu sunte\u0163i \u00eentr-o tranzac\u0163ie + +ORA-17064=Sintaxa este nevalid\u0103 sau numele BD este nul + +ORA-17065=Clasa de conversie este nul\u0103 + +ORA-17066=Este necesar\u0103 o implementare specific\u0103 nivelului de acces + +ORA-17067=A fost specificat un URL Oracle nevalid + +ORA-17068=Argument(e) nevalid(e) \u00een apel + +ORA-17069=Utiliza\u0163i apelul explicit XA + +ORA-17070=Dimensiunea datelor dep\u0103\u015fe\u015fte valoarea maxim\u0103 admis\u0103 pentru acest tip + +ORA-17071=Limita maxim\u0103 VARRAY a fost dep\u0103\u015fit\u0103 + +ORA-17072=Valoarea introdus\u0103 este prea mare pentru coloan\u0103 + +ORA-17073=Specificatorul logic nu mai este valid + +ORA-17074=model de nume nevalid + +ORA-17075=Opera\u0163iune nevalid\u0103 pentru setul de rezultate forward-only + +ORA-17076=Opera\u0163iune nevalid\u0103 pentru setul de rezultate read-only + +ORA-17077=Setarea valorii REF a e\u015fuat + +ORA-17078=Opera\u0163ia nu se poate efectua deoarece conexiunile sunt deja deschise + +ORA-17079=Acreditivele utilizatorului nu corespund celor existente + +ORA-17080=Comanda batch este nevalid\u0103 + +ORA-17081=Eroare la executarea pe loturi + +ORA-17082=Nu exist\u0103 nici un r\u00e2nd curent + +ORA-17083=Nu exist\u0103 pe r\u00e2ndul inserat + +ORA-17084=Apelat pe r\u00e2ndul inserat + +ORA-17085=Au survenit conflicte de valori + +ORA-17086=Valoare de coloan\u0103 nedefinit\u0103 pe r\u00e2ndul inserat + +ORA-17087=Sugestie de performan\u0163\u0103 ignorat\u0103: setFetchDirection() + +ORA-17088=Sintax\u0103 neacceptat\u0103 pentru tipul setului de rezultate \u015fi nivelul de concuren\u0163\u0103 solicitate +ORA-17089=eroare intern\u0103 + +ORA-17090=opera\u0163ia nu este permis\u0103 + +ORA-17091=Nu s-a putut crea setul de rezultate de tipul \u015fi/sau de nivelul de concuren\u0163\u0103 solicitate + +ORA-17092=Instruc\u0163iunile JDBC nu pot fi create sau executate la sf\u00e2r\u015fitul proces\u0103rii apelurilor + +ORA-17093=Opera\u0163ia OCI a returnat OCI_SUCCESS_WITH_INFO + +ORA-17094=Versiunile tipului de obiect sunt diferite + +ORA-17095=Nu a fost stabilit\u0103 dimensiunea pentru cache-ul de instruc\u0163iuni + +ORA-17096=Stocarea instruc\u0163iunilor \u00een cache nu poate fi activat\u0103 pentru aceast\u0103 conexiune logic\u0103. + +ORA-17097=Tip de element incorect \u00een tabelul de indec\u015fi PL/SQL + +ORA-17098=Opera\u0163ie incorect\u0103 asupra unei LOB vide + +ORA-17099=Lungime de tablou incorect\u0103 \u00een tabelul de indec\u015fi PL/SQL + +ORA-17100=Obiectul Java din BD este nevalid + +ORA-17101=Obiectul din centralizatorul partajat OCI are propriet\u0103\u0163i nevalide + +ORA-17102=Bfile este ReadOnly + +ORA-17103=tip de conexiune nevalid pentru a fi returnat prin getConnection. Utiliza\u0163i \u00een schimb getJavaSqlConnection + +ORA-17104=instruc\u0163iunea SQL de executat nu poate fi necompletat\u0103 sau nul\u0103 + +ORA-17105=nu a fost stabilit fusul orar al sesiunii de conectare + +ORA-17106=a fost specificat\u0103 o configura\u0163ie nevalid\u0103 pentru centralizatorul de conexiuni ale driverului JDBC-OCI + +ORA-17107=a fost specificat un tip nevalid de proxy + +ORA-17108=Nu s-a specificat lungimea maxim\u0103 \u00een defineColumnType + +ORA-17109=nu a fost g\u0103sit\u0103 codificarea standard pentru caracterele Java + +ORA-17110=execu\u0163ia s-a finalizat cu avertisment + +ORA-17111=A fost specificat un timp de expirare TTL nevalid pentru cache-ul de conexiuni + +ORA-17112=A fost specificat un interval nevalid pentru firul de execu\u0163ie + +ORA-17113=Valoarea intervalului pentru firul de execu\u0163ie este mai mare dec\u00e2t valoarea timpului de expirare al cache-ului + +ORA-17114=nu s-a putut utiliza confirmarea tranzac\u0163iei locale \u00eentr-o tranzac\u0163ie global\u0103 + +ORA-17115=nu s-a putut utiliza derularea \u00eenapoi a tranzac\u0163iei locale \u00eentr-o tranzac\u0163ie global\u0103 + +ORA-17116=nu s-a putut activa confirmarea automat\u0103 \u00eentr-o tranzac\u0163ie global\u0103 activ\u0103 + +ORA-17117=nu s-a putut stabili punctul de salvare \u00eentr-o tranzac\u0163ie global\u0103 activ\u0103 + +ORA-17118=nu s-a putut ob\u0163ine ID-ul pentru un punct de salvare denumit + +ORA-17119=nu s-a putut ob\u0163ine numele pentru un punct de salvare nedenumit + +ORA-17120=nu s-a putut stabili un punct de salvare, fiind activat\u0103 confirmarea automat\u0103 + +ORA-17121=nu s-a putut efectua derularea \u00eenapoi la un punct de salvare, fiind activat\u0103 confirmarea automat\u0103 + +ORA-17122=nu s-a putut efectua derularea \u00eenapoi la un punct de salvare local txn, \u00eentr-o tranzac\u0163ie global\u0103 + +ORA-17123=A fost specificat\u0103 o dimensiune nevalid\u0103 pentru cache-ul de instruc\u0163iuni + +ORA-17124=A fost specificat un timp de expirare nevalid pentru Inactivitate, pentru cache-ul de conexiuni + +ORA-17200=Nu se poate efectua corespunz\u0103tor conversia \u015firului de deschidere XA din Java \u00een C + +ORA-17201=Nu se poate efectua corespunz\u0103tor conversia \u015firului de \u00eenchidere XA din Java \u00een C + +ORA-17202=Nu se poate efectua corespunz\u0103tor conversia numelui RM din Java \u00een C + +ORA-17203=Nu s-a putut face conversia tipului pointer \u00een jlong + +ORA-17204=Tabloul de intrare este prea scurt pentru a re\u0163ine specificatorii OCI + +ORA-17205=Nu s-a putut ob\u0163ine specificatorul OCISvcCtx din C-XA utiliz\u00e2nd xaoSvcCtx + +ORA-17206=Nu s-a putut ob\u0163ine specificatorul OCIEnv din C-XA utiliz\u00e2nd xaoEnv + +ORA-17207=Proprietatea tnsEntry nu a fost setat\u0103 \u00een DataSource + +ORA-17213=C-XA a returnat XAER_RMERR la execu\u0163ia subrutinei xa_open + +ORA-17215=C-XA a returnat XAER_INVAL la execu\u0163ia subrutinei xa_open + +ORA-17216=C-XA a returnat XAER_PROTO la execu\u0163ia subrutinei xa_open + +ORA-17233=C-XA a returnat XAER_RMERR la execu\u0163ia subrutinei xa_close + +ORA-17235=C-XA a returnat XAER_INVAL la execu\u0163ia subrutinei xa_close + +ORA-17236=C-XA a returnat XAER_PROTO la execu\u0163ia subrutinei xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violare de protocol + +ORA-17402=Este a\u015fteptat un singur mesaj RPA + +ORA-17403=Este a\u015fteptat un singur mesaj RXH + +ORA-17404=Au fost recep\u0163ionate mai multe RXD-uri dec\u00e2t erau de a\u015fteptat + +ORA-17405=Lungimea UAC nu este zero + +ORA-17406=Lungimea maxim\u0103 a bufferului a fost dep\u0103\u015fit\u0103 + +ORA-17407=Reprezentare de tip nevalid\u0103 (setRep) + +ORA-17408=Reprezentare de tip nevalid\u0103 (getRep) + +ORA-17409=lungime de buffer nevalid\u0103 + +ORA-17410=Nu mai exist\u0103 date de citit din socket + +ORA-17411=Reprezent\u0103rile tipurilor de date sunt diferite + +ORA-17412=Lungimea tipului dep\u0103\u015fe\u015fte valoarea maxim\u0103 + +ORA-17413=Dimensiunea cheii este dep\u0103\u015fit\u0103 + +ORA-17414=Dimensiunea bufferului este insuficient\u0103 pentru a stoca numele coloanelor + +ORA-17415=Acest tip nu a fost tratat + +ORA-17416=FATAL + +ORA-17417=Problem\u0103 NLS; nu s-a reu\u015fit decodificarea numelor coloanelor + +ORA-17418=Eroare legat\u0103 de lungimea c\u00e2mpului structurii interne + +ORA-17419=A fost returnat un num\u0103r de coloane nevalid + +ORA-17420=Versiunea Oracle nu a fost definit\u0103 + +ORA-17421=Tipurile sau conexiunea nu au fost definite + +ORA-17422=Clas\u0103 nevalid\u0103 \u00een factory + +ORA-17423=Blocul PLSQL este utilizat f\u0103r\u0103 s\u0103 fie definit o LV + +ORA-17424=Se \u00eencearc\u0103 o alt\u0103 opera\u0163ie de dispunere + +ORA-17425=Se returneaz\u0103 un flux \u00een blocul PLSQL + +ORA-17426=Ambele leg\u0103turi, IN \u015fi OUT, au valoarea NULL + +ORA-17427=Se utilizeaz\u0103 OAC neini\u0163ializat + +ORA-17428=Logon trebuie apelat\u0103 dup\u0103 conectare + +ORA-17429=Trebuie s\u0103 fi\u0163i conectat cel pu\u0163in la server + +ORA-17430=Trebuie s\u0103 fi\u0163i conectat la server + +ORA-17431=Instruc\u0163iunea SQL de analizat este nul\u0103 + +ORA-17432=op\u0163iuni nevalide \u00een all7 + +ORA-17433=argumente nevalide \u00een apel + +ORA-17434=nu sunte\u0163i \u00een mod dirijare \u00een flux + +ORA-17435=num\u0103rul in_out_binds din LV este nevalid + +ORA-17436=Num\u0103r nevalid de variabile de leg\u0103tur\u0103 OUT + +ORA-17437=Eroare \u00een argumentele IN/OUT din blocul PLSQL + +ORA-17438=Intern - Valoare nea\u015fteptat\u0103 + +ORA-17439=Tip SQL nevalid + +ORA-17440=DBItem/DBType este nul + +ORA-17441=Versiunea Oracle nu este acceptat\u0103. Versiunea minim\u0103 acceptat\u0103 este 7.2.3. + +ORA-17442=Valoarea Refcursor este nevalid\u0103 + +ORA-17443=Utilizatorii sau parolele nule nu sunt acceptate in driverul THIN + +ORA-17444=Versiunea de protocol TTC recep\u0163ionat\u0103 de la server nu este acceptat\u0103 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/50e0dda806af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/50e0dda806af001c14499bdcdfff58b3 new file mode 100644 index 0000000..2c9bd81 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/50e0dda806af001c14499bdcdfff58b3 @@ -0,0 +1,12 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + public void IHMRequete(){ + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/600ec91598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/600ec91598af001c18c4935e001381da new file mode 100644 index 0000000..c727222 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/600ec91598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/f02d101a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/f02d101a98af001c18c4935e001381da new file mode 100644 index 0000000..806a6fa Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/db/f02d101a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dc/4028387b02a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dc/4028387b02a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..a3d290a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dc/4028387b02a4001c1027e59cc3e35e89 @@ -0,0 +1,72 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // Affichage du rsultat + System.out.println(resultat.isBeforeFirst()); + // true + resultat.next(); + // on se retrouve ici sur la premire ligne + resultat.toString(); + + // traitement de la premire ligne ... + while(resultat.next()){ + //traitement des autres lignes + resultat.toString(); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dc/b08df81698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dc/b08df81698af001c18c4935e001381da new file mode 100644 index 0000000..f5915e7 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dc/b08df81698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dc/f0ca769406af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dc/f0ca769406af001c14499bdcdfff58b3 new file mode 100644 index 0000000..421c629 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dc/f0ca769406af001c14499bdcdfff58b3 @@ -0,0 +1,5 @@ +package fr.blankoworld.ihm; + +public class IHMRequete extends JFrame { + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/407cf71698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/407cf71698af001c18c4935e001381da new file mode 100644 index 0000000..fbd7a1a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/407cf71698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/40a8c61698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/40a8c61698af001c18c4935e001381da new file mode 100644 index 0000000..a559fe4 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/40a8c61698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/506f3a1e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/506f3a1e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..9f51478 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/506f3a1e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a + +ORA-17002=\u0627\u0633\u062a\u062b\u0646\u0627\u0621 \u0645\u062f\u062e\u0644\u0627\u062a/\u0645\u062e\u0631\u062c\u0627\u062a + +ORA-17003=\u0641\u0647\u0631\u0633 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17004=\u0646\u0648\u0639 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17005=\u0646\u0648\u0639 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0645\u062f\u0639\u0645 + +ORA-17006=\u0627\u0633\u0645 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17007=\u0639\u0645\u0648\u062f \u062f\u064a\u0646\u0627\u0645\u064a\u0643\u064a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17008=\u0627\u062a\u0635\u0627\u0644 \u0645\u063a\u0644\u0642 + +ORA-17009=\u062c\u0645\u0644\u0629 \u0645\u063a\u0644\u0642\u0629 + +ORA-17010=\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0645\u063a\u0644\u0642\u0629 + +ORA-17011=\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0646\u0627\u0641\u062f\u0629 + +ORA-17012=\u062a\u0636\u0627\u0631\u0628 \u0646\u0648\u0639 \u0627\u0644\u0645\u0639\u0627\u0645\u0644 + +ORA-17014=\u0644\u0645 \u064a\u062a\u0645 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 ResultSet.next + +ORA-17015=\u062a\u0645 \u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062c\u0645\u0644\u0629 + +ORA-17016=\u0627\u0646\u062a\u0647\u0649 \u0648\u0642\u062a \u0627\u0644\u062c\u0645\u0644\u0629 + +ORA-17017=\u062a\u0645\u062a \u062a\u0647\u064a\u0626\u0629 \u0627\u0644\u0645\u0624\u0634\u0631 \u0645\u0646 \u0642\u0628\u0644 + +ORA-17018=\u0645\u0624\u0634\u0631 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17019=\u064a\u0645\u0643\u0646 \u0641\u0642\u0637 \u0648\u0635\u0641 \u0627\u0633\u062a\u0639\u0644\u0627\u0645 + +ORA-17020=\u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0633\u062d\u0628 \u0645\u0633\u0628\u0642 \u0644\u0644\u0635\u0641 + +ORA-17021=\u062a\u0639\u0631\u064a\u0641\u0627\u062a \u0645\u0641\u0642\u0648\u062f\u0629 + +ORA-17022=\u062a\u0639\u0631\u064a\u0641\u0627\u062a \u0645\u0641\u0642\u0648\u062f\u0629 \u0641\u064a \u0627\u0644\u0641\u0647\u0631\u0633 + +ORA-17023=\u062e\u0627\u0635\u064a\u0629 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 + +ORA-17024=\u0644\u0645 \u062a\u062a\u0645 \u0642\u0631\u0627\u0621\u0629 \u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17025=\u062e\u0637\u0623 \u0641\u064a defines.isNull () + +ORA-17026=\u062a\u062c\u0627\u0648\u0632 \u0627\u0644\u062d\u062f \u0631\u0642\u0645\u064a + +ORA-17027=\u062a\u0645 \u0628\u0627\u0644\u0641\u0639\u0644 \u0625\u063a\u0644\u0627\u0642 \u0627\u0644\u062a\u062f\u0641\u0642 + +ORA-17028=\u0644\u0627 \u064a\u0645\u0643\u0646 \u0639\u0645\u0644 \u062a\u0639\u0631\u064a\u0641\u0627\u062a \u062c\u062f\u064a\u062f\u0629 \u062d\u062a\u0649 \u064a\u062a\u0645 \u0625\u063a\u0644\u0627\u0642 ResultSet \u0627\u0644\u062d\u0627\u0644\u064a\u0629 + +ORA-17029=setReadOnly: \u0627\u062a\u0635\u0627\u0644\u0627\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0641\u0642\u0637 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 + +ORA-17030=READ_COMMITTED \u0648 SERIALIZABLE \u0647\u064a \u0641\u0642\u0637 \u0645\u0633\u062a\u0648\u064a\u0627\u062a \u0627\u0644\u0639\u0645\u0644\u064a\u0627\u062a \u0627\u0644\u0635\u0627\u0644\u062d\u0629 + +ORA-17031=setAutoClose: \u0627\u0644\u062f\u0639\u0645 \u0641\u0642\u0637 \u0644\u0648\u0636\u0639 \u0627\u0644\u063a\u0644\u0642 \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a + +ORA-17032=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0639\u064a\u064a\u0646 \u0627\u0644\u0633\u062d\u0628 \u0627\u0644\u0645\u0633\u0628\u0642 \u0625\u0644\u0649 \u0635\u0641\u0631 + +ORA-17033=\u0633\u0644\u0633\u0644\u0629 Malformed SQL92 \u0641\u064a \u0627\u0644\u0645\u0631\u0643\u0632 + +ORA-17034=\u0645\u0642\u0637\u0639 SQL92 \u063a\u064a\u0631 \u0645\u062f\u0639\u0648\u0645 \u0641\u064a \u0627\u0644\u0645\u0631\u0643\u0632 + +ORA-17035=\u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u062d\u0631\u0648\u0641 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 !! + +ORA-17036=\u0627\u0633\u062a\u062b\u0646\u0627\u0621 \u0641\u064a OracleNumber + +ORA-17037=\u0641\u0634\u0644 \u0627\u0644\u062a\u062d\u0648\u064a\u0644 \u0628\u064a\u0646 UTF8 \u0648 UCS2 + +ORA-17038=\u0645\u0635\u0641\u0648\u0641\u0629 \u0627\u0644\u0628\u0627\u064a\u062a \u0644\u064a\u0633\u062a \u0637\u0648\u064a\u0644\u0629 \u0628\u0627\u0644\u0642\u062f\u0631 \u0627\u0644\u0643\u0627\u0641\u064a + +ORA-17039=\u0645\u0635\u0641\u0648\u0641\u0629 char \u0644\u064a\u0633\u062a \u0637\u0648\u064a\u0644\u0629 \u0628\u0627\u0644\u0642\u062f\u0631 \u0627\u0644\u0643\u0627\u0641\u064a + +ORA-17040=\u064a\u062c\u0628 \u062a\u062d\u062f\u064a\u062f \u0627\u0644\u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 \u0627\u0644\u0641\u0631\u0639\u064a \u0641\u064a \u0627\u062a\u0635\u0627\u0644 URL + +ORA-17041=\u0645\u0639\u0627\u0645\u0644 IN \u0623\u0648 OUT \u0645\u0641\u0642\u0648\u062f \u0641\u064a \u0627\u0644\u0641\u0647\u0631\u0633: + +ORA-17042=\u0642\u064a\u0645\u0629 \u0627\u0644\u062f\u0641\u0639\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17043=\u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0649 \u0644\u062d\u062c\u0645 \u0627\u0644\u062a\u062f\u0641\u0642 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17044=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0645\u0635\u0641\u0648\u0641\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u063a\u064a\u0631 \u0645\u062e\u0635\u0635\u0629 + +ORA-17045=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0645\u062d\u0627\u0648\u0644\u0629 \u0644\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0642\u064a\u0645 \u0631\u0628\u0637 \u0648\u0631\u0627\u0621 \u0642\u064a\u0645\u0629 \u0627\u0644\u062f\u0641\u0639\u0629 + +ORA-17046=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0641\u0647\u0631\u0633 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17047=\u062e\u0637\u0623 \u0641\u064a \u0627\u0644\u062a\u062d\u0644\u064a\u0644 \u0627\u0644\u0644\u063a\u0648\u064a \u0644\u0648\u0627\u0635\u0641 \u0627\u0644\u0646\u0648\u0639 + +ORA-17048=\u0646\u0648\u0639 \u063a\u064a\u0631 \u0645\u062d\u062f\u062f + +ORA-17049=\u0623\u0646\u0648\u0627\u0639 \u0643\u0627\u0626\u0646 sql \u0648\u062c\u0627\u0641\u0627 \u063a\u064a\u0631 \u0645\u062a\u0646\u0627\u0633\u0642\u0629 + +ORA-17050=\u0644\u0627 \u064a\u0648\u062c\u062f \u0645\u062b\u0644 \u0647\u0630\u0627 \u0627\u0644\u0639\u0646\u0635\u0631 \u0641\u064a \u0627\u0644\u0645\u0648\u062c\u0651\u064e\u0647 + +ORA-17051=\u0644\u0627 \u064a\u0645\u0643\u0646 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 API \u0647\u0630\u0627 \u0644\u0623\u0646\u0648\u0627\u0639 non-UDT + +ORA-17052=\u0647\u0630\u0627 ref \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17053=\u0627\u0644\u062d\u062c\u0645 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17054=\u0645\u062d\u062f\u062f \u0627\u0644\u0645\u0648\u0627\u0642\u0639 LOB \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17055=\u062a\u0645\u062a \u0645\u0635\u0627\u062f\u0641\u0629 \u062d\u0631\u0641 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0641\u064a + +ORA-17056=\u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u062d\u0631\u0648\u0641 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 + +ORA-17057=LOB \u0645\u063a\u0644\u0642 + +ORA-17058=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0646\u0633\u0628\u0629 \u062a\u062d\u0648\u064a\u0644 NLS \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17059=\u0641\u0634\u0644 \u0627\u0644\u062a\u062d\u0648\u064a\u0644 \u0625\u0644\u0649 \u0627\u0644\u062a\u0645\u062b\u064a\u0644 \u0627\u0644\u062f\u0627\u062e\u0644\u064a + +ORA-17060=\u0641\u0634\u0644 \u062a\u0643\u0648\u064a\u0646 \u0627\u0644\u0648\u0627\u0635\u0641 + +ORA-17061=\u0648\u0627\u0635\u0641 \u0645\u0641\u0642\u0648\u062f + +ORA-17062=\u0645\u0624\u0634\u0631 Ref \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17063=\u0644\u064a\u0633 \u0636\u0645\u0646 \u0639\u0645\u0644\u064a\u0629 + +ORA-17064=\u0635\u064a\u0627\u063a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0623\u0648 \u0623\u0646 \u0627\u0633\u0645 \u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u062e\u0627\u0644\u064a + +ORA-17065=\u0637\u0628\u0642\u0629 \u0627\u0644\u062a\u062d\u0648\u064a\u0644 \u062e\u0627\u0644\u064a\u0629 + +ORA-17066=\u0645\u0637\u0644\u0648\u0628 \u062a\u0646\u0641\u064a\u0630 \u0645\u0639\u064a\u0646 \u0644\u0637\u0628\u0642\u0629 \u0627\u0644\u0648\u0635\u0648\u0644 + +ORA-17067=\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 URL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0623\u0648\u0631\u0627\u0643\u0644 + +ORA-17068=\u0648\u0633\u064a\u0637\u0629 (\u0648\u0633\u0627\u0626\u0637) \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0627\u0644\u0627\u0633\u062a\u062f\u0639\u0627\u0621 + +ORA-17069=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 XA \u0627\u0644\u0636\u0645\u0646\u064a + +ORA-17070=\u062d\u062c\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u062d\u062c\u0645 \u0627\u0644\u0623\u0642\u0635\u0649 \u0644\u0647\u0630\u0627 \u0627\u0644\u0646\u0648\u0639 + +ORA-17071=\u062a\u0645 \u062a\u062c\u0627\u0648\u0632 \u062d\u062f VARRAY \u0627\u0644\u0623\u0642\u0635\u0649 + +ORA-17072=\u062a\u0645 \u0625\u0636\u0627\u0641\u0629 \u0642\u064a\u0645\u0629 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0639\u0645\u0648\u062f \u0628\u0643\u062b\u064a\u0631 + +ORA-17073=\u0644\u0645 \u064a\u0639\u062f \u0627\u0644\u0645\u0631\u062c\u0639 \u0627\u0644\u0645\u0646\u0637\u0642\u064a \u0635\u0627\u0644\u062d\u0627\u064b + +ORA-17074=\u0646\u0645\u0637 \u0627\u0644\u0627\u0633\u0645 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17075=\u0639\u0645\u0644\u064a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0644\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0627\u0644\u062a\u0648\u062c\u064a\u0647 \u0641\u0642\u0637 + +ORA-17076=\u0639\u0645\u0644\u064a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0644\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0641\u0642\u0637 + +ORA-17077=\u0641\u0634\u0644 \u062a\u0639\u064a\u064a\u0646 \u0642\u064a\u0645\u0629 REF + +ORA-17078=\u0644\u0627 \u064a\u0645\u0643\u0646 \u0625\u062c\u0631\u0627\u0621 \u0627\u0644\u0639\u0645\u0644\u064a\u0629 \u0644\u0623\u0646 \u0627\u0644\u0627\u062a\u0635\u0627\u0644\u0627\u062a \u0645\u0641\u062a\u0648\u062d\u0629 \u0628\u0627\u0644\u0641\u0639\u0644 + +ORA-17079=\u0635\u0644\u0627\u062d\u064a\u0627\u062a \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645 \u063a\u064a\u0631 \u0645\u062a\u0637\u0627\u0628\u0642\u0629 \u0645\u0639 \u0627\u0644\u0635\u0644\u0627\u062d\u064a\u0627\u062a \u0627\u0644\u0645\u0648\u062c\u0648\u062f\u0629 + +ORA-17080=\u0623\u0645\u0631 \u062f\u0641\u0639\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17081=\u062d\u062f\u062b \u062e\u0637\u0623 \u062e\u0644\u0627\u0644 \u0625\u062c\u0631\u0627\u0621 \u0627\u0644\u062f\u0641\u0639\u0629 + +ORA-17082=\u0644\u0627 \u064a\u0648\u062c\u062f \u0635\u0641 \u062d\u0627\u0644\u064a + +ORA-17083=\u0644\u064a\u0633 \u0639\u0644\u0649 \u0635\u0641 \u0627\u0644\u0625\u0636\u0627\u0641\u0629 + +ORA-17084=\u0645\u0633\u062a\u062f\u0639\u0649 \u0639\u0644\u0649 \u0635\u0641 \u0627\u0644\u0625\u0636\u0627\u0641\u0629 + +ORA-17085=\u062d\u062f\u062b \u062a\u0636\u0627\u0631\u0628 \u0641\u064a \u0627\u0644\u0642\u064a\u0645 + +ORA-17086=\u0642\u064a\u0645\u0629 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0645\u0639\u0631\u0641\u0629 \u0639\u0644\u0649 \u0635\u0641 \u0627\u0644\u0625\u0636\u0627\u0641\u0629 + +ORA-17087=\u062a\u062c\u0627\u0647\u0644 \u062a\u0644\u0645\u064a\u062d \u0627\u0644\u0623\u062f\u0627\u0621: setFetchDirection() + +ORA-17088=\u0635\u064a\u0627\u063a\u0629 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 \u0644\u0646\u0648\u0639 \u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u0646\u062a\u0627\u0626\u062c \u0627\u0644\u0645\u0637\u0644\u0648\u0628 \u0648\u0645\u0633\u062a\u0648\u0649 \u0627\u0644\u062a\u0632\u0627\u0645\u0646 \u0627\u0644\u0645\u0637\u0644\u0648\u0628 +ORA-17089=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a + +ORA-17090=\u063a\u064a\u0631 \u0645\u0633\u0645\u0648\u062d \u0628\u0627\u0644\u0639\u0645\u0644\u064a\u0629 + +ORA-17091=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u0649 \u062a\u0643\u0648\u064a\u0646 \u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u0646\u062a\u0627\u0626\u062c \u0641\u064a \u0627\u0644\u0646\u0648\u0639 \u0627\u0644\u0645\u0637\u0644\u0648\u0628 \u0648/\u0623\u0648 \u0645\u0633\u062a\u0648\u0649 \u0627\u0644\u062a\u0632\u0627\u0645\u0646 \u0627\u0644\u0645\u0637\u0644\u0648\u0628 + +ORA-17092=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0643\u0648\u064a\u0646 \u0623\u0648 \u062a\u0646\u0641\u064a\u0630 \u062c\u0645\u0644 JDBC \u0641\u064a \u0646\u0647\u0627\u064a\u0629 \u0645\u0639\u0627\u0644\u062c\u0629 \u0627\u0644\u0627\u0633\u062a\u062f\u0639\u0627\u0621. + +ORA-17093=\u0642\u0627\u0645\u062a \u0639\u0645\u0644\u064a\u0629 \u0648\u0633\u064a\u0637 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 \u0623\u0648\u0631\u0627\u0643\u0644 \u0628\u0625\u0639\u0627\u062f\u0629 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u0625\u0635\u062f\u0627\u0631 \u0646\u0648\u0639 \u0627\u0644\u0643\u0627\u0626\u0646 \u063a\u064a\u0631 \u0645\u062a\u0637\u0627\u0628\u0642 + +ORA-17095=\u0644\u0645 \u064a\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 \u062d\u062c\u0645 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u062c\u0645\u0644\u0629 + +ORA-17096=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 \u0627\u0644\u062e\u0627\u0635\u0629 \u0628\u0627\u0644\u062c\u0645\u0644\u0629 \u0644\u0647\u0630\u0627 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 \u0627\u0644\u0645\u0646\u0637\u0642\u064a. + +ORA-17097=\u0646\u0648\u0639 \u0639\u0646\u0635\u0631 \u062c\u062f\u0648\u0644 \u0641\u0647\u0631\u0633 PL/SQL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17098=\u0639\u0645\u0644\u064a\u0629 lob \u0641\u0627\u0631\u063a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17099=\u0637\u0648\u0644 \u0645\u0635\u0641\u0648\u0641\u0629 \u062c\u062f\u0648\u0644 \u0641\u0647\u0631\u0633 PL/SQL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17100=\u0643\u0627\u0626\u0646 \u0628\u064a\u0627\u0646\u0627\u062a \u062c\u0627\u0641\u0627 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17101=\u062e\u0635\u0627\u0626\u0635 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0643\u0627\u0626\u0646 \u0645\u062c\u0645\u0639 \u0627\u062a\u0635\u0627\u0644 OCI + +ORA-17102=Bfile \u0644\u0644\u0642\u0631\u0627\u0621\u0629 \u0641\u0642\u0637 + +ORA-17103=\u062a\u0645 \u0625\u0631\u062c\u0627\u0639 \u0646\u0648\u0639 \u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0628\u0648\u0627\u0633\u0637\u0629 getConnection. \u0627\u0633\u062a\u062e\u062f\u0645 getJavaSqlConnection \u0628\u062f\u0644\u0627 \u0645\u0646 \u0630\u0644\u0643 + +ORA-17104=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0646\u0641\u064a\u0630 \u062c\u0645\u0644\u0629 SQL \u0641\u0627\u0631\u063a\u0629 \u0623\u0648 \u062e\u0627\u0644\u064a\u0629 + +ORA-17105=\u0644\u0645 \u064a\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 \u0646\u0637\u0627\u0642 \u0627\u0644\u0648\u0642\u062a \u0644\u062c\u0644\u0633\u0629 \u0639\u0645\u0644 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 + +ORA-17106=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u062a\u0643\u0648\u064a\u0646 \u0645\u062c\u0645\u0639 \u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0628\u0631\u0646\u0627\u0645\u062c \u062a\u0634\u063a\u064a\u0644 JDBC-OCI + +ORA-17107=\u0646\u0648\u0639 \u0627\u0644\u0628\u0631\u0648\u0643\u0633\u064a \u0627\u0644\u0645\u062d\u062f\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17108=\u0644\u0645 \u064a\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u062d\u062f \u0623\u0642\u0635\u0649 \u0644\u0644\u0637\u0648\u0644 \u0641\u064a defineColumnType + +ORA-17109=\u062a\u0639\u0630\u0631 \u0627\u0644\u0639\u062b\u0648\u0631 \u0639\u0644\u0649 \u062a\u0631\u0645\u064a\u0632 \u062d\u0631\u0648\u0641 \u062c\u0627\u0641\u0627 \u0627\u0644\u0642\u064a\u0627\u0633\u064a + +ORA-17110=\u0627\u0643\u062a\u0645\u0644 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0645\u0639 \u0638\u0647\u0648\u0631 \u062a\u062d\u0630\u064a\u0631\u0627\u062a + +ORA-17111=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u0648\u0642\u062a \u0627\u0646\u062a\u0647\u0627\u0621 TTL \u0644\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17112=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u0641\u0627\u0635\u0644 \u0632\u0645\u0646\u064a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0633\u0644\u0633\u0644\u0629 \u0627\u0644\u0639\u0645\u0644\u064a\u0627\u062a + +ORA-17113=\u0642\u064a\u0645\u0629 \u0627\u0644\u0641\u0627\u0635\u0644 \u0627\u0644\u0632\u0645\u0646\u064a \u0644\u0633\u0644\u0633\u0644\u0629 \u0627\u0644\u0639\u0645\u0644\u064a\u0627\u062a \u0623\u0643\u0628\u0631 \u0645\u0646 \u0642\u064a\u0645\u0629 \u0648\u0642\u062a \u0627\u0646\u062a\u0647\u0627\u0621 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0645\u062e\u0628\u0626\u064a\u0629 + +ORA-17114=\u062a\u0639\u0630\u0631 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u062a\u062b\u0628\u064a\u062a \u0639\u0645\u0644\u064a\u0629 \u0645\u062d\u0644\u064a\u0629 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 + +ORA-17115=\u062a\u0639\u0630\u0631 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0625\u0644\u063a\u0627\u0621 \u062a\u0639\u062f\u064a\u0644\u0627\u062a \u0639\u0645\u0644\u064a\u0629 \u0645\u062d\u0644\u064a\u0629 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 + +ORA-17116=\u062a\u0639\u0630\u0631 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 \u0646\u0634\u0637\u0629 + +ORA-17117=\u062a\u0639\u0630\u0631 \u062a\u0639\u064a\u064a\u0646 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 \u0646\u0634\u0637\u0629 + +ORA-17118=\u062a\u0639\u0630\u0631 \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0645\u0639\u0631\u0641 \u0644\u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0645\u0633\u0645\u0627\u0629 + +ORA-17119=\u062a\u0639\u0630\u0631 \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0633\u0645 \u0644\u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u063a\u064a\u0631 \u0645\u0633\u0645\u0627\u0629 + +ORA-17120=\u062a\u0639\u0630\u0631 \u062a\u0639\u064a\u064a\u0646 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0645\u0639 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a + +ORA-17121=\u062a\u0639\u0630\u0631 \u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062a\u0639\u062f\u064a\u0644\u0627\u062a \u0625\u0644\u0649 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0645\u0639 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a + +ORA-17122=\u062a\u0639\u0630\u0631 \u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062a\u0639\u062f\u064a\u0644\u0627\u062a \u0625\u0644\u0649 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 txn \u0645\u062d\u0644\u064a\u0629 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 + +ORA-17123=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u062d\u062c\u0645 \u0630\u0627\u0643\u0631\u0629 \u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u062c\u0645\u0644\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17124=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u0648\u0642\u062a \u0627\u0646\u062a\u0647\u0627\u0621 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0639\u062f\u0645 \u0646\u0634\u0627\u0637 \u0630\u0627\u0643\u0631\u0629 \u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u0627\u062a\u0635\u0627\u0644 + +ORA-17200=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u064a \u062a\u062d\u0648\u064a\u0644 \u0633\u0644\u0633\u0644\u0629 \u0641\u062a\u062d XA \u0645\u0646 \u062c\u0627\u0641\u0627 \u0625\u0644\u064a C \u0628\u0627\u0644\u0634\u0643\u0644 \u0627\u0644\u0645\u0646\u0627\u0633\u0628 + +ORA-17201=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u0649 \u062a\u062d\u0648\u064a\u0644 \u0633\u0644\u0633\u0644\u0629 \u0625\u063a\u0644\u0627\u0642 XA \u0645\u0646 \u062c\u0627\u0641\u0627 \u0625\u0644\u064a C \u0628\u0627\u0644\u0634\u0643\u0644 \u0627\u0644\u0645\u0646\u0627\u0633\u0628 + +ORA-17202=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u064a \u062a\u062d\u0648\u064a\u0644 \u0627\u0633\u0645 RM \u0645\u0646 \u062c\u0627\u0641\u0627 \u0625\u0644\u064a C \u0628\u0627\u0644\u0634\u0643\u0644 \u0627\u0644\u0645\u0646\u0627\u0633\u0628 + +ORA-17203=\u062a\u0639\u0630\u0631 \u062a\u0639\u064a\u064a\u0646 \u0646\u0648\u0639 \u0627\u0644\u0645\u0624\u0634\u0631 \u0625\u0644\u064a \u0627\u0644\u0637\u0648\u0644 jlong + +ORA-17204=\u0645\u0635\u0641\u0648\u0641\u0629 \u0627\u0644\u0645\u062f\u062e\u0644\u0627\u062a \u0642\u0635\u064a\u0631\u0629 \u0644\u0644\u063a\u0627\u064a\u0629 \u0644\u062f\u0631\u062c\u0629 \u0644\u0627 \u064a\u0645\u0643\u0646\u0647\u0627 \u0627\u0644\u0627\u062d\u062a\u0641\u0627\u0638 \u0628\u0645\u0631\u0627\u062c\u0639 OCI + +ORA-17205=\u0641\u0634\u0644 \u0641\u064a \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0645\u0631\u062c\u0639 OCISvcCtx \u0645\u0646 C-XA \u0628\u0627\u0633\u062a\u062e\u062f\u0627\u0645 xaoSvcCtx + +ORA-17206=\u0641\u0634\u0644 \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u064a \u0645\u0631\u062c\u0639 OCIEnv \u0645\u0646 C-XA \u0628\u0627\u0633\u062a\u062e\u062f\u0627\u0645 xaoEnv + +ORA-17207=\u0644\u0645 \u064a\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 \u062e\u0627\u0635\u064a\u0629 tnsEntry \u0641\u064a \u0645\u0635\u062f\u0631 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17213=C-XA \u0623\u0631\u062c\u0639 XAER_RMERR \u0623\u062b\u0646\u0627\u0621 xa_open + +ORA-17215=C-XA \u0623\u0631\u062c\u0639 XAER_INVAL \u0623\u062b\u0646\u0627\u0621 xa_open + +ORA-17216=C-XA \u0623\u0631\u062c\u0639 XAER_PROTO \u0623\u062b\u0646\u0627\u0621 xa_open + +ORA-17233=C-XA \u0623\u0631\u062c\u0639 XAER_RMERR \u0623\u062b\u0646\u0627\u0621 xa_close + +ORA-17235=C-XA \u0623\u0631\u062c\u0639 XAER_INVAL \u0623\u062b\u0646\u0627\u0621 xa_close + +ORA-17236=C-XA \u0623\u0631\u062c\u0639 XAER_PROTO \u0623\u062b\u0646\u0627\u0621 xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u0627\u0646\u062d\u0631\u0627\u0641 \u0627\u0644\u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 + +ORA-17402=\u062a\u0648\u0642\u0639 \u0631\u0633\u0627\u0644\u0629 RPA \u0648\u0627\u062d\u062f\u0629 \u0641\u0642\u0637 + +ORA-17403=\u062a\u0648\u0642\u0639 \u0631\u0633\u0627\u0644\u0629 RXH \u0648\u0627\u062d\u062f\u0629 \u0641\u0642\u0637 + +ORA-17404=\u062a\u0644\u0642\u064a RXD \u0623\u0643\u062b\u0631 \u0645\u0646 \u0627\u0644\u0645\u062a\u0648\u0642\u0639 + +ORA-17405=\u0637\u0648\u0644 UAC \u0644\u064a\u0633 \u0635\u0641\u0631\u0627\u064b + +ORA-17406=\u062a\u062c\u0627\u0648\u0632 \u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0649 \u0644\u0637\u0648\u0644 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 + +ORA-17407=\u0646\u0648\u0639 \u0627\u0644\u062a\u0645\u062b\u064a\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d(setRep) + +ORA-17408=\u062a\u0645\u062b\u064a\u0644 \u0646\u0648\u0639 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d(getRep) + +ORA-17409=\u0637\u0648\u0644 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17410=\u0644\u0645 \u062a\u0639\u062f \u0647\u0646\u0627\u0643 \u0628\u064a\u0627\u0646\u0627\u062a \u0644\u0644\u0642\u0631\u0627\u0621\u0629 \u0645\u0646 \u0627\u0644\u0645\u0642\u0628\u0633 + +ORA-17411=\u0639\u062f\u0645 \u062a\u0637\u0627\u0628\u0642 \u062a\u0645\u062b\u064a\u0644\u0627\u062a \u0646\u0648\u0639 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17412=\u0637\u0648\u0644 \u0627\u0644\u0646\u0648\u0639 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0649 + +ORA-17413=\u062a\u062c\u0627\u0648\u0632 \u062d\u062c\u0645 \u0627\u0644\u0645\u0641\u062a\u0627\u062d + +ORA-17414=\u062d\u062c\u0645 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 \u063a\u064a\u0631 \u0643\u0627\u0641\u064a \u0644\u062a\u062e\u0632\u064a\u0646 \u0623\u0633\u0645\u0627\u0621 \u0627\u0644\u0623\u0639\u0645\u062f\u0629 + +ORA-17415=\u0644\u0645 \u062a\u062a\u0645 \u0645\u0639\u0627\u0644\u062c\u0629 \u0647\u0630\u0627 \u0627\u0644\u0646\u0648\u0639 + +ORA-17416=FATAL + +ORA-17417=\u0645\u0634\u0643\u0644\u0629 NLS\u060c \u0641\u0634\u0644 \u0641\u064a \u0641\u0643 \u0634\u0641\u0631\u0629 \u0623\u0633\u0645\u0627\u0621 \u0627\u0644\u0639\u0645\u0648\u062f + +ORA-17418=\u062e\u0637\u0623 \u0641\u064a \u0637\u0648\u0644 \u062d\u0642\u0644 \u0627\u0644\u0647\u064a\u0643\u0644 \u0627\u0644\u062f\u0627\u062e\u0644\u064a + +ORA-17419=\u062a\u0645 \u0631\u062c\u0648\u0639 \u0631\u0642\u0645 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0645\u0646 \u0627\u0644\u0623\u0639\u0645\u062f\u0629 + +ORA-17420=\u0625\u0635\u062f\u0627\u0631 \u0623\u0648\u0631\u0627\u0643\u0644 \u063a\u064a\u0631 \u0645\u0639\u0631\u0641 + +ORA-17421=\u0627\u0644\u0623\u0646\u0648\u0627\u0639 \u0623\u0648 \u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0645\u0639\u0631\u0641\u0629 + +ORA-17422=\u0637\u0628\u0642\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0627\u0644\u0645\u0635\u0646\u0639 + +ORA-17423=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0642\u0637\u0639\u0629 PLSQL \u062f\u0648\u0646 \u062a\u0639\u0631\u064a\u0641 IOV + +ORA-17424=\u0645\u062d\u0627\u0648\u0644\u0629 \u0639\u0645\u0644\u064a\u0629 \u0645\u0646\u0638\u0645\u0629 \u0645\u062e\u062a\u0644\u0641\u0629 + +ORA-17425=\u0631\u062c\u0648\u0639 \u062a\u062f\u0641\u0642 \u0641\u064a \u0642\u0637\u0639\u0629 PLSQL + +ORA-17426=\u0643\u0644\u0627\u064b \u0645\u0646 \u0631\u0648\u0627\u0628\u0637 IN \u0648 OUT \u0647\u064a NULL + +ORA-17427=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 OAC \u063a\u064a\u0631 \u0645\u0647\u064a\u0623 + +ORA-17428=\u064a\u062c\u0628 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 \u0627\u0644\u062f\u062e\u0648\u0644 \u0628\u064e\u0639\u062f \u0627\u0644\u0627\u062a\u0635\u0627\u0644 + +ORA-17429=\u064a\u062c\u0628 \u0639\u0644\u0649 \u0627\u0644\u0623\u0642\u0644 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 \u0628\u062e\u0627\u062f\u0645 + +ORA-17430=\u064a\u062c\u0628 \u0627\u0644\u062f\u062e\u0648\u0644 \u0625\u0644\u0649 \u062e\u0627\u062f\u0645 + +ORA-17431=\u0639\u0628\u0627\u0631\u0629 SQL \u0644\u0644\u062a\u062d\u0644\u064a\u0644 \u0627\u0644\u0644\u063a\u0648\u064a \u062e\u0627\u0644\u064a\u0629 + +ORA-17432=\u062e\u064a\u0627\u0631\u0627\u062a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a all7 + +ORA-17433=\u0648\u0633\u0627\u0626\u0637 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0627\u0644\u0627\u0633\u062a\u062f\u0639\u0627\u0621 + +ORA-17434=\u0644\u064a\u0633 \u0641\u064a \u0637\u0648\u0631 \u0627\u0644\u062a\u062f\u0641\u0642 + +ORA-17435=\u0631\u0642\u0645 in_out_binds \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0641\u064a IOV + +ORA-17436=\u0639\u062f\u062f \u0627\u0644\u0631\u0648\u0627\u0628\u0637 \u0627\u0644\u062e\u0627\u0631\u062c\u064a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17437=\u062e\u0637\u0623 \u0641\u064a \u0642\u0637\u0639\u0629 PLSQL \u0648\u0633\u064a\u0637\u0629 (\u0648\u0633\u0627\u0626\u0637) IN/OUT + +ORA-17438=\u062f\u0627\u062e\u0644\u064a - \u0642\u064a\u0645\u0629 \u063a\u064a\u0631 \u0645\u062a\u0648\u0642\u0639\u0629 + +ORA-17439=\u0646\u0648\u0639 SQL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17440=DBItem/DBType \u062e\u0627\u0644\u064a + +ORA-17441=\u0625\u0635\u062f\u0627\u0631 \u0623\u0648\u0631\u0627\u0643\u0644 \u063a\u064a\u0631 \u0645\u062f\u0639\u0648\u0645. \u0627\u0644\u062d\u062f \u0627\u0644\u0623\u062f\u0646\u0649 \u0644\u0644\u0625\u0635\u062f\u0627\u0631\u0627\u062a \u0627\u0644\u0645\u062f\u0639\u0648\u0645\u0629 \u0647\u0648 \u0627\u0644\u0625\u0635\u062f\u0627\u0631 7.2.3. + +ORA-17442=\u0642\u064a\u0645\u0629 Refcursor \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17443=\u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645 \u0623\u0648 \u0643\u0644\u0645\u0629 \u0627\u0644\u0633\u0631 \u0627\u0644\u062e\u0627\u0644\u064a\u0629 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 \u0641\u064a \u0628\u0631\u0646\u0627\u0645\u062c \u062a\u0634\u063a\u064a\u0644 THIN + +ORA-17444=\u0625\u0635\u062f\u0627\u0631 \u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 TTC \u0627\u0644\u0630\u064a \u062a\u0645 \u0627\u0633\u062a\u0644\u0627\u0645\u0647 \u0645\u0646 \u0627\u0644\u062e\u0627\u062f\u0645 \u063a\u064a\u0631 \u0645\u062f\u0639\u0648\u0645 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/8016a51698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/8016a51698af001c18c4935e001381da new file mode 100644 index 0000000..c6bbe69 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/8016a51698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/80d6791898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/80d6791898af001c18c4935e001381da new file mode 100644 index 0000000..ab04f3f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/80d6791898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f06005a306a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f06005a306a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..f152766 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f06005a306a4001c1027e59cc3e35e89 @@ -0,0 +1,94 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes +// int i = rsmd.getColumnCount(); +// System.out.println("Nombre de colonne: " + i); + + // Donner les enttes de colonnes +// for(int j = 1; j < i; j++){ +// System.out.print(rsmd.getColumnName(j) + " "); +// } + + System.out.println(rsmd.getColumnName(1) + " " + rsmd.getColumnName(2)); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/de/20d72b1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/de/20d72b1b98af001c18c4935e001381da new file mode 100644 index 0000000..6ea0bf2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/de/20d72b1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/de/804d931498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/de/804d931498af001c18c4935e001381da new file mode 100644 index 0000000..32f4b58 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/de/804d931498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/de/a00af45401af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/de/a00af45401af001c14499bdcdfff58b3 new file mode 100644 index 0000000..0d76359 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/de/a00af45401af001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n" + connection.toString(); + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/df/a079c11e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/df/a079c11e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..5b16298 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/df/a079c11e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Intern\u00e1 chyba + +ORA-17002=Vstupno-v\u00fdstupn\u00e1 chyba + +ORA-17003=Neplatn\u00fd index st\u013apca + +ORA-17004=Neplatn\u00fd typ st\u013apca + +ORA-17005=Nepodporovan\u00fd typ st\u013apca + +ORA-17006=Neplatn\u00fd n\u00e1zov st\u013apca + +ORA-17007=Neplatn\u00fd dynamick\u00fd st\u013apec + +ORA-17008=Uzatvoren\u00e9 spojenie + +ORA-17009=Uzatvoren\u00fd pr\u00edkaz + +ORA-17010=Uzatvoren\u00fd Resultset + +ORA-17011=Vy\u010derpan\u00fd Resultset + +ORA-17012=Konflikt typov parametrov + +ORA-17014=ResultSet.next nebolo volan\u00e9 + +ORA-17015=Pr\u00edkaz bol zru\u0161en\u00fd + +ORA-17016=\u010casov\u00fd limit pr\u00edkazu uplynul + +ORA-17017=Kurzor je u\u017e iniciovan\u00fd + +ORA-17018=Neplatn\u00fd kurzor + +ORA-17019=Op\u00edsa\u0165 mo\u017eno iba dopyt + +ORA-17020=Neplatn\u00e9 predbe\u017en\u00e9 vyvolanie riadka + +ORA-17021=Ch\u00fdba defines + +ORA-17022=Ch\u00fdba defines pri indexe + +ORA-17023=Nepodporovan\u00e1 vlastnos\u0165 + +ORA-17024=Nena\u010d\u00edtali sa \u017eiadne d\u00e1ta + +ORA-17025=Chyba v defines.isNull () + +ORA-17026=Numerick\u00e9 prete\u010denie + +ORA-17027=Tok je u\u017e zatvoren\u00fd + +ORA-17028=Nemo\u017eno robi\u0165 nov\u00e9 defines, k\u00fdm nebude aktu\u00e1lny ResultSet zatvoren\u00fd + +ORA-17029=setReadOnly: Spojenia len na \u010d\u00edtanie nie s\u00fa podporovan\u00e9 + +ORA-17030=READ_COMMITTED a SERIALIZABLE s\u00fa jedin\u00e9 platn\u00e9 transak\u010dn\u00e9 \u00farovne + +ORA-17031=setAutoClose: Podpora len pre zapnut\u00fd re\u017eim auto close + +ORA-17032=nemo\u017eno nastavi\u0165 predbe\u017en\u00e9 vyvolanie riadkov na nulu + +ORA-17033=Deformovan\u00fd re\u0165azec SQL92 na poz\u00edcii + +ORA-17034=Nepodporovan\u00fd token SQL92 na poz\u00edcii + +ORA-17035=Nepodporovan\u00e1 znakov\u00e1 mno\u017eina + +ORA-17036=v\u00fdnimka v OracleNumber + +ORA-17037=Zlyhanie konverzie medzi UTF8 a UCS2 + +ORA-17038=Bajtov\u00e9 pole nie je dos\u0165 dlh\u00e9 + +ORA-17039=Znakov\u00e9 pole nie je dos\u0165 dlh\u00e9 + +ORA-17040=V pripojovacom URL mus\u00ed by\u0165 \u0161pecifikovan\u00fd podprotokol + +ORA-17041=Ch\u00fdba parameter IN alebo OUT pri indexe: + +ORA-17042=Neplatn\u00e1 hodnota d\u00e1vky + +ORA-17043=Neplatn\u00e1 maxim\u00e1lna ve\u013ekos\u0165 toku + +ORA-17044=Intern\u00e1 chyba: D\u00e1tov\u00e9 pole nealokovan\u00e9 + +ORA-17045=Intern\u00e1 chyba: Pokus o pr\u00edstup k v\u00e4zobn\u00fdm hodnot\u00e1m prekra\u010duj\u00facim hodnotu d\u00e1vky + +ORA-17046=Intern\u00e1 chyba: Neplatn\u00fd index pre pr\u00edstup k d\u00e1tam + +ORA-17047=Chyba v syntaktickej anal\u00fdze typov\u00e9ho deskriptora + +ORA-17048=Nedefinovan\u00fd typ + +ORA-17049=Nekonzistentn\u00e9 typy java a sql objektov + +ORA-17050=tento prvok vo vektore neexistuje + +ORA-17051=Toto API nemo\u017eno pou\u017ei\u0165 pre nie-UDT typy + +ORA-17052=Tento odkaz je neplatn\u00fd + +ORA-17053=Ve\u013ekos\u0165 je neplatn\u00e1 + +ORA-17054=Lok\u00e1tor LOB nie je platn\u00fd + +ORA-17055=Neplatn\u00fd znak n\u00e1jden\u00fd v + +ORA-17056=Nepodporovan\u00e1 znakov\u00e1 mno\u017eina + +ORA-17057=Uzavret\u00fd LOB + +ORA-17058=Intern\u00e1 chyba: Neplatn\u00fd pomer konverzie NLS + +ORA-17059=Nepodarilo sa konvertova\u0165 na intern\u00fa reprezent\u00e1ciu + +ORA-17060=Nepodarilo sa skon\u0161truova\u0165 deskriptor + +ORA-17061=Ch\u00fdba deskriptor + +ORA-17062=Referen\u010dn\u00fd kurzor je neplatn\u00fd + +ORA-17063=Nie je v transakcii + +ORA-17064=Neplatn\u00e1 syntax alebo n\u00e1zov datab\u00e1zy je pr\u00e1zdny + +ORA-17065=Trieda konverzie je nulov\u00e1 + +ORA-17066=Je potrebn\u00e1 implement\u00e1cia \u0161pecifick\u00e1 pre pr\u00edstupov\u00fa vrstvu + +ORA-17067=\u0160pecifikovan\u00e9 neplatn\u00e9 Oracle URL + +ORA-17068=Neplatn\u00e9 argumenty vo volan\u00ed + +ORA-17069=Pou\u017eite explicitn\u00e9 XA volanie + +ORA-17070=Ve\u013ekos\u0165 d\u00e1t v\u00e4\u010d\u0161ia ako maxim\u00e1lna ve\u013ekos\u0165 pre tento typ + +ORA-17071=Prekro\u010den\u00fd maxim\u00e1lny limit VARRAY + +ORA-17072=Vlo\u017een\u00e1 hodnota je prive\u013ek\u00e1 pre st\u013apec + +ORA-17073=Logick\u00e1 rukov\u00e4\u0165 u\u017e nie je platn\u00e1 + +ORA-17074=neplatn\u00fd vzor n\u00e1zvu + +ORA-17075=Neplatn\u00e1 oper\u00e1cia pre resultset iba na odoslanie \u010falej + +ORA-17076=Neplatn\u00e1 oper\u00e1cia pre resultset iba na \u010d\u00edtanie + +ORA-17077=Zlyhanie pri nastavovan\u00ed hodnoty REF + +ORA-17078=Nemo\u017eno uskuto\u010dni\u0165 oper\u00e1ciu, lebo s\u00fa u\u017e otvoren\u00e9 spojenia + +ORA-17079=Doklady pou\u017e\u00edvate\u013ea sa nezhoduj\u00fa s existuj\u00facimi + +ORA-17080=neplatn\u00fd d\u00e1vkov\u00fd pr\u00edkaz + +ORA-17081=po\u010das d\u00e1vkovania do\u0161lo k chybe + +ORA-17082=\u017diadny aktu\u00e1lny riadok + +ORA-17083=Nie je na vlo\u017eenom riadku + +ORA-17084=Volan\u00e9 na vlo\u017eenom riadku + +ORA-17085=Vyskytuj\u00fa sa konflikty hodn\u00f4t + +ORA-17086=Nedefinovan\u00e1 hodnota st\u013apca na vlo\u017eenom riadku + +ORA-17087=Ignorovan\u00fd pokyn na zv\u00fd\u0161enie v\u00fdkonnosti: setFetchDirection() + +ORA-17088=Nepodporovan\u00e1 syntax pre po\u017eadovan\u00fd typ resultsetu a \u00farove\u0148 s\u00fabe\u017enosti +ORA-17089=intern\u00e1 chyba + +ORA-17090=oper\u00e1cia nepovolen\u00e1 + +ORA-17091=Nemo\u017eno vytvori\u0165 resultset na po\u017eadovanej \u00farovni typu a/alebo s\u00fabe\u017enosti + +ORA-17092=Pr\u00edkazy JDBC nemo\u017eno vytv\u00e1ra\u0165 alebo vykon\u00e1va\u0165 na konci spracovania volania + +ORA-17093=Oper\u00e1cia OCI vr\u00e1tila OCI_SUCCESS_WITH_INFO + +ORA-17094=Nezhoda verzie typu objektu + +ORA-17095=Ve\u013ekos\u0165 cache pr\u00edkazov nie je nastaven\u00e1 + +ORA-17096=Pre toto logick\u00e9 spojenie nemo\u017eno aktivova\u0165 cacheovanie pr\u00edkazov. + +ORA-17097=Neplatn\u00fd typ prvku indexovej tabu\u013eky PL/SQL + +ORA-17098=Neplatn\u00e1 oper\u00e1cia s pr\u00e1zdnym ve\u013ek\u00fdm objektom + +ORA-17099=Neplatn\u00e1 d\u013a\u017eka po\u013ea tabu\u013eky indexu PL/SQL + +ORA-17100=Neplatn\u00fd datab\u00e1zov\u00fd objekt Java + +ORA-17101=Neplatn\u00e9 vlastnosti v objekte spolo\u010dnej oblasti spojenia OCI + +ORA-17102=Bfile je len na \u010d\u00edtanie + +ORA-17103=neplatn\u00fd typ spojenia na n\u00e1vrat cez getConnection. Pou\u017eite namiesto neho getJavaSqlConnection + +ORA-17104=Pr\u00edkaz SQL na vykonanie nem\u00f4\u017ee by\u0165 pr\u00e1zdny alebo nulov\u00fd + +ORA-17105=\u010dasov\u00e1 z\u00f3na rel\u00e1cie spojenia nebola nastaven\u00e1 + +ORA-17106=\u0161pecifikovan\u00e1 neplatn\u00e1 konfigur\u00e1cia spolo\u010dnej oblasti pripojen\u00ed ovl\u00e1da\u010dov JDBC-OCI + +ORA-17107=zadan\u00fd neplatn\u00fd typ proxy + +ORA-17108=V defineColumnType nie je uveden\u00e1 maxim\u00e1lna d\u013a\u017eka + +ORA-17109=nena\u0161lo sa \u0161tandardn\u00e9 k\u00f3dovanie znakov Java + +ORA-17110=vykonanie dokon\u010den\u00e9 s upozornen\u00edm + +ORA-17111=Zadan\u00fd neplatn\u00fd \u010dasov\u00fd limit TTL cache pripojenia + +ORA-17112=Zadan\u00fd neplatn\u00fd interval pre thread + +ORA-17113=Hodnota intervalu pre thread je vy\u0161\u0161ia ako hodnota \u010dasov\u00e9ho limitu cache + +ORA-17114=nebolo mo\u017en\u00e9 pou\u017ei\u0165 lok\u00e1lne potvrdenie transakcie v glob\u00e1lnej transakcii + +ORA-17115=nebolo mo\u017en\u00e9 pou\u017ei\u0165 lok\u00e1lny rollback transakcie v glob\u00e1lnej transakcii + +ORA-17116=nebolo mo\u017en\u00e9 zapn\u00fa\u0165 automatick\u00e9 potvrdzovanie v akt\u00edvnej glob\u00e1lnej transakcii + +ORA-17117=nebolo mo\u017en\u00e9 nastavi\u0165 bod n\u00e1vratu v akt\u00edvnej glob\u00e1lnej transakcii + +ORA-17118=nebolo mo\u017en\u00e9 z\u00edska\u0165 ID pre pomenovan\u00fd bod n\u00e1vratu + +ORA-17119=nebolo mo\u017en\u00e9 z\u00edska\u0165 n\u00e1zov pre nepomenovan\u00fd bod n\u00e1vratu + +ORA-17120=nebolo mo\u017en\u00e9 nastavi\u0165 bod n\u00e1vratu so zapnut\u00fdm automatick\u00fdm potvrdzovan\u00edm + +ORA-17121=nebolo mo\u017en\u00e9 vykona\u0165 rollback na bod n\u00e1vratu so zapnut\u00fdm automatick\u00fdm potvrdzovan\u00edm + +ORA-17122=nebolo mo\u017en\u00e9 vykona\u0165 rollback na lok\u00e1lny bod n\u00e1vratu transakcie v glob\u00e1lnej transakcii + +ORA-17123=Zadan\u00e1 neplatn\u00e1 ve\u013ekos\u0165 cache pr\u00edkazov + +ORA-17124=Zadan\u00fd neplatn\u00fd \u010dasov\u00fd limit inaktivity cache pripojenia + +ORA-17200=Nie je mo\u017en\u00e9 spr\u00e1vne skonvertova\u0165 re\u0165azec XA open z Java do C + +ORA-17201=Nie je mo\u017en\u00e9 spr\u00e1vne skonvertova\u0165 re\u0165azec XA close z Java do C + +ORA-17202=Nie je mo\u017en\u00e9 spr\u00e1vne skonvertova\u0165 n\u00e1zov RM z Java do C + +ORA-17203=Nie je mo\u017en\u00e9 previes\u0165 typ smern\u00edka na jlong + +ORA-17204=Vstupn\u00e9 pole je prikr\u00e1tke na obsiahnutie rukov\u00e4t\u00ed OCI + +ORA-17205=Zlyhanie pri z\u00edskavan\u00ed rukov\u00e4te OCISvcCtx z C-XA pomocou xaoSvcCtx + +ORA-17206=Zlyhanie pri z\u00edskavan\u00ed rukov\u00e4te OCIEnv z C-XA pomocou xaoEnv + +ORA-17207=Vlastnos\u0165 tnsEntry nebola nastaven\u00e1 v DataSource + +ORA-17213=C-XA vr\u00e1tilo XAER_RMERR po\u010das xa_open + +ORA-17215=C-XA vr\u00e1tilo XAER_INVAL po\u010das xa_open + +ORA-17216=C-XA vr\u00e1tilo XAER_PROTO po\u010das xa_open + +ORA-17233=C-XA vr\u00e1tilo XAER_RMERR po\u010das xa_close + +ORA-17235=C-XA vr\u00e1tilo XAER_INVAL po\u010das xa_close + +ORA-17236=C-XA vr\u00e1tilo XAER_PROTO po\u010das xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Poru\u0161enie protokolu + +ORA-17402=O\u010dak\u00e1va sa iba jedna spr\u00e1va RPA + +ORA-17403=O\u010dak\u00e1va sa iba jedna spr\u00e1va RXH + +ORA-17404=Prijat\u00fdch viac RXD, ako sa o\u010dak\u00e1valo + +ORA-17405=D\u013a\u017eka UAC nie je nulov\u00e1 + +ORA-17406=Prekro\u010denie maxim\u00e1lnej d\u013a\u017eky buffra + +ORA-17407=neplatn\u00e1 typov\u00e1 reprezent\u00e1cia (setRep) + +ORA-17408=neplatn\u00e1 typov\u00e1 reprezent\u00e1cia (getRep) + +ORA-17409=neplatn\u00e1 d\u013a\u017eka buffra + +ORA-17410=V sokete u\u017e nie s\u00fa \u010fal\u0161ie d\u00e1ta na \u010d\u00edtanie + +ORA-17411=Nezhoda reprezent\u00e1ci\u00ed d\u00e1tov\u00e9ho typu + +ORA-17412=Typov\u00e1 d\u013a\u017eka v\u00e4\u010d\u0161ia ako maximum + +ORA-17413=Prekro\u010denie ve\u013ekosti k\u013e\u00fa\u010da + +ORA-17414=Nedostato\u010dn\u00e1 ve\u013ekos\u0165 buffra na ulo\u017eenie n\u00e1zvov st\u013apcov + +ORA-17415=Tento typ nie je o\u0161etren\u00fd + +ORA-17416=FATAL + +ORA-17417=Probl\u00e9m NLS, nepodarilo sa dek\u00f3dova\u0165 n\u00e1zvy st\u013apcov + +ORA-17418=Chyba d\u013a\u017eky po\u013ea internej \u0161trukt\u00fary + +ORA-17419=Vr\u00e1ten\u00fd neplatn\u00fd po\u010det st\u013apcov + +ORA-17420=Nedefinovan\u00e1 verzia Oracle + +ORA-17421=Nedefinovan\u00e9 typy alebo spojenie + +ORA-17422=Neplatn\u00e1 trieda vo factory + +ORA-17423=Pou\u017eitie bloku PLSQL bez definovania IOV + +ORA-17424=Pokus o in\u00fa oper\u00e1ciu radenia + +ORA-17425=Vr\u00e1tenie toku v bloku PLSQL + +ORA-17426=V\u00e4zby IN aj OUT s\u00fa NULL + +ORA-17427=Pou\u017eitie neiniciovan\u00e9ho OAC + +ORA-17428=Logon treba vola\u0165 po connect + +ORA-17429=Treba ma\u0165 aspo\u0148 spojenie na server + +ORA-17430=Treba by\u0165 prihl\u00e1sen\u00fd na server + +ORA-17431=Pr\u00edkaz SQL na syntaktick\u00fa anal\u00fdzu je pr\u00e1zdny + +ORA-17432=neplatn\u00e9 vo\u013eby v all7 + +ORA-17433=neplatn\u00e9 argumenty vo volan\u00ed + +ORA-17434=nie je v tokovom re\u017eime + +ORA-17435=neplatn\u00fd po\u010det in_out_binds v IOV + +ORA-17436=neplatn\u00fd po\u010det outbinds + +ORA-17437=Chyba v IN/OUT argumentoch bloku PLSQL + +ORA-17438=Intern\u00e1 - neo\u010dak\u00e1van\u00e1 hodnota + +ORA-17439=Neplatn\u00fd typ SQL + +ORA-17440=DBItem/DBType je pr\u00e1zdny + +ORA-17441=Verzia Oracle nepodporovan\u00e1. Minim\u00e1lna podporovan\u00e1 verzia je 7.2.3. + +ORA-17442=Hodnota Refcursor je neplatn\u00e1 + +ORA-17443=Pr\u00e1zdny pou\u017e\u00edvate\u013e alebo heslo nepodporovan\u00e9 u THIN ovl\u00e1da\u010da + +ORA-17444=Verzia protokolu TTC prijat\u00e1 zo servera nie je podporovan\u00e1 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/df/f0a183e879a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/df/f0a183e879a9001c1d3abf97745a02da new file mode 100644 index 0000000..721dfaf --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/df/f0a183e879a9001c1d3abf97745a02da @@ -0,0 +1,102 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JPasswordField jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/df/f0efe41498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/df/f0efe41498af001c18c4935e001381da new file mode 100644 index 0000000..323e043 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/df/f0efe41498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e/00cabb41c9a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e/00cabb41c9a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..9b78515 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e/00cabb41c9a4001c1acc9f54b60f9b57 @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e0/003e9a0e4faa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e0/003e9a0e4faa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..06f10ed --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e0/003e9a0e4faa001c10fbbbdbedbe1ee6 @@ -0,0 +1,152 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private IHMPrincipale pr; + + // Cration de la classe permettant la connexion la base de donnes + private Connexion connexionBDD; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public IHMConnexion(IHMPrincipale pr) { + + this.pr = pr; + + + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + // Affichage du message de configurmation + this.pr.confirmationConnexion("Mon serveur"); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e0/50d492f1fca3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e0/50d492f1fca3001c1027e59cc3e35e89 new file mode 100644 index 0000000..bd1f5ea --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e0/50d492f1fca3001c1027e59cc3e35e89 @@ -0,0 +1,43 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + Connection conn = new Connection(null); + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection conn = new Connection(DriverManager.getConnection(url, identifiant, mdp)); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e1/202d78814eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e1/202d78814eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..53dd6f3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e1/202d78814eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void confirmationConnexion(String chaine){ + int resultatConfirmation; + resultatConfirmation = JOptionPane.showConfirmDialog(null, chaine.toString(), "Confirmation" ,JOptionPane.YES_NO_OPTION); + if(resultatConfirmation == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e1/a00948dc08af001c1040fa160adcae78 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e1/a00948dc08af001c1040fa160adcae78 new file mode 100644 index 0000000..577a1c5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e1/a00948dc08af001c1040fa160adcae78 @@ -0,0 +1,157 @@ +package fr.blankoworld.connexionBDD; + +import java.awt.List; +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + DatabaseMetaData metaData; + List listTables = new List(10); + + metaData = connection.getMetaData(); + String[] types = { "TABLE", "VIEW" }; + ResultSet rs = metaData.getTables( null, null, "%", types ); + String nomTable; + while ( rs.next() ) { + nomTable = rs.getString( 3 ); + listTables.add( nomTable ); + System.out.print(nomTable); + } + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e2/30e679e44daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e2/30e679e44daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..25b5dc2 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e2/30e679e44daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void confirmationConnexion(String chaine){ + int resultatConfirmation; + resultatConfirmation = JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + if(resultatConfirmation == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e3/40ae4e1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e3/40ae4e1598af001c18c4935e001381da new file mode 100644 index 0000000..9b28e27 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e3/40ae4e1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/003d2c1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/003d2c1698af001c18c4935e001381da new file mode 100644 index 0000000..d27bfad Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/003d2c1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/7010731398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/7010731398af001c18c4935e001381da new file mode 100644 index 0000000..bda7e2b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/7010731398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/b03bec347fa9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/b03bec347fa9001c1d3abf97745a02da new file mode 100644 index 0000000..a89be39 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/b03bec347fa9001c1d3abf97745a02da @@ -0,0 +1,77 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/b0576c1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/b0576c1a98af001c18c4935e001381da new file mode 100644 index 0000000..7b19099 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/b0576c1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/c0c2430381a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/c0c2430381a9001c1d3abf97745a02da new file mode 100644 index 0000000..1cfbf99 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/c0c2430381a9001c1d3abf97745a02da @@ -0,0 +1,131 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "Blankuissance4\n\n" + + "Version 0.5\n" + + "Developpe par Blankoworld\n\n", + "A propos de Blankuissance4", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/f047f75bc4a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/f047f75bc4a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..4a7d252 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/f047f75bc4a4001c1acc9f54b60f9b57 @@ -0,0 +1,47 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel(); + JLabel jlabelPort = new JLabel(); + JLabel jlabelBase = new JLabel(); + JLabel jlabelIdentifiant = new JLabel(); + JLabel jlabelMdp = new JLabel(); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des panneaux la fentre + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/f0ee3c1105a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/f0ee3c1105a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..e6b9b5b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e4/f0ee3c1105a4001c1027e59cc3e35e89 @@ -0,0 +1,75 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + resultat.isBeforeFirst(); + resultat.next(); + + System.out.println(resultat.toString()); + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.toString()); + + while(resultat.next()){ + //traitement des autres lignes + //System.out.println(resultat.toString()); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/10f41a1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/10f41a1598af001c18c4935e001381da new file mode 100644 index 0000000..8030da7 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/10f41a1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/700c201a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/700c201a98af001c18c4935e001381da new file mode 100644 index 0000000..ffddaa4 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/700c201a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/90f1871698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/90f1871698af001c18c4935e001381da new file mode 100644 index 0000000..128c0ba Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/90f1871698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/d07f8af920af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/d07f8af920af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..c9eb2d7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/d07f8af920af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u5167\u90e8\u932f\u8aa4 + +ORA-17002=IO \u7570\u5e38 + +ORA-17003=\u4e0d\u6b63\u78ba\u7684\u8cc7\u6599\u6b04\u7d22\u5f15 + +ORA-17004=\u8cc7\u6599\u6b04\u985e\u578b\u7121\u6548 + +ORA-17005=\u4e0d\u652f\u63f4\u7684\u8cc7\u6599\u6b04\u985e\u578b + +ORA-17006=\u4e0d\u6b63\u78ba\u7684\u8cc7\u6599\u6b04\u540d\u7a31 + +ORA-17007=\u4e0d\u6b63\u78ba\u7684\u52d5\u614b\u8cc7\u6599\u6b04 + +ORA-17008=\u95dc\u9589\u7684\u9023\u7dda + +ORA-17009=\u95dc\u9589\u7684\u6558\u8ff0\u53e5 + +ORA-17010=\u95dc\u9589\u7684\u7d50\u679c\u96c6 + +ORA-17011=\u8017\u640d\u7684\u7d50\u679c\u96c6 + +ORA-17012=\u53c3\u6578\u985e\u578b\u885d\u7a81 + +ORA-17014=\u672a\u547c\u53eb ResultSet.next + +ORA-17015=\u5df2\u53d6\u6d88\u6558\u8ff0\u53e5 + +ORA-17016=\u6558\u8ff0\u53e5\u903e\u6642 + +ORA-17017=\u5df2\u521d\u59cb\u5316\u6e38\u6a19 + +ORA-17018=\u4e0d\u6b63\u78ba\u7684\u6e38\u6a19 + +ORA-17019=\u53ea\u80fd\u63cf\u8ff0\u67e5\u8a62 + +ORA-17020=\u4e0d\u6b63\u78ba\u7684\u9810\u5148\u8cc7\u6599\u5217\u64f7\u53d6 + +ORA-17021=\u5b9a\u7fa9\u907a\u5931 + +ORA-17022=\u907a\u5931\u7d22\u5f15\u5b9a\u7fa9 + +ORA-17023=\u4e0d\u652f\u63f4\u7684\u529f\u80fd + +ORA-17024=\u7121\u8b80\u53d6\u8cc7\u6599 + +ORA-17025=defines.isNull () \u4e2d\u767c\u751f\u932f\u8aa4 + +ORA-17026=\u6578\u503c\u6ea2\u4f4d + +ORA-17027=\u4e32\u6d41\u5df2\u95dc\u9589 + +ORA-17028=\u5728\u76ee\u524d\u7684\u7d50\u679c\u96c6\u95dc\u9589\u4e4b\u524d, \u7121\u6cd5\u9032\u884c\u65b0\u5b9a\u7fa9 + +ORA-17029=setReadOnly: \u4e0d\u652f\u63f4\u552f\u8b80\u9023\u7dda + +ORA-17030=READ_COMMITTED \u548c SERIALIZABLE \u662f\u552f\u4e00\u6709\u6548\u7684\u4ea4\u6613\u5c64\u6b21 + +ORA-17031=setAutoClose: \u53ea\u652f\u63f4\u81ea\u52d5\u95dc\u9589\u6a21\u5f0f\u958b\u555f + +ORA-17032=\u7121\u6cd5\u5c07\u9810\u5148\u64f7\u53d6\u7684\u8cc7\u6599\u5217\u8a2d\u5b9a\u70ba\u96f6 + +ORA-17033=\u8b8a\u5f62 SQL92 \u5b57\u4e32\u7684\u4f4d\u7f6e + +ORA-17034=\u672a\u652f\u63f4 SQL92 \u7b26\u865f\u7684\u4f4d\u7f6e + +ORA-17035=\u4e0d\u652f\u63f4\u7684\u5b57\u5143\u96c6 !! + +ORA-17036=\u7570\u5e38 OracleNumber + +ORA-17037=\u7121\u6cd5\u8f49\u63db UTF8 \u548c UCS2 + +ORA-17038=\u4f4d\u5143\u7d44\u9663\u5217\u9577\u5ea6\u4e0d\u8db3 + +ORA-17039=\u5b57\u5143\u9663\u5217\u9577\u5ea6\u4e0d\u8db3 + +ORA-17040=\u9023\u7dda URL \u4e2d \u5fc5\u9808\u6307\u5b9a\u6b21\u5354\u5b9a + +ORA-17041=\u907a\u5931 IN \u6216 OUT \u53c3\u6578, \u6240\u5728\u7d22\u5f15: + +ORA-17042=\u4e0d\u6b63\u78ba\u7684\u6279\u6b21\u503c + +ORA-17043=\u4e0d\u6b63\u78ba\u7684\u6700\u5927\u4e32\u6d41\u5927\u5c0f + +ORA-17044=\u5167\u90e8\u932f\u8aa4: \u672a\u914d\u7f6e\u8cc7\u6599\u9663\u5217 + +ORA-17045=\u5167\u90e8\u932f\u8aa4: \u5617\u8a66\u5b58\u53d6\u6279\u6b21\u503c\u4e4b\u5f8c\u7684\u9023\u7d50\u503c + +ORA-17046=\u5167\u90e8\u932f\u8aa4: \u4e0d\u6b63\u78ba\u7684\u8cc7\u6599\u5b58\u53d6\u7d22\u5f15 + +ORA-17047=\u985e\u578b\u63cf\u8ff0\u5340\u5256\u6790\u767c\u751f\u932f\u8aa4 + +ORA-17048=\u672a\u5b9a\u7fa9\u7684\u985e\u578b + +ORA-17049=\u4e0d\u4e00\u81f4\u7684 java \u548c sql \u7269\u4ef6\u985e\u578b + +ORA-17050=\u5411\u91cf\u4e2d\u7121\u6b64\u5143\u7d20 + +ORA-17051=API \u7121\u6cd5\u7528\u65bc\u975e UDT \u985e\u578b + +ORA-17052=\u6b64\u53c3\u8003\u4e0d\u6b63\u78ba + +ORA-17053=\u6b64\u5927\u5c0f\u4e0d\u6b63\u78ba + +ORA-17054=LOB \u5b9a\u4f4d\u5668\u4e0d\u6b63\u78ba + +ORA-17055=\u4e0d\u6b63\u78ba\u7684\u5b57\u5143\u767c\u751f\u4f4d\u7f6e + +ORA-17056=\u4e0d\u652f\u63f4\u7684\u5b57\u5143\u96c6 + +ORA-17057=\u95dc\u9589\u7684 LOB + +ORA-17058=\u5167\u90e8\u932f\u8aa4: \u4e0d\u6b63\u78ba\u7684 NLS \u8f49\u63db\u7387 + +ORA-17059=\u7121\u6cd5\u8f49\u63db\u70ba\u5167\u90e8\u65b9\u5f0f + +ORA-17060=\u7121\u6cd5\u5efa\u69cb\u63cf\u8ff0\u5340 + +ORA-17061=\u907a\u6f0f\u8ff0\u5340 + +ORA-17062=\u4e0d\u6b63\u78ba\u7684\u53c3\u8003\u6e38\u6a19 + +ORA-17063=\u4e0d\u5728\u7570\u52d5\u4e2d + +ORA-17064=\u4e0d\u6b63\u78ba\u7684\u8a9e\u6cd5\u6216\u8cc7\u6599\u5eab\u540d\u7a31\u70ba\u7a7a\u503c + +ORA-17065=\u8f49\u63db\u985e\u5225\u70ba\u7a7a\u503c + +ORA-17066=\u9700\u8981\u5b58\u53d6\u5c64\u7279\u5b9a\u5be6\u65bd\u57f7\u884c + +ORA-17067=\u6240\u6307\u5b9a\u7684 Oracle URL \u4e0d\u6b63\u78ba + +ORA-17068=\u547c\u53eb\u53c3\u6578\u7121\u6548 + +ORA-17069=\u4f7f\u7528\u5916\u986f XA \u547c\u53eb + +ORA-17070=\u8cc7\u6599\u5927\u5c0f\u5927\u65bc\u6b64\u985e\u578b\u7684\u6700\u5927\u5927\u5c0f + +ORA-17071=\u8d85\u904e VARRAY \u7684\u6700\u5927\u9650\u5236 + +ORA-17072=\u8cc7\u6599\u6b04\u7684\u63d2\u5165\u503c\u592a\u5927 + +ORA-17073=\u908f\u8f2f\u8655\u7406\u4e0d\u6b63\u78ba + +ORA-17074=\u4e0d\u6b63\u78ba\u7684\u540d\u7a31\u683c\u5f0f + +ORA-17075=\u4e0d\u6b63\u78ba\u7684\u50c5\u8f49\u9001\u7d50\u679c\u96c6\u4f5c\u696d + +ORA-17076=\u4e0d\u6b63\u78ba\u7684\u552f\u8b80\u7d50\u679c\u96c6\u4f5c\u696d + +ORA-17077=\u7121\u6cd5\u8a2d\u5b9a REF \u503c + +ORA-17078=\u7576\u5df2\u958b\u555f\u9023\u7dda\u6642\u7121\u6cd5\u57f7\u884c\u6b64\u4f5c\u696d + +ORA-17079=\u4f7f\u7528\u8005\u8b49\u660e\u8207\u73fe\u6709\u7684\u4e0d\u7b26 + +ORA-17080=\u4e0d\u6b63\u78ba\u7684\u6279\u6b21\u547d\u4ee4 + +ORA-17081=\u6279\u6b21\u4f5c\u696d\u6642\u767c\u751f\u932f\u8aa4 + +ORA-17082=\u7121\u76ee\u524d\u8cc7\u6599\u5217 + +ORA-17083=\u4e0d\u5728\u6b64\u63d2\u5165\u8cc7\u6599\u5217\u4e2d + +ORA-17084=\u547c\u53eb\u65bc\u6b64\u63d2\u5165\u8cc7\u6599\u5217 + +ORA-17085=\u767c\u751f\u885d\u7a81\u503c + +ORA-17086=\u5728\u63d2\u5165\u8cc7\u6599\u5217\u4e2d\u767c\u751f\u672a\u5b9a\u7fa9\u7684\u8cc7\u6599\u6b04\u503c + +ORA-17087=\u5ffd\u7565\u6548\u7387\u6697\u793a: setFetchDirection() + +ORA-17088=\u672a\u652f\u63f4\u7684\u8981\u6c42\u7d50\u679c\u96c6\u985e\u578b\u548c\u4e26\u884c\u5c64\u6b21\u8a9e\u6cd5 +ORA-17089=\u5167\u90e8\u932f\u8aa4 + +ORA-17090=\u4e0d\u5141\u8a31\u6b64\u4f5c\u696d + +ORA-17091=\u7121\u6cd5\u5728\u8981\u6c42\u7684\u985e\u578b\u548c(\u6216)\u4e26\u884c\u5c64\u6b21\u5efa\u7acb\u7d50\u679c\u96c6 + +ORA-17092=JDBC \u6558\u8ff0\u53e5\u7121\u6cd5\u5728\u547c\u53eb\u8655\u7406\u7d50\u675f\u6642\u5efa\u7acb\u6216\u57f7\u884c + +ORA-17093=OCI \u4f5c\u696d\u50b3\u56de OCI_SUCCESS_WITH_INFO + +ORA-17094=\u7269\u4ef6\u985e\u578b\u7248\u672c\u4e0d\u7b26\u5408 + +ORA-17095=\u5c1a\u672a\u8a2d\u5b9a\u6558\u8ff0\u53e5\u5feb\u53d6\u5927\u5c0f + +ORA-17096=\u7121\u6cd5\u555f\u7528\u6b64\u908f\u8f2f\u9023\u7dda\u7684\u6558\u8ff0\u53e5\u5feb\u53d6. + +ORA-17097=PL/SQL \u7d22\u5f15\u8868\u683c\u5143\u7d20\u985e\u578b\u7121\u6548 + +ORA-17098=\u7a7a\u7684 lob \u4f5c\u696d\u7121\u6548 + +ORA-17099=PL/SQL \u7d22\u5f15\u8868\u683c\u9663\u5217\u9577\u5ea6\u7121\u6548 + +ORA-17100=\u8cc7\u6599\u5eab Java \u7269\u4ef6\u7121\u6548 + +ORA-17101=OCI \u9023\u7dda\u5340\u7269\u4ef6\u7684\u5c6c\u6027\u7121\u6548 + +ORA-17102=Bfile \u662f\u552f\u8b80\u7684 + +ORA-17103=getConnection \u50b3\u56de\u7684\u9023\u7dda\u985e\u578b\u7121\u6548. \u8acb\u4f7f\u7528 getJavaSqlConnection + +ORA-17104=\u8981\u57f7\u884c\u7684 SQL \u6558\u8ff0\u53e5\u4e0d\u80fd\u662f\u7a7a\u7684\u6216\u7a7a\u503c + +ORA-17105=\u672a\u8a2d\u5b9a\u9023\u7dda\u968e\u6bb5\u4f5c\u696d\u6642\u9593\u5340 + +ORA-17106=\u6307\u5b9a\u7684 JDBC-OCI \u9a45\u52d5\u7a0b\u5f0f\u9023\u7dda\u96c6\u5340\u7d44\u614b\u7121\u6548 + +ORA-17107=\u6307\u5b9a\u7684\u4ee3\u7406\u4e3b\u6a5f\u985e\u578b\u7121\u6548 + +ORA-17108=defineColumnType \u4e26\u672a\u6307\u5b9a\u9577\u5ea6\u4e0a\u9650 + +ORA-17109=\u627e\u4e0d\u5230\u6a19\u6e96\u7684 Java \u5b57\u5143\u7de8\u78bc + +ORA-17110=\u5b8c\u6210\u57f7\u884c, \u4f46\u6709\u8b66\u544a + +ORA-17111=\u6307\u5b9a\u7684\u9023\u7dda\u5feb\u53d6 TTL \u903e\u6642\u7121\u6548 + +ORA-17112=\u6307\u5b9a\u7684\u7e6b\u7dda\u9593\u9694\u7121\u6548 + +ORA-17113=\u7e6b\u7dda\u9593\u9694\u503c\u5927\u65bc\u5feb\u53d6\u903e\u6642\u503c + +ORA-17114=\u7121\u6cd5\u5728\u5168\u57df\u4ea4\u6613\u4e2d\u4f7f\u7528\u5340\u57df\u4ea4\u6613\u78ba\u8a8d + +ORA-17115=\u7121\u6cd5\u5728\u5168\u57df\u4ea4\u6613\u4e2d\u4f7f\u7528\u5340\u57df\u4ea4\u6613\u5012\u56de + +ORA-17116=\u7121\u6cd5\u958b\u555f\u4f5c\u7528\u4e2d\u5168\u57df\u4ea4\u6613\u7684\u81ea\u52d5\u78ba\u8a8d + +ORA-17117=\u7121\u6cd5\u8a2d\u5b9a\u4f5c\u7528\u4e2d\u5168\u57df\u4ea4\u6613\u7684\u5132\u5b58\u9ede + +ORA-17118=\u7121\u6cd5\u53d6\u5f97\u6307\u5b9a\u4e4b\u300c\u5132\u5b58\u9ede\u300d\u7684 ID + +ORA-17119=\u7121\u6cd5\u53d6\u5f97\u672a\u6307\u5b9a\u4e4b\u300c\u5132\u5b58\u9ede\u300d\u7684\u540d\u7a31 + +ORA-17120=\u7121\u6cd5\u8a2d\u5b9a\u5df2\u958b\u555f\u81ea\u52d5\u78ba\u8a8d\u7684\u300c\u5132\u5b58\u9ede\u300d + +ORA-17121=\u7121\u6cd5\u5012\u56de\u81f3\u5df2\u958b\u555f\u81ea\u52d5\u78ba\u8a8d\u7684\u300c\u5132\u5b58\u9ede\u300d + +ORA-17122=\u7121\u6cd5\u5012\u56de\u81f3\u5168\u57df\u4ea4\u6613\u7684\u5340\u57df txn\u300c\u5132\u5b58\u9ede\u300d + +ORA-17123=\u6307\u5b9a\u7684\u6558\u8ff0\u53e5\u5feb\u53d6\u5927\u5c0f\u7121\u6548 + +ORA-17124=\u6307\u5b9a\u7684\u9023\u7dda\u5feb\u53d6\u300c\u7121\u6d3b\u52d5\u300d\u903e\u6642\u7121\u6548 + +ORA-17200=\u7121\u6cd5\u6b63\u78ba\u7684\u5c07 XA \u958b\u555f\u5b57\u4e32\u5f9e Java \u8f49\u63db\u70ba C + +ORA-17201=\u7121\u6cd5\u6b63\u78ba\u7684\u5c07 XA \u95dc\u9589\u5b57\u4e32\u5f9e Java \u8f49\u63db\u70ba C + +ORA-17202=\u7121\u6cd5\u6b63\u78ba\u7684\u5c07 RM \u540d\u7a31\u5f9e Java \u8f49\u63db\u70ba C + +ORA-17203=\u7121\u6cd5\u5c07\u6307\u6a19\u985e\u578b\u8f49\u578b\u70ba jlong + +ORA-17204=\u8f38\u5165\u9663\u5217\u592a\u77ed, \u7121\u6cd5\u4fdd\u7559 OCI \u6a19\u793a\u5143 + +ORA-17205=\u7121\u6cd5\u4f7f\u7528 xaoSvcCtx \u53d6\u5f97 C-XA \u7684 OCISvcCtx \u6a19\u793a\u5143 + +ORA-17206=\u7121\u6cd5\u4f7f\u7528 xaoEnv \u53d6\u5f97 C-XA \u7684 OCIEnv \u6a19\u793a\u5143 + +ORA-17207=DataSource \u672a\u8a2d\u5b9a tnsEntry \u5c6c\u6027 + +ORA-17213=C-XA \u5728 xa_open \u6642\u50b3\u56de XAER_RMERR + +ORA-17215=C-XA \u5728 xa_open \u6642\u50b3\u56de XAER_INVAL + +ORA-17216=C-XA \u5728 xa_open \u6642\u50b3\u56de XAER_PROTO + +ORA-17233=C-XA \u5728 xa_close \u6642\u50b3\u56de XAER_RMERR + +ORA-17235=C-XA \u5728 xa_close \u6642\u50b3\u56de XAER_INVAL + +ORA-17236=C-XA \u5728 xa_close \u6642\u50b3\u56de XAER_PROTO + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u9055\u53cd\u5354\u5b9a + +ORA-17402=\u53ea\u9810\u671f\u4e00\u500b RPA \u8a0a\u606f + +ORA-17403=\u53ea\u9810\u671f\u4e00\u500b RXH \u8a0a\u606f + +ORA-17404=\u6536\u5230\u8d85\u51fa\u9810\u671f\u7684 RXD + +ORA-17405=UAC \u9577\u5ea6\u4e0d\u70ba\u96f6 + +ORA-17406=\u8d85\u51fa\u7de9\u885d\u5340\u7684\u6700\u5927\u9577\u5ea6 + +ORA-17407=\u985e\u578b\u8868\u793a\u6cd5 (setRep) \u7121\u6548 + +ORA-17408=\u985e\u578b\u8868\u793a\u6cd5 (getRep) \u7121\u6548 + +ORA-17409=\u4e0d\u6b63\u78ba\u7684\u7de9\u885d\u5340\u9577\u5ea6 + +ORA-17410=\u6c92\u6709\u5f9e\u57e0\u5ea7\u8b80\u53d6\u8cc7\u6599 + +ORA-17411=\u8cc7\u6599\u985e\u578b\u8868\u793a\u6cd5\u4e0d\u76f8\u7b26 + +ORA-17412=\u8d85\u904e\u6700\u5927\u7684\u985e\u578b\u9577\u5ea6 + +ORA-17413=\u8d85\u904e\u7d22\u5f15\u9375\u5927\u5c0f + +ORA-17414=\u7de9\u885d\u5340\u5927\u5c0f\u4e0d\u8db3\u4ee5\u5132\u5b58\u8cc7\u6599\u6b04\u540d\u7a31 + +ORA-17415=\u672a\u8655\u7406\u6b64\u985e\u578b + +ORA-17416=FATAL + +ORA-17417=NLS \u554f\u984c, \u6b04\u4f4d\u540d\u7a31\u89e3\u78bc\u5931\u6557 + +ORA-17418=\u5167\u90e8\u7d50\u69cb\u6b04\u4f4d\u9577\u5ea6\u932f\u8aa4 + +ORA-17419=\u50b3\u56de\u7684\u8cc7\u6599\u6b04\u6578\u76ee\u4e0d\u6b63\u78ba + +ORA-17420=\u672a\u5b9a\u7fa9 Oracle \u7248\u672c + +ORA-17421=\u672a\u5b9a\u7fa9\u985e\u578b\u6216\u9023\u7dda + +ORA-17422=\u4e0d\u6b63\u78ba\u7684\u7d44\u7e54\u985e\u5225 + +ORA-17423=\u4f7f\u7528\u7121 IOV \u5b9a\u7fa9\u7684 PLSQL \u5340\u584a + +ORA-17424=\u5617\u8a66\u4e0d\u540c\u7684\u6392\u5217\u4f5c\u696d + +ORA-17425=\u50b3\u56de PLSQL \u5340\u584a\u4e2d\u7684\u4e32\u6d41 + +ORA-17426=IN \u548c OUT \u9023\u7d50\u7686\u70ba\u7a7a\u503c + +ORA-17427=\u4f7f\u7528\u672a\u521d\u59cb\u5316\u7684 OAC + +ORA-17428=\u5fc5\u9808\u5728\u9023\u7dda\u5f8c\u547c\u53eb\u767b\u5165 + +ORA-17429=\u81f3\u5c11\u5fc5\u9808\u9023\u7dda\u81f3\u4f3a\u670d\u5668 + +ORA-17430=\u5fc5\u9808\u767b\u5165\u4f3a\u670d\u5668 + +ORA-17431=SQL Statement \u5256\u6790\u70ba\u7a7a\u503c + +ORA-17432=\u4e0d\u6b63\u78ba\u7684 O7 \u9078\u9805 + +ORA-17433=\u547c\u53eb\u53c3\u6578\u7121\u6548 + +ORA-17434=\u4e0d\u662f\u4e32\u6d41\u6a21\u5f0f + +ORA-17435=IOV \u4e2d\u4e0d\u6b63\u78ba\u7684 in_out_binds \u6578 + +ORA-17436=\u4e0d\u6b63\u78ba\u7684\u5916\u90e8\u9023\u7d50\u6578 + +ORA-17437=PLSQL \u5340\u584a IN/OUT \u53c3\u6578\u4e2d\u6709\u932f\u8aa4 + +ORA-17438=\u5167\u90e8 - \u672a\u9810\u671f\u503c + +ORA-17439=SQL \u985e\u578b\u7121\u6548 + +ORA-17440=DBItem/DBType \u70ba\u7a7a\u503c + +ORA-17441=\u4e0d\u652f\u63f4\u7684 Oracle \u7248\u672c. \u6240\u652f\u63f4\u7684\u6700\u65e9\u7248\u672c\u70ba 7.2.3. + +ORA-17442=Refcursor \u503c\u4e0d\u6b63\u78ba + +ORA-17443=\u7a7a\u503c\u7684\u4f7f\u7528\u8005\u6216\u5bc6\u78bc\u4e0d\u652f\u63f4\u65bc THIN \u9a45\u52d5\u7a0b\u5f0f + +ORA-17444=\u4e0d\u652f\u63f4\u7531\u4f3a\u670d\u5668\u6240\u63a5\u6536\u7684 TTC \u5354\u5b9a\u7248\u672c + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/d0c6ab1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/d0c6ab1998af001c18c4935e001381da new file mode 100644 index 0000000..dcce3ed Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e5/d0c6ab1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/00f5950dcba4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/00f5950dcba4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..78bf4d5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/00f5950dcba4001c1acc9f54b60f9b57 @@ -0,0 +1,80 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.GRAY); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panel au centre gauche + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setBackground(Color.GRAY); + //Panneau_Centre_Gauche.WIDTH = 100; + Panneau_Centre_Gauche.setLayout( new FlowLayout()); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/10dd7a1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/10dd7a1798af001c18c4935e001381da new file mode 100644 index 0000000..d818305 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/10dd7a1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/30a16901c3a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/30a16901c3a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..2ae2c99 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/30a16901c3a4001c1acc9f54b60f9b57 @@ -0,0 +1,20 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + private Connexion() { + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/4082a32c49aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/4082a32c49aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..aad51d4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/4082a32c49aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + this.DISPOSE_ON_CLOSE; + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/40af211998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/40af211998af001c18c4935e001381da new file mode 100644 index 0000000..b9da0af Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/40af211998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/a0128f1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/a0128f1598af001c18c4935e001381da new file mode 100644 index 0000000..f716e77 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/a0128f1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/b08d2c7200a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/b08d2c7200a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..c62f52a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/b08d2c7200a4001c1027e59cc3e35e89 @@ -0,0 +1,53 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + ResultSet resultSet = connection.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/c080dd1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/c080dd1598af001c18c4935e001381da new file mode 100644 index 0000000..0fde569 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/c080dd1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/e01ee8fb20af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e6/e01ee8fb20af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..e69de29 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e7/101f762c06a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e7/101f762c06a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..bf1a49a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e7/101f762c06a4001c1027e59cc3e35e89 @@ -0,0 +1,90 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + int i = rsmd.getColumnCount(); + + System.out.println("Nombre de colonne: " + i); + + for(int j = 1; j < i; j++){ + System.out.print(rsmd.getColumnName(j) + " "); + } + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e7/a0c9261798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e7/a0c9261798af001c18c4935e001381da new file mode 100644 index 0000000..2b2c989 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e7/a0c9261798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e7/c0ee77984eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e7/c0ee77984eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..bdd2439 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e7/c0ee77984eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,148 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public IHMConnexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + + + + // Affichage du message de configurmation + this.pr.confirmationConnexion("Mon serveur"); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/501b7281fba3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/501b7281fba3001c1027e59cc3e35e89 new file mode 100644 index 0000000..2ddf4fe --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/501b7281fba3001c1027e59cc3e35e89 @@ -0,0 +1,32 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + try { + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + Connection conn = DriverManager.getConnection(url.toString(), "dut", "dut"); + + System.out.println("Accs la base"); + } catch (SQLException e) { + // TODO: handle exception + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/70a1161b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/70a1161b98af001c18c4935e001381da new file mode 100644 index 0000000..908c99c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/70a1161b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/905d641998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/905d641998af001c18c4935e001381da new file mode 100644 index 0000000..20f15e9 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/905d641998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/c00cdc2b9daf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/c00cdc2b9daf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..3772ab9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e8/c00cdc2b9daf001c1c2eb8ec16be26ca @@ -0,0 +1,212 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; +import javax.swing.JOptionPane; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + private JButton jOk; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypte) : " + this.jtextMdp.getPassword().toString() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + + String rose = new String(this.jtextMdp.getPassword()); + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(rose); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + + public void driverExist(){ + // On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(connexionToBdd.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + this.jtextServeur.setEnabled(false); + this.jtextPort.setEnabled(false); + this.jtextBase.setEnabled(false); + this.jtextIdentifiant.setEnabled(false); + this.jtextMdp.setEnabled(false); + + this.jOk.setEnabled(false); + + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + else{ + JOptionPane.showMessageDialog(this, "Pilote trouve.", "Information", JOptionPane.INFORMATION_MESSAGE); + } + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e9/50fa331598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e9/50fa331598af001c18c4935e001381da new file mode 100644 index 0000000..30d448d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e9/50fa331598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e9/702c6e1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e9/702c6e1a98af001c18c4935e001381da new file mode 100644 index 0000000..c4c7bd1 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e9/702c6e1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b069ddff03a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b069ddff03a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..fbc112f --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b069ddff03a4001c1027e59cc3e35e89 @@ -0,0 +1,60 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultat = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("Requte: Envoye et reue."); + + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ea/5054251598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ea/5054251598af001c18c4935e001381da new file mode 100644 index 0000000..d3c4540 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ea/5054251598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ea/50a88519ffa3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ea/50a88519ffa3001c1027e59cc3e35e89 new file mode 100644 index 0000000..c06f6c8 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ea/50a88519ffa3001c1027e59cc3e35e89 @@ -0,0 +1,50 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept."); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + } + + System.out.println("Fin"); + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ea/704413c69daf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ea/704413c69daf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..52a78e6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ea/704413c69daf001c1c2eb8ec16be26ca @@ -0,0 +1,2199 @@ +Manifest-Version: 1.0 +Specification-Title: "Oracle JDBC driver classes for use with JDK1.4" +Specification-Version: "Oracle JDBC Driver version - 9.0.2.0.0" +Specification-Vendor: "Oracle Corporation" . +Implementation-Title: "ojdbc14.jar" +Implementation-Version: "Oracle JDBC Driver version - 9.0.2.0.0" +Implementation-Vendor: "Oracle Corporation" +Implementation-Time: "Thu Apr 25 23:14:02 2002" + +Name: oracle/sql/ARRAY.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dmaLI4JYUr93CzKOLgN6E21Vi5M= +MD5-Digest: c0XbokBF/OW0//pY4JCVnw== + +Name: oracle/sql/DatumWithConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: LTPZ8X/+DDNWesdKYiAowk0wnH0= +MD5-Digest: IYBoyZ3JK0Xo4oseRqwLcg== + +Name: oracle/sql/ArrayDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: u9tszi0PPXsuj1WeMUwsAP2cDxM= +MD5-Digest: 3jLTHQ6ikYXhjUbGUOdcfg== + +Name: oracle/sql/TypeDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: H4vZ6P3fstokDnYd2r22XcTBTms= +MD5-Digest: 8L1ip338DazRi0eXmkJjhQ== + +Name: oracle/sql/SQLName.class +Digest-Algorithms: SHA MD5 +SHA-Digest: k87KR5IrEgJxw5zijb76Ylbg6P8= +MD5-Digest: 2cH/AlBVz2WO48nMaYbCXg== + +Name: oracle/sql/LobDBAccessImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nMQB1w7ABpBZdpnDKTkHfxAJ5Zg= +MD5-Digest: oJbv0nJlXg4L6hDd4cebqA== + +Name: oracle/sql/BlobDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lCeo6aCNZW09+6wVqchJfDn7WDE= +MD5-Digest: eCidkvOMRjKVZugusWoKZQ== + +Name: oracle/sql/ClobDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WhTW78FBUhUlNCbiwDJ8oJGHcL4= +MD5-Digest: eGAflcBZj4aThvstYOh3oQ== + +Name: oracle/sql/BfileDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U5TpkBUxii9BuJsftF5B40c95vU= +MD5-Digest: n0Olri3rt0+auzn7kzDU9Q== + +Name: oracle/sql/StructDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DZLVHTNLxpM/SrnbmvYU7ZnCjQ8= +MD5-Digest: U3jD6zUYeY8aRenr7QuUgQ== + +Name: oracle/sql/STRUCT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KjRJuf26U56eCC0VFaq4sgQdQvQ= +MD5-Digest: ESh7ekDFr+wHxgYuVXYubQ== + +Name: oracle/sql/BLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YdCoSwsZJODsKxo8/Im33SiW0eg= +MD5-Digest: DG0ZZCIRtwfrRDZ3i6Pslg== + +Name: oracle/sql/CLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 87s7h92BkVrxEzg9A7V3VaF3lMM= +MD5-Digest: zWYfzq4FcBziYd37UWdcmw== + +Name: oracle/sql/BFILE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JBjeYLW56wopswruVu5jC21Ttzw= +MD5-Digest: ZM/xTRYYhYfb8kRNeG9+bg== + +Name: oracle/sql/ROWID.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YKpkYZFRLJvpymBFWdcCtEsYc2E= +MD5-Digest: xCQOZ/Ue3O0BVywsO34rUg== + +Name: oracle/sql/RAW.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WnR4XVYEtn9QQ97pdq7yhOXMU+o= +MD5-Digest: MySTAn1t8VoIO3gJZjGnGQ== + +Name: oracle/sql/CHAR.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WI+n2pYte7/SF06GsJdAdPWyFtA= +MD5-Digest: I6xMrtTaJ6tS6wkiyiygvA== + +Name: oracle/sql/REF.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gcth6Fur3799Dadn8hk+TGA0kTo= +MD5-Digest: 1AoaOGuVIgK3MFfsy43GGA== + +Name: oracle/sql/OPAQUE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tn5BWea4Q1cizI5MtD80CDHCx8s= +MD5-Digest: J7NRoctd8WUR+seJFpLT2w== + +Name: oracle/sql/CustomDatumFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YP1uKDUai1IdrMBOG2bv16xPGX0= +MD5-Digest: IleX9p1VBIJYP/r8ahEceg== + +Name: oracle/sql/CustomDatum.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UYkpvvDlSBoRqPuttVbplZ2bfKE= +MD5-Digest: B1tL8qfjke7u1m0zdI3c+w== + +Name: oracle/sql/ORADataFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pGGV+XvqLAKqEv52So7dZ6exmZQ= +MD5-Digest: 6nvu3d+jXwrhbYBJhpwiAw== + +Name: oracle/sql/ORAData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: QOsLKd6H70Pfz1ozJB+Xc/ncLGw= +MD5-Digest: VKfEdDUBSW0N2mn1jeD3kw== + +Name: oracle/sql/OpaqueDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kXFKCF1da8FvvT9WtRWX5gPpR14= +MD5-Digest: 357qM41FN4ZpomFVxZaBjA== + +Name: oracle/sql/JAVA_STRUCT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +ZokJm+D3cMM/zIp4N1jbdloTD8= +MD5-Digest: B9GYS82UdAjL/aw6147RRA== + +Name: oracle/sql/LobPlsqlUtil.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jdejUNC9LafH3bIVuhHy2yGvQ0c= +MD5-Digest: PfLIMW753A/amrCLichPOw== + +Name: oracle/sql/OracleJdbc2SQLInput.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8F7zpeez+ncywdnvqLNlrtt+lL8= +MD5-Digest: WpuUMEPy2IGSW8s2uf/+XQ== + +Name: oracle/sql/OracleSQLOutput.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rlbc0CqZq+ZfYNamR0r4jLS3UrQ= +MD5-Digest: vucgxszioH3+LKqSstiCFw== + +Name: oracle/sql/SQLUtil.class +Digest-Algorithms: SHA MD5 +SHA-Digest: blujZm0sOm+Jo6gdT4OiC3YQtSE= +MD5-Digest: lVp9oWJUEpeW+40MjK+WQw== + +Name: oracle/sql/Mutable.class +Digest-Algorithms: SHA MD5 +SHA-Digest: I5inGoeXFe4PI4Y+VxOd+FpB6TM= +MD5-Digest: ARLS8eCwvIbU79I0TYSENw== + +Name: oracle/sql/DATE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BmR6VVV+jo5xC9s9HeyLKqZaFxE= +MD5-Digest: jLFfN2EaDG6vDofwRwnClA== + +Name: oracle/sql/Datum.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fLK894qTCMEsmPxZfkdT5h9QbQ8= +MD5-Digest: KlyY5/IYpbiF1Nj6p5yV4Q== + +Name: oracle/sql/INTERVALYM.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HRejRz4Bg7tl8lUTVYc0e8Xa9MA= +MD5-Digest: pVh3Vpjf+2FmJl+nR2ZfvQ== + +Name: oracle/sql/LdxLib.class +Digest-Algorithms: SHA MD5 +SHA-Digest: V1WsJh65/NyK/X/9F8Po2VXayRY= +MD5-Digest: lcre3ar7E9GtPmPMtZ+Aew== + +Name: oracle/sql/LdxLibServer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: u7CMGGuGcSdxFydurPULd8yyCdw= +MD5-Digest: QgITiGHPBVLPzsOzbAY9JA== + +Name: oracle/sql/LdxLibThin.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qqaOmLsJ/tBgB1aqEJMbnMEO26k= +MD5-Digest: PWIm08r24Ztm66Anpsw7tw== + +Name: oracle/sql/LnxLib.class +Digest-Algorithms: SHA MD5 +SHA-Digest: CqDxmXoq4gsE18BRzRVWh4LETTA= +MD5-Digest: RoKoDx5IO4yK3wJzthp5TA== + +Name: oracle/sql/LnxLibServer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: E6KD4v4XPv1UO91d61SimuH7j2k= +MD5-Digest: lhSPa0mika9yWGyGAtQ4cQ== + +Name: oracle/sql/LnxLibThin$lnxqc.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kidzMmd4QNnZ8ATm3/vzVKv/dvA= +MD5-Digest: 1/MQeJPu1kJz+Mi9eRsCYA== + +Name: oracle/sql/LnxLibThin.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qZ8JiUYqODUHkGVx07uCmZSYTVk= +MD5-Digest: uSoZVN7tw1Nhynzs7f8wlg== + +Name: oracle/sql/LnxLibThinFormat.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pcpbQGm1g3AnRr6RPxQJLAM7IXk= +MD5-Digest: ik9vH2MjY8wnc7ibQwVbig== + +Name: oracle/sql/LoadCorejava.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HIBxiVR1VtP4hutHoni6EFf9ANo= +MD5-Digest: P4leeiZ3muq76m+apKT05Q== + +Name: oracle/sql/NUMBER.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ACLbxB2dcQ9DeIP5i8FqTbXoJC0= +MD5-Digest: sGBRHkRgocK7T6nEJ3cjFA== + +Name: oracle/sql/OffsetDST.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MVp0aUKK3IbZ7infn4TsbDiWwZ8= +MD5-Digest: LA2MLQC3EV4RW2UqjSBZdQ== + +Name: oracle/sql/TIMESTAMP.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Z8CBMiqzuCuexsLgDajZPLKnC6w= +MD5-Digest: Yyl/K5ZBf6Hoy0djLe/wrg== + +Name: oracle/sql/TIMESTAMPLTZ.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mUKvAZ5LQ4aH3Kh4ors+/FECx00= +MD5-Digest: gy+Mojrf4ljjOLZ1IDV8Nw== + +Name: oracle/sql/TIMESTAMPTZ.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vuD2FkJsbuAlxaInKwX1Z7ohA6M= +MD5-Digest: H6eih0gyd+JtBwOBNWJdcg== + +Name: oracle/sql/TIMEZONETAB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xedgHU5FnHV0Jn7c5JlZIjYfu8s= +MD5-Digest: 7Mx5oUE7lh21FOojQe5W6A== + +Name: oracle/sql/TRANSDUMP.class +Digest-Algorithms: SHA MD5 +SHA-Digest: F7hSpgN0hnAh5Y37Sla/b9wk2fg= +MD5-Digest: V2RdJTahcD9OpvfgdM8z4w== + +Name: oracle/sql/TableClass.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bSljZt8ygEaM0y/xsCGQLsaMpwg= +MD5-Digest: /9mVnFgK9MouJXmRPuH26A== + +Name: oracle/sql/ZONEIDMAP.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Xv3eMJYjqyUcUjaazd8QgXUDi8c= +MD5-Digest: lyjtjxXvqd/ib+cF4ajudQ== + +Name: oracle/sql/CharacterBuffer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bDyggPTeaIIAvdn9ZeE+QF4INtA= +MD5-Digest: i8yWpwx8F2+2t0lk0QAdWw== + +Name: oracle/sql/converter/CharacterConverter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZOPUomREpwnpcDXHnT5mayumIWg= +MD5-Digest: oQ2tnvtAlt6ZBbxATu0iAw== + +Name: oracle/sql/converter/CharacterConverter12Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: uafWI+z8Mo0VGD/4HRKiA92z1UQ= +MD5-Digest: hw5MByOetgFvrYAcIGJ+/w== + +Name: oracle/sql/converter/CharacterConverter1Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: swB/pfZ2l9Afdbb6b34tPv1Qxq4= +MD5-Digest: ziNzzD85HXqobkHbBbMgoQ== + +Name: oracle/sql/converter/CharacterConverter2ByteFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KmL0ZynWywM0cOB9c0qXW4Cbevk= +MD5-Digest: +6TS5W6ZaBtI18U3a5uOSA== + +Name: oracle/sql/converter/CharacterConverterGB18030.class +Digest-Algorithms: SHA MD5 +SHA-Digest: zD25mvmaiAiiP8gGOysCiujhJy0= +MD5-Digest: ldmrXEbp2W7YNjuG6dVURw== + +Name: oracle/sql/converter/CharacterConverterGroup.class +Digest-Algorithms: SHA MD5 +SHA-Digest: EzLOxY5U8H6Qihx6h6RA3k+i4R0= +MD5-Digest: WAqx8mq5qRv5QXXCTSk++g== + +Name: oracle/sql/converter/CharacterConverterJAEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: W3wiUSq2bia/erC6uPJmWSpOXpI= +MD5-Digest: Oen4i22sJTb/YiuPq1O2Qg== + +Name: oracle/sql/converter/CharacterConverterLC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U+Q4s3oOYLrbNTe82ly357E2QX8= +MD5-Digest: MqQSllgTkGh+/wG+9WY9RQ== + +Name: oracle/sql/converter/CharacterConverterLCFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: sx0qSwu0GrDEQW+gHp7g90b8xFY= +MD5-Digest: PZtrt/8GEHVOhHd5IChOzA== + +Name: oracle/sql/converter/CharacterConverterSJIS.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yM8fTP69yUownQjQlzLG9W36saY= +MD5-Digest: n+qmst7aSqLkIwk5Jfa5Hw== + +Name: oracle/sql/converter/CharacterConverterShift.class +Digest-Algorithms: SHA MD5 +SHA-Digest: sGTaFp3SbfSMT8UiWkwHn5wL4ww= +MD5-Digest: 7tmLvyL+R4V5+CaMpuRhPA== + +Name: oracle/sql/converter/CharacterConverterZHTEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Y+3bV7epIGi0ScCwDE/dRn/lPi8= +MD5-Digest: bc9k3dtSdMzm6zZYkNN9MA== + +Name: oracle/sql/CharacterRepConstants.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lWMTpI+SzYpz/Y8O+b+LLymca7w= +MD5-Digest: i1cnc7lSBo/GtEd11UujWQ== + +Name: oracle/sql/CharacterSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DmlhMQXFjVJtfUGhJqO4ZhEm70c= +MD5-Digest: 0a/y5sG7jV3ybIbPnBbm7w== + +Name: oracle/sql/CharacterSet12Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8j2MDk10lMX9BKHwAQyZQ5egkaY= +MD5-Digest: 1SVdT+BQAYQQF6GsPWE5ww== + +Name: oracle/sql/CharacterSet1Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5UjyOx6B1QhuPMX1qxohFXMnrbI= +MD5-Digest: 1nFNKF7GIyU9Z0fV+VMzlQ== + +Name: oracle/sql/CharacterSet2ByteFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kaYdbzyyB17Nb137sndmlk+K6jw= +MD5-Digest: 5H68ulQQGeYRfhGK7pdZbw== + +Name: oracle/sql/CharacterSetAL16UTF16.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wK13JeML28ElJddybKIIdnDkM0A= +MD5-Digest: 2aBcF1y3SyNGIPU8MX/HlA== + +Name: oracle/sql/CharacterSetAL16UTF16LE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Diz5QLXjf6CcpXtPUJIbK5FX9WQ= +MD5-Digest: 2qhFKv1zlTtcMs0V/G8SLg== + +Name: oracle/sql/CharacterSetAL32UTF8.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mLN1mrMg5065CDbYmd1mc4CRYek= +MD5-Digest: n66jBlOap0uu30Prg/ukfQ== + +Name: oracle/sql/CharacterSetFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Qlwjz43Q4gHryS522JV9hZW0UlU= +MD5-Digest: S913Wsz9heUq3VsK9oYr6g== + +Name: oracle/sql/CharacterSetFactoryDefault.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4La8H+hk58/YoyPRAFDOiRq/ZVI= +MD5-Digest: /Olol7UWOuf8SjgOb6LwBA== + +Name: oracle/sql/CharacterSetFactoryThin.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rYoGGThtO/TaXAmLEywji+TL49U= +MD5-Digest: +ooX8tlnw/83rDyzibZMUw== + +Name: oracle/sql/CharacterSetByte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1qdr8DEyw82Cf4vNXZjZKE5ZuH0= +MD5-Digest: pvNROxQklg3iu0EcwMoe+Q== + +Name: oracle/sql/CharacterSetUnknown.class +Digest-Algorithms: SHA MD5 +SHA-Digest: g1tIpWM0g0cWJ4fkuBObrT02e/0= +MD5-Digest: R/IUrofcoLhjAZU9+h7iEQ== + +Name: oracle/sql/CharacterSetGB18030.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JV+nhbN0CQIC4c/qRxeZeOZ5WXE= +MD5-Digest: FJgyxBwW8QIxsPiymZt6+A== + +Name: oracle/sql/CharacterSetJAEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: TYoK69edpanLC3AIFbKmppgglks= +MD5-Digest: zlS0Lq36kiYcyYrtKCLuUw== + +Name: oracle/sql/CharacterSetLCFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lPtJJi8fHZKNElnV0RmcT3yeNDg= +MD5-Digest: /8iJPYgthyb6H0fyAav3YQ== + +Name: oracle/sql/CharacterSetSJIS.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tX86UTKxDPkQ33ZU+MoDEPZ/hPY= +MD5-Digest: LwTLAU1st3wl/GAxKENe5w== + +Name: oracle/sql/CharacterSetShift.class +Digest-Algorithms: SHA MD5 +SHA-Digest: L3MvGw8xif7OWTYYQvcVCViKVvg= +MD5-Digest: 4eHmVGzZEEDES2wX9Nk9yQ== + +Name: oracle/sql/CharacterSetUTF.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KWMIVG11tbjuJRivEz6WnV4d+YU= +MD5-Digest: 9ynBExsrCQ2cR/P1emuHpw== + +Name: oracle/sql/CharacterSetUTFE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qo0GCbrWnG9OGrvwbW699SQSywQ= +MD5-Digest: VXaooXe99G/AqXIh4fBVZA== + +Name: oracle/sql/CharacterSetWithConverter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UkA8dsD/rCBPhIkIkR2Epu95M34= +MD5-Digest: dTgk0gVSzPmZuOgbbjacHQ== + +Name: oracle/sql/CharacterSetZHTEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3a10jnHE9tWoGNk2MtDuDbpgjhE= +MD5-Digest: FjJvJB1nrAfb/7vzyyn/6Q== + +Name: oracle/sql/CharacterWalker.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4nBXhhqJQjUtM2tjl+b9/rcU/h0= +MD5-Digest: YD/3ozwM/3tq6qLGazqBFw== + +Name: oracle/sql/ConverterArchive.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ERj2nqUCjNV0mYnz2JTpXmmfUvM= +MD5-Digest: vQrqx/UkQNqdxVyKjcDHog== + +Name: oracle/sql/converter_xcharset/CharacterConverter0001.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: kFLuLis32bAHzkjW0d2MVxn3k4c= +MD5-Digest: 3DfN9ipognA5JGMX9E2apg== + +Name: oracle/sql/converter_xcharset/CharacterConverter0002.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: jCXbK+9R4wwve5aSnJ1q5pKOlyU= +MD5-Digest: Y3J8irmFbS4CUoaAsHRkjg== + +Name: oracle/sql/converter_xcharset/CharacterConverter001f.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: Ex7Zbc3wANbl+JeVjaYXE01LMTE= +MD5-Digest: heGmQ94DltToro31bhXdyA== + +Name: oracle/jdbc/driver/OracleConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dIFZNLqSnEox48XWJauHETUii0o= +MD5-Digest: myC2JK8f3B31IKHvK3MZoQ== + +Name: oracle/jdbc/driver/ClientDataSupport.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dG0e6A68x0c8iHpwHwWwKm9XaIw= +MD5-Digest: V9/l/AIVtBt+mRGvoJ6TGg== + +Name: oracle/jdbc/driver/OracleStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pmfdytTNs+3okE1B7F6FZFaW8OI= +MD5-Digest: Iye6DfThk1KPqE1Fgb7wCQ== + +Name: oracle/jdbc/driver/ScrollRsetStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: acwZHgCk+IqgzUDXIf2BgI053dA= +MD5-Digest: aaJm6mZaxM0J39EHQBZl8w== + +Name: oracle/jdbc/driver/OracleSql.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 03C21c0tcrp2o3G1c7pSRAicVBg= +MD5-Digest: 9WWP98Ka/D7VOX47pFHh4A== + +Name: oracle/jdbc/driver/LRUStatementCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jzV1cNJlPfd1wEqKSVaeU1dVDDE= +MD5-Digest: p4pQsBhlYeGiDlymycxHBQ== + +Name: oracle/jdbc/driver/OracleCloseCallback.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Kl94tVClCPaXQu05eTpJRgekUmQ= +MD5-Digest: JGA24F3oVuXuEb6qsmisww== + +Name: oracle/jdbc/driver/OraclePreparedStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PPogw9+dVoU+ntyrjVGR6KtCG4A= +MD5-Digest: MbKbYkQNFn0S9HL1o0naPQ== + +Name: oracle/jdbc/driver/OracleInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: P8qfiRDWEbCHK2Z12LvS8PsK4kw= +MD5-Digest: mIn8vE4AugQBuOE7i8KerQ== + +Name: oracle/jdbc/driver/OracleBufferedStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mUHdlpiYPv2MJ5CJf5QlQxYaoNA= +MD5-Digest: z922IVW37aN2jS40yPUGEg== + +Name: oracle/jdbc/driver/OracleResultSetImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YyI5kKZWzgwoi6koqNXBvhUJxL0= +MD5-Digest: 8HwvhknA0jz3y9bhL2QPfQ== + +Name: oracle/jdbc/driver/BaseResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1xDfVVRt0+a7rUglF/+y2fvxdsc= +MD5-Digest: WlkmA69i6gmllos+kr92mg== + +Name: oracle/jdbc/driver/OracleResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZJZUU9mgTG3xkVRP1jioI3DIbEQ= +MD5-Digest: 7gDWzL4qBUBMKk0MDe/e5A== + +Name: oracle/jdbc/driver/OracleResultSetCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fojBILGEiZ10rqbAFR5fkf2KcME= +MD5-Digest: R/5JZhRQKEgmJeDFtiEc3A== + +Name: oracle/jdbc/driver/OracleStatementCacheEntry.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IrBBGVnZJwkwlqzPcZ7p5n1Shew= +MD5-Digest: 8LzsLuT8h7UM+gv42mqmgA== + +Name: oracle/jdbc/driver/OracleDriver.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +kQoXYXD1XNlH27KWY4yXDYH4Gw= +MD5-Digest: hCkWSivVIzkNRLcrxyCj0Q== + +Name: oracle/jdbc/driver/OracleLog.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tajkgOPHY9j0mHwjr4M5RnRjy3c= +MD5-Digest: A6TALU7aUdhksgmzeFyqXA== + +Name: oracle/jdbc/driver/ArrayDataResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NZEdqj11shdD1LFzUFsIY5NfJac= +MD5-Digest: JXYHfPAN4mT481NLKGgEYw== + +Name: oracle/jdbc/driver/ArrayLocatorResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: uZqkt5oxVIMe5vsTzgz5w/HekKo= +MD5-Digest: nfZOiFX2kUanEavcdhFjTA== + +Name: oracle/jdbc/driver/ResultSetUtil.class +Digest-Algorithms: SHA MD5 +SHA-Digest: D0GhA8mwiAJJ+lEIslpg/me+YFU= +MD5-Digest: B717RTfmVsU3LzvVieJb5w== + +Name: oracle/jdbc/driver/Const.class +Digest-Algorithms: SHA MD5 +SHA-Digest: svpqAvt4G3MPz5Ss/vAGB1lB6s0= +MD5-Digest: oAzlR+q1yUq4X2LQG46vVg== + +Name: oracle/jdbc/driver/OracleCallableStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eKKSrgWx5UuR6GT0FDJkcuf+PcA= +MD5-Digest: onov/ArBWsL4ydM6hXRbtg== + +Name: oracle/jdbc/driver/OracleDatabaseMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: byfdq5x6IQ6sxS8/ONJpmNHdtYU= +MD5-Digest: tGP9cLyKdb1Gd5wSu8q4yg== + +Name: oracle/jdbc/driver/ByteArrayKey.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8L+COpDqKFSLReTARIVxl/xqFBU= +MD5-Digest: LVGdgWfJxVqVlN+tC5qMDg== + +Name: oracle/jdbc/driver/OracleSavepoint.class +Digest-Algorithms: SHA MD5 +SHA-Digest: USqSsv83jJ1GBjfxOE8JRr3V0mE= +MD5-Digest: J53LgOHcfX+px82s8QHcVw== + +Name: oracle/jdbc/driver/OracleTypes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5kzo5r3LN6fxDN4hPwOo7RxwnT8= +MD5-Digest: QTvTF3LCbXJjpYdXEl83Hw== + +Name: oracle/jdbc/driver/OracleConversionInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nORSP1KS5YYZEwgW6tIA1qQPYAg= +MD5-Digest: K9eW1yE20S5QkaEW7C1PrQ== + +Name: oracle/jdbc/driver/OracleConversionReader.class +Digest-Algorithms: SHA MD5 +SHA-Digest: XJDY8UaHxeQRNDMmyjc7ymu9MKo= +MD5-Digest: fq/Jdjzc8gNKxfF92KQYAw== + +Name: oracle/jdbc/driver/OracleBlobInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eipm9JdLSm+hwGNN0VNaPbGZVzE= +MD5-Digest: qPk4yTBM0U8Kocnajk4oNA== + +Name: oracle/jdbc/driver/OracleBlobOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lujwo3I4TTcqf94v0vEPbOhLWyc= +MD5-Digest: 2an1PB3kY7llAF088cdaNg== + +Name: oracle/jdbc/driver/OracleClobInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kNqd05r0nLz5uLVufy9WpMGfdrI= +MD5-Digest: Khuh8UrXou4Wve3KMNvahw== + +Name: oracle/jdbc/driver/OracleClobOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: REucv5a/8ojNBWhi8+yoBHdrrIQ= +MD5-Digest: JxIq60qsh21H1ZkJMuA8yw== + +Name: oracle/jdbc/driver/OracleClobReader.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aAl5vT9MYFDaX9pPqVIMe0UHF8A= +MD5-Digest: qt9heRHrTIaslM2Wl5hDkg== + +Name: oracle/jdbc/driver/OracleClobWriter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aUU6BIDtY2LkYacWG3AvykhVuL0= +MD5-Digest: ut6yFV/54d8H74hNys3kSQ== + +Name: oracle/jdbc/driver/OracleCancelThread.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gAooUGhvwyYIVeOxWGc/FyBG0rQ= +MD5-Digest: hKCSZ5HXuiD4m1dMbMQjew== + +Name: oracle/jdbc/driver/StructMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: VmbSBG2srXxMP6BjeHF2v2jx9S0= +MD5-Digest: 4EQVNLh4cFmBlWnTAWFM3g== + +Name: oracle/jdbc/driver/OracleResultSetMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JzMprpg0OGhON3P07jXhxKxesQg= +MD5-Digest: i3F9hrAOc0CtAQS+DTwtSA== + +Name: oracle/jdbc/driver/UpdatableResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: GqLJk2mJ46rqZMjZK/L+/cN9w2o= +MD5-Digest: O55O4ARRq74SJ8Q8ZgRfvg== + +Name: oracle/jdbc/driver/ScrollableResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 9gVz/kjtSgVWvKliOZooq6kGl70= +MD5-Digest: DpjmZ/YJQbrAr8iZu7Bh5A== + +Name: oracle/jdbc/driver/SensitiveScrollableResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: FFURhgebCXARxLfJmEKoMnvscl8= +MD5-Digest: 0RxND0b4TqIUrz0jgR80ZA== + +Name: oracle/jdbc/driver/OracleResultSetCacheImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: taz9F6cF8/qzFJY5PpQJ+JL2uM4= +MD5-Digest: +lXUEvGW30lG0X951rrNmw== + +Name: oracle/jdbc/driver/DMSFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xrS8MNRworrtS1kuymGcCFBHTnI= +MD5-Digest: /HXsOtM0/8t/fYUy+6giig== + +Name: oracle/jdbc/driver/OracleParameterMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: j8KqZzcgFViRKUBgLIqZ7+p8umU= +MD5-Digest: 0lXHr1SD3VE//1ccrosj2g== + +Name: oracle/jdbc/driver/OracleSQLException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NJvdCmsMPhKoSdK8SXlTdIXq2Bg= +MD5-Digest: lR0q+xCw+7Gj/AkEjlTpZg== + +Name: oracle/jdbc/internal/OracleConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nzM8pqTb3wqKRR4EXuq8QQ6s0Gc= +MD5-Digest: 3GtR7aBXXoADDf+JFP5rPg== + +Name: oracle/jdbc/internal/OracleStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MrSHUj6l1PHlKD89mP5YSQeMKp0= +MD5-Digest: engwGLJrcbDH1TDo7+BxQg== + +Name: oracle/jdbc/internal/OraclePreparedStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hMvpahCcudSvOHDou9ypx0Py0oY= +MD5-Digest: k0O5XU+xdhVt876wgk9hEg== + +Name: oracle/jdbc/internal/OracleResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: q/NNyroJbTXFv8Krqs0c3tX14SQ= +MD5-Digest: 9/px3W9+t9H4UL+MN+DjCA== + +Name: oracle/jdbc/internal/ObjectDataFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: imqorRov66+HXSvJqdibkiTmiwA= +MD5-Digest: 4BPTJOOTT9f1owCsVa4Zug== + +Name: oracle/jdbc/internal/ObjectData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 0vwNtrJ382/vYmzRl+nFHHS2lpY= +MD5-Digest: WyOZcon25tJtSkZMNZC6YA== + +Name: oracle/jdbc/internal/OracleResultSetCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8ssfDRCANVVRIMlfzHIaozU3F5E= +MD5-Digest: qybM8S4dAayydSea3yA1hw== + +Name: oracle/jdbc/internal/OracleCallableStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YHCN2HWUj9QfWAuKjW+3ZI+Sc2M= +MD5-Digest: 1Nxhg9x+cSNuk0wJ053/iw== + +Name: oracle/jdbc/internal/OracleTypes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: n8hhGDytltaEHr5VKLjD3sdqQSs= +MD5-Digest: t91ajrGR4yBqCVfRMpSayQ== + +Name: oracle/jdbc/internal/StructMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +GqkqPej3cvotKNYGPr6VFDmi6w= +MD5-Digest: HSAfY43tonC4cwgUKKDEAg== + +Name: oracle/jdbc/internal/OracleResultSetMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nACMIvQM4B6Gy0WG0yv+2/rD/Vk= +MD5-Digest: H/bK1zqTltPdNeN3m58cPA== + +Name: oracle/jdbc/OracleConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dktyU9g1vpb99rfnUF9ksFV5wB0= +MD5-Digest: WdhMDLZjOfVuoi9KvBKgbA== + +Name: oracle/jdbc/oracore/OracleTypeCOLLECTION.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lQ0CSJ6y/iDUHBR2KIWw2DUb55k= +MD5-Digest: EDGNz1nj0Urn97KcrEdlOg== + +Name: oracle/jdbc/oracore/OracleTypeADT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fb7d+gD/PiHRTszmsyvlzPZRU1I= +MD5-Digest: V7bbUTyrDtKq+QZrZNMT/A== + +Name: oracle/jdbc/oracore/OracleNamedType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hW5wO+anoJTb6cqMZYW5jpFhuLw= +MD5-Digest: yjBjsEuj9e5NfDnPaq4rcQ== + +Name: oracle/jdbc/oracore/OracleType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Kv24/UAMqoSeZmegcrAsGLv0gEE= +MD5-Digest: E5ecnFAfJMV8/KIjgXqW8Q== + +Name: oracle/jdbc/oracore/StreamInfo.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U8QYHfHALSdpVLJBmYzRCbF1t68= +MD5-Digest: H/fRWRuvRSmGfQ8bhZ+Sjg== + +Name: oracle/jdbc/oracore/UnpickleContext.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZdBA/y+CcTflJyym7Rp5VPfQFAI= +MD5-Digest: 9ec2xwcrDSnagy7Wsh8N8A== + +Name: oracle/jdbc/oracore/PickleContext.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vq6MIRzcfzknSbZcu8PieKvIpzU= +MD5-Digest: GmukBSGjlR50VkqcwLumwA== + +Name: oracle/jdbc/oracore/OracleTypeCLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7VzbdaXQsYXMCVqPE2SCjV+CdrU= +MD5-Digest: M7M3YZEQLGPfRiuthcQzeQ== + +Name: oracle/jdbc/oracore/TDSPatch.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UDLjJxB8qB0R3XA6U6JlgLWwkFw= +MD5-Digest: 2rOtF97QZhDaLIJ2UOtlag== + +Name: oracle/jdbc/oracore/PickleOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Np02Tim5dWfVHtPaOEYUE2GN8xg= +MD5-Digest: WIPZdwxFnyUz5Rv9hyQIaA== + +Name: oracle/jdbc/oracore/OracleTypeOPAQUE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: t1NY1FwN0AvwKoXbJNkp4c1rvio= +MD5-Digest: IQltNk5lRwXwH0VhAHEysw== + +Name: oracle/jdbc/oracore/OracleTypeREF.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZL7o7tEi3w3q5AyIEFfLNBKGoHk= +MD5-Digest: asfoAQXcm+uhSHZzlA4tYA== + +Name: oracle/jdbc/oracore/OracleTypeNUMBER.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Ox60a9JjPxOJJBvF99OFQLcFZxY= +MD5-Digest: O7eDgBkvue+W+FnOxg69Nw== + +Name: oracle/jdbc/oracore/OracleTypeFLOAT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DgqUKuXbNEkfRzpkB0A9cXC1lUM= +MD5-Digest: JNwrNT/1FzgeEBvE4Yqj2Q== + +Name: oracle/jdbc/oracore/Util.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KL5lVJ1dgx8RiluniV1MddcodA8= +MD5-Digest: KMbwpfC6VDZWycbK0CODjQ== + +Name: oracle/jdbc/oracore/OracleTypeUPT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wdATwCMFENvk07kPquo1M8oNApA= +MD5-Digest: bQ+F3Q/JAGPzaYF+WC3rlQ== + +Name: oracle/jdbc/oracore/OracleTypeDATE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lJKsHuazZ+xmlgFC47sfP697ugo= +MD5-Digest: jo2PNroJw+YgHYSgPew77w== + +Name: oracle/jdbc/oracore/OracleTypeCHAR.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KQgBBnSCWl76cjPSYSrqcWM1O8I= +MD5-Digest: YAG/po539KQXXp5VcnGiMQ== + +Name: oracle/jdbc/oracore/OracleTypeSINT32.class +Digest-Algorithms: SHA MD5 +SHA-Digest: l9QFvuZ8PzT4jFS3oydkj3Zi070= +MD5-Digest: 6LyG/VNx988qUasCN0A9HA== + +Name: oracle/jdbc/oracore/OracleTypeBFILE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lXtM7/c6zwZs26caxWcNSVdx1Lw= +MD5-Digest: Sc1lvl3d9ACyTzDzm0MRTA== + +Name: oracle/jdbc/oracore/OracleTypeRAW.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RAkACvLtqIx8kBU7TYJm3i7FEOo= +MD5-Digest: gmYYlCrDmD+dI5+GckhHXw== + +Name: oracle/jdbc/oracore/OracleTypeBLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3ur/15cQ+mbEt9M25nLwncd1qp8= +MD5-Digest: bifFubfnIALr+BpZW8rm6g== + +Name: oracle/jdbc/oracore/OracleTypeINTERVAL.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fVPaHH8B88N1vDoOuY3tbAIMkvQ= +MD5-Digest: G37TUuTJOih4KoXIvTtVJw== + +Name: oracle/jdbc/dbaccess/DBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8t68J52pfRJD3TbqdPBrLbb78Sk= +MD5-Digest: eIKMVZq8t8Tim1DWQhbj+Q== + +Name: oracle/jdbc/dbaccess/DBConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JkxZGuMy+Exa+TLzKlGNwZDjNlI= +MD5-Digest: N6VdaV59cCYJvyx4e1wwTQ== + +Name: oracle/jdbc/dbaccess/DBStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Nau4VtjubsK5ju+9RKk9BAFTPZs= +MD5-Digest: 6QluVgZhcaRugOed2qIqgw== + +Name: oracle/jdbc/dbaccess/DBColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Jxt4k5Gz+bzm8z6tKGRR67CZpIQ= +MD5-Digest: n7QJusf4ejh+n/Rl39tYmA== + +Name: oracle/jdbc/dbaccess/DBDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: oh3HCSid08cEVHxVdeTBsKr/rOo= +MD5-Digest: 0DH+ZjJGwkUfnqJriqfM9g== + +Name: oracle/jdbc/dbaccess/DBType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mQa/AiFUd9wfb4v9M0MVUkVPKes= +MD5-Digest: DP+hi8gnGmJw35LUnzm8mg== + +Name: oracle/jdbc/dbaccess/DBItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fQ8r8eIctoj/3pxltTBapcX1qTk= +MD5-Digest: jMYVjDQ1A06VJLMMBTfEQQ== + +Name: oracle/jdbc/dbaccess/DBError.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WM6UO+0RF985hmBvwlk4/6bZAkk= +MD5-Digest: l6kRDKOQU7gDsLU/pm0D7w== + +Name: oracle/jdbc/dbaccess/Message.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pyerCR9z5ty/XTKvcTZsygQOMIY= +MD5-Digest: 8/ASvF26ws10WqiBa3twxA== + +Name: oracle/jdbc/dbaccess/DBDataSetImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Wuvnc5JbY3eXjnPkHQfsq3n5Dks= +MD5-Digest: Y/gQ8kjrYJJ0FjIJlw1FBw== + +Name: oracle/jdbc/dbaccess/DBData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: m29QsTipCHnLCrJSMUbq2wrOJbQ= +MD5-Digest: VEBpIFcjexj1Oe87ybo9+g== + +Name: oracle/jdbc/dbaccess/Message11.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bsK+OTepamFNSji0W7POShRyFdo= +MD5-Digest: US7HSAJjixN/D2BpkFmZvg== + +Name: oracle/jdbc/dbaccess/Messages.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: IAkLN9aRm6OiJS21kUA1eWPiruY= +MD5-Digest: aHizyytr2pOsbbm17iHbww== + +Name: oracle/jdbc/dbaccess/Messages_ar.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: N/gfHdLlhayUCSI4FcGjoeRoL9Y= +MD5-Digest: Ep5I8JMMrSbV143XBaEdmw== + +Name: oracle/jdbc/dbaccess/Messages_ca.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: I2GdPdLICy/6UxDDVSviqf7JT1Y= +MD5-Digest: RTAbIxblIl/xu7xYFvFHCg== + +Name: oracle/jdbc/dbaccess/Messages_cs.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: o8Ojl8Ke5YQTf88Wm558CQyqkQc= +MD5-Digest: 9GMytA4NjsuC96sVIyWR5A== + +Name: oracle/jdbc/dbaccess/Messages_da.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: ZEHdJ3/gMAnFoG3ftSChxCfB7cw= +MD5-Digest: IsFGfxE6oqhpL4+eHdYcVw== + +Name: oracle/jdbc/dbaccess/Messages_de.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: yur6aPBjAvyiIROR5SgXnh7wqjI= +MD5-Digest: NVe/q638PpzzbRhCki1vyw== + +Name: oracle/jdbc/dbaccess/Messages_el.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: YOwYAMw+EljaC7gRWenwUWv1EPU= +MD5-Digest: NExXz4a5iFDRhj6JQemwqQ== + +Name: oracle/jdbc/dbaccess/Messages_es.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: QuKETqjQxiBn7uNm0xSGiXL0Nq8= +MD5-Digest: jReVUv4WTEOHzuF/U2OyLA== + +Name: oracle/jdbc/dbaccess/Messages_es_ES.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: QuKETqjQxiBn7uNm0xSGiXL0Nq8= +MD5-Digest: jReVUv4WTEOHzuF/U2OyLA== + +Name: oracle/jdbc/dbaccess/Messages_fi.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: b0c2xEXZJCIAQmTvHJsu2rT/qVE= +MD5-Digest: poVxZ4q7uabNAMtClRDftA== + +Name: oracle/jdbc/dbaccess/Messages_fr.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: KRGkq5Cf4Ri6cHdy0cJ8sFvddUQ= +MD5-Digest: ZXpXdQ/Ph5dOQ/GreFylJQ== + +Name: oracle/jdbc/dbaccess/Messages_hu.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JUwaUGCwMeYNgX+ctjSUtFk/0nI= +MD5-Digest: AUNqTqI6RQNazCdcS0SJnA== + +Name: oracle/jdbc/dbaccess/Messages_it.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JEPFrTDxKNC8kMoiJDgD2jVhE+4= +MD5-Digest: bZvnQSB0AUkedyS97mF97A== + +Name: oracle/jdbc/dbaccess/Messages_iw.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: kwqDcP3RzPJ2l+Uaj1n9jGuVPZQ= +MD5-Digest: hAjbA3MLZ4VnaatLD3RpKg== + +Name: oracle/jdbc/dbaccess/Messages_ja.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: /1kj/NbZ+zOj4QNiCtHWvoK/6TE= +MD5-Digest: aIm8X/RnuHtVNiDSd2xBoQ== + +Name: oracle/jdbc/dbaccess/Messages_ko.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: mX7vI0b8CZAkXu2pRyifKNVDdCk= +MD5-Digest: Dojn9VDcJQ1cEy9dx/WUMg== + +Name: oracle/jdbc/dbaccess/Messages_nl.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: cmm8lwjJvA+1RsjB9qwMmuG2Hz4= +MD5-Digest: F3ggefrZ4yc0q30jSpprZQ== + +Name: oracle/jdbc/dbaccess/Messages_no.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: ftJnDqB94nnBdA6//yAgrGX7x1o= +MD5-Digest: rc7CRwrN1YWZAYP4N/e5Cw== + +Name: oracle/jdbc/dbaccess/Messages_pl.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: BXk0fvkJNTIgV3RNSsjh4fd6Mi0= +MD5-Digest: JNmWaeZ30crUOuiwwioNoQ== + +Name: oracle/jdbc/dbaccess/Messages_pt.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: dVn//VCTAAw8rf2CZ6l8Gg7seLY= +MD5-Digest: rCYtijIsdFqcc9Wuv0ZrVw== + +Name: oracle/jdbc/dbaccess/Messages_pt_BR.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: 58xIZtjVidSNJP6MVpHjscwHqEE= +MD5-Digest: rsGdKMZgHeMhYaZSiYxeWQ== + +Name: oracle/jdbc/dbaccess/Messages_ro.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JkgSgMyINQFfurXLFHOXsTFhcuU= +MD5-Digest: 9rhetK5yFiildYbSH2rFtQ== + +Name: oracle/jdbc/dbaccess/Messages_ru.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JcknwAKKoiooTgckmVqTUzDQlPM= +MD5-Digest: VgtnIflP/Tf5iuYJzyCWig== + +Name: oracle/jdbc/dbaccess/Messages_sk.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: zRyncvD2pd99zy1T+4bSWedKPDc= +MD5-Digest: +lq28hQGKBlS8L9XFMpZTg== + +Name: oracle/jdbc/dbaccess/Messages_sv.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: S2djNe6Nxr4/2RTwmfsW+EgvKWU= +MD5-Digest: 17FpXlYjdkm5yUO3ukvnjQ== + +Name: oracle/jdbc/dbaccess/Messages_th.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: nfwCYyZ8phAFNU6+XqCsHPsCTlI= +MD5-Digest: BB6bEXDTWY8SJD4ToCcQhQ== + +Name: oracle/jdbc/dbaccess/Messages_tr.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: d+iLMJCeaa616Q54jCqsmghnF0U= +MD5-Digest: OwinZoMKsj4KpKKBRLWxog== + +Name: oracle/jdbc/dbaccess/Messages_zh_CN.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: lWwKHAU20uAPy8vD3RF+A6Nje+U= +MD5-Digest: wNoyiC/U6YFU/RgePGRpEw== + +Name: oracle/jdbc/dbaccess/Messages_zh_TW.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: wfWE6gOrEm6Va3L8qhyR8vYwD64= +MD5-Digest: UheRONj2O4bGeg5zxVw6kQ== + +Name: oracle/jdbc/OracleStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wvL/1wpW42c/gJ5by+dAb3EoJiw= +MD5-Digest: GXIjjxBjbGKpeUJc7u6C1w== + +Name: oracle/jdbc/OracleDatabaseMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: FMYMB0H4OaNzun3vHFagOedMu0o= +MD5-Digest: oGjKscvgDAqSiIBLJ/TJTg== + +Name: oracle/jdbc/pool/OraclePooledConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KR5JKUtZW/h0gP+UQtIhhcgU8lU= +MD5-Digest: SckFzlL+yP9u3wZ7l5AANg== + +Name: oracle/jdbc/pool/OracleOCIConnectionPool.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UO2n21gR+cZlQPUNil1Caqmpbzc= +MD5-Digest: nAmluKnXHs5TSm/o5ygzfQ== + +Name: oracle/jdbc/pool/OracleDataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Xo/yZdFmhYP9ZGUEt0aMqCvFlRI= +MD5-Digest: GCxQe3nM+HoxB0vYtQJrtA== + +Name: oracle/jdbc/pool/OracleConnectionEventListener.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ShMjFahoBEkjy2Qjha1mn5gvtZc= +MD5-Digest: qtAc63hYWkQMl6p9wnHj1w== + +Name: oracle/jdbc/pool/OracleConnectionCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: sgKefYDNLfZKDyyt852zbf9JdRE= +MD5-Digest: WZCoLFWdKxEZ5d7qoXgxVQ== + +Name: oracle/jdbc/pool/OracleConnectionCacheImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: VaNwdl6BJJy8CZlePH9oqow++x0= +MD5-Digest: Bx9SKs9GFoF5EoGH3fHRVQ== + +Name: oracle/jdbc/pool/OracleConnectionCacheTimeOutThread.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tsuI/9AL8w34m3wwCrItVRNE3Gw= +MD5-Digest: z6g96Dc7Qur12vszH6idJQ== + +Name: oracle/jdbc/pool/OracleConnectionPoolDataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: AXZzEXUL2lr7MapgK5wRV8EdfTs= +MD5-Digest: DoCqMa7mXh8dz/utw3ETqw== + +Name: oracle/jdbc/pool/OracleDataSourceFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: TZdWyUxze85qOvpPJxiNhiAkyIY= +MD5-Digest: qU34on1NIyO336vMCHQkjA== + +Name: oracle/jdbc/pool/OracleXAConnectionCacheImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: H/QMDhxfFXN9SSa2XhHoV/g72Uk= +MD5-Digest: htQUeHKHgc2XwymTwQNYQw== + +Name: oracle/jdbc/OracleSavepoint.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lOaKTVUL57m4sFTblD9MzR2tjI8= +MD5-Digest: aBF+fSRcpgibu5IJqpGqpQ== + +Name: oracle/jdbc/OraclePreparedStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yiUAlkRZEzqOjdT0Vd+F1Zuly54= +MD5-Digest: 0RXjZmZIPaws8hBRJHsdCg== + +Name: oracle/jdbc/OracleOCIFailover.class +Digest-Algorithms: SHA MD5 +SHA-Digest: oxJ7wVfVU5DH5s3smL4YAXoU/5Q= +MD5-Digest: G8N6fQHQb9x14Ti/7exZtQ== + +Name: oracle/jdbc/OracleResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: S4kmz7G0cjkKJGXNRQdxZLqmh88= +MD5-Digest: vwMs1VcmVgKXkBsFgZPvJQ== + +Name: oracle/jdbc/OracleResultSetCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: C1aQWKNdjLX0Ak1ruPVHcCLybbc= +MD5-Digest: Sh+MzOSX4Vrr0/a7acwIeQ== + +Name: oracle/jdbc/OracleParameterMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RLxiTe51yEBDrs9n5/e5b4+M5o0= +MD5-Digest: 0/8RLpWxTenXd1Lo4XL7/g== + +Name: oracle/jdbc/util/SQLStateMapping.class +Digest-Algorithms: SHA MD5 +SHA-Digest: i8TQMVonFNp35QDGV0N5B2HMif8= +MD5-Digest: 4K23GUeIdoY29p05cDjI7Q== + +Name: oracle/jdbc/util/SQLStateRange.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6odEBwqDV03DLQY33sJV2mffOnE= +MD5-Digest: xWApNMxWzLus63BJoEtbwA== + +Name: oracle/jdbc/util/RepConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: n/tQEmVitMn9Ln1+76rjXBPxiN4= +MD5-Digest: QttHZ4UhNUovgHG7kGwGnQ== + +Name: oracle/jdbc/util/Login.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yLwyB1LTCqa7ddJw33P1p9KvCak= +MD5-Digest: VciLvPsgNaB4mpb051G33Q== + +Name: oracle/jdbc/OracleTypes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rUwGM231n+7+eOMWOuCu6cGoprk= +MD5-Digest: WAH1phAdiDv6IzKhIlk7LA== + +Name: oracle/jdbc/oci/OracleOCIConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: A74KOrw1Y5gcid3Pd/14jCFHDA8= +MD5-Digest: mhYBZqdfKQLYQvZpjGFXPQ== + +Name: oracle/jdbc/Const.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MvL6jFVR0YhlatN4W/362sPEigo= +MD5-Digest: uBLzcnKoNiFYpUy/sz1AEg== + +Name: oracle/jdbc/OracleCallableStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: b/25CXnAwz6ktWJgoA9rIC7YypA= +MD5-Digest: k1R4SaX2m/sbJMV2Bn+n0A== + +Name: oracle/jdbc/StructMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: CwhOnsHLAcNAgJphMzItPXl27tw= +MD5-Digest: dXDBMeLuj6tnhv5HMFH43Q== + +Name: oracle/jdbc/OracleResultSetMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 56gD4E1ttbleTZT29Wf0KEmURaI= +MD5-Digest: Tax/JHYAO02ICbVYh5J9iQ== + +Name: oracle/jdbc/oci8/OCIDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6VR4VQYU2ccl5cnfbQS3s9AY4IE= +MD5-Digest: 4xMZkhHcbWaKw71vscg7/g== + +Name: oracle/jdbc/oci8/OCIDBStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BH3ONQEQf7FyN6+UoW6a5VcjY/0= +MD5-Digest: VTp9oZL8wITAQilv3j5qfw== + +Name: oracle/jdbc/oci8/OCIDBError.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aS+Bipezyq7aNuq/emzG4hnTL+M= +MD5-Digest: 8SMB1JwTTC+OsxKawGaafA== + +Name: oracle/jdbc/oci8/OCIEnv.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eaglQUNvZL7BhaibatVrpFXY0dI= +MD5-Digest: +sHgHlsCd4VorXB5CzE1aQ== + +Name: oracle/jdbc/oci8/OCIDBType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4ftL03TVcpGA/7qErYKIvFrO/tA= +MD5-Digest: 1l87vv3BK3R0645gFPRqog== + +Name: oracle/jdbc/oci8/OCIDBItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gkiYPgAG7jAhDH5bP1lynXp5a3c= +MD5-Digest: 6CcxPaPUSzP72HgoHbh5WA== + +Name: oracle/jdbc/oci8/OCIDBDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: z7s5vuUv1Qvfc+MxnA3DjrhJbLg= +MD5-Digest: 9/VBPdi/xiGt2gc3LGUVTA== + +Name: oracle/jdbc/ttc7/FunCodes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5+zD9Th4bceq8QUSX4UDd53lgFM= +MD5-Digest: 7E7TaUvWGKjJfiA2E2Q1uQ== + +Name: oracle/jdbc/ttc7/LongTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U4RCcoO6lwddMtDWGXVzjdBs/iQ= +MD5-Digest: 5A2CEMDT3Gav43IRnrq32w== + +Name: oracle/jdbc/ttc7/TTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: iBq4IQwlIi5rRfDv9wq4JI7HNW4= +MD5-Digest: dD7PQrS/5DCE5VckZ8j9mA== + +Name: oracle/jdbc/ttc7/MAREngine.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cxHG4v2TS9mobu2YBLNpQ6SzPt4= +MD5-Digest: 0mmVp47dEu+RhovTkhkIkg== + +Name: oracle/jdbc/ttc7/TTCTypeRep.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bwuOyccEx4ibScN1co22kCsJozo= +MD5-Digest: 2eM9pxBn5i8Oulh53F6IXQ== + +Name: oracle/jdbc/ttc7/TTIfun.class +Digest-Algorithms: SHA MD5 +SHA-Digest: orvGo4QlF2+yYW4QPaWvRDX818A= +MD5-Digest: QGVlR3vNFb1tTiRALr+/jw== + +Name: oracle/jdbc/ttc7/TTIMsg.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ODXGlYPyUnsEqce6pjeb60Ed+Hg= +MD5-Digest: pPnY5jxDWwQAoUGf6matOg== + +Name: oracle/jdbc/ttc7/TTCcodes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qqiJk/Gv36/OCd5ukHr+XrcQKvE= +MD5-Digest: hRAmpWBw1/HEN4iK8+ouxw== + +Name: oracle/jdbc/ttc7/TTIoer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hFAV3ob5T0b8n0TS1y1C3JAiuUM= +MD5-Digest: gwlOgV9tGGPoNWDlD+Wgew== + +Name: oracle/jdbc/ttc7/TTIrid.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZQEUhOdmkh6RBSzrniodI/S6JkI= +MD5-Digest: Q1sj8OfC25oKWDwO+QXxYg== + +Name: oracle/jdbc/ttc7/TTIti5.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2eBXZhhGP3QYjSUDQ2ouLhxYzXY= +MD5-Digest: L0URsD511saYNTUToRQIPw== + +Name: oracle/jdbc/ttc7/TTCConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: w0i6PNNwYYvJwXUGSDxVdJwmmO0= +MD5-Digest: NYQUhxjJnDuROHms91W2pA== + +Name: oracle/jdbc/ttc7/TTC7Protocol.class +Digest-Algorithms: SHA MD5 +SHA-Digest: iIvyN2vLqGfEUQogj7fog7V4na4= +MD5-Digest: 15SHRpY4xsWCJYYm+lLjng== + +Name: oracle/jdbc/ttc7/v8TTIpro.class +Digest-Algorithms: SHA MD5 +SHA-Digest: B3l6NEfvD7wRBAHeDakesOOPCJw= +MD5-Digest: PsebP2sF7J4Je9nuHbvzSw== + +Name: oracle/jdbc/ttc7/TTIpro.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kiRIqoJvly7W+WiSTCv+DurITnY= +MD5-Digest: NbzHlDJUo6U0OjSmkP/u0w== + +Name: oracle/jdbc/ttc7/TTIdty.class +Digest-Algorithms: SHA MD5 +SHA-Digest: m/tdJ1lsf3O2UgVVxOget7t+/Is= +MD5-Digest: 8U4TKAlMyr1pFhPz0Y1DHQ== + +Name: oracle/jdbc/ttc7/TTIrxd.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lZorK5WbN4OHlztuuKcshEMkJSw= +MD5-Digest: ktO40+N2eGAwrQuuIbRpLw== + +Name: oracle/jdbc/ttc7/TTCDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: oaWZz04J4RGTu/7iNkE4gc12/0I= +MD5-Digest: LfpEMUCXxToMLXMfd4nT8A== + +Name: oracle/jdbc/ttc7/TTCColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2x8oKcdFBGG4s6JwGsRfiiQMyQE= +MD5-Digest: 7rNQxBr+99X+7CDgvmlqEA== + +Name: oracle/jdbc/ttc7/TTIoac.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jVTAh5wPZk6Svp3UTM1f+qcYPz8= +MD5-Digest: e4WX4jRgdLM5uEjvHcGxcg== + +Name: oracle/jdbc/ttc7/O3log.class +Digest-Algorithms: SHA MD5 +SHA-Digest: o524N+J/Hv9g1JDdYosy6VDOK4c= +MD5-Digest: ogFwJJhuabBuIcEosSNBEQ== + +Name: oracle/jdbc/ttc7/Oversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xOH29AEPih972cYpi3/zidaDu2o= +MD5-Digest: QCDGAR5PBl9iBJhZjtzorg== + +Name: oracle/jdbc/ttc7/Oopen.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JK9fepJ4cB7JLIt3bZgnBi/O5kY= +MD5-Digest: /osBEAtt4YYKsagU6Dx5gg== + +Name: oracle/jdbc/ttc7/Odscrarr.class +Digest-Algorithms: SHA MD5 +SHA-Digest: XL7zYBC6sMYNgIYteKfJ9E7NNrU= +MD5-Digest: UEq3KeCeovJHT7ali6aYDQ== + +Name: oracle/jdbc/ttc7/TTIuds.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qfH/tyAnSsMJgweu/oqIHv4m178= +MD5-Digest: 78RvaNMhbr9mvkIlg3CDBA== + +Name: oracle/jdbc/ttc7/TTCStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ikDPBBFY55cqR2mWI/sXZ068DBM= +MD5-Digest: kRNZsk4QzcvNxx9BMe4ziA== + +Name: oracle/jdbc/ttc7/Oall7.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yvOfzybs+jegZlg6d5AZfHw5Enk= +MD5-Digest: sS6B60pWQohQy6bkgQIbrg== + +Name: oracle/jdbc/ttc7/TTIrxh.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2/oNRuqGvlcHcZ6MWkqq6ADKPVk= +MD5-Digest: sFMwO2YORXn1zar+YBJJQQ== + +Name: oracle/jdbc/ttc7/Oclose.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 9EncC+wLTgs9OMHneJYXHPyrcgY= +MD5-Digest: eOYlKuPWQ3UzTA2TQJY0Aw== + +Name: oracle/jdbc/ttc7/Ocommoncall.class +Digest-Algorithms: SHA MD5 +SHA-Digest: AHjNInhGrKujpHlGmrsAiWGapSo= +MD5-Digest: OX3bZTFKG0tzpfWq2e8hrg== + +Name: oracle/jdbc/ttc7/v8TTIBfile.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +zKR/gT6/dTLa2L1una5tAb0niY= +MD5-Digest: diGoTlZ4l6ybak1lOk6mOA== + +Name: oracle/jdbc/ttc7/v8TTILob.class +Digest-Algorithms: SHA MD5 +SHA-Digest: weF1z51I8V+sBAlx/LfYDjQWJlM= +MD5-Digest: lfLNTjfVut8UjNBZSjRqxQ== + +Name: oracle/jdbc/ttc7/v8TTILobd.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vJ7Uwa4045O5hylRNlipRhFDUng= +MD5-Digest: IAUMtB0kzND4lHRWiI7kMg== + +Name: oracle/jdbc/ttc7/v8TTIBlob.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YYqA/oXNMPVaT/RdVZd6ccvhL4k= +MD5-Digest: WzPYIegzwsuh9S5Hm3Ap9w== + +Name: oracle/jdbc/ttc7/v8TTIClob.class +Digest-Algorithms: SHA MD5 +SHA-Digest: LT5ujgvHS0mRWTsD+il5f1CK2MU= +MD5-Digest: ms0M2J/bugYo/b7Cax/bag== + +Name: oracle/jdbc/ttc7/v8Odscrarr.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6YaRcfo/oFaJsgpiGv0J9vkKU0Q= +MD5-Digest: 2D4Hhg+QDkCTk84p0HK+qg== + +Name: oracle/jdbc/ttc7/v8TTIuds.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mF6+J8KBQhYrd+B219x8lERPcBs= +MD5-Digest: UqGaiKQKUSmpnUBKxbcKBw== + +Name: oracle/jdbc/ttc7/v8TTIoac.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WCB10rc9lEiJXMr3lKurdz13ftM= +MD5-Digest: CHeGQe25ZC3OvDOZdRlQhg== + +Name: oracle/jdbc/ttc7/v8TTIdty.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UAXHYbqDX4Y+cIRfSYvti2iWTwY= +MD5-Digest: 7vj3PWZBQl0O3ck0px5oqg== + +Name: oracle/jdbc/ttc7/v8TTIrxh.class +Digest-Algorithms: SHA MD5 +SHA-Digest: urubprymatzm/6EkH5PS3GQ+3Sg= +MD5-Digest: OjApadJoSw3AfGqOv/11Nw== + +Name: oracle/jdbc/ttc7/TTCAdapter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fYRAfXURWJXJ/lri1ZFldJYWUUA= +MD5-Digest: GsqNKxm0kYmv9p6gw0C3Mw== + +Name: oracle/jdbc/ttc7/PlsqlTTCDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NjpjpuRnr9VzTgrNDrCieNSmQdw= +MD5-Digest: NusvUIr+wmakt14B5t+SHQ== + +Name: oracle/jdbc/ttc7/PlsqlTTCColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bBg2Zs69Q/6C3GSObrdlRcRdsSM= +MD5-Digest: tmUqauvrSmBms5BoyHp8+Q== + +Name: oracle/jdbc/ttc7/NonPlsqlTTCDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eFviLj7fi2DoUEMXS6ilnxZwpuY= +MD5-Digest: /agZY+oFcnZMgJnP7tD9VQ== + +Name: oracle/jdbc/ttc7/NonPlsqlTTCColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UYHwJ74u0wPh3uSVGyMQLf+ngvs= +MD5-Digest: HYMvEnk290qJTDt2sevJ0A== + +Name: oracle/jdbc/ttc7/Okod.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cHSVQCyhMpadUfU6CwiSblTV5ZU= +MD5-Digest: aycpG1Ih0peFqgfjxuE3YQ== + +Name: oracle/jdbc/ttc7/NtyTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PEOiwJMdjzHmeDaiKWmAn0FrNXM= +MD5-Digest: SY23Z+tPjdXWZHmzk+Vy9Q== + +Name: oracle/jdbc/ttc7/RefTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: OfL8qh7Bnm9Yw4nIZRHssNbqxXY= +MD5-Digest: Asb0TzJPIs8RMqrFXW/q0A== + +Name: oracle/jdbc/ttc7/RefCursorTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4pUK8POUDOoKU0rmWSv2wc+Rvt4= +MD5-Digest: tDGCDtQjDV+kt3VNbe1Ubg== + +Name: oracle/jdbc/ttc7/TTIiov.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8rKTqz+JUQcUimMtoujRk+IJ+jg= +MD5-Digest: 2vR7bKfMC8v7Cfspik/6nw== + +Name: oracle/jdbc/OracleConnectionWrapper.class +Digest-Algorithms: SHA MD5 +SHA-Digest: SHEdZajr/fa2vFC5rsxUIZIj/YI= +MD5-Digest: IimDXsGVQYNOzUfZ/8alog== + +Name: oracle/jdbc/xa/client/OracleXADataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BYJCGo8t38UlwZ8yod0B16IKkYc= +MD5-Digest: mUv54rP6AIwi+MEvFt4Ueg== + +Name: oracle/jdbc/xa/client/OracleXAHeteroConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dI/+Bln+/A7EeNSX2bOgEl1IiUA= +MD5-Digest: DwEGcIxtFzT+8faZxqkogg== + +Name: oracle/jdbc/xa/client/OracleXAConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: o0yCsN03DjNWTCekQA/kCrwp4RE= +MD5-Digest: Lbk8b59AIBNSNKuuqEpKCw== + +Name: oracle/jdbc/xa/client/OracleXAHeteroCloseCallback.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WPW0gzXKp46Y3ki6wfR0J4X7YOY= +MD5-Digest: kqPNFkob8+2GNYck8ge3sw== + +Name: oracle/jdbc/xa/client/OracleXAResource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mhqx6EvK7EuiVB/AXoCaLV9RZ2A= +MD5-Digest: w6mG3vFyG/ypZvUAbfg9rQ== + +Name: oracle/jdbc/xa/client/OracleXAHeteroResource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: glITEif+1BgtJVkZ4QYsrtDEVCU= +MD5-Digest: uI3zKtjINtn5pKlZLs5M4g== + +Name: oracle/jdbc/xa/OracleXADataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jGDFjvlXeBqYYjzPd2d8fl8rLH4= +MD5-Digest: xV29W3Dw5ZMQR4sBicWUzw== + +Name: oracle/jdbc/xa/OracleXAConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6CC9KzicurkdZvRDyqsmLQK64OA= +MD5-Digest: KPR1Z2ad9HAxO8nPQO7KZg== + +Name: oracle/jdbc/xa/OracleXAResource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DCLLyCC3XNNUek7yQmSzbiUnPy0= +MD5-Digest: BRllhH8RR2iwSjjr5hQeAg== + +Name: oracle/jdbc/xa/OracleXAException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BaLY4T8EQhd39WGnIgXAqK8cQmI= +MD5-Digest: 3wNcmNdXhVXLm0gao+nSxg== + +Name: oracle/jdbc/xa/OracleXid.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Re3NEvEi8J7BhUk27ZXT+wBijc8= +MD5-Digest: 7LlJIDjzSGT7Vi6VhbqOig== + +Name: oracle/jdbc/xa/OracleMultiPhaseArgs.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2A6rSIE6VqPwsZ8muSVSiAWfd6o= +MD5-Digest: Yk4Fhff1HTqtXbh5r8+6ow== + +Name: oracle/jdbc/OracleDriver.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 9rr5c/SS5xy+kDpBjpboBNk57WM= +MD5-Digest: w1RZecZ/Yww53LqxuqZItA== + +Name: oracle/jpub/runtime/MutableArray.class +Digest-Algorithms: SHA MD5 +SHA-Digest: C6ND8+igREz2cLiJ3YZZZX+haXg= +MD5-Digest: CmObGly+4CjP81K4B7uYRA== + +Name: oracle/jpub/runtime/Util.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xzY5TiG1n1zAcxvJzkoYsiYMxi0= +MD5-Digest: 7cAHSJCTjvasM+9KACe18w== + +Name: oracle/jpub/runtime/MutableStruct.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HA0TjtsrCtRV81bh/ShBJCU+RiA= +MD5-Digest: tjqdVD+bfbTJ9B/BuvywVQ== + +Name: oracle/core/lmx/CoreException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RWZRNRk3MDNNnOK5QrwmzbdOhTI= +MD5-Digest: U/DZVwsWUL4BX88hS3YHng== + +Name: oracle/core/lmx/LmxRepConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 66LU9R3lJvYxRMoAt/JHPxjK4H0= +MD5-Digest: LF1ptfrSy2M9IaWjmfzkTw== + +Name: oracle/core/lvf/VersionMgr.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2iTCGy1VSnAxR7SzQ3BqQhtwc2U= +MD5-Digest: ArmzUCnch/oYVIv5EjwB1g== + +Name: oracle/gss/util/CharConvBuilder/BigCharDataParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Sctr90SFcACkWC7kfAkRW34CLRM= +MD5-Digest: AZ0zowPVXmRB+AxJjMJT8g== + +Name: oracle/gss/util/CharConvBuilder/BigMappingParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pPk49MXa6EsTCnV+XN/WJyhK2gI= +MD5-Digest: 1jf/BDHuYV5yK2EGqpgvMg== + +Name: oracle/gss/util/CharConvBuilder/BootBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4QBzMv8mp1wBlHajwb0btete6UI= +MD5-Digest: UDolJq6TP2v4dd3mi67/0A== + +Name: oracle/gss/util/CharConvBuilder/CharConv12ByteBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cx01rYyD2xHvb6C+I9aVscxgCyY= +MD5-Digest: GEbvwANjzuFDZq5t8q2nTQ== + +Name: oracle/gss/util/CharConvBuilder/CharConv1ByteBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: prMLmPHKoUXd1tbpPvLDwJtO924= +MD5-Digest: CxYy0gLf4np0itTZ5ohhlw== + +Name: oracle/gss/util/CharConvBuilder/CharConv2ByteFixedBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NcJowBWQ7Dl8nx6KhaMzi/tw3Ws= +MD5-Digest: /pvp7splqjiueC1wB1kq9g== + +Name: oracle/gss/util/CharConvBuilder/CharConvBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xunRKC1cmRFfxPhARG+MO+3WICo= +MD5-Digest: sYb3JrP8P33lCW+vuurxCQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvGB18030Builder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Nkdw84k18Ir+o+zMYuLDY+6uj9c= +MD5-Digest: h8UqxpBWSiaVDkDtbMGqaQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvJAEUCBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DNi4wK9Thxoavv07AaSIhpnK0DU= +MD5-Digest: t67anBDxe2mweUcoEb+fdQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvLCFixedBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7NdLJQX3nUvjP9suPmnBZqnxlEs= +MD5-Digest: pSXyL/RuIHi9YSnPyM48+A== + +Name: oracle/gss/util/CharConvBuilder/CharConvSJISBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IcVRut6TTpKT0Po1JDZAklq6oE4= +MD5-Digest: GVeXtrdpvZ8RN/WyH5GhNA== + +Name: oracle/gss/util/CharConvBuilder/CharConvShiftBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BbBOKp7HS/9FTz82qHSy1S43k4k= +MD5-Digest: tVRTJ7Ezf7mtneAH9xzfqQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvZHTEUCBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: FMGKhexf7hkqkjXm+2DnO3oVuJ8= +MD5-Digest: 9pWTYHwm7tExDupCSDRMow== + +Name: oracle/gss/util/CharConvBuilder/LCMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gHuDZoSR1TB/MKx6M9MRZ+i08sQ= +MD5-Digest: wlspm0Srb//KkPfbt+eBQw== + +Name: oracle/gss/util/CharConvBuilder/CharDataParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ysKBYRhSzKgoO263c7ZO12Dwczs= +MD5-Digest: 1L02P3I72nDaaq0hKZeK9g== + +Name: oracle/gss/util/CharConvBuilder/DataTypeParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pXzdGH9mWj6q+80ep0JO7hrDWi8= +MD5-Digest: SJct8fK+e76Vs1AmfdfzBg== + +Name: oracle/gss/util/CharConvBuilder/ExtraMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nu8BOdQPu+BEyOtUTeNEP4zm9f0= +MD5-Digest: JmV3NruSiXJtBT+5nW2mng== + +Name: oracle/gss/util/CharConvBuilder/JAEUCMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8jGM8Py6/3aK0ieLjJEprZaTuq8= +MD5-Digest: Ny1UlSOWAX10aIUCAnw9Yw== + +Name: oracle/gss/util/CharConvBuilder/LCFixedMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rYYyjOrgmbvFL497CI8l0ONvKT0= +MD5-Digest: gVpC4Z2BuWheSE9opczpcw== + +Name: oracle/gss/util/CharConvBuilder/MappingParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wN+inNerUiA1Zey+dWbmnfyTev0= +MD5-Digest: L1rxrXbmLclaYAb3nnGlcQ== + +Name: oracle/gss/util/CharConvBuilder/MappingSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WCuE3bs0L4RBsK+hQnrqkecW5kg= +MD5-Digest: RwATRKLjD8rPL+QiymPpVQ== + +Name: oracle/gss/util/CharConvBuilder/MultiByte12MapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tM2Mla1Yai4CcVSvDs7dWZ+TWVM= +MD5-Digest: fwb2OkoK9pXIQ2Y7NeD+BQ== + +Name: oracle/gss/util/CharConvBuilder/SJISMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MfAb89hEMPi7aYtSm2FtzlvGrGU= +MD5-Digest: QNLb66KrpYI7Q7zczCMYoQ== + +Name: oracle/gss/util/CharConvBuilder/SingleByteMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fqacn50g6AhBZtyCSBGliGzNfOk= +MD5-Digest: wpl4bD5gBCkuTHEorMO/dQ== + +Name: oracle/gss/util/CharConvBuilder/TokenParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ceRntz5Gv00J3ZwKFwLR/LQ9NSU= +MD5-Digest: ytSPU9vDjBtbLpZaSDanKw== + +Name: oracle/gss/util/CharConvBuilder/UniPropBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1BmnIQfTPXL55pJLFGnL4WmBGBI= +MD5-Digest: W7xhqr+hqwez5M2KgwsaMA== + +Name: oracle/gss/util/CharConvBuilder/ZHTEUCMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: e6n7gm58OwDLz6U4gx5LZqWXDO8= +MD5-Digest: mo4SqiswHic4aXdmimiEZg== + +Name: oracle/gss/util/JNLS.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xigpparUT8s8B2M/mjZYhhk9JJU= +MD5-Digest: ntuXsmTLgWvYSRUvQSIAUQ== + +Name: oracle/gss/util/NLSCharacter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RD7d/7BWfQz/KeJbuMWJGDtqCHs= +MD5-Digest: ODMjhSDEcNAd/g6mya9aaA== + +Name: oracle/gss/util/NLSError.class +Digest-Algorithms: SHA MD5 +SHA-Digest: B/aWgr90LYTXOnwcGAscgCmZnxc= +MD5-Digest: aucyLypHr7nTYvhQ23nNJA== + +Name: oracle/gss/util/NLSLocale.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HPLERtaYUiIX7WlICIOLTVeMjj8= +MD5-Digest: pC0oT/cAn9cpuOdPgNCEAA== + +Name: oracle/gss/util/NLSLocale001.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +G4hZMZLIiUt5VQd9DUnmwtOCXM= +MD5-Digest: DEVnNvrotxZY1sU4SW3zMw== + +Name: oracle/gss/util/NLSLocale002.class +Digest-Algorithms: SHA MD5 +SHA-Digest: /eSJetBGhMeLqErwjX03DGl0p88= +MD5-Digest: lUCHFK/uEPSe6Ot9M5lLzA== + +Name: oracle/gss/util/NLSLocale003.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DNRsl0BvZRIZPq75NEuX73/+iew= +MD5-Digest: Bg5vF2Phf8RR0f0CRqiOmg== + +Name: oracle/gss/util/NLSLocale004.class +Digest-Algorithms: SHA MD5 +SHA-Digest: n/2N7QQbWBXFjhdbcLjkLeq98+E= +MD5-Digest: xozdVtKz4vuHtE05Iboj8A== + +Name: oracle/gss/util/NLSLocale005.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IUUQVkKo83qrPoMv8wkdKKy0FdM= +MD5-Digest: nsj29N94UhyJEFh0cZ/qUg== + +Name: oracle/gss/util/NLSMessage.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7eJOMxZEyRX99rww8rY0HUSx63I= +MD5-Digest: WPQ2M2pQQKOtqCGBAkzm7Q== + +Name: oracle/gss/util/UnicodeProperty.class +Digest-Algorithms: SHA MD5 +SHA-Digest: upge6Nm/PZF5lCY69GPmItyp67A= +MD5-Digest: 1bQoOpfJCcy5UOcBrJLGOw== + +Name: oracle/gss/util/XmlValidate.class +Digest-Algorithms: SHA MD5 +SHA-Digest: L63ryJzAHqnzfhXZiaL81KgxnsM= +MD5-Digest: IJ2WCGmRhh2ESR4JVMl7KA== + +Name: oracle/gss/util/data/lx0boot.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: AJVSta1L3N3R5fJp0AV73LG//bA= +MD5-Digest: 86bK41gMhkd+O0ajysD+7A== + +Name: oracle/gss/util/data/unicodeprop.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: DbQZpTKlgGTLctGJxFC75K3zZA0= +MD5-Digest: 1gcfl0y7WDYf91JGbJ6M8w== + +Name: oracle/gss/util/message/ORAMessages.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: lhxtij6kLERhT1HzZsjvuiahPc8= +MD5-Digest: FAg9Ndaf6dcDW1nZ0O1UdQ== + +Name: oracle/gss/util/message/ORAMessages_de.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: 2jmj7l5rSw0yVb/vlWAYkK/YBwk= +MD5-Digest: 1B2M2Y8AsgTpgAmY7PhCfg== + +Name: oracle/gss/util/message/ORAMessages_fr.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: 2jmj7l5rSw0yVb/vlWAYkK/YBwk= +MD5-Digest: 1B2M2Y8AsgTpgAmY7PhCfg== + +Name: oracle/gss/util/message/ORAMessages_ja.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: O3XjLeVVI6CHK/2MixV5xXz4ZlE= +MD5-Digest: g32EPjSpSPBOcSxFY4L+qw== + +Name: oracle/net/TNSAddress/Address.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ABJxoxPmwEdR5IeZMdNqxSB1SB0= +MD5-Digest: MdDS036Kqym8X5u6CeJZlw== + +Name: oracle/net/TNSAddress/AddressList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1j9vyjdcwiC3JbOp1BXqXMbHubo= +MD5-Digest: SnmMHC7dbBAfVozOLyBgVQ== + +Name: oracle/net/TNSAddress/Description.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IFg/Ohxp0aWc2vDbN1BdvCz+N24= +MD5-Digest: KvXQKZwZDadEtJGt/2xEyQ== + +Name: oracle/net/TNSAddress/DescriptionList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3bi84oeDlDQArdmAXL1D+j2tP9A= +MD5-Digest: jNjRL2FrcjmpAFmWOTrewQ== + +Name: oracle/net/TNSAddress/SOException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Bu5Gv9RTtF043Qhh5X4ehXncn3w= +MD5-Digest: hx38kUciVuZoLkFwrenIWA== + +Name: oracle/net/TNSAddress/SchemaObject.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DmH6md7wlXtm+kvePKEelAE3hSI= +MD5-Digest: EUuozzxXA3ZbvBgreTcBDw== + +Name: oracle/net/TNSAddress/SchemaObjectFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hJRQ8ejwVnVvGlaTzaX3jK4hyCw= +MD5-Digest: BXSidLHUnMWXDCf4y0+Z9A== + +Name: oracle/net/TNSAddress/SchemaObjectFactoryInterface.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8IFFUCz9wuGOwsIESNKhOFA7y9A= +MD5-Digest: YS44/t5IVud79qGdhFiCkw== + +Name: oracle/net/TNSAddress/ServiceAlias.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wz36zj68w0jCRE8Wo+VR6kygWDQ= +MD5-Digest: lXat7gHVbok0/Wb4teZJ1A== + +Name: oracle/net/nl/NLException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ALT8ZTz5RjILxYqjEc5Fa4DPkzc= +MD5-Digest: 4mW7t/W+6CJ4b1bO22Seww== + +Name: oracle/net/nl/NLParamParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: /h+NGCz2f5/l3N7L/xN+GML2dS0= +MD5-Digest: bB6zk/IVqz8qw3Lp1cfS5w== + +Name: oracle/net/nl/NVFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 0PaM38Z+XxvpYD7l5Ldc0b/XALQ= +MD5-Digest: RZXQiw5Gofba1AGKgNwjdQ== + +Name: oracle/net/nl/NVNavigator.class +Digest-Algorithms: SHA MD5 +SHA-Digest: P3A7qP1cFT9IKAM2FF5Q0SvaHEw= +MD5-Digest: x7yEGETF7rSlXfSIdxGbZg== + +Name: oracle/net/nl/NVPair.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vf/FWn0bPkGI7b+DcPkLBKGTqmQ= +MD5-Digest: DdFNcwImujeaPz0BQHmzNA== + +Name: oracle/net/nl/NVTokens.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 42CfcuZp/TkwLyWRkBXD+Ugiv6c= +MD5-Digest: mBpm7VBnTBI+jAKIw1Mj9A== + +Name: oracle/net/nl/RepConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cOoEvFlbxB9Rt1twHeQEZT9REzg= +MD5-Digest: LB0V87y8uB3KWEWHHG75gQ== + +Name: oracle/net/nt/ConnOption.class +Digest-Algorithms: SHA MD5 +SHA-Digest: u9sD7KsIx6dQbZmdyK/IQFDrIJw= +MD5-Digest: 4NQC56oC2SmXY3esPmzhLA== + +Name: oracle/net/nt/ConnStrategy.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qAKNA71ZEXJnKoCgn5Z3TFKU7T8= +MD5-Digest: t4nGO+FvG9InE7KtfUVt2A== + +Name: oracle/net/nt/NTAdapter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: J1K8H1mQkFir4+p/wRWxdE6U+JA= +MD5-Digest: vVULU0NaBVbmmvyOGTdvXQ== + +Name: oracle/net/nt/TcpNTAdapter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xPlQDkxlOHx5p9wdwhCM2Esy0Jc= +MD5-Digest: 5h6t/6P2ckmnnGL/UolTTA== + +Name: oracle/net/jndi/JndiAttrs.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ouKbgRT9pKR10bJJCJq5aKHipkY= +MD5-Digest: jXvjfqPhByVJM9kQqdppeQ== + +Name: oracle/net/resolver/AddrResolution.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RVwWkltMCQjQvb8VsFMVS0jxizE= +MD5-Digest: W0Kdwmbed8JTPmk54z9j1g== + +Name: oracle/net/resolver/NavAddress.class +Digest-Algorithms: SHA MD5 +SHA-Digest: F8YBe/Z+A44zv2t/vbQM6oxKXrk= +MD5-Digest: 6Q1WsetTeffT1TxPDDm1VQ== + +Name: oracle/net/resolver/NavAddressList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PetQLvezakwaCBv7l5qfpbjirpE= +MD5-Digest: 87RBJViFh33la/7oeh+eTw== + +Name: oracle/net/resolver/NavDescription.class +Digest-Algorithms: SHA MD5 +SHA-Digest: R0dkcDhsxmAzcySquGfGTG/Ym6o= +MD5-Digest: DUf77z/cFZTp63Z7jxKm3g== + +Name: oracle/net/resolver/NavDescriptionList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nfEKw14IdkQeo2Ji8lLJZbctHbU= +MD5-Digest: QoUD6+8wHlSk2eFlDcb2pQ== + +Name: oracle/net/resolver/NavSchemaObject.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6KXdJwO3E2S7s3CxzzEEZzMfedQ= +MD5-Digest: s2CrDc9zp86PlsPKZgqgOw== + +Name: oracle/net/resolver/NavSchemaObjectFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wig1ms29RqxIGOQ1GzbYILckQ2w= +MD5-Digest: zvQs9qXskfrnnGLm0p4sUA== + +Name: oracle/net/resolver/NavServiceAlias.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nY6wqgdJdxt/qAPAYfQ8RKWkjsQ= +MD5-Digest: a00GsjUmr6MMiPIi+yIp7Q== + +Name: oracle/net/ns/AcceptPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: SwomXWZpXJriF1zsuU8olLGtlBo= +MD5-Digest: WuYsg031tWC/+xJcMtIMwA== + +Name: oracle/net/ns/BreakNetException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7lQgG3p/dZedwtfYCezCk5yszgI= +MD5-Digest: 5BcBBp80p7oWz98r14nHrQ== + +Name: oracle/net/ns/ClientProfile.class +Digest-Algorithms: SHA MD5 +SHA-Digest: l6iUHl/cnthwx1j8JfqCdsf9vf4= +MD5-Digest: Ja9r4i6lla48iyaZiRt0jA== + +Name: oracle/net/ns/Communication.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UyBxGVwH9g63MxkxgwB3fokvuTc= +MD5-Digest: GcWrjUTF67694PJB+7+ErQ== + +Name: oracle/net/ns/ConnectPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 0ml31zcfBCSYUGlI25eqy7pD05I= +MD5-Digest: iUdDLsp1pHGtmzd26NU/ag== + +Name: oracle/net/ns/DataPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: X8FGhGc7RBXTSIZbxDsGYULhNBw= +MD5-Digest: nssmlr7mnpXEOG0EGzBOow== + +Name: oracle/net/ns/MarkerPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UH55FZonpb/mot2ii3pREGXtQ+I= +MD5-Digest: FpWNF/bGOMKMZWjQTDUTgQ== + +Name: oracle/net/ns/Message.class +Digest-Algorithms: SHA MD5 +SHA-Digest: LuMDu+EwJ4RMp4xYzgPFvBz9r3k= +MD5-Digest: Jg6/bCspYoqEVanvuc4nMA== + +Name: oracle/net/ns/Message10.class +Digest-Algorithms: SHA MD5 +SHA-Digest: By75bE4tvqCSYIxvqmdUtda1wzc= +MD5-Digest: bxaOKNHeZi8JdGErurAErA== + +Name: oracle/net/ns/Message11.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WHnUvZoMbxBykli9d4jpIinRqos= +MD5-Digest: V0dGxCS2SIML/vUKETB3Ig== + +Name: oracle/net/ns/NSProtocol.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NqIhcxKQHUD4HkeQdTUCFReZZqo= +MD5-Digest: BDsD1PIghwGVOYqBa7fHrg== + +Name: oracle/net/ns/NetException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DachUsb+bnuVsm0Q+6tsc5QF2x8= +MD5-Digest: 1BThAVpdpcmG4lPJJc/JUw== + +Name: oracle/net/ns/NetInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Hu1e33625+BBExU8Is9TF9Ed5F8= +MD5-Digest: GfJDsaY+vqzFYdltvOpbRw== + +Name: oracle/net/ns/NetOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5r9aNSSW5y9ppL2LYFZrqpNwpgY= +MD5-Digest: DN+1ms1IkhkJ3Bl/OBWyPw== + +Name: oracle/net/ns/Packet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pnmx1ARnO/tW8IxwPGCl6FRYUnU= +MD5-Digest: mZO80lZmNuXiH0LzMiFOug== + +Name: oracle/net/ns/RedirectPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: VaoAfWQkmyjTY7Ijh/Rej5NdApY= +MD5-Digest: rXc11iE8tn5aAoS8R5GKMg== + +Name: oracle/net/ns/RefusePacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lK3PfQh4R3W23K4OGoyzoCr6Piw= +MD5-Digest: C44ZV0wJCkLaHv1RLBSgrA== + +Name: oracle/net/ns/SQLnetDef.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8Gk8K16+ZXZplKWhrDFtJuTVZVk= +MD5-Digest: d46YzwEs9BjL4LXw3620vw== + +Name: oracle/net/ns/SessionAtts.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YnVUMvlhO7Xj417RcFlTI9oxaCI= +MD5-Digest: n+Fic6fBWsSg62KOMrvOsg== + +Name: oracle/net/ano/Ano.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qebCuOQBDKqMfDwW/TuTvDm6zH4= +MD5-Digest: 3v0lkCZ+/Hua6TwmXy0DaQ== + +Name: oracle/net/ano/AnoComm.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tjH7wIdt8eSL6l3ytRtzc/CjtpI= +MD5-Digest: X71CBgcm8+ZfVp96TvMzUQ== + +Name: oracle/net/ano/AnoNetInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: C1WGBh1v5+i/a/AyOJI0QRLd3lw= +MD5-Digest: 8JGgPgnDYWmzQcHRKJf5FQ== + +Name: oracle/net/ano/AnoNetOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tsHsSYgDizKHUbRISUZ1g3S5xJk= +MD5-Digest: 9gD18V8hADoOQcaynnoK/w== + +Name: oracle/net/ano/AnoServices.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZYpDacLwAn3XIa6IUgjj2Xk345g= +MD5-Digest: rnuwTgj2p1i2AON/+tMv7Q== + +Name: oracle/net/ano/AuthenticationService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: GzYyNsqrw+Y0m0eWr3r803FNcNA= +MD5-Digest: BIBiY536+SIWYRKSoOo1jQ== + +Name: oracle/net/ano/CryptoDataPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jRMp5HwLrmWDk92KN6xf3+D46ZE= +MD5-Digest: RyuCSXKN9+0k9QbdvVItlQ== + +Name: oracle/net/ano/DataIntegrityService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: R45/SUNCm+P4yBdIWBfnd9Bhqwo= +MD5-Digest: 3s1iAB8Fn+Hq4lvtPUx4pA== + +Name: oracle/net/ano/EncryptionService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WFD9c/5FsjT+9ExxM67N5DWWqu0= +MD5-Digest: q0SVli1fzF5sNjqtCfwTEA== + +Name: oracle/net/ano/Service.class +Digest-Algorithms: SHA MD5 +SHA-Digest: V6Nv29ym3sZVaIy3rHy5JogUIxs= +MD5-Digest: qX6bQ5ZOHJrRTIFmTmbSDA== + +Name: oracle/net/ano/SupervisorService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 04yXcE3+T/hAou3+iDRzzmZAY4g= +MD5-Digest: u9l9GU3ONMo1GElPyyNHCw== + +Name: oracle/net/aso/C00.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fEBwtoLIQ3xuihCPqXYdCPEamcY= +MD5-Digest: LFeaS5Uoc5Ve+CRLDwqubg== + +Name: oracle/net/aso/C01.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wHrosv+1/B+lQBdcsX+hU6uOakI= +MD5-Digest: Vr6rR+tHmM3Z77UdLPi58g== + +Name: oracle/net/aso/C02.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5tYlAFOdca69FRWaHdefA6QcZZ4= +MD5-Digest: gAGr3l9G8qd9uc+AcvvteQ== + +Name: oracle/net/aso/C03.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aIkmhFdFrwxu1Fi/AlSykh3Z6TY= +MD5-Digest: 0mY+FVr50NTthVCVcvX6pA== + +Name: oracle/net/aso/C04.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nbkjqpIqPkcf4FUmYQVqm75ZE8g= +MD5-Digest: 9qcfSgydU5jwYmiWPjQOFw== + +Name: oracle/net/aso/C05.class +Digest-Algorithms: SHA MD5 +SHA-Digest: XiKDOuCnzzU6COhlytR+YYnh3zI= +MD5-Digest: CB3x7rtIHWJXVf86BrSKVw== + +Name: oracle/net/aso/C06.class +Digest-Algorithms: SHA MD5 +SHA-Digest: if4EQiITXDMnXJxLSuSKR70mR+4= +MD5-Digest: 3nX6xSWX60je2TaYYaV7Wg== + +Name: oracle/net/aso/C07.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PzXa9ysMt1oQ1vQyFyEk5Qn5it4= +MD5-Digest: 02uTGAvQGJM7xDAPXt7uJw== + +Name: oracle/net/aso/C08.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5IBroAGvzNVgLZdCOpL2JDj7LIk= +MD5-Digest: pKbaLpeghI8uMzt/Cvn8JA== + +Name: oracle/net/aso/C09.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3Kl/7ILzDty4z4sszvItRZ9Hgxs= +MD5-Digest: 2R3ILSYYZcp02o2rDz5QrA== + +Name: oracle/net/aso/C10.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NXI8AZ+useODDJjKW9LdI3fyUi4= +MD5-Digest: 8jdsfQS8nct4Nwm5tDundw== + +Name: oracle/net/aso/MD5$SD5.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4+XiSYbLLeNGJxi+I/zM1vFb748= +MD5-Digest: CFSmytMjOv0gPefkHt3JrA== + +Name: oracle/net/aso/MD5.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HEdjwFi1FgYTMVnjpIomwFY50ns= +MD5-Digest: lHPwIsENTjsVA6NlydWqUQ== + +Name: oracle/net/mesg/Message.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: nJoAzVhhSgqK1FoWRSCdTdCBESk= +MD5-Digest: eQGvbe5bnTxq5vTLlv2mIA== + +Name: oracle/security/o3logon/C0.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1PSNMbUjvRnn6yg1bBVn3wHSLms= +MD5-Digest: giCJ9ExrsQ/d/4umx6x3Gw== + +Name: oracle/security/o3logon/O3LoginProtocolHelper.class +Digest-Algorithms: SHA MD5 +SHA-Digest: j0LqttJlzSbtOHIkqTBfUB5Bd28= +MD5-Digest: Bbl2ml54ub1xNQNMtQFeeg== + +Name: oracle/security/o3logon/O3LoginClientHelper.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bGYEV9e49nNb1tBQ7BFXQiBO8oM= +MD5-Digest: hvoqfL4syqwChVof/Mvuew== + +Name: oracle/security/o3logon/C1.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8+kpgGMq6Iw5f5y/W2vnN1isnZU= +MD5-Digest: y1HzXAcjXmtS+NBWAfibbQ== + diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/eb/20de331698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/eb/20de331698af001c18c4935e001381da new file mode 100644 index 0000000..71436e0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/eb/20de331698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/eb/90002f1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/eb/90002f1a98af001c18c4935e001381da new file mode 100644 index 0000000..0569245 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/eb/90002f1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/eb/a0e4c91d84a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/eb/a0e4c91d84a9001c1d3abf97745a02da new file mode 100644 index 0000000..99ba544 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/eb/a0e4c91d84a9001c1d3abf97745a02da @@ -0,0 +1,141 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/205a2e4ec7a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/205a2e4ec7a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..50d83c8 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/205a2e4ec7a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + JOptionPane.showOptionDialog(null, "Message d'essai", "Configuration", 1, 1, Icon, jlabelBase, "Valeur initiale"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/40acdd1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/40acdd1998af001c18c4935e001381da new file mode 100644 index 0000000..9f7a644 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/40acdd1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/6018d91998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/6018d91998af001c18c4935e001381da new file mode 100644 index 0000000..a3ac61c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/6018d91998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/80c5902c97af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/80c5902c97af001c18c4935e001381da new file mode 100644 index 0000000..3f28442 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/80c5902c97af001c18c4935e001381da @@ -0,0 +1,71 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.GridLayout; +import java.awt.Insets; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextPane; + + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + // Creation de la zone de texte + private JTextPane panneauTexte; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMRequete().setVisible(true); + } + + public IHMRequete(){ + // Creation d'une etiquette + JLabel jRequete = new JLabel("Entrez votre requete : "); + + // Creation des boutons + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Annuler"); + + // Creation de la zone de texte + panneauTexte = new JTextPane(); + panneauTexte.setCaretPosition(0); + panneauTexte.setMargin(new Insets(5,5,5,5)); + JScrollPane zoneTexteRequete = new JScrollPane(panneauTexte); + zoneTexteRequete.setPreferredSize(new Dimension(200, 130)); + + // Creation des panneaux bas et centre + JPanel Panneau_Bas = new JPanel(); + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new BorderLayout()); + + // Ajout des boutons a chacun des panneaux + Panneau_Centre.add(jRequete, BorderLayout.NORTH); + Panneau_Centre.add(zoneTexteRequete, BorderLayout.CENTER); + + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Gestionnaire de contenus + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(400,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Requete"); + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/80d6081698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/80d6081698af001c18c4935e001381da new file mode 100644 index 0000000..001ac51 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/80d6081698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/d067411598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/d067411598af001c18c4935e001381da new file mode 100644 index 0000000..c430805 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/d067411598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/d0ba2a1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/d0ba2a1a98af001c18c4935e001381da new file mode 100644 index 0000000..c613ce3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/d0ba2a1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/e05f2e1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/e05f2e1698af001c18c4935e001381da new file mode 100644 index 0000000..e5bbf15 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/e05f2e1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/e07ac71b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/e07ac71b98af001c18c4935e001381da new file mode 100644 index 0000000..7595f63 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/e07ac71b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/e0d5c71598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/e0d5c71598af001c18c4935e001381da new file mode 100644 index 0000000..2f09b70 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ec/e0d5c71598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ed/201981cefea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ed/201981cefea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..3a2538b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ed/201981cefea3001c1027e59cc3e35e89 @@ -0,0 +1,40 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + if(connection!=null){try{connection.close()}catch(Exception e){e.printStackTrace();}} + } + } + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ed/b01b761a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ed/b01b761a98af001c18c4935e001381da new file mode 100644 index 0000000..41ceb50 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ed/b01b761a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ed/f076e91a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ed/f076e91a98af001c18c4935e001381da new file mode 100644 index 0000000..0e9b39d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ed/f076e91a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/104b72cf4daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/104b72cf4daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..0fe362e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/104b72cf4daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + int resultatConfirmation; + resultatConfirmation = JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + if(resultatConfirmation == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/20a8acf0fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/20a8acf0fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..04e21df --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/20a8acf0fea3001c1027e59cc3e35e89 @@ -0,0 +1,45 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + } + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/40e44c36fdae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/40e44c36fdae001c14499bdcdfff58b3 new file mode 100644 index 0000000..270f863 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/40e44c36fdae001c14499bdcdfff58b3 @@ -0,0 +1,216 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + private IHMConnexion conn; + private Connexion objetConnexion; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private boolean connecte = false; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.connecte = true; + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/60a4931736aa001c1fe69b2045181082 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/60a4931736aa001c1fe69b2045181082 new file mode 100644 index 0000000..feb2ebb --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/60a4931736aa001c1fe69b2045181082 @@ -0,0 +1,32 @@ +// +// +// Generated by StarUML(tm) Java Add-In +// +// @ Project : Untitled +// @ File Name : IHM Graphique.java +// @ Date : 14/12/2007 +// @ Author : +// +// + + + +package IHM; + + +/** */ +public class IHM_Graphique extends Observation.IHMable, Interface { + /** */ + private Color couleur; + + /** */ + private Vektor listeEtat; + + /** */ + public Observation.IHMable sujets; + + /** */ + public void Maj() { + + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/e0053d1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/e0053d1698af001c18c4935e001381da new file mode 100644 index 0000000..426b5c6 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ee/e0053d1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ef/4007c01898af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ef/4007c01898af001c18c4935e001381da new file mode 100644 index 0000000..f791200 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ef/4007c01898af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/10205b1798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/10205b1798af001c18c4935e001381da new file mode 100644 index 0000000..5b5e710 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/10205b1798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/104ea662fcae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/104ea662fcae001c14499bdcdfff58b3 new file mode 100644 index 0000000..e5972d4 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/104ea662fcae001c14499bdcdfff58b3 @@ -0,0 +1,205 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; +import javax.swing.JOptionPane; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + // On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(connexionToBdd.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + jlabelServeur.setEnabled(false); + jlabelPort.setEnabled(false); + jlabelBase.setEnabled(false); + jlabelIdentifiant.setEnabled(false); + jlabelMdp.setEnabled(false); + + jOk.setEnabled(false); + + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypte) : " + this.jtextMdp.getPassword().toString() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(this.jtextMdp.getPassword().toString()); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/10ae985184a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/10ae985184a9001c1d3abf97745a02da new file mode 100644 index 0000000..e0a845c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/10ae985184a9001c1d3abf97745a02da @@ -0,0 +1,151 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + +// conn.addComponentListener(new ComponentListener(){ +// public void +// }); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/70e2eaa54daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/70e2eaa54daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..3845bdf --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f/70e2eaa54daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,200 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + this.bdd = this.jtextBase.getText(); + this.port = this.jtextPort.getText(); + this.id = this.jtextIdentifiant.getText(); + this.mdp = this.jtextMdp.getPassword().toString(); + + + this.pr.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/00ea821e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/00ea821e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..ae7a80a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/00ea821e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\ub0b4\ubd80 \uc624\ub958 + +ORA-17002=IO \uc608\uc678 \uc0c1\ud669 + +ORA-17003=\ubd80\uc801\ud569\ud55c \uc5f4 \uc778\ub371\uc2a4 + +ORA-17004=\ubd80\uc801\ud569\ud55c \uc5f4 \uc720\ud615 + +ORA-17005=\uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \uc5f4 \uc720\ud615 + +ORA-17006=\ubd80\uc801\ud569\ud55c \uc5f4 \uc774\ub984 + +ORA-17007=\ubd80\uc801\ud569\ud55c \ub3d9\uc801 \uc5f4 + +ORA-17008=\uc811\uc18d \uc885\ub8cc + +ORA-17009=\uba85\ub839\ubb38 \uc885\ub8cc + +ORA-17010=\uacb0\uacfc \uc9d1\ud569\uc744 \uc885\ub8cc\ud588\uc74c + +ORA-17011=\uacb0\uacfc \uc9d1\ud569\uc744 \ubaa8\ub450 \uc18c\ubaa8\ud588\uc74c + +ORA-17012=\ub9e4\uac1c\ubcc0\uc218 \uc720\ud615 \ucda9\ub3cc + +ORA-17014=ResultSet.next\uac00 \ud638\ucd9c\ub418\uc9c0 \uc54a\uc558\uc74c + +ORA-17015=\uba85\ub839\ubb38\uc774 \ucde8\uc18c\ub418\uc5c8\uc74c + +ORA-17016=\uba85\ub839\ubb38\uc774 \uc2dc\uac04 \ucd08\uacfc\ub418\uc5c8\uc74c + +ORA-17017=\ucee4\uc11c\uac00 \uc774\ubbf8 \ucd08\uae30\ud654\ub418\uc5c8\uc74c + +ORA-17018=\ubd80\uc801\ud569\ud55c \ucee4\uc11c + +ORA-17019=\uc9c8\uc758\ub9cc \uc124\uba85\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17020=\ubd80\uc801\ud569\ud55c \ud589 \uc0ac\uc804 \uc778\ucd9c\uc785\ub2c8\ub2e4 + +ORA-17021=\uc815\uc758\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17022=\uc778\ub371\uc2a4\uc5d0 \uc815\uc758\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17023=\uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \uae30\ub2a5\uc785\ub2c8\ub2e4 + +ORA-17024=\uc77d\uc740 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17025=defines.isNull ()\uc5d0 \uc624\ub958\uac00 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17026=\uc22b\uc790 \uc624\ubc84\ud50c\ub85c\uc6b0 + +ORA-17027=\uc2a4\ud2b8\ub9bc\uc774 \uc774\ubbf8 \uc885\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17028=\ud604\uc7ac ResultSet\uc774 \uc885\ub8cc\ub420 \ub54c\uae4c\uc9c0 \uc0c8\ub85c\uc6b4 \uc815\uc758\ub97c \uc218\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17029=setReadOnly: \uc77d\uae30 \uc804\uc6a9 \uc5f0\uacb0\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17030=READ_COMMITTED\uc640 SERIALIZABLE\ub9cc\uc774 \uc801\ud569\ud55c \ud2b8\ub79c\uc7ad\uc158 \ub808\ubca8\uc785\ub2c8\ub2e4 + +ORA-17031=setAutoClose: \uc790\ub3d9 \uc885\ub8cc \ubaa8\ub4dc \uc2e4\ud589\ub9cc \uc9c0\uc6d0\ud569\ub2c8\ub2e4 + +ORA-17032=\ud589 \uc0ac\uc804 \uc778\ucd9c\uc744 0\uc73c\ub85c \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17033=\ud574\ub2f9 \uc704\uce58\uc5d0 \ud3d0\uae30\ub41c SQL92 \ubb38\uc790\uc5f4 + +ORA-17034=\ud574\ub2f9 \uc704\uce58\uc5d0 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 SQL92 \ud1a0\ud070 + +ORA-17035=\ubb38\uc790 \uc9d1\ud569\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4!! + +ORA-17036=OracleNumber\uc5d0 \uc608\uc678 \uc0c1\ud669\uc774 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17037=UTF8\uacfc UCS2 \uac04\uc5d0 \uc11c\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17038=\ubc14\uc774\ud2b8 \ubc30\uc5f4\uc774 \ucda9\ubd84\ud788 \uae38\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17039=\ubb38\uc790 \ubc30\uc5f4\uc774 \ucda9\ubd84\ud788 \uae38\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17040=\uc5f0\uacb0 URL\uc5d0 \ud558\uc704 \ud504\ub85c\ud1a0\ucf5c\uc774 \uc9c0\uc815\ub418\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17041=\uc778\ub371\uc2a4\uc5d0 IN \ub610\ub294 OUT \ub9e4\uac1c\ubcc0\uc218\uac00 \uc5c6\uc74c: + +ORA-17042=\ubd80\uc801\ud569\ud55c \uc77c\uad04\ucc98\ub9ac \uac12\uc785\ub2c8\ub2e4 + +ORA-17043=\ubd80\uc801\ud569\ud55c \uc2a4\ud2b8\ub9bc \ucd5c\ub300 \ud06c\uae30\uc785\ub2c8\ub2e4 + +ORA-17044=\ub0b4\ubd80 \uc624\ub958: \ub370\uc774\ud130 \ubc30\uc5f4\uc774 \ud560\ub2f9\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17045=\ub0b4\ubd80 \uc624\ub958: \uc77c\uad04\ucc98\ub9ac \uac12\uc744 \ucd08\uacfc\ud558\ub294 \ubc14\uc778\ub4dc \uac12\uc5d0 \uc561\uc138\uc2a4\ub97c \uc2dc\ub3c4\ud569\ub2c8\ub2e4 + +ORA-17046=\ub0b4\ubd80 \uc624\ub958: \ub370\uc774\ud130 \uc561\uc138\uc2a4\uc5d0 \ubd80\uc801\ud569\ud55c \uc778\ub371\uc2a4\uc785\ub2c8\ub2e4 + +ORA-17047=\uc720\ud615 \uae30\uc220\uc790 \uad6c\ubb38 \ubd84\uc11d\uc5d0 \uc624\ub958\uac00 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17048=\uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uc720\ud615\uc785\ub2c8\ub2e4 + +ORA-17049=java \ubc0f sql \uac1d\uccb4 \uc720\ud615\uc5d0 \uc77c\uad00\uc131\uc774 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17050=\ud574\ub2f9 \uc694\uc18c\uac00 \ubca1\ud130\uc5d0 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17051=\uc774 API\ub294 UDT\uac00 \uc544\ub2cc \uc720\ud615\uc5d0 \uc0ac\uc6a9\ub420 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17052=\ubd80\uc801\ud569\ud55c \ucc38\uc870\uc785\ub2c8\ub2e4 + +ORA-17053=\ubd80\uc801\ud569\ud55c \ud06c\uae30\uc785\ub2c8\ub2e4 + +ORA-17054=\ubd80\uc801\ud569\ud55c LOB \ub85c\ucf00\uc774\ud130\uc785\ub2c8\ub2e4 + +ORA-17055=\ubd80\uc801\ud569\ud55c \ubb38\uc790\uc785\ub2c8\ub2e4 + +ORA-17056=\uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \ubb38\uc790 \uc9d1\ud569\uc785\ub2c8\ub2e4 + +ORA-17057=LOB\ub97c \uc885\ub8cc\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17058=\ub0b4\ubd80 \uc624\ub958: NLS \ubcc0\ud658 \ube44\uc728\uc774 \ubd80\uc801\ud569\ud569\ub2c8\ub2e4 + +ORA-17059=\ub0b4\ubd80 \ud45c\uae30\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17060=\uae30\uc220\uc790\ub97c \uc0dd\uc131\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17061=\uae30\uc220\uc790\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17062=\ubd80\uc801\ud569\ud55c \ucc38\uc870 \ucee4\uc11c\uc785\ub2c8\ub2e4 + +ORA-17063=\ud2b8\ub79c\uc7ad\uc158 \uc911\uc774 \uc544\ub2d9\ub2c8\ub2e4 + +ORA-17064=\uad6c\ubb38\uc774 \ubd80\uc801\ud569\ud558\uac70\ub098 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc774\ub984\uc774 \ub110\uc785\ub2c8\ub2e4 + +ORA-17065=\ubcc0\ud658 \ud074\ub798\uc2a4\uac00 \ub110\uc785\ub2c8\ub2e4 + +ORA-17066=\uc561\uc138\uc2a4 \uce35\uc5d0 \uc801\ud569\ud55c \uad6c\ud604\uc774 \ud544\uc694\ud569\ub2c8\ub2e4 + +ORA-17067=\ubd80\uc801\ud569\ud55c Oracle URL\uc774 \uc9c0\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17068=\ud638\ucd9c\uc5d0 \ubd80\uc801\ud569\ud55c \uc778\uc218\uc785\ub2c8\ub2e4 + +ORA-17069=\uba85\uc2dc\uc801 XA \ud638\ucd9c\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4 + +ORA-17070=\ub370\uc774\ud130 \ud06c\uae30\uac00 \ud574\ub2f9 \uc720\ud615\uc758 \ucd5c\ub300 \ud06c\uae30\ubcf4\ub2e4 \ud07d\ub2c8\ub2e4 + +ORA-17071=\ucd5c\ub300 VARRAY \ud55c\uacc4\ub97c \ucd08\uacfc\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17072=\uc5f4\uc5d0 \ub108\ubb34 \ud070 \uac12\uc774 \uc0bd\uc785\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17073=\ub17c\ub9ac\uc801 \ud578\ub4e4\uc774 \ub354 \uc774\uc0c1 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17074=\ubd80\uc801\ud569\ud55c \uc774\ub984 \ud328\ud134\uc785\ub2c8\ub2e4 + +ORA-17075=\uc804\ubc29\ud5a5 \uc804\uc6a9 \uacb0\uacfc \uc9d1\ud569\uc5d0 \ubd80\uc801\ud569\ud55c \uc791\uc5c5\uc774 \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17076=\uc77d\uae30 \uc804\uc6a9 \uacb0\uacfc \uc9d1\ud569\uc5d0 \ubd80\uc801\ud569\ud55c \uc791\uc5c5\uc774 \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17077=REF \uac12 \uc124\uc815\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17078=\uc5f0\uacb0\uc774 \uc5f4\ub824 \uc788\uc73c\ubbc0\ub85c \uc791\uc5c5\uc744 \uc218\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17079=\uc0ac\uc6a9\uc790 \uc778\uc99d\uc11c\uac00 \uae30\uc874 \uc778\uc99d\uc11c\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc74c + +ORA-17080=\ubd80\uc801\ud569\ud55c \uc77c\uad04\ucc98\ub9ac \uba85\ub839\uc785\ub2c8\ub2e4 + +ORA-17081=\uc77c\uad04\ucc98\ub9ac \uc791\uc5c5 \uc911 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17082=\ud604\uc7ac \ud589\uc774 \uc544\ub2d9\ub2c8\ub2e4 + +ORA-17083=\uc0bd\uc785 \ud589\uc5d0 \uc788\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17084=\uc0bd\uc785 \ud589\uc5d0\uc11c \ud638\ucd9c\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17085=\uac12 \ucda9\ub3cc\uc774 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17086=\uc0bd\uc785 \ud589\uc5d0\uc11c \uc5f4 \uac12\uc774 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17087=\uc131\ub2a5 \ud78c\ud2b8 \ubb34\uc2dc: setFetchDirection() + +ORA-17088=\uc694\uccad\ub41c \uacb0\uacfc \uc9d1\ud569 \uc720\ud615\uacfc \ub3d9\uc2dc\uc131 \uc218\uc900\uc744 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \uad6c\ubb38\uc785\ub2c8\ub2e4 +ORA-17089=\ub0b4\ubd80 \uc624\ub958 + +ORA-17090=\ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc740 \uc791\uc5c5 + +ORA-17091=\uc694\uccad\ub41c \uc720\ud615 \ubc0f \ub3d9\uc2dc\uc131 \uc218\uc900\uc5d0\uc11c \uacb0\uacfc \uc9d1\ud569\uc744 \uc0dd\uc131\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17092=\ud638\ucd9c \ucc98\ub9ac \uc885\ub8cc \uc2dc JDBC \ubb38\uc744 \uc0dd\uc131\ud558\uac70\ub098 \uc2e4\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. + +ORA-17093=OCI \uc791\uc5c5\uc774 OCI_SUCCESS_WITH_INFO\ub97c \ubc18\ud658\ud588\uc2b5\ub2c8\ub2e4. + +ORA-17094=\uac1d\uccb4 \uc720\ud615 \ubc84\uc804\uc774 \ub9de\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. + +ORA-17095=\uba85\ub839\ubb38 \uce90\uc2dc \ud06c\uae30\uac00 \uc124\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17096=\uc774 \ub17c\ub9ac\uc801 \uc811\uc18d\uc5d0 \uba85\ub839\ubb38\uc744 \uce90\uc2dc\ub85c \uc800\uc7a5\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. + +ORA-17097=\ubd80\uc801\ud569\ud55c PL/SQL \uc778\ub371\uc2a4 \ud14c\uc774\ube14 \uc694\uc18c \uc720\ud615 + +ORA-17098=\ubd80\uc801\ud569\ud55c \ube48 lob \uc791\uc5c5 + +ORA-17099=\ubd80\uc801\ud569\ud55c PL/SQL \uc778\ub371\uc2a4 \ud14c\uc774\ube14 \ubc30\uc5f4 \uae38\uc774 + +ORA-17100=\ubd80\uc801\ud569\ud55c \ub370\uc774\ud130\ubca0\uc774\uc2a4 Java \uac1d\uccb4 + +ORA-17101=OCI \uc811\uc18d \ud480 \uac1d\uccb4\uc5d0 \ubd80\uc801\ud569\ud55c \ub4f1\ub85d\uc815\ubcf4 + +ORA-17102=Bfile\uc774 \uc77d\uae30 \uc804\uc6a9\uc784 + +ORA-17103=getConnection\uc744 \ud1b5\ud574 \ubc18\ud658\ud558\uae30\uc5d0 \ubd80\uc801\ud569\ud55c \uc811\uc18d \uc720\ud615\uc785\ub2c8\ub2e4. \ub300\uc2e0 getJavaSqlConnection\uc744 \uc0ac\uc6a9\ud558\uc2ed\uc2dc\uc624. + +ORA-17104=\uc2e4\ud589\ud560 SQL \ubb38\uc740 \ube44\uc5b4 \uc788\uac70\ub098 \ub110\uc77c \uc218 \uc5c6\uc74c + +ORA-17105=\uc811\uc18d \uc138\uc158 \uc2dc\uac04\ub300\uac00 \uc124\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17106=\ubd80\uc801\ud569\ud55c JDBC-OCI \ub4dc\ub77c\uc774\ubc84 \uc811\uc18d \ud480 \uad6c\uc131\uc774 \uc9c0\uc815\ub428 + +ORA-17107=\ubd80\uc801\ud569\ud55c proxy \uc720\ud615\uc774 \uc9c0\uc815\ub428 + +ORA-17108=defineColumnType\uc5d0 \ucd5c\ub300 \uae38\uc774\uac00 \uc9c0\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17109=\ud45c\uc900 Java \ubb38\uc790 \uc778\ucf54\ub529\uc744 \ucc3e\uc744 \uc218 \uc5c6\uc74c + +ORA-17110=\uacbd\uace0\uc640 \ud568\uaed8 \uc2e4\ud589\uc774 \uc644\ub8cc\ub428 + +ORA-17111=\ubd80\uc801\ud569\ud55c \uc811\uc18d \uce90\uc2dc TTL \uc2dc\uac04 \ucd08\uacfc\uac00 \uc9c0\uc815\ub428 + +ORA-17112=\ubd80\uc801\ud569\ud55c \uc2a4\ub808\ub4dc \uac04\uaca9\uc774 \uc9c0\uc815\ub428 + +ORA-17113=\uc2a4\ub808\ub4dc \uac04\uaca9 \uac12\uc774 \uce90\uc2dc \uc2dc\uac04 \ucd08\uacfc \uac12\ubcf4\ub2e4 \ud07c + +ORA-17114=\uc740(\ub294) \uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \ub85c\uceec \ud2b8\ub79c\uc7ad\uc158 \ucee4\ubc0b\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc74c + +ORA-17115=\uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \ub85c\uceec \ud2b8\ub79c\uc7ad\uc158 \ub864\ubc31\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc74c + +ORA-17116=\ud65c\uc131 \uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \uc790\ub3d9 \ucee4\ubc0b\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc74c + +ORA-17117=\ud65c\uc131 \uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \uc800\uc7a5\uc810\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc74c + +ORA-17118=\uc774\ub984\uc774 \uc9c0\uc815\ub41c \uc800\uc7a5\uc810\uc5d0 \ub300\ud55c ID\ub97c \uac00\uc838\uc62c \uc218 \uc5c6\uc74c + +ORA-17119=\uc774\ub984\uc774 \uc9c0\uc815\ub418\uc9c0 \uc54a\uc740 \uc800\uc7a5\uc810\uc5d0 \ub300\ud55c \uc774\ub984\uc744 \uac00\uc838\uc62c \uc218 \uc5c6\uc74c + +ORA-17120=\uc790\ub3d9 \ucee4\ubc0b\uc744 \uc124\uc815\ud55c \uc0c1\ud0dc\ub85c \uc800\uc7a5\uc810\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc74c + +ORA-17121=\uc790\ub3d9 \ucee4\ubc0b\uc744 \uc124\uc815\ud55c \uc0c1\ud0dc\ub85c \uc800\uc7a5\uc810\uc73c\ub85c \ub864\ubc31\ud560 \uc218 \uc5c6\uc74c + +ORA-17122=\uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc758 \ub85c\uceec txn \uc800\uc7a5\uc810\uc73c\ub85c \ub864\ubc31\ud560 \uc218 \uc5c6\uc74c + +ORA-17123=\ubd80\uc801\ud569\ud55c \uba85\ub839\ubb38 \uce90\uc2dc \ud06c\uae30\uac00 \uc9c0\uc815\ub428 + +ORA-17124=\ubd80\uc801\ud569\ud55c \uc811\uc18d \uce90\uc2dc \ube44\ud65c\uc131 \uc2dc\uac04 \ucd08\uacfc\uac00 \uc9c0\uc815\ub428 + +ORA-17200=Java\uc5d0\uc11c C\ub85c XA \uc5f4\uae30 \ubb38\uc790\uc5f4\uc744 \uc81c\ub300\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17201=Java\uc5d0\uc11c C\ub85c XA \ub2eb\uae30 \ubb38\uc790\uc5f4\uc744 \uc81c\ub300\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17202=Java\uc5d0\uc11c C\ub85c RM \uc774\ub984\uc744 \uc81c\ub300\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17203=jlong\uc73c\ub85c \ud3ec\uc778\ud130 \uc720\ud615\uc744 \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17204=\uc785\ub825 \ubc30\uc5f4\uc774 OCI \ud578\ub4e4\uc744 \ubcf4\uc720\ud558\uae30\uc5d0 \ub108\ubb34 \uc9e7\uc74c + +ORA-17205=xaoSvcCtx\ub97c \uc0ac\uc6a9\ud558\uc5ec C-XA\uc5d0\uc11c OCISvcCtx \ud578\ub4e4 \uc5bb\uae30 \uc2e4\ud328 + +ORA-17206=xaoEnv\ub97c \uc0ac\uc6a9\ud558\uc5ec C-XA\uc5d0\uc11c OCIEnv \ud578\ub4e4 \uc5bb\uae30 \uc2e4\ud328 + +ORA-17207=tnsEntry \ub4f1\ub85d\uc815\ubcf4\uac00 DataSource\uc5d0 \uc124\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17213=xa_open \ub3c4\uc911 C-XA\uac00 XAER_RMERR \ubc18\ud658 + +ORA-17215=xa_open \ub3c4\uc911 C-XA\uac00 XAER_INVAL \ubc18\ud658 + +ORA-17216=xa_open \ub3c4\uc911 C-XA\uac00 XAER_PROTO \ubc18\ud658 + +ORA-17233=xa_close \ub3c4\uc911 C-XA\uac00 XAER_RMERR \ubc18\ud658 + +ORA-17235=xa_close \ub3c4\uc911 C-XA\uac00 XAER_INVAL \ubc18\ud658 + +ORA-17236=xa_close \ub3c4\uc911 C-XA\uac00 XAER_PROTO \ubc18\ud658 + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\ud504\ub85c\ud1a0\ucf5c \uc704\ubc18 + +ORA-17402=\ud558\ub098\uc758 RPA \uba54\uc2dc\uc9c0\ub9cc \ud544\uc694 + +ORA-17403=\ud558\ub098\uc758 RXH \uba54\uc2dc\uc9c0\ub9cc \ud544\uc694 + +ORA-17404=\uc608\uc0c1\ubcf4\ub2e4 \ub9ce\uc740 RXD \uc218\uc2e0 + +ORA-17405=UAC \uae38\uc774\uac00 0\uc774 \uc544\ub2d8 + +ORA-17406=\ucd5c\ub300 \ubc84\ud37c \uae38\uc774 \ucd08\uacfc + +ORA-17407=\ubd80\uc801\ud569\ud55c \uc720\ud615 \ud45c\uae30(set \ubc29\uc2dd)\r\n + +ORA-17408=\ubd80\uc801\ud569\ud55c \uc720\ud615 \ud45c\uae30(get \ubc29\uc2dd) + +ORA-17409=\ubc84\ud37c \uae38\uc774\uac00 \ubd80\uc801\ud569\ud569\ub2c8\ub2e4 + +ORA-17410=\uc18c\ucf13\uc5d0\uc11c \uc77d\uc744 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17411=\ub370\uc774\ud130 \uc720\ud615 \ud45c\uae30\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17412=\uc720\ud615 \uae38\uc774\uac00 \ucd5c\ub300\uac12\ubcf4\ub2e4 \ud07d\ub2c8\ub2e4 + +ORA-17413=\ud0a4 \ud06c\uae30\ub97c \ucd08\uacfc\ud569\ub2c8\ub2e4 + +ORA-17414=\uc5f4 \uc774\ub984\uc744 \uc800\uc7a5\ud558\uae30\uc5d0 \ubc84\ud37c \ud06c\uae30\uac00 \ubd80\uc871\ud569\ub2c8\ub2e4 + +ORA-17415=\ud574\ub2f9 \uc720\ud615\uc774 \ucc98\ub9ac\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17416=FATAL + +ORA-17417=NLS \ubb38\uc81c, \uc5f4 \uc774\ub984\uc744 \ud574\ub3c5\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17418=\ub0b4\ubd80 \uad6c\uc870\uc758 \ud544\ub4dc \uae38\uc774\uc5d0 \uc624\ub958\uac00 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17419=\ubd80\uc801\ud569\ud55c \uac1c\uc218\uc758 \uc5f4\uc774 \ubc18\ud658\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17420=Oracle \ubc84\uc804\uc774 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17421=\uc720\ud615 \ub610\ub294 \uc5f0\uacb0\uc774 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17422=factory\uc5d0 \ubd80\uc801\ud569\ud55c \ud074\ub798\uc2a4 + +ORA-17423=\uc815\uc758\ub41c IOV\uac00 \uc5c6\uc774 PLSQL \ube14\ub85d \uc0ac\uc6a9 + +ORA-17424=\ub2e4\ub978 \ub9c8\uc15c\ub9c1 \uc791\uc5c5\uc744 \uc2dc\ub3c4 \uc911 + +ORA-17425=PLSQL \ube14\ub85d\uc5d0 \uc788\ub294 \uc2a4\ud2b8\ub9bc\uc744 \ubc18\ud658 + +ORA-17426=IN \ub9e4\uac1c\ubcc0\uc218\uc640 OUT \ub9e4\uac1c\ubcc0\uc218\uac00 \ubaa8\ub450 NULL\uc784 + +ORA-17427=\ucd08\uae30\ud654\ub418\uc9c0 \uc54a\uc740 OAC\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4 + +ORA-17428=\ub85c\uadf8\uc778\uc740 \uc811\uc18d \ud6c4\uc5d0 \ud638\ucd9c\ub418\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17429=\uc801\uc5b4\ub3c4 \uc11c\ubc84\uc5d0 \uc5f0\uacb0\ub418\uc5b4 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17430=\uc11c\ubc84\uc5d0 \ub85c\uadf8\uc628\ub418\uc5b4 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17431=\uad6c\ubb38 \ubd84\uc11d\ud560 SQL \ubb38\uc774 \ub110\uc785\ub2c8\ub2e4 + +ORA-17432=oracle 7\uc5d0 \ubd80\uc801\ud569\ud55c \uc635\uc158 + +ORA-17433=\ud638\ucd9c\uc5d0 \ubd80\uc801\ud569\ud55c \uc778\uc218\uc785\ub2c8\ub2e4 + +ORA-17434=\uc2a4\ud2b8\ub9bc \ubaa8\ub4dc\uac00 \uc544\ub2d9\ub2c8\ub2e4 + +ORA-17435=IOV\uc5d0\uc11c in_out_binds \uc218\uac00 \ubd80\uc801\ud569\ud569\ub2c8\ub2e4 + +ORA-17436=\ubd80\uc801\ud569\ud55c OUT \ub9e4\uac1c\ubcc0\uc218 \uc218 + +ORA-17437=PLSQL \ube14\ub85d\uc758 IN/OUT \uc778\uc218\uc5d0 \uc624\ub958 + +ORA-17438=\ub0b4\ubd80 - \uc608\uae30\uce58 \ubabb\ud55c \uac12\uc785\ub2c8\ub2e4 + +ORA-17439=\ubd80\uc801\ud569\ud55c SQL \uc720\ud615\uc785\ub2c8\ub2e4 + +ORA-17440=DBItem/DBType\uc774 \ub110\uc785\ub2c8\ub2e4 + +ORA-17441=Oracle \ubc84\uc804\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \ucd5c\uc18c\ud55c 7.2.3 \ubc84\uc804 \uc774\uc0c1\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. + +ORA-17442=\ubd80\uc801\ud569\ud55c Refcursor \uac12\uc785\ub2c8\ub2e4 + +ORA-17443=\ub110 \uc0ac\uc6a9\uc790\ub098 \uc554\ud638\uac00 THIN \ub4dc\ub77c\uc774\ubc84\uc5d0\uc11c \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17444=\uc11c\ubc84\ub85c\ubd80\ud130 \uc218\uc2e0\ub41c TTC \ud504\ub85c\ud1a0\ucf5c \ubc84\uc804\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/40492e9200af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/40492e9200af001c14499bdcdfff58b3 new file mode 100644 index 0000000..8b662b1 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/40492e9200af001c14499bdcdfff58b3 @@ -0,0 +1,212 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; +import javax.swing.JOptionPane; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + private JButton jOk; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypte) : " + this.jtextMdp.getPassword().toString() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + + String str = new String(this.jtextMdp.getPassword()); + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(str); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + + public void driverExist(){ + // On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(connexionToBdd.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + this.jtextServeur.setEnabled(false); + this.jtextPort.setEnabled(false); + this.jtextBase.setEnabled(false); + this.jtextIdentifiant.setEnabled(false); + this.jtextMdp.setEnabled(false); + + this.jOk.setEnabled(false); + + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + else{ + JOptionPane.showMessageDialog(this, "Pilote trouve.", "Information", JOptionPane.INFORMATION_MESSAGE); + } + } +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/70330c5bfaa3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/70330c5bfaa3001c1027e59cc3e35e89 new file mode 100644 index 0000000..2cae26f --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/70330c5bfaa3001c1027e59cc3e35e89 @@ -0,0 +1,18 @@ +package fr.blankoworld.connexionBDD; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/c07b18b4fbae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/c07b18b4fbae001c14499bdcdfff58b3 new file mode 100644 index 0000000..101dc85 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f0/c07b18b4fbae001c14499bdcdfff58b3 @@ -0,0 +1,205 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; +import javax.swing.JOptionPane; + +// Import personels +import fr.blankoworld.ihm.IHMPrincipale; +import fr.blankoworld.connexionBDD.Connexion; + +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + // On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(connexionToBdd.driverPresent()[0] == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + jlabelServeur.setEnabled(false); + jlabelPort.setEnabled(false); + jlabelBase.setEnabled(false); + jlabelIdentifiant.setEnabled(false); + jlabelMdp.setEnabled(false); + + jOk.setEnabled(false); + + JOptionPane.showDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.); + } + + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypté) : " + this.jtextMdp.getPassword() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(this.jtextMdp.getPassword().toString()); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/108bc21e9baf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/108bc21e9baf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..49612cf --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/108bc21e9baf001c1c2eb8ec16be26ca @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Internt fel + +ORA-17002=I/O-undantag + +ORA-17003=Ogiltigt kolumnindex + +ORA-17004=Ogiltig kolumntyp + +ORA-17005=Kolumntypen st\u00f6ds inte + +ORA-17006=Ogiltigt kolumnnamn + +ORA-17007=Ogiltig dynamisk kolumn + +ORA-17008=St\u00e4ngd anslutning + +ORA-17009=St\u00e4ngd sats + +ORA-17010=St\u00e4ngd resultatupps\u00e4ttning + +ORA-17011=Utt\u00f6md resultatupps\u00e4ttning + +ORA-17012=Parametertypskonflikt + +ORA-17014=ResultSet.next anropades inte + +ORA-17015=Satsen avbr\u00f6ts + +ORA-17016=Satsen \u00f6verskred tidsgr\u00e4nsen + +ORA-17017=Mark\u00f6ren har redan initierats + +ORA-17018=Ogiltig mark\u00f6r + +ORA-17019=Kan bara beskriva en fr\u00e5ga + +ORA-17020=Ogiltig f\u00f6rh\u00e4mtning av rader + +ORA-17021=Definitioner saknas + +ORA-17022=Definitioner saknas i index + +ORA-17023=Funktionen st\u00f6ds inte + +ORA-17024=Inga data har l\u00e4sts + +ORA-17025=Fel i defines.isNull () + +ORA-17026=Numeriskt spill + +ORA-17027=Fl\u00f6det har redan st\u00e4ngts + +ORA-17028=Kan inte ta fram n\u00e5gra nya definitioner f\u00f6rr\u00e4n aktuell resultatupps\u00e4ttning har st\u00e4ngts + +ORA-17029=setReadOnly: Skrivskyddade anslutningar st\u00f6ds inte + +ORA-17030=READ_COMMITTED och SERIALIZABLE \u00e4r de enda giltiga transaktionsniv\u00e5erna + +ORA-17031=setAutoClose: St\u00f6der bara aktivt autost\u00e4ngningsl\u00e4ge + +ORA-17032=kan inte ge f\u00f6rh\u00e4mtning av rader v\u00e4rdet noll + +ORA-17033=Felaktigt utformad SQL92-str\u00e4ng i position + +ORA-17034=Ogiltigt SQL92-token i position + +ORA-17035=Teckenupps\u00e4ttningen st\u00f6ds inte!! + +ORA-17036=undantag i OracleNumber + +ORA-17037=Misslyckades att konvertera mellan UTF8 och UCS2 + +ORA-17038=Byte-vektorn \u00e4r inte tillr\u00e4ckligt l\u00e5ng + +ORA-17039=Teckenvektorn \u00e4r inte tillr\u00e4ckligt l\u00e5ng + +ORA-17040=Delprotokollet m\u00e5ste anges i anslutnings-URL + +ORA-17041=IN- eller OUT-parameter saknas i index: + +ORA-17042=Ogiltigt satsv\u00e4rde + +ORA-17043=Ogiltig maxstorlek f\u00f6r fl\u00f6de + +ORA-17044=Internt fel: Datavektor har inte tilldelats + +ORA-17045=Internt fel: Du f\u00f6rs\u00f6kte att h\u00e4mta bindningsv\u00e4rden utanf\u00f6r giltigt satsv\u00e4rde + +ORA-17046=Internt fel: Ogiltigt index f\u00f6r data\u00e5tkomst + +ORA-17047=Fel i typbeskrivningsanalys + +ORA-17048=Odefinierad typ + +ORA-17049=Of\u00f6renliga java- och sql-objekttyper + +ORA-17050=s\u00e5dant element finns inte i vektorn + +ORA-17051=Detta applikationsgr\u00e4nssnitt (API) kan inte anv\u00e4ndas f\u00f6r icke anv\u00e4ndardefinierade typer + +ORA-17052=Referensen \u00e4r inte giltig + +ORA-17053=Storleken \u00e4r inte giltig + +ORA-17054=LOB-pekaren \u00e4r inte giltig + +ORA-17055=Ett ogiltigt tecken har p\u00e5tr\u00e4ffats i + +ORA-17056=Teckenupps\u00e4ttningen st\u00f6ds inte + +ORA-17057=LOB \u00e4r st\u00e4ngd + +ORA-17058=Internt fel: Ogiltig NLS-omvandlingskvot + +ORA-17059=Kunde inte konvertera till intern representation + +ORA-17060=Kunde inte konstruera beskrivning + +ORA-17061=Beskrivning saknas + +ORA-17062=REFCURSOR \u00e4r ogiltig + +ORA-17063=F\u00f6rekommer ej i n\u00e5gon transaktion + +ORA-17064=Syntaxen \u00e4r ogiltig eller databasens namn null + +ORA-17065=Omvandlingsklassen \u00e4r null + +ORA-17066=Implementation specifik f\u00f6r \u00e5tkomstskikt kr\u00e4vs + +ORA-17067=Ogiltig Oracle-URL angavs + +ORA-17068=Anropet inneh\u00e5ller minst ett ogiltigt argument + +ORA-17069=Anv\u00e4nd explicit XA-anrop + +ORA-17070=Datastorleken \u00e4r st\u00f6rre \u00e4n till\u00e5tet f\u00f6r den h\u00e4r typen + +ORA-17071=St\u00f6rsta till\u00e5tna storlek f\u00f6r VARRAY har \u00f6verskridits + +ORA-17072=Det v\u00e4rde som infogades ryms inte i kolumnen + +ORA-17073=Det logiska handtaget \u00e4r inte l\u00e4ngre giltigt + +ORA-17074=ogiltigt namnm\u00f6nster + +ORA-17075=Ogiltig \u00e5tg\u00e4rd f\u00f6r endast vidarebefordrad resultatupps\u00e4ttning + +ORA-17076=Ogiltig \u00e5tg\u00e4rd f\u00f6r skrivskyddad resultatupps\u00e4ttning + +ORA-17077=Kunde inte st\u00e4lla in REF-v\u00e4rde + +ORA-17078=Kan inte utf\u00f6ra \u00e5tg\u00e4rden eftersom anslutningarna redan \u00e4r \u00f6ppnade + +ORA-17079=Anv\u00e4ndarautentiseringarna motsvarar inte de befintliga + +ORA-17080=ogiltigt batchkommando + +ORA-17081=fel uppstod vid satsvis bearbetning + +ORA-17082=Ingen aktuell rad + +ORA-17083=Inte p\u00e5 den infogade raden + +ORA-17084=Anropad p\u00e5 den infogade raden + +ORA-17085=V\u00e4rdekonflikter uppst\u00e5r + +ORA-17086=Odefinierat kolumnv\u00e4rde p\u00e5 den infogade raden + +ORA-17087=Ignorerat prestandaf\u00f6rslag: setFetchDirection() + +ORA-17088=Ogiltig syntax f\u00f6r efterfr\u00e5gad resultatupps\u00e4ttningstyp och samtidighetsniv\u00e5 +ORA-17089=internt fel + +ORA-17090=otill\u00e5ten \u00e5tg\u00e4rd + +ORA-17091=Kan inte skapa resultatupps\u00e4ttning vid efterfr\u00e5gad typ och/eller samtidighetsniv\u00e5 + +ORA-17092=JDBC-satser kan inte skapas eller k\u00f6ras vid slutet av anropsbearbetning + +ORA-17093=OCI-operationen returnerade OCI_SUCCESS_WITH_INFO + +ORA-17094=Objekttypsversionerna \u00e4r inkompatibla + +ORA-17095=Storleken p\u00e5 satscachen har inte st\u00e4llts in + +ORA-17096=Satscachning kan inte aktiveras f\u00f6r den h\u00e4r logiska anslutningen. + +ORA-17097=Ogiltig elementtyp f\u00f6r PL/SQL-indextabell + +ORA-17098=Ogiltig tom LOB-\u00e5tg\u00e4rd + +ORA-17099=Ogiltig vektorl\u00e4ngd f\u00f6r PL/SQL-indextabell + +ORA-17100=Ogiltigt Java-objekt i databasen + +ORA-17101=Ogiltiga egenskaper i OCI-objekt f\u00f6r anslutningspool + +ORA-17102=Bfile \u00e4r skrivskyddad + +ORA-17103=ogiltig anslutningstyp att returnera via getConnection. Anv\u00e4nd getJavaSqlConnection i st\u00e4llet + +ORA-17104=Den SQL-sats som ska k\u00f6ras f\u00e5r inte vara tom eller null + +ORA-17105=tidszon f\u00f6r anslutningssession har inte st\u00e4llts in + +ORA-17106=ogiltig konfiguration f\u00f6r JDBC-OCI-drivrutinens anslutningspool har angetts + +ORA-17107=ogiltig proxy-typ angiven + +ORA-17108=Ingen maxl\u00e4ngd har angetts i defineColumnType + +ORA-17109=standardteckenupps\u00e4ttning f\u00f6r Java saknas + +ORA-17110=k\u00f6rningen slutf\u00f6rd med varning + +ORA-17111=Ogiltig TTL-tidsgr\u00e4ns f\u00f6r anslutningscache har angetts + +ORA-17112=Ogiltigt tr\u00e5dintervall har angetts + +ORA-17113=V\u00e4rdet f\u00f6r tr\u00e5dintervall \u00e4r st\u00f6rre \u00e4n v\u00e4rdet f\u00f6r cachetidsgr\u00e4ns + +ORA-17114=kunde inte anv\u00e4nda lokal transaktionsbekr\u00e4ftelse i en global transaktion + +ORA-17115=kunde inte anv\u00e4nda lokal transaktions\u00e5terst\u00e4llning i en global transaktion + +ORA-17116=kunde inte aktivera automatisk bekr\u00e4ftelse i en aktiv global transaktion + +ORA-17117=kunde inte st\u00e4lla in lagringspunkt i en aktiv global transaktion + +ORA-17118=kunde inte h\u00e4mta id f\u00f6r namngiven lagringspunkt + +ORA-17119=kunde inte h\u00e4mta namn f\u00f6r lagringspunkt utan namn + +ORA-17120=kunde inte st\u00e4lla in en lagringspunkt med aktiverad automatisk bekr\u00e4ftelse + +ORA-17121=kunde inte \u00e5terst\u00e4lla till en lagringspunkt med aktiverad automatisk bekr\u00e4ftelse + +ORA-17122=kunde inte \u00e5terst\u00e4lla till en lokal transaktionslagringspunkt i en global transaktion + +ORA-17123=Ogiltig storlek p\u00e5 satscache har angetts + +ORA-17124=Ogiltig inaktivitetstidsgr\u00e4ns f\u00f6r anslutningscache har angetts + +ORA-17200=Det gick inte att konvertera \u00f6ppen XA-str\u00e4ng fr\u00e5n Java till C + +ORA-17201=Det gick inte att konvertera sluten XA-str\u00e4ng fr\u00e5n Java till C + +ORA-17202=Det gick inte att konvertera RM-namn fr\u00e5n Java till C + +ORA-17203=Det gick inte att konvertera pekartypen till jlong + +ORA-17204=Den inmatade vektorn \u00e4r f\u00f6r liten f\u00f6r att inneh\u00e5lla OCI-handtag + +ORA-17205=Det gick inte att h\u00e4mta handtaget OCISvcCtx fr\u00e5n C-XA med xaoSvcCtx + +ORA-17206=Det gick inte att h\u00e4mta handtaget OCIEnv fr\u00e5n C-XA med xaoEnv + +ORA-17207=Egenskapen tnsEntry har inte st\u00e4llts in i DataSource + +ORA-17213=C-XA returnerade XAER_RMERR vid xa_open + +ORA-17215=C-XA returnerade XAER_INVAL vid xa_open + +ORA-17216=C-XA returnerade XAER_PROTO vid xa_open + +ORA-17233=C-XA returnerade XAER_RMERR vid xa_close + +ORA-17235=C-XA returnerade XAER_INVAL vid xa_close + +ORA-17236=C-XA returnerade XAER_PROTO vid xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Brott mot protokoll + +ORA-17402=Bara ett RPA-meddelande f\u00f6rv\u00e4ntas + +ORA-17403=Bara ett RXH-meddelande f\u00f6rv\u00e4ntas + +ORA-17404=Tog emot fler RXD:er \u00e4n f\u00f6rv\u00e4ntat + +ORA-17405=UAC-l\u00e4ngden \u00e4r inte noll + +ORA-17406=St\u00f6rsta till\u00e5tna buffertl\u00e4ngd har \u00f6verskridits + +ORA-17407=ogiltig Typrepresentation(setRep) + +ORA-17408=ogiltig Typrepresentation(getRep) + +ORA-17409=ogiltig buffertl\u00e4ngd + +ORA-17410=Inga fler data att l\u00e4sa fr\u00e5n socket + +ORA-17411=Datatypsrepresentationerna \u00e4r inkompatibla + +ORA-17412=St\u00f6rre typl\u00e4ngd \u00e4n maximum + +ORA-17413=\u00d6verskrider nyckelstorlek + +ORA-17414=Otillr\u00e4cklig buffertstorlek f\u00f6r att lagra kolumnnamn + +ORA-17415=Den h\u00e4r typen har inte hanterats + +ORA-17416=FATAL + +ORA-17417=NLS-problem: kunde inte avkoda kolumnnamn + +ORA-17418=F\u00e4ltl\u00e4ngdsfel i intern struktur + +ORA-17419=Ett ogiltigt antal kolumner returnerades + +ORA-17420=Oracle-versionen \u00e4r inte definierad + +ORA-17421=Typer eller anslutning \u00e4r inte definierade + +ORA-17422=Ogiltig klass i genereringen + +ORA-17423=Anv\u00e4nder ett PL/SQL-block utan definierad IOV + +ORA-17424=Du f\u00f6rs\u00f6kte anv\u00e4nda en annan \u00f6vervaknings\u00e5tg\u00e4rd + +ORA-17425=Returnerar ett fl\u00f6de i PL/SQL-block + +ORA-17426=B\u00e5de IN- och OUT-bindningar \u00e4r NULL + +ORA-17427=Anv\u00e4nder oinitierad OAC + +ORA-17428=Inloggningen m\u00e5ste anropas efter anslutning + +ORA-17429=M\u00e5ste \u00e5tminstone vara ansluten till servern + +ORA-17430=M\u00e5ste vara inloggad p\u00e5 servern + +ORA-17431=Den SQL-sats som ska analyseras \u00e4r null + +ORA-17432=ogiltiga alternativ i all7 + +ORA-17433=ogiltiga argument i anrop + +ORA-17434=ej i direktuppspelningsl\u00e4ge + +ORA-17435=ogiltigt antal in_out_binds i IOV + +ORA-17436=ogiltigt antal OUT-parametrar + +ORA-17437=Fel i IN/OUT-argument i PL/SQL-block + +ORA-17438=Internt: ov\u00e4ntat v\u00e4rde + +ORA-17439=Ogiltig SQL-typ + +ORA-17440=DBItem/DBType \u00e4r null + +ORA-17441=Oracle-versionen st\u00f6ds inte. Den l\u00e4gsta version som st\u00f6ds \u00e4r 7.2.3. + +ORA-17442=V\u00e4rdet f\u00f6r REFCURSOR \u00e4r ogiltigt + +ORA-17443=Anv\u00e4ndare \u00e4r null eller ocks\u00e5 st\u00f6ds inte l\u00f6senordet i drivrutinen THIN + +ORA-17444=Den version av TTC-protokollet som mottogs fr\u00e5n servern st\u00f6ds inte + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/10a79b1398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/10a79b1398af001c18c4935e001381da new file mode 100644 index 0000000..abad1a8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/10a79b1398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/60040c1998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/60040c1998af001c18c4935e001381da new file mode 100644 index 0000000..092e9be Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/60040c1998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/908f4a1598af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/908f4a1598af001c18c4935e001381da new file mode 100644 index 0000000..c79bcd0 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/908f4a1598af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/b02ebfee4eaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/b02ebfee4eaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..19114d1 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f1/b02ebfee4eaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private IHMConnexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void confirmationConnexion(String chaine){ + int resultatConfirmation; + resultatConfirmation = JOptionPane.showConfirmDialog(null, chaine.toString(), "Confirmation" ,JOptionPane.YES_NO_OPTION); + if(resultatConfirmation == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/40ae301a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/40ae301a98af001c18c4935e001381da new file mode 100644 index 0000000..2237fb4 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/40ae301a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/70e87646c6a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/70e87646c6a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..a843a16 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/70e87646c6a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + + JOptionPane.showInputDialog("Couillon", "La valeur du couillon"); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Navigateur SQL v0.1"); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/d0d30392fda3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/d0d30392fda3001c1027e59cc3e35e89 new file mode 100644 index 0000000..6a98291 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/d0d30392fda3001c1027e59cc3e35e89 @@ -0,0 +1,44 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.*; +import javax.sql.*; +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/f0b1ee1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/f0b1ee1b98af001c18c4935e001381da new file mode 100644 index 0000000..e41b03c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f2/f0b1ee1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f3/20f18776c7a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f3/20f18776c7a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..2a23c29 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f3/20f18776c7a4001c1acc9f54b60f9b57 @@ -0,0 +1,59 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; + +import javax.swing.Icon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Panel au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Ajout des boutons et autres dans le panneau + Panneau_Centre.add(jlabelServeur); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelPort); + Panneau_Centre.add(jlabelBase); + Panneau_Centre.add(jlabelIdentifiant); + Panneau_Centre.add(jlabelMdp); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(800,600); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + JOptionPane.showOptionDialog(null, "Message d'essai", "Configuration", 1, 1, null, jlabelBase, "Valeur initiale"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f3/504216234caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f3/504216234caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..41dd032 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f3/504216234caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + + JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f3/e0744b4f01a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f3/e0744b4f01a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..0a706ce --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f3/e0744b4f01a4001c1027e59cc3e35e89 @@ -0,0 +1,61 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + System.out.println("Requte: Envoye et reue."); + + System.out.println(resultSet.toString()); + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/1099567382a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/1099567382a9001c1d3abf97745a02da new file mode 100644 index 0000000..e4bea52 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/1099567382a9001c1d3abf97745a02da @@ -0,0 +1,140 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + private Connexion conn = new Connexion(); + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/60a4f4cd50aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/60a4f4cd50aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..ee5c572 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/60a4f4cd50aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.IHMConnexion; + +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private IHMConnexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn(this).setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void confirmationConnexion(String chaine){ + int resultatConfirmation; + resultatConfirmation = JOptionPane.showConfirmDialog(null, chaine.toString(), "Confirmation" ,JOptionPane.YES_NO_OPTION); + if(resultatConfirmation == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/90b9472f80a9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/90b9472f80a9001c1d3abf97745a02da new file mode 100644 index 0000000..9fe9628 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/90b9472f80a9001c1d3abf97745a02da @@ -0,0 +1,79 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Cration des zones de texte + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/e0265e1a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/e0265e1a98af001c18c4935e001381da new file mode 100644 index 0000000..1688e2d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/e0265e1a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/e0b2351698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/e0b2351698af001c18c4935e001381da new file mode 100644 index 0000000..c767c0c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f4/e0b2351698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f5/10163b40cca4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f5/10163b40cca4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..e688cd2 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f5/10163b40cca4001c1acc9f54b60f9b57 @@ -0,0 +1,90 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche, FlowLayout.LEFT); + Panneau_Centre.add(Panneau_Centre_Droite, FlowLayout.RIGHT); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/204eb61998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/204eb61998af001c18c4935e001381da new file mode 100644 index 0000000..a05a800 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/204eb61998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/3069c41798af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/3069c41798af001c18c4935e001381da new file mode 100644 index 0000000..9b1c240 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/3069c41798af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/407b0419cca4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/407b0419cca4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..37eda5b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/407b0419cca4001c1acc9f54b60f9b57 @@ -0,0 +1,93 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche, FlowLayout.LEFT); + Panneau_Centre.add(Panneau_Centre_Droite, FlowLayout.RIGHT); + + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/a0b910119caf001c1c2eb8ec16be26ca b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/a0b910119caf001c1c2eb8ec16be26ca new file mode 100644 index 0000000..61c8a9b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/a0b910119caf001c1c2eb8ec16be26ca @@ -0,0 +1,7 @@ +#Fri Dec 21 09:08:15 CET 2007 +eclipse.preferences.version=1 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org;com;oracle.jdbc.driver; +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/f0698621fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/f0698621fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..b6680bf --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f6/f0698621fea3001c1027e59cc3e35e89 @@ -0,0 +1,40 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.*; +import javax.sql.*; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + // Fermer la base de donne + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/10e19f7ec2a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/10e19f7ec2a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..70542cf --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/10e19f7ec2a4001c1acc9f54b60f9b57 @@ -0,0 +1,15 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; + +public class Connexion extends JFrame { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/403f315c4caa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/403f315c4caa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..41dd032 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/403f315c4caa001c10fbbbdbedbe1ee6 @@ -0,0 +1,186 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + + JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/405f633305af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/405f633305af001c14499bdcdfff58b3 new file mode 100644 index 0000000..2ae2a47 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/405f633305af001c14499bdcdfff58b3 @@ -0,0 +1,152 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + + + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion ferme."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/60272d1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/60272d1698af001c18c4935e001381da new file mode 100644 index 0000000..fa57f1c Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/60272d1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/a087c61398af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/a087c61398af001c18c4935e001381da new file mode 100644 index 0000000..30c313d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/a087c61398af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/a0f469f820af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/a0f469f820af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..449dadb --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f7/a0f469f820af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Interne fout + +ORA-17002=I/O-uitzondering + +ORA-17003=Ongeldige kolomindex. + +ORA-17004=Ongeldig kolomtype. + +ORA-17005=Kolomtype wordt niet ondersteund. + +ORA-17006=Ongeldige kolomnaam. + +ORA-17007=Ongeldige dynamische kolom + +ORA-17008=Gesloten verbinding + +ORA-17009=Gesloten opdracht + +ORA-17010=Gesloten resultatenset + +ORA-17011=Geen resultatenset meer beschikbaar. + +ORA-17012=Parametertypen conflicteren. + +ORA-17014=ResultSet.next is niet aangeroepen. + +ORA-17015=Opdracht is geannuleerd. + +ORA-17016=Time-out opgetreden voor opdracht. + +ORA-17017=Cursor al ge\u00efnitialiseerd. + +ORA-17018=Ongeldige cursor. + +ORA-17019=Kan alleen een zoekvraag beschrijven. + +ORA-17020=Ongeldige rij-prefetch. + +ORA-17021=Definities ontbreken. + +ORA-17022=Definities ontbreken bij index. + +ORA-17023=Kenmerk wordt niet ondersteund. + +ORA-17024=Geen gegevens gelezen. + +ORA-17025=Fout in defines.isNull (). + +ORA-17026=Numerieke overloop + +ORA-17027=Gegevensstroom is al gesloten. + +ORA-17028=Er kunnen geen nieuwe definities worden gemaakt totdat de huidige resultatenset is gesloten. + +ORA-17029=setReadOnly: alleen-lezen-verbindingen worden niet ondersteund. + +ORA-17030=READ_COMMITTED en SERIALIZABLE zijn de enige geldige transactieniveaus. + +ORA-17031=setAutoClose: alleen de modus automatisch sluiten \\\'aan\\\' wordt ondersteund. + +ORA-17032=Kan rij-prefetch niet op nul instellen. + +ORA-17033=Onjuist opgebouwde SQL92-string op positie + +ORA-17034=Niet-ondersteund SQL92-token op positie + +ORA-17035=Tekenset wordt niet ondersteund! + +ORA-17036=Uitzondering in OracleNumber. + +ORA-17037=Converteren tussen UTF8 en UCS2 is mislukt. + +ORA-17038=Byte-array is niet lang genoeg. + +ORA-17039=Tekenarray is niet lang genoeg. + +ORA-17040=Subprotocol moet worden opgegeven in verbindings-URL. + +ORA-17041=Parameter IN of UIT ontbreekt bij index. + +ORA-17042=Ongeldige batchwaarde. + +ORA-17043=Ongeldige maximumgrootte van gegevensstroom. + +ORA-17044=Interne fout: gegevensarray is niet toegewezen. + +ORA-17045=Interne fout: poging om bindwaarden te benaderen die boven de batchwaarde liggen. + +ORA-17046=Interne fout: ongeldige index voor gegevenstoegang. + +ORA-17047=Fout bij ontleden typedescriptor. + +ORA-17048=Niet-gedefinieerd type. + +ORA-17049=Inconsistente java- en sql-objecttypen + +ORA-17050=Een dergelijk element komt niet voor in de vector. + +ORA-17051=Deze API kan niet worden gebruikt voor andere dan UDT-typen. + +ORA-17052=Deze referentie is niet geldig. + +ORA-17053=De grootte is niet geldig. + +ORA-17054=De LOB-locator is niet geldig. + +ORA-17055=Ongeldig teken aangetroffen in + +ORA-17056=Tekenset wordt niet ondersteund. + +ORA-17057=Gesloten LOB + +ORA-17058=Interne fout: ongeldige NLS-conversieverhouding. + +ORA-17059=Converteren naar interne representatie is mislukt. + +ORA-17060=Maken van descriptor is mislukt. + +ORA-17061=Descriptor ontbreekt. + +ORA-17062=Ongeldige ref.-cursor + +ORA-17063=Niet in een transactie + +ORA-17064=Ongeldige syntaxis of databasenaam is NULL. + +ORA-17065=Conversieklasse is NULL. + +ORA-17066=Specifieke implementatie voor de toegangslaag vereist. + +ORA-17067=Ongeldige Oracle-URL opgegeven. + +ORA-17068=Ongeldig argument of argumenten in aanroep. + +ORA-17069=Gebruik expliciete XA-aanroep. + +ORA-17070=Gegevensgrootte overschrijdt maximumgrootte voor dit type. + +ORA-17071=Maximum VARRAY-limiet overschreden. + +ORA-17072=Ingevoegde waarde is te groot voor kolom. + +ORA-17073=Logische handle is niet langer geldig. + +ORA-17074=Ongeldig naampatroon. + +ORA-17075=Ongeldige bewerking voor alleen-doorsturen resultatenset. + +ORA-17076=Ongeldige bewerking voor alleen-lezen resultatenset. + +ORA-17077=Instellen REF-waarde is mislukt. + +ORA-17078=Kan bewerking niet uitvoeren, omdat de verbindingen al zijn geopend. + +ORA-17079=Validatiegegevens gebruiker komen niet overeen met bestaande gegevens. + +ORA-17080=Ongeldige batchopdracht. + +ORA-17081=Er is een fout opgetreden bij het uitvoeren van de batchopdracht. + +ORA-17082=Geen huidige rij. + +ORA-17083=Niet in de rij voor invoegen. + +ORA-17084=Aangeroepen vanuit de rij voor invoegen. + +ORA-17085=Er is een waardenconflict opgetreden. + +ORA-17086=Ongedefinieerde kolomwaarde in de rij voor invoegen. + +ORA-17087=Genegeerde prestatietip: setFetchDirection(). + +ORA-17088=Syntaxis voor het aangevraagde type resultatenset en het concurrency-niveau wordt niet ondersteund. +ORA-17089=Interne fout. + +ORA-17090=Bewerking is niet toegestaan. + +ORA-17091=Kan geen resultatenset aanmaken van het aangevraagde type en/of concurrency-niveau. + +ORA-17092=JDBC-opdrachten kunnen niet worden aangemaakt of uitgevoerd bij het afhandelen van een aanroep + +ORA-17093=OCI-bewerking heeft OCI_SUCCESS_WITH_INFO teruggegeven. + +ORA-17094=Objecttypeversies komen niet overeen. + +ORA-17095=Grootte van opdrachtencache is niet ingesteld. + +ORA-17096=Opdracht-caching kan niet worden ingeschakeld voor deze logische verbinding. + +ORA-17097=Ongeldig elementtype PL/SQL-indextabel. + +ORA-17098=Ongeldige lege LOB-bewerking. + +ORA-17099=Ongeldige arraylengte PL/SQL-indextabel. + +ORA-17100=Ongeldig Java-object van database. + +ORA-17101=Ongeldige eigenschappen in OCI-verbindingsgroepobject. + +ORA-17102=Bfile is alleen-lezen. + +ORA-17103=Ongeldig verbindingstype om terug te geven via getConnection. Gebruik in plaats daarvan getJavaSqlConnection. + +ORA-17104=De uit te voeren SQL-instructie kan niet leeg of NULL zijn. + +ORA-17105=Tijdzone van verbindingssessie is niet ingesteld. + +ORA-17106=Ongeldige configuratie voor verbindingsgroep JDBC-OCI-driver opgegeven. + +ORA-17107=Er is een ongeldig proxytype opgegeven. + +ORA-17108=Geen maximale lengte opgegeven in defineColumnType. + +ORA-17109=Standaard Java-tekencodering niet gevonden. + +ORA-17110=Uitvoering voltooid met waarschuwing. + +ORA-17111=Ongeldige cache TLL-time-out voor verbinding opgegeven + +ORA-17112=Ongeldig threadinterval opgegeven. + +ORA-17113=Threadintervalwaarde is hoger dan de waarde van de cachetime-out. + +ORA-17114=Kon geen lokale transactie-commit gebruiken in een algemene transactie. + +ORA-17115=Kon geen lokale transactie-rollback gebruiken in een algemene transactie. + +ORA-17116=Kon automatisch vastleggen niet inschakelen in een actieve, algemene transactie. + +ORA-17117=Kon savepoint niet instellen in een actieve, algemene transactie. + +ORA-17118=Kon geen ID krijgen voor een benoemd savepoint. + +ORA-17119=Kon geen naam krijgen voor een niet-benoemd savepoint. + +ORA-17120=Kon geen savepoint instellen als automatisch vastleggen is ingeschakeld. + +ORA-17121=Kon geen rollback naar een savepoint uitvoeren als automatisch vastleggen is ingeschakeld. + +ORA-17122=Kon geen rollback naar een lokaal txn-savepoint in een globale transactie uitvoeren. + +ORA-17123=Ongeldige grootte voor opdrachtencache opgegeven. + +ORA-17124=Ongeldige time-out voor inactiviteit van verbinding cache opgegeven. + +ORA-17200=Kan de XA open-string niet goed converteren van Java naar C. + +ORA-17201=Kan de XA sluit-string niet goed converteren van Java naar C. + +ORA-17202=Kan de RM-naam niet goed converteren van Java naar C. + +ORA-17203=Kon aanwijzertype niet toedelen aan jlong. + +ORA-17204=Capaciteit invoerarray te klein voor OCI-handles. + +ORA-17205=Verkrijgen van OCISvcCtx-handle van C-XA met behulp van xaoSvcCtx is mislukt. + +ORA-17206=Verkrijgen van OCIEnv-handle van C-XA met behulp van xaoEnv is mislukt. + +ORA-17207=De eigenschap tnsEntry is niet ingesteld in DataSource. + +ORA-17213=C-XA retourneert XAER_RMERR tijdens xa_open. + +ORA-17215=C-XA retourneert XAER_INVAL tijdens xa_open. + +ORA-17216=C-XA retourneert XAER_PROTO tijdens xa_open. + +ORA-17233=C-XA retourneert XAER_RMERR tijdens xa_close. + +ORA-17235=C-XA retourneert XAER_INVAL tijdens xa_close. + +ORA-17236=C-XA retourneert XAER_PROTO tijdens xa_close. + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protocolschending + +ORA-17402=Er wordt slechts \u00e9\u00e9n RPA-bericht verwacht. + +ORA-17403=Er wordt slechts \u00e9\u00e9n RXH-bericht verwacht. + +ORA-17404=Er zijn meer RXD\\\'s ontvangen dan verwacht. + +ORA-17405=UAC-lengte is niet nul. + +ORA-17406=Maximumbufferlengte wordt overschreden. + +ORA-17407=Ongeldige typerepresentatie (setRep). + +ORA-17408=Ongeldige typerepresentatie (getRep). + +ORA-17409=Ongeldige bufferlengte. + +ORA-17410=Geen gegevens meer te lezen vanuit socket. + +ORA-17411=Representaties van gegevenstypen komen niet overeen. + +ORA-17412=Typelengte groter dan maximum. + +ORA-17413=Sleutelgrootte wordt overschreden. + +ORA-17414=Niet genoeg bufferruimte om kolomnamen op te slaan. + +ORA-17415=Dit type is niet verwerkt. + +ORA-17416=FATAL + +ORA-17417=NLS-probleem: decoderen van kolomnamen mislukt. + +ORA-17418=Fout in veldlengte van interne structuur. + +ORA-17419=Ongeldig aantal kolommen teruggegeven. + +ORA-17420=Oracle versie niet gedefinieerd. + +ORA-17421=Typen of verbinding niet gedefinieerd. + +ORA-17422=Ongeldige klasse in factory. + +ORA-17423=Er wordt een PLSQL-blok gebruikt zonder dat een IOV is gedefinieerd. + +ORA-17424=Er wordt een poging gedaan een andere Marshalingbewerking uit te voeren. + +ORA-17425=Gegevensstroom wordt teruggegeven in PLSQL-blok. + +ORA-17426=Zowel IN- als OUT-binds zijn NULL. + +ORA-17427=Er wordt een onge\u00efnitaliseerde OAC gebruikt. + +ORA-17428=Inlogprocedure moet worden aangeroepen na verbinding. + +ORA-17429=Moet tenminste met de server zijn verbonden. + +ORA-17430=Moet bij de server zijn ingelogd. + +ORA-17431=SQL-opdracht die moet worden ontleed, is NULL. + +ORA-17432=Ongeldige opties in all7. + +ORA-17433=Ongeldige argumenten in aanroep. + +ORA-17434=Niet in onbeperkt doorgaande modus. + +ORA-17435=Ongeldig aantal in_out_binds in IOV. + +ORA-17436=Ongeldig aantal outbinds. + +ORA-17437=Fout in PLSQL-blok IN/OUT-argumenten. + +ORA-17438=Intern - onverwachte waarde. + +ORA-17439=Ongeldig SQL-type. + +ORA-17440=DBItem/DBType is NULL. + +ORA-17441=Oracle versie wordt niet ondersteund. Laagste ondersteunde versie is 7.2.3. + +ORA-17442=Waarde refcursor is ongeldig. + +ORA-17443=Null-gebruiker of -wachtwoord wordt niet ondersteund in THIN-stuurprogramma. + +ORA-17444=TTC-protocolversie die is ontvangen van server, wordt niet ondersteund. + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f8/0003891698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f8/0003891698af001c18c4935e001381da new file mode 100644 index 0000000..39e94f3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f8/0003891698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f8/90d5852a4daa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f8/90d5852a4daa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..f436812 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f8/90d5852a4daa001c10fbbbdbedbe1ee6 @@ -0,0 +1,192 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +// Import personnel + +import fr.blankoworld.ihm.Connexion; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + + + public JTextArea zoneTexteStatut; + private Connexion conn; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Cration des fentres secondaires // + // ***************************************************** // + conn = new Connexion(this); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + // Affichage si reussi ou pas + // Si reussi on met le bouton Connexion.setvisible => false + // + conn.setVisible(true); + + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + + } + }); + } + + public void afficherMessage(String chaine){ + int resultatConfirmation; + jo = JOptionPane.showConfirmDialog(null, chaine.toString(), "Attention" ,JOptionPane.YES_NO_OPTION); + if(jo == 0){ + System.out.print("Bouton"); + } + else{ + System.out.print("Pas bouton"); + } + conn.dispose(); + } + + private void menuBddQuitter(){ + + + // ********************************* // + // AJOUTER DECONNEXION A LA BASE ! // + // ********************************* // + + System.exit(0); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f8/c0b08cf9fea3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f8/c0b08cf9fea3001c1027e59cc3e35e89 new file mode 100644 index 0000000..156d153 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f8/c0b08cf9fea3001c1027e59cc3e35e89 @@ -0,0 +1,47 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + } + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/800397d004af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/800397d004af001c14499bdcdfff58b3 new file mode 100644 index 0000000..08278e6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/800397d004af001c14499bdcdfff58b3 @@ -0,0 +1,139 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + + + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/a061f01498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/a061f01498af001c18c4935e001381da new file mode 100644 index 0000000..fdf4fb3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/a061f01498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/b03e081a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/b03e081a98af001c18c4935e001381da new file mode 100644 index 0000000..10b9237 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/b03e081a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/d024c1cefda3001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/d024c1cefda3001c1027e59cc3e35e89 new file mode 100644 index 0000000..6a98291 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/f9/d024c1cefda3001c1027e59cc3e35e89 @@ -0,0 +1,44 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.*; +import javax.sql.*; +import java.sql.DriverManager; +import java.sql.SQLException; + +import com.sun.corba.se.pept.transport.Connection; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + Connection conn = DriverManager.getConnection(url, identifiant, mdp); + + System.out.println("Accs la base: Accept"); + } catch (SQLException e) { + + System.out.println("Accs la base: Refus"); + // TODO: handle exception + } finally { + try { + conn.close(); + } catch( SQLException ex ) {} + } + } + +} \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fa/f03ee70b7ea9001c1d3abf97745a02da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fa/f03ee70b7ea9001c1d3abf97745a02da new file mode 100644 index 0000000..9b97aa6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fa/f03ee70b7ea9001c1d3abf97745a02da @@ -0,0 +1,79 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +public class Principale extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Principale().setVisible(true); + } + + private Principale() { + + // Cration du menu Base de donnes + JMenu MenuBdd = new JMenu("Base de donnes"); + JMenuItem MenuBdd_Connexion = new JMenuItem("Connexion"); + JMenuItem MenuBdd_Fermer = new JMenuItem("Fermer"); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuJeu); + MenuPrincipal.add(MenuAide); + MenuPrincipal.setBorder(new BevelBorder(BevelBorder.RAISED)); + + + + + JTextArea zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Rsultat des requtes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fb/00ee8a0e4aaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fb/00ee8a0e4aaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..cce98ed --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fb/00ee8a0e4aaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,190 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + Principale.this.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fb/703b511498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fb/703b511498af001c18c4935e001381da new file mode 100644 index 0000000..d66961f Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fb/703b511498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fc/40962e1b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fc/40962e1b98af001c18c4935e001381da new file mode 100644 index 0000000..bb91b98 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fc/40962e1b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fc/a09ba35e48aa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fc/a09ba35e48aa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..82e1965 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fc/a09ba35e48aa001c10fbbbdbedbe1ee6 @@ -0,0 +1,185 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = ""; + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fc/e0c6ce9dffae001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fc/e0c6ce9dffae001c14499bdcdfff58b3 new file mode 100644 index 0000000..fbf2672 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fc/e0c6ce9dffae001c14499bdcdfff58b3 @@ -0,0 +1,130 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte."; + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/1047041a98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/1047041a98af001c18c4935e001381da new file mode 100644 index 0000000..fc989ae Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/1047041a98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/10a94606cca4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/10a94606cca4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..c59be9c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/10a94606cca4001c1acc9f54b60f9b57 @@ -0,0 +1,91 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.BevelBorder; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel("Serveur: "); + JLabel jlabelPort = new JLabel("Port: "); + JLabel jlabelBase = new JLabel("Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel("Identifiant: "); + JLabel jlabelMdp = new JLabel("Mot de passe: "); + + // Cration des champs textes + JTextField jtextServeur = new JTextField("grive"); + JTextField jtextPort = new JTextField("1521"); + JTextField jtextBase = new JTextField("v920"); + JTextField jtextIdentifiant = new JTextField("dut"); + JTextField jtextMdp = new JTextField("dut"); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new FlowLayout()); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + //Panneau_Centre_Gauche.WIDTH = 100; + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + + Panneau_Centre.add(Panneau_Centre_Gauche, BorderLayout.WEST); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(200,200); + this.setLocation(200,200); + this.setResizable(true); + this.setTitle("Navigateur SQL v0.1"); + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/30ed7d4703af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/30ed7d4703af001c14499bdcdfff58b3 new file mode 100644 index 0000000..4495175 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/30ed7d4703af001c14499bdcdfff58b3 @@ -0,0 +1,140 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + + + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + connection = null; + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/603326964aaa001c10fbbbdbedbe1ee6 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/603326964aaa001c10fbbbdbedbe1ee6 new file mode 100644 index 0000000..e2141ff --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/603326964aaa001c10fbbbdbedbe1ee6 @@ -0,0 +1,195 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +//import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +// Import personels +import fr.blankoworld.ihm.Principale; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnes prives + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + + // Cration des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + JPasswordField jtextMdp; + + // Cration d'un principal, pour utiliser ses mthodes + private Principale pr; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + public Connexion(Principale pr) { + + this.pr = pr; + + // Cration des tiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnes: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Cration des champs textes + jtextServeur = new JTextField("grive"); + jtextPort = new JTextField("1521"); + jtextBase = new JTextField("v920"); + jtextIdentifiant = new JTextField("dut"); + jtextMdp = new JPasswordField("dut"); + + jtextMdp.setEchoChar('*'); + + // Cration des boutons + JButton jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Cration des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des tiquettes au panneau centre gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux la fentre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion une base de donnes"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + public String getServeur(){ + return this.serveur; + } + + public void setServeur(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void getPort(String chaine){ + this.port = chaine; + } + + public String getBdd(){ + return this.bdd; + } + + public void setBdd(String chaine){ + this.bdd = chaine; + } + + public String getIdentifiant(){ + return this.id; + } + + public void setIdentifiant(String chaine){ + this.id = chaine; + } + + public String getMotDePasse(){ + return this.mdp; + } + + public void setMotDePasse(String chaine){ + this.mdp = chaine; + } + + private void valider(){ + this.serveur = this.jtextServeur.getText(); + this.pr.afficherMessage(this.serveur); + // A la fin on triche et on laisse le choix la fentre principale d'teindre cette fentre + //this.setVisible(false); + + } + + private void annuler(){ + this.dispose(); + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/d000de1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/d000de1698af001c18c4935e001381da new file mode 100644 index 0000000..022392a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fd/d000de1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/1090ae97c3a4001c1acc9f54b60f9b57 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/1090ae97c3a4001c1acc9f54b60f9b57 new file mode 100644 index 0000000..2f83f6e --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/1090ae97c3a4001c1acc9f54b60f9b57 @@ -0,0 +1,27 @@ +package fr.blankoworld.ihm; + +import javax.swing.JFrame; +import javax.swing.JLabel; + +public class Connexion extends JFrame { + + private static final long serialVersionUID = 1L; + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new Connexion().setVisible(true); + } + + private Connexion() { + JLabel jlabelServeur = new JLabel(); + JLabel jlabelPort = new JLabel(); + JLabel jlabelBase = new JLabel(); + JLabel jlabelIdentifiant = new JLabel(); + JLabel jlabelMdp = new JLabel(); + + + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/50e2131b98af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/50e2131b98af001c18c4935e001381da new file mode 100644 index 0000000..919ee04 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/50e2131b98af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/809e291998af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/809e291998af001c18c4935e001381da new file mode 100644 index 0000000..8137441 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/809e291998af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/d0a67b1498af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/d0a67b1498af001c18c4935e001381da new file mode 100644 index 0000000..2c03fc3 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/d0a67b1498af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/f088eb4103af001c14499bdcdfff58b3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/f088eb4103af001c14499bdcdfff58b3 new file mode 100644 index 0000000..0519c4c --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/fe/f088eb4103af001c14499bdcdfff58b3 @@ -0,0 +1,139 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + public String getPort(){ + return this.port; + } + + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + Connection connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + + + // ********************************************************** // + // PREVOIR AJOUT DE CONNECT (url), de DRIVER et de VERSION // + // ********************************************************** // + + + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + // TODO: handle exception + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + tableau[0] = "0"; + tableau[1] = "Je suis sense me deconnecter !"; + + return tableau; + } + +} diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ff/10a5b2dc01a4001c1027e59cc3e35e89 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ff/10a5b2dc01a4001c1027e59cc3e35e89 new file mode 100644 index 0000000..598069d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ff/10a5b2dc01a4001c1027e59cc3e35e89 @@ -0,0 +1,61 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.ResultSet; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("Accs la base: Accept."); + + try { + Statement requete = connection.createStatement(); + ResultSet resultSet = requete.executeQuery("SELECT NOM, PRENOM FROM ENSEIGNANTS"); + System.out.println("Requte: Envoye et reue."); + + System.out.println(resultSet.toString()); + + } catch (Exception ex){ + System.out.println("Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("Fin"); + } + + } \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ff/b052c9f820af001c1bf1a004f0d77fc3 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ff/b052c9f820af001c1bf1a004f0d77fc3 new file mode 100644 index 0000000..73a1168 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ff/b052c9f820af001c1bf1a004f0d77fc3 @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Erro Interno + +ORA-17002=Exce\u00e7\u00e3o de E/S + +ORA-17003=\u00cdndice de coluna inv\u00e1lido + +ORA-17004=Tipo de coluna inv\u00e1lido + +ORA-17005=Tipo de coluna n\u00e3o suportado + +ORA-17006=Nome de coluna inv\u00e1lido + +ORA-17007=Coluna din\u00e2mica inv\u00e1lida + +ORA-17008=Conex\u00e3o Fechada + +ORA-17009=Instru\u00e7\u00e3o Fechada + +ORA-17010=Conjunto de Resultados Fechado + +ORA-17011=Conjunto de Resultados Esgotado + +ORA-17012=Conflito de Tipo de Par\u00e2metro + +ORA-17014=ResultSet.next n\u00e3o foi chamado + +ORA-17015=Instru\u00e7\u00e3o cancelada + +ORA-17016=Instru\u00e7\u00e3o sofreu timeout + +ORA-17017=Cursor j\u00e1 foi inicializado + +ORA-17018=Cursor inv\u00e1lido + +ORA-17019=S\u00f3 pode descrever uma consulta + +ORA-17020=Pr\u00e9-extra\u00e7\u00e3o de linha inv\u00e1lida + +ORA-17021=Defini\u00e7\u00f5es ausentes + +ORA-17022=Defini\u00e7\u00f5es ausentes no \u00edndice + +ORA-17023=Recurso n\u00e3o suportado + +ORA-17024=Sem leitura de dados + +ORA-17025=Erro em defines.isNull () + +ORA-17026=Overflow Num\u00e9rico + +ORA-17027=Stream j\u00e1 foi fechado + +ORA-17028=N\u00e3o \u00e9 poss\u00edvel criar novas defini\u00e7\u00f5es at\u00e9 que o Conjunto de Resultados seja fechado + +ORA-17029=setReadOnly: Conex\u00f5es somente para leitura n\u00e3o s\u00e3o suportadas + +ORA-17030=READ_COMMITTED e SERIALIZABLE s\u00e3o os \u00fanicos n\u00edveis de transa\u00e7\u00e3o v\u00e1lidos + +ORA-17031=setAutoClose: Suporta apenas o modo de fechamento autom\u00e1tico ativo + +ORA-17032=n\u00e3o \u00e9 poss\u00edvel definir pr\u00e9-extra\u00e7\u00e3o de linha como zero + +ORA-17033=String SQL92 incorreta na posi\u00e7\u00e3o + +ORA-17034=Token SQL92 n\u00e3o suportado na posi\u00e7\u00e3o + +ORA-17035=Conjunto de Caracteres N\u00e3o Suportado! + +ORA-17036=exce\u00e7\u00e3o em OracleNumber + +ORA-17037=Falha ao fazer convers\u00e3o entre UTF8 e UCS2 + +ORA-17038=Array de byte n\u00e3o \u00e9 suficientemente longo + +ORA-17039=Array de caractere n\u00e3o \u00e9 suficientemente longo + +ORA-17040=Subprotocolo deve ser especificado no URL de conex\u00e3o + +ORA-17041=Par\u00e2metro IN ou OUT ausente do \u00edndice: + +ORA-17042=Valor de Lote Inv\u00e1lido + +ORA-17043=Tamanho m\u00e1ximo de stream inv\u00e1lido + +ORA-17044=Erro interno: Array de dados n\u00e3o alocado + +ORA-17045=Erro interno: Tentativa de acessar valores de liga\u00e7\u00e3o ultrapassa o valor do lote + +ORA-17046=Erro interno: \u00cdndice inv\u00e1lido para acesso a dados + +ORA-17047=Erro na an\u00e1lise do Descritor de Tipo + +ORA-17048=Tipo indefinido + +ORA-17049=Tipos de objeto java e sql inconsistentes + +ORA-17050=n\u00e3o existe esse elemento no vetor + +ORA-17051=Esta API n\u00e3o pode ser usada para tipos n\u00e3o-UDT + +ORA-17052=Esta refer\u00eancia n\u00e3o \u00e9 v\u00e1lida + +ORA-17053=Este tamanho n\u00e3o \u00e9 v\u00e1lido + +ORA-17054=Este localizador de LOB n\u00e3o \u00e9 v\u00e1lido + +ORA-17055=Caractere inv\u00e1lido encontrado em + +ORA-17056=Conjunto de caracteres n\u00e3o suportado + +ORA-17057=LOB fechado + +ORA-17058=Erro interno: Raz\u00e3o de Convers\u00e3o NLS inv\u00e1lida + +ORA-17059=Falha ao converter para representa\u00e7\u00e3o interna + +ORA-17060=Falha ao construir descritor + +ORA-17061=Descritor ausente + +ORA-17062=Cursor de refer\u00eancia \u00e9 inv\u00e1lido + +ORA-17063=N\u00e3o \u00e9 uma transa\u00e7\u00e3o + +ORA-17064=Sintaxe Inv\u00e1lida ou nome de Banco de Dados \u00e9 nulo + +ORA-17065=Classe de convers\u00e3o \u00e9 nula + +ORA-17066=\u00c9 necess\u00e1ria uma implementa\u00e7\u00e3o espec\u00edfica para a camada de acesso + +ORA-17067=URL Oracle Inv\u00e1lido especificado + +ORA-17068=Argumento(s) inv\u00e1lido(s) na chamada + +ORA-17069=Use chamada XA expl\u00edcita + +ORA-17070=Tamanho dos dados maior que o tamanho m\u00e1ximo para este tipo + +ORA-17071=Limite m\u00e1ximo de VARRAY excedido + +ORA-17072=Valor inserido grande demais para a coluna + +ORA-17073=Handle l\u00f3gico n\u00e3o \u00e9 mais v\u00e1lido + +ORA-17074=padr\u00e3o de nome inv\u00e1lido + +ORA-17075=Opera\u00e7\u00e3o inv\u00e1lida para encaminhar apenas conjunto de resultados + +ORA-17076=Opera\u00e7\u00e3o inv\u00e1lida para ler apenas conjunto de resultados + +ORA-17077=Falha ao definir o valor REF + +ORA-17078=N\u00e3o foi poss\u00edvel realizar a opera\u00e7\u00e3o uma vez que as conex\u00f5es j\u00e1 est\u00e3o abertas + +ORA-17079=As credenciais de usu\u00e1rio n\u00e3o correspondem \u00e0s existentes + +ORA-17080=comando de lote inv\u00e1lido + +ORA-17081=ocorreu um erro durante a forma\u00e7\u00e3o do lote + +ORA-17082=Nenhuma linha atual + +ORA-17083=Fora da linha de inser\u00e7\u00e3o + +ORA-17084=Chamada na linha de inser\u00e7\u00e3o + +ORA-17085=Conflitos de valores + +ORA-17086=Valor de coluna indefinido na linha de inser\u00e7\u00e3o + +ORA-17087=Dica de desempenho ignorada: setFetchDirection() + +ORA-17088=Sintaxe n\u00e3o suportada para o tipo de conjunto de resultados e o n\u00edvel de concorr\u00eancia solicitados +ORA-17089=erro interno + +ORA-17090=opera\u00e7\u00e3o n\u00e3o permitida + +ORA-17091=N\u00e3o foi poss\u00edvel criar conjunto de resultados no tipo e/ou n\u00edvel de concorr\u00eancia solicitados + +ORA-17092=Instru\u00e7\u00f5es JDBC n\u00e3o podem ser criadas ou executadas no final do processamento da chamada + +ORA-17093=Opera\u00e7\u00e3o OCI retornou OCI_SUCCESS_WITH_INFO + +ORA-17094=Vers\u00e3o do tipo de objeto inv\u00e1lida + +ORA-17095=O tamanho do cache de instru\u00e7\u00f5es n\u00e3o foi definido + +ORA-17096=O Cache de Instru\u00e7\u00f5es n\u00e3o est\u00e1 ativado para esta conex\u00e3o l\u00f3gica. + +ORA-17097=Tipo de elemento de Tabela de \u00cdndice PL/SQL inv\u00e1lido + +ORA-17098=Opera\u00e7\u00e3o de lob vazio inv\u00e1lida + +ORA-17099=Tamanho de array de Tabela de \u00cdndice de PL/SQL inv\u00e1lido + +ORA-17100=Objeto Java de banco de dados inv\u00e1lido + +ORA-17101=Propriedades inv\u00e1lidas no Objeto Pool de Conex\u00f5es OCI + +ORA-17102=Bfile \u00e9 somente para leitura + +ORA-17103=Tipo de conex\u00e3o inv\u00e1lido a ser retornado via getConnection. Use, em vez disso, getJavaSqlConnection + +ORA-17104=A instru\u00e7\u00e3o SQL a ser executada n\u00e3o pode ser vazia ou nula + +ORA-17105=o fuso hor\u00e1rio da sess\u00e3o de conex\u00e3o n\u00e3o foi definido + +ORA-17106=configura\u00e7\u00e3o inv\u00e1lida especificada para o pool de conex\u00e3o do driver OCI JDBC + +ORA-17107=tipo de proxy inv\u00e1lido especificado + +ORA-17108=Tamanho m\u00e1ximo n\u00e3o especificado em defineColumnType + +ORA-17109=codifica\u00e7\u00e3o de caractere Java padr\u00e3o n\u00e3o encontrada + +ORA-17110=execu\u00e7\u00e3o conclu\u00edda com advert\u00eancia + +ORA-17111=Timeout TTL inv\u00e1lido especificado para o cache de conex\u00e3o + +ORA-17112=Intervalo inv\u00e1lido especificado para o thread + +ORA-17113=O valor do intervalo de thread \u00e9 maior que o valor de timeout do cache + +ORA-17114=n\u00e3o foi poss\u00edvel usar o commit de transa\u00e7\u00e3o local em uma transa\u00e7\u00e3o global + +ORA-17115=n\u00e3o foi poss\u00edvel usar o rollback de transa\u00e7\u00e3o local em uma transa\u00e7\u00e3o global + +ORA-17116=n\u00e3o foi poss\u00edvel ativar o commit autom\u00e1tico em uma transa\u00e7\u00e3o global ativa + +ORA-17117=n\u00e3o foi poss\u00edvel definir o ponto de salvamento em uma transa\u00e7\u00e3o global ativa + +ORA-17118=n\u00e3o foi poss\u00edvel obter o ID de um Ponto de Salvamento nomeado + +ORA-17119=n\u00e3o foi poss\u00edvel obter o nome de um Ponto de Salvamento n\u00e3o-nomeado + +ORA-17120=n\u00e3o foi poss\u00edvel definir um Ponto de Salvamento com o commit autom\u00e1tico ativado + +ORA-17121=n\u00e3o foi poss\u00edvel executar rollback para um Ponto de Salvamento com o commit autom\u00e1tico ativado + +ORA-17122=n\u00e3o foi poss\u00edvel executar rollback para um Ponto de Salvamento de trans. local em uma transa\u00e7\u00e3o global + +ORA-17123=O tamanho do cache de instru\u00e7\u00f5es especificado \u00e9 inv\u00e1lido + +ORA-17124=O timeout de Inatividade especificado para o cache de conex\u00e3o \u00e9 inv\u00e1lido + +ORA-17200=N\u00e3o foi poss\u00edvel converter adequadamente a string de abertura XA de Java para C + +ORA-17201=N\u00e3o foi poss\u00edvel converter adequadamente a string de fechamento XA de Java para C + +ORA-17202=N\u00e3o foi poss\u00edvel converter adequadamente o nome RM de Java para C + +ORA-17203=N\u00e3o foi poss\u00edvel transmitir o tipo de ponteiro para jlong + +ORA-17204=Array de entrada muito pequeno para conter handles OCI + +ORA-17205=Falha ao obter handle OCISvcCtx de C-XA usando xaoSvcCtx + +ORA-17206=Falha ao obter handle OCIEnv de C-XA usando xaoEnv + +ORA-17207=A propriedade tnsEntry n\u00e3o foi definida na Origem de Dados + +ORA-17213=C-XA retornou XAER_RMERR durante xa_open + +ORA-17215=C-XA retornou XAER_INVAL durante xa_open + +ORA-17216=C-XA retornou XAER_PROTO durante xa_open + +ORA-17233=C-XA retornou XAER_RMERR durante xa_close + +ORA-17235=C-XA retornou XAER_INVAL durante xa_close + +ORA-17236=C-XA retornou XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Viola\u00e7\u00e3o de protocolo + +ORA-17402=\u00c9 esperada apenas uma mensagem RPA + +ORA-17403=\u00c9 esperada apenas uma mensagem RXH + +ORA-17404=Recebidos mais RXDs do que o esperado + +ORA-17405=Tamanho UAC n\u00e3o \u00e9 zero + +ORA-17406=Excedendo tamanho m\u00e1ximo do buffer + +ORA-17407=Representa\u00e7\u00e3o (setRep) de tipo inv\u00e1lida + +ORA-17408=Representa\u00e7\u00e3o (setRep) de tipo inv\u00e1lida + +ORA-17409=tamanho do buffer inv\u00e1lido + +ORA-17410=N\u00e3o ser\u00e3o lidos mais dados do soquete + +ORA-17411=Incompatibilidade de representa\u00e7\u00f5es de Tipo de Dados + +ORA-17412=Tamanho de tipo maior que o M\u00e1ximo + +ORA-17413=Tamanho de chave excede + +ORA-17414=Tamanho de Buffer Insuficiente para armazenar Nomes de Colunas + +ORA-17415=Este tipo n\u00e3o foi manipulado + +ORA-17416=FATAL + +ORA-17417=Problema de NLS; falha ao decodificar nomes de colunas + +ORA-17418=Erro de tamanho do campo de estrutura interna + +ORA-17419=N\u00famero inv\u00e1lido de colunas retornado + +ORA-17420=Vers\u00e3o do Oracle n\u00e3o foi definida + +ORA-17421=Tipos ou Conex\u00e3o n\u00e3o foi(ram) definido(s) + +ORA-17422=Classe inv\u00e1lida no factory + +ORA-17423=Usando um bloco PLSQL sem um IOV (I/O vector) definido + +ORA-17424=Tentando outra opera\u00e7\u00e3o de marshaling + +ORA-17425=Retornando um stream no bloco PLSQL + +ORA-17426=As liga\u00e7\u00f5es IN e OUT s\u00e3o NULL + +ORA-17427=Usando OAC N\u00e3o-Inicializado + +ORA-17428=Logon deve ser chamado ap\u00f3s conex\u00e3o + +ORA-17429=Deve estar pelo menos conectado ao servidor + +ORA-17430=Deve ter estabelecido logon no servidor + +ORA-17431=Instru\u00e7\u00e3o SQL a ser analisada \u00e9 nula + +ORA-17432=op\u00e7\u00f5es inv\u00e1lidas em all7 + +ORA-17433=argumentos inv\u00e1lidos na chamada + +ORA-17434=n\u00e3o est\u00e1 no modo de stream + +ORA-17435=n\u00famero inv\u00e1lido de in_out_binds no IOV + +ORA-17436=n\u00famero inv\u00e1lido para liga\u00e7\u00f5es externas + +ORA-17437=Erro no(s) argumento(s) IN/OUT do bloco PLSQL + +ORA-17438=Interno - Valor inesperado + +ORA-17439=Tipo SQL inv\u00e1lido + +ORA-17440=DBItem/DBType \u00e9 nulo + +ORA-17441=Vers\u00e3o do Oracle n\u00e3o \u00e9 suportada. A vers\u00e3o m\u00ednima suportada \u00e9 7.2.3. + +ORA-17442=Valor do cursor de refer\u00eancia \u00e9 inv\u00e1lido + +ORA-17443=Usu\u00e1rio nulo ou senha n\u00e3o suportada no driver THIN + +ORA-17444=Vers\u00e3o do Protocolo TTC recebida do servidor n\u00e3o \u00e9 suportada + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ff/f0639c1698af001c18c4935e001381da b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ff/f0639c1698af001c18c4935e001381da new file mode 100644 index 0000000..83a57ab Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/ff/f0639c1698af001c18c4935e001381da differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Compteur/.markers b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Compteur/.markers new file mode 100644 index 0000000..805851d Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Compteur/.markers differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Compteur/2.tree b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Compteur/2.tree new file mode 100644 index 0000000..114cd16 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Compteur/2.tree differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Compteur/org.eclipse.jdt.core/state.dat b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Compteur/org.eclipse.jdt.core/state.dat new file mode 100644 index 0000000..14ac0d7 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Compteur/org.eclipse.jdt.core/state.dat differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/InterfacesBlankoides/.location b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/InterfacesBlankoides/.location new file mode 100644 index 0000000..ef2aab9 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/InterfacesBlankoides/.location differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/InterfacesBlankoides/.markers b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/InterfacesBlankoides/.markers new file mode 100644 index 0000000..883a4c5 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/InterfacesBlankoides/.markers differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/InterfacesBlankoides/org.eclipse.jdt.core/state.dat b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/InterfacesBlankoides/org.eclipse.jdt.core/state.dat new file mode 100644 index 0000000..3b0d390 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/InterfacesBlankoides/org.eclipse.jdt.core/state.dat differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Puissance4/.indexes/properties.index b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Puissance4/.indexes/properties.index new file mode 100644 index 0000000..8738d28 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Puissance4/.indexes/properties.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Puissance4/.markers b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Puissance4/.markers new file mode 100644 index 0000000..2dc1361 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Puissance4/.markers differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Puissance4/org.eclipse.jdt.core/state.dat b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Puissance4/org.eclipse.jdt.core/state.dat new file mode 100644 index 0000000..9ae94ad Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Puissance4/org.eclipse.jdt.core/state.dat differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/RequeteSimple/.markers b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/RequeteSimple/.markers new file mode 100644 index 0000000..dab5af8 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/RequeteSimple/.markers differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/RequeteSimple/org.eclipse.jdt.core/state.dat b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/RequeteSimple/org.eclipse.jdt.core/state.dat new file mode 100644 index 0000000..396cce7 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/RequeteSimple/org.eclipse.jdt.core/state.dat differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version b/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version new file mode 100644 index 0000000..25cb955 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index b/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index new file mode 100644 index 0000000..7b6c939 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version b/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version new file mode 100644 index 0000000..6b2aaa7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/24.tree b/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/24.tree new file mode 100644 index 0000000..5a570fb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.root/24.tree differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/workspace/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources new file mode 100644 index 0000000..0386c40 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources differ diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/com.omondo.uml.core.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/com.omondo.uml.core.prefs new file mode 100644 index 0000000..4970cb3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/com.omondo.uml.core.prefs @@ -0,0 +1,3 @@ +#Fri Dec 21 09:28:02 CET 2007 +eclipse.preferences.version=1 +UMLClassDiagramPreference.dependencyProperties.definition.package=true diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..69792a1 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Fri Dec 14 15:11:17 CET 2007 +version=1 +eclipse.preferences.version=1 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs new file mode 100644 index 0000000..bad37e5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs @@ -0,0 +1,4 @@ +#Fri Dec 21 10:35:10 CET 2007 +pref_state_memento.org.eclipse.debug.ui.VariableView=\n\n\n\n +eclipse.preferences.version=1 +org.eclipse.debug.ui.user_view_bindings=\n\n\n\n\n\n diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..ec5ca7b --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,11 @@ +#Fri Jan 25 10:11:47 CET 2008 +org.eclipse.jdt.core.classpathVariable.JRE_SRCROOT= +org.eclipse.jdt.core.classpathVariable.OMONDO_MODEL_HOME=/usr/local/eclipse/plugins/com.omondo.uml.model_1.2.1 +org.eclipse.jdt.core.classpathVariable.JRE_LIB=/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/rt.jar +org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled +org.eclipse.jdt.core.classpathVariable.ECLIPSE_HOME=/usr/local/eclipse +org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.uad,*.ucd,*.uld,*.upd,*.udd,*.uod,*.usd,*.utd,*.uud,*.odd,*.ead,*.ecd,*.eld,*.epd,*.edd,*.eod,*.esd,*.etd,*.eud,*.urd*.uml,*.ecore, +org.eclipse.jdt.core.classpathVariable.JUNIT_HOME=/usr/local/eclipse/plugins/org.junit_3.8.1 +eclipse.preferences.version=1 +org.eclipse.jdt.core.classpathVariable.JUNIT_SRC_HOME=/usr/local/eclipse/plugins/org.eclipse.jdt.source_3.2.2.r322_v20070104-R4CR0Znkvtfjv9-/src/org.junit_3.8.1 +org.eclipse.jdt.core.classpathVariable.JRE_SRC=/usr/lib/jvm/java-6-sun-1.6.0.00/src.zip diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.debug.ui.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.debug.ui.prefs new file mode 100644 index 0000000..8e032ca --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.debug.ui.prefs @@ -0,0 +1,3 @@ +#Thu Dec 06 14:15:06 CET 2007 +org.eclipse.debug.ui.VariableView.org.eclipse.jdt.debug.ui.show_null_entries=true +eclipse.preferences.version=1 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs new file mode 100644 index 0000000..daa7a8d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs @@ -0,0 +1,3 @@ +#Fri Dec 21 08:57:48 CET 2007 +eclipse.preferences.version=1 +org.eclipse.jdt.launching.PREF_VM_XML=\n\n\n\n\n\n diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 0000000..94f54bb --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,18 @@ +#Fri Dec 21 14:42:00 CET 2007 +useQuickDiffPrefPage=true +org.eclipse.jdt.ui.text.templates_migrated=true +proposalOrderMigrated=true +tabWidthPropagated=true +org.eclipse.jdt.ui.javadoclocations.migrated=true +org.eclipse.jdt.ui.text.code_templates_migrated=true +org.eclipse.jdt.ui.text.custom_code_templates= +useAnnotationsPrefPage=true +content_assist_lru_history= +command=/usr/bin/javadoc +org.eclipse.jface.textfont=1|Monospace|10|0|GTK|1|; +org.eclipse.jdt.ui.editor.tab.width= +org.eclipse.jdt.ui.formatterprofiles.version=10 +org.eclipse.jdt.ui.text.custom_templates= +eclipse.preferences.version=1 +Refactoring.savealleditors=true +fontPropagated=true diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.core.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.core.prefs new file mode 100644 index 0000000..1d49f53 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.core.prefs @@ -0,0 +1,3 @@ +#Fri Dec 14 15:28:38 CET 2007 +eclipse.preferences.version=1 +platform_path=/usr/local/eclipse diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.ui.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.ui.prefs new file mode 100644 index 0000000..92ec0e7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.ui.prefs @@ -0,0 +1,3 @@ +#Tue Nov 06 08:27:05 CET 2007 +eclipse.preferences.version=1 +org.eclipse.team.ui.first_time=false diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs new file mode 100644 index 0000000..0a4938a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs @@ -0,0 +1,3 @@ +#Wed Oct 24 17:30:17 CEST 2007 +eclipse.preferences.version=1 +overviewRuler_migration=migrated_3.1 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs new file mode 100644 index 0000000..3706bc0 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs @@ -0,0 +1,3 @@ +#Fri Dec 21 08:57:47 CET 2007 +eclipse.preferences.version=1 +platformState=1193119694707 diff --git a/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs new file mode 100644 index 0000000..cad5cac --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs @@ -0,0 +1,3 @@ +#Wed Oct 24 13:36:49 CEST 2007 +eclipse.preferences.version=1 +showIntro=false diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/Compteur.launch b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/Compteur.launch new file mode 100644 index 0000000..b38c92a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/Compteur.launch @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/Connexion.launch b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/Connexion.launch new file mode 100644 index 0000000..34fdcea --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/Connexion.launch @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IHMPrincipale.launch b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IHMPrincipale.launch new file mode 100644 index 0000000..0be7d5d --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IHMPrincipale.launch @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IHMRequete.launch b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IHMRequete.launch new file mode 100644 index 0000000..a204cbc --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IHMRequete.launch @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IhmPuissance4 (1).launch b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IhmPuissance4 (1).launch new file mode 100644 index 0000000..148ab63 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IhmPuissance4 (1).launch @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IhmPuissance4.launch b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IhmPuissance4.launch new file mode 100644 index 0000000..7184002 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IhmPuissance4.launch @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IhmPuissance4v2.launch b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IhmPuissance4v2.launch new file mode 100644 index 0000000..777f1a3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/IhmPuissance4v2.launch @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/PositionBorderLayoutSansCotes.launch b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/PositionBorderLayoutSansCotes.launch new file mode 100644 index 0000000..9978a98 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/PositionBorderLayoutSansCotes.launch @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/Principal.launch b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/Principal.launch new file mode 100644 index 0000000..b322276 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.core/.launches/Principal.launch @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml b/workspace/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml new file mode 100644 index 0000000..3b03972 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml @@ -0,0 +1,20 @@ + +
    +
    + + + + + + + + +
    +
    + + + + + +
    +
    diff --git a/workspace/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml b/workspace/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml new file mode 100644 index 0000000..ed19fe9 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/1125118492.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/1125118492.index new file mode 100644 index 0000000..06d8999 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/1125118492.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/1499864552.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/1499864552.index new file mode 100644 index 0000000..050ecbb Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/1499864552.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/2384876972.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/2384876972.index new file mode 100644 index 0000000..dabdc9a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/2384876972.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/2995973807.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/2995973807.index new file mode 100644 index 0000000..5ab5be9 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/2995973807.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/3302613664.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/3302613664.index new file mode 100644 index 0000000..d247fad Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/3302613664.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/3998549125.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/3998549125.index new file mode 100644 index 0000000..aea2cad Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/3998549125.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/406627689.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/406627689.index new file mode 100644 index 0000000..5f2c001 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/406627689.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/572703832.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/572703832.index new file mode 100644 index 0000000..a34dc77 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/572703832.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/752176752.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/752176752.index new file mode 100644 index 0000000..c0b838b Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/752176752.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/844507756.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/844507756.index new file mode 100644 index 0000000..b8fdf7e Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/844507756.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/855356148.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/855356148.index new file mode 100644 index 0000000..d50f0d2 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/855356148.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/875719695.index b/workspace/.metadata/.plugins/org.eclipse.jdt.core/875719695.index new file mode 100644 index 0000000..0867baf Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/875719695.index differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps b/workspace/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps new file mode 100644 index 0000000..2c6ea9a Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt b/workspace/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt new file mode 100644 index 0000000..f65e8b7 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt @@ -0,0 +1,2 @@ +/home/3dossmanno/workspace/.metadata/.plugins/org.eclipse.jdt.core/3998549125.index +/home/3dossmanno/workspace/.metadata/.plugins/org.eclipse.jdt.core/752176752.index diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat b/workspace/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat new file mode 100644 index 0000000..6ad7a93 Binary files /dev/null and b/workspace/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat differ diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml b/workspace/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml new file mode 100644 index 0000000..3706600 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml b/workspace/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml new file mode 100644 index 0000000..a4ee3cb --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml @@ -0,0 +1,2 @@ + + diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml b/workspace/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml new file mode 100644 index 0000000..562f864 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml b/workspace/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml new file mode 100644 index 0000000..24fd3e3 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml @@ -0,0 +1,98 @@ + +
    + +
    + + + + + + + +
    +
    + +
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + +
    +
    + +
    +
    + + + +
    +
    + + + + + + + + + + + + + + + + + + +
    +
    + + + +
    +
    +
    +
    + + + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + + +
    +
    diff --git a/workspace/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/RequeteSimple/2007/12/50/refactorings.history b/workspace/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/RequeteSimple/2007/12/50/refactorings.history new file mode 100644 index 0000000..7e5cdb6 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/RequeteSimple/2007/12/50/refactorings.history @@ -0,0 +1,5 @@ + + + + + diff --git a/workspace/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/RequeteSimple/2007/12/50/refactorings.index b/workspace/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/RequeteSimple/2007/12/50/refactorings.index new file mode 100644 index 0000000..9446b05 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/RequeteSimple/2007/12/50/refactorings.index @@ -0,0 +1,2 @@ +1197641507668 Rename type 'Connexion' +1197641691130 Rename type 'Principale' diff --git a/workspace/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml b/workspace/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml new file mode 100644 index 0000000..74e29e5 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml @@ -0,0 +1,17 @@ + +
    +
    + + +
    +
    + + + + + +
    +
    + +
    +
    diff --git a/workspace/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties b/workspace/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties new file mode 100644 index 0000000..4eb0388 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties @@ -0,0 +1,2 @@ +#Cached timestamps +#Fri Dec 14 15:28:38 CET 2007 diff --git a/workspace/.metadata/.plugins/org.eclipse.team.ui/syncParticipants.xml b/workspace/.metadata/.plugins/org.eclipse.team.ui/syncParticipants.xml new file mode 100644 index 0000000..d1c380a --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.team.ui/syncParticipants.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml b/workspace/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml new file mode 100644 index 0000000..15ff281 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml @@ -0,0 +1,23 @@ + +
    +
    +
    +
    + + +
    +
    +
    +
    + + + + + +
    +
    + + + +
    +
    diff --git a/workspace/.metadata/.plugins/org.eclipse.ui.intro/dialog_settings.xml b/workspace/.metadata/.plugins/org.eclipse.ui.intro/dialog_settings.xml new file mode 100644 index 0000000..1ef2b05 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.ui.intro/dialog_settings.xml @@ -0,0 +1,3 @@ + +
    +
    diff --git a/workspace/.metadata/.plugins/org.eclipse.ui.workbench.texteditor/dialog_settings.xml b/workspace/.metadata/.plugins/org.eclipse.ui.workbench.texteditor/dialog_settings.xml new file mode 100644 index 0000000..04eb623 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.ui.workbench.texteditor/dialog_settings.xml @@ -0,0 +1,24 @@ + +
    +
    + + +
    +
    + + + + + + + + + + + + + + + +
    +
    diff --git a/workspace/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml b/workspace/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml new file mode 100644 index 0000000..db22b5f --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml @@ -0,0 +1,22 @@ + +
    +
    + +
    +
    + + +
    +
    +
    +
    + + + + + + + + +
    +
    diff --git a/workspace/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml b/workspace/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml new file mode 100644 index 0000000..0f2fc89 --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml @@ -0,0 +1,521 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml b/workspace/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml new file mode 100644 index 0000000..3c0aa0f --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/workspace/.metadata/.plugins/org.eclipse.ui/dialog_settings.xml b/workspace/.metadata/.plugins/org.eclipse.ui/dialog_settings.xml new file mode 100644 index 0000000..21693aa --- /dev/null +++ b/workspace/.metadata/.plugins/org.eclipse.ui/dialog_settings.xml @@ -0,0 +1,66 @@ + +
    +
    + + + + + + + + + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + + + + + + + + + +
    +
    +
    + + + + + + + +
    +
    diff --git a/workspace/.metadata/version.ini b/workspace/.metadata/version.ini new file mode 100644 index 0000000..c51ff74 --- /dev/null +++ b/workspace/.metadata/version.ini @@ -0,0 +1 @@ +org.eclipse.core.runtime=1 \ No newline at end of file diff --git a/workspace/Adherent/.classpath b/workspace/Adherent/.classpath new file mode 100644 index 0000000..6d488d7 --- /dev/null +++ b/workspace/Adherent/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/workspace/Adherent/.project b/workspace/Adherent/.project new file mode 100644 index 0000000..bb427cf --- /dev/null +++ b/workspace/Adherent/.project @@ -0,0 +1,17 @@ + + + Adherent + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/workspace/Adherent/PackAdh/Adherent.class b/workspace/Adherent/PackAdh/Adherent.class new file mode 100644 index 0000000..6d4d89d Binary files /dev/null and b/workspace/Adherent/PackAdh/Adherent.class differ diff --git a/workspace/Adherent/PackAdh/Adherent.java b/workspace/Adherent/PackAdh/Adherent.java new file mode 100644 index 0000000..e5e9495 --- /dev/null +++ b/workspace/Adherent/PackAdh/Adherent.java @@ -0,0 +1,132 @@ +package PackAdh; + +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.Date; + +/** + * Cette classe permet de grer des Adhrent. + */ +public class Adherent { + + private int numeroAdherent; + private String nom; + private String ville; + private int anneeNaissance; + static int c_montantCotisation = 45; + private int cotisationVersee; + + /** + * Donne le nom de l'adhrent courant. + */ + public String getNom() + { + return this.nom; + } + + /** + * Donne le numro de l'adhrent courant. + */ + public int numeroAdherent() + { + return this.numeroAdherent(); + } + + /** + * Donne l'ge de l'adhrent courant. + */ + public int getAge() + { + int annee; + DateFormat format = new SimpleDateFormat("yyyy"); + annee = Integer.parseInt(format.format(new Date())); + return annee - this.anneeNaissance; + } + + /** + * Donne la cotisation qu'a vers l'adhrent courant." + */ + public int getCotisationVersee() + { + return this.cotisationVersee; + } + + /** + * Informe par un boolan, du versement ou non du total de la cotisation par l'adhrent courant. + */ + public boolean aJour() + { + boolean resultat; + resultat = false; + if (cotisationVersee == c_montantCotisation) + { + resultat = true; + } + return resultat; + } + + /** + * Permet l'ajout d'une cotisation d'une valeur spcifique, verse par l'adhrent courant. + */ + public boolean cotiser(int versement) + { + cotisationVersee += versement; + return true; + } + + /** + * Constructeur de la classe Adhrent. + */ + public Adherent(int numAdh, String nomAdh, String villeAdh, int anneeNaissAdh) + { + numeroAdherent = numAdh; + nom = nomAdh; + ville = villeAdh; + anneeNaissance = anneeNaissAdh; + cotisationVersee = 0; + } + + /** + * Retourne l'tat de l'adhrent courant au niveau de son versement (s'il est jour ou pas). + */ + public String etat() + { + String resultat = "pas jour"; + + if(aJour() == true) + { + resultat = "a jour"; + } + + return resultat; + + } + + /** + * Retourne l'ensemble des attributs de l'adhrent courant. + */ + public String toString() + { + String resultat; + + resultat = "NumeroAdhrant : " + this.numeroAdherent; + resultat = resultat + "\nNom : " + this.nom; + resultat = resultat + "\nVille : " + this.ville; + resultat = resultat + "\nAnne de naissance : " + this.anneeNaissance; + resultat = resultat + "\nCotisation : " + this.cotisationVersee; + resultat = resultat + "\nEtat : " + this.etat(); + + return resultat; + } + + /** + * Mthode principale. + */ + public static void main(String[] args) + { + /*Adherent adh1 = new Adherent(1,"DUPONT","STRASBOURG",1985); + System.out.println(adh1.toString()); + adh1.cotiser(45); + System.out.println(adh1.toString());*/ + } +} diff --git a/workspace/Adherent/PackAdh/Gerant.class b/workspace/Adherent/PackAdh/Gerant.class new file mode 100644 index 0000000..4ecc193 Binary files /dev/null and b/workspace/Adherent/PackAdh/Gerant.class differ diff --git a/workspace/Adherent/PackAdh/Gerant.java b/workspace/Adherent/PackAdh/Gerant.java new file mode 100644 index 0000000..d9a2e3b --- /dev/null +++ b/workspace/Adherent/PackAdh/Gerant.java @@ -0,0 +1,22 @@ +package PackAdh; + +public class Gerant { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + Adherent adh1 = new Adherent(1,"DUPONT","Paris",1980); + Adherent adh2 = new Adherent(2,"MEYER","Strasbourg",1955); + Adherent adh3 = new Adherent(3,"LEGWENN","Brest",1960); + + adh1.cotiser(45); + adh2.cotiser(30); + System.out.println(adh2.toString()); + adh3.cotiser(40); + adh2.cotiser(15); + System.out.println(adh2.toString()); + } + +} diff --git a/workspace/Adherent/doc/PackAdh/Adherent.html b/workspace/Adherent/doc/PackAdh/Adherent.html new file mode 100644 index 0000000..29938f2 --- /dev/null +++ b/workspace/Adherent/doc/PackAdh/Adherent.html @@ -0,0 +1,432 @@ + + + + + + +Adherent + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +PackAdh +
    +Class Adherent

    +
    +java.lang.Object
    +  extended by PackAdh.Adherent
    +
    +
    +
    +
    public class Adherent
    extends java.lang.Object
    + + +

    +Cette classe permet de grer des Adhrent. +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Constructor Summary
    Adherent(int numAdh, + java.lang.String nomAdh, + java.lang.String villeAdh, + int anneeNaissAdh) + +
    +          Constructeur de la classe Adhrent.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + booleanaJour() + +
    +          Informe par un boolan, du versement ou non du total de la cotisation par l'adhrent courant.
    + booleancotiser(int versement) + +
    +          Permet l'ajout d'une cotisation d'une valeur spcifique, verse par l'adhrent courant.
    + java.lang.Stringetat() + +
    +          Retourne l'tat de l'adhrent courant au niveau de son versement (s'il est jour ou pas).
    + intgetAge() + +
    +          Donne l'ge de l'adhrent courant.
    + intgetCotisationVersee() + +
    +          Donne la cotisation qu'a vers l'adhrent courant."
    + java.lang.StringgetNom() + +
    +          Donne le nom de l'adhrent courant.
    +static voidmain(java.lang.String[] args) + +
    +          Mthode principale.
    + intnumeroAdherent() + +
    +          Donne le numro de l'adhrent courant.
    + java.lang.StringtoString() + +
    +          Retourne l'ensemble des attributs de l'adhrent courant.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Adherent

    +
    +public Adherent(int numAdh,
    +                java.lang.String nomAdh,
    +                java.lang.String villeAdh,
    +                int anneeNaissAdh)
    +
    +
    Constructeur de la classe Adhrent. +

    +

    + + + + + + + + +
    +Method Detail
    + +

    +getNom

    +
    +public java.lang.String getNom()
    +
    +
    Donne le nom de l'adhrent courant. +

    +

    +
    +
    +
    +
    + +

    +numeroAdherent

    +
    +public int numeroAdherent()
    +
    +
    Donne le numro de l'adhrent courant. +

    +

    +
    +
    +
    +
    + +

    +getAge

    +
    +public int getAge()
    +
    +
    Donne l'ge de l'adhrent courant. +

    +

    +
    +
    +
    +
    + +

    +getCotisationVersee

    +
    +public int getCotisationVersee()
    +
    +
    Donne la cotisation qu'a vers l'adhrent courant." +

    +

    +
    +
    +
    +
    + +

    +aJour

    +
    +public boolean aJour()
    +
    +
    Informe par un boolan, du versement ou non du total de la cotisation par l'adhrent courant. +

    +

    +
    +
    +
    +
    + +

    +cotiser

    +
    +public boolean cotiser(int versement)
    +
    +
    Permet l'ajout d'une cotisation d'une valeur spcifique, verse par l'adhrent courant. +

    +

    +
    +
    +
    +
    + +

    +etat

    +
    +public java.lang.String etat()
    +
    +
    Retourne l'tat de l'adhrent courant au niveau de son versement (s'il est jour ou pas). +

    +

    +
    +
    +
    +
    + +

    +toString

    +
    +public java.lang.String toString()
    +
    +
    Retourne l'ensemble des attributs de l'adhrent courant. +

    +

    +
    Overrides:
    toString in class java.lang.Object
    +
    +
    +
    +
    +
    +
    + +

    +main

    +
    +public static void main(java.lang.String[] args)
    +
    +
    Mthode principale. +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Adherent/doc/PackAdh/class-use/Adherent.html b/workspace/Adherent/doc/PackAdh/class-use/Adherent.html new file mode 100644 index 0000000..0c674f5 --- /dev/null +++ b/workspace/Adherent/doc/PackAdh/class-use/Adherent.html @@ -0,0 +1,138 @@ + + + + + + +Uses of Class PackAdh.Adherent + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    PackAdh.Adherent

    +
    +No usage of PackAdh.Adherent +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Adherent/doc/PackAdh/package-frame.html b/workspace/Adherent/doc/PackAdh/package-frame.html new file mode 100644 index 0000000..86a1b4a --- /dev/null +++ b/workspace/Adherent/doc/PackAdh/package-frame.html @@ -0,0 +1,32 @@ + + + + + + +PackAdh + + + + + + + + + + + +PackAdh + + + + +
    +Classes  + +
    +Adherent
    + + + + diff --git a/workspace/Adherent/doc/PackAdh/package-summary.html b/workspace/Adherent/doc/PackAdh/package-summary.html new file mode 100644 index 0000000..2072b1e --- /dev/null +++ b/workspace/Adherent/doc/PackAdh/package-summary.html @@ -0,0 +1,152 @@ + + + + + + +PackAdh + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package PackAdh +

    + + + + + + + + + +
    +Class Summary
    AdherentCette classe permet de grer des Adhrent.
    +  + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Adherent/doc/PackAdh/package-tree.html b/workspace/Adherent/doc/PackAdh/package-tree.html new file mode 100644 index 0000000..8834446 --- /dev/null +++ b/workspace/Adherent/doc/PackAdh/package-tree.html @@ -0,0 +1,144 @@ + + + + + + +PackAdh Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package PackAdh +

    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Adherent/doc/PackAdh/package-use.html b/workspace/Adherent/doc/PackAdh/package-use.html new file mode 100644 index 0000000..2148055 --- /dev/null +++ b/workspace/Adherent/doc/PackAdh/package-use.html @@ -0,0 +1,138 @@ + + + + + + +Uses of Package PackAdh + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    PackAdh

    +
    +No usage of PackAdh +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Adherent/doc/allclasses-frame.html b/workspace/Adherent/doc/allclasses-frame.html new file mode 100644 index 0000000..f071a8e --- /dev/null +++ b/workspace/Adherent/doc/allclasses-frame.html @@ -0,0 +1,30 @@ + + + + + + +All Classes + + + + + + + + + + +All Classes +
    + + + + + +
    Adherent +
    +
    + + + diff --git a/workspace/Adherent/doc/allclasses-noframe.html b/workspace/Adherent/doc/allclasses-noframe.html new file mode 100644 index 0000000..1a06a53 --- /dev/null +++ b/workspace/Adherent/doc/allclasses-noframe.html @@ -0,0 +1,30 @@ + + + + + + +All Classes + + + + + + + + + + +All Classes +
    + + + + + +
    Adherent +
    +
    + + + diff --git a/workspace/Adherent/doc/constant-values.html b/workspace/Adherent/doc/constant-values.html new file mode 100644 index 0000000..1fe9362 --- /dev/null +++ b/workspace/Adherent/doc/constant-values.html @@ -0,0 +1,140 @@ + + + + + + +Constant Field Values + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Constant Field Values

    +
    +
    +Contents
      +
    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Adherent/doc/deprecated-list.html b/workspace/Adherent/doc/deprecated-list.html new file mode 100644 index 0000000..0543377 --- /dev/null +++ b/workspace/Adherent/doc/deprecated-list.html @@ -0,0 +1,140 @@ + + + + + + +Deprecated List + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Deprecated API

    +
    +
    +Contents
      +
    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Adherent/doc/help-doc.html b/workspace/Adherent/doc/help-doc.html new file mode 100644 index 0000000..94c7c34 --- /dev/null +++ b/workspace/Adherent/doc/help-doc.html @@ -0,0 +1,211 @@ + + + + + + +API Help + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +How This API Document Is Organized

    +
    +This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

    +Package

    +
    + +

    +Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:

      +
    • Interfaces (italic)
    • Classes
    • Enums
    • Exceptions
    • Errors
    • Annotation Types
    +
    +

    +Class/Interface

    +
    + +

    +Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

      +
    • Class inheritance diagram
    • Direct Subclasses
    • All Known Subinterfaces
    • All Known Implementing Classes
    • Class/interface declaration
    • Class/interface description +

      +

    • Nested Class Summary
    • Field Summary
    • Constructor Summary
    • Method Summary +

      +

    • Field Detail
    • Constructor Detail
    • Method Detail
    +Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
    + +

    +Annotation Type

    +
    + +

    +Each annotation type has its own separate page with the following sections:

      +
    • Annotation Type declaration
    • Annotation Type description
    • Required Element Summary
    • Optional Element Summary
    • Element Detail
    +
    + +

    +Enum

    +
    + +

    +Each enum has its own separate page with the following sections:

      +
    • Enum declaration
    • Enum description
    • Enum Constant Summary
    • Enum Constant Detail
    +
    +

    +Use

    +
    +Each documented package, class and interface has its own Use page. This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its Use page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A. You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.
    +

    +Tree (Class Hierarchy)

    +
    +There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object.
      +
    • When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
    • When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.
    +
    +

    +Deprecated API

    +
    +The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.
    +

    +Index

    +
    +The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.
    +

    +Prev/Next

    +These links take you to the next or previous class, interface, package, or related page.

    +Frames/No Frames

    +These links show and hide the HTML frames. All pages are available with or without frames. +

    +

    +Serialized Form

    +Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description. +

    +

    +Constant Field Values

    +The Constant Field Values page lists the static final fields and their values. +

    + + +This help file applies to API documentation generated using the standard doclet. + +
    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Adherent/doc/index-files/index-1.html b/workspace/Adherent/doc/index-files/index-1.html new file mode 100644 index 0000000..9badb6a --- /dev/null +++ b/workspace/Adherent/doc/index-files/index-1.html @@ -0,0 +1,142 @@ + + + + + + +A-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    +

    +A

    +
    +
    Adherent - Class in PackAdh
    Cette classe permet de grer des Adhrent.
    Adherent(int, String, String, int) - +Constructor for class PackAdh.Adherent +
    Constructeur de la classe Adhrent. +
    aJour() - +Method in class PackAdh.Adherent +
    Informe par un boolan, du versement ou non du total de la cotisation par l'adhrent courant. +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    + + + diff --git a/workspace/Adherent/doc/index-files/index-2.html b/workspace/Adherent/doc/index-files/index-2.html new file mode 100644 index 0000000..2715471 --- /dev/null +++ b/workspace/Adherent/doc/index-files/index-2.html @@ -0,0 +1,139 @@ + + + + + + +C-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    +

    +C

    +
    +
    cotiser(int) - +Method in class PackAdh.Adherent +
    Permet l'ajout d'une cotisation d'une valeur spcifique, verse par l'adhrent courant. +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    + + + diff --git a/workspace/Adherent/doc/index-files/index-3.html b/workspace/Adherent/doc/index-files/index-3.html new file mode 100644 index 0000000..9fb1d26 --- /dev/null +++ b/workspace/Adherent/doc/index-files/index-3.html @@ -0,0 +1,139 @@ + + + + + + +E-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    +

    +E

    +
    +
    etat() - +Method in class PackAdh.Adherent +
    Retourne l'tat de l'adhrent courant au niveau de son versement (s'il est jour ou pas). +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    + + + diff --git a/workspace/Adherent/doc/index-files/index-4.html b/workspace/Adherent/doc/index-files/index-4.html new file mode 100644 index 0000000..9981c61 --- /dev/null +++ b/workspace/Adherent/doc/index-files/index-4.html @@ -0,0 +1,145 @@ + + + + + + +G-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    +

    +G

    +
    +
    getAge() - +Method in class PackAdh.Adherent +
    Donne l'ge de l'adhrent courant. +
    getCotisationVersee() - +Method in class PackAdh.Adherent +
    Donne la cotisation qu'a vers l'adhrent courant." +
    getNom() - +Method in class PackAdh.Adherent +
    Donne le nom de l'adhrent courant. +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    + + + diff --git a/workspace/Adherent/doc/index-files/index-5.html b/workspace/Adherent/doc/index-files/index-5.html new file mode 100644 index 0000000..606da5a --- /dev/null +++ b/workspace/Adherent/doc/index-files/index-5.html @@ -0,0 +1,139 @@ + + + + + + +M-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    +

    +M

    +
    +
    main(String[]) - +Static method in class PackAdh.Adherent +
    Mthode principale. +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    + + + diff --git a/workspace/Adherent/doc/index-files/index-6.html b/workspace/Adherent/doc/index-files/index-6.html new file mode 100644 index 0000000..f743e5d --- /dev/null +++ b/workspace/Adherent/doc/index-files/index-6.html @@ -0,0 +1,139 @@ + + + + + + +N-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    +

    +N

    +
    +
    numeroAdherent() - +Method in class PackAdh.Adherent +
    Donne le numro de l'adhrent courant. +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    + + + diff --git a/workspace/Adherent/doc/index-files/index-7.html b/workspace/Adherent/doc/index-files/index-7.html new file mode 100644 index 0000000..a71df06 --- /dev/null +++ b/workspace/Adherent/doc/index-files/index-7.html @@ -0,0 +1,136 @@ + + + + + + +P-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    +

    +P

    +
    +
    PackAdh - package PackAdh
     
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    + + + diff --git a/workspace/Adherent/doc/index-files/index-8.html b/workspace/Adherent/doc/index-files/index-8.html new file mode 100644 index 0000000..67f6fa0 --- /dev/null +++ b/workspace/Adherent/doc/index-files/index-8.html @@ -0,0 +1,139 @@ + + + + + + +T-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    +

    +T

    +
    +
    toString() - +Method in class PackAdh.Adherent +
    Retourne l'ensemble des attributs de l'adhrent courant. +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C E G M N P T
    + + + diff --git a/workspace/Adherent/doc/index.html b/workspace/Adherent/doc/index.html new file mode 100644 index 0000000..b046dff --- /dev/null +++ b/workspace/Adherent/doc/index.html @@ -0,0 +1,34 @@ + + + + + + +Generated Documentation (Untitled) + + + + + + + + +<H2> +Frame Alert</H2> + +<P> +This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. +<BR> +Link to<A HREF="PackAdh/package-summary.html">Non-frame version.</A> + + + diff --git a/workspace/Adherent/doc/overview-tree.html b/workspace/Adherent/doc/overview-tree.html new file mode 100644 index 0000000..9933cab --- /dev/null +++ b/workspace/Adherent/doc/overview-tree.html @@ -0,0 +1,146 @@ + + + + + + +Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For All Packages

    +
    +
    +
    Package Hierarchies:
    PackAdh
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Adherent/doc/package-list b/workspace/Adherent/doc/package-list new file mode 100644 index 0000000..29c6fb6 --- /dev/null +++ b/workspace/Adherent/doc/package-list @@ -0,0 +1 @@ +PackAdh diff --git a/workspace/Adherent/doc/resources/inherit.gif b/workspace/Adherent/doc/resources/inherit.gif new file mode 100644 index 0000000..c814867 Binary files /dev/null and b/workspace/Adherent/doc/resources/inherit.gif differ diff --git a/workspace/Adherent/doc/stylesheet.css b/workspace/Adherent/doc/stylesheet.css new file mode 100644 index 0000000..14c3737 --- /dev/null +++ b/workspace/Adherent/doc/stylesheet.css @@ -0,0 +1,29 @@ +/* Javadoc style sheet */ + +/* Define colors, fonts and other style attributes here to override the defaults */ + +/* Page background color */ +body { background-color: #FFFFFF } + +/* Headings */ +h1 { font-size: 145% } + +/* Table colors */ +.TableHeadingColor { background: #CCCCFF } /* Dark mauve */ +.TableSubHeadingColor { background: #EEEEFF } /* Light mauve */ +.TableRowColor { background: #FFFFFF } /* White */ + +/* Font used in left-hand frame lists */ +.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif } +.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif } +.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif } + +/* Navigation bar fonts and colors */ +.NavBarCell1 { background-color:#EEEEFF;} /* Light mauve */ +.NavBarCell1Rev { background-color:#00008B;} /* Dark Blue */ +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;} +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;} + +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} + diff --git a/workspace/Compteur/.classpath b/workspace/Compteur/.classpath new file mode 100644 index 0000000..233be1d --- /dev/null +++ b/workspace/Compteur/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/workspace/Compteur/.project b/workspace/Compteur/.project new file mode 100644 index 0000000..fd7556b --- /dev/null +++ b/workspace/Compteur/.project @@ -0,0 +1,17 @@ + + + Compteur + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/workspace/Compteur/fr/blankoworld/compteur/Compteur.class b/workspace/Compteur/fr/blankoworld/compteur/Compteur.class new file mode 100644 index 0000000..da25be3 Binary files /dev/null and b/workspace/Compteur/fr/blankoworld/compteur/Compteur.class differ diff --git a/workspace/Compteur/fr/blankoworld/compteur/Compteur.java b/workspace/Compteur/fr/blankoworld/compteur/Compteur.java new file mode 100644 index 0000000..e5dc9b2 --- /dev/null +++ b/workspace/Compteur/fr/blankoworld/compteur/Compteur.java @@ -0,0 +1,60 @@ +/** + * + */ +package fr.blankoworld.compteur; + +/** + * @author 3dossmanno + * + */ +public class Compteur extends Thread{ + + private String nom; + private int max; + private int ordreArrivee; + /** + * @param args + */ + + public static void main(String[] args) { + // TODO Auto-generated method stub + + Compteur cpt; + + if(args.length%2 == 0) { + + for(int i = 0; i < args.length; i+=2) + { + cpt = new Compteur(args[i], Integer.parseInt(args[i+1])); + cpt.start(); + + } + } + else + { + System.out.println("Syntaxe: [Nom MAX]+"); + } + + } + + public Compteur(String name, int mx) + { + this.nom = name; + this.max = mx; + this.ordreArrivee = 0; + } + + public void run() + { + for(int j = 1; j <= this.max; j++){ + this.ordreArrivee ++; + try { + sleep( (int)(Math.random()*5000) ); + } catch ( InterruptedException ex ) { + } + System.out.println(this.nom + ": " + this.ordreArrivee); + } + + System.out.println(this.nom + " a fini de compter jusqu' " + this.max); + } +} \ No newline at end of file diff --git a/workspace/G5a_exercices/.classpath b/workspace/G5a_exercices/.classpath new file mode 100644 index 0000000..6d488d7 --- /dev/null +++ b/workspace/G5a_exercices/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/workspace/G5a_exercices/.project b/workspace/G5a_exercices/.project new file mode 100644 index 0000000..ed1e4f1 --- /dev/null +++ b/workspace/G5a_exercices/.project @@ -0,0 +1,17 @@ + + + G5a_exercices + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/Bonjour.class b/workspace/G5a_exercices/fr/blankoworld/g5a/Bonjour.class new file mode 100644 index 0000000..fa39453 Binary files /dev/null and b/workspace/G5a_exercices/fr/blankoworld/g5a/Bonjour.class differ diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/Bonjour.java b/workspace/G5a_exercices/fr/blankoworld/g5a/Bonjour.java new file mode 100644 index 0000000..d640d06 --- /dev/null +++ b/workspace/G5a_exercices/fr/blankoworld/g5a/Bonjour.java @@ -0,0 +1,13 @@ +package fr.blankoworld.g5a; + +class Bonjour { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + System.out.println("Bonjour Dave ..."); + } + +} diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/BonjourToi.class b/workspace/G5a_exercices/fr/blankoworld/g5a/BonjourToi.class new file mode 100644 index 0000000..40ff298 Binary files /dev/null and b/workspace/G5a_exercices/fr/blankoworld/g5a/BonjourToi.class differ diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/BonjourToi.java b/workspace/G5a_exercices/fr/blankoworld/g5a/BonjourToi.java new file mode 100644 index 0000000..b86813b --- /dev/null +++ b/workspace/G5a_exercices/fr/blankoworld/g5a/BonjourToi.java @@ -0,0 +1,30 @@ +package fr.blankoworld.g5a; + +import java.util.*; +import java.text.*; + +import iutsud.Console; + +public class BonjourToi { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + String x; + int y; + int annee; + + System.out.println("Saisissez votre prnom : "); + x=Console.readLine(); + System.out.println("Saisissez votre date de naissance : "); + y=Console.readInt(); + + DateFormat format = new SimpleDateFormat("yyyy"); + annee = Integer.parseInt(format.format(new Date())); + + System.out.println("Bonjour " + x + ", vous avez " + (annee - y) + " ans."); + } + +} diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/ConvertEntier.class b/workspace/G5a_exercices/fr/blankoworld/g5a/ConvertEntier.class new file mode 100644 index 0000000..6c072a6 Binary files /dev/null and b/workspace/G5a_exercices/fr/blankoworld/g5a/ConvertEntier.class differ diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/ConvertEntier.java b/workspace/G5a_exercices/fr/blankoworld/g5a/ConvertEntier.java new file mode 100644 index 0000000..f08f3ec --- /dev/null +++ b/workspace/G5a_exercices/fr/blankoworld/g5a/ConvertEntier.java @@ -0,0 +1,17 @@ +package fr.blankoworld.g5a; + +public class ConvertEntier { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + int parametre = Integer.parseInt(args[0]); + + System.out.println("en binaire: " + parametre + " => " + Integer.toBinaryString(parametre)); + System.out.println("en octale : " + parametre + " => " + Integer.toOctalString(parametre)); + System.out.println("en hexadcimale : " + parametre + " => " + Integer.toHexString(parametre)); + } + +} diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/Dichotomique.class b/workspace/G5a_exercices/fr/blankoworld/g5a/Dichotomique.class new file mode 100644 index 0000000..a548852 Binary files /dev/null and b/workspace/G5a_exercices/fr/blankoworld/g5a/Dichotomique.class differ diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/Dichotomique.java b/workspace/G5a_exercices/fr/blankoworld/g5a/Dichotomique.java new file mode 100644 index 0000000..80160b4 --- /dev/null +++ b/workspace/G5a_exercices/fr/blankoworld/g5a/Dichotomique.java @@ -0,0 +1,32 @@ +package fr.blankoworld.g5a; + +public class Dichotomique { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + int longueur = args.length; + int i = 1; + int indice = 0; + + while(i != longueur) { + if(Integer.parseInt(args[0])==Integer.parseInt(args[i])) + { + indice = i; + } + i += 1; + } + + if(indice == 0) + { + System.out.print("L'entier " + args[0] + " ne se trouve pas dans le tableau."); + } + else + { + System.out.print("L'entier " + args[0] + " se trouve l'indice " + indice + " du tableau."); + } + } + +} diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/InverseArgs.class b/workspace/G5a_exercices/fr/blankoworld/g5a/InverseArgs.class new file mode 100644 index 0000000..6859176 Binary files /dev/null and b/workspace/G5a_exercices/fr/blankoworld/g5a/InverseArgs.class differ diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/InverseArgs.java b/workspace/G5a_exercices/fr/blankoworld/g5a/InverseArgs.java new file mode 100644 index 0000000..8c663af --- /dev/null +++ b/workspace/G5a_exercices/fr/blankoworld/g5a/InverseArgs.java @@ -0,0 +1,27 @@ +package fr.blankoworld.g5a; + +public class InverseArgs { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + int longueur; + longueur = args.length - 1; + + for ( int i=longueur; i >= 0 ; i-- ) + { + System.out.print(args[i]); + if (i == 0) + { + System.out.println("."); + } + else + { + System.out.print(" "); + } + } + } + +} diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/Premier.class b/workspace/G5a_exercices/fr/blankoworld/g5a/Premier.class new file mode 100644 index 0000000..7c0555c Binary files /dev/null and b/workspace/G5a_exercices/fr/blankoworld/g5a/Premier.class differ diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/Premier.java b/workspace/G5a_exercices/fr/blankoworld/g5a/Premier.java new file mode 100644 index 0000000..249937e --- /dev/null +++ b/workspace/G5a_exercices/fr/blankoworld/g5a/Premier.java @@ -0,0 +1,14 @@ +package fr.blankoworld.g5a; + +public class Premier { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + // Le petit thorme de Fermat signale que si P est premier alors pour tout nombre A, (A^(P-1)-1) est divisible par P. + + } + +} diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/Puissance.class b/workspace/G5a_exercices/fr/blankoworld/g5a/Puissance.class new file mode 100644 index 0000000..0a91a89 Binary files /dev/null and b/workspace/G5a_exercices/fr/blankoworld/g5a/Puissance.class differ diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/Puissance.java b/workspace/G5a_exercices/fr/blankoworld/g5a/Puissance.java new file mode 100644 index 0000000..61cfce3 --- /dev/null +++ b/workspace/G5a_exercices/fr/blankoworld/g5a/Puissance.java @@ -0,0 +1,40 @@ +package fr.blankoworld.g5a; + +import iutsud.Console; + +public class Puissance { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + int x; + int y; + int resultat; + + x = Integer.parseInt(args[0]); + y = Integer.parseInt(args[1]); + + if(y==0) + { + resultat = 1; + } + else if (y==1) + { + resultat = x; + } + else + { + int i = 0; + resultat = x; + for(i = 1; i < y; i++) + { + resultat = resultat * y; + } + } + + System.out.println(resultat); + } + +} diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/SommeEntiers.class b/workspace/G5a_exercices/fr/blankoworld/g5a/SommeEntiers.class new file mode 100644 index 0000000..d1930a6 Binary files /dev/null and b/workspace/G5a_exercices/fr/blankoworld/g5a/SommeEntiers.class differ diff --git a/workspace/G5a_exercices/fr/blankoworld/g5a/SommeEntiers.java b/workspace/G5a_exercices/fr/blankoworld/g5a/SommeEntiers.java new file mode 100644 index 0000000..e97e0f9 --- /dev/null +++ b/workspace/G5a_exercices/fr/blankoworld/g5a/SommeEntiers.java @@ -0,0 +1,29 @@ +package fr.blankoworld.g5a; + +public class SommeEntiers { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + int longueur = args.length; + int resultat; + + if (longueur == 0) { + System.out.println("Aucun paramtre n'a t entr."); + } + else if(longueur == 1) { + System.out.println("Vous n'avez pass qu'un argument : " + args[0]); + } + else { + resultat = 0; + for (int i = 0; i < args.length; i++){ + resultat += Integer.parseInt(args[i]); + } + + System.out.println(resultat); + } + } + +} diff --git a/workspace/Palindrome/.classpath b/workspace/Palindrome/.classpath new file mode 100644 index 0000000..6d488d7 --- /dev/null +++ b/workspace/Palindrome/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/workspace/Palindrome/.project b/workspace/Palindrome/.project new file mode 100644 index 0000000..7c58318 --- /dev/null +++ b/workspace/Palindrome/.project @@ -0,0 +1,17 @@ + + + Palindrome + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/workspace/Palindrome/iutsud/Assertion$InvariantException.class b/workspace/Palindrome/iutsud/Assertion$InvariantException.class new file mode 100644 index 0000000..3e57b01 Binary files /dev/null and b/workspace/Palindrome/iutsud/Assertion$InvariantException.class differ diff --git a/workspace/Palindrome/iutsud/Assertion$PostConditionException.class b/workspace/Palindrome/iutsud/Assertion$PostConditionException.class new file mode 100644 index 0000000..a4dc22c Binary files /dev/null and b/workspace/Palindrome/iutsud/Assertion$PostConditionException.class differ diff --git a/workspace/Palindrome/iutsud/Assertion$PreConditionException.class b/workspace/Palindrome/iutsud/Assertion$PreConditionException.class new file mode 100644 index 0000000..52d6aa6 Binary files /dev/null and b/workspace/Palindrome/iutsud/Assertion$PreConditionException.class differ diff --git a/workspace/Palindrome/iutsud/Assertion.class b/workspace/Palindrome/iutsud/Assertion.class new file mode 100644 index 0000000..ce6e63c Binary files /dev/null and b/workspace/Palindrome/iutsud/Assertion.class differ diff --git a/workspace/Palindrome/iutsud/Assertion.java b/workspace/Palindrome/iutsud/Assertion.java new file mode 100644 index 0000000..bfe039d --- /dev/null +++ b/workspace/Palindrome/iutsud/Assertion.java @@ -0,0 +1,219 @@ +/* + * Copyright (C) 1997 Roger Whitney + * + * This file is part of the San Diego State University Java Library. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + + +package iutsud ; + + +/** + * Cette classe imite la macro ASSERT de C/C++. + * Elle permet de s'assurer qu'une condition est vrifie + * avant de poursuivre l'excution.

    + * Elle a trois mthodes + * statiques : pre, post et invariant + * Ces mthodes sont identiques. Chaque mthode arrte l'excution du + * programme en levant une exception si son argument est faux.

    + * Un exemple d'utilisation d'assertion est : + *

    + *		Assertion.pre( (mois == 1 ) && ( jour <= 31 ));
    + * 
    + * Ceci vrifie que la condition est vrai ce stade de l'excution. + * Si elle n'est pas vrifie, une exception de type + * Assertion.PreConditionException, + * Assertion.PostConditionException + * ou Assertion.InvariantException + * est leve. + * Ces exceptions drivent de RuntimeException + * et arrtent l'excution du programme en affichant + * l'tat de la pile d'excution.

    + * Cette classe provient de la classe sdsu.io.Assert de l'universit + * de San Diego (http://www.eli.sdsu.edu/java-SDSU). + *

    Les modifications sont mineures : + *

  • dfinition et utilisation d'exceptions internes la classe + *
  • suppression de la mthode condition + *
  • mthode classInvariant renomme invariant + *
  • classe Assert renomme Assertion + */ + /* + *

    This class is modeled after the ASSERT macro in C/C++. The class + * has three static methods. + * The methods are identical. Each method will throw an exception if + * is argument is false. A sample use of the assert is: + *

    + *		Assert.pre( (X > 5 ) && ( Z <= 10 ));
    + * 
    + * This asserts that the condition should be true at this point. + * If it is not an exception will be thrown. So the program can + * assume that the condition is true after the above assert.

    + * In C/C++ ASSERT is defined as a macro. Thus the macro can be + * turned off with a compile switch. This allows the code to contain + * ASSERTS with out any runtime cost. There is no way in Java to + * completely eliminate the cost of the Assert calls. Hopefully + * future compilers will be smart enough to use tricks with + * classpaths and two versions of this class to "turn off" the + * Assert calls in productin code without modifing the program + * source.

    + * See Writing Solid Code by Steve Maguire, pp 13-44 + * or Object-Oriented Software Construction by + * Bertrand Meyer, pp 111 - 163 for the use and importance + * of Assert. + * + * @see sdsu.test.AssertException + * @version 1.0 30 December 1997 + * @author Roger Whitney + * (whitney@cs.sdsu.edu) + */ + +public abstract class Assertion + { + + private Assertion() + { + super() ; + } + +// /* main de test + + private static void main(String args[]) { + + while (true) { + + System.out.print( "Print a Boolean "); + boolean b = Console.readBoolean() ; + pre(b) ; + post(b) ; + invariant(b) ; + } + } +// */ + + /** + * Exception leve lorsqu'une prcondition n'est pas vrifie + */ + + public static class PreConditionException extends RuntimeException + { + public PreConditionException(String message) + { + super(message) ; + } + } // end class PreConditionException + + /** + * Exception leve lorsqu'une postcondition n'est pas vrifie + */ + + public static class PostConditionException extends RuntimeException + { + public PostConditionException(String message) + { + super(message) ; + } + } // end class PostConditionException + + /** + * Exception leve lorsqu'un invariant n'est pas vrifie + */ + + public static class InvariantException extends RuntimeException + { + public InvariantException(String message) + { + super(message) ; + } + } // end class InvariantException + + /** + * Arrte l'excution du programme si la condition n'est pas vrifie + * en levant l'exception PreConditionException + * @param cond la condition vrifier + */ + + public static void pre( boolean cond ) + { + if ( !cond ) + throw new PreConditionException( "Prcondition non vrifie" ); + } + /** + * Arrte l'excution du programme si la condition n'est pas vrifie + * en levant l'exception PreConditionException + * avec le message pass en paramtre + * @param cond la condition vrifier + * @param message message afficher + */ + + public static void pre( boolean cond , String message ) + { + if ( !cond ) + throw new PreConditionException( message ); + } + + /** + * Arrte l'excution du programme si la condition n'est pas vrifie + * en levant l'exception PostConditionException + * @param cond la condition vrifier + */ + + public static void post( boolean cond ) + { + if ( !cond ) + throw new PostConditionException( "Postcondition non vrifie" ); + } + + /** + * Arrte l'excution du programme si la condition n'est pas vrifie + * en levant l'exception PostConditionException + * avec le message pass en paramtre + * @param cond la condition vrifier + * @param message message afficher + */ + + public static void post( boolean cond , String message) + { + if ( !cond ) + throw new PostConditionException( message ); + } + + /** + * Arrte l'excution du programme si la condition n'est pas vrifie + * en levant l'exception InvariantException + * @param cond la condition vrifier + */ + + public static void invariant( boolean cond ) + { + if ( !cond ) + throw new InvariantException( "Invariant non vrifi" ); + } + /** + * Arrte l'excution du programme si la condition n'est pas vrifie + * en levant l'exception InvariantException + * avec le message pass en paramtre + * @param cond la condition vrifier + * @param message message afficher + */ + + public static void invariant( boolean cond , String message ) + { + if ( !cond ) + throw new InvariantException( message ); + } + + } diff --git a/workspace/Palindrome/iutsud/Console$ConvertionException.class b/workspace/Palindrome/iutsud/Console$ConvertionException.class new file mode 100644 index 0000000..8f7965a Binary files /dev/null and b/workspace/Palindrome/iutsud/Console$ConvertionException.class differ diff --git a/workspace/Palindrome/iutsud/Console$ReadException.class b/workspace/Palindrome/iutsud/Console$ReadException.class new file mode 100644 index 0000000..4997b94 Binary files /dev/null and b/workspace/Palindrome/iutsud/Console$ReadException.class differ diff --git a/workspace/Palindrome/iutsud/Console.class b/workspace/Palindrome/iutsud/Console.class new file mode 100644 index 0000000..29f2b87 Binary files /dev/null and b/workspace/Palindrome/iutsud/Console.class differ diff --git a/workspace/Palindrome/iutsud/Console.java b/workspace/Palindrome/iutsud/Console.java new file mode 100644 index 0000000..19441b7 --- /dev/null +++ b/workspace/Palindrome/iutsud/Console.java @@ -0,0 +1,649 @@ +package iutsud ; + +import java.io.BufferedReader ; +import java.io.InputStreamReader ; + +/** + * Cette classe fournit des mthodes simples pour lire les types + * de base sur l'entre standard (au clavier).

    + * La lecture est faite par des instructions du type : + *

    		int 	i = Console.readInt() ; 
    + *		double 	d = Console.readDouble() ; 
    + *		char 	c = Console.readChar() ;
    + *			... 
    + * + *
  • Le principe gnral est de lire ligne par ligne et de ne traiter + * qu'une seule donne par ligne. + *
  • En cas d'erreur le programme est arrt en levant une exception ; + * il affiche alors un message d'erreur ainsi que le contenu de la pile d'excution. + *
  • L'introduction d'une ligne vide provoque une erreur sauf pour readChar() + * qui renvoie le caractre de fin de ligne '\n', et sauf pour readLine() + * qui renvoie la chane vide. + *
  • La rencontre de la fin de fichier (Ctrl-D au clavier) est gnralement + * considre comme une erreur sauf pour readLine() qui renvoie null. + *

    + * Le point de dpart a t la classe sdsu.io.Console de l'universit + * de San Diego (http://www.eli.sdsu.edu/java-SDSU). + * Cette classe a t simplifie pour rpondre nos besoins particuliers pour + * l'enseignement de l'introduction l'algorithmique. + * Le code a t entirement remani pour utiliser les fonctions de + * conversion du langage Java. + * Des amliorations pourraient certainement y tre apportes en utilisant + * la classe Number notamment pour les problmes d'internationalisation, + * lis l'criture des nombres en virgule flottante. + *

    + * + * Utilisation :

    + *

  • Le fichier Console.class se trouve sous le rpertoire + * /usr/local/lib/java/iutsud. + *
  • La variable CLASSPATH doit contenir + * /usr/local/lib/java. Sur sterne elle est initialise + * automatiquement au dmarrage de la session avec cette valeur. + *
  • Les classes utilisatrices doivent importer la classe + * Console depuis le package iutsud par l'instruction + * import iutsud.Console + * + * + *

    Le document de prsentation peut tre gnr depuis le source par la commande :
    + * javadoc -version -author iutsud + * @author Raymond Schneider + * (Raymond.Schneider@iutsud.u-strasbg.fr) + * @version version 0.1 17/07/98 + */ + +public class Console { + + private static BufferedReader cin = new BufferedReader( + new InputStreamReader( + System.in )) ; + + + private static void main(String args[]) { + + while (true) { + + System.out.print( "Print a Base "); + int base = Console.readInt() ; + System.out.print( "Print a Long in base " + base + " : ") ; + long lb = Console.readLong(base) ; + System.out.println( "You typed: " + lb ); + + System.out.print( "Print a Byte "); + byte k = Console.readByte() ; + System.out.println( "You typed: " + k ); + + System.out.print( "Print a Short "); + int j = Console.readShort() ; + System.out.println( "You typed: " + j ); + + System.out.print( "Print a Int "); + int i = Console.readInt() ; + System.out.println( "You typed: " + i ); + + System.out.print( "Print a Long "); + long l = Console.readLong() ; + System.out.println( "You typed: " + l ); + + System.out.print( "Print a Float "); + float f = Console.readFloat() ; + System.out.println( "You typed: " + f ); + + System.out.print( "Print a Double "); + double d = Console.readDouble() ; + System.out.println( "You typed: " + d ); + + System.out.print( "Print a Boolean "); + boolean b = Console.readBoolean() ; + System.out.println( "You typed: " + b ); + + System.out.print( "Print a Char "); + char c = Console.readChar() ; + System.out.println( "You typed: " + c ); + } + } + + private Console() + { + super() ; + } + + /** + * Exception leve lors d'une erreur de lecture + */ + + public static class ReadException extends RuntimeException + { + public ReadException(String message) + { + super(message) ; + } + } // end class ReadException + + /** + * Exception leve lors d'une erreur de conversion + */ + + public static class ConvertionException extends RuntimeException + { + public ConvertionException(String message) + { + super(message) ; + } + } // end class ConvertionException + + + /** + * Quitte le programme en levant l'exception e + * Le systme affichera le message d'erreur associ + * ainsi que la pile d'ecxcution + * @param e l'exception lever + */ + + /* + * Exits programs after throwing an exception + * @param e exception to be thrown + */ + + static final void exitProgram( RuntimeException e ) + { + throw e ; + } + + /** + * Quitte le programme suite une erreur de conversion ; + * affiche un message d'erreur en levant l'exception + * Console.ConvertionException + * @param s la chane convertir + * @param t le type vers lequel il fallait convertir + */ + + /* + * Exits programs after displaying a conversion error message + * and after dumping the Thread's stack + * @param s String that could not be converted + * @param t Conversion Destination Type + */ + + private static final void conversionError( String s , String t ) + { + exitProgram( new ConvertionException( + conversionErrorMessage( s , t ) ) ) ; + } + + /** + * Quitte le programme suite une erreur de lecture ; + * affiche un message d'erreur en levant l'exception + * Console.ReadException + * @param s la raison de l'erreur afficher + * @param t le type lu + */ + + /* + * Exits programs after displaying a conversion error message + * and after dumping the Thread's stack + * @param s the error cause + * @param t Read Destination Type + */ + + private static final void readError( String s , String t ) + { + exitProgram( new ReadException ( s + " lors de la lecture d'un " + t) ); + } + + /** + * Compose le message d'erreur afficher suite une erreur de conversion ; + * @param s la chane convertir + * @param t le type vers lequel il fallait convertir + */ + + /* + * Bulids a conversion error message + * @param s String that could not be converted + * @param t Conversion Destination Type + */ + + private static String conversionErrorMessage( String s, String t ) + { + return '"' + s + '"' + " ne peut tre convertie en " + t ; + } + + // Input methods ---------------------------------------------------- + + /** + * Lit une valeur boolenne dans une ligne. + * Lit une ligne et dtermine si elle reprsente true ou false. + * Les valeurs possibles sont : true and false, + * vrai and faux. + * La comparaison est insensible la casse (majuscule, minuscule). + * + * Le programme stoppe en cas d'erreur de lecture ou en fin de fichier + * @return la valeur boolene correspondante. + */ + + /* + * Reads an ASCII boolean value. + * It reads a word and determines if it represents true or + * false. Possible values are: true and false, + * vrai and faux. + * The comparison is case insensitive. + * Program exits on read errors or EOF + * @return the boolean. + */ + +public static boolean readBoolean() +{ +boolean b = false ; +String s ; + + s= readLine("boolean") ; + + if (s.equalsIgnoreCase(String.valueOf(false)) + || s.equalsIgnoreCase("faux") ) + b= false; + + else if (s.equalsIgnoreCase(String.valueOf(true)) + || s.equalsIgnoreCase("vrai") ) + b= true; + + else + conversionError( s , "boolean" ) ; + + return b; + +} // end readBoolean + + /** + * Lit un caractre dans une ligne. + * La ligne lue doit contenir au maximum un caractre. + * Si la ligne est vide le caractre '\n' est renvoy. + * + * Le programme stoppe en cas d'erreur de lecture ou en fin de fichier + * ou encore si la ligne contenait plusieurs caractres. + * @return le caractre lu ou '\n' si la ligne tait vide. + */ + + /* + * Reads one ASCII character and convert it into the internal char + * format. If the line is empty '\n' is returned. + * If more than one character are available in the line, only the first one is returned ; all other are + * ignored. + * Program exits on read errors or EOF or if more characters are available + * @return the character or '\n' if line was empty. + */ + +public static char readChar() +{ +String s ; +char c = '\n' ; + + s= readNewLine("char"); + + if (s.length() == 1) + c= s.charAt(0); + else if ( s.length() != 0 ) + exitProgram( new ReadException( + "La ligne lue contenait plus d'un caractre : " + + '"' + s + '"' + '\n' ) + ); + + return c ; + +} + + /** + * Lit un nombre en virgule flottante et en double prcision dans une ligne. + * Ces nombres doivent tre conforme l'criture standard des constantes + * double en Java et permettre la conversion par : + * Double(String).doubleValue() + * Le nombre peut tre prcd ou suivi d'un nombre quelconque d'espaces + * (SPACE ou TAB). La ligne lue ne doit comporter qu'un seul nombre. + * + * Le programme stoppe en cas d'erreur ou en fin de fichier + * @return la valeur double correspondante. + */ + + /* + * Reads an ASCII decimal floating point number. + * A floating point number should obey Java String conversion : + * Double(String).doubleValue() + * Program exits on read errors or EOF + * @return the double. + */ + +public static double readDouble() +{ +String s ; +double d = 0.0 ; + + s= readLine("double"); + + try + { + d = new Double(s).doubleValue() ; + } + catch (NumberFormatException e) + { + conversionError( s, "double"); + } + + return d ; + +} + + /** + * Lit un nombre en virgule flottante et en simple prcision dans une ligne. + * Ces nombres doivent tre conforme l'criture standard des constantes + * float en Java et permettre la conversion par : + * Float(String).floatValue() + * Le nombre peut tre prcd ou suivi d'un nombre quelconque d'espaces + * (SPACE ou TAB). La ligne lue ne doit comporter qu'un seul nombre. + * + * Le programme stoppe en cas d'erreur ou en fin de fichier + * @return la valeur float correspondante. + */ + + /* + * Reads an ASCII decimal floating point number. + * A floating point number should obey Java String conversion : + * Float(String).floatValue() + * Program exits on read errors or EOF + * @return the double. + */ + +public static float readFloat() +{ +String s ; +float f = 0.0F ; + + s= readLine("float"); + + try + { + f = new Float(s).floatValue() ; + } + catch (NumberFormatException e) + { + conversionError( s, "float" ); + } + + return f ; + +} + + /** + * Lit un nombre entier dans une ligne. + * Ces nombres doivent tre conforme l'criture standard des constantes + * int en Java et permettre la conversion par : + * Integer.parseInt(String). + * Le nombre peut tre prcd ou suivi d'un nombre quelconque d'espaces + * (SPACE ou TAB). La ligne lue ne doit comporter qu'un seul nombre. + * + * Le programme stoppe en cas d'erreur ou en fin de fichier + * @return la valeur int correspondante. + */ + + /* + * Reads an ASCII decimal integer conforming to Integer.parseInt(String). + * Integers can be preceded by optional whitespace (SPACE or TAB). + * Program exits on read errors or EOF + * @return the integer. + */ + +public static int readInt() +{ +int i = 0 ; +String s ; + + s= readLine("int"); + + try + { + i = Integer.parseInt(s) ; + } + catch (NumberFormatException e) + { + conversionError( s, "int" ); + } + + return i ; + +} + + /** + * Lit un nombre entier long crit en base b dans une ligne. + * Ces nombres doivent tre conforme l'criture standard des constantes + * long en Java et permettre la conversion par : + * Long.parseLong(String,b) + * Le nombre peut tre prcd ou suivi d'un nombre quelconque d'espaces + * (SPACE ou TAB). La ligne lue ne doit comporter qu'un seul nombre. + * + * Le programme stoppe en cas d'erreur ou en fin de fichier + * @param b la base dans laquelle l'entier lu est exprim + * @return la valeur long correspondante. + */ + + /* + * Reads an ASCII long expressed in base b and conforming + * to Long.parseLong(String,b) + * Longs can be preceded by optional whitespace (SPACE or TAB). + * Program exits on read errors or EOF + * @param b the numbering base used to make the conversion + * @return the long. + */ + +public static long readLong(int b) +{ +long l = 0L; +String s ; +String t = "long" ; + + if ( b != 10) + t= t + " in base " + b ; + + s= readLine(t); + + + try + { + l = Long.parseLong(s, b) ; + } + catch (NumberFormatException e) + { + conversionError( s, t) ; + } + + return l ; + +} + /** + * Lit un nombre entier long dans une ligne. + * Ces nombres doivent tre conforme l'criture standard des constantes + * long en Java et permettre la conversion par : + * Long.parseLong(String) + * Le nombre peut tre prcd ou suivi d'un nombre quelconque d'espaces + * (SPACE ou TAB). La ligne lue ne doit comporter qu'un seul nombre. + * + * Le programme stoppe en cas d'erreur ou en fin de fichier + * @return la valeur long correspondante. + */ + + /* + * Reads an ASCII decimal long conforming to Long.parseLong(String) + * Longs can be preceded by optional whitespace (SPACE or TAB). + * Program exits on read errors or EOF + * @return the long. + */ + +public static long readLong() +{ + return readLong(10) ; +} + + /** + * Lit un nombre entier court dans une ligne. + * Ces nombres doivent tre conforme l'criture standard des constantes + * short en Java et permettre la conversion par : + * Short.parseShort(String) + * Le nombre peut tre precd ou suivi d'un nombre quelconque d'espaces + * (SPACE ou TAB). La ligne lue ne doit comporter qu'un seul nombre. + * + * Le programme stoppe en cas d'erreur ou en fin de fichier + * @return la valeur short correspondante. + */ + + /* + * Reads an ASCII decimal short. + * Shorts can be preceded by optional whitespace (SPACE or TAB). + * Program exits on read errors or EOF + * @return the short. + */ + +public static short readShort() +{ +short j = 0 ; +String s = readLine("short"); + + try + { + j = Short.parseShort(s) ; + } + catch (NumberFormatException e) + { + conversionError( s, "short" ); + } + + return j ; + +} + + /** + * Lit un octet dans une ligne. + * Ces nombres doivent tre conforme l'criture standard des constantes + * byte en Java et permettre la conversion par : + * Byte.parseByte(String) + * Le nombre peut tre prcd ou suivi d'un nombre quelconque d'espaces + * (SPACE ou TAB). La ligne lue ne doit comporter qu'un seul nombre. + * + * Le programme stoppe en cas d'erreur ou en fin de fichier + * @return la valeur byte correspondante. + */ + + /* + * Reads an ASCII decimal byte. + * Bytes can be preceded by optional whitespace (SPACE or TAB). + * Program exits on read errors or EOF + * @return the byte. + */ + +public static byte readByte() +{ +byte b = 0 ; +String s = readLine("byte"); + + try + { + b = Byte.parseByte(s) ; + } + catch (NumberFormatException e) + { + conversionError( s, "byte" ); + } + + return b ; + +} + /** + * Lit une ligne. + * + * Le programme stoppe en cas d'erreur de lecture. + * @return une chane indiquant le contenu de la ligne ou + * une chane vide lorsque la ligne tait vide ou + * null en fin de fichier . + */ + + /* + * Reads a line. + * Program exits on read errors + * @return the line content or an empty string if nothing entered or null if EOF reached . + */ + + public static String readLine() + { + String s = null ; + + try + { + s= cin.readLine(); + } + catch ( java.io.EOFException error) + { + s = null ; + } + catch ( Exception error ) + { + exitProgram( new RuntimeException(error.toString()) ) ; + } + + return s ; + } + + /** + * Lit une nouvelle ligne. + * + * Le programme stoppe en cas d'erreur de lecture ou si la fin de fichier + * est rencontre. + * @param t chane indiquant le type de la donne lue dans cette ligne + * @return une chane indiquant le contenu de la ligne ou + * une chane vide lorsque la ligne tait vide . + */ + + /* + * Reads a new line. + * Program exits on read errors or if EOF is reached. + * @param t String indicating the type expected in the line + * @return the line content or an empty string if nothing entered . + */ + +private static String readNewLine(String t) +{ +String s ; + + s= readLine() ; + + if ( s == null) + readError ( " Fin de fichier inattendue" , t) ; + + return s ; +} + + /** + * Lit une donne de type t dans une ligne non vide. + * + * Le programme stoppe en cas d'erreur de lecture, de fin de fichier + * ou si la ligne tait vide. + * @param t chane indiquant le type de la donne lue dans cette ligne + * @return une chane indiquant le contenu non vide de la ligne. + */ + + /* + * Reads a data of type t in a non empty line. + * Program exits on read errors or EOF or if line is empty + * @param t String indicating the type expected in the line + * @return the non empty line content + */ + +private static String readLine(String t) +{ +String s ; + + s= readNewLine(t).trim() ; + + if (s.length() == 0) + readError ( " Ligne vide" , t) ; + + return s ; +} + + + +} // end class Console diff --git a/workspace/Palindrome/palindrome/Palindrome.class b/workspace/Palindrome/palindrome/Palindrome.class new file mode 100644 index 0000000..11c74bd Binary files /dev/null and b/workspace/Palindrome/palindrome/Palindrome.class differ diff --git a/workspace/Palindrome/palindrome/Palindrome.java b/workspace/Palindrome/palindrome/Palindrome.java new file mode 100644 index 0000000..e381039 --- /dev/null +++ b/workspace/Palindrome/palindrome/Palindrome.java @@ -0,0 +1,75 @@ +package palindrome; + +import iutsud.Console; +import java.lang.*; + +public class Palindrome { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + StringBuffer arguments = new StringBuffer(); + String texte; + int longueurArguments = args.length; + + for(int i=0; i + + + + + diff --git a/workspace/Personne_Femme/.project b/workspace/Personne_Femme/.project new file mode 100644 index 0000000..87a4904 --- /dev/null +++ b/workspace/Personne_Femme/.project @@ -0,0 +1,17 @@ + + + Personne_Femme + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/workspace/Personne_Femme/personneFemme/Femme.class b/workspace/Personne_Femme/personneFemme/Femme.class new file mode 100644 index 0000000..6b35470 Binary files /dev/null and b/workspace/Personne_Femme/personneFemme/Femme.class differ diff --git a/workspace/Personne_Femme/personneFemme/Femme.java b/workspace/Personne_Femme/personneFemme/Femme.java new file mode 100644 index 0000000..0cbd8a4 --- /dev/null +++ b/workspace/Personne_Femme/personneFemme/Femme.java @@ -0,0 +1,28 @@ +package personneFemme; + +import personneFemme.Personne; + +/** + * Gre des femmes qui hritent de la classe Personne + * @author blankoworld + * + */ + +public class Femme extends Personne{ + + private String njf; + /** + * @param args + */ + public Femme(String nomFemme, int anneeNaissFemme, String nomJeuneFille) + { + super(nomFemme, anneeNaissFemme); + njf = nomJeuneFille; + } + + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + +} diff --git a/workspace/Personne_Femme/personneFemme/Personne.class b/workspace/Personne_Femme/personneFemme/Personne.class new file mode 100644 index 0000000..2d14102 Binary files /dev/null and b/workspace/Personne_Femme/personneFemme/Personne.class differ diff --git a/workspace/Personne_Femme/personneFemme/Personne.java b/workspace/Personne_Femme/personneFemme/Personne.java new file mode 100644 index 0000000..8f20f45 --- /dev/null +++ b/workspace/Personne_Femme/personneFemme/Personne.java @@ -0,0 +1,49 @@ +package personneFemme; + +/** + * Permet la cration de personnes + * @author blankoworld + * + */ + +public class Personne { + + private String nom; + private int anneeNaissance; + + /** + * @param args + */ + + /** + * Constructeur de la classe Personne + */ + public Personne (String nomPers, int anneeNaissPers) + { + nom = nomPers; + anneeNaissance = anneeNaissPers; + } + + public String toString() + { + String resultat; + + resultat = "Nom : " + this.nom; + resultat += "\nAnne de naissance : " + this.anneeNaissance; + + return resultat; + } + /** + * Mthode principale de la classe Personne + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + Personne pers1 = new Personne("DUPONT",1962); + Personne pers2 = new Personne("DURAND",1985); + + System.out.println(pers1.toString()); + System.out.println(pers2.toString()); + } + +} diff --git a/workspace/PiecesComposites/.classpath b/workspace/PiecesComposites/.classpath new file mode 100644 index 0000000..6d488d7 --- /dev/null +++ b/workspace/PiecesComposites/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/workspace/PiecesComposites/.project b/workspace/PiecesComposites/.project new file mode 100644 index 0000000..e62a2f5 --- /dev/null +++ b/workspace/PiecesComposites/.project @@ -0,0 +1,17 @@ + + + PiecesComposites + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/workspace/PiecesComposites/doc/allclasses-frame.html b/workspace/PiecesComposites/doc/allclasses-frame.html new file mode 100644 index 0000000..525ac14 --- /dev/null +++ b/workspace/PiecesComposites/doc/allclasses-frame.html @@ -0,0 +1,38 @@ + + + + + + +All Classes + + + + + + + + + + +All Classes +
    + + + + + +
    IHM +
    +Pieces +
    +PiecesComposites +
    +PiecesDeBase +
    +Stocks +
    +
    + + + diff --git a/workspace/PiecesComposites/doc/allclasses-noframe.html b/workspace/PiecesComposites/doc/allclasses-noframe.html new file mode 100644 index 0000000..89e7b05 --- /dev/null +++ b/workspace/PiecesComposites/doc/allclasses-noframe.html @@ -0,0 +1,38 @@ + + + + + + +All Classes + + + + + + + + + + +All Classes +
    + + + + + +
    IHM +
    +Pieces +
    +PiecesComposites +
    +PiecesDeBase +
    +Stocks +
    +
    + + + diff --git a/workspace/PiecesComposites/doc/constant-values.html b/workspace/PiecesComposites/doc/constant-values.html new file mode 100644 index 0000000..eb24689 --- /dev/null +++ b/workspace/PiecesComposites/doc/constant-values.html @@ -0,0 +1,140 @@ + + + + + + +Constant Field Values + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +


    +
    +

    +Constant Field Values

    +
    +
    +Contents
      +
    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/deprecated-list.html b/workspace/PiecesComposites/doc/deprecated-list.html new file mode 100644 index 0000000..0300800 --- /dev/null +++ b/workspace/PiecesComposites/doc/deprecated-list.html @@ -0,0 +1,140 @@ + + + + + + +Deprecated List + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Deprecated API

    +
    +
    +Contents
      +
    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/IHM.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/IHM.html new file mode 100644 index 0000000..a37e7fd --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/IHM.html @@ -0,0 +1,224 @@ + + + + + + +IHM + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +fr.blankoworld.piecesComposites +
    +Class IHM

    +
    +java.lang.Object
    +  extended by fr.blankoworld.piecesComposites.IHM
    +
    +
    +
    +
    public class IHM
    extends java.lang.Object
    + + +

    +Interface avec l'utilisateur + Utilise les classes mtiers +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Constructor Summary
    IHM() + +
    +           
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Object
    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +IHM

    +
    +public IHM()
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/Pieces.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/Pieces.html new file mode 100644 index 0000000..b91ee4f --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/Pieces.html @@ -0,0 +1,340 @@ + + + + + + +Pieces + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +fr.blankoworld.piecesComposites +
    +Class Pieces

    +
    +java.lang.Object
    +  extended by fr.blankoworld.piecesComposites.Pieces
    +
    +
    +
    Direct Known Subclasses:
    PiecesComposites, PiecesDeBase
    +
    +
    +
    +
    public abstract class Pieces
    extends java.lang.Object
    + + +

    +Classe abstraite Pice +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Constructor Summary
    Pieces() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +abstract  voidcalculPrixRevient() + +
    +          Calcul du prix de revient de la pice (abstrait)
    + voiddonneNom() + +
    +          Donne le nom de la pice
    + voiddonnePrixHA() + +
    +          Donne le prix d'achat de la pice
    + voiddonnePrixVenteHTPice() + +
    +          Donne le prix de vente hors taxes de la pice
    + voiddonnePrixVenteTTC() + +
    +          Donne le prix de vente TTC de la pice
    + + + + + + + +
    Methods inherited from class java.lang.Object
    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Pieces

    +
    +public Pieces()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +calculPrixRevient

    +
    +public abstract void calculPrixRevient()
    +
    +
    Calcul du prix de revient de la pice (abstrait) +

    +

    +
    +
    +
    +
    + +

    +donneNom

    +
    +public void donneNom()
    +
    +
    Donne le nom de la pice +

    +

    +
    +
    +
    +
    + +

    +donnePrixHA

    +
    +public void donnePrixHA()
    +
    +
    Donne le prix d'achat de la pice +

    +

    +
    +
    +
    +
    + +

    +donnePrixVenteHTPice

    +
    +public void donnePrixVenteHTPice()
    +
    +
    Donne le prix de vente hors taxes de la pice +

    +

    +
    +
    +
    +
    + +

    +donnePrixVenteTTC

    +
    +public void donnePrixVenteTTC()
    +
    +
    Donne le prix de vente TTC de la pice +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/PiecesComposites.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/PiecesComposites.html new file mode 100644 index 0000000..f3f4594 --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/PiecesComposites.html @@ -0,0 +1,310 @@ + + + + + + +PiecesComposites + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +fr.blankoworld.piecesComposites +
    +Class PiecesComposites

    +
    +java.lang.Object
    +  extended by fr.blankoworld.piecesComposites.Pieces
    +      extended by fr.blankoworld.piecesComposites.PiecesComposites
    +
    +
    +
    +
    public class PiecesComposites
    extends Pieces
    + + +

    +Pices types dites Composites +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Constructor Summary
    PiecesComposites() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidajouterComposant(java.lang.Object identifiantPice, + java.lang.Object coutAssemblage) + +
    +          Ajouter un composant en donnant son identifiant et le cot d'assemblage supplmentaire
    + voidcalculPrixRevient() + +
    +          Calcule le prix de revient de la pice composite
    + voiddonneComplexit() + +
    +          Donne la complexit d'une pice composite
    + + + + + + + +
    Methods inherited from class fr.blankoworld.piecesComposites.Pieces
    donneNom, donnePrixHA, donnePrixVenteHTPice, donnePrixVenteTTC
    + + + + + + + +
    Methods inherited from class java.lang.Object
    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +PiecesComposites

    +
    +public PiecesComposites()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +calculPrixRevient

    +
    +public void calculPrixRevient()
    +
    +
    Calcule le prix de revient de la pice composite +

    +

    +
    Specified by:
    calculPrixRevient in class Pieces
    +
    +
    +
    +
    +
    +
    + +

    +donneComplexit

    +
    +public void donneComplexit()
    +
    +
    Donne la complexit d'une pice composite +

    +

    +
    +
    +
    +
    + +

    +ajouterComposant

    +
    +public void ajouterComposant(java.lang.Object identifiantPice,
    +                             java.lang.Object coutAssemblage)
    +
    +
    Ajouter un composant en donnant son identifiant et le cot d'assemblage supplmentaire +

    +

    +
    Parameters:
    identifiantPice -
    coutAssemblage -
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/PiecesDeBase.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/PiecesDeBase.html new file mode 100644 index 0000000..fa4ba0e --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/PiecesDeBase.html @@ -0,0 +1,266 @@ + + + + + + +PiecesDeBase + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +fr.blankoworld.piecesComposites +
    +Class PiecesDeBase

    +
    +java.lang.Object
    +  extended by fr.blankoworld.piecesComposites.Pieces
    +      extended by fr.blankoworld.piecesComposites.PiecesDeBase
    +
    +
    +
    +
    public class PiecesDeBase
    extends Pieces
    + + +

    +Pices types dites de Base +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Constructor Summary
    PiecesDeBase() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + voidcalculPrixRevient() + +
    +          Permet de calculer le prix de revient d'une pice
    + + + + + + + +
    Methods inherited from class fr.blankoworld.piecesComposites.Pieces
    donneNom, donnePrixHA, donnePrixVenteHTPice, donnePrixVenteTTC
    + + + + + + + +
    Methods inherited from class java.lang.Object
    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +PiecesDeBase

    +
    +public PiecesDeBase()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +calculPrixRevient

    +
    +public void calculPrixRevient()
    +
    +
    Permet de calculer le prix de revient d'une pice +

    +

    +
    Specified by:
    calculPrixRevient in class Pieces
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/Stocks.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/Stocks.html new file mode 100644 index 0000000..5063d05 --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/Stocks.html @@ -0,0 +1,366 @@ + + + + + + +Stocks + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +fr.blankoworld.piecesComposites +
    +Class Stocks

    +
    +java.lang.Object
    +  extended by fr.blankoworld.piecesComposites.Stocks
    +
    +
    +
    +
    public class Stocks
    extends java.lang.Object
    + + +

    +Gestion des stockes de pices +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    + PiecescolPieces + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Stocks() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static voids_affichePiecePlusComplexe() + +
    +          Affiche la pice la plus complexe : + Code + Nom + Prix de revient + Complexit
    +static voids_ajouterPiece(java.lang.String nom, + double PA) + +
    +          Permet l'ajout d'une pice dans les stocks
    +static Piecess_listePieces() + +
    +          Liste des pices
    +static voids_supprimerPiece(java.lang.String nom, + double CA, + Pieces composants) + +
    +          Supprime une pice dans les stocks
    + + + + + + + +
    Methods inherited from class java.lang.Object
    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +colPieces

    +
    +public Pieces colPieces
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Stocks

    +
    +public Stocks()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +s_ajouterPiece

    +
    +public static void s_ajouterPiece(java.lang.String nom,
    +                                  double PA)
    +
    +
    Permet l'ajout d'une pice dans les stocks +

    +

    +
    Parameters:
    nom -
    PA -
    +
    +
    +
    + +

    +s_supprimerPiece

    +
    +public static final void s_supprimerPiece(java.lang.String nom,
    +                                          double CA,
    +                                          Pieces composants)
    +
    +
    Supprime une pice dans les stocks +

    +

    +
    Parameters:
    nom -
    CA -
    composants -
    +
    +
    +
    + +

    +s_affichePiecePlusComplexe

    +
    +public static void s_affichePiecePlusComplexe()
    +
    +
    Affiche la pice la plus complexe : + Code + Nom + Prix de revient + Complexit +

    +

    +
    +
    +
    +
    + +

    +s_listePieces

    +
    +public static Pieces s_listePieces()
    +
    +
    Liste des pices +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/IHM.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/IHM.html new file mode 100644 index 0000000..f4c2d9d --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/IHM.html @@ -0,0 +1,138 @@ + + + + + + +Uses of Class fr.blankoworld.piecesComposites.IHM + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    fr.blankoworld.piecesComposites.IHM

    +
    +No usage of fr.blankoworld.piecesComposites.IHM +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/Pieces.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/Pieces.html new file mode 100644 index 0000000..625e03a --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/Pieces.html @@ -0,0 +1,219 @@ + + + + + + +Uses of Class fr.blankoworld.piecesComposites.Pieces + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    fr.blankoworld.piecesComposites.Pieces

    +
    + + + + + +
    +Uses of Pieces in fr.blankoworld.piecesComposites
    +  +

    + + + + + + + + + + + + + +
    Subclasses of Pieces in fr.blankoworld.piecesComposites
    + classPiecesComposites + +
    +          Pices types dites Composites
    + classPiecesDeBase + +
    +          Pices types dites de Base
    +  +

    + + + + + + + + + +
    Fields in fr.blankoworld.piecesComposites declared as Pieces
    + PiecesStocks.colPieces + +
    +           
    +  +

    + + + + + + + + + +
    Methods in fr.blankoworld.piecesComposites that return Pieces
    +static PiecesStocks.s_listePieces() + +
    +          Liste des pices
    +  +

    + + + + + + + + + +
    Methods in fr.blankoworld.piecesComposites with parameters of type Pieces
    +static voidStocks.s_supprimerPiece(java.lang.String nom, + double CA, + Pieces composants) + +
    +          Supprime une pice dans les stocks
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/PiecesComposites.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/PiecesComposites.html new file mode 100644 index 0000000..e8f2ef8 --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/PiecesComposites.html @@ -0,0 +1,138 @@ + + + + + + +Uses of Class fr.blankoworld.piecesComposites.PiecesComposites + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    fr.blankoworld.piecesComposites.PiecesComposites

    +
    +No usage of fr.blankoworld.piecesComposites.PiecesComposites +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/PiecesDeBase.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/PiecesDeBase.html new file mode 100644 index 0000000..b6f393a --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/PiecesDeBase.html @@ -0,0 +1,138 @@ + + + + + + +Uses of Class fr.blankoworld.piecesComposites.PiecesDeBase + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    fr.blankoworld.piecesComposites.PiecesDeBase

    +
    +No usage of fr.blankoworld.piecesComposites.PiecesDeBase +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/Stocks.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/Stocks.html new file mode 100644 index 0000000..c85f42d --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/class-use/Stocks.html @@ -0,0 +1,138 @@ + + + + + + +Uses of Class fr.blankoworld.piecesComposites.Stocks + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    fr.blankoworld.piecesComposites.Stocks

    +
    +No usage of fr.blankoworld.piecesComposites.Stocks +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-frame.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-frame.html new file mode 100644 index 0000000..121c240 --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-frame.html @@ -0,0 +1,40 @@ + + + + + + +fr.blankoworld.piecesComposites + + + + + + + + + + + +fr.blankoworld.piecesComposites + + + + +
    +Classes  + +
    +IHM +
    +Pieces +
    +PiecesComposites +
    +PiecesDeBase +
    +Stocks
    + + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-summary.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-summary.html new file mode 100644 index 0000000..e53861f --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-summary.html @@ -0,0 +1,169 @@ + + + + + + +fr.blankoworld.piecesComposites + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package fr.blankoworld.piecesComposites +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    IHMInterface avec l'utilisateur + Utilise les classes mtiers
    PiecesClasse abstraite Pice
    PiecesCompositesPices types dites Composites
    PiecesDeBasePices types dites de Base
    StocksGestion des stockes de pices
    +  + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-tree.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-tree.html new file mode 100644 index 0000000..78a5427 --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-tree.html @@ -0,0 +1,146 @@ + + + + + + +fr.blankoworld.piecesComposites Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package fr.blankoworld.piecesComposites +

    +
    +

    +Class Hierarchy +

    +
      +
    • java.lang.Object +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-use.html b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-use.html new file mode 100644 index 0000000..7139f98 --- /dev/null +++ b/workspace/PiecesComposites/doc/fr/blankoworld/piecesComposites/package-use.html @@ -0,0 +1,151 @@ + + + + + + +Uses of Package fr.blankoworld.piecesComposites + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    fr.blankoworld.piecesComposites

    +
    + + + + + + + + +
    +Classes in fr.blankoworld.piecesComposites used by fr.blankoworld.piecesComposites
    Pieces + +
    +          Classe abstraite Pice
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/help-doc.html b/workspace/PiecesComposites/doc/help-doc.html new file mode 100644 index 0000000..eccfc5f --- /dev/null +++ b/workspace/PiecesComposites/doc/help-doc.html @@ -0,0 +1,211 @@ + + + + + + +API Help + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +How This API Document Is Organized

    +
    +This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

    +Package

    +
    + +

    +Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:

      +
    • Interfaces (italic)
    • Classes
    • Enums
    • Exceptions
    • Errors
    • Annotation Types
    +
    +

    +Class/Interface

    +
    + +

    +Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

      +
    • Class inheritance diagram
    • Direct Subclasses
    • All Known Subinterfaces
    • All Known Implementing Classes
    • Class/interface declaration
    • Class/interface description +

      +

    • Nested Class Summary
    • Field Summary
    • Constructor Summary
    • Method Summary +

      +

    • Field Detail
    • Constructor Detail
    • Method Detail
    +Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
    + +

    +Annotation Type

    +
    + +

    +Each annotation type has its own separate page with the following sections:

      +
    • Annotation Type declaration
    • Annotation Type description
    • Required Element Summary
    • Optional Element Summary
    • Element Detail
    +
    + +

    +Enum

    +
    + +

    +Each enum has its own separate page with the following sections:

      +
    • Enum declaration
    • Enum description
    • Enum Constant Summary
    • Enum Constant Detail
    +
    +

    +Use

    +
    +Each documented package, class and interface has its own Use page. This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its Use page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A. You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.
    +

    +Tree (Class Hierarchy)

    +
    +There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object.
      +
    • When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
    • When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.
    +
    +

    +Deprecated API

    +
    +The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.
    +

    +Index

    +
    +The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.
    +

    +Prev/Next

    +These links take you to the next or previous class, interface, package, or related page.

    +Frames/No Frames

    +These links show and hide the HTML frames. All pages are available with or without frames. +

    +

    +Serialized Form

    +Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description. +

    +

    +Constant Field Values

    +The Constant Field Values page lists the static final fields and their values. +

    + + +This help file applies to API documentation generated using the standard doclet. + +
    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/index-files/index-1.html b/workspace/PiecesComposites/doc/index-files/index-1.html new file mode 100644 index 0000000..34029f4 --- /dev/null +++ b/workspace/PiecesComposites/doc/index-files/index-1.html @@ -0,0 +1,139 @@ + + + + + + +A-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    +

    +A

    +
    +
    ajouterComposant(Object, Object) - +Method in class fr.blankoworld.piecesComposites.PiecesComposites +
    Ajouter un composant en donnant son identifiant et le cot d'assemblage supplmentaire +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    + + + diff --git a/workspace/PiecesComposites/doc/index-files/index-2.html b/workspace/PiecesComposites/doc/index-files/index-2.html new file mode 100644 index 0000000..9383042 --- /dev/null +++ b/workspace/PiecesComposites/doc/index-files/index-2.html @@ -0,0 +1,148 @@ + + + + + + +C-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    +

    +C

    +
    +
    calculPrixRevient() - +Method in class fr.blankoworld.piecesComposites.Pieces +
    Calcul du prix de revient de la pice (abstrait) +
    calculPrixRevient() - +Method in class fr.blankoworld.piecesComposites.PiecesComposites +
    Calcule le prix de revient de la pice composite +
    calculPrixRevient() - +Method in class fr.blankoworld.piecesComposites.PiecesDeBase +
    Permet de calculer le prix de revient d'une pice +
    colPieces - +Variable in class fr.blankoworld.piecesComposites.Stocks +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    + + + diff --git a/workspace/PiecesComposites/doc/index-files/index-3.html b/workspace/PiecesComposites/doc/index-files/index-3.html new file mode 100644 index 0000000..252c602 --- /dev/null +++ b/workspace/PiecesComposites/doc/index-files/index-3.html @@ -0,0 +1,151 @@ + + + + + + +D-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    +

    +D

    +
    +
    donneComplexit() - +Method in class fr.blankoworld.piecesComposites.PiecesComposites +
    Donne la complexit d'une pice composite +
    donneNom() - +Method in class fr.blankoworld.piecesComposites.Pieces +
    Donne le nom de la pice +
    donnePrixHA() - +Method in class fr.blankoworld.piecesComposites.Pieces +
    Donne le prix d'achat de la pice +
    donnePrixVenteHTPice() - +Method in class fr.blankoworld.piecesComposites.Pieces +
    Donne le prix de vente hors taxes de la pice +
    donnePrixVenteTTC() - +Method in class fr.blankoworld.piecesComposites.Pieces +
    Donne le prix de vente TTC de la pice +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    + + + diff --git a/workspace/PiecesComposites/doc/index-files/index-4.html b/workspace/PiecesComposites/doc/index-files/index-4.html new file mode 100644 index 0000000..473b2ba --- /dev/null +++ b/workspace/PiecesComposites/doc/index-files/index-4.html @@ -0,0 +1,136 @@ + + + + + + +F-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    +

    +F

    +
    +
    fr.blankoworld.piecesComposites - package fr.blankoworld.piecesComposites
     
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    + + + diff --git a/workspace/PiecesComposites/doc/index-files/index-5.html b/workspace/PiecesComposites/doc/index-files/index-5.html new file mode 100644 index 0000000..9aa8fb1 --- /dev/null +++ b/workspace/PiecesComposites/doc/index-files/index-5.html @@ -0,0 +1,140 @@ + + + + + + +I-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    +

    +I

    +
    +
    IHM - Class in fr.blankoworld.piecesComposites
    Interface avec l'utilisateur + Utilise les classes mtiers
    IHM() - +Constructor for class fr.blankoworld.piecesComposites.IHM +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    + + + diff --git a/workspace/PiecesComposites/doc/index-files/index-6.html b/workspace/PiecesComposites/doc/index-files/index-6.html new file mode 100644 index 0000000..f764428 --- /dev/null +++ b/workspace/PiecesComposites/doc/index-files/index-6.html @@ -0,0 +1,145 @@ + + + + + + +P-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    +

    +P

    +
    +
    Pieces - Class in fr.blankoworld.piecesComposites
    Classe abstraite Pice
    Pieces() - +Constructor for class fr.blankoworld.piecesComposites.Pieces +
      +
    PiecesComposites - Class in fr.blankoworld.piecesComposites
    Pices types dites Composites
    PiecesComposites() - +Constructor for class fr.blankoworld.piecesComposites.PiecesComposites +
      +
    PiecesDeBase - Class in fr.blankoworld.piecesComposites
    Pices types dites de Base
    PiecesDeBase() - +Constructor for class fr.blankoworld.piecesComposites.PiecesDeBase +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    + + + diff --git a/workspace/PiecesComposites/doc/index-files/index-7.html b/workspace/PiecesComposites/doc/index-files/index-7.html new file mode 100644 index 0000000..c767186 --- /dev/null +++ b/workspace/PiecesComposites/doc/index-files/index-7.html @@ -0,0 +1,155 @@ + + + + + + +S-Index + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    +

    +S

    +
    +
    s_affichePiecePlusComplexe() - +Static method in class fr.blankoworld.piecesComposites.Stocks +
    Affiche la pice la plus complexe : + Code + Nom + Prix de revient + Complexit +
    s_ajouterPiece(String, double) - +Static method in class fr.blankoworld.piecesComposites.Stocks +
    Permet l'ajout d'une pice dans les stocks +
    s_listePieces() - +Static method in class fr.blankoworld.piecesComposites.Stocks +
    Liste des pices +
    s_supprimerPiece(String, double, Pieces) - +Static method in class fr.blankoworld.piecesComposites.Stocks +
    Supprime une pice dans les stocks +
    Stocks - Class in fr.blankoworld.piecesComposites
    Gestion des stockes de pices
    Stocks() - +Constructor for class fr.blankoworld.piecesComposites.Stocks +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C D F I P S
    + + + diff --git a/workspace/PiecesComposites/doc/index.html b/workspace/PiecesComposites/doc/index.html new file mode 100644 index 0000000..b8c9f06 --- /dev/null +++ b/workspace/PiecesComposites/doc/index.html @@ -0,0 +1,34 @@ + + + + + + +Generated Documentation (Untitled) + + + + + + + + +<H2> +Frame Alert</H2> + +<P> +This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. +<BR> +Link to<A HREF="fr/blankoworld/piecesComposites/package-summary.html">Non-frame version.</A> + + + diff --git a/workspace/PiecesComposites/doc/overview-tree.html b/workspace/PiecesComposites/doc/overview-tree.html new file mode 100644 index 0000000..335b4a2 --- /dev/null +++ b/workspace/PiecesComposites/doc/overview-tree.html @@ -0,0 +1,148 @@ + + + + + + +Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For All Packages

    +
    +
    +
    Package Hierarchies:
    fr.blankoworld.piecesComposites
    +
    +

    +Class Hierarchy +

    +
      +
    • java.lang.Object +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/PiecesComposites/doc/package-list b/workspace/PiecesComposites/doc/package-list new file mode 100644 index 0000000..09b391d --- /dev/null +++ b/workspace/PiecesComposites/doc/package-list @@ -0,0 +1 @@ +fr.blankoworld.piecesComposites diff --git a/workspace/PiecesComposites/doc/resources/inherit.gif b/workspace/PiecesComposites/doc/resources/inherit.gif new file mode 100644 index 0000000..c814867 Binary files /dev/null and b/workspace/PiecesComposites/doc/resources/inherit.gif differ diff --git a/workspace/PiecesComposites/doc/stylesheet.css b/workspace/PiecesComposites/doc/stylesheet.css new file mode 100644 index 0000000..14c3737 --- /dev/null +++ b/workspace/PiecesComposites/doc/stylesheet.css @@ -0,0 +1,29 @@ +/* Javadoc style sheet */ + +/* Define colors, fonts and other style attributes here to override the defaults */ + +/* Page background color */ +body { background-color: #FFFFFF } + +/* Headings */ +h1 { font-size: 145% } + +/* Table colors */ +.TableHeadingColor { background: #CCCCFF } /* Dark mauve */ +.TableSubHeadingColor { background: #EEEEFF } /* Light mauve */ +.TableRowColor { background: #FFFFFF } /* White */ + +/* Font used in left-hand frame lists */ +.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif } +.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif } +.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif } + +/* Navigation bar fonts and colors */ +.NavBarCell1 { background-color:#EEEEFF;} /* Light mauve */ +.NavBarCell1Rev { background-color:#00008B;} /* Dark Blue */ +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;} +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;} + +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} + diff --git a/workspace/PiecesComposites/fr/blankoworld/piecesComposites/IHM.class b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/IHM.class new file mode 100644 index 0000000..e0d4982 Binary files /dev/null and b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/IHM.class differ diff --git a/workspace/PiecesComposites/fr/blankoworld/piecesComposites/IHM.java b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/IHM.java new file mode 100644 index 0000000..fbb7559 --- /dev/null +++ b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/IHM.java @@ -0,0 +1,19 @@ +package fr.blankoworld.piecesComposites; + + +// @ Projet : Untitled +// @ Nom de fichier : IHM.java +// @ Date : 01/10/2007 +// @ Auteur : +// +// + + + + +/** + * Interface avec l'utilisateur + * Utilise les classes mtiers +**/ +public class IHM { +} diff --git a/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Pieces.class b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Pieces.class new file mode 100644 index 0000000..6d4839b Binary files /dev/null and b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Pieces.class differ diff --git a/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Pieces.java b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Pieces.java new file mode 100644 index 0000000..1b7f776 --- /dev/null +++ b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Pieces.java @@ -0,0 +1,94 @@ +package fr.blankoworld.piecesComposites; + +import com.sun.corba.se.spi.ior.Identifiable; + +// @ Projet : Untitled +// @ Nom de fichier : Pices.java +// @ Date : 01/10/2007 +// @ Auteur : +// +// + + + + +/** + * Classe abstraite Pice +**/ +public abstract class Pieces { + /** + * Identifie la pice (unique) + **/ + private int identifiantPiece; + + /** + * Numro de la prochaine pice + **/ + private static int s_prochainePiece = 1; + + /** + * Prix d'achat de la pice + **/ + private double prixHAPiece; + + /** + * Prix de vente HT de la pice + **/ + private double prixVenteHTPiece; + + /** + * Dnommination de la pice + **/ + private String nomPiece; + + /** + * Marge de la pice + **/ + private double margePiece; + + /** + * Prix de vente TTC de la pice + **/ + private double prixVenteTTC; + + public void Pieces(String nom, double prixHA) { + identifiantPiece = s_prochainePiece; + nomPiece = nom; + prixHAPiece = prixHA; + + s_prochainePiece ++; + } + + /** + * Calcul du prix de revient de la pice (abstrait) + **/ + public abstract double calculPrixRevient(); + + /** + * Donne le nom de la pice + **/ + public void donneNom() { + System.out.println(nomPiece); + } + + /** + * Donne le prix d'achat de la pice + **/ + public void donnePrixHA() { + System.out.println(prixHAPiece); + } + + /** + * Donne le prix de vente hors taxes de la pice + **/ + public void donnePrixVenteHTPice() { + System.out.println(prixVenteHTPiece); + } + + /** + * Donne le prix de vente TTC de la pice + **/ + public void donnePrixVenteTTC() { + System.out.println(prixVenteTTC); + } +} diff --git a/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesComposites.class b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesComposites.class new file mode 100644 index 0000000..3f75bb0 Binary files /dev/null and b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesComposites.class differ diff --git a/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesComposites.java b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesComposites.java new file mode 100644 index 0000000..c80bee4 --- /dev/null +++ b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesComposites.java @@ -0,0 +1,61 @@ +package fr.blankoworld.piecesComposites; + +// @ Projet : Untitled +// @ Nom de fichier : Pices composites.java +// @ Date : 01/10/2007 +// @ Auteur : +// +// + + + + +/** + * Pices types dites Composites +**/ +public class PiecesComposites extends Pieces { + /** + * Nombre total de pices de base qui entrent dans la fabrication de la pice composite + **/ + private double complexitePiece; + + /** + * Prix d'achat de la pice = prix de revient de toutes les pices de base qui la composent + cot d'assemblage + **/ + private double prixHAPiece; + + /** + * Cot d'assemblage de la pice composite + **/ + private double coutAssemblagePiece; + + /** + * Marge de la pice = 25 % ! + **/ + private double margePiece = 0.25; + + /** + * Calcule le prix de revient de la pice composite + **/ + public double calculPrixRevient() { + double resultat = 0; + return resultat; + } + + /** + * Donne la complexit d'une pice composite + **/ + public void donneComplexit() { + + } + + /** + * Ajouter un composant en donnant son identifiant et le cot d'assemblage supplmentaire + * + * @param identifiantPice + * @param coutAssemblage + **/ + public void ajouterComposant(Object identifiantPice, Object coutAssemblage) { + + } +} diff --git a/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesDeBase.class b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesDeBase.class new file mode 100644 index 0000000..98fbd46 Binary files /dev/null and b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesDeBase.class differ diff --git a/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesDeBase.java b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesDeBase.java new file mode 100644 index 0000000..fd55cc2 --- /dev/null +++ b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/PiecesDeBase.java @@ -0,0 +1,35 @@ +package fr.blankoworld.piecesComposites; + +// @ Projet : Untitled +// @ Nom de fichier : Pices de base.java +// @ Date : 01/10/2007 +// @ Auteur : +// +// + + + + +/** + * Pices types dites de Base +**/ +public class PiecesDeBase extends Pieces { + /** + * Prix d'achat d'une pice (= prix de revient) + **/ + private double prixHAPiece; + + /** + * Marge de la pice = 10 % ! + **/ + private double margePiece = 0.1; + + /** + * Permet de calculer le prix de revient d'une pice + **/ + public double calculPrixRevient() { + double resultat; + resultat = prixHAPiece; + return resultat; + } +} diff --git a/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Stocks.class b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Stocks.class new file mode 100644 index 0000000..e56cbe2 Binary files /dev/null and b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Stocks.class differ diff --git a/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Stocks.java b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Stocks.java new file mode 100644 index 0000000..02bf33e --- /dev/null +++ b/workspace/PiecesComposites/fr/blankoworld/piecesComposites/Stocks.java @@ -0,0 +1,55 @@ +package fr.blankoworld.piecesComposites; + +// @ Projet : Untitled +// @ Nom de fichier : Stocks.java +// @ Date : 01/10/2007 +// @ Auteur : +// +// + +import fr.blankoworld.piecesComposites.Pieces; + +/** + * Gestion des stockes de pices +**/ +public class Stocks { + public Pieces colPieces; + /** + * Permet l'ajout d'une pice dans les stocks + * + * @param nom + * @param PA + **/ + public static void s_ajouterPiece(String nom, double PA) { + Pieces p1 = new Pieces(nom, PA); + } + + /** + * Supprime une pice dans les stocks + * + * @param nom + * @param CA + * @param composants + **/ + public static final void s_supprimerPiece(String nom, double CA, Pieces composants) { + + } + + /** + * Affiche la pice la plus complexe : + * Code + * Nom + * Prix de revient + * Complexit + **/ + public static void s_affichePiecePlusComplexe() { + + } + + /** + * Liste des pices + **/ + public static Pieces s_listePieces() { + + } +} diff --git a/workspace/Puissance4/.classpath b/workspace/Puissance4/.classpath new file mode 100644 index 0000000..233be1d --- /dev/null +++ b/workspace/Puissance4/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/workspace/Puissance4/.project b/workspace/Puissance4/.project new file mode 100644 index 0000000..c5965c4 --- /dev/null +++ b/workspace/Puissance4/.project @@ -0,0 +1,17 @@ + + + Puissance4 + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/workspace/Puissance4/doc/allclasses-frame.html b/workspace/Puissance4/doc/allclasses-frame.html new file mode 100644 index 0000000..5deed8d --- /dev/null +++ b/workspace/Puissance4/doc/allclasses-frame.html @@ -0,0 +1,31 @@ + + + + + + +All Classes + + + + + + + + + + + +All Classes +
    + + + + + +
    IhmPuissance4 +
    +
    + + + diff --git a/workspace/Puissance4/doc/allclasses-noframe.html b/workspace/Puissance4/doc/allclasses-noframe.html new file mode 100644 index 0000000..a01173c --- /dev/null +++ b/workspace/Puissance4/doc/allclasses-noframe.html @@ -0,0 +1,31 @@ + + + + + + +All Classes + + + + + + + + + + + +All Classes +
    + + + + + +
    IhmPuissance4 +
    +
    + + + diff --git a/workspace/Puissance4/doc/constant-values.html b/workspace/Puissance4/doc/constant-values.html new file mode 100644 index 0000000..3e9ce96 --- /dev/null +++ b/workspace/Puissance4/doc/constant-values.html @@ -0,0 +1,144 @@ + + + + + + +Constant Field Values + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Constant Field Values

    +
    +
    +Contents
      +
    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/deprecated-list.html b/workspace/Puissance4/doc/deprecated-list.html new file mode 100644 index 0000000..4080cab --- /dev/null +++ b/workspace/Puissance4/doc/deprecated-list.html @@ -0,0 +1,144 @@ + + + + + + +Deprecated List + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Deprecated API

    +
    +
    +Contents
      +
    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/fr/blankoworld/plateau/AideSaisie.html b/workspace/Puissance4/doc/fr/blankoworld/plateau/AideSaisie.html new file mode 100644 index 0000000..f085d83 --- /dev/null +++ b/workspace/Puissance4/doc/fr/blankoworld/plateau/AideSaisie.html @@ -0,0 +1,252 @@ + + + + + + +AideSaisie + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +fr.blankoworld.plateau +
    +Class AideSaisie

    +
    +java.lang.Object
    +  extended by fr.blankoworld.plateau.AideSaisie
    +
    +
    +
    +
    public class AideSaisie
    extends java.lang.Object
    + + +

    +Aide a la recuperation des donnees saisies en console par l'utilisateur +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Constructor Summary
    AideSaisie() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + java.lang.StringgetEntreeUtilisateur(java.lang.String prompt) + +
    +           
    + + + + + + + +
    Methods inherited from class java.lang.Object
    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +AideSaisie

    +
    +public AideSaisie()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getEntreeUtilisateur

    +
    +public java.lang.String getEntreeUtilisateur(java.lang.String prompt)
    +
    +
    +
    Parameters:
    prompt - +
    Returns:
    donnees saisies par l'utilisateur
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/fr/blankoworld/plateau/IhmPuissance4.html b/workspace/Puissance4/doc/fr/blankoworld/plateau/IhmPuissance4.html new file mode 100644 index 0000000..5dde25c --- /dev/null +++ b/workspace/Puissance4/doc/fr/blankoworld/plateau/IhmPuissance4.html @@ -0,0 +1,397 @@ + + + + + + +IhmPuissance4 + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +fr.blankoworld.plateau +
    +Class IhmPuissance4

    +
    +java.lang.Object
    +  extended by java.awt.Component
    +      extended by java.awt.Container
    +          extended by java.awt.Window
    +              extended by java.awt.Frame
    +                  extended by javax.swing.JFrame
    +                      extended by fr.blankoworld.plateau.IhmPuissance4
    +
    +
    +
    All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants
    +
    +
    +
    +
    public class IhmPuissance4
    extends javax.swing.JFrame
    + + +

    +Interface Homme Machine du Blankuissance 4. + Classe principale du paquet fr.blankoworld.plateau qui assure l'utilisation complte du jeu +

    + +

    +

    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class java.awt.Component
    java.awt.Component.BaselineResizeBehavior
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class javax.swing.JFrame
    EXIT_ON_CLOSE
    + + + + + + + +
    Fields inherited from class java.awt.Frame
    CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
    + + + + + + + +
    Fields inherited from class java.awt.Component
    BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
    + + + + + + + +
    Fields inherited from interface javax.swing.WindowConstants
    DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
    + + + + + + + +
    Fields inherited from interface java.awt.image.ImageObserver
    ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidenleveSurbrillance(java.awt.event.MouseEvent ev) + +
    +           
    +static voidmain(java.lang.String[] args) + +
    +           
    + voidsurbrillanceCellule(java.awt.event.MouseEvent ev) + +
    +           
    + + + + + + + +
    Methods inherited from class javax.swing.JFrame
    getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setTransferHandler, update
    + + + + + + + +
    Methods inherited from class java.awt.Frame
    addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
    + + + + + + + +
    Methods inherited from class java.awt.Window
    addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
    + + + + + + + +
    Methods inherited from class java.awt.Container
    add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate
    + + + + + + + +
    Methods inherited from class java.awt.Component
    action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, dispatchEvent, enable, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
    + + + + + + + +
    Methods inherited from class java.lang.Object
    equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    + + + + + + + +
    Methods inherited from interface java.awt.MenuContainer
    getFont, postEvent
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +surbrillanceCellule

    +
    +public void surbrillanceCellule(java.awt.event.MouseEvent ev)
    +
    +
    +
    +
    +
    +
    + +

    +enleveSurbrillance

    +
    +public void enleveSurbrillance(java.awt.event.MouseEvent ev)
    +
    +
    +
    +
    +
    +
    + +

    +main

    +
    +public static void main(java.lang.String[] args)
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/fr/blankoworld/plateau/PlateauPuissance4.html b/workspace/Puissance4/doc/fr/blankoworld/plateau/PlateauPuissance4.html new file mode 100644 index 0000000..f46c7b8 --- /dev/null +++ b/workspace/Puissance4/doc/fr/blankoworld/plateau/PlateauPuissance4.html @@ -0,0 +1,529 @@ + + + + + + +PlateauPuissance4 + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +fr.blankoworld.plateau +
    +Class PlateauPuissance4

    +
    +java.lang.Object
    +  extended by fr.blankoworld.plateau.PlateauPuissance4
    +
    +
    +
    +
    public class PlateauPuissance4
    extends java.lang.Object
    + + +

    +

    +
    Author:
    +
    Olivier DOSSMANN
    +
    +
    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    + intnbreColonnes + +
    +           
    + intnbreLignes + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    PlateauPuissance4() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidafficherGrille() + +
    +           
    + voidajoutPion(int positionColonne, + java.lang.String couleur) + +
    +           
    + fr.blankoworld.plateau.JoueursalterneJoueur(fr.blankoworld.plateau.Joueurs jUn, + fr.blankoworld.plateau.Joueurs jDeux) + +
    +           
    + intestAligne(int X, + int Y, + int colonneChoisie, + int positionPion) + +
    +           
    + booleangagnant(int colonneChoisie, + int positionPion) + +
    +           
    + java.util.VectorgetJoueurs() + +
    +           
    + intgetPosition(int colonne) + +
    +           
    + voidinitialiser() + +
    +           
    + voidlancer() + +
    +           
    +static voidmain(java.lang.String[] args) + +
    +           
    + voidreinitialiser() + +
    +           
    + voidsetAlternanceJoueur() + +
    +           
    + + + + + + + +
    Methods inherited from class java.lang.Object
    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +nbreColonnes

    +
    +public int nbreColonnes
    +
    +
    +
    +
    +
    + +

    +nbreLignes

    +
    +public int nbreLignes
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +PlateauPuissance4

    +
    +public PlateauPuissance4()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +main

    +
    +public static void main(java.lang.String[] args)
    +
    +
    +
    +
    +
    +
    + +

    +initialiser

    +
    +public void initialiser()
    +
    +
    +
    +
    +
    +
    + +

    +reinitialiser

    +
    +public void reinitialiser()
    +
    +
    +
    +
    +
    +
    + +

    +afficherGrille

    +
    +public void afficherGrille()
    +
    +
    +
    +
    +
    +
    + +

    +lancer

    +
    +public void lancer()
    +
    +
    +
    +
    +
    +
    + +

    +alterneJoueur

    +
    +public fr.blankoworld.plateau.Joueurs alterneJoueur(fr.blankoworld.plateau.Joueurs jUn,
    +                                                    fr.blankoworld.plateau.Joueurs jDeux)
    +
    +
    +
    +
    +
    +
    + +

    +ajoutPion

    +
    +public void ajoutPion(int positionColonne,
    +                      java.lang.String couleur)
    +
    +
    +
    +
    +
    +
    + +

    +gagnant

    +
    +public boolean gagnant(int colonneChoisie,
    +                       int positionPion)
    +
    +
    +
    +
    +
    +
    + +

    +estAligne

    +
    +public int estAligne(int X,
    +                     int Y,
    +                     int colonneChoisie,
    +                     int positionPion)
    +
    +
    +
    +
    +
    +
    + +

    +getPosition

    +
    +public int getPosition(int colonne)
    +
    +
    +
    +
    +
    +
    + +

    +getJoueurs

    +
    +public java.util.Vector getJoueurs()
    +
    +
    +
    +
    +
    +
    + +

    +setAlternanceJoueur

    +
    +public void setAlternanceJoueur()
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/fr/blankoworld/plateau/class-use/AideSaisie.html b/workspace/Puissance4/doc/fr/blankoworld/plateau/class-use/AideSaisie.html new file mode 100644 index 0000000..d874c66 --- /dev/null +++ b/workspace/Puissance4/doc/fr/blankoworld/plateau/class-use/AideSaisie.html @@ -0,0 +1,138 @@ + + + + + + +Uses of Class fr.blankoworld.plateau.AideSaisie + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    fr.blankoworld.plateau.AideSaisie

    +
    +No usage of fr.blankoworld.plateau.AideSaisie +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/fr/blankoworld/plateau/class-use/IhmPuissance4.html b/workspace/Puissance4/doc/fr/blankoworld/plateau/class-use/IhmPuissance4.html new file mode 100644 index 0000000..6f49f5e --- /dev/null +++ b/workspace/Puissance4/doc/fr/blankoworld/plateau/class-use/IhmPuissance4.html @@ -0,0 +1,142 @@ + + + + + + +Uses of Class fr.blankoworld.plateau.IhmPuissance4 + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    fr.blankoworld.plateau.IhmPuissance4

    +
    +No usage of fr.blankoworld.plateau.IhmPuissance4 +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/fr/blankoworld/plateau/class-use/PlateauPuissance4.html b/workspace/Puissance4/doc/fr/blankoworld/plateau/class-use/PlateauPuissance4.html new file mode 100644 index 0000000..cc37ca6 --- /dev/null +++ b/workspace/Puissance4/doc/fr/blankoworld/plateau/class-use/PlateauPuissance4.html @@ -0,0 +1,142 @@ + + + + + + +Uses of Class fr.blankoworld.plateau.PlateauPuissance4 + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    fr.blankoworld.plateau.PlateauPuissance4

    +
    +No usage of fr.blankoworld.plateau.PlateauPuissance4 +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/fr/blankoworld/plateau/package-frame.html b/workspace/Puissance4/doc/fr/blankoworld/plateau/package-frame.html new file mode 100644 index 0000000..3eaab68 --- /dev/null +++ b/workspace/Puissance4/doc/fr/blankoworld/plateau/package-frame.html @@ -0,0 +1,32 @@ + + + + + + +fr.blankoworld.plateau + + + + + + + + + + + +fr.blankoworld.plateau + + + + +
    +Classes  + +
    +IhmPuissance4
    + + + + diff --git a/workspace/Puissance4/doc/fr/blankoworld/plateau/package-summary.html b/workspace/Puissance4/doc/fr/blankoworld/plateau/package-summary.html new file mode 100644 index 0000000..36a3b01 --- /dev/null +++ b/workspace/Puissance4/doc/fr/blankoworld/plateau/package-summary.html @@ -0,0 +1,155 @@ + + + + + + +fr.blankoworld.plateau + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package fr.blankoworld.plateau +

    + + + + + + + + + +
    +Class Summary
    IhmPuissance4Interface Homme Machine du Blankuissance 4.
    +  + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/fr/blankoworld/plateau/package-tree.html b/workspace/Puissance4/doc/fr/blankoworld/plateau/package-tree.html new file mode 100644 index 0000000..521de47 --- /dev/null +++ b/workspace/Puissance4/doc/fr/blankoworld/plateau/package-tree.html @@ -0,0 +1,162 @@ + + + + + + +fr.blankoworld.plateau Class Hierarchy + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package fr.blankoworld.plateau +

    +
    +

    +Class Hierarchy +

    +
      +
    • java.lang.Object
        +
      • java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable) +
          +
        • java.awt.Container
            +
          • java.awt.Window (implements javax.accessibility.Accessible) +
              +
            • java.awt.Frame (implements java.awt.MenuContainer) +
                +
              • javax.swing.JFrame (implements javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants) + +
              +
            +
          +
        +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/fr/blankoworld/plateau/package-use.html b/workspace/Puissance4/doc/fr/blankoworld/plateau/package-use.html new file mode 100644 index 0000000..6cf1d81 --- /dev/null +++ b/workspace/Puissance4/doc/fr/blankoworld/plateau/package-use.html @@ -0,0 +1,142 @@ + + + + + + +Uses of Package fr.blankoworld.plateau + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    fr.blankoworld.plateau

    +
    +No usage of fr.blankoworld.plateau +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/help-doc.html b/workspace/Puissance4/doc/help-doc.html new file mode 100644 index 0000000..41a17cc --- /dev/null +++ b/workspace/Puissance4/doc/help-doc.html @@ -0,0 +1,215 @@ + + + + + + +API Help + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +How This API Document Is Organized

    +
    +This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

    +Package

    +
    + +

    +Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:

      +
    • Interfaces (italic)
    • Classes
    • Enums
    • Exceptions
    • Errors
    • Annotation Types
    +
    +

    +Class/Interface

    +
    + +

    +Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

      +
    • Class inheritance diagram
    • Direct Subclasses
    • All Known Subinterfaces
    • All Known Implementing Classes
    • Class/interface declaration
    • Class/interface description +

      +

    • Nested Class Summary
    • Field Summary
    • Constructor Summary
    • Method Summary +

      +

    • Field Detail
    • Constructor Detail
    • Method Detail
    +Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
    + +

    +Annotation Type

    +
    + +

    +Each annotation type has its own separate page with the following sections:

      +
    • Annotation Type declaration
    • Annotation Type description
    • Required Element Summary
    • Optional Element Summary
    • Element Detail
    +
    + +

    +Enum

    +
    + +

    +Each enum has its own separate page with the following sections:

      +
    • Enum declaration
    • Enum description
    • Enum Constant Summary
    • Enum Constant Detail
    +
    +

    +Use

    +
    +Each documented package, class and interface has its own Use page. This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its Use page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A. You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.
    +

    +Tree (Class Hierarchy)

    +
    +There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object.
      +
    • When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
    • When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.
    +
    +

    +Deprecated API

    +
    +The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.
    +

    +Index

    +
    +The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.
    +

    +Prev/Next

    +These links take you to the next or previous class, interface, package, or related page.

    +Frames/No Frames

    +These links show and hide the HTML frames. All pages are available with or without frames. +

    +

    +Serialized Form

    +Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description. +

    +

    +Constant Field Values

    +The Constant Field Values page lists the static final fields and their values. +

    + + +This help file applies to API documentation generated using the standard doclet. + +
    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-1.html b/workspace/Puissance4/doc/index-files/index-1.html new file mode 100644 index 0000000..0c04cd2 --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-1.html @@ -0,0 +1,143 @@ + + + + + + +E-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +E F I M S
    +

    +E

    +
    +
    enleveSurbrillance(MouseEvent) - +Method in class fr.blankoworld.plateau.IhmPuissance4 +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +E F I M S
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-10.html b/workspace/Puissance4/doc/index-files/index-10.html new file mode 100644 index 0000000..5935057 --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-10.html @@ -0,0 +1,143 @@ + + + + + + +R-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    +

    +R

    +
    +
    reinitialiser() - +Method in class fr.blankoworld.plateau.PlateauPuissance4 +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-11.html b/workspace/Puissance4/doc/index-files/index-11.html new file mode 100644 index 0000000..0a13bc0 --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-11.html @@ -0,0 +1,143 @@ + + + + + + +S-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    +

    +S

    +
    +
    setAlternanceJoueur() - +Method in class fr.blankoworld.plateau.PlateauPuissance4 +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-2.html b/workspace/Puissance4/doc/index-files/index-2.html new file mode 100644 index 0000000..de47faa --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-2.html @@ -0,0 +1,140 @@ + + + + + + +F-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +E F I M S
    +

    +F

    +
    +
    fr.blankoworld.plateau - package fr.blankoworld.plateau
     
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +E F I M S
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-3.html b/workspace/Puissance4/doc/index-files/index-3.html new file mode 100644 index 0000000..549acb6 --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-3.html @@ -0,0 +1,140 @@ + + + + + + +I-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +E F I M S
    +

    +I

    +
    +
    IhmPuissance4 - Class in fr.blankoworld.plateau
    Interface Homme Machine du Blankuissance 4.
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +E F I M S
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-4.html b/workspace/Puissance4/doc/index-files/index-4.html new file mode 100644 index 0000000..23cd7e3 --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-4.html @@ -0,0 +1,143 @@ + + + + + + +M-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +E F I M S
    +

    +M

    +
    +
    main(String[]) - +Static method in class fr.blankoworld.plateau.IhmPuissance4 +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +E F I M S
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-5.html b/workspace/Puissance4/doc/index-files/index-5.html new file mode 100644 index 0000000..74175ee --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-5.html @@ -0,0 +1,143 @@ + + + + + + +S-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +E F I M S
    +

    +S

    +
    +
    surbrillanceCellule(MouseEvent) - +Method in class fr.blankoworld.plateau.IhmPuissance4 +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +E F I M S
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-6.html b/workspace/Puissance4/doc/index-files/index-6.html new file mode 100644 index 0000000..f25a4de --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-6.html @@ -0,0 +1,143 @@ + + + + + + +L-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    +

    +L

    +
    +
    lancer() - +Method in class fr.blankoworld.plateau.PlateauPuissance4 +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-7.html b/workspace/Puissance4/doc/index-files/index-7.html new file mode 100644 index 0000000..ee0df20 --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-7.html @@ -0,0 +1,143 @@ + + + + + + +M-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    +

    +M

    +
    +
    main(String[]) - +Static method in class fr.blankoworld.plateau.PlateauPuissance4 +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-8.html b/workspace/Puissance4/doc/index-files/index-8.html new file mode 100644 index 0000000..9e3e4e4 --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-8.html @@ -0,0 +1,146 @@ + + + + + + +N-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    +

    +N

    +
    +
    nbreColonnes - +Variable in class fr.blankoworld.plateau.PlateauPuissance4 +
      +
    nbreLignes - +Variable in class fr.blankoworld.plateau.PlateauPuissance4 +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    + + + diff --git a/workspace/Puissance4/doc/index-files/index-9.html b/workspace/Puissance4/doc/index-files/index-9.html new file mode 100644 index 0000000..9907cdf --- /dev/null +++ b/workspace/Puissance4/doc/index-files/index-9.html @@ -0,0 +1,143 @@ + + + + + + +P-Index + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    +

    +P

    +
    +
    PlateauPuissance4 - Class in fr.blankoworld.plateau
     
    PlateauPuissance4() - +Constructor for class fr.blankoworld.plateau.PlateauPuissance4 +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A E F G I L M N P R S
    + + + diff --git a/workspace/Puissance4/doc/index.html b/workspace/Puissance4/doc/index.html new file mode 100644 index 0000000..6d4fce3 --- /dev/null +++ b/workspace/Puissance4/doc/index.html @@ -0,0 +1,34 @@ + + + + + + +Generated Documentation (Untitled) + + + + + + + + +<H2> +Frame Alert</H2> + +<P> +This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. +<BR> +Link to<A HREF="fr/blankoworld/plateau/package-summary.html">Non-frame version.</A> + + + diff --git a/workspace/Puissance4/doc/overview-tree.html b/workspace/Puissance4/doc/overview-tree.html new file mode 100644 index 0000000..36e0cfb --- /dev/null +++ b/workspace/Puissance4/doc/overview-tree.html @@ -0,0 +1,164 @@ + + + + + + +Class Hierarchy + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For All Packages

    +
    +
    +
    Package Hierarchies:
    fr.blankoworld.plateau
    +
    +

    +Class Hierarchy +

    +
      +
    • java.lang.Object
        +
      • java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable) +
          +
        • java.awt.Container
            +
          • java.awt.Window (implements javax.accessibility.Accessible) +
              +
            • java.awt.Frame (implements java.awt.MenuContainer) +
                +
              • javax.swing.JFrame (implements javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants) + +
              +
            +
          +
        +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/package-list b/workspace/Puissance4/doc/package-list new file mode 100644 index 0000000..8de57ad --- /dev/null +++ b/workspace/Puissance4/doc/package-list @@ -0,0 +1 @@ +fr.blankoworld.plateau diff --git a/workspace/Puissance4/doc/resources/inherit.gif b/workspace/Puissance4/doc/resources/inherit.gif new file mode 100644 index 0000000..c814867 Binary files /dev/null and b/workspace/Puissance4/doc/resources/inherit.gif differ diff --git a/workspace/Puissance4/doc/serialized-form.html b/workspace/Puissance4/doc/serialized-form.html new file mode 100644 index 0000000..28a1cb0 --- /dev/null +++ b/workspace/Puissance4/doc/serialized-form.html @@ -0,0 +1,279 @@ + + + + + + +Serialized Form + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Serialized Form

    +
    +
    + + + + + +
    +Package fr.blankoworld.plateau
    + +

    + + + + + +
    +Class fr.blankoworld.plateau.IhmPuissance4 extends javax.swing.JFrame implements Serializable
    + +

    +serialVersionUID: 1L + +

    + + + + + +
    +Serialized Fields
    + +

    +p4

    +
    +fr.blankoworld.plateau.PlateauPuissance4 p4
    +
    +

    Un nouveau plateau de jeu ?

    +

    +

    +
    +
    +
    +

    +joueur

    +
    +fr.blankoworld.plateau.Joueurs joueur
    +
    +

    Un joueur de base que nous utiliserons dans le programme

    +

    +

    +
    +
    +
    +

    +comptePion

    +
    +int comptePion
    +
    +

    Nombre de pions dans le jeu

    +

    +

    +
    +
    +
    +

    +largeurFenetre

    +
    +int largeurFenetre
    +
    +
    Largeur fenetre +

    +

    +
    +
    +
    +

    +LabelStatut

    +
    +javax.swing.JLabel LabelStatut
    +
    +
    Le champ texte de la barre de statut +

    +

    +
    +
    +
    +

    +LabelInfos

    +
    +javax.swing.JLabel LabelInfos
    +
    +
    Le second champ texte de la barre de statut +

    +

    +
    +
    +
    +

    +Panneau_Centre

    +
    +javax.swing.JPanel Panneau_Centre
    +
    +
    Le paneau centre +

    +

    +
    +
    +
    +

    +degradeRouge

    +
    +java.awt.GradientPaint degradeRouge
    +
    +
    Nos degrades de couleur +

    +

    +
    +
    +
    +

    +degradeJaune

    +
    +java.awt.GradientPaint degradeJaune
    +
    +
    +
    +
    +
    +

    +aucunGagnant

    +
    +boolean aucunGagnant
    +
    +
    Y a t il un gagnant au depart ? +

    +

    +
    +
    + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/workspace/Puissance4/doc/stylesheet.css b/workspace/Puissance4/doc/stylesheet.css new file mode 100644 index 0000000..6ea9e51 --- /dev/null +++ b/workspace/Puissance4/doc/stylesheet.css @@ -0,0 +1,29 @@ +/* Javadoc style sheet */ + +/* Define colors, fonts and other style attributes here to override the defaults */ + +/* Page background color */ +body { background-color: #FFFFFF; color:#000000 } + +/* Headings */ +h1 { font-size: 145% } + +/* Table colors */ +.TableHeadingColor { background: #CCCCFF; color:#000000 } /* Dark mauve */ +.TableSubHeadingColor { background: #EEEEFF; color:#000000 } /* Light mauve */ +.TableRowColor { background: #FFFFFF; color:#000000 } /* White */ + +/* Font used in left-hand frame lists */ +.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } + +/* Navigation bar fonts and colors */ +.NavBarCell1 { background-color:#EEEEFF; color:#000000} /* Light mauve */ +.NavBarCell1Rev { background-color:#00008B; color:#FFFFFF} /* Dark Blue */ +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;color:#000000;} +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;color:#FFFFFF;} + +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} + diff --git a/workspace/Puissance4/fr/blankoworld/plateau/AideSaisie.class b/workspace/Puissance4/fr/blankoworld/plateau/AideSaisie.class new file mode 100644 index 0000000..13c39a7 Binary files /dev/null and b/workspace/Puissance4/fr/blankoworld/plateau/AideSaisie.class differ diff --git a/workspace/Puissance4/fr/blankoworld/plateau/AideSaisie.java b/workspace/Puissance4/fr/blankoworld/plateau/AideSaisie.java new file mode 100644 index 0000000..1c45387 --- /dev/null +++ b/workspace/Puissance4/fr/blankoworld/plateau/AideSaisie.java @@ -0,0 +1,32 @@ +package fr.blankoworld.plateau; + +import java.io.*; + +/** + * + * @author olivier DOSSMANN + * + */ +/** + * Aide a la recuperation des donnees saisies en console par l'utilisateur + */ +public class AideSaisie { + /** + * + * @param prompt + * @return donnees saisies par l'utilisateur + */ + public String getEntreeUtilisateur(String prompt) { + String inputLine = null; + System.out.print(prompt + " "); + try { + BufferedReader is = new BufferedReader(new InputStreamReader(System.in)); + inputLine = is.readLine(); + if (inputLine.length() == 0 ) return null; + } + catch (IOException e) { + System.out.println("IOException: " + e); + } + return inputLine.toLowerCase(); + } +} \ No newline at end of file diff --git a/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$1.class b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$1.class new file mode 100644 index 0000000..7e0bf60 Binary files /dev/null and b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$1.class differ diff --git a/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$2.class b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$2.class new file mode 100644 index 0000000..d78f188 Binary files /dev/null and b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$2.class differ diff --git a/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$3.class b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$3.class new file mode 100644 index 0000000..8b76e05 Binary files /dev/null and b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$3.class differ diff --git a/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$4.class b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$4.class new file mode 100644 index 0000000..b3f2345 Binary files /dev/null and b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$4.class differ diff --git a/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$BoutonBlanko.class b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$BoutonBlanko.class new file mode 100644 index 0000000..9e28b40 Binary files /dev/null and b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4$BoutonBlanko.class differ diff --git a/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4.class b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4.class new file mode 100644 index 0000000..9f831f5 Binary files /dev/null and b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4.class differ diff --git a/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4.java b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4.java new file mode 100644 index 0000000..f775cac --- /dev/null +++ b/workspace/Puissance4/fr/blankoworld/plateau/IhmPuissance4.java @@ -0,0 +1,435 @@ +package fr.blankoworld.plateau; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Dimension; +import java.awt.GradientPaint; +import java.awt.Graphics; +import java.awt.Graphics2D; +import java.awt.GridLayout; +import java.awt.RenderingHints; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.MouseEvent; +import java.awt.event.MouseListener; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.border.BevelBorder; + +/** + * + * @author olivier DOSSMANN + */ + /** Interface Homme Machine du Blankuissance 4. + * Classe principale du paquet fr.blankoworld.plateau qui assure l'utilisation complte du jeu + */ +public class IhmPuissance4 extends JFrame { + + private static final long serialVersionUID = 1L; + + /**

    Un nouveau plateau de jeu ?

    */ + private PlateauPuissance4 p4 = new PlateauPuissance4(); + + /**

    Un joueur de base que nous utiliserons dans le programme

    */ + private Joueurs joueur; + + /**

    Nombre de pions dans le jeu

    */ + private int comptePion = 0; + + /** Largeur fenetre */ + int largeurFenetre = 800; + + /** Le champ texte de la barre de statut */ + private JLabel LabelStatut = new JLabel("Veuillez selectionner une action dans le menu."); + /** Le second champ texte de la barre de statut */ + private JLabel LabelInfos = new JLabel("Aucun Joueur"); + + /** Le paneau centre */ + JPanel Panneau_Centre; + + /** Nos degrades de couleur */ + GradientPaint degradeRouge; + GradientPaint degradeJaune; + + /** Y a t il un gagnant au depart ? */ + private boolean aucunGagnant = true; + + /** + * @param args + */ + + private IhmPuissance4(){ + + // Creation du menu Jeu + JMenu MenuJeu = new JMenu("Jeu"); + JMenuItem MenuJeu_Nouveau = new JMenuItem("Nouveau"); + JMenuItem MenuJeu_Quitter = new JMenuItem("Quitter"); + MenuJeu.add(MenuJeu_Nouveau); + MenuJeu.addSeparator(); + MenuJeu.add(MenuJeu_Quitter); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuJeu); + MenuPrincipal.add(MenuAide); + MenuPrincipal.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Panel au centre + Panneau_Centre = new JPanel(); + Panneau_Centre.setBackground(Color.WHITE); + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Creation de la barre de status + JPanel PanneauStatut = new JPanel(); + PanneauStatut.setLayout(new BorderLayout()); + PanneauStatut.add(LabelStatut, BorderLayout.WEST); + PanneauStatut.add(LabelInfos, BorderLayout.EAST); + PanneauStatut.setBorder(new BevelBorder(BevelBorder.RAISED)); + + // Construction de la maquette + this.getContentPane().setLayout(new BorderLayout()); + this.add(PanneauStatut, BorderLayout.SOUTH); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(largeurFenetre,(int) ((largeurFenetre * 3) / 4)); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Blankuissance 4"); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuJeu_Nouveau.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuJeuNouveau(); + } + }); + + // menu Jeu - bouton Quitter + MenuJeu_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuJeuQuitter(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + } + +class BoutonBlanko extends JButton { + + public static final long serialVersionUID = 1L; + + private GradientPaint degrade = new GradientPaint(100,100,Color.WHITE,170, 0,Color.BLACK); + private String couleur = new String("B"); + + public void paintComponent(Graphics g) { + + super.paintComponent(g); + Graphics2D g2 = (Graphics2D) g; + + g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON); + + // Calcuel dynamiquement les informations de taille (pris de JavaDoc) + Dimension size = getSize(); + // diametre + int d; + int x; + int y; + + // On enleve les bordures des boutons + this.setBorderPainted(false); + // puis le fait que lorsque nous cliquons sur le bouton il y ait un carre gris de selection + this.setEnabled(false); + + // Calcul des donnees du cercle fonce + d = (int) ( Math.min(size.width, size.height) * .80 * 1.10); + x = (size.width - d)/2; + y = (size.height - d)/2; + + g2.setColor(new Color(17,53,188)); + g2.fillOval(x ,y ,d ,d); + + // Calcul des donnees du cercle intermediaire + d = (int) ( Math.min(size.width, size.height) * .80 * 1.05); + x = (size.width - d)/2; + y = (size.height - d)/2; + + g2.setColor(Color.BLACK); + g2.fillOval(x ,y ,d ,d); + + // Calcul des donnees du cercle interieur blanc + d = (int) ( Math.min(size.width, size.height) * .80 ); + x = (size.width - d)/2; + y = (size.height - d)/2; + // dessine le cercle blanc + g2.setPaint(degrade); + g2.fillOval(x, y, d, d); + + } + + public boolean setCouleur(String couleurChoisie, GradientPaint gp){ + if(!couleur.equals("R") && !couleur.equals("J")){ + if(couleur.equals("R")){ + this.couleur = "R"; + } + else { + this.couleur = "J"; + } + degrade = gp; + + return true; + } + else { + couleur.equals("B"); + return false; + } + } + } + + /** + *

    Action du bouton Quitter du menu Jeu

    + * + */ + private void menuJeuQuitter(){ + System.exit(0); + } + + /** + *

    Action du bouton Nouveau du menu Jeu

    + * @param args + */ + private void menuJeuNouveau(){ + + // On initialise le plateau de jeu + p4.initialiser(); + + // Creation d'un joueur generique + joueur = new Joueurs("joueur de base", " "); + + // On alterne de joueur, on recupere donc le joueur en cours + joueur = p4.alterneJoueur((Joueurs)p4.getJoueurs().get(1), (Joueurs)p4.getJoueurs().get(2)); + + // On remet le nombre de pions à 0 + comptePion = 0; + + aucunGagnant = true; + + this.remove(Panneau_Centre); + Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(p4.nbreLignes,p4.nbreColonnes)); + for(int i = 0; i < p4.nbreLignes; i++){ + for(int j = 0; j < p4.nbreColonnes; j++){ + BoutonBlanko moi = new BoutonBlanko(); + moi.setBackground(Color.GRAY); + + // menu Fichier - bouton Quitter + moi.addMouseListener(new MouseListener() { + public void mouseClicked(MouseEvent ev) { + actionGrille(ev); + } + public void mouseExited(MouseEvent ev) { + enleveSurbrillance(ev); + } + public void mouseReleased(MouseEvent ev){ + + } + public void mousePressed(MouseEvent ev){ + + } + public void mouseEntered(MouseEvent ev){ + surbrillanceCellule(ev); + } + }); + + Panneau_Centre.add(moi); + } + } + Panneau_Centre.setBorder(new BevelBorder(BevelBorder.RAISED)); + this.add(Panneau_Centre, BorderLayout.CENTER); + + LabelStatut.setText("Selectionnez une colonne puis cliquez dessus."); + + this.validate(); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "Blankuissance4\n\n" + + "Version 0.5\n" + + "Developpe par Blankoworld\n\n", + "A propos de Blankuissance4", + JOptionPane.QUESTION_MESSAGE); + } + + private void actionGrille(MouseEvent ev){ + + boolean resultat; + String couleur; + + // Degrades de couleurs rouges et jaunes + degradeRouge = new GradientPaint(100,100,Color.RED,(int) (this.getHeight() * 0.15), 0,Color.WHITE); + degradeJaune = new GradientPaint(100,100,Color.YELLOW,(int) (this.getHeight() * 0.15), 0,Color.WHITE); + + // Un nouveau bouton pour travailler dessus + BoutonBlanko bb = new BoutonBlanko(); + BoutonBlanko bbModif = new BoutonBlanko(); + + // On recupere le bouton sur lequel nous travaillons + bb = (BoutonBlanko) ev.getSource(); + + // Definition de la colonne dans laquelle nous nous trouvons + int colonne = (int) (bb.getX() / bb.getWidth()) + 1; + // Definition de la ligne ou nous nous trouvons +// int ligne = (int) (bb.getY() / bb.getHeight()) + 1; + // Definition et calcul du numero du pion sur lequel nous venons de cliquez dans le tableau GRAPHIQUE +// int numeroPosAct = ((ligne - 1) * p4.nbreColonnes) + (colonne - 1); + + // On defini la position reelle pour placer notre pion + int PositionColonne = p4.getPosition(colonne - 1); + + if(aucunGagnant && PositionColonne < p4.nbreLignes && comptePion < p4.nbreColonnes * p4.nbreLignes) { + + int numeroPlacement = (((p4.nbreLignes - 1 - PositionColonne) * p4.nbreColonnes) + (colonne - 1)); + +// LabelStatut.setText("Colonne: " + colonne + " Ligne: " + ligne + " Numero: " + +// numeroPosAct + " Position de la colonne: " + PositionColonne + " Numero à placer: " + numeroPlacement); + LabelStatut.setText("Le " + joueur.getNom() + " a jete son pion dans la colonne " + colonne); + + // On veut donner le prochain joueur, le programme etant mal fichu, il faut alterner puis revenir en arriere + p4.setAlternanceJoueur(); + joueur = p4.alterneJoueur((Joueurs)p4.getJoueurs().get(1), (Joueurs)p4.getJoueurs().get(2)); + LabelInfos.setText(joueur.getNom() + ", c'est a vous !"); + p4.setAlternanceJoueur(); + joueur = p4.alterneJoueur((Joueurs)p4.getJoueurs().get(1), (Joueurs)p4.getJoueurs().get(2)); + + bbModif = (BoutonBlanko) Panneau_Centre.getComponent(numeroPlacement); + + if(joueur.donneJeton().getCouleur().equals("R")){ + couleur = "R"; + resultat = bbModif.setCouleur(couleur, degradeRouge); + } + else{ + couleur = "J"; + resultat = bbModif.setCouleur(couleur, degradeJaune); + } + + if(p4.getPosition(colonne - 1) < p4.nbreLignes){ + // On ajoute le pion au tableau du plateau + p4.ajoutPion(colonne - 1, couleur); + +// // Affichage en console de la grille pour verification +// p4.afficherGrille(); + } + + bbModif.repaint(); + if(resultat){ + // On ajoute un pion au nombre de pions utilises + comptePion++; + + // On confirme que le joueur a joue et qu'on change de joueur + p4.setAlternanceJoueur(); + joueur = p4.alterneJoueur((Joueurs)p4.getJoueurs().get(1), (Joueurs)p4.getJoueurs().get(2)); + } + + // Mise a niveau de la colonne vis a vis de la structure Java (commence à 0) + colonne --; + + if(comptePion > 5 && p4.gagnant(colonne, p4.getPosition(colonne) - 1)){ + comptePion = 41; + // On alterne de joueur (oui programme mal fichu !) + p4.setAlternanceJoueur(); + joueur = p4.alterneJoueur((Joueurs)p4.getJoueurs().get(1), (Joueurs)p4.getJoueurs().get(2)); + JOptionPane.showMessageDialog(null, "Le " + joueur.getNom() + " gagne !", "Message", JOptionPane.INFORMATION_MESSAGE); + aucunGagnant = false; + LabelInfos.setText("Aucun joueur"); + LabelStatut.setText("Merci aux participants !"); + } + } + else if(comptePion >= 41){ + LabelStatut.setText("Jeu fini !"); + } + else { + LabelStatut.setText("Vous ne pouvez plus jouer dans cette colonne. Choisissez une autre colonne."); + } + + // Repeinte du champ de texte nomme Statut + LabelStatut.repaint(); + // Idem avec Infos + LabelInfos.repaint(); + } + + public void surbrillanceCellule(MouseEvent ev){ + // Un nouveau bouton pour travailler dessus + BoutonBlanko bb = new BoutonBlanko(); + BoutonBlanko bbModif = new BoutonBlanko(); + + // On recupere le bouton sur lequel nous travaillons + bb = (BoutonBlanko) ev.getSource(); + + // Definition de la colonne dans laquelle nous nous trouvons + int colonne = (int) (bb.getX() / bb.getWidth()) + 1; + + for(int i = 0; i < p4.nbreLignes; i++){ + + int numeroPlacement = (((p4.nbreLignes - 1 - i) * p4.nbreColonnes) + (colonne - 1)); + bbModif = (BoutonBlanko) Panneau_Centre.getComponent(numeroPlacement); + bbModif.setBackground(new Color(213,213,213,125)); + bbModif.repaint(); + } + + LabelInfos.setText(joueur.getNom() + " est sur colonne " + colonne + "."); + + LabelStatut.repaint(); + } + + public void enleveSurbrillance(MouseEvent ev){ + // Un nouveau bouton pour travailler dessus + BoutonBlanko bb = new BoutonBlanko(); + BoutonBlanko bbModif = new BoutonBlanko(); + + // On recupere le bouton sur lequel nous travaillons + bb = (BoutonBlanko) ev.getSource(); + + // Definition de la colonne dans laquelle nous nous trouvons + int colonne = (int) (bb.getX() / bb.getWidth()) + 1; + + for(int i = 0; i < p4.nbreLignes; i++){ + + int numeroPlacement = (((p4.nbreLignes - 1 - i) * p4.nbreColonnes) + (colonne - 1)); + bbModif = (BoutonBlanko) Panneau_Centre.getComponent(numeroPlacement); + bbModif.setBackground(Color.GRAY); + bbModif.repaint(); + } + + } + + public static void main(String[] args) { + // TODO Auto-generated method stub + new IhmPuissance4().setVisible(true); + + } + +} diff --git a/workspace/Puissance4/fr/blankoworld/plateau/Jeton.class b/workspace/Puissance4/fr/blankoworld/plateau/Jeton.class new file mode 100644 index 0000000..39c1bd6 Binary files /dev/null and b/workspace/Puissance4/fr/blankoworld/plateau/Jeton.class differ diff --git a/workspace/Puissance4/fr/blankoworld/plateau/Jeton.java b/workspace/Puissance4/fr/blankoworld/plateau/Jeton.java new file mode 100644 index 0000000..f9cf9a1 --- /dev/null +++ b/workspace/Puissance4/fr/blankoworld/plateau/Jeton.java @@ -0,0 +1,47 @@ +package fr.blankoworld.plateau; + +/** + * + * @author olivier DOSSMANN + * + */ +/** + * Jeton de jeu + */ +public class Jeton { + /**

    Couleur du jeton

    */ + private String couleur; + + /** + * Constructeur de jetons avec couleur prdfinie + * @param colorimetrie + */ + public Jeton(String colorimetrie){ + couleur = colorimetrie; + } + + /** + * Permet de donner une couleur diffrente au jeton + * @return couleur du jeton + */ + public String getCouleur(){ + return couleur; + } + + /** + * Donne une couleur au jeton de type String + * @param clr + */ + public void setCouleur(String clr){ + this.couleur = clr; + } + + /** + * Permet de comparer cd jeton un autre donn en paramtre, au niveau de la couleur + * @param jtn + * @return Vrit tablie entre les couleurs des deux jetons + */ + public boolean estMemeCouleur(Jeton jtn){ + return (jtn.getCouleur().equals(this.couleur)); + } +} diff --git a/workspace/Puissance4/fr/blankoworld/plateau/Joueurs.class b/workspace/Puissance4/fr/blankoworld/plateau/Joueurs.class new file mode 100644 index 0000000..64cc931 Binary files /dev/null and b/workspace/Puissance4/fr/blankoworld/plateau/Joueurs.class differ diff --git a/workspace/Puissance4/fr/blankoworld/plateau/Joueurs.java b/workspace/Puissance4/fr/blankoworld/plateau/Joueurs.java new file mode 100644 index 0000000..cc5fb0c --- /dev/null +++ b/workspace/Puissance4/fr/blankoworld/plateau/Joueurs.java @@ -0,0 +1,34 @@ +package fr.blankoworld.plateau; + +/** + * + * @author olivier DOSSMANN + * + */ +public class Joueurs { + private String nomJoueur; + private Jeton jetonJoueur; + + public int s_nombreJoueurs; + + public Joueurs(String nom, String couleur){ + nomJoueur = nom; + jetonJoueur = new Jeton(couleur); + } + + public String toString(){ + return "Joueur : " + nomJoueur + "\nCouleur : " + this.jetonJoueur.getCouleur(); + } + + public String getNom(){ + return this.nomJoueur; + } + + public void setNom(String nom){ + this.nomJoueur = nom; + } + + public Jeton donneJeton(){ + return this.jetonJoueur; + } +} diff --git a/workspace/Puissance4/fr/blankoworld/plateau/PlateauPuissance4.class b/workspace/Puissance4/fr/blankoworld/plateau/PlateauPuissance4.class new file mode 100644 index 0000000..857d52d Binary files /dev/null and b/workspace/Puissance4/fr/blankoworld/plateau/PlateauPuissance4.class differ diff --git a/workspace/Puissance4/fr/blankoworld/plateau/PlateauPuissance4.java b/workspace/Puissance4/fr/blankoworld/plateau/PlateauPuissance4.java new file mode 100644 index 0000000..6617dd7 --- /dev/null +++ b/workspace/Puissance4/fr/blankoworld/plateau/PlateauPuissance4.java @@ -0,0 +1,313 @@ +package fr.blankoworld.plateau; + +import java.util.Vector; + +/** + * @author Olivier DOSSMANN + * + */ +public class PlateauPuissance4 { + + private Jeton[][] grille; + private int[] positions; + private boolean alternanceJoueur = true; + private Joueurs j1; + private Joueurs j2; + private Joueurs j0; + private Vector CollectionJoueurs; + + public int nbreColonnes = 7; + public int nbreLignes = 6; + +public static void main(String args[]){ +// System.out.println("Bienvenue dans Blankuissance4, le nouveau jeu fecal de puissance 4 !"); + + // Instanciation de l'objet a partir de la classe PlateauPuissance4 + PlateauPuissance4 p4 = new PlateauPuissance4(); + + p4.lancer(); +} + + public void initialiser() + { + // Initialisation des joueurs + j1 = new Joueurs("Joueur Un", "R"); + j2 = new Joueurs("Joueur Deux", "J"); + j0 = new Joueurs("Joueur inexistant", " "); + + // On remplit la collection de joueurs + CollectionJoueurs = new Vector(); + CollectionJoueurs.add(j0); + CollectionJoueurs.add(j1); + CollectionJoueurs.add(j2); + + // Creation de la grille + grille = new Jeton[nbreColonnes][nbreLignes]; + + // Creation tu tableau de positionnement + positions = new int[7]; + + // Initialisation du tableau + for (int i = 0; i < nbreColonnes; i++){ + for(int j = 0; j < nbreLignes; j++){ + grille[i][j] = j0.donneJeton(); + } + } + + // Initialisation des positions + for (int i = 0; i < nbreColonnes; i++){ + positions[i] = 0; + } + } + + public void reinitialiser(){ + lancer(); + } + + public void afficherGrille(){ + for (int i = nbreLignes - 1; i >= 0; i--){ + for(int j = 0; j < nbreColonnes; j++){ + System.out.print(grille[j][i].getCouleur() + "|"); + } + System.out.print("\n"); + } + for (int k = 0; k < nbreColonnes; k++){ + System.out.print("--"); + } + System.out.print("\n"); + + for (int l = 0; l < nbreColonnes; l++){ + System.out.print(Integer.toString(l + 1) + "|"); + } + System.out.print("\n"); + } + + public void lancer(){ + System.out.println("Lancement du jeu de plateau"); + + // Initialisation du plateau + this.initialiser(); + + // Affichage du plateau pour verification + this.afficherGrille(); + + // Creation d'une aide pour les entrees de l'utilisateur + AideSaisie aide = new AideSaisie(); + + // Affichage des joueurs + System.out.println("Affichage des deux joueurs : "); + System.out.println(" - " + j1.toString() + "."); + System.out.println(" - " + j2.toString() + "."); + + // Creation d'un joueur generique + Joueurs joueur = new Joueurs("joueur de base", " "); + + // Numero de colonne choisi + int colonne = 0; + + // incrementeur de jetons + int i = 0; + + // Contrele d'entree de boucle + boolean aGagne = false; + + while (aGagne == false && i < (nbreColonnes * nbreLignes)) + { + + // Methode pour alterner de joueur : entre le joueur Un et le joueur Deux + joueur = alterneJoueur(j1,j2); + + boolean ok = true; + // Recuperation de la proposition de colonne de l'utilisateur + while(ok){ + String proposition = aide.getEntreeUtilisateur("Colonne (entre 1 et " + nbreColonnes + ") : "); + System.out.println("Colonne choisie par " + joueur.getNom() + " : " + proposition); + + // Traduction en entier du numero de colonne + if (proposition == null){ + colonne = nbreColonnes; + } + else{ + colonne = Integer.parseInt(proposition); + + // Mise a niveau de la colonne vis a vis de la structure Java + colonne --; + } + + // Verification que la colonne n'est pas pleine ou hors limite + if (colonne > nbreColonnes - 1 || colonne < 0){ + ok = true; + System.out.println("Hors limites !"); + } + else if (!grille[colonne][5].getCouleur().equals(" ")){ + ok = true; + System.out.println("Colonne a ras bord !"); + } + else{ + ok = false; + System.out.println("Longueur du tableau : " + grille[colonne].length); + + // Si colonne pas pleine, verifier a quel position les pions precedents sont poses + // Si aucun pion, alors poser tout en bas + + this.ajoutPion(colonne, joueur.donneJeton().getCouleur()); + this.afficherGrille(); + } + } + + // Il faut minimum 7 pions poses, avant de savoir si le joueur a gagne ou pas + // Comme nous commencons a 0 l'incr�menteur (7 - 1 = 6), et que le jeton actuel + // n'est pas encore compte (6 - 1 = 5), + // alors on met la valeur a 5. C'est a dire que nous aurons deja i a 7 au minimum quand on fera + // ce test, et que nous serons dans le cas du 8i�me jeton. + if (i > 5){ + + // Verification si le joueur gagne + // On decremente de 1 positions[colonne] car nous y avons ajoute 1 pour le pion suivant + aGagne = gagnant(colonne, positions[colonne] - 1); + } + + // Instanciation de i pour confirmer que le coup est lance + i++; + // Idem mais alternance du joueur + alternanceJoueur = !alternanceJoueur; + System.out.println("Coup numero " + i + " joue !"); + System.out.print("\n"); + } + + if (i < (nbreColonnes * nbreLignes)){ + System.out.println(joueur.getNom() + " a gagne !"); + System.out.println("Merci au joueur de l'autre equipe d'avoir participe."); + } + else{ + System.out.println("Jeu termine, aucun gagnant !"); + System.out.println("Merci d'avoir joue."); + } + } + + public Joueurs alterneJoueur(Joueurs jUn, Joueurs jDeux){ + + if (alternanceJoueur){ + return jUn; + } + else{ + return jDeux; + } + } + + public void ajoutPion(int positionColonne, String couleur){ + Jeton nouveauPion = new Jeton(couleur); + int positionJeton = positions[positionColonne]; + + grille[positionColonne][positionJeton] = nouveauPion; + positions[positionColonne] ++; + } + + public boolean gagnant(int colonneChoisie, int positionPion){ + + // Entier qui permet de definir le nombre de puissance 4 effectues + int puissance4 = 1; + + puissance4 = estAligne(2,0,colonneChoisie,positionPion) + estAligne(1,0,colonneChoisie,positionPion) + 1; + if( puissance4 < 4){ + //System.out.println(puissance4); + puissance4 = estAligne(0,2,colonneChoisie,positionPion) + estAligne(0,1,colonneChoisie,positionPion) + 1; + if(puissance4 < 4){ + //System.out.println(puissance4); + puissance4 = estAligne(2,2,colonneChoisie,positionPion) + estAligne(1,1,colonneChoisie,positionPion) + 1; + if(puissance4 < 4){ + //System.out.println(puissance4); + puissance4 = estAligne(1,2,colonneChoisie,positionPion) + estAligne(2,1,colonneChoisie,positionPion) + 1; + if(puissance4 < 4){ + //System.out.println(puissance4); + return false; + } + else return true; + } + else return true; + } + else return true; + } + else return true; + } + + public int estAligne(int X, int Y, int colonneChoisie, int positionPion){ + int puissance4 = 0; + boolean ok = true; + int colonneTestee = colonneChoisie, ligneTestee = positionPion; + + // Verification à l'écran que nous nous trouvons au bon endroit + //System.out.println("X: " + X + " Y: " + Y + " Colonne choisie: " + colonneChoisie + " Position choisie: " + positionPion); + + if(Y == 1){ + colonneTestee++; + } + else if(Y == 2){ + colonneTestee--; + } + else{ + // Rien + } + if(X == 1){ + ligneTestee++; + } + else if(X == 2){ + ligneTestee--; + } + else{ + // Rien + } + + if(colonneTestee < 0 || colonneTestee > nbreColonnes - 1){ + ok = false; + } + if(ligneTestee < 0 || ligneTestee > nbreLignes - 1){ + ok = false; + } + + //System.out.println("Debut des tests : " + ligneTestee); + while(ok == true && grille[colonneTestee][ligneTestee].getCouleur().equals(grille[colonneChoisie][positionPion].getCouleur())){ + puissance4++; + if(Y == 1){ + colonneTestee++; + } + else if(Y == 2){ + colonneTestee--; + } + else{ + // Rien + } + if(X == 1){ + ligneTestee++; + } + else if(X == 2){ + ligneTestee--; + } + else{ + // Rien + } + //System.out.println("Colonne : " + colonneTestee + ". Ligne : " + ligneTestee); + if(colonneTestee < 0 || colonneTestee > nbreColonnes - 1){ + ok = false; + } + if(ligneTestee < 0 || ligneTestee > nbreLignes - 1){ + ok = false; + } + } + + return puissance4; + } + + public int getPosition(int colonne) + { + return positions[colonne]; + } + + public Vector getJoueurs(){ + return CollectionJoueurs; + } + + public void setAlternanceJoueur(){ + alternanceJoueur = !alternanceJoueur; + } +} diff --git a/workspace/Puissance4/puissance4.manifest b/workspace/Puissance4/puissance4.manifest new file mode 100644 index 0000000..e5502a6 --- /dev/null +++ b/workspace/Puissance4/puissance4.manifest @@ -0,0 +1,4 @@ +Manifest-Version: 1.0 +Sealed: true +Main-Class: fr.blankoworld.plateau.IhmPuissance4 + diff --git a/workspace/Puissance4/test/Principale.class b/workspace/Puissance4/test/Principale.class new file mode 100644 index 0000000..1ec2958 Binary files /dev/null and b/workspace/Puissance4/test/Principale.class differ diff --git a/workspace/Puissance4/test/Principale.java b/workspace/Puissance4/test/Principale.java new file mode 100644 index 0000000..74e4163 --- /dev/null +++ b/workspace/Puissance4/test/Principale.java @@ -0,0 +1,51 @@ +package test; + +import java.util.*; + +public class Principale { + + private Vector l1 = new Vector(6); + private Vector l2 = new Vector(6); + private Vector l3 = new Vector(6); + private Vector l4 = new Vector(6); + private Vector l5 = new Vector(6); + private Vector l6 = new Vector(6); + private Vector l7 = new Vector(6); + + private void afficheJeu() + { + System.out.print(l7+"\n"); + System.out.print(l6+"\n"); + System.out.print(l5+"\n"); + System.out.print(l4+"\n"); + System.out.print(l3+"\n"); + System.out.print(l2+"\n"); + System.out.print(l1); + } + + private void initJeu() + { + for(int i=0; i<14; i++) //14 car caractere cod sur 2 octets + { + l1.add("1"); + l2.add("2"); + l3.add("3"); + l4.add("4"); + l5.add("5"); + l6.add("6"); + l7.add("7"); + + i++; + } + + l1.set(3, "X"); + } + + public static void main(String[] args){ + Principale p4 = new Principale(); + + p4.initJeu(); + p4.afficheJeu(); + } +} + diff --git a/workspace/Puissance4/test/VadrouilleGrille.class b/workspace/Puissance4/test/VadrouilleGrille.class new file mode 100644 index 0000000..f09f564 Binary files /dev/null and b/workspace/Puissance4/test/VadrouilleGrille.class differ diff --git a/workspace/Puissance4/test/VadrouilleGrille.java b/workspace/Puissance4/test/VadrouilleGrille.java new file mode 100644 index 0000000..c42da6a --- /dev/null +++ b/workspace/Puissance4/test/VadrouilleGrille.java @@ -0,0 +1,70 @@ +package test; + +/** + * @author Olivier DOSSMANN + * + */ +public class VadrouilleGrille { + + private int[][] grille; + private int[] positions; + private int nbreColonnes = 7; + private int nbreLignes = 6; + +public static void main(String args[]){ + // Instructions de lancement + +} + + public void initialiser() + { + int nbr; + // Cration de la grille + grille = new int[nbreColonnes][nbreLignes]; + + // Cration tu tableau de positionnement + positions = new int[7]; + + // Initialisation du tableau + for (int i = 0; i < nbreColonnes; i++){ + for(int j = 0; j < nbreLignes; j++){ + nbr = (int)Math.random()*3; + grille[i][j] = nbr; + } + } + + // Initialisation des positions + for (int i = 0; i < nbreColonnes; i++){ + positions[i] = 0; + } +// // Test +// grille[4][5] = j1.donneJeton(); + } + + public void reinitialiser(){ + lancer(); + } + + public void afficherGrille(){ + for (int i = nbreLignes - 1; i >= 0; i--){ + for(int j = 0; j < nbreColonnes; j++){ + System.out.print(grille[j][i] + "|"); + //System.out.print(j + "/" + i + "|"); + } + System.out.print("\n"); + } + System.out.println("--------------"); + System.out.println("1|2|3|4|5|6|7|"); + } + + public void lancer(){ + System.out.println("Lancement du jeu de plateau"); + + // Initialisation du plateau + this.initialiser(); + + // Affichage du plateau pour vrification + this.afficherGrille(); + + } +} diff --git a/workspace/ROOT/.classpath b/workspace/ROOT/.classpath new file mode 100644 index 0000000..233be1d --- /dev/null +++ b/workspace/ROOT/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/workspace/ROOT/.project b/workspace/ROOT/.project new file mode 100644 index 0000000..87a3dc5 --- /dev/null +++ b/workspace/ROOT/.project @@ -0,0 +1,17 @@ + + + ROOT + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/workspace/ROOT/Article.class b/workspace/ROOT/Article.class new file mode 100644 index 0000000..989d24d Binary files /dev/null and b/workspace/ROOT/Article.class differ diff --git a/workspace/ROOT/Article.java b/workspace/ROOT/Article.java new file mode 100644 index 0000000..eef381f --- /dev/null +++ b/workspace/ROOT/Article.java @@ -0,0 +1,78 @@ +public class Article +{ + private String ref = ""; + private String categ = ""; + private String marque = ""; + private String modele = ""; + private double prix = 0; + private String photo = ""; + private String description = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + public String getCateg() + { + return this.categ; + } + public String getMarque() + { + return this.marque; + } + public String getModele() + { + return this.modele; + } + public double getPrix() + { + return this.prix; + } + public String getPhoto() + { + return this.photo; + } + public String getDescription() + { + return this.description; + } + + public void setRef(String ref) + { + this.ref = ref; + } + public void setCateg(String categ) + { + this.categ = categ; + } + public void setMarque(String marque) + { + this.marque = marque; + } + public void setModele(String modele) + { + this.modele = modele; + } + public void setPrix(double prix) + { + this.prix = prix; + } + public void setPhoto(String photo) + { + this.photo = photo; + } + public void setDescription(String description) + { + this.description = description; + } + + public int getQuantite() + { + return this.quantite; + } + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/workspace/ROOT/ArticlePanier.class b/workspace/ROOT/ArticlePanier.class new file mode 100644 index 0000000..509be06 Binary files /dev/null and b/workspace/ROOT/ArticlePanier.class differ diff --git a/workspace/ROOT/ArticlePanier.java b/workspace/ROOT/ArticlePanier.java new file mode 100644 index 0000000..6e68ca0 --- /dev/null +++ b/workspace/ROOT/ArticlePanier.java @@ -0,0 +1,25 @@ +public class ArticlePanier +{ + private String ref = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + + public void setRef(String ref) + { + this.ref = ref; + } + + public int getQuantite() + { + return this.quantite; + } + + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/workspace/ROOT/ArticlesTag.class b/workspace/ROOT/ArticlesTag.class new file mode 100644 index 0000000..c1482e2 Binary files /dev/null and b/workspace/ROOT/ArticlesTag.class differ diff --git a/workspace/ROOT/ArticlesTag.java b/workspace/ROOT/ArticlesTag.java new file mode 100644 index 0000000..5f34425 --- /dev/null +++ b/workspace/ROOT/ArticlesTag.java @@ -0,0 +1,35 @@ +import javax.servlet.jsp.JspException; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import java.io.IOException; +import java.util.Vector; +import com.articles.Article; + +public class ArticlesTag + extends SimpleTagSupport +{ + private String var; + + public void doTag() + throws JspException, IOException + { + Vector
    vArts = (Vector
    )getJspContext().getAttribute("articles"); + + if (vArts == null) + { + getJspContext().setAttribute(this.var, new Article() ); + getJspBody().invoke(null); + return; + } + + for (int i=0; i vs_erreurs = null; + private Vector vs_anomalies = null; + + + public GestionConnexion() + throws ClassNotFoundException, Exception + { + + this.statement = null; + this.resultSet = null; + this.requeteSQL = ""; + + this.paramsConn = new ParametresConnexion(); + + this.vs_erreurs = new Vector(); + this.vs_anomalies = new Vector(); + + try + { + Class.forName(ParametresConnexion.CLASSE).newInstance(); + } + catch (ClassNotFoundException ex) + { + throw ex; + } + catch (Exception ex) + { + throw ex; + } + } + + + public void ouvrir(ParametresConnexion params) + { + if (params == null) + throw new NullPointerException(); + + this.paramsConn.CopierDepuis(params); + + this.ouvrir(); + } + + public void ouvrir() + { + try + { + this.fermerConnexion(); + + this.connection = DriverManager.getConnection(this.paramsConn.getUrl(), + this.paramsConn.Utilisateur, this.paramsConn.Pwd); + + this.traiterWarning(this.connection.getWarnings()); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerConnexion(); + } + } + + public boolean estOuverte() + { + boolean bOuverte = false; + + try + { + if (this.connection != null) + bOuverte = !this.connection.isClosed(); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return bOuverte; + } + + public void fermerRessourcesRequete() + { + try + { + if (this.resultSet != null) + { + this.resultSet.close(); + this.resultSet = null; + } + + if (this.statement != null) + { + this.statement.close(); + this.statement = null; + } + + this.requeteSQL = ""; + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public void fermerConnexion() + { + try + { + this.fermerRessourcesRequete(); + + if (this.connection != null) + { + this.connection.close(); + this.connection = null; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public boolean lancerRequeteSelection(String query) + { + boolean res = true; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + this.traiterWarning(this.statement.getWarnings()); + + this.resultSet = this.statement.executeQuery(query); + this.traiterWarning(this.resultSet.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = false; + } + + return res; + } + + public int lancerRequeteModifBDD(String query) + { + int res = 0; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + + res = this.statement.executeUpdate(query); + this.traiterWarning(this.statement.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = -1; + } + + return res; + } + + public ParametresConnexion getParametresConnexion() + { + return new ParametresConnexion(this.paramsConn); + } + + public String getRequeteSQL() + { + return this.requeteSQL; + } + + public Vector getInfosConnexion() + { + Vector vs_infosConn = new Vector(); + DatabaseMetaData dmd; + + try + { + if (this.estOuverte()) + { + vs_infosConn.add("Etat de la connexion : ouverte"); + vs_infosConn.add("------------------------------"); + + dmd = this.connection.getMetaData(); + + vs_infosConn.add("Connexion : " + dmd.getURL()); + vs_infosConn.add("Driver : " + dmd.getDriverName()); + vs_infosConn.add("Version : " + dmd.getDriverVersion()); + } + else + { + vs_infosConn.add("Etat de la connexion : ferm�e"); + vs_infosConn.add("------------------------------"); + + vs_infosConn.add("Connexion : " + this.paramsConn.getUrl()); + vs_infosConn.add("Utilisateur : " + this.paramsConn.Utilisateur); + vs_infosConn.add("Mot de passe : " + this.paramsConn.Pwd.length() + " caract�re(s)"); + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_infosConn; + } + + public Vector getNomsColonnes() + { + Vector vs_cols = new Vector(); + ResultSetMetaData rsmd; + + try + { + if (this.resultSet != null) + { + rsmd = this.resultSet.getMetaData(); + int nbrCols = rsmd.getColumnCount(); + + for (int idCol = 1; idCol <= nbrCols; idCol++) + if (rsmd.isSearchable(idCol)) + vs_cols.add(rsmd.getColumnName(idCol)); + } + else if (this.statement == null) + this.vs_anomalies.add("Vous n'avez pas encore lanc� la requ�te!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_cols; + } + + public Vector> getDataVector() + { + Vector> v_datas = new Vector>(); + ResultSetMetaData rsmd; + + try + { + rsmd = this.resultSet.getMetaData(); + if (rsmd.getColumnCount() > 0) + { + while (this.resultSet.next()) + { + Vector vo_ligne = new Vector(); + for (int idCol = 1; idCol <= rsmd.getColumnCount(); idCol++) + vo_ligne.add(this.resultSet.getObject(idCol)); + v_datas.add(vo_ligne); + } + } + + if (v_datas.isEmpty()) + this.vs_anomalies.add("Aucune donn�e trouv�e!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return v_datas; + } + + public void traiterSQLException(SQLException ex) + { + String str_ex; + + str_ex = "********* SQLException *********\n"; + while (ex != null) + { + str_ex = "SQLState : " + ex.getSQLState() + "\n"; + str_ex += "Message : " + ex.getMessage() + "\n"; + str_ex += "------------------------------\n"; + this.vs_erreurs.add(str_ex); + + ex = ex.getNextException(); + } + } + + public void traiterWarning(SQLWarning warn) + { + String str_an; + + str_an = "********* SQLWarning *********\n"; + while (warn != null) + { + str_an = "SQLState : " + warn.getSQLState() + "\n"; + str_an += "Message : " + warn.getMessage() + "\n"; + str_an += "------------------------------\n"; + this.vs_anomalies.add(str_an); + + warn = warn.getNextWarning(); + } + } + + public Vector getErreurs() + { + return new Vector(this.vs_erreurs); + } + + public Vector getAnomalies() + { + return new Vector(this.vs_anomalies); + } + + public void effaceErreurs() + { + this.vs_erreurs.clear(); + } + + public void effaceAnomalies() + { + this.vs_anomalies.clear(); + } +} diff --git a/workspace/ROOT/ListeArticles.class b/workspace/ROOT/ListeArticles.class new file mode 100644 index 0000000..86f6c56 Binary files /dev/null and b/workspace/ROOT/ListeArticles.class differ diff --git a/workspace/ROOT/ListeArticles.java b/workspace/ROOT/ListeArticles.java new file mode 100644 index 0000000..70de912 --- /dev/null +++ b/workspace/ROOT/ListeArticles.java @@ -0,0 +1,84 @@ +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class ListeArticles + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + String sAction; + String sInfoArtRef; + String sPageAffichage; + Vector
    vArts = new Vector
    (); + Article tmpArt = null; + + sAction = request.getParameter("action"); + if (sAction.equals("info")) + { + sInfoArtRef = request.getParameter("artRef"); + + tmpArt = new Article(); + tmpArt.setRef(sInfoArtRef); + + request.setAttribute("art", tmpArt); + sPageAffichage = "/infos.jsp"; + } + else + { + for (int i=0; i<5; i++) + { + tmpArt = new Article(); + tmpArt.setRef("refArt"+i); + tmpArt.setCateg("cat"+i); + tmpArt.setDescription("desc"+1); + vArts.add(tmpArt); + } + + if (!vArts.isEmpty()) + { + request.setAttribute("articles", vArts); + + sPageAffichage = "/listeArticles.jsp"; + } + else + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur("Articles non disponibles")); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + } + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + public String getServletInfo() { + return "Gestion du panier"; + } +} diff --git a/workspace/ROOT/META-INF/MANIFEST.MF b/workspace/ROOT/META-INF/MANIFEST.MF new file mode 100644 index 0000000..3d91273 --- /dev/null +++ b/workspace/ROOT/META-INF/MANIFEST.MF @@ -0,0 +1,4 @@ +Manifest-Version: 1.0 +Ant-Version: Apache Ant 1.6.5 +Created-By: 1.5.0_06-b05 (Sun Microsystems Inc.) + diff --git a/workspace/ROOT/MesHaricots/utilisateur.class b/workspace/ROOT/MesHaricots/utilisateur.class new file mode 100644 index 0000000..b823954 Binary files /dev/null and b/workspace/ROOT/MesHaricots/utilisateur.class differ diff --git a/workspace/ROOT/MesHaricots/utilisateur.java b/workspace/ROOT/MesHaricots/utilisateur.java new file mode 100644 index 0000000..f505425 --- /dev/null +++ b/workspace/ROOT/MesHaricots/utilisateur.java @@ -0,0 +1,18 @@ +package MesHaricots; + +public class utilisateur { + + private String identifiant; + + public utilisateur() { + } + + + public String getId() { + return identifiant; + } + + public void setId(String id) { + this.identifiant = id; + } +} diff --git a/workspace/ROOT/Panier.class b/workspace/ROOT/Panier.class new file mode 100644 index 0000000..13ab66e Binary files /dev/null and b/workspace/ROOT/Panier.class differ diff --git a/workspace/ROOT/Panier.java b/workspace/ROOT/Panier.java new file mode 100644 index 0000000..dfcbfa4 --- /dev/null +++ b/workspace/ROOT/Panier.java @@ -0,0 +1,93 @@ +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.lang.*; +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class Panier + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + HttpSession session = request.getSession(true); + Vector vArtsPan = null; + Vector
    vArts = new Vector
    (); + Article tmpArt = null; + String sAction; + String sPageAffichage; + + GestionnairePanier panier = (GestionnairePanier)session.getAttribute("caddy"); + if ( panier == null ) + { + panier = new GestionnairePanier(); + + session.setAttribute("caddy", panier) ; + } + + sAction = request.getParameter("action"); + if (sAction == null) + { + ; + } + else if (sAction.equals("add")) + { + panier.ajouterAchat(request.getParameter("artRef"), Integer.parseInt(request.getParameter("artQuant"))); + } + else if (sAction.equals("del")) + { + panier.enleverAchat(request.getParameter("artRef")); + } + + vArtsPan = panier.donneContenu(); + + for (int i=0; i + + + + + @(#)jsp_2_0.xsds 1.17 03/18/03 + + + + + + + Copyright 2002 Sun Microsystems, Inc., 901 San Antonio + Road, Palo Alto, California 94303, U.S.A. All rights + reserved. + + Sun Microsystems, Inc. has intellectual property rights + relating to technology described in this document. In + particular, and without limitation, these intellectual + property rights may include one or more of the U.S. patents + listed at http://www.sun.com/patents and one or more + additional patents or pending patent applications in the + U.S. and other countries. + + This document and the technology which it describes are + distributed under licenses restricting their use, copying, + distribution, and decompilation. No part of this document + may be reproduced in any form by any means without prior + written authorization of Sun and its licensors, if any. + + Third-party software, including font technology, is + copyrighted and licensed from Sun suppliers. + + Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE, + JavaServer Pages, Enterprise JavaBeans and the Java Coffee + Cup logo are trademarks or registered trademarks of Sun + Microsystems, Inc. in the U.S. and other countries. + + Federal Acquisitions: Commercial Software - Government Users + Subject to Standard License Terms and Conditions. + + + + + + + + This is the XML Schema for the JSP 2.0 deployment descriptor + types. The JSP 2.0 schema contains all the special + structures and datatypes that are necessary to use JSP files + from a web application. + + The contents of this schema is used by the web-app_2_4.xsd + file to define JSP specific content. + + + + + + + + The following conventions apply to all J2EE + deployment descriptor elements unless indicated otherwise. + + - In elements that specify a pathname to a file within the + same JAR file, relative filenames (i.e., those not + starting with "/") are considered relative to the root of + the JAR file's namespace. Absolute filenames (i.e., those + starting with "/") also specify names in the root of the + JAR file's namespace. In general, relative names are + preferred. The exception is .war files where absolute + names are preferred for consistency with the Servlet API. + + + + + + + + + + + + + + The jsp-configType is used to provide global configuration + information for the JSP files in a web application. It has + two subelements, taglib and jsp-property-group. + + + + + + + + + + + + + + + + + + The jsp-file element contains the full path to a JSP file + within the web application beginning with a `/'. + + + + + + + + + + + + + + + + The jsp-property-groupType is used to group a number of + files so they can be given global property information. + All files so described are deemed to be JSP files. The + following additional properties can be described: + + - Control whether EL is ignored + - Control whether scripting elements are invalid + - Indicate pageEncoding information. + - Indicate that a resource is a JSP document (XML) + - Prelude and Coda automatic includes. + + + + + + + + + + + + Can be used to easily set the isELIgnored + property of a group of JSP pages. By default, the + EL evaluation is enabled for Web Applications using + a Servlet 2.4 or greater web.xml, and disabled + otherwise. + + + + + + + + + The valid values of page-encoding are those of the + pageEncoding page directive. It is a + translation-time error to name different encodings + in the pageEncoding attribute of the page directive + of a JSP page and in a JSP configuration element + matching the page. It is also a translation-time + error to name different encodings in the prolog + or text declaration of a document in XML syntax and + in a JSP configuration element matching the document. + It is legal to name the same encoding through + mulitple mechanisms. + + + + + + + + + Can be used to easily disable scripting in a + group of JSP pages. By default, scripting is + enabled. + + + + + + + + + If true, denotes that the group of resources + that match the URL pattern are JSP documents, + and thus must be interpreted as XML documents. + If false, the resources are assumed to not + be JSP documents, unless there is another + property group that indicates otherwise. + + + + + + + + + The include-prelude element is a context-relative + path that must correspond to an element in the + Web Application. When the element is present, + the given path will be automatically included (as + in an include directive) at the beginning of each + JSP page in this jsp-property-group. + + + + + + + + + The include-coda element is a context-relative + path that must correspond to an element in the + Web Application. When the element is present, + the given path will be automatically included (as + in an include directive) at the end of each + JSP page in this jsp-property-group. + + + + + + + + + + + + + + + The taglibType defines the syntax for declaring in + the deployment descriptor that a tag library is + available to the application. This can be done + to override implicit map entries from TLD files and + from the container. + + + + + + + + + + A taglib-uri element describes a URI identifying a + tag library used in the web application. The body + of the taglib-uri element may be either an + absolute URI specification, or a relative URI. + There should be no entries in web.xml with the + same taglib-uri value. + + + + + + + + + + the taglib-location element contains the location + (as a resource relative to the root of the web + application) where to find the Tag Library + Description file for the tag library. + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/jsp/resources/jsp_2_1.xsd b/workspace/ROOT/javax/servlet/jsp/resources/jsp_2_1.xsd new file mode 100644 index 0000000..10771e7 --- /dev/null +++ b/workspace/ROOT/javax/servlet/jsp/resources/jsp_2_1.xsd @@ -0,0 +1,359 @@ + + + + + + + @(#)jsp_2_1.xsds 1.5 08/11/05 + + + + + + + Copyright 2003-2005 Sun Microsystems, Inc. + 4150 Network Circle + Santa Clara, California 95054 + U.S.A + All rights reserved. + + Sun Microsystems, Inc. has intellectual property rights + relating to technology described in this document. In + particular, and without limitation, these intellectual + property rights may include one or more of the U.S. patents + listed at http://www.sun.com/patents and one or more + additional patents or pending patent applications in the + U.S. and other countries. + + This document and the technology which it describes are + distributed under licenses restricting their use, copying, + distribution, and decompilation. No part of this document + may be reproduced in any form by any means without prior + written authorization of Sun and its licensors, if any. + + Third-party software, including font technology, is + copyrighted and licensed from Sun suppliers. + + Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE, + JavaServer Pages, Enterprise JavaBeans and the Java Coffee + Cup logo are trademarks or registered trademarks of Sun + Microsystems, Inc. in the U.S. and other countries. + + Federal Acquisitions: Commercial Software - Government Users + Subject to Standard License Terms and Conditions. + + + + + + + + This is the XML Schema for the JSP 2.1 deployment descriptor + types. The JSP 2.1 schema contains all the special + structures and datatypes that are necessary to use JSP files + from a web application. + + The contents of this schema is used by the web-app_2_5.xsd + file to define JSP specific content. + + + + + + + + The following conventions apply to all Java EE + deployment descriptor elements unless indicated otherwise. + + - In elements that specify a pathname to a file within the + same JAR file, relative filenames (i.e., those not + starting with "/") are considered relative to the root of + the JAR file's namespace. Absolute filenames (i.e., those + starting with "/") also specify names in the root of the + JAR file's namespace. In general, relative names are + preferred. The exception is .war files where absolute + names are preferred for consistency with the Servlet API. + + + + + + + + + + + + + + The jsp-configType is used to provide global configuration + information for the JSP files in a web application. It has + two subelements, taglib and jsp-property-group. + + + + + + + + + + + + + + + + + + The jsp-file element contains the full path to a JSP file + within the web application beginning with a `/'. + + + + + + + + + + + + + + + + The jsp-property-groupType is used to group a number of + files so they can be given global property information. + All files so described are deemed to be JSP files. The + following additional properties can be described: + + - Control whether EL is ignored. + - Control whether scripting elements are invalid. + - Indicate pageEncoding information. + - Indicate that a resource is a JSP document (XML). + - Prelude and Coda automatic includes. + - Control whether the character sequence #{ is allowed + when used as a String literal. + - Control whether template text containing only + whitespaces must be removed from the response output. + + + + + + + + + + + + Can be used to easily set the isELIgnored + property of a group of JSP pages. By default, the + EL evaluation is enabled for Web Applications using + a Servlet 2.4 or greater web.xml, and disabled + otherwise. + + + + + + + + + The valid values of page-encoding are those of the + pageEncoding page directive. It is a + translation-time error to name different encodings + in the pageEncoding attribute of the page directive + of a JSP page and in a JSP configuration element + matching the page. It is also a translation-time + error to name different encodings in the prolog + or text declaration of a document in XML syntax and + in a JSP configuration element matching the document. + It is legal to name the same encoding through + mulitple mechanisms. + + + + + + + + + Can be used to easily disable scripting in a + group of JSP pages. By default, scripting is + enabled. + + + + + + + + + If true, denotes that the group of resources + that match the URL pattern are JSP documents, + and thus must be interpreted as XML documents. + If false, the resources are assumed to not + be JSP documents, unless there is another + property group that indicates otherwise. + + + + + + + + + The include-prelude element is a context-relative + path that must correspond to an element in the + Web Application. When the element is present, + the given path will be automatically included (as + in an include directive) at the beginning of each + JSP page in this jsp-property-group. + + + + + + + + + The include-coda element is a context-relative + path that must correspond to an element in the + Web Application. When the element is present, + the given path will be automatically included (as + in an include directive) at the end of each + JSP page in this jsp-property-group. + + + + + + + + + The character sequence #{ is reserved for EL expressions. + Consequently, a translation error occurs if the #{ + character sequence is used as a String literal, unless + this element is enabled (true). Disabled (false) by + default. + + + + + + + + + Indicates that template text containing only whitespaces + must be removed from the response output. It has no + effect on JSP documents (XML syntax). Disabled (false) + by default. + + + + + + + + + + + + + + + The taglibType defines the syntax for declaring in + the deployment descriptor that a tag library is + available to the application. This can be done + to override implicit map entries from TLD files and + from the container. + + + + + + + + + + A taglib-uri element describes a URI identifying a + tag library used in the web application. The body + of the taglib-uri element may be either an + absolute URI specification, or a relative URI. + There should be no entries in web.xml with the + same taglib-uri value. + + + + + + + + + + the taglib-location element contains the location + (as a resource relative to the root of the web + application) where to find the Tag Library + Description file for the tag library. + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/jsp/resources/jspxml.dtd b/workspace/ROOT/javax/servlet/jsp/resources/jspxml.dtd new file mode 100644 index 0000000..7bd0339 --- /dev/null +++ b/workspace/ROOT/javax/servlet/jsp/resources/jspxml.dtd @@ -0,0 +1,190 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/jsp/resources/jspxml.xsd b/workspace/ROOT/javax/servlet/jsp/resources/jspxml.xsd new file mode 100644 index 0000000..76d116e --- /dev/null +++ b/workspace/ROOT/javax/servlet/jsp/resources/jspxml.xsd @@ -0,0 +1,514 @@ + + + + + + + + + + + + + + + + +]> + + + + + + + + + XML Schema for JSP 2.0. + + This schema is based upon the recent (May 5th, 2001) + W3C recommendation for XML Schema. + + A JSP translator should reject an XML-format file that is + not strictly valid according to this schema or does not observe + the constraints documented here. A translator is not required + to use this schema for validation or to use a validating parser. + + + + + + + + + + Body defines the "top-level" elements in root and beanInfo. + There are probably other elements that should use it. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A request-time expression value + + + + + + + + + + + Bool would be boolean except it does not accept 1 and 0. + + + + + + + + + + + + + + Identifier is an unqualified Java identifier. + + + + + + + + + + + TypeName is one or more Java identifiers separated by dots + with no whitespace. + + + + + + + + + + + ImportList is one or more typeNames separated by commas. + Whitespace is allowed before and after the comma. + + + + + + + + + + + SetProp is an Identifier or *. + + + + + + + + + + + RelativeURL is a uriReference with no colon character + before the first /, ? or #, if any (RFC2396). + + + + + + + + + + + + + + + Length is nn or nn%. + + + + + + + + + + + + Buffer Size with an explicit value + + + + + + + + + + + Buffer Size with a "none" value + + + + + + + + + + + Buffer size is xkb or none. + + + + + + + + + Content type and character encoding for this page. + + + + + + + + + + + Page Encoding for this page. + + + + + + + + + + + valid scope values + + + + + + + + + + + + + + valid values for a plugin type + + + + + + + + + + + + Buffer size is xkb. + + + + + + + + + + + + + + + + + The root element of all JSP documents is named root. + + Authors may, if they wish, include schema location information. + If specified, the information may appear as attributes of + the root element as follows: + + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://java.sun.com/JSP/Page xsd-file-location" + + Documents should not specify the system identifier of a DTD + in a DOCTYPE declaration. + + + + + + + + + + + + + + + directive.page is the "page directive". + + + + + + + + + + + + + + + + + + + + + + + directive.include is the "include directive". + This element does not appear on XML views of JSP pages. + + + + + + + + + + + The representation of a scriplet. + + + + + + + + The reprsentation of a declaration. + + + + + + + + The representation of an expression. + + + + + + + + Verbatim template text. + + + + + + + + useBean instantiates or accesses a bean in the specified scope. + + Constraint: The allowed combinations of attributes are: + + class [type] | type [( class | beanName)] + + + + + + + + + + + + + + + + + + + + setProperty changes the value of an object property. + + Constraint: The object named by the name must have been + "introduced" to the JSP processor using either the + jsp:useBean action or a custom action with an associated + VariableInfo entry for this name. + + Exact valid combinations are not expressable in XML Schema. + They are: + + name="Identifier" property="*" + name="Identifier" property="Identfiier" param="string" + name="Identifier" property="Identifier" value="string" + + + + + + + + + + + + + + + getProperty obtains the value of an object property. + + Constraint: The object named by the name must have been + "introduced" to the JSP processor using either the + jsp:useBean action or a custom action with an associated + VariableInfo entry for this name. + + ???The spec is interpreted as restricting the values of + property to Identifier. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_1_1.dtd b/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_1_1.dtd new file mode 100644 index 0000000..0b51905 --- /dev/null +++ b/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_1_1.dtd @@ -0,0 +1,207 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_1_2.dtd b/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_1_2.dtd new file mode 100644 index 0000000..c89d5fc --- /dev/null +++ b/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_1_2.dtd @@ -0,0 +1,478 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_2_0.xsd b/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_2_0.xsd new file mode 100644 index 0000000..c16c971 --- /dev/null +++ b/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_2_0.xsd @@ -0,0 +1,1026 @@ + + + + + + + %W% %G% + + + + + + + Copyright 2003 Sun Microsystems, Inc., 901 San Antonio + Road, Palo Alto, California 94303, U.S.A. All rights + reserved. + + Sun Microsystems, Inc. has intellectual property rights + relating to technology described in this document. In + particular, and without limitation, these intellectual + property rights may include one or more of the U.S. patents + listed at http://www.sun.com/patents and one or more + additional patents or pending patent applications in the + U.S. and other countries. + + This document and the technology which it describes are + distributed under licenses restricting their use, copying, + distribution, and decompilation. No part of this document + may be reproduced in any form by any means without prior + written authorization of Sun and its licensors, if any. + + Third-party software, including font technology, is + copyrighted and licensed from Sun suppliers. + + Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE, + JavaServer Pages, Enterprise JavaBeans and the Java Coffee + Cup logo are trademarks or registered trademarks of Sun + Microsystems, Inc. in the U.S. and other countries. + + Federal Acquisitions: Commercial Software - Government Users + Subject to Standard License Terms and Conditions. + + + + + + + + ... + + + The instance documents may indicate the published + version of the schema using xsi:schemaLocation attribute + for J2EE namespace with the following location: + + http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd + + ]]> + + + + + + + + + + + + + + The taglib tag is the document root. + The definition of taglib is provided + by the tldTaglibType. + + + + + + + + The taglib element contains, among other things, tag and + tag-file elements. + The name subelements of these elements must each be unique. + + + + + + + + + + + + The taglib element contains function elements. + The name subelements of these elements must each be unique. + + + + + + + + + + + + + + + + + Specifies the type of body that is valid for a tag. + This value is used by the JSP container to validate + that a tag invocation has the correct body syntax and + by page composition tools to assist the page author + in providing a valid tag body. + + There are currently four values specified: + + tagdependent The body of the tag is interpreted by the tag + implementation itself, and is most likely + in a different "language", e.g embedded SQL + statements. + + JSP The body of the tag contains nested JSP + syntax. + + empty The body must be empty + + scriptless The body accepts only template text, EL + Expressions, and JSP action elements. No + scripting elements are allowed. + + + + + + + + + + + + + + + + + + + + + The extensibleType is an abstract base type that is used to + define the type of extension-elements. Instance documents + must substitute a known type to define the extension by + using xsi:type attribute to define the actual type of + extension-elements. + + + + + + + + + + + + + The function element is used to provide information on each + function in the tag library that is to be exposed to the EL. + + The function element may have several subelements defining: + + description Optional tag-specific information + + display-name A short name that is intended to be + displayed by tools + + icon Optional icon element that can be used + by tools + + name A unique name for this function + + function-class Provides the name of the Java class that + implements the function + + function-signature Provides the signature, as in the Java + Language Specification, of the Java + method that is to be used to implement + the function. + + example Optional informal description of an + example of a use of this function + + function-extension Zero or more extensions that provide extra + information about this function, for tool + consumption + + + + + + + + + + + A unique name for this function. + + + + + + + + + Provides the fully-qualified class name of the Java + class containing the static method that implements + the function. + + + + + + + + + + Provides the signature, of the static Java method that is + to be used to implement the function. The syntax of the + function-signature element is as follows: + + FunctionSignature ::= ReturnType S MethodName S? + '(' S? Parameters? S? ')' + + ReturnType ::= Type + + MethodName ::= Identifier + + Parameters ::= Parameter + | ( Parameter S? ',' S? Parameters ) + + Parameter ::= Type + + Where: + + * Type is a basic type or a fully qualified + Java class name (including package name), + as per the 'Type' production in the Java + Language Specification, Second Edition, + Chapter 18. + + * Identifier is a Java identifier, as per + the 'Identifier' production in the Java + Language Specification, Second + Edition, Chapter 18. + + Example: + + java.lang.String nickName( java.lang.String, int ) + + + + + + + + + + The example element contains an informal description + of an example of the use of this function. + + + + + + + + + + Function extensions are for tool use only and must not affect + the behavior of a container. + + + + + + + + + + + + + + + Defines an action in this tag library that is implemented + as a .tag file. + + The tag-file element has two required subelements: + + description Optional tag-specific information + + display-name A short name that is intended to be + displayed by tools + + icon Optional icon element that can be used + by tools + + name The unique action name + + path Where to find the .tag file implementing this + action, relative to the root of the web + application or the root of the JAR file for a + tag library packaged in a JAR. This must + begin with /WEB-INF/tags if the .tag file + resides in the WAR, or /META-INF/tags if the + .tag file resides in a JAR. + + example Optional informal description of an + example of a use of this tag + + tag-extension Zero or more extensions that provide extra + information about this tag, for tool + consumption + + + + + + + + + + + + + The example element contains an informal description + of an example of the use of a tag. + + + + + + + + + + Tag extensions are for tool use only and must not affect + the behavior of a container. + + + + + + + + + + + + + + + The tag defines a unique tag in this tag library. It has one + attribute, id. + + The tag element may have several subelements defining: + + description Optional tag-specific information + + display-name A short name that is intended to be + displayed by tools + + icon Optional icon element that can be used + by tools + + name The unique action name + + tag-class The tag handler class implementing + javax.servlet.jsp.tagext.JspTag + + tei-class An optional subclass of + javax.servlet.jsp.tagext.TagExtraInfo + + body-content The body content type + + variable Optional scripting variable information + + attribute All attributes of this action that are + evaluated prior to invocation. + + dynamic-attributes Whether this tag supports additional + attributes with dynamic names. If + true, the tag-class must implement the + javax.servlet.jsp.tagext.DynamicAttributes + interface. Defaults to false. + + example Optional informal description of an + example of a use of this tag + + tag-extension Zero or more extensions that provide extra + information about this tag, for tool + consumption + + + + + + + + + + + + Defines the subclass of javax.serlvet.jsp.tagext.JspTag + that implements the request time semantics for + this tag. (required) + + + + + + + + + + Defines the subclass of javax.servlet.jsp.tagext.TagExtraInfo + for this tag. (optional) + + If this is not given, the class is not consulted at + translation time. + + + + + + + + + Specifies the format for the body of this tag. + The default in JSP 1.2 was "JSP" but because this + is an invalid setting for simple tag handlers, there + is no longer a default in JSP 2.0. A reasonable + default for simple tag handlers is "scriptless" if + the tag can have a body. + + + + + + + + + + + + The example element contains an informal description + of an example of the use of a tag. + + + + + + + + + + Tag extensions are for tool use only and must not affect + the behavior of a container. + + + + + + + + + + + + + + + The attribute element defines an attribute for the nesting + tag. The attributre element may have several subelements + defining: + + description a description of the attribute + + name the name of the attribute + + required whether the attribute is required or + optional + + rtexprvalue whether the attribute is a runtime attribute + + type the type of the attributes + + fragment whether this attribute is a fragment + + + + + + + + + + + Defines if the nesting attribute is required or + optional. + + If not present then the default is "false", i.e + the attribute is optional. + + + + + + + + + + + + Defines if the nesting attribute can have scriptlet + expressions as a value, i.e the value of the + attribute may be dynamically calculated at request + time, as opposed to a static value determined at + translation time. + + If not present then the default is "false", i.e the + attribute has a static value + + + + + + + + + + Defines the Java type of the attributes value. For + static values (those determined at translation time) + the type is always java.lang.String. + + + + + + + + + + "true" if this attribute is of type + javax.jsp.tagext.JspFragment, representing dynamic + content that can be re-evaluated as many times + as needed by the tag handler. If omitted or "false", + the default is still type="java.lang.String" + + + + + + + + + + + + + + + + + Defines the canonical name of a tag or attribute being + defined. + + The name must conform to the lexical rules for an NMTOKEN. + + + + + + + + + + + + + + + + The tld-extensionType is used to indicate + extensions to a specific TLD element. + + It is used by elements to designate an extension block + that is targeted to a specific extension designated by + a set of extension elements that are declared by a + namespace. The namespace identifies the extension to + the tool that processes the extension. + + The type of the extension-element is abstract. Therefore, + a concrete type must be specified by the TLD using + xsi:type attribute for each extension-element. + + + + + + + + + + + + + + + + + + + + The taglib tag is the document root, it defines: + + description a simple string describing the "use" of this + taglib, should be user discernable + + display-name the display-name element contains a + short name that is intended to be displayed + by tools + + icon optional icon that can be used by tools + + tlib-version the version of the tag library implementation + + short-name a simple default short name that could be + used by a JSP authoring tool to create + names with a mnemonic value; for example, + the it may be used as the prefered prefix + value in taglib directives + + uri a uri uniquely identifying this taglib + + validator optional TagLibraryValidator information + + listener optional event listener specification + + tag tags in this tag library + + tag-file tag files in this tag library + + function zero or more EL functions defined in this + tag library + + taglib-extension zero or more extensions that provide extra + information about this taglib, for tool + consumption + + + + + + + + + + Describes this version (number) of the taglibrary. + It is described as a dewey decimal. + + + + + + + + + + + Defines a simple default name that could be used by + a JSP authoring tool to create names with a + mnemonicvalue; for example, it may be used as the + preferred prefix value in taglib directives. Do + not use white space, and do not start with digits + or underscore. + + + + + + + + + + Defines a public URI that uniquely identifies this + version of the taglibrary. Leave it empty if it + does not apply. + + + + + + + + + + + + + + + + + Taglib extensions are for tool use only and must not affect + the behavior of a container. + + + + + + + + + + Describes the JSP version (number) this taglibrary + requires in order to function (dewey decimal) + + + + + + + + + + + + + + + A validator that can be used to validate + the conformance of a JSP page to using this tag library is + defined by a validatorType. + + + + + + + + + + + Defines the TagLibraryValidator class that can be used + to validate the conformance of a JSP page to using this + tag library. + + + + + + + + + The init-param element contains a name/value pair as an + initialization param. + + + + + + + + + + + + + + + + + This type defines scope of the scripting variable. See + TagExtraInfo for details. The allowed values are, + "NESTED", "AT_BEGIN" and "AT_END". + + + + + + + + + + + + + + + + + + + + The variableType provides information on the scripting + variables defined by using this tag. It is a (translation + time) error for a tag that has one or more variable + subelements to have a TagExtraInfo class that returns a + non-null value from a call to getVariableInfo(). + + The subelements of variableType are of the form: + + description Optional description of this + variable + + name-given The variable name as a constant + + name-from-attribute The name of an attribute whose + (translation time) value will + give the name of the + variable. One of name-given or + name-from-attribute is required. + + variable-class Name of the class of the variable. + java.lang.String is default. + + declare Whether the variable is declared + or not. True is the default. + + scope The scope of the scripting varaible + defined. NESTED is default. + + + + + + + + + + + + The name for the scripting variable. + + + + + + + + + + The name of an attribute whose + (translation-time) value will give the name of + the variable. + + + + + + + + + + The optional name of the class for the scripting + variable. The default is java.lang.String. + + + + + + + + + + + + Whether the scripting variable is to be defined + or not. See TagExtraInfo for details. This + element is optional and "true" is the default. + + + + + + + + + The element is optional and "NESTED" is the default. + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_2_1.xsd b/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_2_1.xsd new file mode 100644 index 0000000..f657898 --- /dev/null +++ b/workspace/ROOT/javax/servlet/jsp/resources/web-jsptaglibrary_2_1.xsd @@ -0,0 +1,1160 @@ + + + + + + + + @(#)web-jsptaglibrary_2_1.xsds 1.1 + + + + + + + Copyright 2003-2005 Sun Microsystems, Inc. + 4150 Network Circle + Santa Clara, California 95054 + U.S.A + All rights reserved. + + Sun Microsystems, Inc. has intellectual property rights + relating to technology described in this document. In + particular, and without limitation, these intellectual + property rights may include one or more of the U.S. patents + listed at http://www.sun.com/patents and one or more + additional patents or pending patent applications in the + U.S. and other countries. + + This document and the technology which it describes are + distributed under licenses restricting their use, copying, + distribution, and decompilation. No part of this document + may be reproduced in any form by any means without prior + written authorization of Sun and its licensors, if any. + + Third-party software, including font technology, is + copyrighted and licensed from Sun suppliers. + + Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE, + JavaServer Pages, Enterprise JavaBeans and the Java Coffee + Cup logo are trademarks or registered trademarks of Sun + Microsystems, Inc. in the U.S. and other countries. + + Federal Acquisitions: Commercial Software - Government Users + Subject to Standard License Terms and Conditions. + + + + + + + + ... + + + The instance documents may indicate the published + version of the schema using xsi:schemaLocation attribute + for Java EE namespace with the following location: + + http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd + + ]]> + + + + + + + + + + + + + The taglib tag is the document root. + The definition of taglib is provided + by the tldTaglibType. + + + + + + + + The taglib element contains, among other things, tag and + tag-file elements. + The name subelements of these elements must each be unique. + + + + + + + + + + + + The taglib element contains function elements. + The name subelements of these elements must each be unique. + + + + + + + + + + + + + + + + + Specifies the type of body that is valid for a tag. + This value is used by the JSP container to validate + that a tag invocation has the correct body syntax and + by page composition tools to assist the page author + in providing a valid tag body. + + There are currently four values specified: + + tagdependent The body of the tag is interpreted by the tag + implementation itself, and is most likely + in a different "language", e.g embedded SQL + statements. + + JSP The body of the tag contains nested JSP + syntax. + + empty The body must be empty + + scriptless The body accepts only template text, EL + Expressions, and JSP action elements. No + scripting elements are allowed. + + + + + + + + + + + + + + + + + + + + + The extensibleType is an abstract base type that is used to + define the type of extension-elements. Instance documents + must substitute a known type to define the extension by + using xsi:type attribute to define the actual type of + extension-elements. + + + + + + + + + + + + + The function element is used to provide information on each + function in the tag library that is to be exposed to the EL. + + The function element may have several subelements defining: + + description Optional tag-specific information + + display-name A short name that is intended to be + displayed by tools + + icon Optional icon element that can be used + by tools + + name A unique name for this function + + function-class Provides the name of the Java class that + implements the function + + function-signature Provides the signature, as in the Java + Language Specification, of the Java + method that is to be used to implement + the function. + + example Optional informal description of an + example of a use of this function + + function-extension Zero or more extensions that provide extra + information about this function, for tool + consumption + + + + + + + + + + + A unique name for this function. + + + + + + + + + Provides the fully-qualified class name of the Java + class containing the static method that implements + the function. + + + + + + + + + + Provides the signature, of the static Java method that is + to be used to implement the function. The syntax of the + function-signature element is as follows: + + FunctionSignature ::= ReturnType S MethodName S? + '(' S? Parameters? S? ')' + + ReturnType ::= Type + + MethodName ::= Identifier + + Parameters ::= Parameter + | ( Parameter S? ',' S? Parameters ) + + Parameter ::= Type + + Where: + + * Type is a basic type or a fully qualified + Java class name (including package name), + as per the 'Type' production in the Java + Language Specification, Second Edition, + Chapter 18. + + * Identifier is a Java identifier, as per + the 'Identifier' production in the Java + Language Specification, Second + Edition, Chapter 18. + + Example: + + java.lang.String nickName( java.lang.String, int ) + + + + + + + + + + The example element contains an informal description + of an example of the use of this function. + + + + + + + + + + Function extensions are for tool use only and must not + affect the behavior of a container. + + + + + + + + + + + + + + + Defines an action in this tag library that is implemented + as a .tag file. + + The tag-file element has two required subelements: + + description Optional tag-specific information + + display-name A short name that is intended to be + displayed by tools + + icon Optional icon element that can be used + by tools + + name The unique action name + + path Where to find the .tag file implementing this + action, relative to the root of the web + application or the root of the JAR file for a + tag library packaged in a JAR. This must + begin with /WEB-INF/tags if the .tag file + resides in the WAR, or /META-INF/tags if the + .tag file resides in a JAR. + + example Optional informal description of an + example of a use of this tag + + tag-extension Zero or more extensions that provide extra + information about this tag, for tool + consumption + + + + + + + + + + + + + The example element contains an informal description + of an example of the use of a tag. + + + + + + + + + + Tag extensions are for tool use only and must not affect + the behavior of a container. + + + + + + + + + + + + + + + The tag defines a unique tag in this tag library. It has one + attribute, id. + + The tag element may have several subelements defining: + + description Optional tag-specific information + + display-name A short name that is intended to be + displayed by tools + + icon Optional icon element that can be used + by tools + + name The unique action name + + tag-class The tag handler class implementing + javax.servlet.jsp.tagext.JspTag + + tei-class An optional subclass of + javax.servlet.jsp.tagext.TagExtraInfo + + body-content The body content type + + variable Optional scripting variable information + + attribute All attributes of this action that are + evaluated prior to invocation. + + dynamic-attributes Whether this tag supports additional + attributes with dynamic names. If + true, the tag-class must implement the + javax.servlet.jsp.tagext.DynamicAttributes + interface. Defaults to false. + + example Optional informal description of an + example of a use of this tag + + tag-extension Zero or more extensions that provide extra + information about this tag, for tool + consumption + + + + + + + + + + + + Defines the subclass of javax.serlvet.jsp.tagext.JspTag + that implements the request time semantics for + this tag. (required) + + + + + + + + + + Defines the subclass of javax.servlet.jsp.tagext.TagExtraInfo + for this tag. (optional) + + If this is not given, the class is not consulted at + translation time. + + + + + + + + + Specifies the format for the body of this tag. + The default in JSP 1.2 was "JSP" but because this + is an invalid setting for simple tag handlers, there + is no longer a default in JSP 2.0. A reasonable + default for simple tag handlers is "scriptless" if + the tag can have a body. + + + + + + + + + + + + The example element contains an informal description + of an example of the use of a tag. + + + + + + + + + + Tag extensions are for tool use only and must not affect + the behavior of a container. + + + + + + + + + + + + + + + The attribute element defines an attribute for the nesting + tag. The attribute element may have several subelements + defining: + + description a description of the attribute + + name the name of the attribute + + required whether the attribute is required or + optional + + rtexprvalue whether the attribute is a runtime attribute + + type the type of the attributes + + fragment whether this attribute is a fragment + + deferred-value present if this attribute is to be parsed as a + javax.el.ValueExpression + + deferred-method present if this attribute is to be parsed as a + javax.el.MethodExpression + + + + + + + + + + + + Defines if the nesting attribute is required or + optional. + + If not present then the default is "false", i.e + the attribute is optional. + + + + + + + + + + + + Defines if the nesting attribute can have scriptlet + expressions as a value, i.e the value of the + attribute may be dynamically calculated at request + time, as opposed to a static value determined at + translation time. + If not present then the default is "false", i.e the + attribute has a static value + + + + + + + + + Defines the Java type of the attributes value. + If this element is omitted, the expected type is + assumed to be "java.lang.Object". + + + + + + + + + + + + Present if the value for this attribute is to be + passed to the tag handler as a + javax.el.ValueExpression. This allows for deferred + evaluation of EL expressions. An optional subelement + will contain the expected type that the value will + be coerced to after evaluation of the expression. + The type defaults to Object if one is not provided. + + + + + + + + + Present if the value for this attribute is to be + passed to the tag handler as a + javax.el.MethodExpression. This allows for deferred + evaluation of an EL expression that identifies a + method to be invoked on an Object. An optional + subelement will contain the expected method + signature. The signature defaults to "void method()" + if one is not provided. + + + + + + + + + + + + "true" if this attribute is of type + javax.jsp.tagext.JspFragment, representing dynamic + content that can be re-evaluated as many times + as needed by the tag handler. If omitted or "false", + the default is still type="java.lang.String" + + + + + + + + + + + + + + + + + + Defines the canonical name of a tag or attribute being + defined. + + The name must conform to the lexical rules for an NMTOKEN. + + + + + + + + + + + + + + + + Defines information about how to provide the value for a + tag handler attribute that accepts a javax.el.MethodExpression. + + The deferred-method element has one optional subelement: + + method-signature Provides the signature, as in the Java + Language Specifies, that is expected for + the method being identified by the + expression. + + + + + + + + + + Provides the expected signature of the method identified + by the javax.el.MethodExpression. + + This disambiguates overloaded methods and ensures that + the return value is of the expected type. + + The syntax of the method-signature element is identical + to that of the function-signature element. See the + documentation for function-signature for more details. + + The name of the method is for documentation purposes only + and is ignored by the JSP container. + + Example: + + boolean validate(java.lang.String) + + + + + + + + + + + + + + + + Defines information about how to provide the value for a + tag handler attribute that accepts a javax.el.ValueExpression. + + The deferred-value element has one optional subelement: + + type the expected type of the attribute + + + + + + + + + + The fully-qualified name of the Java type that is the + expected type for this deferred expression. If this + element is omitted, the expected type is assumed to be + "java.lang.Object". + + + + + + + + + + + + + + + + The tld-extensionType is used to indicate + extensions to a specific TLD element. + + It is used by elements to designate an extension block + that is targeted to a specific extension designated by + a set of extension elements that are declared by a + namespace. The namespace identifies the extension to + the tool that processes the extension. + + The type of the extension-element is abstract. Therefore, + a concrete type must be specified by the TLD using + xsi:type attribute for each extension-element. + + + + + + + + + + + + + + + + + + + + The taglib tag is the document root, it defines: + + description a simple string describing the "use" of this + taglib, should be user discernable + + display-name the display-name element contains a + short name that is intended to be displayed + by tools + + icon optional icon that can be used by tools + + tlib-version the version of the tag library implementation + + short-name a simple default short name that could be + used by a JSP authoring tool to create + names with a mnemonic value; for example, + the it may be used as the prefered prefix + value in taglib directives + + uri a uri uniquely identifying this taglib + + validator optional TagLibraryValidator information + + listener optional event listener specification + + tag tags in this tag library + + tag-file tag files in this tag library + + function zero or more EL functions defined in this + tag library + + taglib-extension zero or more extensions that provide extra + information about this taglib, for tool + consumption + + + + + + + + + + Describes this version (number) of the taglibrary. + It is described as a dewey decimal. + + + + + + + + + + + Defines a simple default name that could be used by + a JSP authoring tool to create names with a + mnemonicvalue; for example, it may be used as the + preferred prefix value in taglib directives. Do + not use white space, and do not start with digits + or underscore. + + + + + + + + + + Defines a public URI that uniquely identifies this + version of the taglibrary. Leave it empty if it + does not apply. + + + + + + + + + + + + + + + + + Taglib extensions are for tool use only and must not + affect the behavior of a container. + + + + + + + + + + Describes the JSP version (number) this taglibrary + requires in order to function (dewey decimal) + + + + + + + + + + + + + + + A validator that can be used to validate + the conformance of a JSP page to using this tag library is + defined by a validatorType. + + + + + + + + + + + Defines the TagLibraryValidator class that can be used + to validate the conformance of a JSP page to using this + tag library. + + + + + + + + + The init-param element contains a name/value pair as an + initialization param. + + + + + + + + + + + + + + + + + This type defines scope of the scripting variable. See + TagExtraInfo for details. The allowed values are, + "NESTED", "AT_BEGIN" and "AT_END". + + + + + + + + + + + + + + + + + + + + The variableType provides information on the scripting + variables defined by using this tag. It is a (translation + time) error for a tag that has one or more variable + subelements to have a TagExtraInfo class that returns a + non-null value from a call to getVariableInfo(). + + The subelements of variableType are of the form: + + description Optional description of this + variable + + name-given The variable name as a constant + + name-from-attribute The name of an attribute whose + (translation time) value will + give the name of the + variable. One of name-given or + name-from-attribute is required. + + variable-class Name of the class of the variable. + java.lang.String is default. + + declare Whether the variable is declared + or not. True is the default. + + scope The scope of the scripting varaible + defined. NESTED is default. + + + + + + + + + + + + The name for the scripting variable. + + + + + + + + + + The name of an attribute whose + (translation-time) value will give the name of + the variable. + + + + + + + + + + The optional name of the class for the scripting + variable. The default is java.lang.String. + + + + + + + + + + + + Whether the scripting variable is to be defined + or not. See TagExtraInfo for details. This + element is optional and "true" is the default. + + + + + + + + + The element is optional and "NESTED" is the default. + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/BodyContent.class b/workspace/ROOT/javax/servlet/jsp/tagext/BodyContent.class new file mode 100644 index 0000000..41a3fd5 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/BodyContent.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/BodyTag.class b/workspace/ROOT/javax/servlet/jsp/tagext/BodyTag.class new file mode 100644 index 0000000..a699723 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/BodyTag.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/BodyTagSupport.class b/workspace/ROOT/javax/servlet/jsp/tagext/BodyTagSupport.class new file mode 100644 index 0000000..a90e59a Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/BodyTagSupport.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/DynamicAttributes.class b/workspace/ROOT/javax/servlet/jsp/tagext/DynamicAttributes.class new file mode 100644 index 0000000..746f809 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/DynamicAttributes.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/FunctionInfo.class b/workspace/ROOT/javax/servlet/jsp/tagext/FunctionInfo.class new file mode 100644 index 0000000..e5b5d50 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/FunctionInfo.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/IterationTag.class b/workspace/ROOT/javax/servlet/jsp/tagext/IterationTag.class new file mode 100644 index 0000000..0bbb671 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/IterationTag.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/JspFragment.class b/workspace/ROOT/javax/servlet/jsp/tagext/JspFragment.class new file mode 100644 index 0000000..a0ae9e8 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/JspFragment.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/JspIdConsumer.class b/workspace/ROOT/javax/servlet/jsp/tagext/JspIdConsumer.class new file mode 100644 index 0000000..a94fb3c Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/JspIdConsumer.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/JspTag.class b/workspace/ROOT/javax/servlet/jsp/tagext/JspTag.class new file mode 100644 index 0000000..8fd43b2 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/JspTag.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/PageData.class b/workspace/ROOT/javax/servlet/jsp/tagext/PageData.class new file mode 100644 index 0000000..ee128a6 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/PageData.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/SimpleTag.class b/workspace/ROOT/javax/servlet/jsp/tagext/SimpleTag.class new file mode 100644 index 0000000..b630d38 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/SimpleTag.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/SimpleTagSupport.class b/workspace/ROOT/javax/servlet/jsp/tagext/SimpleTagSupport.class new file mode 100644 index 0000000..9f3262f Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/SimpleTagSupport.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/Tag.class b/workspace/ROOT/javax/servlet/jsp/tagext/Tag.class new file mode 100644 index 0000000..bbe5c9e Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/Tag.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TagAdapter.class b/workspace/ROOT/javax/servlet/jsp/tagext/TagAdapter.class new file mode 100644 index 0000000..d159359 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TagAdapter.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TagAttributeInfo.class b/workspace/ROOT/javax/servlet/jsp/tagext/TagAttributeInfo.class new file mode 100644 index 0000000..4e8497d Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TagAttributeInfo.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TagData.class b/workspace/ROOT/javax/servlet/jsp/tagext/TagData.class new file mode 100644 index 0000000..f265313 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TagData.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TagExtraInfo.class b/workspace/ROOT/javax/servlet/jsp/tagext/TagExtraInfo.class new file mode 100644 index 0000000..315ca0c Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TagExtraInfo.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TagFileInfo.class b/workspace/ROOT/javax/servlet/jsp/tagext/TagFileInfo.class new file mode 100644 index 0000000..6ccc6ba Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TagFileInfo.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TagInfo.class b/workspace/ROOT/javax/servlet/jsp/tagext/TagInfo.class new file mode 100644 index 0000000..a1cc287 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TagInfo.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TagLibraryInfo.class b/workspace/ROOT/javax/servlet/jsp/tagext/TagLibraryInfo.class new file mode 100644 index 0000000..dd2b8ff Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TagLibraryInfo.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TagLibraryValidator.class b/workspace/ROOT/javax/servlet/jsp/tagext/TagLibraryValidator.class new file mode 100644 index 0000000..3faeb75 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TagLibraryValidator.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TagSupport.class b/workspace/ROOT/javax/servlet/jsp/tagext/TagSupport.class new file mode 100644 index 0000000..6b5e50c Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TagSupport.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TagVariableInfo.class b/workspace/ROOT/javax/servlet/jsp/tagext/TagVariableInfo.class new file mode 100644 index 0000000..36110e4 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TagVariableInfo.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/TryCatchFinally.class b/workspace/ROOT/javax/servlet/jsp/tagext/TryCatchFinally.class new file mode 100644 index 0000000..939d852 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/TryCatchFinally.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/ValidationMessage.class b/workspace/ROOT/javax/servlet/jsp/tagext/ValidationMessage.class new file mode 100644 index 0000000..da1c2c2 Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/ValidationMessage.class differ diff --git a/workspace/ROOT/javax/servlet/jsp/tagext/VariableInfo.class b/workspace/ROOT/javax/servlet/jsp/tagext/VariableInfo.class new file mode 100644 index 0000000..3f2eefb Binary files /dev/null and b/workspace/ROOT/javax/servlet/jsp/tagext/VariableInfo.class differ diff --git a/workspace/ROOT/javax/servlet/resources/XMLSchema.dtd b/workspace/ROOT/javax/servlet/resources/XMLSchema.dtd new file mode 100644 index 0000000..2d078c5 --- /dev/null +++ b/workspace/ROOT/javax/servlet/resources/XMLSchema.dtd @@ -0,0 +1,402 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +%xs-datatypes; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/resources/datatypes.dtd b/workspace/ROOT/javax/servlet/resources/datatypes.dtd new file mode 100644 index 0000000..fc862cb --- /dev/null +++ b/workspace/ROOT/javax/servlet/resources/datatypes.dtd @@ -0,0 +1,219 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/resources/j2ee_1_4.xsd b/workspace/ROOT/javax/servlet/resources/j2ee_1_4.xsd new file mode 100644 index 0000000..fcf0691 --- /dev/null +++ b/workspace/ROOT/javax/servlet/resources/j2ee_1_4.xsd @@ -0,0 +1,1622 @@ + + + + + + @(#)j2ee_1_4.xsds 1.43 03/09/16 + + + + + + + Copyright 2002 Sun Microsystems, Inc., 901 San Antonio + Road, Palo Alto, California 94303, U.S.A. All rights + reserved. + + Sun Microsystems, Inc. has intellectual property rights + relating to technology described in this document. In + particular, and without limitation, these intellectual + property rights may include one or more of the U.S. patents + listed at http://www.sun.com/patents and one or more + additional patents or pending patent applications in the + U.S. and other countries. + + This document and the technology which it describes are + distributed under licenses restricting their use, copying, + distribution, and decompilation. No part of this document + may be reproduced in any form by any means without prior + written authorization of Sun and its licensors, if any. + + Third-party software, including font technology, is + copyrighted and licensed from Sun suppliers. + + Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE, + JavaServer Pages, Enterprise JavaBeans and the Java Coffee + Cup logo are trademarks or registered trademarks of Sun + Microsystems, Inc. in the U.S. and other countries. + + Federal Acquisitions: Commercial Software - Government Users + Subject to Standard License Terms and Conditions. + + + + + + +The following definitions that appear in the common +shareable schema(s) of J2EE deployment descriptors should be +interpreted with respect to the context they are included: + +Deployment Component may indicate one of the following: + j2ee application; + application client; + web application; + enterprise bean; + resource adapter; + +Deployment File may indicate one of the following: + ear file; + war file; + jar file; + rar file; + + + + + + + + + + + + + + + + This group keeps the usage of the contained description related + elements consistent across J2EE deployment descriptors. + + All elements may occur multiple times with different languages, + to support localization of the content. + + + + + + + + + + + + + + + + + The description type is used by a description element to + provide text describing the parent element. The elements + that use this type should include any information that the + Deployment Component's Deployment File file producer wants + to provide to the consumer of the Deployment Component's + Deployment File (i.e., to the Deployer). Typically, the + tools used by such a Deployment File consumer will display + the description when processing the parent element that + contains the description. + + The lang attribute defines the language that the + description is provided in. The default value is "en" (English). + + + + + + + + + + + + + + + + + This type defines a dewey decimal which is used + to describe versions of documents. + + + + + + + + + + + + + + + + Employee Self Service + + The value of the xml:lang attribute is "en" (English) by default. + + ]]> + + + + + + + + + + + + + + + EmployeeRecord + + ../products/product.jar#ProductEJB + + ]]> + + + + + + + + + + + + + + The ejb-local-refType is used by ejb-local-ref elements for + the declaration of a reference to an enterprise bean's local + home. The declaration consists of: + + - an optional description + - the EJB reference name used in the code of the Deployment + Component that's referencing the enterprise bean + - the expected type of the referenced enterprise bean + - the expected local home and local interfaces of the + referenced enterprise bean + - optional ejb-link information, used to specify the + referenced enterprise bean + + + + + + + + + + + + + + + + + + + + + ejb/Payroll + + ]]> + + + + + + + + + + + + + + The ejb-ref-typeType contains the expected type of the + referenced enterprise bean. + + The ejb-ref-type designates a value + that must be one of the following: + + Entity + Session + + + + + + + + + + + + + + + + + + The ejb-refType is used by ejb-ref elements for the + declaration of a reference to an enterprise bean's home. The + declaration consists of: + + - an optional description + - the EJB reference name used in the code of + the Deployment Component that's referencing the enterprise + bean + - the expected type of the referenced enterprise bean + - the expected home and remote interfaces of the referenced + enterprise bean + - optional ejb-link information, used to specify the + referenced enterprise bean + + + + + + + + + + + + + + + + + + + + + + + This type is used to designate an empty + element when used. + + + + + + + + + + + + java.lang.Boolean + + ]]> + + + + + + + + + + + + + + + + + + + + + + + + The env-entryType is used to declare an application's + environment entry. The declaration consists of an optional + description, the name of the environment entry, and an + optional value. If a value is not specified, one must be + supplied during deployment. + + It is used by env-entry elements. + + + + + + + + + + minAmount + + ]]> + + + + + + + + + + 100.00 + + ]]> + + + + + + + + + + + + + + + The elements that use this type designate the name of a + Java class or interface. The name is in the form of a + "binary name", as defined in the JLS. This is the form + of name used in Class.forName(). Tools that need the + canonical name (the name used in source code) will need + to convert this binary name to the canonical name. + + + + + + + + + + + + + + + This type defines four different values which can designate + boolean values. This includes values yes and no which are + not designated by xsd:boolean + + + + + + + + + + + + + + + + + + + com.aardvark.payroll.PayrollHome + + ]]> + + + + + + + + + + + + + + The icon type contains small-icon and large-icon elements + that specify the file names for small and large GIF or + JPEG icon images used to represent the parent element in a + GUI tool. + + The xml:lang attribute defines the language that the + icon file names are provided in. Its value is "en" (English) + by default. + + + + + + + + + employee-service-icon16x16.jpg + + ]]> + + + + + + + employee-service-icon32x32.jpg + + ]]> + + + + + + + + + + + + + + + + + + The java-identifierType defines a Java identifier. + The users of this type should further verify that + the content does not contain Java reserved keywords. + + + + + + + + + + + + + + + + + This is a generic type that designates a Java primitive + type or a fully qualified name of a Java interface/type, + or an array of such types. + + + + + + + + + + + + + + + + + The jndi-nameType type designates a JNDI name in the + Deployment Component's environment and is relative to the + java:comp/env context. A JNDI name must be unique within the + Deployment Component. + + + + + + + + + + + + + + + This group keeps the usage of the contained JNDI environment + reference elements consistent across J2EE deployment descriptors. + + + + + + + + + + + + + + + + + + + + + The listenerType indicates the deployment properties for a web + application listener bean. + + + + + + + + + + + The listener-class element declares a class in the + application must be registered as a web + application listener bean. The value is the fully + qualified classname of the listener class. + + + + + + + + + + + + + + + The local-homeType defines the fully-qualified + name of an enterprise bean's local home interface. + + + + + + + + + + + + + + + The localType defines the fully-qualified name of an + enterprise bean's local interface. + + + + + + + + + + + + + + + The message-destination-linkType is used to link a message + destination reference or message-driven bean to a message + destination. + + The Assembler sets the value to reflect the flow of messages + between producers and consumers in the application. + + The value must be the message-destination-name of a message + destination in the same Deployment File or in another + Deployment File in the same J2EE application unit. + + Alternatively, the value may be composed of a path name + specifying a Deployment File containing the referenced + message destination with the message-destination-name of the + destination appended and separated from the path name by + "#". The path name is relative to the Deployment File + containing Deployment Component that is referencing the + message destination. This allows multiple message + destinations with the same name to be uniquely identified. + + + + + + + + + + + + + + + jms/StockQueue + + javax.jms.Queue + + Consumes + + CorporateStocks + + + + ]]> + + + + + + + + + The message-destination-ref-name element specifies + the name of a message destination reference; its + value is the environment entry name used in + Deployment Component code. The name is a JNDI name + relative to the java:comp/env context and must be + unique within an ejb-jar (for enterprise beans) or a + Deployment File (for others). + + + + + + + + + + + + + + + + + + javax.jms.Queue + + + ]]> + + + + + + + + + + + + + + The message-destination-usageType specifies the use of the + message destination indicated by the reference. The value + indicates whether messages are consumed from the message + destination, produced for the destination, or both. The + Assembler makes use of this information in linking producers + of a destination with its consumers. + + The value of the message-destination-usage element must be + one of the following: + Consumes + Produces + ConsumesProduces + + + + + + + + + + + + + + + + + + + CorporateStocks + + + + ]]> + + + + + + + + + The message-destination-name element specifies a + name for a message destination. This name must be + unique among the names of message destinations + within the Deployment File. + + + + + + + + + + + + + + + This type is a general type that can be used to declare + parameter/value lists. + + + + + + + + + + + The param-name element contains the name of a + parameter. + + + + + + + + + + The param-value element contains the value of a + parameter. + + + + + + + + + + + + + + + The elements that use this type designate either a relative + path or an absolute path starting with a "/". + + In elements that specify a pathname to a file within the + same Deployment File, relative filenames (i.e., those not + starting with "/") are considered relative to the root of + the Deployment File's namespace. Absolute filenames (i.e., + those starting with "/") also specify names in the root of + the Deployment File's namespace. In general, relative names + are preferred. The exception is .war files where absolute + names are preferred for consistency with the Servlet API. + + + + + + + + + + + + + + com.wombat.empl.EmployeeService + + ]]> + + + + + + + + + + + + + + The res-authType specifies whether the Deployment Component + code signs on programmatically to the resource manager, or + whether the Container will sign on to the resource manager + on behalf of the Deployment Component. In the latter case, + the Container uses information that is supplied by the + Deployer. + + The value must be one of the two following: + + Application + Container + + + + + + + + + + + + + + + + + + The res-sharing-scope type specifies whether connections + obtained through the given resource manager connection + factory reference can be shared. The value, if specified, + must be one of the two following: + + Shareable + Unshareable + + The default value is Shareable. + + + + + + + + + + + + + + + + + + jms/StockQueue + + javax.jms.Queue + + + + ]]> + + + + + + + + + + The resource-env-ref-name element specifies the name + of a resource environment reference; its value is + the environment entry name used in + the Deployment Component code. The name is a JNDI + name relative to the java:comp/env context and must + be unique within a Deployment Component. + + + + + + + + + + The resource-env-ref-type element specifies the type + of a resource environment reference. It is the + fully qualified name of a Java language class or + interface. + + + + + + + + + + + + + + + + jdbc/EmployeeAppDB + javax.sql.DataSource + Container + Shareable + + + ]]> + + + + + + + + + + The res-ref-name element specifies the name of a + resource manager connection factory reference. + The name is a JNDI name relative to the + java:comp/env context. + The name must be unique within a Deployment File. + + + + + + + + + + The res-type element specifies the type of the data + source. The type is specified by the fully qualified + Java language class or interface + expected to be implemented by the data source. + + + + + + + + + + + + + + + + + + + The role-nameType designates the name of a security role. + + The name must conform to the lexical rules for a token. + + + + + + + + + + + + + + + + The run-asType specifies the run-as identity to be + used for the execution of a component. It contains an + optional description, and the name of a security role. + + + + + + + + + + + + + + + + + + The security-role-refType contains the declaration of a + security role reference in a component's or a + Deployment Component's code. The declaration consists of an + optional description, the security role name used in the + code, and an optional link to a security role. If the + security role is not specified, the Deployer must choose an + appropriate security role. + + + + + + + + + + + The value of the role-name element must be the String used + as the parameter to the + EJBContext.isCallerInRole(String roleName) method or the + HttpServletRequest.isUserInRole(String role) method. + + + + + + + + + + The role-link element is a reference to a defined + security role. The role-link element must contain + the name of one of the security roles defined in the + security-role elements. + + + + + + + + + + + + + + + + This role includes all employees who are authorized + to access the employee service application. + + employee + + + ]]> + + + + + + + + + + + + + + + + + This is a special string datatype that is defined by J2EE as + a base type for defining collapsed strings. When schemas + require trailing/leading space elimination as well as + collapsing the existing whitespace, this base type may be + used. + + + + + + + + + + + + + + + + + This simple type designates a boolean with only two + permissible values + + - true + - false + + + + + + + + + + + + + + + + + The url-patternType contains the url pattern of the mapping. + It must follow the rules specified in Section 11.2 of the + Servlet API Specification. This pattern is assumed to be in + URL-decoded form and must not contain CR(#xD) or LF(#xA). + If it contains those characters, the container must inform + the developer with a descriptive error message. + The container must preserve all characters including whitespaces. + + + + + + + + + + + + + + + This type adds an "id" attribute to xsd:anyURI. + + + + + + + + + + + + + + + + + This type adds an "id" attribute to xsd:boolean. + + + + + + + + + + + + + + + + + This type adds an "id" attribute to xsd:integer. + + + + + + + + + + + + + + + + + This type adds an "id" attribute to xsd:NMTOKEN. + + + + + + + + + + + + + + + + + This type adds an "id" attribute to xsd:nonNegativeInteger. + + + + + + + + + + + + + + + + + This type adds an "id" attribute to xsd:positiveInteger. + + + + + + + + + + + + + + + + + This type adds an "id" attribute to xsd:QName. + + + + + + + + + + + + + + + + + This type adds an "id" attribute to xsd:string. + + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/resources/j2ee_web_services_1_1.xsd b/workspace/ROOT/javax/servlet/resources/j2ee_web_services_1_1.xsd new file mode 100644 index 0000000..840c296 --- /dev/null +++ b/workspace/ROOT/javax/servlet/resources/j2ee_web_services_1_1.xsd @@ -0,0 +1,505 @@ + + + + + + @(#)j2ee_web_services_1_1.xsds 1.11 02/11/03 + + + + + + + Copyright 2002 Sun Microsystems, Inc., 901 San Antonio + Road, Palo Alto, California 94303, U.S.A. All rights + reserved. + + Sun Microsystems, Inc. has intellectual property rights + relating to technology described in this document. In + particular, and without limitation, these intellectual + property rights may include one or more of the U.S. patents + listed at http://www.sun.com/patents and one or more + additional patents or pending patent applications in the + U.S. and other countries. + + This document and the technology which it describes are + distributed under licenses restricting their use, copying, + distribution, and decompilation. No part of this document + may be reproduced in any form by any means without prior + written authorization of Sun and its licensors, if any. + + Third-party software, including font technology, is + copyrighted and licensed from Sun suppliers. + + Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE, + JavaServer Pages, Enterprise JavaBeans and the Java Coffee + Cup logo are trademarks or registered trademarks of Sun + Microsystems, Inc. in the U.S. and other countries. + + Federal Acquisitions: Commercial Software - Government Users + Subject to Standard License Terms and Conditions. + + + + + + + (C) Copyright International Business Machines Corporation 2002 + + + + + + + + ... + + + The instance documents may indicate the published version of the + schema using the xsi:schemaLocation attribute for the J2EE + namespace with the following location: + + http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd + + ]]> + + + + + + + The following conventions apply to all J2EE + deployment descriptor elements unless indicated otherwise. + + - In elements that specify a pathname to a file within the + same JAR file, relative filenames (i.e., those not + starting with "/") are considered relative to the root of + the JAR file's namespace. Absolute filenames (i.e., those + starting with "/") also specify names in the root of the + JAR file's namespace. In general, relative names are + preferred. The exception is .war files where absolute + names are preferred for consistency with the Servlet API. + + + + + + + + + + + + + + + The webservices element is the root element for the web services + deployment descriptor. It specifies the set of web service + descriptions that are to be deployed into the J2EE Application Server + and the dependencies they have on container resources and services. + + Used in: webservices.xml + + + + + + + + + The webservice-description-name identifies the collection of + port-components associated with a WSDL file and JAX-RPC mapping. The + name must be unique within the deployment descriptor. + + + + + + + + + + + + + + + The port-component element associates a WSDL port with a web service + interface and implementation. It defines the name of the port as a + component, optional description, optional display name, optional iconic + representations, WSDL port QName, Service Endpoint Interface, Service + Implementation Bean. + + + + + + + + + + + + EmployeeService + + + ]]> + + + + + + + + Defines the name space and local name part of the WSDL port QName. + + + + + + + + com.wombat.empl.EmployeeService + + ]]> + + + + + + + + + + + + + + + + + Declares the handler for a port-component. Handlers can access the + init-param name/value pairs using the HandlerInfo interface. + + Used in: port-component + + + + + + + + + + Defines the name of the handler. The name must be unique within the + module. + + + + + + + + + Defines a fully qualified class name for the handler implementation. + + + + + + + + + + + Defines the QName of a SOAP header that will be processed by the + handler. + + + + + + + + + The soap-role element contains a SOAP actor definition that the + Handler will play as a role. + + + + + + + + + + + + + + + The service-impl-bean element defines the web service implementation. + A service implementation can be an EJB bean class or JAX-RPC web + component. Existing EJB implementations are exposed as a web service + using an ejb-link. + + Used in: port-component + + + + + + + + + + + + + + + + StockQuoteService + + ]]> + + + + + + + + + + + + + + The webservice-description element defines a WSDL document file + and the set of Port components associated with the WSDL ports + defined in the WSDL document. There may be multiple + webservice-descriptions defined within a module. + + All WSDL file ports must have a corresponding port-component element + defined. + + Used in: webservices + + + + + + + + + + + + + The webservice-description-name identifies the collection of + port-components associated with a WSDL file and JAX-RPC + mapping. The name must be unique within the deployment descriptor. + + + + + + + + + The wsdl-file element contains the name of a WSDL file in the + module. The file name is a relative path within the module. + + + + + + + + + The jaxrpc-mapping-file element contains the name of a file that + describes the JAX-RPC mapping between the Java interaces used by + the application and the WSDL description in the wsdl-file. The + file name is a relative path within the module. + + + + + + + + + + Defines the name of the handler. The name must be unique + within the module. + + + + + + + + + + + + + + + + + + + + + EmployeeService + + + ]]> + + + + + + + + + + + + + The required value for the version is 1.1. + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/resources/j2ee_web_services_client_1_1.xsd b/workspace/ROOT/javax/servlet/resources/j2ee_web_services_client_1_1.xsd new file mode 100644 index 0000000..512d879 --- /dev/null +++ b/workspace/ROOT/javax/servlet/resources/j2ee_web_services_client_1_1.xsd @@ -0,0 +1,359 @@ + + + + + + @(#)j2ee_web_services_client_1_1.xsds 1.10 02/11/03 + + + + + + + Copyright 2002 Sun Microsystems, Inc., 901 San Antonio + Road, Palo Alto, California 94303, U.S.A. All rights + reserved. + + Sun Microsystems, Inc. has intellectual property rights + relating to technology described in this document. In + particular, and without limitation, these intellectual + property rights may include one or more of the U.S. patents + listed at http://www.sun.com/patents and one or more + additional patents or pending patent applications in the + U.S. and other countries. + + This document and the technology which it describes are + distributed under licenses restricting their use, copying, + distribution, and decompilation. No part of this document + may be reproduced in any form by any means without prior + written authorization of Sun and its licensors, if any. + + Third-party software, including font technology, is + copyrighted and licensed from Sun suppliers. + + Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE, + JavaServer Pages, Enterprise JavaBeans and the Java Coffee + Cup logo are trademarks or registered trademarks of Sun + Microsystems, Inc. in the U.S. and other countries. + + Federal Acquisitions: Commercial Software - Government Users + Subject to Standard License Terms and Conditions. + + + + + + + (C) Copyright International Business Machines Corporation 2002 + + + + + + + + + + + + The port-component-ref element declares a client dependency + on the container for resolving a Service Endpoint Interface + to a WSDL port. It optionally associates the Service Endpoint + Interface with a particular port-component. This is only used + by the container for a Service.getPort(Class) method call. + + + + + + + + + + The service-endpoint-interface element defines a fully qualified + Java class that represents the Service Endpoint Interface of a + WSDL port. + + + + + + + + + + The port-component-link element links a port-component-ref + to a specific port-component required to be made available + by a service reference. + + The value of a port-component-link must be the + port-component-name of a port-component in the same module + or another module in the same application unit. The syntax + for specification follows the syntax defined for ejb-link + in the EJB 2.0 specification. + + + + + + + + + + + + + + + + + + Defines the name of the handler. The name must be unique + within the module. + + + + + + + + + + + + + + + + + The service-ref element declares a reference to a Web + service. It contains optional description, display name and + icons, a declaration of the required Service interface, + an optional WSDL document location, an optional set + of JAX-RPC mappings, an optional QName for the service element, + an optional set of Service Endpoint Interfaces to be resolved + by the container to a WSDL port, and an optional set of handlers. + + + + + + + + + + + The service-ref-name element declares logical name that the + components in the module use to look up the Web service. It + is recommended that all service reference names start with + "service/". + + + + + + + + + + The service-interface element declares the fully qualified class + name of the JAX-RPC Service interface the client depends on. + In most cases the value will be javax.xml.rpc.Service. A JAX-RPC + generated Service Interface class may also be specified. + + + + + + + + + + The wsdl-file element contains the URI location of a WSDL + file. The location is relative to the root of the module. + + + + + + + + + + The jaxrpc-mapping-file element contains the name of a file that + describes the JAX-RPC mapping between the Java interaces used by + the application and the WSDL description in the wsdl-file. The + file name is a relative path within the module file. + + + + + + + + + + The service-qname element declares the specific WSDL service + element that is being refered to. It is not specified if no + wsdl-file is declared. + + + + + + + + + + The port-component-ref element declares a client dependency + on the container for resolving a Service Endpoint Interface + to a WSDL port. It optionally associates the Service Endpoint + Interface with a particular port-component. This is only used + by the container for a Service.getPort(Class) method call. + + + + + + + + + + Declares the handler for a port-component. Handlers can + access the init-param name/value pairs using the + HandlerInfo interface. If port-name is not specified, the + handler is assumed to be associated with all ports of the + service. + + + + + + + + + + + + + + + Declares the handler for a port-component. Handlers can access the + init-param name/value pairs using the HandlerInfo interface. If + port-name is not specified, the handler is assumed to be associated + with all ports of the service. + + Used in: service-ref + + + + + + + + + + Defines the name of the handler. The name must be unique + within the module. + + + + + + + + + Defines a fully qualified class name for the handler + implementation. + + + + + + + + + + + Defines the QName of a SOAP header that will be processed + by the handler. + + + + + + + + + + The soap-role element contains a SOAP actor definition that + the Handler will play as a role. + + + + + + + + + + The port-name element defines the WSDL port-name that a + handler should be associated with. + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/resources/web-app_2_2.dtd b/workspace/ROOT/javax/servlet/resources/web-app_2_2.dtd new file mode 100644 index 0000000..8472385 --- /dev/null +++ b/workspace/ROOT/javax/servlet/resources/web-app_2_2.dtd @@ -0,0 +1,581 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/resources/web-app_2_3.dtd b/workspace/ROOT/javax/servlet/resources/web-app_2_3.dtd new file mode 100644 index 0000000..1dbdf52 --- /dev/null +++ b/workspace/ROOT/javax/servlet/resources/web-app_2_3.dtd @@ -0,0 +1,1075 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/resources/web-app_2_4.xsd b/workspace/ROOT/javax/servlet/resources/web-app_2_4.xsd new file mode 100644 index 0000000..4fc8a60 --- /dev/null +++ b/workspace/ROOT/javax/servlet/resources/web-app_2_4.xsd @@ -0,0 +1,1249 @@ + + + + + + %W% %E% + + + + + + + Copyright 2002 Sun Microsystems, Inc., 901 San Antonio + Road, Palo Alto, California 94303, U.S.A. All rights + reserved. + + Sun Microsystems, Inc. has intellectual property rights + relating to technology described in this document. In + particular, and without limitation, these intellectual + property rights may include one or more of the U.S. patents + listed at http://www.sun.com/patents and one or more + additional patents or pending patent applications in the + U.S. and other countries. + + This document and the technology which it describes are + distributed under licenses restricting their use, copying, + distribution, and decompilation. No part of this document + may be reproduced in any form by any means without prior + written authorization of Sun and its licensors, if any. + + Third-party software, including font technology, is + copyrighted and licensed from Sun suppliers. + + Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE, + JavaServer Pages, Enterprise JavaBeans and the Java Coffee + Cup logo are trademarks or registered trademarks of Sun + Microsystems, Inc. in the U.S. and other countries. + + Federal Acquisitions: Commercial Software - Government Users + Subject to Standard License Terms and Conditions. + + + + + + + + ... + + + The instance documents may indicate the published version of + the schema using the xsi:schemaLocation attribute for J2EE + namespace with the following location: + + http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd + + ]]> + + + + + + + The following conventions apply to all J2EE + deployment descriptor elements unless indicated otherwise. + + - In elements that specify a pathname to a file within the + same JAR file, relative filenames (i.e., those not + starting with "/") are considered relative to the root of + the JAR file's namespace. Absolute filenames (i.e., those + starting with "/") also specify names in the root of the + JAR file's namespace. In general, relative names are + preferred. The exception is .war files where absolute + names are preferred for consistency with the Servlet API. + + + + + + + + + + + + + + + + The web-app element is the root of the deployment + descriptor for a web application. Note that the sub-elements + of this element can be in the arbitrary order. Because of + that, the multiplicity of the elements of distributable, + session-config, welcome-file-list, jsp-config, login-config, + and locale-encoding-mapping-list was changed from "?" to "*" + in this schema. However, the deployment descriptor instance + file must not contain multiple elements of session-config, + jsp-config, and login-config. When there are multiple elements of + welcome-file-list or locale-encoding-mapping-list, the container + must concatinate the element contents. The multiple occurance + of the element distributable is redundant and the container + treats that case exactly in the same way when there is only + one distributable. + + + + + + + + + The servlet element contains the name of a servlet. + The name must be unique within the web application. + + + + + + + + + + + + The filter element contains the name of a filter. + The name must be unique within the web application. + + + + + + + + + + + + The ejb-local-ref-name element contains the name of an EJB + reference. The EJB reference is an entry in the web + application's environment and is relative to the + java:comp/env context. The name must be unique within + the web application. + + It is recommended that name is prefixed with "ejb/". + + + + + + + + + + + + The ejb-ref-name element contains the name of an EJB + reference. The EJB reference is an entry in the web + application's environment and is relative to the + java:comp/env context. The name must be unique within + the web application. + + It is recommended that name is prefixed with "ejb/". + + + + + + + + + + + + The resource-env-ref-name element specifies the name of + a resource environment reference; its value is the + environment entry name used in the web application code. + The name is a JNDI name relative to the java:comp/env + context and must be unique within a web application. + + + + + + + + + + + + The message-destination-ref-name element specifies the name of + a message destination reference; its value is the + environment entry name used in the web application code. + The name is a JNDI name relative to the java:comp/env + context and must be unique within a web application. + + + + + + + + + + + + The res-ref-name element specifies the name of a + resource manager connection factory reference. The name + is a JNDI name relative to the java:comp/env context. + The name must be unique within a web application. + + + + + + + + + + + + The env-entry-name element contains the name of a web + application's environment entry. The name is a JNDI + name relative to the java:comp/env context. The name + must be unique within a web application. + + + + + + + + + + + + + A role-name-key is specified to allow the references + from the security-role-refs. + + + + + + + + + + + + The keyref indicates the references from + security-role-ref to a specified role-name. + + + + + + + + + + + + + + + + The auth-constraintType indicates the user roles that + should be permitted access to this resource + collection. The role-name used here must either correspond + to the role-name of one of the security-role elements + defined for this web application, or be the specially + reserved role-name "*" that is a compact syntax for + indicating all roles in the web application. If both "*" + and rolenames appear, the container interprets this as all + roles. If no roles are defined, no user is allowed access + to the portion of the web application described by the + containing security-constraint. The container matches + role names case sensitively when determining access. + + + + + + + + + + + + + + + + + + The auth-methodType is used to configure the authentication + mechanism for the web application. As a prerequisite to + gaining access to any web resources which are protected by + an authorization constraint, a user must have authenticated + using the configured mechanism. Legal values are "BASIC", + "DIGEST", "FORM", "CLIENT-CERT", or a vendor-specific + authentication scheme. + + Used in: login-config + + + + + + + + + + + + + + + + The dispatcher has four legal values: FORWARD, REQUEST, INCLUDE, + and ERROR. A value of FORWARD means the Filter will be applied + under RequestDispatcher.forward() calls. A value of REQUEST + means the Filter will be applied under ordinary client calls to + the path or servlet. A value of INCLUDE means the Filter will be + applied under RequestDispatcher.include() calls. A value of + ERROR means the Filter will be applied under the error page + mechanism. The absence of any dispatcher elements in a + filter-mapping indicates a default of applying filters only under + ordinary client calls to the path or servlet. + + + + + + + + + + + + + + + + + + + + + The encodingType defines IANA character sets. + + + + + + + + + + + + + + + + The error-code contains an HTTP error code, ex: 404 + + Used in: error-page + + + + + + + + + + + + + + + + + + + The error-pageType contains a mapping between an error code + or exception type to the path of a resource in the web + application. + + Used in: web-app + + + + + + + + + + + + + The exception-type contains a fully qualified class + name of a Java exception type. + + + + + + + + + + + The location element contains the location of the + resource in the web application relative to the root of + the web application. The value of the location must have + a leading `/'. + + + + + + + + + + + + + + + Declaration of the filter mappings in this web + application is done by using filter-mappingType. + The container uses the filter-mapping + declarations to decide which filters to apply to a request, + and in what order. The container matches the request URI to + a Servlet in the normal way. To determine which filters to + apply it matches filter-mapping declarations either on + servlet-name, or on url-pattern for each filter-mapping + element, depending on which style is used. The order in + which filters are invoked is the order in which + filter-mapping declarations that match a request URI for a + servlet appear in the list of filter-mapping elements.The + filter-name value must be the value of the filter-name + sub-elements of one of the filter declarations in the + deployment descriptor. + + + + + + + + + + + + + + + + + + + + + + The logical name of the filter is declare + by using filter-nameType. This name is used to map the + filter. Each filter name is unique within the web + application. + + Used in: filter, filter-mapping + + + + + + + + + + + + + + + + The filterType is used to declare a filter in the web + application. The filter is mapped to either a servlet or a + URL pattern in the filter-mapping element, using the + filter-name value to reference. Filters can access the + initialization parameters declared in the deployment + descriptor at runtime via the FilterConfig interface. + + Used in: web-app + + + + + + + + + + + + The fully qualified classname of the filter. + + + + + + + + + + The init-param element contains a name/value pair as + an initialization param of a servlet filter + + + + + + + + + + + + + + + The form-login-configType specifies the login and error + pages that should be used in form based login. If form based + authentication is not used, these elements are ignored. + + Used in: login-config + + + + + + + + + + + The form-login-page element defines the location in the web + app where the page that can be used for login can be + found. The path begins with a leading / and is interpreted + relative to the root of the WAR. + + + + + + + + + + The form-error-page element defines the location in + the web app where the error page that is displayed + when login is not successful can be found. + The path begins with a leading / and is interpreted + relative to the root of the WAR. + + + + + + + + + + + + + + + + + The http-method contains an HTTP method recognized by the + web-app, for example GET, POST, ... + + + + + + + + + + + + + + + + + + + + + + + + The locale-encoding-mapping-list contains one or more + locale-encoding-mapping(s). + + + + + + + + + + + + + + + + + The locale-encoding-mapping contains locale name and + encoding name. The locale name must be either "Language-code", + such as "ja", defined by ISO-639 or "Language-code_Country-code", + such as "ja_JP". "Country code" is defined by ISO-3166. + + + + + + + + + + + + + + + + + + The localeType defines valid locale defined by ISO-639-1 + and ISO-3166. + + + + + + + + + + + + + + + + The login-configType is used to configure the authentication + method that should be used, the realm name that should be + used for this application, and the attributes that are + needed by the form login mechanism. + + Used in: web-app + + + + + + + + + + + The realm name element specifies the realm name to + use in HTTP Basic authorization. + + + + + + + + + + + + + + + + The mime-mappingType defines a mapping between an extension + and a mime type. + + Used in: web-app + + + + + + + + + The extension element contains a string describing an + extension. example: "txt" + + + + + + + + + + + + + + + + + The mime-typeType is used to indicate a defined mime type. + + Example: + "text/plain" + + Used in: mime-mapping + + + + + + + + + + + + + + + + + This type defines a string which contains at least one + character. + + + + + + + + + + + + + + + + The security-constraintType is used to associate + security constraints with one or more web resource + collections + + Used in: web-app + + + + + + + + + + + + + + + + + + + + The servlet-mappingType defines a mapping between a + servlet and a url pattern. + + Used in: web-app + + + + + + + + + + + + + + + + + + The servlet-name element contains the canonical name of the + servlet. Each servlet name is unique within the web + application. + + + + + + + + + + + + + + + + The servletType is used to declare a servlet. + It contains the declarative data of a + servlet. If a jsp-file is specified and the load-on-startup + element is present, then the JSP should be precompiled and + loaded. + + Used in: web-app + + + + + + + + + + + + + The servlet-class element contains the fully + qualified class name of the servlet. + + + + + + + + + + + + + + + The load-on-startup element indicates that this + servlet should be loaded (instantiated and have + its init() called) on the startup of the web + application. The optional contents of these + element must be an integer indicating the order in + which the servlet should be loaded. If the value + is a negative integer, or the element is not + present, the container is free to load the servlet + whenever it chooses. If the value is a positive + integer or 0, the container must load and + initialize the servlet as the application is + deployed. The container must guarantee that + servlets marked with lower integers are loaded + before servlets marked with higher integers. The + container may choose the order of loading of + servlets with the same load-on-start-up value. + + + + + + + + + + + + + + + + + The session-configType defines the session parameters + for this web application. + + Used in: web-app + + + + + + + + + + The session-timeout element defines the default + session timeout interval for all sessions created + in this web application. The specified timeout + must be expressed in a whole number of minutes. + If the timeout is 0 or less, the container ensures + the default behaviour of sessions is never to time + out. If this element is not specified, the container + must set its default timeout period. + + + + + + + + + + + + + + + The transport-guaranteeType specifies that the communication + between client and server should be NONE, INTEGRAL, or + CONFIDENTIAL. NONE means that the application does not + require any transport guarantees. A value of INTEGRAL means + that the application requires that the data sent between the + client and server be sent in such a way that it can't be + changed in transit. CONFIDENTIAL means that the application + requires that the data be transmitted in a fashion that + prevents other entities from observing the contents of the + transmission. In most cases, the presence of the INTEGRAL or + CONFIDENTIAL flag will indicate that the use of SSL is + required. + + Used in: user-data-constraint + + + + + + + + + + + + + + + + + + + + The user-data-constraintType is used to indicate how + data communicated between the client and container should be + protected. + + Used in: security-constraint + + + + + + + + + + + + + + + + + + The elements that use this type designate a path starting + with a "/" and interpreted relative to the root of a WAR + file. + + + + + + + + + + + + + + + + + This type contains the recognized versions of + web-application supported. It is used to designate the + version of the web application. + + + + + + + + + + + + + + + + + + + + + The context-param element contains the declaration + of a web application's servlet context + initialization parameters. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The web-resource-collectionType is used to identify a subset + of the resources and HTTP methods on those resources within + a web application to which a security constraint applies. If + no HTTP methods are specified, then the security constraint + applies to all HTTP methods. + + Used in: security-constraint + + + + + + + + + + The web-resource-name contains the name of this web + resource collection. + + + + + + + + + + + + + + + + + + The welcome-file-list contains an ordered list of welcome + files elements. + + Used in: web-app + + + + + + + + + + The welcome-file element contains file name to use + as a default welcome file, such as index.html + + + + + + + + + + diff --git a/workspace/ROOT/javax/servlet/resources/web-app_2_5.xsd b/workspace/ROOT/javax/servlet/resources/web-app_2_5.xsd new file mode 100644 index 0000000..9b3ec7e --- /dev/null +++ b/workspace/ROOT/javax/servlet/resources/web-app_2_5.xsd @@ -0,0 +1,950 @@ + + + + + + @(#)web-app_2_5.xsds1.62 05/08/06 + + + + + + ... + +The instance documents may indicate the published version of +the schema using the xsi:schemaLocation attribute for Java EE +namespace with the following location: +http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd +]]> + + + + + The following conventions apply to all Java EE deployment + descriptor elements unless indicated otherwise. - In + elements that specify a pathname to a file within the same + JAR file, relative filenames (i.e., those not starting with + "/") are considered relative to the root of the JAR file's + namespace. Absolute filenames (i.e., those starting with + "/") also specify names in the root of the JAR file's + namespace. In general, relative names are preferred. The + exception is .war files where absolute names are preferred + for consistency with the Servlet API. + + + + + + + + + The web-app element is the root of the deployment + descriptor for a web application. Note that the + sub-elements of this element can be in the arbitrary + order. Because of that, the multiplicity of the elements + of distributable, session-config, welcome-file-list, + jsp-config, login-config, and + locale-encoding-mapping-list was changed from "?" to "*" + in this schema. However, the deployment descriptor + instance file must not contain multiple elements of + session-config, jsp-config, and login-config. When there + are multiple elements of welcome-file-list or + locale-encoding-mapping-list, the container must + concatenate the element contents. The multiple occurence + of the element distributable is redundant and the + container treats that case exactly in the same way when + there is only one distributable. + + + + + + The servlet element contains the name of a servlet. + The name must be unique within the web application. + + + + + + + + + The filter element contains the name of a filter. + The name must be unique within the web application. + + + + + + + + + The ejb-local-ref-name element contains the name of + an EJB reference. The EJB reference is an entry in + the web application's environment and is relative to + the java:comp/env context. The name must be unique + within the web application. It is recommended that + name is prefixed with "ejb/". + + + + + + + + + The ejb-ref-name element contains the name of an EJB + reference. The EJB reference is an entry in the web + application's environment and is relative to the + java:comp/env context. The name must be unique + within the web application. It is recommended that + name is prefixed with "ejb/". + + + + + + + + + The resource-env-ref-name element specifies the name + of a resource environment reference; its value is + the environment entry name used in the web + application code. The name is a JNDI name relative + to the java:comp/env context and must be unique + within a web application. + + + + + + + + + The message-destination-ref-name element specifies + the name of a message destination reference; its + value is the environment entry name used in the web + application code. The name is a JNDI name relative + to the java:comp/env context and must be unique + within a web application. + + + + + + + + + The res-ref-name element specifies the name of a + resource manager connection factory reference. The + name is a JNDI name relative to the java:comp/env + context. The name must be unique within a web + application. + + + + + + + + + The env-entry-name element contains the name of a + web application's environment entry. The name is a + JNDI name relative to the java:comp/env context. The + name must be unique within a web application. + + + + + + + + + A role-name-key is specified to allow the references + from the security-role-refs. + + + + + + + + + The keyref indicates the references from + security-role-ref to a specified role-name. + + + + + + + + + + + The auth-constraintType indicates the user roles that + should be permitted access to this resource collection. + The role-name used here must either correspond to the + role-name of one of the security-role elements defined + for this web application, or be the specially reserved + role-name "*" that is a compact syntax for indicating + all roles in the web application. If both "*" and + rolenames appear, the container interprets this as all + roles. If no roles are defined, no user is allowed + access to the portion of the web application described + by the containing security-constraint. The container + matches role names case sensitively when determining + access. + + + + + + + + + + + + + The auth-methodType is used to configure the + authentication mechanism for the web application. As a + prerequisite to gaining access to any web resources + which are protected by an authorization constraint, a + user must have authenticated using the configured + mechanism. Legal values are "BASIC", "DIGEST", "FORM", + "CLIENT-CERT", or a vendor-specific authentication + scheme. Used in: login-config + + + + + + + + + + + The dispatcher has four legal values: FORWARD, REQUEST, + INCLUDE, and ERROR. A value of FORWARD means the Filter + will be applied under RequestDispatcher.forward() calls. + A value of REQUEST means the Filter will be applied + under ordinary client calls to the path or servlet. A + value of INCLUDE means the Filter will be applied under + RequestDispatcher.include() calls. A value of ERROR + means the Filter will be applied under the error page + mechanism. The absence of any dispatcher elements in a + filter-mapping indicates a default of applying filters + only under ordinary client calls to the path or servlet. + + + + + + + + + + + + + + + + The encodingType defines IANA character sets. + + + + + + + + + + + The error-code contains an HTTP error code, ex: 404 Used + in: error-page + + + + + + + + + + + + + + The error-pageType contains a mapping between an error + code or exception type to the path of a resource in the + web application. Used in: web-app + + + + + + + + + The exception-type contains a fully + qualified class name of a Java exception + type. + + + + + + + + The location element contains the location of + the resource in the web application relative to + the root of the web application. The value of + the location must have a leading `/'. + + + + + + + + + + + Declaration of the filter mappings in this web + application is done by using filter-mappingType. The + container uses the filter-mapping declarations to decide + which filters to apply to a request, and in what order. + The container matches the request URI to a Servlet in + the normal way. To determine which filters to apply it + matches filter-mapping declarations either on + servlet-name, or on url-pattern for each filter-mapping + element, depending on which style is used. The order in + which filters are invoked is the order in which + filter-mapping declarations that match a request URI for + a servlet appear in the list of filter-mapping + elements.The filter-name value must be the value of the + filter-name sub-elements of one of the filter + declarations in the deployment descriptor. + + + + + + + + + + + + + + + + + The logical name of the filter is declare by using + filter-nameType. This name is used to map the filter. + Each filter name is unique within the web application. + Used in: filter, filter-mapping + + + + + + + + + + + The filterType is used to declare a filter in the web + application. The filter is mapped to either a servlet or + a URL pattern in the filter-mapping element, using the + filter-name value to reference. Filters can access the + initialization parameters declared in the deployment + descriptor at runtime via the FilterConfig interface. + Used in: web-app + + + + + + + + + The fully qualified classname of the filter. + + + + + + + The init-param element contains a name/value + pair as an initialization param of a servlet + filter + + + + + + + + + + + The form-login-configType specifies the login and error + pages that should be used in form based login. If form + based authentication is not used, these elements are + ignored. Used in: login-config + + + + + + + The form-login-page element defines the location + in the web app where the page that can be used + for login can be found. The path begins with a + leading / and is interpreted relative to the + root of the WAR. + + + + + + + The form-error-page element defines the location + in the web app where the error page that is + displayed when login is not successful can be + found. The path begins with a leading / and is + interpreted relative to the root of the WAR. + + + + + + + + + + + A HTTP method type as defined in HTTP 1.1 section 2.2. + + + + + + + + + + + + + + + + The locale-encoding-mapping-list contains one or more + locale-encoding-mapping(s). + + + + + + + + + + + + The locale-encoding-mapping contains locale name and + encoding name. The locale name must be either + "Language-code", such as "ja", defined by ISO-639 or + "Language-code_Country-code", such as "ja_JP". "Country + code" is defined by ISO-3166. + + + + + + + + + + + + + The localeType defines valid locale defined by ISO-639-1 + and ISO-3166. + + + + + + + + + + + The login-configType is used to configure the + authentication method that should be used, the realm + name that should be used for this application, and the + attributes that are needed by the form login mechanism. + Used in: web-app + + + + + + + + The realm name element specifies the realm name + to use in HTTP Basic authorization. + + + + + + + + + + + + The mime-mappingType defines a mapping between an + extension and a mime type. Used in: web-app + + + + + + The extension element contains a string describing + an extension. example: "txt" + + + + + + + + + + + + The mime-typeType is used to indicate a defined mime + type. Example: "text/plain" Used in: mime-mapping + + + + + + + + + + + + + This type defines a string which contains at least one + character. + + + + + + + + + + + + + + + + + + + The security-constraintType is used to associate + security constraints with one or more web resource + collections Used in: web-app + + + + + + + + + + + + + + + The servlet-mappingType defines a mapping between a + servlet and a url pattern. Used in: web-app + + + + + + + + + + + + + The servlet-name element contains the canonical name of + the servlet. Each servlet name is unique within the web + application. + + + + + + + + + + + The servletType is used to declare a servlet. It + contains the declarative data of a servlet. If a + jsp-file is specified and the load-on-startup element is + present, then the JSP should be precompiled and loaded. + Used in: web-app + + + + + + + + + + The servlet-class element contains the fully + qualified class name of the servlet. + + + + + + + + + + The load-on-startup element indicates that this + servlet should be loaded (instantiated and have + its init() called) on the startup of the web + application. The optional contents of these + element must be an integer indicating the order + in which the servlet should be loaded. If the + value is a negative integer, or the element is + not present, the container is free to load the + servlet whenever it chooses. If the value is a + positive integer or 0, the container must load + and initialize the servlet as the application is + deployed. The container must guarantee that + servlets marked with lower integers are loaded + before servlets marked with higher integers. The + container may choose the order of loading of + servlets with the same load-on-start-up value. + + + + + + + + + + + + + The session-configType defines the session parameters + for this web application. + + Used in: web-app + + + + + + + The session-timeout element defines the default + session timeout interval for all sessions + created in this web application. The specified + timeout must be expressed in a whole number of + minutes. If the timeout is 0 or less, the + container ensures the default behaviour of + sessions is never to time out. If this element + is not specified, the container must set its + default timeout period. + + + + + + + + + + + The transport-guaranteeType specifies that the + communication between client and server should be NONE, + INTEGRAL, or CONFIDENTIAL. NONE means that the + application does not require any transport guarantees. A + value of INTEGRAL means that the application requires + that the data sent between the client and server be sent + in such a way that it can't be changed in transit. + CONFIDENTIAL means that the application requires that + the data be transmitted in a fashion that prevents other + entities from observing the contents of the + transmission. In most cases, the presence of the + INTEGRAL or CONFIDENTIAL flag will indicate that the use + of SSL is required. Used in: user-data-constraint + + + + + + + + + + + + + + + The user-data-constraintType is used to indicate how + data communicated between the client and container + should be protected. Used in: security-constraint + + + + + + + + + + + + + The elements that use this type designate a path + starting with a "/" and interpreted relative to the root + of a WAR file. + + + + + + + + + + + + + This type contains the recognized versions of + web-application supported. It is used to designate the + version of the web application. + + + + + + + + + + + + + + + The context-param element contains the + declaration of a web application's servlet + context initialization parameters. + + + + + + + + + + + + + + + + + + + + + + + xsd:attribute name="metadata-complete" type="xsd:boolean"> + + + The metadata-complete attribute defines whether this + deployment descriptor is complete, or whether the class + files of the jar file should be examined for annotations + that specify deployment information. If + metadata-complete is set to "true", the deployment tool + must ignore any Servlet annotations present in the class + files of the application. If metadata-complete is not + specified or is set to "false", the deployment tool must + examine the class files of the application for + annotations, as specified by the Servlet specifications. + + + + + + + + + The web-resource-collectionType is used to identify a + subset of the resources and HTTP methods on those + resources within a web application to which a security + constraint applies. If no HTTP methods are specified, + then the security constraint applies to all HTTP + methods. Used in: security-constraint + + + + + + + The web-resource-name contains the name of this + web resource collection. + + + + + + + + + + + + + + The welcome-file-list contains an ordered list of + welcome files elements. Used in: web-app + + + + + + + The welcome-file element contains file name to + use as a default welcome file, such as + index.html + + + + + + + diff --git a/workspace/ROOT/javax/servlet/resources/xml.xsd b/workspace/ROOT/javax/servlet/resources/xml.xsd new file mode 100644 index 0000000..0ce0166 --- /dev/null +++ b/workspace/ROOT/javax/servlet/resources/xml.xsd @@ -0,0 +1,97 @@ + + + + + + + + See http://www.w3.org/XML/1998/namespace.html and + http://www.w3.org/TR/REC-xml for information about this namespace. + + + + + This schema defines attributes and an attribute group + suitable for use by + schemas wishing to allow xml:base, xml:lang or xml:space attributes + on elements they define. + + To enable this, such a schema must import this schema + for the XML namespace, e.g. as follows: + <schema . . .> + . . . + <import namespace="http://www.w3.org/XML/1998/namespace" + schemaLocation="http://www.w3.org/2001/03/xml.xsd"/> + + Subsequently, qualified reference to any of the attributes + or the group defined below will have the desired effect, e.g. + + <type . . .> + . . . + <attributeGroup ref="xml:specialAttrs"/> + + will define a type which will schema-validate an instance + element with any of those attributes + + + + In keeping with the XML Schema WG's standard versioning + policy, this schema document will persist at + http://www.w3.org/2001/03/xml.xsd. + At the date of issue it can also be found at + http://www.w3.org/2001/xml.xsd. + The schema document at that URI may however change in the future, + in order to remain compatible with the latest version of XML Schema + itself. In other words, if the XML Schema namespace changes, the version + of this document at + http://www.w3.org/2001/xml.xsd will change + accordingly; the version at + http://www.w3.org/2001/03/xml.xsd will not change. + + + + + + In due course, we should install the relevant ISO 2- and 3-letter + codes as the enumerated possible values . . . + + + + + + + + + + + + + + + See http://www.w3.org/TR/xmlbase/ for + information about this attribute. + + + + + + + + + + diff --git a/workspace/RequeteSimple/.classpath b/workspace/RequeteSimple/.classpath new file mode 100644 index 0000000..233be1d --- /dev/null +++ b/workspace/RequeteSimple/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/workspace/RequeteSimple/.project b/workspace/RequeteSimple/.project new file mode 100644 index 0000000..3e3d3bd --- /dev/null +++ b/workspace/RequeteSimple/.project @@ -0,0 +1,17 @@ + + + RequeteSimple + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/workspace/RequeteSimple/.settings/org.eclipse.jdt.ui.prefs b/workspace/RequeteSimple/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 0000000..64eb572 --- /dev/null +++ b/workspace/RequeteSimple/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,6 @@ +#Fri Dec 21 09:41:16 CET 2007 +eclipse.preferences.version=1 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org;com;oracle.jdbc.driver; +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 diff --git a/workspace/RequeteSimple/.settings/org.eclipse.ltk.core.refactoring.prefs b/workspace/RequeteSimple/.settings/org.eclipse.ltk.core.refactoring.prefs new file mode 100644 index 0000000..e094634 --- /dev/null +++ b/workspace/RequeteSimple/.settings/org.eclipse.ltk.core.refactoring.prefs @@ -0,0 +1,3 @@ +#Fri Dec 21 09:41:16 CET 2007 +eclipse.preferences.version=1 +org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false diff --git a/workspace/RequeteSimple/META-INF/MANIFEST.MF b/workspace/RequeteSimple/META-INF/MANIFEST.MF new file mode 100644 index 0000000..626bfa2 --- /dev/null +++ b/workspace/RequeteSimple/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: fr.blankoworld.ihm.IHMPrincipale + diff --git a/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Connexion.class b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Connexion.class new file mode 100644 index 0000000..7fcf5bf Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Connexion.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Connexion.java b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Connexion.java new file mode 100644 index 0000000..62c86cb --- /dev/null +++ b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Connexion.java @@ -0,0 +1,182 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; + +/** + * @author 3dossmanno + */ +public class Connexion { + + + // Donnees privees + private String serveur; + private String port; + private String bdd; + private String id; + private String mdp; + + private Connection connection; + + private ResultSet result; + + // Constructeur + public Connexion(String server, String port, String database, String login, String password) + { + this.serveur = server; + this.port = port; + this.bdd = database; + this.id = login; + this.mdp = password; + } + + // Ascesseurs, etc ... + public String getServer(){ + return this.serveur; + } + + public void setServer(String chaine){ + this.serveur = chaine; + } + + /** + * @return the port + * @uml.property name="port" + */ + public String getPort(){ + return this.port; + } + + /** + * @param port the port to set + * @uml.property name="port" + */ + public void setPort(String chaine){ + this.port = chaine; + } + + public String getDatabase(){ + return this.bdd; + } + + public void setDatabase(String chaine){ + this.bdd = chaine; + } + + public String getLogin(){ + return this.id; + } + + public void setLogin(String chaine){ + this.id = chaine; + } + + public String getPassword(){ + return this.mdp; + } + + public void setPassword(String chaine){ + this.mdp = chaine; + } + + // Verification presence du pilote + public String[] driverPresent(){ + String[] tableau = new String[2]; + + try{ + // On verifie que le pilote Oracle est disponible + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + tableau[0] = "0"; + tableau[1] = "Pilote Oracle trouve"; + } + catch(ClassNotFoundException ex){ + tableau[0] = "1"; + tableau[1] = "Pilote pas trouve"; + } + + return tableau; + } + + // Connexion a la base + // Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur + // Ceci permet d'avoir des messages en francais ... + public String[] connect(){ + String[] tableau = new String[2]; + + // S'il l'est, nous continuons en preparant notre creme + connection = null; + String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd; + String identifiant = this.id; + String mdp = this.mdp.toString(); + + // puis nous tentons d'appliquer la creme + try { + connection = DriverManager.getConnection(url, identifiant, mdp); + tableau[0] = "0"; + tableau[1] = "Acces a la base: Accepte.\n"; + + tableau[1] += "Acces: " + url + "\n"; + + DatabaseMetaData metaData; + + metaData = connection.getMetaData(); + tableau[1] += "Driver: " + metaData.getDriverName() + "\n"; + tableau[1] += "Version: " + metaData.getDriverVersion() + "\n"; + + } + catch(SQLException sqle) { + tableau[0] = "1"; + tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage(); + } + + return tableau; + } + + // Deconnexion a la base de donnees + public String[] disconnect(){ + String[] tableau = new String[2]; + + if(connection != null){ + try{ + connection.close(); + tableau[0] = "0"; + tableau[1] = "Connexion fermee."; + } catch(Exception e){ + tableau[0] = "1"; + tableau[1] = e.getMessage(); + } + } + + return tableau; + } + + public String[] sendQuery(String query){ + String[] tableau = new String[2]; + + try { + // Creation d'une requete + Statement requete = connection.createStatement(); + // Recuperation du resultat de la requete + this.result = requete.executeQuery(query); // executeQuery ne retourne jamais null ! + + // Requete reussie + tableau[0] = "0"; + tableau[1] = "Requete: Envoyee et recue."; + + } catch (Exception ex){ + tableau[0] = "1"; + tableau[1] = "Requete: Non reussie."; + } + + return tableau; + } + + public ResultSet getQueryResult(){ + return this.result; + } + +} diff --git a/workspace/RequeteSimple/fr/blankoworld/connexionBDD/META-INF/MANIFEST.MF b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/META-INF/MANIFEST.MF new file mode 100644 index 0000000..52a78e6 --- /dev/null +++ b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/META-INF/MANIFEST.MF @@ -0,0 +1,2199 @@ +Manifest-Version: 1.0 +Specification-Title: "Oracle JDBC driver classes for use with JDK1.4" +Specification-Version: "Oracle JDBC Driver version - 9.0.2.0.0" +Specification-Vendor: "Oracle Corporation" . +Implementation-Title: "ojdbc14.jar" +Implementation-Version: "Oracle JDBC Driver version - 9.0.2.0.0" +Implementation-Vendor: "Oracle Corporation" +Implementation-Time: "Thu Apr 25 23:14:02 2002" + +Name: oracle/sql/ARRAY.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dmaLI4JYUr93CzKOLgN6E21Vi5M= +MD5-Digest: c0XbokBF/OW0//pY4JCVnw== + +Name: oracle/sql/DatumWithConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: LTPZ8X/+DDNWesdKYiAowk0wnH0= +MD5-Digest: IYBoyZ3JK0Xo4oseRqwLcg== + +Name: oracle/sql/ArrayDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: u9tszi0PPXsuj1WeMUwsAP2cDxM= +MD5-Digest: 3jLTHQ6ikYXhjUbGUOdcfg== + +Name: oracle/sql/TypeDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: H4vZ6P3fstokDnYd2r22XcTBTms= +MD5-Digest: 8L1ip338DazRi0eXmkJjhQ== + +Name: oracle/sql/SQLName.class +Digest-Algorithms: SHA MD5 +SHA-Digest: k87KR5IrEgJxw5zijb76Ylbg6P8= +MD5-Digest: 2cH/AlBVz2WO48nMaYbCXg== + +Name: oracle/sql/LobDBAccessImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nMQB1w7ABpBZdpnDKTkHfxAJ5Zg= +MD5-Digest: oJbv0nJlXg4L6hDd4cebqA== + +Name: oracle/sql/BlobDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lCeo6aCNZW09+6wVqchJfDn7WDE= +MD5-Digest: eCidkvOMRjKVZugusWoKZQ== + +Name: oracle/sql/ClobDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WhTW78FBUhUlNCbiwDJ8oJGHcL4= +MD5-Digest: eGAflcBZj4aThvstYOh3oQ== + +Name: oracle/sql/BfileDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U5TpkBUxii9BuJsftF5B40c95vU= +MD5-Digest: n0Olri3rt0+auzn7kzDU9Q== + +Name: oracle/sql/StructDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DZLVHTNLxpM/SrnbmvYU7ZnCjQ8= +MD5-Digest: U3jD6zUYeY8aRenr7QuUgQ== + +Name: oracle/sql/STRUCT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KjRJuf26U56eCC0VFaq4sgQdQvQ= +MD5-Digest: ESh7ekDFr+wHxgYuVXYubQ== + +Name: oracle/sql/BLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YdCoSwsZJODsKxo8/Im33SiW0eg= +MD5-Digest: DG0ZZCIRtwfrRDZ3i6Pslg== + +Name: oracle/sql/CLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 87s7h92BkVrxEzg9A7V3VaF3lMM= +MD5-Digest: zWYfzq4FcBziYd37UWdcmw== + +Name: oracle/sql/BFILE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JBjeYLW56wopswruVu5jC21Ttzw= +MD5-Digest: ZM/xTRYYhYfb8kRNeG9+bg== + +Name: oracle/sql/ROWID.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YKpkYZFRLJvpymBFWdcCtEsYc2E= +MD5-Digest: xCQOZ/Ue3O0BVywsO34rUg== + +Name: oracle/sql/RAW.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WnR4XVYEtn9QQ97pdq7yhOXMU+o= +MD5-Digest: MySTAn1t8VoIO3gJZjGnGQ== + +Name: oracle/sql/CHAR.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WI+n2pYte7/SF06GsJdAdPWyFtA= +MD5-Digest: I6xMrtTaJ6tS6wkiyiygvA== + +Name: oracle/sql/REF.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gcth6Fur3799Dadn8hk+TGA0kTo= +MD5-Digest: 1AoaOGuVIgK3MFfsy43GGA== + +Name: oracle/sql/OPAQUE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tn5BWea4Q1cizI5MtD80CDHCx8s= +MD5-Digest: J7NRoctd8WUR+seJFpLT2w== + +Name: oracle/sql/CustomDatumFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YP1uKDUai1IdrMBOG2bv16xPGX0= +MD5-Digest: IleX9p1VBIJYP/r8ahEceg== + +Name: oracle/sql/CustomDatum.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UYkpvvDlSBoRqPuttVbplZ2bfKE= +MD5-Digest: B1tL8qfjke7u1m0zdI3c+w== + +Name: oracle/sql/ORADataFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pGGV+XvqLAKqEv52So7dZ6exmZQ= +MD5-Digest: 6nvu3d+jXwrhbYBJhpwiAw== + +Name: oracle/sql/ORAData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: QOsLKd6H70Pfz1ozJB+Xc/ncLGw= +MD5-Digest: VKfEdDUBSW0N2mn1jeD3kw== + +Name: oracle/sql/OpaqueDescriptor.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kXFKCF1da8FvvT9WtRWX5gPpR14= +MD5-Digest: 357qM41FN4ZpomFVxZaBjA== + +Name: oracle/sql/JAVA_STRUCT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +ZokJm+D3cMM/zIp4N1jbdloTD8= +MD5-Digest: B9GYS82UdAjL/aw6147RRA== + +Name: oracle/sql/LobPlsqlUtil.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jdejUNC9LafH3bIVuhHy2yGvQ0c= +MD5-Digest: PfLIMW753A/amrCLichPOw== + +Name: oracle/sql/OracleJdbc2SQLInput.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8F7zpeez+ncywdnvqLNlrtt+lL8= +MD5-Digest: WpuUMEPy2IGSW8s2uf/+XQ== + +Name: oracle/sql/OracleSQLOutput.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rlbc0CqZq+ZfYNamR0r4jLS3UrQ= +MD5-Digest: vucgxszioH3+LKqSstiCFw== + +Name: oracle/sql/SQLUtil.class +Digest-Algorithms: SHA MD5 +SHA-Digest: blujZm0sOm+Jo6gdT4OiC3YQtSE= +MD5-Digest: lVp9oWJUEpeW+40MjK+WQw== + +Name: oracle/sql/Mutable.class +Digest-Algorithms: SHA MD5 +SHA-Digest: I5inGoeXFe4PI4Y+VxOd+FpB6TM= +MD5-Digest: ARLS8eCwvIbU79I0TYSENw== + +Name: oracle/sql/DATE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BmR6VVV+jo5xC9s9HeyLKqZaFxE= +MD5-Digest: jLFfN2EaDG6vDofwRwnClA== + +Name: oracle/sql/Datum.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fLK894qTCMEsmPxZfkdT5h9QbQ8= +MD5-Digest: KlyY5/IYpbiF1Nj6p5yV4Q== + +Name: oracle/sql/INTERVALYM.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HRejRz4Bg7tl8lUTVYc0e8Xa9MA= +MD5-Digest: pVh3Vpjf+2FmJl+nR2ZfvQ== + +Name: oracle/sql/LdxLib.class +Digest-Algorithms: SHA MD5 +SHA-Digest: V1WsJh65/NyK/X/9F8Po2VXayRY= +MD5-Digest: lcre3ar7E9GtPmPMtZ+Aew== + +Name: oracle/sql/LdxLibServer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: u7CMGGuGcSdxFydurPULd8yyCdw= +MD5-Digest: QgITiGHPBVLPzsOzbAY9JA== + +Name: oracle/sql/LdxLibThin.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qqaOmLsJ/tBgB1aqEJMbnMEO26k= +MD5-Digest: PWIm08r24Ztm66Anpsw7tw== + +Name: oracle/sql/LnxLib.class +Digest-Algorithms: SHA MD5 +SHA-Digest: CqDxmXoq4gsE18BRzRVWh4LETTA= +MD5-Digest: RoKoDx5IO4yK3wJzthp5TA== + +Name: oracle/sql/LnxLibServer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: E6KD4v4XPv1UO91d61SimuH7j2k= +MD5-Digest: lhSPa0mika9yWGyGAtQ4cQ== + +Name: oracle/sql/LnxLibThin$lnxqc.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kidzMmd4QNnZ8ATm3/vzVKv/dvA= +MD5-Digest: 1/MQeJPu1kJz+Mi9eRsCYA== + +Name: oracle/sql/LnxLibThin.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qZ8JiUYqODUHkGVx07uCmZSYTVk= +MD5-Digest: uSoZVN7tw1Nhynzs7f8wlg== + +Name: oracle/sql/LnxLibThinFormat.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pcpbQGm1g3AnRr6RPxQJLAM7IXk= +MD5-Digest: ik9vH2MjY8wnc7ibQwVbig== + +Name: oracle/sql/LoadCorejava.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HIBxiVR1VtP4hutHoni6EFf9ANo= +MD5-Digest: P4leeiZ3muq76m+apKT05Q== + +Name: oracle/sql/NUMBER.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ACLbxB2dcQ9DeIP5i8FqTbXoJC0= +MD5-Digest: sGBRHkRgocK7T6nEJ3cjFA== + +Name: oracle/sql/OffsetDST.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MVp0aUKK3IbZ7infn4TsbDiWwZ8= +MD5-Digest: LA2MLQC3EV4RW2UqjSBZdQ== + +Name: oracle/sql/TIMESTAMP.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Z8CBMiqzuCuexsLgDajZPLKnC6w= +MD5-Digest: Yyl/K5ZBf6Hoy0djLe/wrg== + +Name: oracle/sql/TIMESTAMPLTZ.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mUKvAZ5LQ4aH3Kh4ors+/FECx00= +MD5-Digest: gy+Mojrf4ljjOLZ1IDV8Nw== + +Name: oracle/sql/TIMESTAMPTZ.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vuD2FkJsbuAlxaInKwX1Z7ohA6M= +MD5-Digest: H6eih0gyd+JtBwOBNWJdcg== + +Name: oracle/sql/TIMEZONETAB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xedgHU5FnHV0Jn7c5JlZIjYfu8s= +MD5-Digest: 7Mx5oUE7lh21FOojQe5W6A== + +Name: oracle/sql/TRANSDUMP.class +Digest-Algorithms: SHA MD5 +SHA-Digest: F7hSpgN0hnAh5Y37Sla/b9wk2fg= +MD5-Digest: V2RdJTahcD9OpvfgdM8z4w== + +Name: oracle/sql/TableClass.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bSljZt8ygEaM0y/xsCGQLsaMpwg= +MD5-Digest: /9mVnFgK9MouJXmRPuH26A== + +Name: oracle/sql/ZONEIDMAP.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Xv3eMJYjqyUcUjaazd8QgXUDi8c= +MD5-Digest: lyjtjxXvqd/ib+cF4ajudQ== + +Name: oracle/sql/CharacterBuffer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bDyggPTeaIIAvdn9ZeE+QF4INtA= +MD5-Digest: i8yWpwx8F2+2t0lk0QAdWw== + +Name: oracle/sql/converter/CharacterConverter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZOPUomREpwnpcDXHnT5mayumIWg= +MD5-Digest: oQ2tnvtAlt6ZBbxATu0iAw== + +Name: oracle/sql/converter/CharacterConverter12Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: uafWI+z8Mo0VGD/4HRKiA92z1UQ= +MD5-Digest: hw5MByOetgFvrYAcIGJ+/w== + +Name: oracle/sql/converter/CharacterConverter1Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: swB/pfZ2l9Afdbb6b34tPv1Qxq4= +MD5-Digest: ziNzzD85HXqobkHbBbMgoQ== + +Name: oracle/sql/converter/CharacterConverter2ByteFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KmL0ZynWywM0cOB9c0qXW4Cbevk= +MD5-Digest: +6TS5W6ZaBtI18U3a5uOSA== + +Name: oracle/sql/converter/CharacterConverterGB18030.class +Digest-Algorithms: SHA MD5 +SHA-Digest: zD25mvmaiAiiP8gGOysCiujhJy0= +MD5-Digest: ldmrXEbp2W7YNjuG6dVURw== + +Name: oracle/sql/converter/CharacterConverterGroup.class +Digest-Algorithms: SHA MD5 +SHA-Digest: EzLOxY5U8H6Qihx6h6RA3k+i4R0= +MD5-Digest: WAqx8mq5qRv5QXXCTSk++g== + +Name: oracle/sql/converter/CharacterConverterJAEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: W3wiUSq2bia/erC6uPJmWSpOXpI= +MD5-Digest: Oen4i22sJTb/YiuPq1O2Qg== + +Name: oracle/sql/converter/CharacterConverterLC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U+Q4s3oOYLrbNTe82ly357E2QX8= +MD5-Digest: MqQSllgTkGh+/wG+9WY9RQ== + +Name: oracle/sql/converter/CharacterConverterLCFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: sx0qSwu0GrDEQW+gHp7g90b8xFY= +MD5-Digest: PZtrt/8GEHVOhHd5IChOzA== + +Name: oracle/sql/converter/CharacterConverterSJIS.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yM8fTP69yUownQjQlzLG9W36saY= +MD5-Digest: n+qmst7aSqLkIwk5Jfa5Hw== + +Name: oracle/sql/converter/CharacterConverterShift.class +Digest-Algorithms: SHA MD5 +SHA-Digest: sGTaFp3SbfSMT8UiWkwHn5wL4ww= +MD5-Digest: 7tmLvyL+R4V5+CaMpuRhPA== + +Name: oracle/sql/converter/CharacterConverterZHTEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Y+3bV7epIGi0ScCwDE/dRn/lPi8= +MD5-Digest: bc9k3dtSdMzm6zZYkNN9MA== + +Name: oracle/sql/CharacterRepConstants.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lWMTpI+SzYpz/Y8O+b+LLymca7w= +MD5-Digest: i1cnc7lSBo/GtEd11UujWQ== + +Name: oracle/sql/CharacterSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DmlhMQXFjVJtfUGhJqO4ZhEm70c= +MD5-Digest: 0a/y5sG7jV3ybIbPnBbm7w== + +Name: oracle/sql/CharacterSet12Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8j2MDk10lMX9BKHwAQyZQ5egkaY= +MD5-Digest: 1SVdT+BQAYQQF6GsPWE5ww== + +Name: oracle/sql/CharacterSet1Byte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5UjyOx6B1QhuPMX1qxohFXMnrbI= +MD5-Digest: 1nFNKF7GIyU9Z0fV+VMzlQ== + +Name: oracle/sql/CharacterSet2ByteFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kaYdbzyyB17Nb137sndmlk+K6jw= +MD5-Digest: 5H68ulQQGeYRfhGK7pdZbw== + +Name: oracle/sql/CharacterSetAL16UTF16.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wK13JeML28ElJddybKIIdnDkM0A= +MD5-Digest: 2aBcF1y3SyNGIPU8MX/HlA== + +Name: oracle/sql/CharacterSetAL16UTF16LE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Diz5QLXjf6CcpXtPUJIbK5FX9WQ= +MD5-Digest: 2qhFKv1zlTtcMs0V/G8SLg== + +Name: oracle/sql/CharacterSetAL32UTF8.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mLN1mrMg5065CDbYmd1mc4CRYek= +MD5-Digest: n66jBlOap0uu30Prg/ukfQ== + +Name: oracle/sql/CharacterSetFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Qlwjz43Q4gHryS522JV9hZW0UlU= +MD5-Digest: S913Wsz9heUq3VsK9oYr6g== + +Name: oracle/sql/CharacterSetFactoryDefault.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4La8H+hk58/YoyPRAFDOiRq/ZVI= +MD5-Digest: /Olol7UWOuf8SjgOb6LwBA== + +Name: oracle/sql/CharacterSetFactoryThin.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rYoGGThtO/TaXAmLEywji+TL49U= +MD5-Digest: +ooX8tlnw/83rDyzibZMUw== + +Name: oracle/sql/CharacterSetByte.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1qdr8DEyw82Cf4vNXZjZKE5ZuH0= +MD5-Digest: pvNROxQklg3iu0EcwMoe+Q== + +Name: oracle/sql/CharacterSetUnknown.class +Digest-Algorithms: SHA MD5 +SHA-Digest: g1tIpWM0g0cWJ4fkuBObrT02e/0= +MD5-Digest: R/IUrofcoLhjAZU9+h7iEQ== + +Name: oracle/sql/CharacterSetGB18030.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JV+nhbN0CQIC4c/qRxeZeOZ5WXE= +MD5-Digest: FJgyxBwW8QIxsPiymZt6+A== + +Name: oracle/sql/CharacterSetJAEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: TYoK69edpanLC3AIFbKmppgglks= +MD5-Digest: zlS0Lq36kiYcyYrtKCLuUw== + +Name: oracle/sql/CharacterSetLCFixed.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lPtJJi8fHZKNElnV0RmcT3yeNDg= +MD5-Digest: /8iJPYgthyb6H0fyAav3YQ== + +Name: oracle/sql/CharacterSetSJIS.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tX86UTKxDPkQ33ZU+MoDEPZ/hPY= +MD5-Digest: LwTLAU1st3wl/GAxKENe5w== + +Name: oracle/sql/CharacterSetShift.class +Digest-Algorithms: SHA MD5 +SHA-Digest: L3MvGw8xif7OWTYYQvcVCViKVvg= +MD5-Digest: 4eHmVGzZEEDES2wX9Nk9yQ== + +Name: oracle/sql/CharacterSetUTF.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KWMIVG11tbjuJRivEz6WnV4d+YU= +MD5-Digest: 9ynBExsrCQ2cR/P1emuHpw== + +Name: oracle/sql/CharacterSetUTFE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qo0GCbrWnG9OGrvwbW699SQSywQ= +MD5-Digest: VXaooXe99G/AqXIh4fBVZA== + +Name: oracle/sql/CharacterSetWithConverter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UkA8dsD/rCBPhIkIkR2Epu95M34= +MD5-Digest: dTgk0gVSzPmZuOgbbjacHQ== + +Name: oracle/sql/CharacterSetZHTEUC.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3a10jnHE9tWoGNk2MtDuDbpgjhE= +MD5-Digest: FjJvJB1nrAfb/7vzyyn/6Q== + +Name: oracle/sql/CharacterWalker.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4nBXhhqJQjUtM2tjl+b9/rcU/h0= +MD5-Digest: YD/3ozwM/3tq6qLGazqBFw== + +Name: oracle/sql/ConverterArchive.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ERj2nqUCjNV0mYnz2JTpXmmfUvM= +MD5-Digest: vQrqx/UkQNqdxVyKjcDHog== + +Name: oracle/sql/converter_xcharset/CharacterConverter0001.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: kFLuLis32bAHzkjW0d2MVxn3k4c= +MD5-Digest: 3DfN9ipognA5JGMX9E2apg== + +Name: oracle/sql/converter_xcharset/CharacterConverter0002.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: jCXbK+9R4wwve5aSnJ1q5pKOlyU= +MD5-Digest: Y3J8irmFbS4CUoaAsHRkjg== + +Name: oracle/sql/converter_xcharset/CharacterConverter001f.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: Ex7Zbc3wANbl+JeVjaYXE01LMTE= +MD5-Digest: heGmQ94DltToro31bhXdyA== + +Name: oracle/jdbc/driver/OracleConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dIFZNLqSnEox48XWJauHETUii0o= +MD5-Digest: myC2JK8f3B31IKHvK3MZoQ== + +Name: oracle/jdbc/driver/ClientDataSupport.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dG0e6A68x0c8iHpwHwWwKm9XaIw= +MD5-Digest: V9/l/AIVtBt+mRGvoJ6TGg== + +Name: oracle/jdbc/driver/OracleStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pmfdytTNs+3okE1B7F6FZFaW8OI= +MD5-Digest: Iye6DfThk1KPqE1Fgb7wCQ== + +Name: oracle/jdbc/driver/ScrollRsetStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: acwZHgCk+IqgzUDXIf2BgI053dA= +MD5-Digest: aaJm6mZaxM0J39EHQBZl8w== + +Name: oracle/jdbc/driver/OracleSql.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 03C21c0tcrp2o3G1c7pSRAicVBg= +MD5-Digest: 9WWP98Ka/D7VOX47pFHh4A== + +Name: oracle/jdbc/driver/LRUStatementCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jzV1cNJlPfd1wEqKSVaeU1dVDDE= +MD5-Digest: p4pQsBhlYeGiDlymycxHBQ== + +Name: oracle/jdbc/driver/OracleCloseCallback.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Kl94tVClCPaXQu05eTpJRgekUmQ= +MD5-Digest: JGA24F3oVuXuEb6qsmisww== + +Name: oracle/jdbc/driver/OraclePreparedStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PPogw9+dVoU+ntyrjVGR6KtCG4A= +MD5-Digest: MbKbYkQNFn0S9HL1o0naPQ== + +Name: oracle/jdbc/driver/OracleInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: P8qfiRDWEbCHK2Z12LvS8PsK4kw= +MD5-Digest: mIn8vE4AugQBuOE7i8KerQ== + +Name: oracle/jdbc/driver/OracleBufferedStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mUHdlpiYPv2MJ5CJf5QlQxYaoNA= +MD5-Digest: z922IVW37aN2jS40yPUGEg== + +Name: oracle/jdbc/driver/OracleResultSetImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YyI5kKZWzgwoi6koqNXBvhUJxL0= +MD5-Digest: 8HwvhknA0jz3y9bhL2QPfQ== + +Name: oracle/jdbc/driver/BaseResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1xDfVVRt0+a7rUglF/+y2fvxdsc= +MD5-Digest: WlkmA69i6gmllos+kr92mg== + +Name: oracle/jdbc/driver/OracleResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZJZUU9mgTG3xkVRP1jioI3DIbEQ= +MD5-Digest: 7gDWzL4qBUBMKk0MDe/e5A== + +Name: oracle/jdbc/driver/OracleResultSetCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fojBILGEiZ10rqbAFR5fkf2KcME= +MD5-Digest: R/5JZhRQKEgmJeDFtiEc3A== + +Name: oracle/jdbc/driver/OracleStatementCacheEntry.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IrBBGVnZJwkwlqzPcZ7p5n1Shew= +MD5-Digest: 8LzsLuT8h7UM+gv42mqmgA== + +Name: oracle/jdbc/driver/OracleDriver.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +kQoXYXD1XNlH27KWY4yXDYH4Gw= +MD5-Digest: hCkWSivVIzkNRLcrxyCj0Q== + +Name: oracle/jdbc/driver/OracleLog.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tajkgOPHY9j0mHwjr4M5RnRjy3c= +MD5-Digest: A6TALU7aUdhksgmzeFyqXA== + +Name: oracle/jdbc/driver/ArrayDataResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NZEdqj11shdD1LFzUFsIY5NfJac= +MD5-Digest: JXYHfPAN4mT481NLKGgEYw== + +Name: oracle/jdbc/driver/ArrayLocatorResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: uZqkt5oxVIMe5vsTzgz5w/HekKo= +MD5-Digest: nfZOiFX2kUanEavcdhFjTA== + +Name: oracle/jdbc/driver/ResultSetUtil.class +Digest-Algorithms: SHA MD5 +SHA-Digest: D0GhA8mwiAJJ+lEIslpg/me+YFU= +MD5-Digest: B717RTfmVsU3LzvVieJb5w== + +Name: oracle/jdbc/driver/Const.class +Digest-Algorithms: SHA MD5 +SHA-Digest: svpqAvt4G3MPz5Ss/vAGB1lB6s0= +MD5-Digest: oAzlR+q1yUq4X2LQG46vVg== + +Name: oracle/jdbc/driver/OracleCallableStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eKKSrgWx5UuR6GT0FDJkcuf+PcA= +MD5-Digest: onov/ArBWsL4ydM6hXRbtg== + +Name: oracle/jdbc/driver/OracleDatabaseMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: byfdq5x6IQ6sxS8/ONJpmNHdtYU= +MD5-Digest: tGP9cLyKdb1Gd5wSu8q4yg== + +Name: oracle/jdbc/driver/ByteArrayKey.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8L+COpDqKFSLReTARIVxl/xqFBU= +MD5-Digest: LVGdgWfJxVqVlN+tC5qMDg== + +Name: oracle/jdbc/driver/OracleSavepoint.class +Digest-Algorithms: SHA MD5 +SHA-Digest: USqSsv83jJ1GBjfxOE8JRr3V0mE= +MD5-Digest: J53LgOHcfX+px82s8QHcVw== + +Name: oracle/jdbc/driver/OracleTypes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5kzo5r3LN6fxDN4hPwOo7RxwnT8= +MD5-Digest: QTvTF3LCbXJjpYdXEl83Hw== + +Name: oracle/jdbc/driver/OracleConversionInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nORSP1KS5YYZEwgW6tIA1qQPYAg= +MD5-Digest: K9eW1yE20S5QkaEW7C1PrQ== + +Name: oracle/jdbc/driver/OracleConversionReader.class +Digest-Algorithms: SHA MD5 +SHA-Digest: XJDY8UaHxeQRNDMmyjc7ymu9MKo= +MD5-Digest: fq/Jdjzc8gNKxfF92KQYAw== + +Name: oracle/jdbc/driver/OracleBlobInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eipm9JdLSm+hwGNN0VNaPbGZVzE= +MD5-Digest: qPk4yTBM0U8Kocnajk4oNA== + +Name: oracle/jdbc/driver/OracleBlobOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lujwo3I4TTcqf94v0vEPbOhLWyc= +MD5-Digest: 2an1PB3kY7llAF088cdaNg== + +Name: oracle/jdbc/driver/OracleClobInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kNqd05r0nLz5uLVufy9WpMGfdrI= +MD5-Digest: Khuh8UrXou4Wve3KMNvahw== + +Name: oracle/jdbc/driver/OracleClobOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: REucv5a/8ojNBWhi8+yoBHdrrIQ= +MD5-Digest: JxIq60qsh21H1ZkJMuA8yw== + +Name: oracle/jdbc/driver/OracleClobReader.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aAl5vT9MYFDaX9pPqVIMe0UHF8A= +MD5-Digest: qt9heRHrTIaslM2Wl5hDkg== + +Name: oracle/jdbc/driver/OracleClobWriter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aUU6BIDtY2LkYacWG3AvykhVuL0= +MD5-Digest: ut6yFV/54d8H74hNys3kSQ== + +Name: oracle/jdbc/driver/OracleCancelThread.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gAooUGhvwyYIVeOxWGc/FyBG0rQ= +MD5-Digest: hKCSZ5HXuiD4m1dMbMQjew== + +Name: oracle/jdbc/driver/StructMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: VmbSBG2srXxMP6BjeHF2v2jx9S0= +MD5-Digest: 4EQVNLh4cFmBlWnTAWFM3g== + +Name: oracle/jdbc/driver/OracleResultSetMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JzMprpg0OGhON3P07jXhxKxesQg= +MD5-Digest: i3F9hrAOc0CtAQS+DTwtSA== + +Name: oracle/jdbc/driver/UpdatableResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: GqLJk2mJ46rqZMjZK/L+/cN9w2o= +MD5-Digest: O55O4ARRq74SJ8Q8ZgRfvg== + +Name: oracle/jdbc/driver/ScrollableResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 9gVz/kjtSgVWvKliOZooq6kGl70= +MD5-Digest: DpjmZ/YJQbrAr8iZu7Bh5A== + +Name: oracle/jdbc/driver/SensitiveScrollableResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: FFURhgebCXARxLfJmEKoMnvscl8= +MD5-Digest: 0RxND0b4TqIUrz0jgR80ZA== + +Name: oracle/jdbc/driver/OracleResultSetCacheImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: taz9F6cF8/qzFJY5PpQJ+JL2uM4= +MD5-Digest: +lXUEvGW30lG0X951rrNmw== + +Name: oracle/jdbc/driver/DMSFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xrS8MNRworrtS1kuymGcCFBHTnI= +MD5-Digest: /HXsOtM0/8t/fYUy+6giig== + +Name: oracle/jdbc/driver/OracleParameterMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: j8KqZzcgFViRKUBgLIqZ7+p8umU= +MD5-Digest: 0lXHr1SD3VE//1ccrosj2g== + +Name: oracle/jdbc/driver/OracleSQLException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NJvdCmsMPhKoSdK8SXlTdIXq2Bg= +MD5-Digest: lR0q+xCw+7Gj/AkEjlTpZg== + +Name: oracle/jdbc/internal/OracleConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nzM8pqTb3wqKRR4EXuq8QQ6s0Gc= +MD5-Digest: 3GtR7aBXXoADDf+JFP5rPg== + +Name: oracle/jdbc/internal/OracleStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MrSHUj6l1PHlKD89mP5YSQeMKp0= +MD5-Digest: engwGLJrcbDH1TDo7+BxQg== + +Name: oracle/jdbc/internal/OraclePreparedStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hMvpahCcudSvOHDou9ypx0Py0oY= +MD5-Digest: k0O5XU+xdhVt876wgk9hEg== + +Name: oracle/jdbc/internal/OracleResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: q/NNyroJbTXFv8Krqs0c3tX14SQ= +MD5-Digest: 9/px3W9+t9H4UL+MN+DjCA== + +Name: oracle/jdbc/internal/ObjectDataFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: imqorRov66+HXSvJqdibkiTmiwA= +MD5-Digest: 4BPTJOOTT9f1owCsVa4Zug== + +Name: oracle/jdbc/internal/ObjectData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 0vwNtrJ382/vYmzRl+nFHHS2lpY= +MD5-Digest: WyOZcon25tJtSkZMNZC6YA== + +Name: oracle/jdbc/internal/OracleResultSetCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8ssfDRCANVVRIMlfzHIaozU3F5E= +MD5-Digest: qybM8S4dAayydSea3yA1hw== + +Name: oracle/jdbc/internal/OracleCallableStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YHCN2HWUj9QfWAuKjW+3ZI+Sc2M= +MD5-Digest: 1Nxhg9x+cSNuk0wJ053/iw== + +Name: oracle/jdbc/internal/OracleTypes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: n8hhGDytltaEHr5VKLjD3sdqQSs= +MD5-Digest: t91ajrGR4yBqCVfRMpSayQ== + +Name: oracle/jdbc/internal/StructMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +GqkqPej3cvotKNYGPr6VFDmi6w= +MD5-Digest: HSAfY43tonC4cwgUKKDEAg== + +Name: oracle/jdbc/internal/OracleResultSetMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nACMIvQM4B6Gy0WG0yv+2/rD/Vk= +MD5-Digest: H/bK1zqTltPdNeN3m58cPA== + +Name: oracle/jdbc/OracleConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dktyU9g1vpb99rfnUF9ksFV5wB0= +MD5-Digest: WdhMDLZjOfVuoi9KvBKgbA== + +Name: oracle/jdbc/oracore/OracleTypeCOLLECTION.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lQ0CSJ6y/iDUHBR2KIWw2DUb55k= +MD5-Digest: EDGNz1nj0Urn97KcrEdlOg== + +Name: oracle/jdbc/oracore/OracleTypeADT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fb7d+gD/PiHRTszmsyvlzPZRU1I= +MD5-Digest: V7bbUTyrDtKq+QZrZNMT/A== + +Name: oracle/jdbc/oracore/OracleNamedType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hW5wO+anoJTb6cqMZYW5jpFhuLw= +MD5-Digest: yjBjsEuj9e5NfDnPaq4rcQ== + +Name: oracle/jdbc/oracore/OracleType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Kv24/UAMqoSeZmegcrAsGLv0gEE= +MD5-Digest: E5ecnFAfJMV8/KIjgXqW8Q== + +Name: oracle/jdbc/oracore/StreamInfo.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U8QYHfHALSdpVLJBmYzRCbF1t68= +MD5-Digest: H/fRWRuvRSmGfQ8bhZ+Sjg== + +Name: oracle/jdbc/oracore/UnpickleContext.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZdBA/y+CcTflJyym7Rp5VPfQFAI= +MD5-Digest: 9ec2xwcrDSnagy7Wsh8N8A== + +Name: oracle/jdbc/oracore/PickleContext.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vq6MIRzcfzknSbZcu8PieKvIpzU= +MD5-Digest: GmukBSGjlR50VkqcwLumwA== + +Name: oracle/jdbc/oracore/OracleTypeCLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7VzbdaXQsYXMCVqPE2SCjV+CdrU= +MD5-Digest: M7M3YZEQLGPfRiuthcQzeQ== + +Name: oracle/jdbc/oracore/TDSPatch.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UDLjJxB8qB0R3XA6U6JlgLWwkFw= +MD5-Digest: 2rOtF97QZhDaLIJ2UOtlag== + +Name: oracle/jdbc/oracore/PickleOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Np02Tim5dWfVHtPaOEYUE2GN8xg= +MD5-Digest: WIPZdwxFnyUz5Rv9hyQIaA== + +Name: oracle/jdbc/oracore/OracleTypeOPAQUE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: t1NY1FwN0AvwKoXbJNkp4c1rvio= +MD5-Digest: IQltNk5lRwXwH0VhAHEysw== + +Name: oracle/jdbc/oracore/OracleTypeREF.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZL7o7tEi3w3q5AyIEFfLNBKGoHk= +MD5-Digest: asfoAQXcm+uhSHZzlA4tYA== + +Name: oracle/jdbc/oracore/OracleTypeNUMBER.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Ox60a9JjPxOJJBvF99OFQLcFZxY= +MD5-Digest: O7eDgBkvue+W+FnOxg69Nw== + +Name: oracle/jdbc/oracore/OracleTypeFLOAT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DgqUKuXbNEkfRzpkB0A9cXC1lUM= +MD5-Digest: JNwrNT/1FzgeEBvE4Yqj2Q== + +Name: oracle/jdbc/oracore/Util.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KL5lVJ1dgx8RiluniV1MddcodA8= +MD5-Digest: KMbwpfC6VDZWycbK0CODjQ== + +Name: oracle/jdbc/oracore/OracleTypeUPT.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wdATwCMFENvk07kPquo1M8oNApA= +MD5-Digest: bQ+F3Q/JAGPzaYF+WC3rlQ== + +Name: oracle/jdbc/oracore/OracleTypeDATE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lJKsHuazZ+xmlgFC47sfP697ugo= +MD5-Digest: jo2PNroJw+YgHYSgPew77w== + +Name: oracle/jdbc/oracore/OracleTypeCHAR.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KQgBBnSCWl76cjPSYSrqcWM1O8I= +MD5-Digest: YAG/po539KQXXp5VcnGiMQ== + +Name: oracle/jdbc/oracore/OracleTypeSINT32.class +Digest-Algorithms: SHA MD5 +SHA-Digest: l9QFvuZ8PzT4jFS3oydkj3Zi070= +MD5-Digest: 6LyG/VNx988qUasCN0A9HA== + +Name: oracle/jdbc/oracore/OracleTypeBFILE.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lXtM7/c6zwZs26caxWcNSVdx1Lw= +MD5-Digest: Sc1lvl3d9ACyTzDzm0MRTA== + +Name: oracle/jdbc/oracore/OracleTypeRAW.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RAkACvLtqIx8kBU7TYJm3i7FEOo= +MD5-Digest: gmYYlCrDmD+dI5+GckhHXw== + +Name: oracle/jdbc/oracore/OracleTypeBLOB.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3ur/15cQ+mbEt9M25nLwncd1qp8= +MD5-Digest: bifFubfnIALr+BpZW8rm6g== + +Name: oracle/jdbc/oracore/OracleTypeINTERVAL.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fVPaHH8B88N1vDoOuY3tbAIMkvQ= +MD5-Digest: G37TUuTJOih4KoXIvTtVJw== + +Name: oracle/jdbc/dbaccess/DBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8t68J52pfRJD3TbqdPBrLbb78Sk= +MD5-Digest: eIKMVZq8t8Tim1DWQhbj+Q== + +Name: oracle/jdbc/dbaccess/DBConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JkxZGuMy+Exa+TLzKlGNwZDjNlI= +MD5-Digest: N6VdaV59cCYJvyx4e1wwTQ== + +Name: oracle/jdbc/dbaccess/DBStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Nau4VtjubsK5ju+9RKk9BAFTPZs= +MD5-Digest: 6QluVgZhcaRugOed2qIqgw== + +Name: oracle/jdbc/dbaccess/DBColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Jxt4k5Gz+bzm8z6tKGRR67CZpIQ= +MD5-Digest: n7QJusf4ejh+n/Rl39tYmA== + +Name: oracle/jdbc/dbaccess/DBDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: oh3HCSid08cEVHxVdeTBsKr/rOo= +MD5-Digest: 0DH+ZjJGwkUfnqJriqfM9g== + +Name: oracle/jdbc/dbaccess/DBType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mQa/AiFUd9wfb4v9M0MVUkVPKes= +MD5-Digest: DP+hi8gnGmJw35LUnzm8mg== + +Name: oracle/jdbc/dbaccess/DBItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fQ8r8eIctoj/3pxltTBapcX1qTk= +MD5-Digest: jMYVjDQ1A06VJLMMBTfEQQ== + +Name: oracle/jdbc/dbaccess/DBError.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WM6UO+0RF985hmBvwlk4/6bZAkk= +MD5-Digest: l6kRDKOQU7gDsLU/pm0D7w== + +Name: oracle/jdbc/dbaccess/Message.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pyerCR9z5ty/XTKvcTZsygQOMIY= +MD5-Digest: 8/ASvF26ws10WqiBa3twxA== + +Name: oracle/jdbc/dbaccess/DBDataSetImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Wuvnc5JbY3eXjnPkHQfsq3n5Dks= +MD5-Digest: Y/gQ8kjrYJJ0FjIJlw1FBw== + +Name: oracle/jdbc/dbaccess/DBData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: m29QsTipCHnLCrJSMUbq2wrOJbQ= +MD5-Digest: VEBpIFcjexj1Oe87ybo9+g== + +Name: oracle/jdbc/dbaccess/Message11.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bsK+OTepamFNSji0W7POShRyFdo= +MD5-Digest: US7HSAJjixN/D2BpkFmZvg== + +Name: oracle/jdbc/dbaccess/Messages.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: IAkLN9aRm6OiJS21kUA1eWPiruY= +MD5-Digest: aHizyytr2pOsbbm17iHbww== + +Name: oracle/jdbc/dbaccess/Messages_ar.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: N/gfHdLlhayUCSI4FcGjoeRoL9Y= +MD5-Digest: Ep5I8JMMrSbV143XBaEdmw== + +Name: oracle/jdbc/dbaccess/Messages_ca.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: I2GdPdLICy/6UxDDVSviqf7JT1Y= +MD5-Digest: RTAbIxblIl/xu7xYFvFHCg== + +Name: oracle/jdbc/dbaccess/Messages_cs.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: o8Ojl8Ke5YQTf88Wm558CQyqkQc= +MD5-Digest: 9GMytA4NjsuC96sVIyWR5A== + +Name: oracle/jdbc/dbaccess/Messages_da.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: ZEHdJ3/gMAnFoG3ftSChxCfB7cw= +MD5-Digest: IsFGfxE6oqhpL4+eHdYcVw== + +Name: oracle/jdbc/dbaccess/Messages_de.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: yur6aPBjAvyiIROR5SgXnh7wqjI= +MD5-Digest: NVe/q638PpzzbRhCki1vyw== + +Name: oracle/jdbc/dbaccess/Messages_el.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: YOwYAMw+EljaC7gRWenwUWv1EPU= +MD5-Digest: NExXz4a5iFDRhj6JQemwqQ== + +Name: oracle/jdbc/dbaccess/Messages_es.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: QuKETqjQxiBn7uNm0xSGiXL0Nq8= +MD5-Digest: jReVUv4WTEOHzuF/U2OyLA== + +Name: oracle/jdbc/dbaccess/Messages_es_ES.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: QuKETqjQxiBn7uNm0xSGiXL0Nq8= +MD5-Digest: jReVUv4WTEOHzuF/U2OyLA== + +Name: oracle/jdbc/dbaccess/Messages_fi.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: b0c2xEXZJCIAQmTvHJsu2rT/qVE= +MD5-Digest: poVxZ4q7uabNAMtClRDftA== + +Name: oracle/jdbc/dbaccess/Messages_fr.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: KRGkq5Cf4Ri6cHdy0cJ8sFvddUQ= +MD5-Digest: ZXpXdQ/Ph5dOQ/GreFylJQ== + +Name: oracle/jdbc/dbaccess/Messages_hu.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JUwaUGCwMeYNgX+ctjSUtFk/0nI= +MD5-Digest: AUNqTqI6RQNazCdcS0SJnA== + +Name: oracle/jdbc/dbaccess/Messages_it.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JEPFrTDxKNC8kMoiJDgD2jVhE+4= +MD5-Digest: bZvnQSB0AUkedyS97mF97A== + +Name: oracle/jdbc/dbaccess/Messages_iw.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: kwqDcP3RzPJ2l+Uaj1n9jGuVPZQ= +MD5-Digest: hAjbA3MLZ4VnaatLD3RpKg== + +Name: oracle/jdbc/dbaccess/Messages_ja.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: /1kj/NbZ+zOj4QNiCtHWvoK/6TE= +MD5-Digest: aIm8X/RnuHtVNiDSd2xBoQ== + +Name: oracle/jdbc/dbaccess/Messages_ko.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: mX7vI0b8CZAkXu2pRyifKNVDdCk= +MD5-Digest: Dojn9VDcJQ1cEy9dx/WUMg== + +Name: oracle/jdbc/dbaccess/Messages_nl.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: cmm8lwjJvA+1RsjB9qwMmuG2Hz4= +MD5-Digest: F3ggefrZ4yc0q30jSpprZQ== + +Name: oracle/jdbc/dbaccess/Messages_no.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: ftJnDqB94nnBdA6//yAgrGX7x1o= +MD5-Digest: rc7CRwrN1YWZAYP4N/e5Cw== + +Name: oracle/jdbc/dbaccess/Messages_pl.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: BXk0fvkJNTIgV3RNSsjh4fd6Mi0= +MD5-Digest: JNmWaeZ30crUOuiwwioNoQ== + +Name: oracle/jdbc/dbaccess/Messages_pt.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: dVn//VCTAAw8rf2CZ6l8Gg7seLY= +MD5-Digest: rCYtijIsdFqcc9Wuv0ZrVw== + +Name: oracle/jdbc/dbaccess/Messages_pt_BR.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: 58xIZtjVidSNJP6MVpHjscwHqEE= +MD5-Digest: rsGdKMZgHeMhYaZSiYxeWQ== + +Name: oracle/jdbc/dbaccess/Messages_ro.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JkgSgMyINQFfurXLFHOXsTFhcuU= +MD5-Digest: 9rhetK5yFiildYbSH2rFtQ== + +Name: oracle/jdbc/dbaccess/Messages_ru.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: JcknwAKKoiooTgckmVqTUzDQlPM= +MD5-Digest: VgtnIflP/Tf5iuYJzyCWig== + +Name: oracle/jdbc/dbaccess/Messages_sk.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: zRyncvD2pd99zy1T+4bSWedKPDc= +MD5-Digest: +lq28hQGKBlS8L9XFMpZTg== + +Name: oracle/jdbc/dbaccess/Messages_sv.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: S2djNe6Nxr4/2RTwmfsW+EgvKWU= +MD5-Digest: 17FpXlYjdkm5yUO3ukvnjQ== + +Name: oracle/jdbc/dbaccess/Messages_th.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: nfwCYyZ8phAFNU6+XqCsHPsCTlI= +MD5-Digest: BB6bEXDTWY8SJD4ToCcQhQ== + +Name: oracle/jdbc/dbaccess/Messages_tr.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: d+iLMJCeaa616Q54jCqsmghnF0U= +MD5-Digest: OwinZoMKsj4KpKKBRLWxog== + +Name: oracle/jdbc/dbaccess/Messages_zh_CN.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: lWwKHAU20uAPy8vD3RF+A6Nje+U= +MD5-Digest: wNoyiC/U6YFU/RgePGRpEw== + +Name: oracle/jdbc/dbaccess/Messages_zh_TW.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: wfWE6gOrEm6Va3L8qhyR8vYwD64= +MD5-Digest: UheRONj2O4bGeg5zxVw6kQ== + +Name: oracle/jdbc/OracleStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wvL/1wpW42c/gJ5by+dAb3EoJiw= +MD5-Digest: GXIjjxBjbGKpeUJc7u6C1w== + +Name: oracle/jdbc/OracleDatabaseMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: FMYMB0H4OaNzun3vHFagOedMu0o= +MD5-Digest: oGjKscvgDAqSiIBLJ/TJTg== + +Name: oracle/jdbc/pool/OraclePooledConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: KR5JKUtZW/h0gP+UQtIhhcgU8lU= +MD5-Digest: SckFzlL+yP9u3wZ7l5AANg== + +Name: oracle/jdbc/pool/OracleOCIConnectionPool.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UO2n21gR+cZlQPUNil1Caqmpbzc= +MD5-Digest: nAmluKnXHs5TSm/o5ygzfQ== + +Name: oracle/jdbc/pool/OracleDataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Xo/yZdFmhYP9ZGUEt0aMqCvFlRI= +MD5-Digest: GCxQe3nM+HoxB0vYtQJrtA== + +Name: oracle/jdbc/pool/OracleConnectionEventListener.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ShMjFahoBEkjy2Qjha1mn5gvtZc= +MD5-Digest: qtAc63hYWkQMl6p9wnHj1w== + +Name: oracle/jdbc/pool/OracleConnectionCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: sgKefYDNLfZKDyyt852zbf9JdRE= +MD5-Digest: WZCoLFWdKxEZ5d7qoXgxVQ== + +Name: oracle/jdbc/pool/OracleConnectionCacheImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: VaNwdl6BJJy8CZlePH9oqow++x0= +MD5-Digest: Bx9SKs9GFoF5EoGH3fHRVQ== + +Name: oracle/jdbc/pool/OracleConnectionCacheTimeOutThread.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tsuI/9AL8w34m3wwCrItVRNE3Gw= +MD5-Digest: z6g96Dc7Qur12vszH6idJQ== + +Name: oracle/jdbc/pool/OracleConnectionPoolDataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: AXZzEXUL2lr7MapgK5wRV8EdfTs= +MD5-Digest: DoCqMa7mXh8dz/utw3ETqw== + +Name: oracle/jdbc/pool/OracleDataSourceFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: TZdWyUxze85qOvpPJxiNhiAkyIY= +MD5-Digest: qU34on1NIyO336vMCHQkjA== + +Name: oracle/jdbc/pool/OracleXAConnectionCacheImpl.class +Digest-Algorithms: SHA MD5 +SHA-Digest: H/QMDhxfFXN9SSa2XhHoV/g72Uk= +MD5-Digest: htQUeHKHgc2XwymTwQNYQw== + +Name: oracle/jdbc/OracleSavepoint.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lOaKTVUL57m4sFTblD9MzR2tjI8= +MD5-Digest: aBF+fSRcpgibu5IJqpGqpQ== + +Name: oracle/jdbc/OraclePreparedStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yiUAlkRZEzqOjdT0Vd+F1Zuly54= +MD5-Digest: 0RXjZmZIPaws8hBRJHsdCg== + +Name: oracle/jdbc/OracleOCIFailover.class +Digest-Algorithms: SHA MD5 +SHA-Digest: oxJ7wVfVU5DH5s3smL4YAXoU/5Q= +MD5-Digest: G8N6fQHQb9x14Ti/7exZtQ== + +Name: oracle/jdbc/OracleResultSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: S4kmz7G0cjkKJGXNRQdxZLqmh88= +MD5-Digest: vwMs1VcmVgKXkBsFgZPvJQ== + +Name: oracle/jdbc/OracleResultSetCache.class +Digest-Algorithms: SHA MD5 +SHA-Digest: C1aQWKNdjLX0Ak1ruPVHcCLybbc= +MD5-Digest: Sh+MzOSX4Vrr0/a7acwIeQ== + +Name: oracle/jdbc/OracleParameterMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RLxiTe51yEBDrs9n5/e5b4+M5o0= +MD5-Digest: 0/8RLpWxTenXd1Lo4XL7/g== + +Name: oracle/jdbc/util/SQLStateMapping.class +Digest-Algorithms: SHA MD5 +SHA-Digest: i8TQMVonFNp35QDGV0N5B2HMif8= +MD5-Digest: 4K23GUeIdoY29p05cDjI7Q== + +Name: oracle/jdbc/util/SQLStateRange.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6odEBwqDV03DLQY33sJV2mffOnE= +MD5-Digest: xWApNMxWzLus63BJoEtbwA== + +Name: oracle/jdbc/util/RepConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: n/tQEmVitMn9Ln1+76rjXBPxiN4= +MD5-Digest: QttHZ4UhNUovgHG7kGwGnQ== + +Name: oracle/jdbc/util/Login.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yLwyB1LTCqa7ddJw33P1p9KvCak= +MD5-Digest: VciLvPsgNaB4mpb051G33Q== + +Name: oracle/jdbc/OracleTypes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rUwGM231n+7+eOMWOuCu6cGoprk= +MD5-Digest: WAH1phAdiDv6IzKhIlk7LA== + +Name: oracle/jdbc/oci/OracleOCIConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: A74KOrw1Y5gcid3Pd/14jCFHDA8= +MD5-Digest: mhYBZqdfKQLYQvZpjGFXPQ== + +Name: oracle/jdbc/Const.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MvL6jFVR0YhlatN4W/362sPEigo= +MD5-Digest: uBLzcnKoNiFYpUy/sz1AEg== + +Name: oracle/jdbc/OracleCallableStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: b/25CXnAwz6ktWJgoA9rIC7YypA= +MD5-Digest: k1R4SaX2m/sbJMV2Bn+n0A== + +Name: oracle/jdbc/StructMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: CwhOnsHLAcNAgJphMzItPXl27tw= +MD5-Digest: dXDBMeLuj6tnhv5HMFH43Q== + +Name: oracle/jdbc/OracleResultSetMetaData.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 56gD4E1ttbleTZT29Wf0KEmURaI= +MD5-Digest: Tax/JHYAO02ICbVYh5J9iQ== + +Name: oracle/jdbc/oci8/OCIDBAccess.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6VR4VQYU2ccl5cnfbQS3s9AY4IE= +MD5-Digest: 4xMZkhHcbWaKw71vscg7/g== + +Name: oracle/jdbc/oci8/OCIDBStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BH3ONQEQf7FyN6+UoW6a5VcjY/0= +MD5-Digest: VTp9oZL8wITAQilv3j5qfw== + +Name: oracle/jdbc/oci8/OCIDBError.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aS+Bipezyq7aNuq/emzG4hnTL+M= +MD5-Digest: 8SMB1JwTTC+OsxKawGaafA== + +Name: oracle/jdbc/oci8/OCIEnv.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eaglQUNvZL7BhaibatVrpFXY0dI= +MD5-Digest: +sHgHlsCd4VorXB5CzE1aQ== + +Name: oracle/jdbc/oci8/OCIDBType.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4ftL03TVcpGA/7qErYKIvFrO/tA= +MD5-Digest: 1l87vv3BK3R0645gFPRqog== + +Name: oracle/jdbc/oci8/OCIDBItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gkiYPgAG7jAhDH5bP1lynXp5a3c= +MD5-Digest: 6CcxPaPUSzP72HgoHbh5WA== + +Name: oracle/jdbc/oci8/OCIDBDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: z7s5vuUv1Qvfc+MxnA3DjrhJbLg= +MD5-Digest: 9/VBPdi/xiGt2gc3LGUVTA== + +Name: oracle/jdbc/ttc7/FunCodes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5+zD9Th4bceq8QUSX4UDd53lgFM= +MD5-Digest: 7E7TaUvWGKjJfiA2E2Q1uQ== + +Name: oracle/jdbc/ttc7/LongTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: U4RCcoO6lwddMtDWGXVzjdBs/iQ= +MD5-Digest: 5A2CEMDT3Gav43IRnrq32w== + +Name: oracle/jdbc/ttc7/TTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: iBq4IQwlIi5rRfDv9wq4JI7HNW4= +MD5-Digest: dD7PQrS/5DCE5VckZ8j9mA== + +Name: oracle/jdbc/ttc7/MAREngine.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cxHG4v2TS9mobu2YBLNpQ6SzPt4= +MD5-Digest: 0mmVp47dEu+RhovTkhkIkg== + +Name: oracle/jdbc/ttc7/TTCTypeRep.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bwuOyccEx4ibScN1co22kCsJozo= +MD5-Digest: 2eM9pxBn5i8Oulh53F6IXQ== + +Name: oracle/jdbc/ttc7/TTIfun.class +Digest-Algorithms: SHA MD5 +SHA-Digest: orvGo4QlF2+yYW4QPaWvRDX818A= +MD5-Digest: QGVlR3vNFb1tTiRALr+/jw== + +Name: oracle/jdbc/ttc7/TTIMsg.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ODXGlYPyUnsEqce6pjeb60Ed+Hg= +MD5-Digest: pPnY5jxDWwQAoUGf6matOg== + +Name: oracle/jdbc/ttc7/TTCcodes.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qqiJk/Gv36/OCd5ukHr+XrcQKvE= +MD5-Digest: hRAmpWBw1/HEN4iK8+ouxw== + +Name: oracle/jdbc/ttc7/TTIoer.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hFAV3ob5T0b8n0TS1y1C3JAiuUM= +MD5-Digest: gwlOgV9tGGPoNWDlD+Wgew== + +Name: oracle/jdbc/ttc7/TTIrid.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZQEUhOdmkh6RBSzrniodI/S6JkI= +MD5-Digest: Q1sj8OfC25oKWDwO+QXxYg== + +Name: oracle/jdbc/ttc7/TTIti5.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2eBXZhhGP3QYjSUDQ2ouLhxYzXY= +MD5-Digest: L0URsD511saYNTUToRQIPw== + +Name: oracle/jdbc/ttc7/TTCConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: w0i6PNNwYYvJwXUGSDxVdJwmmO0= +MD5-Digest: NYQUhxjJnDuROHms91W2pA== + +Name: oracle/jdbc/ttc7/TTC7Protocol.class +Digest-Algorithms: SHA MD5 +SHA-Digest: iIvyN2vLqGfEUQogj7fog7V4na4= +MD5-Digest: 15SHRpY4xsWCJYYm+lLjng== + +Name: oracle/jdbc/ttc7/v8TTIpro.class +Digest-Algorithms: SHA MD5 +SHA-Digest: B3l6NEfvD7wRBAHeDakesOOPCJw= +MD5-Digest: PsebP2sF7J4Je9nuHbvzSw== + +Name: oracle/jdbc/ttc7/TTIpro.class +Digest-Algorithms: SHA MD5 +SHA-Digest: kiRIqoJvly7W+WiSTCv+DurITnY= +MD5-Digest: NbzHlDJUo6U0OjSmkP/u0w== + +Name: oracle/jdbc/ttc7/TTIdty.class +Digest-Algorithms: SHA MD5 +SHA-Digest: m/tdJ1lsf3O2UgVVxOget7t+/Is= +MD5-Digest: 8U4TKAlMyr1pFhPz0Y1DHQ== + +Name: oracle/jdbc/ttc7/TTIrxd.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lZorK5WbN4OHlztuuKcshEMkJSw= +MD5-Digest: ktO40+N2eGAwrQuuIbRpLw== + +Name: oracle/jdbc/ttc7/TTCDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: oaWZz04J4RGTu/7iNkE4gc12/0I= +MD5-Digest: LfpEMUCXxToMLXMfd4nT8A== + +Name: oracle/jdbc/ttc7/TTCColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2x8oKcdFBGG4s6JwGsRfiiQMyQE= +MD5-Digest: 7rNQxBr+99X+7CDgvmlqEA== + +Name: oracle/jdbc/ttc7/TTIoac.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jVTAh5wPZk6Svp3UTM1f+qcYPz8= +MD5-Digest: e4WX4jRgdLM5uEjvHcGxcg== + +Name: oracle/jdbc/ttc7/O3log.class +Digest-Algorithms: SHA MD5 +SHA-Digest: o524N+J/Hv9g1JDdYosy6VDOK4c= +MD5-Digest: ogFwJJhuabBuIcEosSNBEQ== + +Name: oracle/jdbc/ttc7/Oversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xOH29AEPih972cYpi3/zidaDu2o= +MD5-Digest: QCDGAR5PBl9iBJhZjtzorg== + +Name: oracle/jdbc/ttc7/Oopen.class +Digest-Algorithms: SHA MD5 +SHA-Digest: JK9fepJ4cB7JLIt3bZgnBi/O5kY= +MD5-Digest: /osBEAtt4YYKsagU6Dx5gg== + +Name: oracle/jdbc/ttc7/Odscrarr.class +Digest-Algorithms: SHA MD5 +SHA-Digest: XL7zYBC6sMYNgIYteKfJ9E7NNrU= +MD5-Digest: UEq3KeCeovJHT7ali6aYDQ== + +Name: oracle/jdbc/ttc7/TTIuds.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qfH/tyAnSsMJgweu/oqIHv4m178= +MD5-Digest: 78RvaNMhbr9mvkIlg3CDBA== + +Name: oracle/jdbc/ttc7/TTCStatement.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ikDPBBFY55cqR2mWI/sXZ068DBM= +MD5-Digest: kRNZsk4QzcvNxx9BMe4ziA== + +Name: oracle/jdbc/ttc7/Oall7.class +Digest-Algorithms: SHA MD5 +SHA-Digest: yvOfzybs+jegZlg6d5AZfHw5Enk= +MD5-Digest: sS6B60pWQohQy6bkgQIbrg== + +Name: oracle/jdbc/ttc7/TTIrxh.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2/oNRuqGvlcHcZ6MWkqq6ADKPVk= +MD5-Digest: sFMwO2YORXn1zar+YBJJQQ== + +Name: oracle/jdbc/ttc7/Oclose.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 9EncC+wLTgs9OMHneJYXHPyrcgY= +MD5-Digest: eOYlKuPWQ3UzTA2TQJY0Aw== + +Name: oracle/jdbc/ttc7/Ocommoncall.class +Digest-Algorithms: SHA MD5 +SHA-Digest: AHjNInhGrKujpHlGmrsAiWGapSo= +MD5-Digest: OX3bZTFKG0tzpfWq2e8hrg== + +Name: oracle/jdbc/ttc7/v8TTIBfile.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +zKR/gT6/dTLa2L1una5tAb0niY= +MD5-Digest: diGoTlZ4l6ybak1lOk6mOA== + +Name: oracle/jdbc/ttc7/v8TTILob.class +Digest-Algorithms: SHA MD5 +SHA-Digest: weF1z51I8V+sBAlx/LfYDjQWJlM= +MD5-Digest: lfLNTjfVut8UjNBZSjRqxQ== + +Name: oracle/jdbc/ttc7/v8TTILobd.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vJ7Uwa4045O5hylRNlipRhFDUng= +MD5-Digest: IAUMtB0kzND4lHRWiI7kMg== + +Name: oracle/jdbc/ttc7/v8TTIBlob.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YYqA/oXNMPVaT/RdVZd6ccvhL4k= +MD5-Digest: WzPYIegzwsuh9S5Hm3Ap9w== + +Name: oracle/jdbc/ttc7/v8TTIClob.class +Digest-Algorithms: SHA MD5 +SHA-Digest: LT5ujgvHS0mRWTsD+il5f1CK2MU= +MD5-Digest: ms0M2J/bugYo/b7Cax/bag== + +Name: oracle/jdbc/ttc7/v8Odscrarr.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6YaRcfo/oFaJsgpiGv0J9vkKU0Q= +MD5-Digest: 2D4Hhg+QDkCTk84p0HK+qg== + +Name: oracle/jdbc/ttc7/v8TTIuds.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mF6+J8KBQhYrd+B219x8lERPcBs= +MD5-Digest: UqGaiKQKUSmpnUBKxbcKBw== + +Name: oracle/jdbc/ttc7/v8TTIoac.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WCB10rc9lEiJXMr3lKurdz13ftM= +MD5-Digest: CHeGQe25ZC3OvDOZdRlQhg== + +Name: oracle/jdbc/ttc7/v8TTIdty.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UAXHYbqDX4Y+cIRfSYvti2iWTwY= +MD5-Digest: 7vj3PWZBQl0O3ck0px5oqg== + +Name: oracle/jdbc/ttc7/v8TTIrxh.class +Digest-Algorithms: SHA MD5 +SHA-Digest: urubprymatzm/6EkH5PS3GQ+3Sg= +MD5-Digest: OjApadJoSw3AfGqOv/11Nw== + +Name: oracle/jdbc/ttc7/TTCAdapter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fYRAfXURWJXJ/lri1ZFldJYWUUA= +MD5-Digest: GsqNKxm0kYmv9p6gw0C3Mw== + +Name: oracle/jdbc/ttc7/PlsqlTTCDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NjpjpuRnr9VzTgrNDrCieNSmQdw= +MD5-Digest: NusvUIr+wmakt14B5t+SHQ== + +Name: oracle/jdbc/ttc7/PlsqlTTCColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bBg2Zs69Q/6C3GSObrdlRcRdsSM= +MD5-Digest: tmUqauvrSmBms5BoyHp8+Q== + +Name: oracle/jdbc/ttc7/NonPlsqlTTCDataSet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: eFviLj7fi2DoUEMXS6ilnxZwpuY= +MD5-Digest: /agZY+oFcnZMgJnP7tD9VQ== + +Name: oracle/jdbc/ttc7/NonPlsqlTTCColumn.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UYHwJ74u0wPh3uSVGyMQLf+ngvs= +MD5-Digest: HYMvEnk290qJTDt2sevJ0A== + +Name: oracle/jdbc/ttc7/Okod.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cHSVQCyhMpadUfU6CwiSblTV5ZU= +MD5-Digest: aycpG1Ih0peFqgfjxuE3YQ== + +Name: oracle/jdbc/ttc7/NtyTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PEOiwJMdjzHmeDaiKWmAn0FrNXM= +MD5-Digest: SY23Z+tPjdXWZHmzk+Vy9Q== + +Name: oracle/jdbc/ttc7/RefTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: OfL8qh7Bnm9Yw4nIZRHssNbqxXY= +MD5-Digest: Asb0TzJPIs8RMqrFXW/q0A== + +Name: oracle/jdbc/ttc7/RefCursorTTCItem.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4pUK8POUDOoKU0rmWSv2wc+Rvt4= +MD5-Digest: tDGCDtQjDV+kt3VNbe1Ubg== + +Name: oracle/jdbc/ttc7/TTIiov.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8rKTqz+JUQcUimMtoujRk+IJ+jg= +MD5-Digest: 2vR7bKfMC8v7Cfspik/6nw== + +Name: oracle/jdbc/OracleConnectionWrapper.class +Digest-Algorithms: SHA MD5 +SHA-Digest: SHEdZajr/fa2vFC5rsxUIZIj/YI= +MD5-Digest: IimDXsGVQYNOzUfZ/8alog== + +Name: oracle/jdbc/xa/client/OracleXADataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BYJCGo8t38UlwZ8yod0B16IKkYc= +MD5-Digest: mUv54rP6AIwi+MEvFt4Ueg== + +Name: oracle/jdbc/xa/client/OracleXAHeteroConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: dI/+Bln+/A7EeNSX2bOgEl1IiUA= +MD5-Digest: DwEGcIxtFzT+8faZxqkogg== + +Name: oracle/jdbc/xa/client/OracleXAConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: o0yCsN03DjNWTCekQA/kCrwp4RE= +MD5-Digest: Lbk8b59AIBNSNKuuqEpKCw== + +Name: oracle/jdbc/xa/client/OracleXAHeteroCloseCallback.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WPW0gzXKp46Y3ki6wfR0J4X7YOY= +MD5-Digest: kqPNFkob8+2GNYck8ge3sw== + +Name: oracle/jdbc/xa/client/OracleXAResource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: mhqx6EvK7EuiVB/AXoCaLV9RZ2A= +MD5-Digest: w6mG3vFyG/ypZvUAbfg9rQ== + +Name: oracle/jdbc/xa/client/OracleXAHeteroResource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: glITEif+1BgtJVkZ4QYsrtDEVCU= +MD5-Digest: uI3zKtjINtn5pKlZLs5M4g== + +Name: oracle/jdbc/xa/OracleXADataSource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jGDFjvlXeBqYYjzPd2d8fl8rLH4= +MD5-Digest: xV29W3Dw5ZMQR4sBicWUzw== + +Name: oracle/jdbc/xa/OracleXAConnection.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6CC9KzicurkdZvRDyqsmLQK64OA= +MD5-Digest: KPR1Z2ad9HAxO8nPQO7KZg== + +Name: oracle/jdbc/xa/OracleXAResource.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DCLLyCC3XNNUek7yQmSzbiUnPy0= +MD5-Digest: BRllhH8RR2iwSjjr5hQeAg== + +Name: oracle/jdbc/xa/OracleXAException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BaLY4T8EQhd39WGnIgXAqK8cQmI= +MD5-Digest: 3wNcmNdXhVXLm0gao+nSxg== + +Name: oracle/jdbc/xa/OracleXid.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Re3NEvEi8J7BhUk27ZXT+wBijc8= +MD5-Digest: 7LlJIDjzSGT7Vi6VhbqOig== + +Name: oracle/jdbc/xa/OracleMultiPhaseArgs.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2A6rSIE6VqPwsZ8muSVSiAWfd6o= +MD5-Digest: Yk4Fhff1HTqtXbh5r8+6ow== + +Name: oracle/jdbc/OracleDriver.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 9rr5c/SS5xy+kDpBjpboBNk57WM= +MD5-Digest: w1RZecZ/Yww53LqxuqZItA== + +Name: oracle/jpub/runtime/MutableArray.class +Digest-Algorithms: SHA MD5 +SHA-Digest: C6ND8+igREz2cLiJ3YZZZX+haXg= +MD5-Digest: CmObGly+4CjP81K4B7uYRA== + +Name: oracle/jpub/runtime/Util.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xzY5TiG1n1zAcxvJzkoYsiYMxi0= +MD5-Digest: 7cAHSJCTjvasM+9KACe18w== + +Name: oracle/jpub/runtime/MutableStruct.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HA0TjtsrCtRV81bh/ShBJCU+RiA= +MD5-Digest: tjqdVD+bfbTJ9B/BuvywVQ== + +Name: oracle/core/lmx/CoreException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RWZRNRk3MDNNnOK5QrwmzbdOhTI= +MD5-Digest: U/DZVwsWUL4BX88hS3YHng== + +Name: oracle/core/lmx/LmxRepConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 66LU9R3lJvYxRMoAt/JHPxjK4H0= +MD5-Digest: LF1ptfrSy2M9IaWjmfzkTw== + +Name: oracle/core/lvf/VersionMgr.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 2iTCGy1VSnAxR7SzQ3BqQhtwc2U= +MD5-Digest: ArmzUCnch/oYVIv5EjwB1g== + +Name: oracle/gss/util/CharConvBuilder/BigCharDataParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Sctr90SFcACkWC7kfAkRW34CLRM= +MD5-Digest: AZ0zowPVXmRB+AxJjMJT8g== + +Name: oracle/gss/util/CharConvBuilder/BigMappingParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pPk49MXa6EsTCnV+XN/WJyhK2gI= +MD5-Digest: 1jf/BDHuYV5yK2EGqpgvMg== + +Name: oracle/gss/util/CharConvBuilder/BootBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4QBzMv8mp1wBlHajwb0btete6UI= +MD5-Digest: UDolJq6TP2v4dd3mi67/0A== + +Name: oracle/gss/util/CharConvBuilder/CharConv12ByteBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cx01rYyD2xHvb6C+I9aVscxgCyY= +MD5-Digest: GEbvwANjzuFDZq5t8q2nTQ== + +Name: oracle/gss/util/CharConvBuilder/CharConv1ByteBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: prMLmPHKoUXd1tbpPvLDwJtO924= +MD5-Digest: CxYy0gLf4np0itTZ5ohhlw== + +Name: oracle/gss/util/CharConvBuilder/CharConv2ByteFixedBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NcJowBWQ7Dl8nx6KhaMzi/tw3Ws= +MD5-Digest: /pvp7splqjiueC1wB1kq9g== + +Name: oracle/gss/util/CharConvBuilder/CharConvBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xunRKC1cmRFfxPhARG+MO+3WICo= +MD5-Digest: sYb3JrP8P33lCW+vuurxCQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvGB18030Builder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Nkdw84k18Ir+o+zMYuLDY+6uj9c= +MD5-Digest: h8UqxpBWSiaVDkDtbMGqaQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvJAEUCBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DNi4wK9Thxoavv07AaSIhpnK0DU= +MD5-Digest: t67anBDxe2mweUcoEb+fdQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvLCFixedBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7NdLJQX3nUvjP9suPmnBZqnxlEs= +MD5-Digest: pSXyL/RuIHi9YSnPyM48+A== + +Name: oracle/gss/util/CharConvBuilder/CharConvSJISBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IcVRut6TTpKT0Po1JDZAklq6oE4= +MD5-Digest: GVeXtrdpvZ8RN/WyH5GhNA== + +Name: oracle/gss/util/CharConvBuilder/CharConvShiftBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: BbBOKp7HS/9FTz82qHSy1S43k4k= +MD5-Digest: tVRTJ7Ezf7mtneAH9xzfqQ== + +Name: oracle/gss/util/CharConvBuilder/CharConvZHTEUCBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: FMGKhexf7hkqkjXm+2DnO3oVuJ8= +MD5-Digest: 9pWTYHwm7tExDupCSDRMow== + +Name: oracle/gss/util/CharConvBuilder/LCMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: gHuDZoSR1TB/MKx6M9MRZ+i08sQ= +MD5-Digest: wlspm0Srb//KkPfbt+eBQw== + +Name: oracle/gss/util/CharConvBuilder/CharDataParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ysKBYRhSzKgoO263c7ZO12Dwczs= +MD5-Digest: 1L02P3I72nDaaq0hKZeK9g== + +Name: oracle/gss/util/CharConvBuilder/DataTypeParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pXzdGH9mWj6q+80ep0JO7hrDWi8= +MD5-Digest: SJct8fK+e76Vs1AmfdfzBg== + +Name: oracle/gss/util/CharConvBuilder/ExtraMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nu8BOdQPu+BEyOtUTeNEP4zm9f0= +MD5-Digest: JmV3NruSiXJtBT+5nW2mng== + +Name: oracle/gss/util/CharConvBuilder/JAEUCMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8jGM8Py6/3aK0ieLjJEprZaTuq8= +MD5-Digest: Ny1UlSOWAX10aIUCAnw9Yw== + +Name: oracle/gss/util/CharConvBuilder/LCFixedMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: rYYyjOrgmbvFL497CI8l0ONvKT0= +MD5-Digest: gVpC4Z2BuWheSE9opczpcw== + +Name: oracle/gss/util/CharConvBuilder/MappingParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wN+inNerUiA1Zey+dWbmnfyTev0= +MD5-Digest: L1rxrXbmLclaYAb3nnGlcQ== + +Name: oracle/gss/util/CharConvBuilder/MappingSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WCuE3bs0L4RBsK+hQnrqkecW5kg= +MD5-Digest: RwATRKLjD8rPL+QiymPpVQ== + +Name: oracle/gss/util/CharConvBuilder/MultiByte12MapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tM2Mla1Yai4CcVSvDs7dWZ+TWVM= +MD5-Digest: fwb2OkoK9pXIQ2Y7NeD+BQ== + +Name: oracle/gss/util/CharConvBuilder/SJISMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: MfAb89hEMPi7aYtSm2FtzlvGrGU= +MD5-Digest: QNLb66KrpYI7Q7zczCMYoQ== + +Name: oracle/gss/util/CharConvBuilder/SingleByteMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fqacn50g6AhBZtyCSBGliGzNfOk= +MD5-Digest: wpl4bD5gBCkuTHEorMO/dQ== + +Name: oracle/gss/util/CharConvBuilder/TokenParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ceRntz5Gv00J3ZwKFwLR/LQ9NSU= +MD5-Digest: ytSPU9vDjBtbLpZaSDanKw== + +Name: oracle/gss/util/CharConvBuilder/UniPropBuilder.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1BmnIQfTPXL55pJLFGnL4WmBGBI= +MD5-Digest: W7xhqr+hqwez5M2KgwsaMA== + +Name: oracle/gss/util/CharConvBuilder/ZHTEUCMapSetter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: e6n7gm58OwDLz6U4gx5LZqWXDO8= +MD5-Digest: mo4SqiswHic4aXdmimiEZg== + +Name: oracle/gss/util/JNLS.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xigpparUT8s8B2M/mjZYhhk9JJU= +MD5-Digest: ntuXsmTLgWvYSRUvQSIAUQ== + +Name: oracle/gss/util/NLSCharacter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RD7d/7BWfQz/KeJbuMWJGDtqCHs= +MD5-Digest: ODMjhSDEcNAd/g6mya9aaA== + +Name: oracle/gss/util/NLSError.class +Digest-Algorithms: SHA MD5 +SHA-Digest: B/aWgr90LYTXOnwcGAscgCmZnxc= +MD5-Digest: aucyLypHr7nTYvhQ23nNJA== + +Name: oracle/gss/util/NLSLocale.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HPLERtaYUiIX7WlICIOLTVeMjj8= +MD5-Digest: pC0oT/cAn9cpuOdPgNCEAA== + +Name: oracle/gss/util/NLSLocale001.class +Digest-Algorithms: SHA MD5 +SHA-Digest: +G4hZMZLIiUt5VQd9DUnmwtOCXM= +MD5-Digest: DEVnNvrotxZY1sU4SW3zMw== + +Name: oracle/gss/util/NLSLocale002.class +Digest-Algorithms: SHA MD5 +SHA-Digest: /eSJetBGhMeLqErwjX03DGl0p88= +MD5-Digest: lUCHFK/uEPSe6Ot9M5lLzA== + +Name: oracle/gss/util/NLSLocale003.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DNRsl0BvZRIZPq75NEuX73/+iew= +MD5-Digest: Bg5vF2Phf8RR0f0CRqiOmg== + +Name: oracle/gss/util/NLSLocale004.class +Digest-Algorithms: SHA MD5 +SHA-Digest: n/2N7QQbWBXFjhdbcLjkLeq98+E= +MD5-Digest: xozdVtKz4vuHtE05Iboj8A== + +Name: oracle/gss/util/NLSLocale005.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IUUQVkKo83qrPoMv8wkdKKy0FdM= +MD5-Digest: nsj29N94UhyJEFh0cZ/qUg== + +Name: oracle/gss/util/NLSMessage.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7eJOMxZEyRX99rww8rY0HUSx63I= +MD5-Digest: WPQ2M2pQQKOtqCGBAkzm7Q== + +Name: oracle/gss/util/UnicodeProperty.class +Digest-Algorithms: SHA MD5 +SHA-Digest: upge6Nm/PZF5lCY69GPmItyp67A= +MD5-Digest: 1bQoOpfJCcy5UOcBrJLGOw== + +Name: oracle/gss/util/XmlValidate.class +Digest-Algorithms: SHA MD5 +SHA-Digest: L63ryJzAHqnzfhXZiaL81KgxnsM= +MD5-Digest: IJ2WCGmRhh2ESR4JVMl7KA== + +Name: oracle/gss/util/data/lx0boot.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: AJVSta1L3N3R5fJp0AV73LG//bA= +MD5-Digest: 86bK41gMhkd+O0ajysD+7A== + +Name: oracle/gss/util/data/unicodeprop.glb +Digest-Algorithms: SHA MD5 +SHA-Digest: DbQZpTKlgGTLctGJxFC75K3zZA0= +MD5-Digest: 1gcfl0y7WDYf91JGbJ6M8w== + +Name: oracle/gss/util/message/ORAMessages.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: lhxtij6kLERhT1HzZsjvuiahPc8= +MD5-Digest: FAg9Ndaf6dcDW1nZ0O1UdQ== + +Name: oracle/gss/util/message/ORAMessages_de.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: 2jmj7l5rSw0yVb/vlWAYkK/YBwk= +MD5-Digest: 1B2M2Y8AsgTpgAmY7PhCfg== + +Name: oracle/gss/util/message/ORAMessages_fr.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: 2jmj7l5rSw0yVb/vlWAYkK/YBwk= +MD5-Digest: 1B2M2Y8AsgTpgAmY7PhCfg== + +Name: oracle/gss/util/message/ORAMessages_ja.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: O3XjLeVVI6CHK/2MixV5xXz4ZlE= +MD5-Digest: g32EPjSpSPBOcSxFY4L+qw== + +Name: oracle/net/TNSAddress/Address.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ABJxoxPmwEdR5IeZMdNqxSB1SB0= +MD5-Digest: MdDS036Kqym8X5u6CeJZlw== + +Name: oracle/net/TNSAddress/AddressList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1j9vyjdcwiC3JbOp1BXqXMbHubo= +MD5-Digest: SnmMHC7dbBAfVozOLyBgVQ== + +Name: oracle/net/TNSAddress/Description.class +Digest-Algorithms: SHA MD5 +SHA-Digest: IFg/Ohxp0aWc2vDbN1BdvCz+N24= +MD5-Digest: KvXQKZwZDadEtJGt/2xEyQ== + +Name: oracle/net/TNSAddress/DescriptionList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3bi84oeDlDQArdmAXL1D+j2tP9A= +MD5-Digest: jNjRL2FrcjmpAFmWOTrewQ== + +Name: oracle/net/TNSAddress/SOException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Bu5Gv9RTtF043Qhh5X4ehXncn3w= +MD5-Digest: hx38kUciVuZoLkFwrenIWA== + +Name: oracle/net/TNSAddress/SchemaObject.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DmH6md7wlXtm+kvePKEelAE3hSI= +MD5-Digest: EUuozzxXA3ZbvBgreTcBDw== + +Name: oracle/net/TNSAddress/SchemaObjectFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: hJRQ8ejwVnVvGlaTzaX3jK4hyCw= +MD5-Digest: BXSidLHUnMWXDCf4y0+Z9A== + +Name: oracle/net/TNSAddress/SchemaObjectFactoryInterface.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8IFFUCz9wuGOwsIESNKhOFA7y9A= +MD5-Digest: YS44/t5IVud79qGdhFiCkw== + +Name: oracle/net/TNSAddress/ServiceAlias.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wz36zj68w0jCRE8Wo+VR6kygWDQ= +MD5-Digest: lXat7gHVbok0/Wb4teZJ1A== + +Name: oracle/net/nl/NLException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ALT8ZTz5RjILxYqjEc5Fa4DPkzc= +MD5-Digest: 4mW7t/W+6CJ4b1bO22Seww== + +Name: oracle/net/nl/NLParamParser.class +Digest-Algorithms: SHA MD5 +SHA-Digest: /h+NGCz2f5/l3N7L/xN+GML2dS0= +MD5-Digest: bB6zk/IVqz8qw3Lp1cfS5w== + +Name: oracle/net/nl/NVFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 0PaM38Z+XxvpYD7l5Ldc0b/XALQ= +MD5-Digest: RZXQiw5Gofba1AGKgNwjdQ== + +Name: oracle/net/nl/NVNavigator.class +Digest-Algorithms: SHA MD5 +SHA-Digest: P3A7qP1cFT9IKAM2FF5Q0SvaHEw= +MD5-Digest: x7yEGETF7rSlXfSIdxGbZg== + +Name: oracle/net/nl/NVPair.class +Digest-Algorithms: SHA MD5 +SHA-Digest: vf/FWn0bPkGI7b+DcPkLBKGTqmQ= +MD5-Digest: DdFNcwImujeaPz0BQHmzNA== + +Name: oracle/net/nl/NVTokens.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 42CfcuZp/TkwLyWRkBXD+Ugiv6c= +MD5-Digest: mBpm7VBnTBI+jAKIw1Mj9A== + +Name: oracle/net/nl/RepConversion.class +Digest-Algorithms: SHA MD5 +SHA-Digest: cOoEvFlbxB9Rt1twHeQEZT9REzg= +MD5-Digest: LB0V87y8uB3KWEWHHG75gQ== + +Name: oracle/net/nt/ConnOption.class +Digest-Algorithms: SHA MD5 +SHA-Digest: u9sD7KsIx6dQbZmdyK/IQFDrIJw= +MD5-Digest: 4NQC56oC2SmXY3esPmzhLA== + +Name: oracle/net/nt/ConnStrategy.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qAKNA71ZEXJnKoCgn5Z3TFKU7T8= +MD5-Digest: t4nGO+FvG9InE7KtfUVt2A== + +Name: oracle/net/nt/NTAdapter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: J1K8H1mQkFir4+p/wRWxdE6U+JA= +MD5-Digest: vVULU0NaBVbmmvyOGTdvXQ== + +Name: oracle/net/nt/TcpNTAdapter.class +Digest-Algorithms: SHA MD5 +SHA-Digest: xPlQDkxlOHx5p9wdwhCM2Esy0Jc= +MD5-Digest: 5h6t/6P2ckmnnGL/UolTTA== + +Name: oracle/net/jndi/JndiAttrs.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ouKbgRT9pKR10bJJCJq5aKHipkY= +MD5-Digest: jXvjfqPhByVJM9kQqdppeQ== + +Name: oracle/net/resolver/AddrResolution.class +Digest-Algorithms: SHA MD5 +SHA-Digest: RVwWkltMCQjQvb8VsFMVS0jxizE= +MD5-Digest: W0Kdwmbed8JTPmk54z9j1g== + +Name: oracle/net/resolver/NavAddress.class +Digest-Algorithms: SHA MD5 +SHA-Digest: F8YBe/Z+A44zv2t/vbQM6oxKXrk= +MD5-Digest: 6Q1WsetTeffT1TxPDDm1VQ== + +Name: oracle/net/resolver/NavAddressList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PetQLvezakwaCBv7l5qfpbjirpE= +MD5-Digest: 87RBJViFh33la/7oeh+eTw== + +Name: oracle/net/resolver/NavDescription.class +Digest-Algorithms: SHA MD5 +SHA-Digest: R0dkcDhsxmAzcySquGfGTG/Ym6o= +MD5-Digest: DUf77z/cFZTp63Z7jxKm3g== + +Name: oracle/net/resolver/NavDescriptionList.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nfEKw14IdkQeo2Ji8lLJZbctHbU= +MD5-Digest: QoUD6+8wHlSk2eFlDcb2pQ== + +Name: oracle/net/resolver/NavSchemaObject.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 6KXdJwO3E2S7s3CxzzEEZzMfedQ= +MD5-Digest: s2CrDc9zp86PlsPKZgqgOw== + +Name: oracle/net/resolver/NavSchemaObjectFactory.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wig1ms29RqxIGOQ1GzbYILckQ2w= +MD5-Digest: zvQs9qXskfrnnGLm0p4sUA== + +Name: oracle/net/resolver/NavServiceAlias.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nY6wqgdJdxt/qAPAYfQ8RKWkjsQ= +MD5-Digest: a00GsjUmr6MMiPIi+yIp7Q== + +Name: oracle/net/ns/AcceptPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: SwomXWZpXJriF1zsuU8olLGtlBo= +MD5-Digest: WuYsg031tWC/+xJcMtIMwA== + +Name: oracle/net/ns/BreakNetException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 7lQgG3p/dZedwtfYCezCk5yszgI= +MD5-Digest: 5BcBBp80p7oWz98r14nHrQ== + +Name: oracle/net/ns/ClientProfile.class +Digest-Algorithms: SHA MD5 +SHA-Digest: l6iUHl/cnthwx1j8JfqCdsf9vf4= +MD5-Digest: Ja9r4i6lla48iyaZiRt0jA== + +Name: oracle/net/ns/Communication.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UyBxGVwH9g63MxkxgwB3fokvuTc= +MD5-Digest: GcWrjUTF67694PJB+7+ErQ== + +Name: oracle/net/ns/ConnectPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 0ml31zcfBCSYUGlI25eqy7pD05I= +MD5-Digest: iUdDLsp1pHGtmzd26NU/ag== + +Name: oracle/net/ns/DataPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: X8FGhGc7RBXTSIZbxDsGYULhNBw= +MD5-Digest: nssmlr7mnpXEOG0EGzBOow== + +Name: oracle/net/ns/MarkerPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: UH55FZonpb/mot2ii3pREGXtQ+I= +MD5-Digest: FpWNF/bGOMKMZWjQTDUTgQ== + +Name: oracle/net/ns/Message.class +Digest-Algorithms: SHA MD5 +SHA-Digest: LuMDu+EwJ4RMp4xYzgPFvBz9r3k= +MD5-Digest: Jg6/bCspYoqEVanvuc4nMA== + +Name: oracle/net/ns/Message10.class +Digest-Algorithms: SHA MD5 +SHA-Digest: By75bE4tvqCSYIxvqmdUtda1wzc= +MD5-Digest: bxaOKNHeZi8JdGErurAErA== + +Name: oracle/net/ns/Message11.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WHnUvZoMbxBykli9d4jpIinRqos= +MD5-Digest: V0dGxCS2SIML/vUKETB3Ig== + +Name: oracle/net/ns/NSProtocol.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NqIhcxKQHUD4HkeQdTUCFReZZqo= +MD5-Digest: BDsD1PIghwGVOYqBa7fHrg== + +Name: oracle/net/ns/NetException.class +Digest-Algorithms: SHA MD5 +SHA-Digest: DachUsb+bnuVsm0Q+6tsc5QF2x8= +MD5-Digest: 1BThAVpdpcmG4lPJJc/JUw== + +Name: oracle/net/ns/NetInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: Hu1e33625+BBExU8Is9TF9Ed5F8= +MD5-Digest: GfJDsaY+vqzFYdltvOpbRw== + +Name: oracle/net/ns/NetOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5r9aNSSW5y9ppL2LYFZrqpNwpgY= +MD5-Digest: DN+1ms1IkhkJ3Bl/OBWyPw== + +Name: oracle/net/ns/Packet.class +Digest-Algorithms: SHA MD5 +SHA-Digest: pnmx1ARnO/tW8IxwPGCl6FRYUnU= +MD5-Digest: mZO80lZmNuXiH0LzMiFOug== + +Name: oracle/net/ns/RedirectPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: VaoAfWQkmyjTY7Ijh/Rej5NdApY= +MD5-Digest: rXc11iE8tn5aAoS8R5GKMg== + +Name: oracle/net/ns/RefusePacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: lK3PfQh4R3W23K4OGoyzoCr6Piw= +MD5-Digest: C44ZV0wJCkLaHv1RLBSgrA== + +Name: oracle/net/ns/SQLnetDef.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8Gk8K16+ZXZplKWhrDFtJuTVZVk= +MD5-Digest: d46YzwEs9BjL4LXw3620vw== + +Name: oracle/net/ns/SessionAtts.class +Digest-Algorithms: SHA MD5 +SHA-Digest: YnVUMvlhO7Xj417RcFlTI9oxaCI= +MD5-Digest: n+Fic6fBWsSg62KOMrvOsg== + +Name: oracle/net/ano/Ano.class +Digest-Algorithms: SHA MD5 +SHA-Digest: qebCuOQBDKqMfDwW/TuTvDm6zH4= +MD5-Digest: 3v0lkCZ+/Hua6TwmXy0DaQ== + +Name: oracle/net/ano/AnoComm.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tjH7wIdt8eSL6l3ytRtzc/CjtpI= +MD5-Digest: X71CBgcm8+ZfVp96TvMzUQ== + +Name: oracle/net/ano/AnoNetInputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: C1WGBh1v5+i/a/AyOJI0QRLd3lw= +MD5-Digest: 8JGgPgnDYWmzQcHRKJf5FQ== + +Name: oracle/net/ano/AnoNetOutputStream.class +Digest-Algorithms: SHA MD5 +SHA-Digest: tsHsSYgDizKHUbRISUZ1g3S5xJk= +MD5-Digest: 9gD18V8hADoOQcaynnoK/w== + +Name: oracle/net/ano/AnoServices.class +Digest-Algorithms: SHA MD5 +SHA-Digest: ZYpDacLwAn3XIa6IUgjj2Xk345g= +MD5-Digest: rnuwTgj2p1i2AON/+tMv7Q== + +Name: oracle/net/ano/AuthenticationService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: GzYyNsqrw+Y0m0eWr3r803FNcNA= +MD5-Digest: BIBiY536+SIWYRKSoOo1jQ== + +Name: oracle/net/ano/CryptoDataPacket.class +Digest-Algorithms: SHA MD5 +SHA-Digest: jRMp5HwLrmWDk92KN6xf3+D46ZE= +MD5-Digest: RyuCSXKN9+0k9QbdvVItlQ== + +Name: oracle/net/ano/DataIntegrityService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: R45/SUNCm+P4yBdIWBfnd9Bhqwo= +MD5-Digest: 3s1iAB8Fn+Hq4lvtPUx4pA== + +Name: oracle/net/ano/EncryptionService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: WFD9c/5FsjT+9ExxM67N5DWWqu0= +MD5-Digest: q0SVli1fzF5sNjqtCfwTEA== + +Name: oracle/net/ano/Service.class +Digest-Algorithms: SHA MD5 +SHA-Digest: V6Nv29ym3sZVaIy3rHy5JogUIxs= +MD5-Digest: qX6bQ5ZOHJrRTIFmTmbSDA== + +Name: oracle/net/ano/SupervisorService.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 04yXcE3+T/hAou3+iDRzzmZAY4g= +MD5-Digest: u9l9GU3ONMo1GElPyyNHCw== + +Name: oracle/net/aso/C00.class +Digest-Algorithms: SHA MD5 +SHA-Digest: fEBwtoLIQ3xuihCPqXYdCPEamcY= +MD5-Digest: LFeaS5Uoc5Ve+CRLDwqubg== + +Name: oracle/net/aso/C01.class +Digest-Algorithms: SHA MD5 +SHA-Digest: wHrosv+1/B+lQBdcsX+hU6uOakI= +MD5-Digest: Vr6rR+tHmM3Z77UdLPi58g== + +Name: oracle/net/aso/C02.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5tYlAFOdca69FRWaHdefA6QcZZ4= +MD5-Digest: gAGr3l9G8qd9uc+AcvvteQ== + +Name: oracle/net/aso/C03.class +Digest-Algorithms: SHA MD5 +SHA-Digest: aIkmhFdFrwxu1Fi/AlSykh3Z6TY= +MD5-Digest: 0mY+FVr50NTthVCVcvX6pA== + +Name: oracle/net/aso/C04.class +Digest-Algorithms: SHA MD5 +SHA-Digest: nbkjqpIqPkcf4FUmYQVqm75ZE8g= +MD5-Digest: 9qcfSgydU5jwYmiWPjQOFw== + +Name: oracle/net/aso/C05.class +Digest-Algorithms: SHA MD5 +SHA-Digest: XiKDOuCnzzU6COhlytR+YYnh3zI= +MD5-Digest: CB3x7rtIHWJXVf86BrSKVw== + +Name: oracle/net/aso/C06.class +Digest-Algorithms: SHA MD5 +SHA-Digest: if4EQiITXDMnXJxLSuSKR70mR+4= +MD5-Digest: 3nX6xSWX60je2TaYYaV7Wg== + +Name: oracle/net/aso/C07.class +Digest-Algorithms: SHA MD5 +SHA-Digest: PzXa9ysMt1oQ1vQyFyEk5Qn5it4= +MD5-Digest: 02uTGAvQGJM7xDAPXt7uJw== + +Name: oracle/net/aso/C08.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 5IBroAGvzNVgLZdCOpL2JDj7LIk= +MD5-Digest: pKbaLpeghI8uMzt/Cvn8JA== + +Name: oracle/net/aso/C09.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 3Kl/7ILzDty4z4sszvItRZ9Hgxs= +MD5-Digest: 2R3ILSYYZcp02o2rDz5QrA== + +Name: oracle/net/aso/C10.class +Digest-Algorithms: SHA MD5 +SHA-Digest: NXI8AZ+useODDJjKW9LdI3fyUi4= +MD5-Digest: 8jdsfQS8nct4Nwm5tDundw== + +Name: oracle/net/aso/MD5$SD5.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 4+XiSYbLLeNGJxi+I/zM1vFb748= +MD5-Digest: CFSmytMjOv0gPefkHt3JrA== + +Name: oracle/net/aso/MD5.class +Digest-Algorithms: SHA MD5 +SHA-Digest: HEdjwFi1FgYTMVnjpIomwFY50ns= +MD5-Digest: lHPwIsENTjsVA6NlydWqUQ== + +Name: oracle/net/mesg/Message.properties +Digest-Algorithms: SHA MD5 +SHA-Digest: nJoAzVhhSgqK1FoWRSCdTdCBESk= +MD5-Digest: eQGvbe5bnTxq5vTLlv2mIA== + +Name: oracle/security/o3logon/C0.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 1PSNMbUjvRnn6yg1bBVn3wHSLms= +MD5-Digest: giCJ9ExrsQ/d/4umx6x3Gw== + +Name: oracle/security/o3logon/O3LoginProtocolHelper.class +Digest-Algorithms: SHA MD5 +SHA-Digest: j0LqttJlzSbtOHIkqTBfUB5Bd28= +MD5-Digest: Bbl2ml54ub1xNQNMtQFeeg== + +Name: oracle/security/o3logon/O3LoginClientHelper.class +Digest-Algorithms: SHA MD5 +SHA-Digest: bGYEV9e49nNb1tBQ7BFXQiBO8oM= +MD5-Digest: hvoqfL4syqwChVof/Mvuew== + +Name: oracle/security/o3logon/C1.class +Digest-Algorithms: SHA MD5 +SHA-Digest: 8+kpgGMq6Iw5f5y/W2vnN1isnZU= +MD5-Digest: y1HzXAcjXmtS+NBWAfibbQ== + diff --git a/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Principal.class b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Principal.class new file mode 100644 index 0000000..a241f60 Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Principal.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Principal.java b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Principal.java new file mode 100644 index 0000000..9a47284 --- /dev/null +++ b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/Principal.java @@ -0,0 +1,95 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class Principal { + +public static void main(String args[]){ + + System.out.println("## Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("## Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("## Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("## Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null ! + System.out.println("## Requte: Envoye et reue."); + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes (Commence 1 !) +// int i = rsmd.getColumnCount(); +// System.out.println("Nombre de colonne: " + i); + + // Donner les enttes de colonnes +// for(int j = 1; j < i; j++){ +// System.out.print(rsmd.getColumnName(j) + " "); +// } + System.out.println(resultat.toString()); + + System.out.println(rsmd.getColumnName(2) + " " + rsmd.getColumnName(3)); + + resultat.isBeforeFirst(); + System.out.println(); + + resultat.next(); + // On s'occupe de la premire ligne + //System.out.println(resultat.toString()); // Donne la connexion actuelle + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + // Affichage du rsultat + resultat.next(); + // traitement de la premire ligne + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + + while(resultat.next()){ + //traitement des autres lignes + System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM")); + } + + } catch (Exception ex){ + System.out.println("## Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("## Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("## Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("## Fin"); + } + + } \ No newline at end of file diff --git a/workspace/RequeteSimple/fr/blankoworld/connexionBDD/testConnexion.class b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/testConnexion.class new file mode 100644 index 0000000..4b752c0 Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/testConnexion.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/connexionBDD/testConnexion.java b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/testConnexion.java new file mode 100644 index 0000000..4bba82d --- /dev/null +++ b/workspace/RequeteSimple/fr/blankoworld/connexionBDD/testConnexion.java @@ -0,0 +1,99 @@ +package fr.blankoworld.connexionBDD; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +public class testConnexion { + +public static void main(String args[]){ + + System.out.println("## Dbut"); + + try{ + Class.forName( "oracle.jdbc.driver.OracleDriver" ); + System.out.println("## Trouv"); + } + catch(ClassNotFoundException ex){ + System.out.println("## Pas trouv"); + } + + + Connection connection = null; + String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920"; + String identifiant = "dut"; + String mdp = "dut"; + + try { + + connection = DriverManager.getConnection(url, identifiant, mdp); + System.out.println("## Accs la base: Accept."); + + try { + // Cration d'une requte + Statement requete = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet resultat = requete.executeQuery("SELECT * FROM GAULOIS"); // executeQuery ne retourne jamais null ! + System.out.println("## Requte: Envoye et reue."); + + int nbreLignes = 0; + while(resultat.next()){ + nbreLignes++; + } + System.out.println("Nbre: " + nbreLignes); + + + // On catalogue l'ensemble des donnes relatives la table rsultante (pas le contenu mes les donnes de colonnes, etc ..) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes (Commence 1 !) + int i = rsmd.getColumnCount(); +// System.out.println("Nombre de colonne: " + i); + + // Donner les enttes de colonnes + for(int j = 1; j < i; j++){ + System.out.print(rsmd.getColumnName(j) + " "); + } + System.out.println(); + + // Cration d'une requte + Statement requete2 = connection.createStatement(); + // Rcupration du rsultat de la requte + ResultSet jeu = requete2.executeQuery("SELECT * FROM GAULOIS"); // executeQuery ne retourne jamais null ! + System.out.println("## Requte: Envoye et reue."); + + while(jeu.next()){ + //traitement des autres lignes + for(int j = 1; j < i; j++){ + System.out.print(jeu.getObject(j) + " "); + if(j != i - 1){ + System.out.print(""); + } + } + System.out.println(); + } + + } catch (Exception ex){ + System.out.println("## Requte: Non russie."); + } + } catch (SQLException sqle) { + + System.out.println("## Accs la base: Refus."); + // TODO: handle exception + } finally { + if(connection!=null){ + try{connection.close(); + + System.out.println("## Connexion ferme."); + } catch(Exception e){ + e.printStackTrace(); + } + } + } + System.out.println("## Fin"); + } + + } diff --git a/workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel$MyTableModel.class b/workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel$MyTableModel.class new file mode 100644 index 0000000..f9c56af Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel$MyTableModel.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel.class b/workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel.class new file mode 100644 index 0000000..522554f Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel.java b/workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel.java new file mode 100644 index 0000000..892310e --- /dev/null +++ b/workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel.java @@ -0,0 +1,223 @@ +package fr.blankoworld.donnees; + +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; + +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTable; +import javax.swing.table.AbstractTableModel; +import java.awt.Dimension; +import java.awt.GridLayout; + +import fr.blankoworld.connexionBDD.Connexion; + +public class JTableModel extends JPanel { + private static final long serialVersionUID = 1L; + + // Utilise pour le debugage, lors de l'insertion de donnees (modification) +// private boolean DEBUG = false; + + public JTableModel(Connexion connectionObject, String requete) { + super(new GridLayout(1,0)); + + JTable table = new JTable(new MyTableModel(connectionObject, requete)); + table.setPreferredScrollableViewportSize(new Dimension(500, 70)); + table.setFillsViewportHeight(true); + + // Ajout de la table dans un panneau deroulant. + JScrollPane scrollPane = new JScrollPane(table); + + //Ajout du panneau deroulant dans ce panneau ci. + add(scrollPane); + } + + class MyTableModel extends AbstractTableModel { + private static final long serialVersionUID = 1L; + + private String[] columnNames; + private Object[][] data; + + public MyTableModel(Connexion connectionObject, String requete){ + ResultSet resultat = connectionObject.getQueryResult(); + + try { + // On catalogue l'ensemble des donnees relatives a la table resultante (pas le contenu mais les donnees de colonnes, et le nombre de lignes) + ResultSetMetaData rsmd = resultat.getMetaData(); + + // Nombre de colonnes (Commence a 1 !) + int i = rsmd.getColumnCount(); + + // Donner les entetes de colonnes + String[] enteteColonnes = new String[i]; + for (int j = 1; j < i + 1; j++) { + enteteColonnes[j - 1] = rsmd.getColumnName(j); + } + + // Nombre de lignes + int nbreLigne = 0; + while (resultat.next()){ + nbreLigne++; + } + + // Tableau de donnees + Object[][] tableauDonnees = new Object[nbreLigne][i]; + for(int ligne = 0; ligne < nbreLigne; ligne++){ + for(int colonne = 0; colonne < i; colonne++){ + tableauDonnees[ligne][colonne] = ""; + } + } + + //On refait la requete qui semble avoir fonctionne la premiere fois + connectionObject.sendQuery(requete); + ResultSet donnees = connectionObject.getQueryResult(); + + // Incrementeur de ligne + int incrementeur = 0; + + while (donnees.next()) { + //traitement des autres lignes + for (int j = 1; j < i + 1; j++) { + tableauDonnees[incrementeur][j - 1] = donnees.getObject(j); + } + incrementeur++; + } + + columnNames = enteteColonnes; + data = tableauDonnees; + + } catch (SQLException e) { + // On remplit par des tableaux vides + columnNames = null; + data = null; + } + +// // Jeux de tests (pour voir si cela fonctionne) +// columnNames = new String[] {"First Name", +// "Last Name", +// "Sport", +// "# of Years", +// "Vegetarian"}; +// +// data = new Object[][] { +// {"Mary", "Campione", +// "Snowboarding", new Integer(5), new Boolean(false)}, +// {"Alison", "Huml", +// "Rowing", new Integer(3), new Boolean(true)}, +// {"Kathy", "Walrath", +// "Knitting", new Integer(2), new Boolean(false)}, +// {"Sharon", "Zakhour", +// "Speed reading", new Integer(20), new Boolean(true)}, +// {"Philip", "Milne", +// "Pool", new Integer(10), new Boolean(false)} +// }; + } + + public int getColumnCount() { + return columnNames.length; + } + + public int getRowCount() { + return data.length; + } + + public String getColumnName(int col) { + return columnNames[col]; + } + + public Object getValueAt(int row, int col) { + return data[row][col]; + } + + /* + * Commentaire donne par Sun, concernant les prochaines methodes + * JTable uses this method to determine the default renderer/ + * editor for each cell. If we didn't implement this method, + * then the last column would contain text ("true"/"false"), + * rather than a check box. + */ + public Class getColumnClass(int c) { + return getValueAt(0, c).getClass(); + } + + /* + * Don't need to implement this method unless your table's + * editable. + */ +// public boolean isCellEditable(int row, int col) { +// //Note that the data/cell address is constant, +// //no matter where the cell appears onscreen. +// if (col < 2) { +// return false; +// } else { +// return true; +// } +// } + + /* + * Don't need to implement this method unless your table's + * data can change. + */ +// public void setValueAt(Object value, int row, int col) { +// if (DEBUG) { +// System.out.println("Setting value at " + row + "," + col +// + " to " + value +// + " (an instance of " +// + value.getClass() + ")"); +// } +// +// data[row][col] = value; +// fireTableCellUpdated(row, col); +// +// if (DEBUG) { +// System.out.println("New value of data:"); +// printDebugData(); +// } +// } + +// private void printDebugData() { +// int numRows = getRowCount(); +// int numCols = getColumnCount(); +// +// for (int i=0; i < numRows; i++) { +// System.out.print(" row " + i + ":"); +// for (int j=0; j < numCols; j++) { +// System.out.print(" " + data[i][j]); +// } +// System.out.println(); +// } +// System.out.println("--------------------------"); +// } + } + + /** + * Create the GUI and show it. For thread safety, + * this method should be invoked from the + * event-dispatching thread. + */ +// private static void createAndShowGUI() { +// //Create and set up the window. +// JFrame frame = new JFrame("TableDemo"); +// frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); +// +// //Create and set up the content pane. +// JTableModel newContentPane = new JTableModel(); +// newContentPane.setOpaque(true); //content panes must be opaque +// frame.setContentPane(newContentPane); +// +// //Display the window. +// frame.pack(); +// frame.setVisible(true); +// } +// +// public static void main(String[] args) { +// //Schedule a job for the event-dispatching thread: +// //creating and showing this application's GUI. +// javax.swing.SwingUtilities.invokeLater(new Runnable() { +// public void run() { +// createAndShowGUI(); +// } +// }); +// } +} diff --git a/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion$1.class b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion$1.class new file mode 100644 index 0000000..31dacee Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion$1.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion$2.class b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion$2.class new file mode 100644 index 0000000..1486f9a Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion$2.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion.class b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion.class new file mode 100644 index 0000000..75c3639 Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion.java b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion.java new file mode 100644 index 0000000..78b864a --- /dev/null +++ b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion.java @@ -0,0 +1,211 @@ +package fr.blankoworld.ihm; + +import fr.blankoworld.connexionBDD.Connexion; +import fr.blankoworld.ihm.IHMPrincipale; +import java.awt.BorderLayout; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JTextField; + +/** + * @author 3dossmanno + */ +public class IHMConnexion extends JFrame { + + private static final long serialVersionUID = 1L; + + // Donnees privees + + // Creation des champs textes + private JTextField jtextServeur; + private JTextField jtextPort; + private JTextField jtextBase; + private JTextField jtextIdentifiant; + private JPasswordField jtextMdp; + + private JButton jOk; + + // Creation d'un principal, pour utiliser ses methodes + private IHMPrincipale pr; + + // Creation de la classe permettant la connexion a la base de donnees + private Connexion connexionToBdd; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + } + + /** + *

    IHMConnexion

    + *

    Interface graphique pour se connecter a une base de donnees.
    + * Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant + * et le mot de passe par defaut.

    + *

    Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.

    + *

    L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion

    + */ + public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) { + + this.pr = pr; + + connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp); + + // Creation des etiquettes + JLabel jlabelServeur = new JLabel(" Serveur: "); + JLabel jlabelPort = new JLabel(" Port: "); + JLabel jlabelBase = new JLabel(" Base de donnees: "); + JLabel jlabelIdentifiant = new JLabel(" Identifiant: "); + JLabel jlabelMdp = new JLabel(" Mot de passe: "); + + // Creation des champs textes + jtextServeur = new JTextField(connexionToBdd.getServer()); + jtextPort = new JTextField(connexionToBdd.getPort()); + jtextBase = new JTextField(connexionToBdd.getDatabase()); + jtextIdentifiant = new JTextField(connexionToBdd.getLogin()); + jtextMdp = new JPasswordField(connexionToBdd.getPassword()); + jtextMdp.setEchoChar('*'); + + // Creation des boutons + jOk = new JButton("OK"); + JButton jAnnuler = new JButton("Annuler"); + + //** Creation des panneaux **// + // Panneau au centre + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new GridLayout(1,2)); + + // Donner un titre a notre panneau + //Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut")); + + // Panneau a gauche du panneau centre + JPanel Panneau_Centre_Gauche = new JPanel(); + Panneau_Centre_Gauche.setLayout(new GridLayout(5,1)); + + // Panneau a droite du panneau centre + JPanel Panneau_Centre_Droite = new JPanel(); + Panneau_Centre_Droite.setLayout(new GridLayout(5,1)); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + + // Ajout des etiquettes au panneau centre a gauche + Panneau_Centre_Gauche.add(jlabelServeur); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelPort); + Panneau_Centre_Gauche.add(jlabelBase); + Panneau_Centre_Gauche.add(jlabelIdentifiant); + Panneau_Centre_Gauche.add(jlabelMdp); + + // Ajout des champs textes au panneau centre droit + Panneau_Centre_Droite.add(jtextServeur); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextPort); + Panneau_Centre_Droite.add(jtextBase); + Panneau_Centre_Droite.add(jtextIdentifiant); + Panneau_Centre_Droite.add(jtextMdp); + + // Ajout des boutons au panneau bas + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Ajout des panneaux droits et gauche au panneau centre + Panneau_Centre.add(Panneau_Centre_Gauche); + Panneau_Centre.add(Panneau_Centre_Droite); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setSize(350,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Connexion a une base de donnees"); + + // ********************************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + String message; + int resultatConfirmation; + + // Recuperation des valeurs entrees dans les champs textes + message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n"; + message += "Serveur : " + this.jtextServeur.getText() + "\n"; + message += "Port : " + this.jtextPort.getText() + "\n"; + message += "Base de donnees : " + this.jtextBase.getText() + "\n"; + message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n"; + message += "Mot de passe (crypte) : " + this.jtextMdp.getPassword().toString() + "\n"; + + // Affichage du message de confirmation + resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION); + + // Nous confirmons ou pas ? + if(resultatConfirmation == 0){ + + String rose = new String(this.jtextMdp.getPassword()); + // Si oui nous enregistrons les valeurs dans notre objet connexion + connexionToBdd.setServer(this.jtextServeur.getText()); + connexionToBdd.setPort(this.jtextPort.getText()); + connexionToBdd.setDatabase(this.jtextBase.getText()); + connexionToBdd.setLogin(this.jtextIdentifiant.getText()); + connexionToBdd.setPassword(rose); + + // Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion + this.dispose(); + this.pr.setVisible(true); + this.pr.confirmationConnexion(connexionToBdd); + this.invalidate(); + } + else{ + // Sinon aucun traitement n'est effectue + } + } + + private void annuler(){ + this.dispose(); + } + + public void driverExist(){ + // On verifie la presence du pilote JDBC, et de sa fonctionnalite + if(Integer.parseInt(connexionToBdd.driverPresent()[0]) == 1){ + // Si pilote non present on desactive le bouton ok et autres boutons attaches + this.jtextServeur.setEnabled(false); + this.jtextPort.setEnabled(false); + this.jtextBase.setEnabled(false); + this.jtextIdentifiant.setEnabled(false); + this.jtextMdp.setEnabled(false); + + this.jOk.setEnabled(false); + + JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE); + } + else{ + JOptionPane.showMessageDialog(this, "Pilote trouve.", "Information", JOptionPane.INFORMATION_MESSAGE); + } + } +} diff --git a/workspace/RequeteSimple/fr/blankoworld/ihm/IHMPrincipale.class b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMPrincipale.class new file mode 100644 index 0000000..f4bcafc Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMPrincipale.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/ihm/IHMPrincipale.java b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMPrincipale.java new file mode 100644 index 0000000..71665ae --- /dev/null +++ b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMPrincipale.java @@ -0,0 +1,282 @@ +package fr.blankoworld.ihm; + +// Importations automatiques + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowEvent; +import java.awt.event.WindowListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.BevelBorder; + +import fr.blankoworld.connexionBDD.Connexion; +import fr.blankoworld.donnees.JTableModel; + +/** + * @author 3dossmanno + */ +public class IHMPrincipale extends JFrame { + + private static final long serialVersionUID = 1L; + + + private JTextArea zoneTexteStatut; + + private JMenuItem MenuBdd_Connexion; + private JMenuItem MenuBdd_Fermer; + + private JMenu MenuAction; + private JPanel Panneau_Centre; + + private boolean connecte = false; + + private IHMConnexion conn; + private Connexion objetConnexion; + + private JTableModel tableDonnees; + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + new IHMPrincipale().setVisible(true); + } + + private IHMPrincipale() { + + // Creation du menu Base de donnees + JMenu MenuBdd = new JMenu("Base de donnees"); + MenuBdd_Connexion = new JMenuItem("Connexion"); + MenuBdd_Fermer = new JMenuItem("Fermer"); + MenuBdd_Fermer.setEnabled(false); + JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter"); + MenuBdd.add(MenuBdd_Connexion); + MenuBdd.add(MenuBdd_Fermer); + MenuBdd.addSeparator(); + MenuBdd.add(MenuBdd_Quitter); + + // Creation du menu Action + MenuAction = new JMenu("Action"); + JMenuItem MenuAction_Requete = new JMenuItem("Faire une requete"); + MenuAction.add(MenuAction_Requete); + MenuAction.setVisible(false); + + // Creation du menu Aide + JMenu MenuAide = new JMenu("Aide"); + JMenuItem MenuAide_Apropos = new JMenuItem("A propos"); + MenuAide.add(MenuAide_Apropos); + + // Creation de la barre de menus + JMenuBar MenuPrincipal = new JMenuBar(); + MenuPrincipal.add(MenuBdd); + MenuPrincipal.add(MenuAction); + MenuPrincipal.add(MenuAide); + + //** Modification de la zone de texte + + zoneTexteStatut = new JTextArea(6,60); + zoneTexteStatut.setEditable(false); + zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED)); + + //** Creation des panneaux **// + // Panneau au centre + Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new BorderLayout()); + Panneau_Centre.setOpaque(true); // Apparemment utile pour le JTable + Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes")); + + // Panneau en bas + JPanel Panneau_Bas = new JPanel(); + Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut")); + + // Ajout des boutons et zones de texte au panneau bas + Panneau_Bas.add(zoneTexteStatut); + + // Ajout des panneaux a la fenetre + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + this.add(MenuPrincipal, BorderLayout.NORTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(700,300); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("SQLNavigator v0.1"); + + + // ***************************************************** // + // Creation des fenetres secondaires // + // ***************************************************** // + conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut"); + conn.setLocation(400,350); + + // ***************************************************** // + + // menu Jeu - bouton Nouveau + MenuBdd_Connexion.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddConnexion(); + } + }); + + MenuBdd_Fermer.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddFermer(); + } + }); + + // menu Jeu - bouton Quitter + MenuBdd_Quitter.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuBddQuitter(); + } + }); + + MenuAction_Requete.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuActionRequete(); + } + }); + + // menu Apropos - bouton + MenuAide_Apropos.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + menuApropos(); + } + }); + + } + + private void menuBddConnexion(){ + // Affichage de la fenetre de connexion + conn.setVisible(true); + conn.driverExist(); + + // Mise en place d'une ecoute sur la fenetre + conn.addWindowListener(new WindowListener(){ + public void windowActivated(WindowEvent ev){ + + } + public void windowClosed(WindowEvent ev){ + + } + public void windowClosing(WindowEvent ev){ + conn.dispose(); + + } + public void windowDeactivated(WindowEvent ev){ + + } + public void windowDeiconified(WindowEvent ev){ + + } + public void windowIconified(WindowEvent ev){ + + } + public void windowOpened(WindowEvent ev){ + } + }); + } + + private void menuBddFermer(){ + String[] resultatFermeture; + + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + this.MenuBdd_Fermer.setEnabled(false); + this.MenuBdd_Connexion.setEnabled(true); + this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]); + this.MenuAction.setVisible(false); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + + private void menuBddQuitter(){ + String[] resultatFermeture; + + // On verifie si une connexion a une BDD est en cours + // - Si oui, on ferme d'abord la connexion + if(this.connecte){ + resultatFermeture = new String[2]; + resultatFermeture = this.objetConnexion.disconnect(); + + if(Integer.parseInt(resultatFermeture[0]) == 0){ + System.exit(0); + } + else{ + this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]); + } + } + // - Si non, alors on peut quitter de suite + else{ + System.exit(0); + } + } + + private void menuActionRequete(){ + IHMRequete ihmRequete = new IHMRequete(this); + ihmRequete.setLocation(800, 400); + ihmRequete.setVisible(true); + } + + /** + *

    Action du bouton Apropos du menu Aide

    + * @param args + */ + private void menuApropos(){ + JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" + + "Version 0.1\n" + + "Developpe par Olivier DOSSMANN\n\n", + "A propos de SQLNavigator", + JOptionPane.QUESTION_MESSAGE); + } + + public void confirmationConnexion(Connexion objetConnexion){ + String[] resultatConnexion; + + this.objetConnexion = objetConnexion; + resultatConnexion = new String[2]; + resultatConnexion = this.objetConnexion.connect(); + + this.zoneTexteStatut.setText(resultatConnexion[1]); + if(Integer.parseInt(resultatConnexion[0]) == 0){ + this.MenuBdd_Connexion.setEnabled(false); + this.MenuBdd_Fermer.setEnabled(true); + this.MenuAction.setVisible(true); + this.MenuAction.setEnabled(true); + this.connecte = true; + this.repaint(); + } + } + + public void envoiRequete(String laRequete){ + if(Integer.parseInt(objetConnexion.sendQuery(laRequete)[0]) == 0){ + + // Tableau + tableDonnees = new JTableModel(objetConnexion, laRequete); + tableDonnees.setVisible(true); + Panneau_Centre.add(tableDonnees, BorderLayout.CENTER); + Panneau_Centre.validate(); + } + else { + this.zoneTexteStatut.setText("L'envoi de la requete a echoue."); + } + + } +} diff --git a/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete$1.class b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete$1.class new file mode 100644 index 0000000..3d745a6 Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete$1.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete$2.class b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete$2.class new file mode 100644 index 0000000..6eca518 Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete$2.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete.class b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete.class new file mode 100644 index 0000000..c482d49 Binary files /dev/null and b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete.class differ diff --git a/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete.java b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete.java new file mode 100644 index 0000000..ffe30b7 --- /dev/null +++ b/workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete.java @@ -0,0 +1,92 @@ +package fr.blankoworld.ihm; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.Insets; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextPane; + + +public class IHMRequete extends JFrame { + // Requis par la classe JFrame (ne pas demander pourquoi) + private static final long serialVersionUID = 1L; + + // Creation de la zone de texte + private JTextPane panneauTexte; + + private IHMPrincipale pr; + + public IHMRequete(IHMPrincipale pr){ + + this.pr = pr; + // Creation d'une etiquette + JLabel jRequete = new JLabel("Entrez votre requete : "); + + // Creation des boutons + JButton jOk = new JButton("Ok"); + JButton jAnnuler = new JButton("Quitter"); + + // Creation de la zone de texte + panneauTexte = new JTextPane(); + panneauTexte.setCaretPosition(0); + panneauTexte.setMargin(new Insets(5,5,5,5)); + JScrollPane zoneTexteRequete = new JScrollPane(panneauTexte); + zoneTexteRequete.setPreferredSize(new Dimension(200, 130)); + + // Creation des panneaux bas et centre + JPanel Panneau_Bas = new JPanel(); + JPanel Panneau_Centre = new JPanel(); + Panneau_Centre.setLayout(new BorderLayout()); + + // Ajout des boutons a chacun des panneaux + Panneau_Centre.add(jRequete, BorderLayout.NORTH); + Panneau_Centre.add(zoneTexteRequete, BorderLayout.CENTER); + + Panneau_Bas.add(jOk); + Panneau_Bas.add(jAnnuler); + + // Gestionnaire de contenus + this.getContentPane().setLayout(new BorderLayout()); + this.add(Panneau_Centre, BorderLayout.CENTER); + this.add(Panneau_Bas, BorderLayout.SOUTH); + + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setSize(400,200); + this.setLocation(200,200); + this.setResizable(false); + this.setTitle("Requete"); + + // ******************************** // + // Mise en place des couteurs // + // ******************************** // + + jOk.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + valider(); + } + }); + + jAnnuler.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent ev){ + annuler(); + } + }); + + } + + private void valider(){ + this.pr.envoiRequete(this.panneauTexte.getText()); + } + + private void annuler(){ + dispose(); + } +} diff --git a/workspace/RequeteSimple/oracle/gss/util/data/lx0boot.glb b/workspace/RequeteSimple/oracle/gss/util/data/lx0boot.glb new file mode 100644 index 0000000..6a67333 Binary files /dev/null and b/workspace/RequeteSimple/oracle/gss/util/data/lx0boot.glb differ diff --git a/workspace/RequeteSimple/oracle/gss/util/data/unicodeprop.glb b/workspace/RequeteSimple/oracle/gss/util/data/unicodeprop.glb new file mode 100644 index 0000000..f365cbf Binary files /dev/null and b/workspace/RequeteSimple/oracle/gss/util/data/unicodeprop.glb differ diff --git a/workspace/RequeteSimple/oracle/gss/util/message/ORAMessages.properties b/workspace/RequeteSimple/oracle/gss/util/message/ORAMessages.properties new file mode 100644 index 0000000..f5fe76c --- /dev/null +++ b/workspace/RequeteSimple/oracle/gss/util/message/ORAMessages.properties @@ -0,0 +1,326 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Internal Error + +ORA-17002=Io exception + +ORA-17003=Invalid column index + +ORA-17004=Invalid column type + +ORA-17005=Unsupported column type + +ORA-17006=Invalid column name + +ORA-17007=Invalid dynamic column + +ORA-17008=Closed Connection + +ORA-17009=Closed Statement + +ORA-17010=Closed Resultset + +ORA-17011=Exhausted Resultset + +ORA-17012=Parameter Type Conflict + +ORA-17014=ResultSet.next was not called + +ORA-17015=Statement was cancelled + +ORA-17016=Statement timed out + +ORA-17017=Cursor already initialized + +ORA-17018=Invalid cursor + +ORA-17019=Can only describe a query + +ORA-17020=Invalid row prefetch + +ORA-17021=Missing defines + +ORA-17022=Missing defines at index + +ORA-17023=Unsupported feature + +ORA-17024=No data read + +ORA-17025=Error in defines.isNull () + +ORA-17026=Numeric Overflow + +ORA-17027=Stream has already been closed + +ORA-17028=Can not do new defines until the current ResultSet is closed + +ORA-17029=setReadOnly: Read-only connections not supported + +ORA-17030=READ_COMMITTED and SERIALIZABLE are the only valid transaction levels + +ORA-17031=setAutoClose: Only support auto close mode on + +ORA-17032=cannot set row prefetch to zero + +ORA-17033=Malformed SQL92 string at position + +ORA-17034=Non supported SQL92 token at position + +ORA-17035=Character Set Not Supported !! + +ORA-17036=exception in OracleNumber + +ORA-17037=Fail to convert between UTF8 and UCS2 + +ORA-17038=Byte array not long enough + +ORA-17039=Char array not long enough + +ORA-17040=Sub Protocol must be specified in connection URL + +ORA-17041=Missing IN or OUT parameter at index: + +ORA-17042=Invalid Batch Value + +ORA-17043=Invalid stream maximum size + +ORA-17044=Internal error: Data array not allocated + +ORA-17045=Internal error: Attempt to access bind values beyond the batch value + +ORA-17046=Internal error: Invalid index for data access + +ORA-17047=Error in Type Descriptor parse + +ORA-17048=Undefined type + +ORA-17049=Inconsistent java and sql object types + +ORA-17050=no such element in vector + +ORA-17051=This API cannot be be used for non-UDT types + +ORA-17052=This ref is not valid + +ORA-17053=The size is not valid + +ORA-17054=The LOB locator is not valid + +ORA-17055=Invalid character encountered in + +ORA-17056=Non supported character set + +ORA-17057=Closed LOB + +ORA-17058=Internal error: Invalid NLS Conversion ratio + +ORA-17059=Fail to convert to internal representation + +ORA-17060=Fail to construct descriptor + +ORA-17061=Missing descriptor + +ORA-17062=Ref cursor is invalid + +ORA-17063=Not in a transaction + +ORA-17064=Invalid Sytnax or Database name is null + +ORA-17065=Conversion class is null + +ORA-17066=Access layer specific implementation needed + +ORA-17067=Invalid Oracle URL specified + +ORA-17068=Invalid argument(s) in call + +ORA-17069=Use explicit XA call + +ORA-17070=Data size bigger than max size for this type + +ORA-17071=Exceeded maximum VARRAY limit + +ORA-17072=Inserted value too large for column + +ORA-17073=Logical handle no longer valid + +ORA-17074=invalid name pattern + +ORA-17075=Invalid operation for forward only resultset + +ORA-17076=Invalid operation for read only resultset + +ORA-17077=Fail to set REF value + +ORA-17078=Cannot do the operation as connections are already opened + +ORA-17079=User credentials doesn't match the existing ones + +ORA-17080=invalid batch command + +ORA-17081=error occurred during batching + +ORA-17082=No current row + +ORA-17083=Not on the insert row + +ORA-17084=Called on the insert row + +ORA-17085=Value conflicts occurs + +ORA-17086=Undefined column value on the insert row + +ORA-17087=Ignored performance hint: setFetchDirection() + +ORA-17088=Unsupported syntax for requested resultset type and concurrency level +ORA-17089=internal error + +ORA-17090=operation not allowed + +ORA-17091=Unable to create resultset at the requested type and/or concurrency level + +ORA-17092=JDBC statements cannot be created or executed at end of call processing + +ORA-17093=OCI operation returned OCI_SUCCESS_WITH_INFO + +ORA-17094=Object type version mismatched + +ORA-17095=Statement Caching is not enabled for this Connection object + +ORA-17096=Statement Caching cannot be enabled for this logical connection. + +ORA-17097=Invalid PL/SQL Index Table element type + +ORA-17098=Invalid empty lob operation + +ORA-17099=Invalid PL/SQL Index Table array length. + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protocol violation + +ORA-17402=Only one RPA message is expected + +ORA-17403=Only one RXH message is expected + +ORA-17404=Received more RXDs than expected + +ORA-17405=UAC length is not zero + +ORA-17406=Exceeding maximum buffer length + +ORA-17407=invalid Type Representation(setRep) + +ORA-17408=invalid Type Representation(getRep) + +ORA-17409=invalid buffer length + +ORA-17410=No more data to read from socket + +ORA-17411=Data Type representations mismatch + +ORA-17412=Bigger type length than Maximum + +ORA-17413=Exceding key size + +ORA-17414=Insufficient Buffer size to store Columns Names + +ORA-17415=This type hasn't been handled + +ORA-17416=FATAL + +ORA-17417=NLS Problem, failed to decode column names + +ORA-17418=Internal structure's field length error + +ORA-17419=Invalid number of columns returned + +ORA-17420=Oracle Version not defined + +ORA-17421=Types or Connection not defined + +ORA-17422=Invalid class in factory + +ORA-17423=Using a PLSQL block without an IOV defined + +ORA-17424=Attempting different marshaling operation + +ORA-17425=Returning a stream in PLSQL block + +ORA-17426=Both IN and OUT binds are NULL + +ORA-17427=Using Uninitialized OAC + +ORA-17428=Logon must be called after connect + +ORA-17429=Must be at least connected to server + +ORA-17430=Must be logged on to server + +ORA-17431=SQL Statement to parse is null + +ORA-17432=invalid options in all7 + +ORA-17433=invalid arguments in call + +ORA-17434=not in streaming mode + +ORA-17435=invalid number of in_out_binds in IOV + +ORA-17436=invalid number of outbinds + +ORA-17437=Error in PLSQL block IN/OUT argument(s) + +ORA-17438=Internal - Unexpected value + +ORA-17439=Invalid SQL type + +ORA-17440=DBItem/DBType is null + +ORA-17441=Oracle Version not supported. Minimum supported version is 7.2.3. + +ORA-17442=Refcursor value is invalid + +ORA-17443=Null user or password not supported in THIN driver + +ORA-17444=TTC Protocol version received from server not supported + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/gss/util/message/ORAMessages_de.properties b/workspace/RequeteSimple/oracle/gss/util/message/ORAMessages_de.properties new file mode 100644 index 0000000..e69de29 diff --git a/workspace/RequeteSimple/oracle/gss/util/message/ORAMessages_fr.properties b/workspace/RequeteSimple/oracle/gss/util/message/ORAMessages_fr.properties new file mode 100644 index 0000000..e69de29 diff --git a/workspace/RequeteSimple/oracle/gss/util/message/ORAMessages_ja.properties b/workspace/RequeteSimple/oracle/gss/util/message/ORAMessages_ja.properties new file mode 100644 index 0000000..c379ce2 --- /dev/null +++ b/workspace/RequeteSimple/oracle/gss/util/message/ORAMessages_ja.properties @@ -0,0 +1,209 @@ +# US English Error messages for JDBC + +EOJ_INVALID_COLUMN_INDEX=ȗłB + +EOJ_INVALID_COLUMN_TYPE=ȗ߂łB + +EOJ_UNSUPPORTED_COLUMN_TYPE=߰ĂȂ߂łB + +EOJ_INVALID_COLUMN_NAME=ȗ񖼂łB + +EOJ_INVALID_DYNAMIC_COLUMN=ȓIłB + +EOJ_CLOSED_CONNECTION=ڑI܂B + +EOJ_CLOSED_STATEMENT=I܂B + +EOJ_CLOSED_RESULTSET=ʾÂ܂B + +EOJ_EXHAUSTED_RESULTSET=ʾĂÂȂĂ܂B + +EOJ_TYPE_CONFLICT=Ұ̌^Ă܂B + +EOJ_RESULTSET_BEFORE_FIRST_ROW=ResultSet.nextĂяo܂łB + +EOJ_STATEMENT_WAS_CANCELLED=܂B + +EOJ_STATEMENT_TIMED_OUT=ѱĂłB + +EOJ_CURSOR_ALREADY_INITIALIZED=ق͂łɏĂ܂B + +EOJ_INVALID_CURSOR=ȶقłB + +EOJ_CAN_ONLY_DESCRIBE_A_QUERY=ذ̋Lq̂݉”\łB + +EOJ_INVALID_ROW_PREFETCH=ȍs̪łB + +EOJ_MISSING_DEFINES=`Ă܂B + +EOJ_MISSING_DEFINES_AT_INDEX=̒`Ă܂B + +EOJ_UNSUPPORTED_FEATURE=߰ĂĂȂ@\łB + +EOJ_NO_DATA_READ=ް͓ǂݍ܂܂łB + +EOJ_IS_DEFINES_NULL_ERROR=defines.isNull ()̴װB + +EOJ_NUMERIC_OVERFLOW=lް۰łB + +EOJ_STREAM_CLOSED=ذт͊ɏIĂ܂B + +EOJ_NO_NEW_DEFINE_IF_RESULT_SET_NOT_CLOSED=݂̌ʾĂI܂ŁA`sƂł܂B + +EOJ_READ_ONLY=setReadOnly: Ǎݐpڑͻ߰ĂĂ܂B + +EOJ_INVALID_TRANSLEVEL=READ_COMMITTEDSERIALIZABLELݻ޸ݥقłB + +EOJ_AUTO_CLOSE_ONLY=setAutoClose: IӰނ̵݂߰Ă܂B + +EOJ_ROW_PREFETCH_NOT_ZERO=s̪ۂɐݒł܂B + +EOJ_MALFORMED_SQL92=̏ꏊł́ASQL92񂪐܂B + +EOJ_NON_SUPPORTED_SQL92_TOKEN=̏ꏊł́ASQL92İ݂ͻ߰Ă܂B + +EOJ_NON_SUPPORTED_CHAR_SET=߰ĂȂ׸ĂłB + +EOJ_ORACLE_NUMBER_EXCEPTION=OracleNumber̗OłB + +EOJ_FAIL_CONVERSION_UTF8_TO_UCS2=UTF8UCS2Ԃł̕ϊװB + +EOJ_CONVERSION_BYTE_ARRAY_ERROR=޲Ĕz̒s\łB + +EOJ_CONVERSION_CHAR_ARRAY_ERROR=z̒s\łB + +EOJ_SUB_SUB_PROTOCOL_ERROR=ڑURLŻĺقw肷Kv܂B + +EOJ_INVALID_IN_OUT_BINDS=ҰIN܂OUT̍ɌĂ܂B + +EOJ_INVALID_BATCH_VALUE=ޯlłB + +EOJ_INVALID_STREAM_SIZE=ذэő廲ނłB + +EOJ_BEYOND_BINDS_BATCH=װ: ޯl𒴂޲ޒlɱ悤Ƃ܂B + +EOJ_DATASET_ITEMS_NOT_ALLOCATED=װ: ްz񂪊蓖ĂĂ܂B + +EOJ_INVALID_RANK=װ: ްɖȍłB + +EOJ_TDS_FORMAT_ERROR=^Lqqʹװ + +EOJ_UNDEFINED_TYPE=`̌^łB + +EOJ_INCONSISTENT_ADT=javasql޼ުČ^Ă܂B + +EOJ_NOSUCHELEMENT=޸قɂ̗vf͂܂B + +EOJ_NOT_AN_OBJECT_TYPE=API͔UDT^Ɏgpł܂B + +EOJ_INVALID_REF=̎QƂ͖łB + +EOJ_INVALID_SIZE=ނłB + +EOJ_INVALID_LOB_LOCATOR=LOB۹łB + +EOJ_FAIL_CONVERSION_CHARACTER=ȕ܂B + +EOJ_UNSUPPORTED_CHARSET=߰ĂȂ׸ĂłB + +EOJ_CLOSED_LOB=LOB͏IĂ܂B + +EOJ_INVALID_NLS_RATIO=װ: NLSϊłB + +EOJ_CONVERSION_JAVA_ERROR=\Lւ̕ϊɎs܂B + +EOJ_FAIL_CREATE_DESC=Lqq̍쐬Ɏs܂B + +EOJ_NO_DESCRIPTOR=LqqĂ܂B + +EOJ_INVALID_REF_CURSOR=RefقłB + +EOJ_NOT_IN_A_TRANSACTION=ݻ޸ݒł͂܂B + +TTC0000=ĺوᔽ + +TTC0001=RPAүނ1‚ɂĂB + +TTC0002=RXHүނ1‚ɂĂB + +TTC0003=\𒴂RXD󂯎܂B + +TTC0004=UAC̒ۂł͂܂B + +TTC0005=őޯ̧𒴂Ă܂B + +TTC0100=Ȍ^\L(setRep)łB + +TTC0101=Ȍ^\L(getRep)łB + +TTC0102=ޯ̧łB + +TTC0103=Ăǂݍް͂܂B + +TTC0104=ް^\L̕svB + +TTC0105=^ől𒴂Ă܂B + +TTC0106=ނ𒴂Ă܂B + +TTC0107=񖼂i[ɂ͕s\ޯ̧ނłB + +TTC0108=̌^͖łB + +TTC0109=vIȴװB + +TTC0110=NLS̖A񖼂޺ނɎs܂B + +TTC0111=\̨̂ޒװB + +TTC0112=ȗ񐔂Ԃ܂B + +TTC0113=`Oracleްޮ݂łB + +TTC0114=`̌^܂͐ڑłB + +TTC0115=̧؂̸׽łB + +TTC0116=IOV`ɁAPLSQLۯgp܂B + +TTC0117=قȂϰّs悤Ƃ܂B + +TTC0118=PLSQLۯɽذтԂĂ܂B + +TTC0119=INOUT޲ނ̗NULLłB + +TTC0120=OACgpĂ܂B + +TTC0200=۸޵݂͐ڑ̌ɌĂяoKv܂B + +TTC0201=܂ްɐڑKv܂B + +TTC0202=ް۸޵݂Kv܂B + +TTC0203=͂SQLNULLłB + +TTC0204=all7ɖȵ߼݂܂B + +TTC0205=قɖȈ܂B + +TTC0206=ذݸޥӰނł͂܂B + +TTC0207=IOVin_out_bindsłB + +TTC0208=޲ނ̐łB + +TTC0209=PLSQLۯIN/OUT(1‚܂͕)̴װB + +TTC0210= - \ʒlłB + +TTC0211=SQL^łB + +TTC0212=DBItem/DBType --> NULL + +TTC0213=߰ĂȂOracleްޮ݂łB7.2.3ȍ~߰Ă܂B + +TTC0214=RefْlłB + +TTC0215=ްނ̌^̍ő廲ނĂ܂B + +TTC0255=̴װɑ΂үނ`Ă܂B diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages.properties new file mode 100644 index 0000000..c8f1be3 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages.properties @@ -0,0 +1,411 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Internal Error + +ORA-17002=Io exception + +ORA-17003=Invalid column index + +ORA-17004=Invalid column type + +ORA-17005=Unsupported column type + +ORA-17006=Invalid column name + +ORA-17007=Invalid dynamic column + +ORA-17008=Closed Connection + +ORA-17009=Closed Statement + +ORA-17010=Closed Resultset + +ORA-17011=Exhausted Resultset + +ORA-17012=Parameter Type Conflict + +ORA-17014=ResultSet.next was not called + +ORA-17015=Statement was cancelled + +ORA-17016=Statement timed out + +ORA-17017=Cursor already initialized + +ORA-17018=Invalid cursor + +ORA-17019=Can only describe a query + +ORA-17020=Invalid row prefetch + +ORA-17021=Missing defines + +ORA-17022=Missing defines at index + +ORA-17023=Unsupported feature + +ORA-17024=No data read + +ORA-17025=Error in defines.isNull () + +ORA-17026=Numeric Overflow + +ORA-17027=Stream has already been closed + +ORA-17028=Can not do new defines until the current ResultSet is closed + +ORA-17029=setReadOnly: Read-only connections not supported + +ORA-17030=READ_COMMITTED and SERIALIZABLE are the only valid transaction levels + +ORA-17031=setAutoClose: Only support auto close mode on + +ORA-17032=cannot set row prefetch to zero + +ORA-17033=Malformed SQL92 string at position + +ORA-17034=Non supported SQL92 token at position + +ORA-17035=Character Set Not Supported !! + +ORA-17036=exception in OracleNumber + +ORA-17037=Fail to convert between UTF8 and UCS2 + +ORA-17038=Byte array not long enough + +ORA-17039=Char array not long enough + +ORA-17040=Sub Protocol must be specified in connection URL + +ORA-17041=Missing IN or OUT parameter at index: + +ORA-17042=Invalid Batch Value + +ORA-17043=Invalid stream maximum size + +ORA-17044=Internal error: Data array not allocated + +ORA-17045=Internal error: Attempt to access bind values beyond the batch value + +ORA-17046=Internal error: Invalid index for data access + +ORA-17047=Error in Type Descriptor parse + +ORA-17048=Undefined type + +ORA-17049=Inconsistent java and sql object types + +ORA-17050=no such element in vector + +ORA-17051=This API cannot be be used for non-UDT types + +ORA-17052=This ref is not valid + +ORA-17053=The size is not valid + +ORA-17054=The LOB locator is not valid + +ORA-17055=Invalid character encountered in + +ORA-17056=Non supported character set + +ORA-17057=Closed LOB + +ORA-17058=Internal error: Invalid NLS Conversion ratio + +ORA-17059=Fail to convert to internal representation + +ORA-17060=Fail to construct descriptor + +ORA-17061=Missing descriptor + +ORA-17062=Ref cursor is invalid + +ORA-17063=Not in a transaction + +ORA-17064=Invalid Sytnax or Database name is null + +ORA-17065=Conversion class is null + +ORA-17066=Access layer specific implementation needed + +ORA-17067=Invalid Oracle URL specified + +ORA-17068=Invalid argument(s) in call + +ORA-17069=Use explicit XA call + +ORA-17070=Data size bigger than max size for this type + +ORA-17071=Exceeded maximum VARRAY limit + +ORA-17072=Inserted value too large for column + +ORA-17073=Logical handle no longer valid + +ORA-17074=invalid name pattern + +ORA-17075=Invalid operation for forward only resultset + +ORA-17076=Invalid operation for read only resultset + +ORA-17077=Fail to set REF value + +ORA-17078=Cannot do the operation as connections are already opened + +ORA-17079=User credentials doesn't match the existing ones + +ORA-17080=invalid batch command + +ORA-17081=error occurred during batching + +ORA-17082=No current row + +ORA-17083=Not on the insert row + +ORA-17084=Called on the insert row + +ORA-17085=Value conflicts occurs + +ORA-17086=Undefined column value on the insert row + +ORA-17087=Ignored performance hint: setFetchDirection() + +ORA-17088=Unsupported syntax for requested resultset type and concurrency level +ORA-17089=internal error + +ORA-17090=operation not allowed + +ORA-17091=Unable to create resultset at the requested type and/or concurrency level + +ORA-17092=JDBC statements cannot be created or executed at end of call processing + +ORA-17093=OCI operation returned OCI_SUCCESS_WITH_INFO + +ORA-17094=Object type version mismatched + +ORA-17095=Statement cache size has not been set + +ORA-17096=Statement Caching cannot be enabled for this logical connection. + +ORA-17097=Invalid PL/SQL Index Table element type + +ORA-17098=Invalid empty lob operation + +ORA-17099=Invalid PL/SQL Index Table array length + +ORA-17100=Invalid database Java Object + +ORA-17101=Invalid properties in OCI Connection Pool Object + +ORA-17102=Bfile is read only + +ORA-17103=invalid connection type to return via getConnection. Use getJavaSqlConnection instead + +ORA-17104=SQL statement to execute cannot be empty or null + +ORA-17105=connection session time zone was not set + +ORA-17106=invalid JDBC-OCI driver connection pool configuration specified + +ORA-17107=invalid proxy type specified + +ORA-17108=No max length specified in defineColumnType + +ORA-17109=standard Java character encoding not found + +ORA-17110=execution completed with warning + +ORA-17111=Invalid connection cache TTL timeout specified + +ORA-17112=Invalid thread interval specified + +ORA-17113=Thread interval value is more than the cache timeout value + +ORA-17114=could not use local transaction commit in a global transaction + +ORA-17115=could not use local transaction rollback in a global transaction + +ORA-17116=could not turn on auto-commit in an active global transaction + +ORA-17117=could not set savepoint in an active global transaction + +ORA-17118=could not obtain ID for a named Savepoint + +ORA-17119=could not obtain name for an un-named Savepoint + +ORA-17120=could not set a Savepoint with auto-commit on + +ORA-17121=could not rollback to a Savepoint with auto-commit on + +ORA-17122=could not rollback to a local txn Savepoint in a global transaction + +ORA-17123=Invalid statement cache size specified + +ORA-17124=Invalid connection cache Inactivity timeout specified + +ORA-17125=Improper statement type returned by explicit cache + +ORA-17126=Fixed Wait timeout elapsed + +ORA-17127=Invalid Fixed Wait timeout specified + +ORA-17200=Unable to properly convert XA open string from Java to C + +ORA-17201=Unable to properly convert XA close string from Java to C + +ORA-17202=Unable to properly convert RM name from Java to C + +ORA-17203=Could not casting pointer type to jlong + +ORA-17204=Input array too short to hold OCI handles + +ORA-17205=Failed to obtain OCISvcCtx handle from C-XA using xaoSvcCtx + +ORA-17206=Failed to obtain OCIEnv handle from C-XA using xaoEnv + +ORA-17207=The tnsEntry property was not set in DataSource + +ORA-17213=C-XA returned XAER_RMERR during xa_open + +ORA-17215=C-XA returned XAER_INVAL during xa_open + +ORA-17216=C-XA returned XAER_PROTO during xa_open + +ORA-17233=C-XA returned XAER_RMERR during xa_close + +ORA-17235=C-XA returned XAER_INVAL during xa_close + +ORA-17236=C-XA returned XAER_PROTO during xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protocol violation + +ORA-17402=Only one RPA message is expected + +ORA-17403=Only one RXH message is expected + +ORA-17404=Received more RXDs than expected + +ORA-17405=UAC length is not zero + +ORA-17406=Exceeding maximum buffer length + +ORA-17407=invalid Type Representation(setRep) + +ORA-17408=invalid Type Representation(getRep) + +ORA-17409=invalid buffer length + +ORA-17410=No more data to read from socket + +ORA-17411=Data Type representations mismatch + +ORA-17412=Bigger type length than Maximum + +ORA-17413=Exceding key size + +ORA-17414=Insufficient Buffer size to store Columns Names + +ORA-17415=This type hasn't been handled + +ORA-17416=FATAL + +ORA-17417=NLS Problem, failed to decode column names + +ORA-17418=Internal structure's field length error + +ORA-17419=Invalid number of columns returned + +ORA-17420=Oracle Version not defined + +ORA-17421=Types or Connection not defined + +ORA-17422=Invalid class in factory + +ORA-17423=Using a PLSQL block without an IOV defined + +ORA-17424=Attempting different marshaling operation + +ORA-17425=Returning a stream in PLSQL block + +ORA-17426=Both IN and OUT binds are NULL + +ORA-17427=Using Uninitialized OAC + +ORA-17428=Logon must be called after connect + +ORA-17429=Must be at least connected to server + +ORA-17430=Must be logged on to server + +ORA-17431=SQL Statement to parse is null + +ORA-17432=invalid options in all7 + +ORA-17433=invalid arguments in call + +ORA-17434=not in streaming mode + +ORA-17435=invalid number of in_out_binds in IOV + +ORA-17436=invalid number of outbinds + +ORA-17437=Error in PLSQL block IN/OUT argument(s) + +ORA-17438=Internal - Unexpected value + +ORA-17439=Invalid SQL type + +ORA-17440=DBItem/DBType is null + +ORA-17441=Oracle Version not supported. Minimum supported version is 7.2.3. + +ORA-17442=Refcursor value is invalid + +ORA-17443=Null user or password not supported in THIN driver + +ORA-17444=TTC Protocol version received from server not supported + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ar.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ar.properties new file mode 100644 index 0000000..9f51478 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ar.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a + +ORA-17002=\u0627\u0633\u062a\u062b\u0646\u0627\u0621 \u0645\u062f\u062e\u0644\u0627\u062a/\u0645\u062e\u0631\u062c\u0627\u062a + +ORA-17003=\u0641\u0647\u0631\u0633 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17004=\u0646\u0648\u0639 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17005=\u0646\u0648\u0639 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0645\u062f\u0639\u0645 + +ORA-17006=\u0627\u0633\u0645 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17007=\u0639\u0645\u0648\u062f \u062f\u064a\u0646\u0627\u0645\u064a\u0643\u064a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17008=\u0627\u062a\u0635\u0627\u0644 \u0645\u063a\u0644\u0642 + +ORA-17009=\u062c\u0645\u0644\u0629 \u0645\u063a\u0644\u0642\u0629 + +ORA-17010=\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0645\u063a\u0644\u0642\u0629 + +ORA-17011=\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0646\u0627\u0641\u062f\u0629 + +ORA-17012=\u062a\u0636\u0627\u0631\u0628 \u0646\u0648\u0639 \u0627\u0644\u0645\u0639\u0627\u0645\u0644 + +ORA-17014=\u0644\u0645 \u064a\u062a\u0645 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 ResultSet.next + +ORA-17015=\u062a\u0645 \u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062c\u0645\u0644\u0629 + +ORA-17016=\u0627\u0646\u062a\u0647\u0649 \u0648\u0642\u062a \u0627\u0644\u062c\u0645\u0644\u0629 + +ORA-17017=\u062a\u0645\u062a \u062a\u0647\u064a\u0626\u0629 \u0627\u0644\u0645\u0624\u0634\u0631 \u0645\u0646 \u0642\u0628\u0644 + +ORA-17018=\u0645\u0624\u0634\u0631 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17019=\u064a\u0645\u0643\u0646 \u0641\u0642\u0637 \u0648\u0635\u0641 \u0627\u0633\u062a\u0639\u0644\u0627\u0645 + +ORA-17020=\u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0633\u062d\u0628 \u0645\u0633\u0628\u0642 \u0644\u0644\u0635\u0641 + +ORA-17021=\u062a\u0639\u0631\u064a\u0641\u0627\u062a \u0645\u0641\u0642\u0648\u062f\u0629 + +ORA-17022=\u062a\u0639\u0631\u064a\u0641\u0627\u062a \u0645\u0641\u0642\u0648\u062f\u0629 \u0641\u064a \u0627\u0644\u0641\u0647\u0631\u0633 + +ORA-17023=\u062e\u0627\u0635\u064a\u0629 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 + +ORA-17024=\u0644\u0645 \u062a\u062a\u0645 \u0642\u0631\u0627\u0621\u0629 \u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17025=\u062e\u0637\u0623 \u0641\u064a defines.isNull () + +ORA-17026=\u062a\u062c\u0627\u0648\u0632 \u0627\u0644\u062d\u062f \u0631\u0642\u0645\u064a + +ORA-17027=\u062a\u0645 \u0628\u0627\u0644\u0641\u0639\u0644 \u0625\u063a\u0644\u0627\u0642 \u0627\u0644\u062a\u062f\u0641\u0642 + +ORA-17028=\u0644\u0627 \u064a\u0645\u0643\u0646 \u0639\u0645\u0644 \u062a\u0639\u0631\u064a\u0641\u0627\u062a \u062c\u062f\u064a\u062f\u0629 \u062d\u062a\u0649 \u064a\u062a\u0645 \u0625\u063a\u0644\u0627\u0642 ResultSet \u0627\u0644\u062d\u0627\u0644\u064a\u0629 + +ORA-17029=setReadOnly: \u0627\u062a\u0635\u0627\u0644\u0627\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0641\u0642\u0637 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 + +ORA-17030=READ_COMMITTED \u0648 SERIALIZABLE \u0647\u064a \u0641\u0642\u0637 \u0645\u0633\u062a\u0648\u064a\u0627\u062a \u0627\u0644\u0639\u0645\u0644\u064a\u0627\u062a \u0627\u0644\u0635\u0627\u0644\u062d\u0629 + +ORA-17031=setAutoClose: \u0627\u0644\u062f\u0639\u0645 \u0641\u0642\u0637 \u0644\u0648\u0636\u0639 \u0627\u0644\u063a\u0644\u0642 \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a + +ORA-17032=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0639\u064a\u064a\u0646 \u0627\u0644\u0633\u062d\u0628 \u0627\u0644\u0645\u0633\u0628\u0642 \u0625\u0644\u0649 \u0635\u0641\u0631 + +ORA-17033=\u0633\u0644\u0633\u0644\u0629 Malformed SQL92 \u0641\u064a \u0627\u0644\u0645\u0631\u0643\u0632 + +ORA-17034=\u0645\u0642\u0637\u0639 SQL92 \u063a\u064a\u0631 \u0645\u062f\u0639\u0648\u0645 \u0641\u064a \u0627\u0644\u0645\u0631\u0643\u0632 + +ORA-17035=\u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u062d\u0631\u0648\u0641 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 !! + +ORA-17036=\u0627\u0633\u062a\u062b\u0646\u0627\u0621 \u0641\u064a OracleNumber + +ORA-17037=\u0641\u0634\u0644 \u0627\u0644\u062a\u062d\u0648\u064a\u0644 \u0628\u064a\u0646 UTF8 \u0648 UCS2 + +ORA-17038=\u0645\u0635\u0641\u0648\u0641\u0629 \u0627\u0644\u0628\u0627\u064a\u062a \u0644\u064a\u0633\u062a \u0637\u0648\u064a\u0644\u0629 \u0628\u0627\u0644\u0642\u062f\u0631 \u0627\u0644\u0643\u0627\u0641\u064a + +ORA-17039=\u0645\u0635\u0641\u0648\u0641\u0629 char \u0644\u064a\u0633\u062a \u0637\u0648\u064a\u0644\u0629 \u0628\u0627\u0644\u0642\u062f\u0631 \u0627\u0644\u0643\u0627\u0641\u064a + +ORA-17040=\u064a\u062c\u0628 \u062a\u062d\u062f\u064a\u062f \u0627\u0644\u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 \u0627\u0644\u0641\u0631\u0639\u064a \u0641\u064a \u0627\u062a\u0635\u0627\u0644 URL + +ORA-17041=\u0645\u0639\u0627\u0645\u0644 IN \u0623\u0648 OUT \u0645\u0641\u0642\u0648\u062f \u0641\u064a \u0627\u0644\u0641\u0647\u0631\u0633: + +ORA-17042=\u0642\u064a\u0645\u0629 \u0627\u0644\u062f\u0641\u0639\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17043=\u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0649 \u0644\u062d\u062c\u0645 \u0627\u0644\u062a\u062f\u0641\u0642 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17044=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0645\u0635\u0641\u0648\u0641\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u063a\u064a\u0631 \u0645\u062e\u0635\u0635\u0629 + +ORA-17045=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0645\u062d\u0627\u0648\u0644\u0629 \u0644\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0642\u064a\u0645 \u0631\u0628\u0637 \u0648\u0631\u0627\u0621 \u0642\u064a\u0645\u0629 \u0627\u0644\u062f\u0641\u0639\u0629 + +ORA-17046=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0641\u0647\u0631\u0633 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17047=\u062e\u0637\u0623 \u0641\u064a \u0627\u0644\u062a\u062d\u0644\u064a\u0644 \u0627\u0644\u0644\u063a\u0648\u064a \u0644\u0648\u0627\u0635\u0641 \u0627\u0644\u0646\u0648\u0639 + +ORA-17048=\u0646\u0648\u0639 \u063a\u064a\u0631 \u0645\u062d\u062f\u062f + +ORA-17049=\u0623\u0646\u0648\u0627\u0639 \u0643\u0627\u0626\u0646 sql \u0648\u062c\u0627\u0641\u0627 \u063a\u064a\u0631 \u0645\u062a\u0646\u0627\u0633\u0642\u0629 + +ORA-17050=\u0644\u0627 \u064a\u0648\u062c\u062f \u0645\u062b\u0644 \u0647\u0630\u0627 \u0627\u0644\u0639\u0646\u0635\u0631 \u0641\u064a \u0627\u0644\u0645\u0648\u062c\u0651\u064e\u0647 + +ORA-17051=\u0644\u0627 \u064a\u0645\u0643\u0646 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 API \u0647\u0630\u0627 \u0644\u0623\u0646\u0648\u0627\u0639 non-UDT + +ORA-17052=\u0647\u0630\u0627 ref \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17053=\u0627\u0644\u062d\u062c\u0645 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17054=\u0645\u062d\u062f\u062f \u0627\u0644\u0645\u0648\u0627\u0642\u0639 LOB \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17055=\u062a\u0645\u062a \u0645\u0635\u0627\u062f\u0641\u0629 \u062d\u0631\u0641 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0641\u064a + +ORA-17056=\u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u062d\u0631\u0648\u0641 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 + +ORA-17057=LOB \u0645\u063a\u0644\u0642 + +ORA-17058=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a: \u0646\u0633\u0628\u0629 \u062a\u062d\u0648\u064a\u0644 NLS \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17059=\u0641\u0634\u0644 \u0627\u0644\u062a\u062d\u0648\u064a\u0644 \u0625\u0644\u0649 \u0627\u0644\u062a\u0645\u062b\u064a\u0644 \u0627\u0644\u062f\u0627\u062e\u0644\u064a + +ORA-17060=\u0641\u0634\u0644 \u062a\u0643\u0648\u064a\u0646 \u0627\u0644\u0648\u0627\u0635\u0641 + +ORA-17061=\u0648\u0627\u0635\u0641 \u0645\u0641\u0642\u0648\u062f + +ORA-17062=\u0645\u0624\u0634\u0631 Ref \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17063=\u0644\u064a\u0633 \u0636\u0645\u0646 \u0639\u0645\u0644\u064a\u0629 + +ORA-17064=\u0635\u064a\u0627\u063a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0623\u0648 \u0623\u0646 \u0627\u0633\u0645 \u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u062e\u0627\u0644\u064a + +ORA-17065=\u0637\u0628\u0642\u0629 \u0627\u0644\u062a\u062d\u0648\u064a\u0644 \u062e\u0627\u0644\u064a\u0629 + +ORA-17066=\u0645\u0637\u0644\u0648\u0628 \u062a\u0646\u0641\u064a\u0630 \u0645\u0639\u064a\u0646 \u0644\u0637\u0628\u0642\u0629 \u0627\u0644\u0648\u0635\u0648\u0644 + +ORA-17067=\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 URL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0623\u0648\u0631\u0627\u0643\u0644 + +ORA-17068=\u0648\u0633\u064a\u0637\u0629 (\u0648\u0633\u0627\u0626\u0637) \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0627\u0644\u0627\u0633\u062a\u062f\u0639\u0627\u0621 + +ORA-17069=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 XA \u0627\u0644\u0636\u0645\u0646\u064a + +ORA-17070=\u062d\u062c\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u062d\u062c\u0645 \u0627\u0644\u0623\u0642\u0635\u0649 \u0644\u0647\u0630\u0627 \u0627\u0644\u0646\u0648\u0639 + +ORA-17071=\u062a\u0645 \u062a\u062c\u0627\u0648\u0632 \u062d\u062f VARRAY \u0627\u0644\u0623\u0642\u0635\u0649 + +ORA-17072=\u062a\u0645 \u0625\u0636\u0627\u0641\u0629 \u0642\u064a\u0645\u0629 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0639\u0645\u0648\u062f \u0628\u0643\u062b\u064a\u0631 + +ORA-17073=\u0644\u0645 \u064a\u0639\u062f \u0627\u0644\u0645\u0631\u062c\u0639 \u0627\u0644\u0645\u0646\u0637\u0642\u064a \u0635\u0627\u0644\u062d\u0627\u064b + +ORA-17074=\u0646\u0645\u0637 \u0627\u0644\u0627\u0633\u0645 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17075=\u0639\u0645\u0644\u064a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0644\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0627\u0644\u062a\u0648\u062c\u064a\u0647 \u0641\u0642\u0637 + +ORA-17076=\u0639\u0645\u0644\u064a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0644\u0645\u062c\u0645\u0648\u0639\u0629 \u0646\u062a\u0627\u0626\u062c \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0641\u0642\u0637 + +ORA-17077=\u0641\u0634\u0644 \u062a\u0639\u064a\u064a\u0646 \u0642\u064a\u0645\u0629 REF + +ORA-17078=\u0644\u0627 \u064a\u0645\u0643\u0646 \u0625\u062c\u0631\u0627\u0621 \u0627\u0644\u0639\u0645\u0644\u064a\u0629 \u0644\u0623\u0646 \u0627\u0644\u0627\u062a\u0635\u0627\u0644\u0627\u062a \u0645\u0641\u062a\u0648\u062d\u0629 \u0628\u0627\u0644\u0641\u0639\u0644 + +ORA-17079=\u0635\u0644\u0627\u062d\u064a\u0627\u062a \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645 \u063a\u064a\u0631 \u0645\u062a\u0637\u0627\u0628\u0642\u0629 \u0645\u0639 \u0627\u0644\u0635\u0644\u0627\u062d\u064a\u0627\u062a \u0627\u0644\u0645\u0648\u062c\u0648\u062f\u0629 + +ORA-17080=\u0623\u0645\u0631 \u062f\u0641\u0639\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17081=\u062d\u062f\u062b \u062e\u0637\u0623 \u062e\u0644\u0627\u0644 \u0625\u062c\u0631\u0627\u0621 \u0627\u0644\u062f\u0641\u0639\u0629 + +ORA-17082=\u0644\u0627 \u064a\u0648\u062c\u062f \u0635\u0641 \u062d\u0627\u0644\u064a + +ORA-17083=\u0644\u064a\u0633 \u0639\u0644\u0649 \u0635\u0641 \u0627\u0644\u0625\u0636\u0627\u0641\u0629 + +ORA-17084=\u0645\u0633\u062a\u062f\u0639\u0649 \u0639\u0644\u0649 \u0635\u0641 \u0627\u0644\u0625\u0636\u0627\u0641\u0629 + +ORA-17085=\u062d\u062f\u062b \u062a\u0636\u0627\u0631\u0628 \u0641\u064a \u0627\u0644\u0642\u064a\u0645 + +ORA-17086=\u0642\u064a\u0645\u0629 \u0639\u0645\u0648\u062f \u063a\u064a\u0631 \u0645\u0639\u0631\u0641\u0629 \u0639\u0644\u0649 \u0635\u0641 \u0627\u0644\u0625\u0636\u0627\u0641\u0629 + +ORA-17087=\u062a\u062c\u0627\u0647\u0644 \u062a\u0644\u0645\u064a\u062d \u0627\u0644\u0623\u062f\u0627\u0621: setFetchDirection() + +ORA-17088=\u0635\u064a\u0627\u063a\u0629 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 \u0644\u0646\u0648\u0639 \u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u0646\u062a\u0627\u0626\u062c \u0627\u0644\u0645\u0637\u0644\u0648\u0628 \u0648\u0645\u0633\u062a\u0648\u0649 \u0627\u0644\u062a\u0632\u0627\u0645\u0646 \u0627\u0644\u0645\u0637\u0644\u0648\u0628 +ORA-17089=\u062e\u0637\u0623 \u062f\u0627\u062e\u0644\u064a + +ORA-17090=\u063a\u064a\u0631 \u0645\u0633\u0645\u0648\u062d \u0628\u0627\u0644\u0639\u0645\u0644\u064a\u0629 + +ORA-17091=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u0649 \u062a\u0643\u0648\u064a\u0646 \u0645\u062c\u0645\u0648\u0639\u0629 \u0627\u0644\u0646\u062a\u0627\u0626\u062c \u0641\u064a \u0627\u0644\u0646\u0648\u0639 \u0627\u0644\u0645\u0637\u0644\u0648\u0628 \u0648/\u0623\u0648 \u0645\u0633\u062a\u0648\u0649 \u0627\u0644\u062a\u0632\u0627\u0645\u0646 \u0627\u0644\u0645\u0637\u0644\u0648\u0628 + +ORA-17092=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0643\u0648\u064a\u0646 \u0623\u0648 \u062a\u0646\u0641\u064a\u0630 \u062c\u0645\u0644 JDBC \u0641\u064a \u0646\u0647\u0627\u064a\u0629 \u0645\u0639\u0627\u0644\u062c\u0629 \u0627\u0644\u0627\u0633\u062a\u062f\u0639\u0627\u0621. + +ORA-17093=\u0642\u0627\u0645\u062a \u0639\u0645\u0644\u064a\u0629 \u0648\u0633\u064a\u0637 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 \u0623\u0648\u0631\u0627\u0643\u0644 \u0628\u0625\u0639\u0627\u062f\u0629 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u0625\u0635\u062f\u0627\u0631 \u0646\u0648\u0639 \u0627\u0644\u0643\u0627\u0626\u0646 \u063a\u064a\u0631 \u0645\u062a\u0637\u0627\u0628\u0642 + +ORA-17095=\u0644\u0645 \u064a\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 \u062d\u062c\u0645 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u062c\u0645\u0644\u0629 + +ORA-17096=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 \u0627\u0644\u062e\u0627\u0635\u0629 \u0628\u0627\u0644\u062c\u0645\u0644\u0629 \u0644\u0647\u0630\u0627 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 \u0627\u0644\u0645\u0646\u0637\u0642\u064a. + +ORA-17097=\u0646\u0648\u0639 \u0639\u0646\u0635\u0631 \u062c\u062f\u0648\u0644 \u0641\u0647\u0631\u0633 PL/SQL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17098=\u0639\u0645\u0644\u064a\u0629 lob \u0641\u0627\u0631\u063a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17099=\u0637\u0648\u0644 \u0645\u0635\u0641\u0648\u0641\u0629 \u062c\u062f\u0648\u0644 \u0641\u0647\u0631\u0633 PL/SQL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17100=\u0643\u0627\u0626\u0646 \u0628\u064a\u0627\u0646\u0627\u062a \u062c\u0627\u0641\u0627 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17101=\u062e\u0635\u0627\u0626\u0635 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0643\u0627\u0626\u0646 \u0645\u062c\u0645\u0639 \u0627\u062a\u0635\u0627\u0644 OCI + +ORA-17102=Bfile \u0644\u0644\u0642\u0631\u0627\u0621\u0629 \u0641\u0642\u0637 + +ORA-17103=\u062a\u0645 \u0625\u0631\u062c\u0627\u0639 \u0646\u0648\u0639 \u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0628\u0648\u0627\u0633\u0637\u0629 getConnection. \u0627\u0633\u062a\u062e\u062f\u0645 getJavaSqlConnection \u0628\u062f\u0644\u0627 \u0645\u0646 \u0630\u0644\u0643 + +ORA-17104=\u0644\u0627 \u064a\u0645\u0643\u0646 \u062a\u0646\u0641\u064a\u0630 \u062c\u0645\u0644\u0629 SQL \u0641\u0627\u0631\u063a\u0629 \u0623\u0648 \u062e\u0627\u0644\u064a\u0629 + +ORA-17105=\u0644\u0645 \u064a\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 \u0646\u0637\u0627\u0642 \u0627\u0644\u0648\u0642\u062a \u0644\u062c\u0644\u0633\u0629 \u0639\u0645\u0644 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 + +ORA-17106=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u062a\u0643\u0648\u064a\u0646 \u0645\u062c\u0645\u0639 \u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0628\u0631\u0646\u0627\u0645\u062c \u062a\u0634\u063a\u064a\u0644 JDBC-OCI + +ORA-17107=\u0646\u0648\u0639 \u0627\u0644\u0628\u0631\u0648\u0643\u0633\u064a \u0627\u0644\u0645\u062d\u062f\u062f \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17108=\u0644\u0645 \u064a\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u062d\u062f \u0623\u0642\u0635\u0649 \u0644\u0644\u0637\u0648\u0644 \u0641\u064a defineColumnType + +ORA-17109=\u062a\u0639\u0630\u0631 \u0627\u0644\u0639\u062b\u0648\u0631 \u0639\u0644\u0649 \u062a\u0631\u0645\u064a\u0632 \u062d\u0631\u0648\u0641 \u062c\u0627\u0641\u0627 \u0627\u0644\u0642\u064a\u0627\u0633\u064a + +ORA-17110=\u0627\u0643\u062a\u0645\u0644 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0645\u0639 \u0638\u0647\u0648\u0631 \u062a\u062d\u0630\u064a\u0631\u0627\u062a + +ORA-17111=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u0648\u0642\u062a \u0627\u0646\u062a\u0647\u0627\u0621 TTL \u0644\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17112=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u0641\u0627\u0635\u0644 \u0632\u0645\u0646\u064a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0633\u0644\u0633\u0644\u0629 \u0627\u0644\u0639\u0645\u0644\u064a\u0627\u062a + +ORA-17113=\u0642\u064a\u0645\u0629 \u0627\u0644\u0641\u0627\u0635\u0644 \u0627\u0644\u0632\u0645\u0646\u064a \u0644\u0633\u0644\u0633\u0644\u0629 \u0627\u0644\u0639\u0645\u0644\u064a\u0627\u062a \u0623\u0643\u0628\u0631 \u0645\u0646 \u0642\u064a\u0645\u0629 \u0648\u0642\u062a \u0627\u0646\u062a\u0647\u0627\u0621 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0645\u062e\u0628\u0626\u064a\u0629 + +ORA-17114=\u062a\u0639\u0630\u0631 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u062a\u062b\u0628\u064a\u062a \u0639\u0645\u0644\u064a\u0629 \u0645\u062d\u0644\u064a\u0629 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 + +ORA-17115=\u062a\u0639\u0630\u0631 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0625\u0644\u063a\u0627\u0621 \u062a\u0639\u062f\u064a\u0644\u0627\u062a \u0639\u0645\u0644\u064a\u0629 \u0645\u062d\u0644\u064a\u0629 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 + +ORA-17116=\u062a\u0639\u0630\u0631 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 \u0646\u0634\u0637\u0629 + +ORA-17117=\u062a\u0639\u0630\u0631 \u062a\u0639\u064a\u064a\u0646 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 \u0646\u0634\u0637\u0629 + +ORA-17118=\u062a\u0639\u0630\u0631 \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0645\u0639\u0631\u0641 \u0644\u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0645\u0633\u0645\u0627\u0629 + +ORA-17119=\u062a\u0639\u0630\u0631 \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0633\u0645 \u0644\u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u063a\u064a\u0631 \u0645\u0633\u0645\u0627\u0629 + +ORA-17120=\u062a\u0639\u0630\u0631 \u062a\u0639\u064a\u064a\u0646 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0645\u0639 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a + +ORA-17121=\u062a\u0639\u0630\u0631 \u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062a\u0639\u062f\u064a\u0644\u0627\u062a \u0625\u0644\u0649 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 \u0645\u0639 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0644\u0642\u0627\u0626\u064a + +ORA-17122=\u062a\u0639\u0630\u0631 \u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062a\u0639\u062f\u064a\u0644\u0627\u062a \u0625\u0644\u0649 \u0646\u0642\u0637\u0629 \u062d\u0641\u0638 txn \u0645\u062d\u0644\u064a\u0629 \u0641\u064a \u0639\u0645\u0644\u064a\u0629 \u0639\u0627\u0645\u0629 + +ORA-17123=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u062d\u062c\u0645 \u0630\u0627\u0643\u0631\u0629 \u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u062c\u0645\u0644\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17124=\u062a\u0645 \u062a\u062d\u062f\u064a\u062f \u0648\u0642\u062a \u0627\u0646\u062a\u0647\u0627\u0621 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0644\u0639\u062f\u0645 \u0646\u0634\u0627\u0637 \u0630\u0627\u0643\u0631\u0629 \u0645\u062e\u0628\u0626\u064a\u0629 \u0644\u0644\u0627\u062a\u0635\u0627\u0644 + +ORA-17200=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u064a \u062a\u062d\u0648\u064a\u0644 \u0633\u0644\u0633\u0644\u0629 \u0641\u062a\u062d XA \u0645\u0646 \u062c\u0627\u0641\u0627 \u0625\u0644\u064a C \u0628\u0627\u0644\u0634\u0643\u0644 \u0627\u0644\u0645\u0646\u0627\u0633\u0628 + +ORA-17201=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u0649 \u062a\u062d\u0648\u064a\u0644 \u0633\u0644\u0633\u0644\u0629 \u0625\u063a\u0644\u0627\u0642 XA \u0645\u0646 \u062c\u0627\u0641\u0627 \u0625\u0644\u064a C \u0628\u0627\u0644\u0634\u0643\u0644 \u0627\u0644\u0645\u0646\u0627\u0633\u0628 + +ORA-17202=\u063a\u064a\u0631 \u0642\u0627\u062f\u0631 \u0639\u0644\u064a \u062a\u062d\u0648\u064a\u0644 \u0627\u0633\u0645 RM \u0645\u0646 \u062c\u0627\u0641\u0627 \u0625\u0644\u064a C \u0628\u0627\u0644\u0634\u0643\u0644 \u0627\u0644\u0645\u0646\u0627\u0633\u0628 + +ORA-17203=\u062a\u0639\u0630\u0631 \u062a\u0639\u064a\u064a\u0646 \u0646\u0648\u0639 \u0627\u0644\u0645\u0624\u0634\u0631 \u0625\u0644\u064a \u0627\u0644\u0637\u0648\u0644 jlong + +ORA-17204=\u0645\u0635\u0641\u0648\u0641\u0629 \u0627\u0644\u0645\u062f\u062e\u0644\u0627\u062a \u0642\u0635\u064a\u0631\u0629 \u0644\u0644\u063a\u0627\u064a\u0629 \u0644\u062f\u0631\u062c\u0629 \u0644\u0627 \u064a\u0645\u0643\u0646\u0647\u0627 \u0627\u0644\u0627\u062d\u062a\u0641\u0627\u0638 \u0628\u0645\u0631\u0627\u062c\u0639 OCI + +ORA-17205=\u0641\u0634\u0644 \u0641\u064a \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0645\u0631\u062c\u0639 OCISvcCtx \u0645\u0646 C-XA \u0628\u0627\u0633\u062a\u062e\u062f\u0627\u0645 xaoSvcCtx + +ORA-17206=\u0641\u0634\u0644 \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u064a \u0645\u0631\u062c\u0639 OCIEnv \u0645\u0646 C-XA \u0628\u0627\u0633\u062a\u062e\u062f\u0627\u0645 xaoEnv + +ORA-17207=\u0644\u0645 \u064a\u062a\u0645 \u062a\u0639\u064a\u064a\u0646 \u062e\u0627\u0635\u064a\u0629 tnsEntry \u0641\u064a \u0645\u0635\u062f\u0631 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17213=C-XA \u0623\u0631\u062c\u0639 XAER_RMERR \u0623\u062b\u0646\u0627\u0621 xa_open + +ORA-17215=C-XA \u0623\u0631\u062c\u0639 XAER_INVAL \u0623\u062b\u0646\u0627\u0621 xa_open + +ORA-17216=C-XA \u0623\u0631\u062c\u0639 XAER_PROTO \u0623\u062b\u0646\u0627\u0621 xa_open + +ORA-17233=C-XA \u0623\u0631\u062c\u0639 XAER_RMERR \u0623\u062b\u0646\u0627\u0621 xa_close + +ORA-17235=C-XA \u0623\u0631\u062c\u0639 XAER_INVAL \u0623\u062b\u0646\u0627\u0621 xa_close + +ORA-17236=C-XA \u0623\u0631\u062c\u0639 XAER_PROTO \u0623\u062b\u0646\u0627\u0621 xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u0627\u0646\u062d\u0631\u0627\u0641 \u0627\u0644\u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 + +ORA-17402=\u062a\u0648\u0642\u0639 \u0631\u0633\u0627\u0644\u0629 RPA \u0648\u0627\u062d\u062f\u0629 \u0641\u0642\u0637 + +ORA-17403=\u062a\u0648\u0642\u0639 \u0631\u0633\u0627\u0644\u0629 RXH \u0648\u0627\u062d\u062f\u0629 \u0641\u0642\u0637 + +ORA-17404=\u062a\u0644\u0642\u064a RXD \u0623\u0643\u062b\u0631 \u0645\u0646 \u0627\u0644\u0645\u062a\u0648\u0642\u0639 + +ORA-17405=\u0637\u0648\u0644 UAC \u0644\u064a\u0633 \u0635\u0641\u0631\u0627\u064b + +ORA-17406=\u062a\u062c\u0627\u0648\u0632 \u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0649 \u0644\u0637\u0648\u0644 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 + +ORA-17407=\u0646\u0648\u0639 \u0627\u0644\u062a\u0645\u062b\u064a\u0644 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d(setRep) + +ORA-17408=\u062a\u0645\u062b\u064a\u0644 \u0646\u0648\u0639 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d(getRep) + +ORA-17409=\u0637\u0648\u0644 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17410=\u0644\u0645 \u062a\u0639\u062f \u0647\u0646\u0627\u0643 \u0628\u064a\u0627\u0646\u0627\u062a \u0644\u0644\u0642\u0631\u0627\u0621\u0629 \u0645\u0646 \u0627\u0644\u0645\u0642\u0628\u0633 + +ORA-17411=\u0639\u062f\u0645 \u062a\u0637\u0627\u0628\u0642 \u062a\u0645\u062b\u064a\u0644\u0627\u062a \u0646\u0648\u0639 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a + +ORA-17412=\u0637\u0648\u0644 \u0627\u0644\u0646\u0648\u0639 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0649 + +ORA-17413=\u062a\u062c\u0627\u0648\u0632 \u062d\u062c\u0645 \u0627\u0644\u0645\u0641\u062a\u0627\u062d + +ORA-17414=\u062d\u062c\u0645 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0648\u0633\u064a\u0637\u0629 \u063a\u064a\u0631 \u0643\u0627\u0641\u064a \u0644\u062a\u062e\u0632\u064a\u0646 \u0623\u0633\u0645\u0627\u0621 \u0627\u0644\u0623\u0639\u0645\u062f\u0629 + +ORA-17415=\u0644\u0645 \u062a\u062a\u0645 \u0645\u0639\u0627\u0644\u062c\u0629 \u0647\u0630\u0627 \u0627\u0644\u0646\u0648\u0639 + +ORA-17416=FATAL + +ORA-17417=\u0645\u0634\u0643\u0644\u0629 NLS\u060c \u0641\u0634\u0644 \u0641\u064a \u0641\u0643 \u0634\u0641\u0631\u0629 \u0623\u0633\u0645\u0627\u0621 \u0627\u0644\u0639\u0645\u0648\u062f + +ORA-17418=\u062e\u0637\u0623 \u0641\u064a \u0637\u0648\u0644 \u062d\u0642\u0644 \u0627\u0644\u0647\u064a\u0643\u0644 \u0627\u0644\u062f\u0627\u062e\u0644\u064a + +ORA-17419=\u062a\u0645 \u0631\u062c\u0648\u0639 \u0631\u0642\u0645 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0645\u0646 \u0627\u0644\u0623\u0639\u0645\u062f\u0629 + +ORA-17420=\u0625\u0635\u062f\u0627\u0631 \u0623\u0648\u0631\u0627\u0643\u0644 \u063a\u064a\u0631 \u0645\u0639\u0631\u0641 + +ORA-17421=\u0627\u0644\u0623\u0646\u0648\u0627\u0639 \u0623\u0648 \u0627\u062a\u0635\u0627\u0644 \u063a\u064a\u0631 \u0645\u0639\u0631\u0641\u0629 + +ORA-17422=\u0637\u0628\u0642\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0627\u0644\u0645\u0635\u0646\u0639 + +ORA-17423=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0642\u0637\u0639\u0629 PLSQL \u062f\u0648\u0646 \u062a\u0639\u0631\u064a\u0641 IOV + +ORA-17424=\u0645\u062d\u0627\u0648\u0644\u0629 \u0639\u0645\u0644\u064a\u0629 \u0645\u0646\u0638\u0645\u0629 \u0645\u062e\u062a\u0644\u0641\u0629 + +ORA-17425=\u0631\u062c\u0648\u0639 \u062a\u062f\u0641\u0642 \u0641\u064a \u0642\u0637\u0639\u0629 PLSQL + +ORA-17426=\u0643\u0644\u0627\u064b \u0645\u0646 \u0631\u0648\u0627\u0628\u0637 IN \u0648 OUT \u0647\u064a NULL + +ORA-17427=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 OAC \u063a\u064a\u0631 \u0645\u0647\u064a\u0623 + +ORA-17428=\u064a\u062c\u0628 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 \u0627\u0644\u062f\u062e\u0648\u0644 \u0628\u064e\u0639\u062f \u0627\u0644\u0627\u062a\u0635\u0627\u0644 + +ORA-17429=\u064a\u062c\u0628 \u0639\u0644\u0649 \u0627\u0644\u0623\u0642\u0644 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 \u0628\u062e\u0627\u062f\u0645 + +ORA-17430=\u064a\u062c\u0628 \u0627\u0644\u062f\u062e\u0648\u0644 \u0625\u0644\u0649 \u062e\u0627\u062f\u0645 + +ORA-17431=\u0639\u0628\u0627\u0631\u0629 SQL \u0644\u0644\u062a\u062d\u0644\u064a\u0644 \u0627\u0644\u0644\u063a\u0648\u064a \u062e\u0627\u0644\u064a\u0629 + +ORA-17432=\u062e\u064a\u0627\u0631\u0627\u062a \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a all7 + +ORA-17433=\u0648\u0633\u0627\u0626\u0637 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 \u0641\u064a \u0627\u0644\u0627\u0633\u062a\u062f\u0639\u0627\u0621 + +ORA-17434=\u0644\u064a\u0633 \u0641\u064a \u0637\u0648\u0631 \u0627\u0644\u062a\u062f\u0641\u0642 + +ORA-17435=\u0631\u0642\u0645 in_out_binds \u063a\u064a\u0631 \u0635\u0627\u0644\u062d \u0641\u064a IOV + +ORA-17436=\u0639\u062f\u062f \u0627\u0644\u0631\u0648\u0627\u0628\u0637 \u0627\u0644\u062e\u0627\u0631\u062c\u064a\u0629 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17437=\u062e\u0637\u0623 \u0641\u064a \u0642\u0637\u0639\u0629 PLSQL \u0648\u0633\u064a\u0637\u0629 (\u0648\u0633\u0627\u0626\u0637) IN/OUT + +ORA-17438=\u062f\u0627\u062e\u0644\u064a - \u0642\u064a\u0645\u0629 \u063a\u064a\u0631 \u0645\u062a\u0648\u0642\u0639\u0629 + +ORA-17439=\u0646\u0648\u0639 SQL \u063a\u064a\u0631 \u0635\u0627\u0644\u062d + +ORA-17440=DBItem/DBType \u062e\u0627\u0644\u064a + +ORA-17441=\u0625\u0635\u062f\u0627\u0631 \u0623\u0648\u0631\u0627\u0643\u0644 \u063a\u064a\u0631 \u0645\u062f\u0639\u0648\u0645. \u0627\u0644\u062d\u062f \u0627\u0644\u0623\u062f\u0646\u0649 \u0644\u0644\u0625\u0635\u062f\u0627\u0631\u0627\u062a \u0627\u0644\u0645\u062f\u0639\u0648\u0645\u0629 \u0647\u0648 \u0627\u0644\u0625\u0635\u062f\u0627\u0631 7.2.3. + +ORA-17442=\u0642\u064a\u0645\u0629 Refcursor \u063a\u064a\u0631 \u0635\u0627\u0644\u062d\u0629 + +ORA-17443=\u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645 \u0623\u0648 \u0643\u0644\u0645\u0629 \u0627\u0644\u0633\u0631 \u0627\u0644\u062e\u0627\u0644\u064a\u0629 \u063a\u064a\u0631 \u0645\u062f\u0639\u0645\u0629 \u0641\u064a \u0628\u0631\u0646\u0627\u0645\u062c \u062a\u0634\u063a\u064a\u0644 THIN + +ORA-17444=\u0625\u0635\u062f\u0627\u0631 \u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 TTC \u0627\u0644\u0630\u064a \u062a\u0645 \u0627\u0633\u062a\u0644\u0627\u0645\u0647 \u0645\u0646 \u0627\u0644\u062e\u0627\u062f\u0645 \u063a\u064a\u0631 \u0645\u062f\u0639\u0648\u0645 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ca.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ca.properties new file mode 100644 index 0000000..58b9da7 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ca.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Error intern + +ORA-17002=Excepci\u00f3 ES + +ORA-17003=\u00cdndex de columna incorrecte + +ORA-17004=Tipus de columna incorrecte + +ORA-17005=Tipus de columna no suportat + +ORA-17006=Nom de columna incorrecte + +ORA-17007=Columna din\u00e0mica no v\u00e0lida + +ORA-17008=Connexi\u00f3 tancada + +ORA-17009=Sent\u00e8ncia tancada + +ORA-17010=Resultset tancat + +ORA-17011=Resultset exhaurit + +ORA-17012=Conflicte en el tipus de par\u00e0metre + +ORA-17014=No s\'ha cridat ResultSet.next + +ORA-17015=S\'ha cancel\u00b7lat la declaraci\u00f3 + +ORA-17016=La declaraci\u00f3 ha superat el temps d\'espera + +ORA-17017=Cursor ja inicialitzat + +ORA-17018=Cursor incorrecte + +ORA-17019=Nom\u00e9s es pot descriure una consulta + +ORA-17020=Preobtenci\u00f3 de fila incorrecta + +ORA-17021=Manca definici\u00f3 + +ORA-17022=Manca definici\u00f3 a l\'\u00edndex + +ORA-17023=Prestaci\u00f3 no suportada + +ORA-17024=No hi ha lectura de dades + +ORA-17025=Error a defines.isNull () + +ORA-17026=Sobreeiximent num\u00e8ric + +ORA-17027=El flux ja ha estat tancat + +ORA-17028=No es poden fer definicions noves fins que no es tanqui el ResultSet actual + +ORA-17029=setReadOnly: Connexions de nom\u00e9s lectura no suportades + +ORA-17030=READ_COMMITTED i SERIALIZABLE s\u00f3n els \u00fanics nivells de transacci\u00f3 v\u00e0lids + +ORA-17031=setAutoClose: Nom\u00e9s suporta el mode de tancament autom\u00e0tic activat + +ORA-17032=no es pot fixar l\'obtenci\u00f3 de fila a zero + +ORA-17033=Cadena SQL92 mal constru\u00efda en la posici\u00f3 + +ORA-17034=Senyal SQL92 no suportada en la posici\u00f3 + +ORA-17035=Joc de car\u00e0cters no suportat !! + +ORA-17036=excepci\u00f3 a OracleNumber + +ORA-17037=Fallada en convertir entre UTF8 i UCS2 + +ORA-17038=Matriu de bytes no suficientment llarga + +ORA-17039=Matriu de car\u00e0cters no suficientment llarga + +ORA-17040=S\'ha d\'especificar el Sub Protocol en l\' URL de connexi\u00f3 + +ORA-17041=Manca el par\u00e0metre IN o OUT en l\'\u00edndex: + +ORA-17042=Valor de Lot Incorrecte + +ORA-17043=Grand\u00e0ria M\u00e0xima de Flux Incorrecta + +ORA-17044=Error intern: Matriu de dades no assignada + +ORA-17045=Error intern: Intent d\'accedir a valors d\'unificaci\u00f3 superiors al valor del lot + +ORA-17046=Error intern: \u00cdndex incorrecte per a l\'acc\u00e9s a les dades + +ORA-17047=Error en l\'an\u00e0lisi del Descriptor de Tipus + +ORA-17048=Tipus no definit + +ORA-17049=Tipus d\'objecte java i sql no inconsistents + +ORA-17050=no hi ha cap element com aquest en el vector + +ORA-17051=Aquest API no pot \u00e9sser utilitzat per a tipus no UDT + +ORA-17052=Aquesta ref no \u00e9s v\u00e0lida + +ORA-17053=Aquesta grand\u00e0ria no \u00e9s v\u00e0lida + +ORA-17054=Aquest localitzador LOB no \u00e9s v\u00e0lid + +ORA-17055=S\'ha trobat un car\u00e0cter incorrecte a + +ORA-17056=Joc de car\u00e0cters no suportat + +ORA-17057=LOB tancat + +ORA-17058=Error intern: Relaci\u00f3 de conversi\u00f3 NLS incorrecta + +ORA-17059=No es pot convertir en representaci\u00f3 interna + +ORA-17060=No es pot construir el descriptor + +ORA-17061=Manca el descriptor + +ORA-17062=El cursor de ref no \u00e9s v\u00e0lid + +ORA-17063=No en una transacci\u00f3 + +ORA-17064=Sintaxi incorrecta o nom de base de dades nul + +ORA-17065=La classe de conversi\u00f3 \u00e9s nul\u00b7la + +ORA-17066=Cal una implementaci\u00f3 espec\u00edfica de l\'estrat d\'acc\u00e9s + +ORA-17067=S\'ha especificat un URL Oracle incorrecte + +ORA-17068=Argument(s) incorrecte(s) a la trucada + +ORA-17069=Utilitzar trucada XA expl\u00edcita + +ORA-17070=Grand\u00e0ria de dades major a la grand\u00e0ria m\u00e0xima per a aquest tipus + +ORA-17071=S\'ha sobrepassat el l\u00edmit VARRAY m\u00e0xim + +ORA-17072=EL valor insertat \u00e9s massa gran per la columna + +ORA-17073=El tractament l\u00f2gic ja no \u00e9s v\u00e0lid + +ORA-17074=patr\u00f3 de nom incorrecte + +ORA-17075=Operaci\u00f3 incorrecta en el joc de resultats de nom\u00e9s reenviament + +ORA-17076=Operaci\u00f3 incorrecta en el joc de resultats de nom\u00e9s lectura + +ORA-17077=Fallada en definir el valor REF + +ORA-17078=No es pot realitzar l\'operaci\u00f3 perqu\u00e8 les connexions ja estan obertes + +ORA-17079=Les credencials d\'usuari no coincideixen amb les ja existents + +ORA-17080=comanda de lot incorrecta + +ORA-17081=s\'ha produ\u00eft un error durant el processament per lots + +ORA-17082=No hi ha cap fila actual + +ORA-17083=No es troba en la fila d\'inserci\u00f3 + +ORA-17084=S\'ha cridat en la fila d\'inserci\u00f3 + +ORA-17085=S\'originen conflictes amb el valor + +ORA-17086=Valor de columna no definit a la fila d\'inserci\u00f3 + +ORA-17087=Indicaci\u00f3 de rendiment ignorada: setFetchDirection() + +ORA-17088=Sintaxi no suportada per al tipus de resultset i el nivell de concurr\u00e8ncia sol\u00b7licitats +ORA-17089=error intern + +ORA-17090=operaci\u00f3 no permesa + +ORA-17091=No es pot crear el tipus un joc de resultats en el tipus i/o nivell de concurr\u00e8ncia sol\u00b7licitats + +ORA-17092=No es poden crear o executar sent\u00e8ncies JDBC al final del processament de crides + +ORA-17093=L\'operaci\u00f3 OCI ha retornat OCI_SUCCESS_WITH_INFO + +ORA-17094=No coincideix la versi\u00f3 del tipus d\'objecte + +ORA-17095=No s'ha definit la grand\u00e0ria de la cach\u00e9 de la declaraci\u00f3 + +ORA-17096=No es pot activar l\'escriptura de sent\u00e8ncies a la cache per a aquesta connexi\u00f3 l\u00f2gica. + +ORA-17097=Tipus d\'element no v\u00e0lid a la Taula d\'\u00cdndex PL/SQL + +ORA-17098=Operaci\u00f3 de lob buit no v\u00e0lida + +ORA-17099=Longitud de vector de taula d\'\u00edndex PL/SQL no v\u00e0lida + +ORA-17100=Objecte Java de base de dades no v\u00e0lid + +ORA-17101=Propietats no v\u00e0lides a l\'Objecte del Conjunt de Connexi\u00f3 OCI + +ORA-17102=Bfile \u00e9s de nom\u00e9s lectura + +ORA-17103=getConnection retornar\u00e0 un tipus de connexi\u00f3 no v\u00e0lid. En el seu lloc, utilitzeu getJavaSqlConnection + +ORA-17104=la sent\u00e8ncia SQL per executar no pot \u00e9sser buida o nul\u00b7la + +ORA-17105=no s\'ha establert la zona hor\u00e0ria de la sessi\u00f3 de connexi\u00f3 + +ORA-17106=s'ha especificat una configuraci\u00f3 d'agrupaci\u00f3 de connexions de controlador JDBC-OCI que no \u00e9s v\u00e0lida + +ORA-17107=el tipus de proxy especificat no \u00e9s v\u00e0lid + +ORA-17108=No s'ha especificat cap longitud m\u00e0xima a defineColumnType + +ORA-17109=no s'ha trobat la codificaci\u00f3 de car\u00e0cters Java est\u00e0ndard + +ORA-17110=execuci\u00f3 completada amb av\u00eds + +ORA-17111=S'ha especificat un temps d'espera de TTL de la cach\u00e9 de connexi\u00f3 incorrecte + +ORA-17112=S'ha especificat un interval de threade que no \u00e9s v\u00e0lid + +ORA-17113=El valor d'interval del thread \u00e9s m\u00e9s gran que el valor de temps d'espera de cach\u00e9 + +ORA-17114=no s'ha pogut utilitzar una validaci\u00f3 de transacci\u00f3 local en una transacci\u00f3 global + +ORA-17115=no s'ha pogut utilitzar un rollback de transacci\u00f3 local en una transacci\u00f3 global + +ORA-17116=no s'ha pogut activar la validaci\u00f3 autom\u00e0tica en una transacci\u00f3 global activa + +ORA-17117=no s'ha pogut establir el punt de restauraci\u00f3 en una transacci\u00f3 global activa + +ORA-17118=no s'ha obtingut cap ID per a un punt de restauraci\u00f3 amb nom + +ORA-17119=no s'ha obtingut cap nom per a un punt de restauraci\u00f3 sense nom + +ORA-17120=no s'ha pogut definir cap Punt de restauraci\u00f3 amb la validaci\u00f3 autom\u00e0tica activada + +ORA-17121=no s'ha pogut efectuar un rollback al Punt de recuperaci\u00f3 amb la validaci\u00f3 autom\u00e0tica activada + +ORA-17122=no s'ha pogut efectuar un rollback a un Punt de restauraci\u00f3 txn local en una transacci\u00f3 global + +ORA-17123=S'ha especificat una grand\u00e0ria de cach\u00e9 de declaraci\u00f3 incorrecta + +ORA-17124=S'ha especificat un temps d'espera d'Inactivitat de la cach\u00e9 de connexi\u00f3 incorrecte + +ORA-17200=No s\'ha pogut convertir b\u00e9 la cadena d\'obertura XA de Java a C + +ORA-17201=No s\'ha pogut convertir b\u00e9 la cadena de tancament XA de Java a C + +ORA-17202=No s\'ha pogut convertir b\u00e9 el nom RM de Java a C + +ORA-17203=No s\'ha pogut canviar el tipus d\'apuntador de fusi\u00f3 per jlong + +ORA-17204=El vector d\'entrada \u00e9s massa curt per contenir gestors OCI + +ORA-17205=No s\'ha pogut obtenir el gestor OCISvcCtx de C-XA mitjan\u00e7ant xaoSvcCtx + +ORA-17206=No s\'ha pogut obtenir el egstor OCIEnv de C-XA mitjan\u00e7ant xaoEnv + +ORA-17207=La propietat tnsEntry no ha estat establerta a l\'Origen de Dades + +ORA-17213=C-XA ha retornat XAER_RMERR durant xa_open + +ORA-17215=C-XA ha retornat XAER_INVAL durant xa_open + +ORA-17216=C-XA ha retornat XAER_PROTO durant xa_open + +ORA-17233=C-XA ha retornat XAER_RMERR durant xa_close + +ORA-17235=C-XA ha retornat XAER_INVAL durant xa_close + +ORA-17236=C-XA ha retornat XAER_PROTO durant xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violaci\u00f3 de protocol + +ORA-17402=Nom\u00e9s s\'espera un missatge RPA + +ORA-17403=Nom\u00e9s s\'espera un missatge RXH + +ORA-17404=S\'han rebut m\u00e9s RXD dels esperats + +ORA-17405=La longitud UAC no \u00e9s zero + +ORA-17406=Sobrepassa la longitud m\u00e0xima del buffer + +ORA-17407=representaci\u00f3 incorrecta del tipus(setRep) + +ORA-17408=representaci\u00f3 incorrecta del tipus(getRep) + +ORA-17409=longitud de buffer incorrecta + +ORA-17410=No hi ha m\u00e9s dades per llegir al s\u00f2col + +ORA-17411=no coincideixen les representacions dels Tipus de Dades + +ORA-17412=Longitud de tipus m\u00e9s gran que la m\u00e0xima + +ORA-17413=Sobrepassa la grand\u00e0ria de la clau + +ORA-17414=Grand\u00e0ria de coix\u00ed insuficient per emmagatzemar els Noms de les Columnes + +ORA-17415=Aquest tipus no ha estat gestionat + +ORA-17416=FATAL + +ORA-17417=Problema NLS, no s\'han pogut descodificar els noms de les columnes + +ORA-17418=Error de longitud del camp d\'estructura interna + +ORA-17419=Nombre de columnes retornades incorrecte + +ORA-17420=Versi\u00f3 d\'Oracle no definida + +ORA-17421=Tipus o Connexi\u00f3 no definits + +ORA-17422=Classe no v\u00e0lida a la f\u00e0brica + +ORA-17423=Utilitzaci\u00f3 de bloc PLSQL sense un IOV definit + +ORA-17424=Intentant una operaci\u00f3 de classificaci\u00f3 diferent + +ORA-17425=Retornant un flux en el bloc PLSQL + +ORA-17426=Tant el lligam IN com l\'OUT s\u00f3n NULL + +ORA-17427=Utilitzant un OAC no inicialitzat + +ORA-17428=S'ha de cridar l'entrada despr\u00e9s de connectar + +ORA-17429=Haur\u00edeu d'estar almenys connectat al servidor + +ORA-17430=Ha d'estar connectat al servidor + +ORA-17431=La sent\u00e8ncia SQL per analitzar \u00e9s nul\u00b7la + +ORA-17432=opcions no v\u00e0lides en la trucada + +ORA-17433=arguments no v\u00e0lids en la trucada + +ORA-17434=no en el mode de flux + +ORA-17435=nombre de in_out_binds en IOV no v\u00e0lid + +ORA-17436=nombre de sortides no v\u00e0lid + +ORA-17437=Error en el(s) argument(s) IN/OUT del bloc PLSQL + +ORA-17438=Intern - Valor no esperat + +ORA-17439=Tipus SQL no v\u00e0lid + +ORA-17440=DBItem/DBType \u00e9s nul + +ORA-17441=Versi\u00f3 d\'Oracle no suportada. La versi\u00f3 m\u00ednima suportada \u00e9s la 7.2.3. + +ORA-17442=El valor de cursor de ref no \u00e9s v\u00e0lid + +ORA-17443=Usuari o paraula clau nuls no suportats al controlador THIN + +ORA-17444=La versi\u00f3 de Protocol TTC rebuda del servidor no \u00e9s suportada + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_cs.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_cs.properties new file mode 100644 index 0000000..7903d22 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_cs.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Vnit\u0159n\u00ed chyba + +ORA-17002=V\u00fdjimka vstupu/v\u00fdstupu + +ORA-17003=Neplatn\u00fd index sloupce + +ORA-17004=Neplatn\u00fd typ sloupce + +ORA-17005=Nepodporovan\u00fd typ sloupce + +ORA-17006=Neplatn\u00fd n\u00e1zev sloupce + +ORA-17007=Neplatn\u00fd dynamick\u00fd sloupec + +ORA-17008=Ukon\u010den\u00e9 p\u0159ipojen\u00ed + +ORA-17009=Uzav\u0159en\u00fd p\u0159\u00edkaz + +ORA-17010=Uzav\u0159en\u00e1 mno\u017eina v\u00fdsledk\u016f + +ORA-17011=Vy\u010derpan\u00e1 mno\u017eina v\u00fdsledk\u016f + +ORA-17012=Konflikt typu parametr\u016f + +ORA-17014=Nebyl vyvol\u00e1n ResultSet.next + +ORA-17015=P\u0159\u00edkaz byl zru\u0161en + +ORA-17016=\u010casov\u00fd limit pro p\u0159\u00edkaz vypr\u0161el + +ORA-17017=Kurzor je ji\u017e inicializov\u00e1n + +ORA-17018=Neplatn\u00fd kurzor + +ORA-17019=Lze popsat jen dotaz + +ORA-17020=Neplatn\u00e9 p\u0159edb\u011b\u017en\u00e9 vyvol\u00e1n\u00ed \u0159\u00e1dku + +ORA-17021=Chyb\u011bj\u00edc\u00ed definice + +ORA-17022=Chyb\u011bj\u00edc\u00ed definice v indexu + +ORA-17023=Nepodporovan\u00e1 funkce + +ORA-17024=Nena\u010dtena \u017e\u00e1dn\u00e1 data + +ORA-17025=Chyba v defines.isNull () + +ORA-17026=\u010c\u00edseln\u00e9 p\u0159ete\u010den\u00ed + +ORA-17027=Proud dat je ji\u017e uzav\u0159en + +ORA-17028=Nelze prov\u00e1d\u011bt nov\u00e9 definice, dokud nebude uzav\u0159ena aktu\u00e1ln\u00ed mno\u017eina v\u00fdsledk\u016f + +ORA-17029=setReadOnly: Spojen\u00ed Read-only nejsou podporov\u00e1na + +ORA-17030=READ_COMMITTED a SERIALIZABLE jsou jedin\u00e9 platn\u00e9 \u00farovn\u011b transakc\u00ed + +ORA-17031=setAutoClose: Podpora jen zapnut\u00e9ho re\u017eimu automatick\u00e9ho zav\u00edr\u00e1n\u00ed + +ORA-17032=nelze nastavit p\u0159edb\u011b\u017en\u00e9 vyvol\u00e1n\u00ed \u0159\u00e1dku na nulu + +ORA-17033=Chybn\u011b formulovan\u00fd \u0159et\u011bzec SQL92 na pozici + +ORA-17034=Nepodporovan\u00e1 lexik\u00e1ln\u00ed jednotka SQL92 na pozici + +ORA-17035=Nepodporovan\u00e1 znakov\u00e1 sada !! + +ORA-17036=v\u00fdjimka v OracleNumber + +ORA-17037=Selh\u00e1n\u00ed p\u0159i konverzi mezi UTF8 a UCS2 + +ORA-17038=Nedostate\u010dn\u00e1 d\u00e9lka bajtov\u00e9ho pole + +ORA-17039=Nedostate\u010dn\u00e1 d\u00e9lka znakov\u00e9ho pole + +ORA-17040=Je t\u0159eba zadat Sub Protokol v p\u0159ipojovac\u00ed URL + +ORA-17041=Chyb\u011bj\u00edc\u00ed parametr IN nebo OUT v indexu: + +ORA-17042=Neplatn\u00e1 hodnota d\u00e1vky + +ORA-17043=Neplatn\u00e1 maxim\u00e1ln\u00ed velikost toku + +ORA-17044=Vnit\u0159n\u00ed chyba: Nebylo alokov\u00e1no datov\u00e9 pole + +ORA-17045=Vnit\u0159n\u00ed chyba: Pokus o p\u0159\u00edstup k vazebn\u00edm hodnot\u00e1m mimo hodnotu d\u00e1vky + +ORA-17046=Vnit\u0159n\u00ed chyba: Neplatn\u00fd index pro p\u0159\u00edstup k dat\u016fm + +ORA-17047=Chyba v anal\u00fdze Deskriptoru typu + +ORA-17048=Nedefinovan\u00fd typ + +ORA-17049=Nekonzistentn\u00ed typy objektu java a sql + +ORA-17050=\u017e\u00e1dn\u00fd takov\u00fd prvek ve vektoru + +ORA-17051=Toto API nelze pou\u017e\u00edt pro jin\u00fd typ ne\u017e UDT + +ORA-17052=Tento odkaz je neplatn\u00fd + +ORA-17053=Tato velikost je neplatn\u00e1 + +ORA-17054=Lok\u00e1tor LOB je neplatn\u00fd + +ORA-17055=Nalezen neplatn\u00fd znak v + +ORA-17056=Nepodporovan\u00e1 znakov\u00e1 sada + +ORA-17057=Uzav\u0159en\u00fd LOB + +ORA-17058=Vnit\u0159n\u00ed chyba: Neplatn\u00fd p\u0159evodov\u00fd pom\u011br NLS + +ORA-17059=Selh\u00e1n\u00ed p\u0159i p\u0159evodu na vnit\u0159n\u00ed reprezentaci + +ORA-17060=Selh\u00e1n\u00ed p\u0159i vytv\u00e1\u0159en\u00ed deskriptoru + +ORA-17061=Chyb\u011bj\u00edc\u00ed deskriptor + +ORA-17062=Kurzor odkazu je neplatn\u00fd + +ORA-17063=Nen\u00ed v transakci + +ORA-17064=Neplatn\u00e1 syntaxe nebo pr\u00e1zdn\u00fd n\u00e1zev datab\u00e1ze + +ORA-17065=P\u0159evodn\u00ed t\u0159\u00edda je pr\u00e1zdn\u00e1 + +ORA-17066=Je t\u0159eba specifick\u00e9 zaveden\u00ed \u00farovn\u011b p\u0159\u00edstupu + +ORA-17067=Neplatn\u011b zadan\u00e1 Oracle URL + +ORA-17068=Vol\u00e1n\u00ed neplatn\u00e9ho argumentu(-\u016f) + +ORA-17069=Pou\u017eijte z\u0159eteln\u00e9 vol\u00e1n\u00ed XA + +ORA-17070=Velikost dat je v\u011bt\u0161\u00ed ne\u017e maxim\u00e1ln\u00ed velikost pro tento typ + +ORA-17071=P\u0159ekro\u010den maxim\u00e1ln\u00ed limit VARRAY + +ORA-17072=Vlo\u017een\u00e1 hodnota je pro sloupec p\u0159\u00edli\u0161 velk\u00e1 + +ORA-17073=Logick\u00fd odkaz ji\u017e neplat\u00ed + +ORA-17074=neplatn\u00fd vzor n\u00e1zvu + +ORA-17075=Neplatn\u00e1 operace pro mno\u017einu v\u00fdsledk\u016f jen pro p\u0159ed\u00e1n\u00ed + +ORA-17076=Neplatn\u00e1 operace pro mno\u017einu v\u00fdsledk\u016f jen pro \u010dten\u00ed + +ORA-17077=Selhalo nastaven\u00ed hodnoty REF + +ORA-17078=Nelze prov\u00e9st operaci, proto\u017ee p\u0159ipojen\u00ed je ji\u017e otev\u0159eno + +ORA-17079=Ov\u011b\u0159ovac\u00ed \u00fadaje u\u017eivatele neodpov\u00edd\u00e1 st\u00e1vaj\u00edc\u00edm \u00fadaj\u016fm + +ORA-17080=neplatn\u00fd p\u0159\u00edkaz d\u00e1vky + +ORA-17081=p\u0159i vytv\u00e1\u0159en\u00ed d\u00e1vky se vyskytla chyba + +ORA-17082=Nen\u00ed aktu\u00e1ln\u00ed \u0159\u00e1dek + +ORA-17083=Nen\u00ed na vlo\u017een\u00e9m \u0159\u00e1dku + +ORA-17084=Vol\u00e1no na vlo\u017een\u00e9m \u0159\u00e1dku + +ORA-17085=Doch\u00e1z\u00ed ke konflikt\u016fm hodnot + +ORA-17086=Ve vlo\u017een\u00e9m \u0159\u00e1dku je nedefinovan\u00e1 hodnota sloupce + +ORA-17087=Ignorovan\u00e9 upozorn\u011bn\u00ed na v\u00fdkon: setFetchDirection() + +ORA-17088=Nepodporovan\u00e1 syntaxe pro po\u017eadovan\u00fd typ mno\u017einy v\u00fdsledk\u016f a \u00farove\u0148 soub\u011b\u017en\u00e9ho zpracov\u00e1n\u00ed +ORA-17089=vnit\u0159n\u00ed chyba + +ORA-17090=operace nen\u00ed povolena + +ORA-17091=Nelze vytvo\u0159it mno\u017einu v\u00fdsledk\u016f po\u017eadovan\u00e9ho typu nebo na soub\u011b\u017en\u00e9 \u00farovni + +ORA-17092=Na konci zpracov\u00e1n\u00ed vol\u00e1n\u00ed nelze vytvo\u0159it ani prov\u00e9st p\u0159\u00edkazy JDBC + +ORA-17093=Operace OCI vr\u00e1tila OCI_SUCCESS_WITH_INFO + +ORA-17094=Nen\u00ed shoda verze typu objektu + +ORA-17095=Velikost vyrovn\u00e1vac\u00ed pam\u011bti p\u0159\u00edkazu nebyla nastavena + +ORA-17096=Ukl\u00e1d\u00e1n\u00ed p\u0159\u00edkaz\u016f do vyrovn\u00e1vac\u00ed pam\u011bti nelze pro toto logick\u00e9 p\u0159ipojen\u00ed aktivovat + +ORA-17097=Neplatn\u00fd typ prvku tabulky indexu PL/SQL + +ORA-17098=Neplatn\u00e1 pr\u00e1zdn\u00e1 operace lob + +ORA-17099=Neplatn\u00e1 d\u00e9lka pole indexov\u00e9 tabulky PL/SQL + +ORA-17100=Neplatn\u00e1 datab\u00e1ze Java Object + +ORA-17101=Neplatn\u00e9 vlastnosti v OCI Connection Pool Object + +ORA-17102=Bfile je jen ke \u010dten\u00ed + +ORA-17103=getConnection vr\u00e1til neplatn\u00fd typ spojen\u00ed. M\u00edsto toho pou\u017eijte getJavaSqlConnection + +ORA-17104=P\u0159\u00edkaz SQL, kter\u00fd se m\u00e1 prov\u00e9st, nesm\u00ed b\u00fdt pr\u00e1zdn\u00fd nebo nab\u00fdvat hondoty null + +ORA-17105=nebyla nastavena \u010dasov\u00e1 z\u00f3na pro relaci p\u0159ipojen\u00ed + +ORA-17106=byla specifikov\u00e1na neplatn\u00e1 konfigurace fondu p\u0159ipojen\u00ed ovlada\u010de JDBC-OCI + +ORA-17107=byl specifikov\u00e1n neplatn\u00fd typ proxy + +ORA-17108=Nebyla specifikov\u00e1na maxim\u00e1ln\u00ed d\u00e9lka v defineColumnType + +ORA-17109=nebylo nalezeno standardn\u00ed k\u00f3dov\u00e1n\u00ed znak\u016f Java + +ORA-17110=prov\u00e1d\u011bn\u00ed k\u00f3du bylo dokon\u010deno s varov\u00e1n\u00edm + +ORA-17111=Byl specifikov\u00e1n neplatn\u00fd \u010dasov\u00fd limit TTL pam\u011bti cache pro p\u0159ipojen\u00ed + +ORA-17112=Byl specifikov\u00e1n neplatn\u00fd interval vl\u00e1kna + +ORA-17113=Hodnota intervalu vl\u00e1kna je v\u011bt\u0161\u00ed ne\u017e hodnota \u010dasov\u00e9ho limitu pam\u011bti cache + +ORA-17114=nebylo mo\u017en\u00e9 pou\u017e\u00edt potvrzen\u00ed lok\u00e1ln\u00ed transakce v glob\u00e1ln\u00ed transakci + +ORA-17115=nebylo mo\u017en\u00e9 pou\u017e\u00edt n\u00e1vrat lok\u00e1ln\u00ed transakce v glob\u00e1ln\u00ed transakci + +ORA-17116=nebylo mo\u017en\u00e9 zapnout automatick\u00e9 potvrzen\u00ed v aktivn\u00ed glob\u00e1ln\u00ed transakci + +ORA-17117=nebylo mo\u017en\u00e9 nastavit bod ulo\u017een\u00ed v aktivn\u00ed glob\u00e1ln\u00ed transakci + +ORA-17118=nebylo mo\u017en\u00e9 z\u00edskat ID pro pojmenovan\u00fd bod ulo\u017een\u00ed + +ORA-17119=nebylo mo\u017en\u00e9 z\u00edskat ID pro nepojmenovan\u00fd bod ulo\u017een\u00ed + +ORA-17120=nebylo mo\u017en\u00e9 nastavit bod ulo\u017een\u00ed se zapnut\u00fdm automatick\u00fdm potvrzen\u00edm + +ORA-17121=nebylo mo\u017en\u00e9 prov\u00e9st n\u00e1vrat do bodu ulo\u017een\u00ed se zapnut\u00fdm automatick\u00fdm potvrzen\u00edm + +ORA-17122=nebylo mo\u017en\u00e9 prov\u00e9st n\u00e1vrat do lok\u00e1ln\u00edho bodu ulo\u017een\u00ed txn v glob\u00e1ln\u00ed transakci + +ORA-17123=Byla specifikov\u00e1na neplatn\u00e1 velikost pam\u011bti cache p\u0159\u00edkazu + +ORA-17124=Byl specifikov\u00e1n neplatn\u00fd \u010dasov\u00fd limit ne\u010dinnosti pam\u011bti cache pro p\u0159ipojen\u00ed + +ORA-17200=Nelze spr\u00e1vn\u011b konvertovat otev\u0159en\u00fd \u0159et\u011bzec XA z Java do C + +ORA-17201=Nelze spr\u00e1vn\u011b konvertovat zav\u0159en\u00fd \u0159et\u011bzec XA z Java do C + +ORA-17202=Nelze spr\u00e1vn\u011b konvertovat n\u00e1zev RM z Java do C + +ORA-17203=Nebylo mo\u017en\u00e9 zm\u011bnit typ ukazatele na jlong + +ORA-17204=Vstupn\u00ed pole je p\u0159\u00edli\u0161 kr\u00e1tk\u00e9, aby se do n\u011bj ve\u0161ly deskriptory OCI + +ORA-17205=Selhalo z\u00edsk\u00e1n\u00ed deskriptoru OCISvcCtx z C-XA pomoc\u00ed xaoSvcCtx + +ORA-17206=Selhalo z\u00edsk\u00e1n\u00ed deskriptoru OCIEnv z C-XA pomoc\u00ed xaoEnv + +ORA-17207=Vlastnost tnsEntry nebyla v DataSource nastavena + +ORA-17213=C-XA vr\u00e1til XAER_RMERR b\u011bhem xa_open + +ORA-17215=C-XA vr\u00e1til XAER_INVAL b\u011bhem xa_open + +ORA-17216=C-XA vr\u00e1til XAER_PROTO b\u011bhem xa_open + +ORA-17233=C-XA vr\u00e1til XAER_RMERR b\u011bhem xa_close + +ORA-17235=C-XA vr\u00e1til XAER_INVAL b\u011bhem xa_close + +ORA-17236=C-XA vr\u00e1til XAER_PROTO b\u011bhem xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Poru\u0161en\u00ed protokolu + +ORA-17402=O\u010dek\u00e1v\u00e1 se pouze jedna zpr\u00e1va RPA + +ORA-17403=O\u010dek\u00e1v\u00e1 se pouze jedna zpr\u00e1va RXH + +ORA-17404=P\u0159ijato v\u00edce RXD ne\u017e bylo o\u010dek\u00e1v\u00e1no + +ORA-17405=D\u00e9lka UAC nen\u00ed nulov\u00e1 + +ORA-17406=P\u0159ekro\u010dena maxim\u00e1ln\u00ed d\u00e9lka vyrovn\u00e1vac\u00ed pam\u011bti + +ORA-17407=Neplatn\u00e1 reprezentace typu(setRep) + +ORA-17408=Neplatn\u00e1 reprezentace typu(getRep) + +ORA-17409=neplatn\u00e1 d\u00e9lka vyrovn\u00e1vac\u00ed pam\u011bti + +ORA-17410=\u017d\u00e1dn\u00e1 dal\u0161\u00ed data ke \u010dten\u00ed ze soketu + +ORA-17411=Neshoda reprezentace typu dat + +ORA-17412=D\u00e9lka typu v\u011bt\u0161\u00ed ne\u017e maximum + +ORA-17413=P\u0159ekro\u010den\u00ed velikosti kl\u00ed\u010de + +ORA-17414=Nedostate\u010dn\u00e1 velikost vyrovn\u00e1vac\u00ed pam\u011bti pro ulo\u017een\u00ed n\u00e1zv\u016f sloupc\u016f + +ORA-17415=Tento typ nebyl zpracov\u00e1v\u00e1n + +ORA-17416=FATAL + +ORA-17417=Probl\u00e9m NLS, selh\u00e1n\u00ed p\u0159i dek\u00f3dov\u00e1n\u00ed n\u00e1zv\u016f sloupc\u016f + +ORA-17418=Chyba v d\u00e9lce pole intern\u00ed struktury + +ORA-17419=Vr\u00e1cen neplatn\u00fd po\u010det sloupc\u016f + +ORA-17420=Verze Oracle nen\u00ed definov\u00e1na + +ORA-17421=Nejsou definov\u00e1ny typy nebo p\u0159ipojen\u00ed + +ORA-17422=Neplatn\u00e1 t\u0159\u00edda v producentovi + +ORA-17423=Pou\u017eit\u00ed bloku PLSQL bez definov\u00e1n\u00ed IOV + +ORA-17424=Pokus o r\u016fzn\u00e9 marshaling operace (konverze na line\u00e1rn\u00ed tok dat) + +ORA-17425=Vr\u00e1cen\u00ed proudu dat v bloku PLSQL + +ORA-17426=P\u0159i\u0159azen\u00ed IN i OUT je PR\u00c1ZDN\u00c9 + +ORA-17427=Pou\u017eit\u00ed neinicializovan\u00e9ho OAC + +ORA-17428=po p\u0159ipojen\u00ed je t\u0159eba vyvolat vytvo\u0159en\u00ed spojen\u00ed + +ORA-17429=Mus\u00ed b\u00fdt alespo\u0148 p\u0159ipojen k serveru + +ORA-17430=Mus\u00ed b\u00fdt p\u0159ihl\u00e1\u0161en k serveru + +ORA-17431=P\u0159\u00edkaz SQL pro odd\u011blen\u00ed je pr\u00e1zdn\u00fd + +ORA-17432=neplatn\u00e9 volby v all7 + +ORA-17433=vol\u00e1n\u00ed neplatn\u00fdch argument\u016f + +ORA-17434=nen\u00ed v proudov\u00e9m re\u017eimu + +ORA-17435=neplatn\u00fd po\u010det in_out_binds v IOV + +ORA-17436=neplatn\u00fd po\u010det outbinds + +ORA-17437=Chyba v argumentu(-ech) IN/OUT v bloku PLSQL + +ORA-17438=Intern\u00ed - neo\u010dek\u00e1van\u00e1 hodnota + +ORA-17439=Neplatn\u00fd typ SQL + +ORA-17440=DBItem/DBType je pr\u00e1zdn\u00fd + +ORA-17441=Nepodporovan\u00e1 verze Oracle. Minim\u00e1ln\u00ed podporovan\u00e1 verze je 7.2.3. + +ORA-17442=Hodnota odkazov\u00e9ho kurzoru je neplatn\u00e1 + +ORA-17443=Pr\u00e1zdn\u00fd u\u017eivatel nebo heslo nen\u00ed podporov\u00e1no v ovl\u00e1da\u010di THIN + +ORA-17444=Nepodporovan\u00e1 verze protokolu TTC p\u0159ijat\u00e1 ze serveru + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_da.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_da.properties new file mode 100644 index 0000000..0ce6085 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_da.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Intern fejl + +ORA-17002=Io-undtagelse + +ORA-17003=Ugyldigt kolonneindeks + +ORA-17004=Ugyldig kolonnetype + +ORA-17005=Ikke-underst\u00f8ttet kolonnetype + +ORA-17006=Ugyldigt kolonnenavn + +ORA-17007=Ugyldig dynamisk kolonne + +ORA-17008=Lukket forbindelse + +ORA-17009=Lukket s\u00e6tning + +ORA-17010=Lukket resultats\u00e6t + +ORA-17011=Opbrugt resultats\u00e6t + +ORA-17012=Parametertypekonflikt + +ORA-17014=ResultSet.next blev ikke kaldt + +ORA-17015=S\u00e6tning blev annulleret + +ORA-17016=Timeout opstod for s\u00e6tning + +ORA-17017=Mark\u00f8r er allerede initialiseret + +ORA-17018=Ugyldig mark\u00f8r + +ORA-17019=Kan kun beskrive en foresp\u00f8rgsel + +ORA-17020=Ugyldig r\u00e6kke-prefetch + +ORA-17021=Mangler definitioner + +ORA-17022=Mangler definitioner ved indeks + +ORA-17023=Ikke-underst\u00f8ttet facilitet + +ORA-17024=Ingen data er l\u00e6st + +ORA-17025=Fejl i defines.isNull () + +ORA-17026=Numerisk overl\u00f8b + +ORA-17027=Stream er allerede lukket + +ORA-17028=Kan ikke oprette nye definitioner, f\u00f8r det aktuelle ResultSet er lukket + +ORA-17029=setReadOnly: Skrivebeskyttede forbindelser underst\u00f8ttes ikke + +ORA-17030=READ_COMMITTED og SERIALIZABLE er de eneste gyldige transaktionsniveauer + +ORA-17031=setAutoClose: Underst\u00f8t kun auto close on + +ORA-17032=r\u00e6kke-prefetch kan ikke s\u00e6ttes til nul + +ORA-17033=Ugyldig SQL92-streng p\u00e5 position + +ORA-17034=Ikke-underst\u00f8ttet SQL92-token p\u00e5 position + +ORA-17035=Tegns\u00e6t underst\u00f8ttes ikke !! + +ORA-17036=undtagelse i OracleNumber + +ORA-17037=Konvertering mellem UTF8 og UCS2 fejlede + +ORA-17038=Byte-array ikke lang nok + +ORA-17039=Tegn-array ikke lang nok + +ORA-17040=Underprotokol skal v\u00e6re angivet i forbindelses-URL + +ORA-17041=Manglende IN- eller OUT-parameter ved indeks: + +ORA-17042=Ugyldig batch-v\u00e6rdi + +ORA-17043=Ugyldig maksimal stream-st\u00f8rrelse + +ORA-17044=Intern fejl: Data-array ikke allokeret + +ORA-17045=Intern fejl: Fors\u00f8g p\u00e5 at f\u00e5 adgang til tilknytningsv\u00e6rdier, der ligger ud over batch-v\u00e6rdien + +ORA-17046=Intern fejl: Ugyldigt indeks for dataadgang + +ORA-17047=Fejl i analyse af type-descriptor + +ORA-17048=Ikke-defineret type + +ORA-17049=Inkonsistente java- og sql-objekttyper + +ORA-17050=dette element findes ikke i vektor + +ORA-17051=Dette API kan ikke bruges til ikke-UDT-typer + +ORA-17052=Denne reference er ugyldig + +ORA-17053=St\u00f8rrelsen er ugyldig + +ORA-17054=LOB-locator er ugyldig + +ORA-17055=Ugyldigt tegn m\u00f8dt i + +ORA-17056=Ikke-underst\u00f8ttet tegns\u00e6t + +ORA-17057=Lukket LOB + +ORA-17058=Intern fejl: Ugyldigt NLS-konverteringsforhold + +ORA-17059=Konvertering til intern repr\u00e6sentation fejlede + +ORA-17060=Konstruktion af descriptor fejlede + +ORA-17061=Manglende descriptor + +ORA-17062=Referencemark\u00f8ren er ugyldig + +ORA-17063=Ikke i en transaktion + +ORA-17064=Syntaks er ugyldig, eller databasenavn er NULL + +ORA-17065=Konverteringsklasse er NULL + +ORA-17066=Specifik implementering af adgangs-layer er p\u00e5kr\u00e6vet + +ORA-17067=Ugyldig Oracle URL er angivet + +ORA-17068=Ugyldigt argument eller ugyldige argumenter i kald + +ORA-17069=Brug eksplicit XA-kald + +ORA-17070=Datast\u00f8rrelsen overskrider maksimumst\u00f8rrelsen for denne type + +ORA-17071=Overskredet maks. VARRAY-gr\u00e6nse + +ORA-17072=Indsat v\u00e6rdi for stor til kolonne + +ORA-17073=Logisk handle ikke l\u00e6ngere gyldigt + +ORA-17074=ugyldigt navnem\u00f8nster + +ORA-17075=Ugyldig operation p\u00e5 forward only-resultats\u00e6t + +ORA-17076=Ugyldig operation p\u00e5 skrivebeskyttet resultats\u00e6t + +ORA-17077=Kunne ikke s\u00e6tte REF-v\u00e6rdi + +ORA-17078=Kan ikke udf\u00f8re operationen, da forbindelser allerede er \u00e5bnet + +ORA-17079=ID-oplysninger for bruger matcher ikke til de eksisterende oplysninger + +ORA-17080=ugyldig batch-kommando + +ORA-17081=fejl opstod under batching + +ORA-17082=Ingen aktuel r\u00e6kke + +ORA-17083=Ikke p\u00e5 den indsatte r\u00e6kke + +ORA-17084=Kaldt p\u00e5 den indsatte r\u00e6kke + +ORA-17085=V\u00e6rdikonflikter opst\u00e5r + +ORA-17086=Ikke-defineret kolonnev\u00e6rdi p\u00e5 den indsatte r\u00e6kke + +ORA-17087=Ignorerede hj\u00e6lpelinje til ydeevne: setFetchDirection() + +ORA-17088=Ikke-underst\u00f8ttet syntaks for anmodet resultats\u00e6ttype og niveau for samtidighed +ORA-17089=intern fejl + +ORA-17090=operation ikke tilladt + +ORA-17091=Kan ikke oprette resultats\u00e6t p\u00e5 det anmodede niveau for type og/eller samtidighed + +ORA-17092=JDBC-s\u00e6tninger kan ikke oprettes eller udf\u00f8res i slutning af behandling af kald + +ORA-17093=OCI-operation returnerede OCI_SUCCESS_WITH_INFO + +ORA-17094=Objekttypeversion matcher ikke + +ORA-17095=S\u00e6tningscachest\u00f8rrelse er ikke blevet sat + +ORA-17096=Cache af s\u00e6tninger kan ikke aktiveres for denne logiske forbindelse. + +ORA-17097=Ugyldig elementtype for PL/SQL-indekstabel + +ORA-17098=Ugyldig tom lob-operation + +ORA-17099=Ugyldig array-l\u00e6ngde for PL/SQL-indekstabel + +ORA-17100=Ugyldigt database-Java-objekt + +ORA-17101=Ugyldige egenskaber i OCI-forbindelses-pool-objekt + +ORA-17102=BFILE er skrivebeskyttet + +ORA-17103=ugyldig forbindelsestype, der skal returneres via getConnection. Brug getJavaSqlConnection i stedet for + +ORA-17104=SQL-s\u00e6tning, der skal udf\u00f8res, kan ikke v\u00e6re tom eller NULL + +ORA-17105=tidszone for forbindelsessession blev ikke sat + +ORA-17106=ugyldig forbindelsespuljekonfiguration angivet for JDBC-OCI-driver + +ORA-17107=ugyldig proxy-type angivet + +ORA-17108=Ingen maks. l\u00e6ngde angivet i defineColumnType + +ORA-17109=standard-Java-tegnkodning ikke fundet + +ORA-17110=udf\u00f8rt med advarsel + +ORA-17111=Ugyldigt timeout for forbindelsescache-TTL angivet + +ORA-17112=Ugyldigt tr\u00e5dinterval angivet + +ORA-17113=V\u00e6rdi for tr\u00e5dinterval er st\u00f8rre end v\u00e6rdi for cache-timeout + +ORA-17114=kunne ikke bruge lokal transaktionsbekr\u00e6ftelse i en global transaktion + +ORA-17115=kunne ikke bruge lokal transaktionstilbagestilling i en global transaktion + +ORA-17116=kunne ikke aktivere automatisk bekr\u00e6ftelse i en aktiv global transaktion + +ORA-17117=kunne ikke s\u00e6tte sikringspunkt i en aktiv global transaktion + +ORA-17118=kunne ikke opn\u00e5 ID for et navngivet sikringspunkt + +ORA-17119=kunne ikke opn\u00e5 navn for et unavngivet sikringspunkt + +ORA-17120=kunne ikke s\u00e6tte et sikringspunkt med autmatisk bekr\u00e6ftelse aktiveret + +ORA-17121=kunne ikke tilbagestille til et sikringspunkt med autmatisk bekr\u00e6ftelse aktiveret + +ORA-17122=kunne ikke tilbagestille til et lokalt txn-sikringspunkt i en global transaktion + +ORA-17123=Ugyldig s\u00e6tningscachest\u00f8rrelse angivet + +ORA-17124=Ugyldigt timeout for inaktivitet i forbindelsecache angivet + +ORA-17200=Kan ikke konvertere XA-\u00e5bningsstreng fra Java til C korrekt + +ORA-17201=Kan ikke konvertere XA-lukningsstreng fra Java til C korrekt + +ORA-17202=Kan ikke konvertere RM-navn fra Java til C korrekt + +ORA-17203=Kunne ikke udf\u00f8re casting af mark\u00f8rtype til jlong + +ORA-17204=Input-array for kort til at indeholde OCI-handles + +ORA-17205=Hentning af OCISvcCtx-handle fra C-XA ved hj\u00e6lp af xaoSvcCtx fejlede + +ORA-17206=Hentning af OCIEnv-handle fra C-XA ved hj\u00e6lp af xaoEnv fejlede + +ORA-17207=tnsEntry-egenskaben blev ikke sat i DataSource + +ORA-17213=C-XA returnerede XAER_RMERR under xa_open + +ORA-17215=C-XA returnerede XAER_INVAL under xa_open + +ORA-17216=C-XA returnerede XAER_PROTO under xa_open + +ORA-17233=C-XA returnerede XAER_RMERR under xa_close + +ORA-17235=C-XA returnerede XAER_INVAL under xa_close + +ORA-17236=C-XA returnerede XAER_PROTO under xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokolovertr\u00e6delse + +ORA-17402=Kun \u00e9n RPA-meddelelse forventes + +ORA-17403=Kun \u00e9n RXH-meddelelse forventes + +ORA-17404=Modtaget flere RXD\'er end forventet + +ORA-17405=UAC-l\u00e6ngde er ikke nul + +ORA-17406=Overskrider maksimale bufferl\u00e6ngde + +ORA-17407=ugyldig typerepr\u00e6sentation (setRep) + +ORA-17408=ugyldig typerepr\u00e6sentation (getRep) + +ORA-17409=ugyldig bufferl\u00e6ngde + +ORA-17410=Ikke flere data, der skal l\u00e6ses fra socket + +ORA-17411=Datatyperepr\u00e6sentationer matcher ikke + +ORA-17412=Typel\u00e6ngde st\u00f8rre end maksimum + +ORA-17413=Overskrider n\u00f8glest\u00f8rrelse + +ORA-17414=Utilstr\u00e6kkelig bufferst\u00f8rrelse til lagring af kolonnenavne + +ORA-17415=Denne type er ikke h\u00e5ndteret + +ORA-17416=FATAL + +ORA-17417=NLS-problem, afkodning af kolonnenavne fejlede + +ORA-17418=Fejl i feltl\u00e6ngden i intern struktur + +ORA-17419=Et ugyldigt antal kolonner returneret + +ORA-17420=Oracle-versionen ikke defineret + +ORA-17421=Typer eller forbindelse ikke defineret + +ORA-17422=Ugyldig klasse i factory + +ORA-17423=Bruger en PLSQL-blok, uden at en IOV er defineret + +ORA-17424=Fors\u00f8ger forskellige marshalling-operationer + +ORA-17425=Returnerer en stream i PLSQL-blok + +ORA-17426=B\u00e5de IN- og OUT-tilknytninger er NULL + +ORA-17427=Bruger ikke-initialiseret OAC + +ORA-17428=Logon skal kaldes, n\u00e5r forbindelse er oprettet + +ORA-17429=Skal mindst have forbindelse til server + +ORA-17430=Skal v\u00e6re logget p\u00e5 server + +ORA-17431=SQL-s\u00e6tning, der skal analyseres, er NULL + +ORA-17432=Ugyldige valg i all7 + +ORA-17433=ugyldige argumenter i kald + +ORA-17434=ikke i streaming-tilstand + +ORA-17435=ugyldigt antal in_out_binds i IOV + +ORA-17436=ugyldigt antal outbinds + +ORA-17437=Fejl i IN/OUT-argument(er) i PLSQL-blok? + +ORA-17438=Intern - Uventet v\u00e6rdi + +ORA-17439=Ugyldig SQL-type + +ORA-17440=DBItem/DBType er NULL + +ORA-17441=Ikke-underst\u00f8ttet Oracle-version. Den tidligste version, der underst\u00f8ttes, er 7.2.3. + +ORA-17442=V\u00e6rdien for Refcursor er ugyldig + +ORA-17443=NULL-bruger eller -adgangskode underst\u00f8ttes ikke i THIN-driver + +ORA-17444=TTC-protokolversion modtaget fra server underst\u00f8ttes ikke + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_de.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_de.properties new file mode 100644 index 0000000..7c2d2f3 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_de.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Interner Fehler + +ORA-17002=E/A-Exception + +ORA-17003=Ung\u00fcltiger Spaltenindex + +ORA-17004=Ung\u00fcltiger Spaltentyp + +ORA-17005=Nicht unterst\u00fctzter Spaltentyp + +ORA-17006=Ung\u00fcltiger Spaltenname + +ORA-17007=Ung\u00fcltige dynamische Spalte + +ORA-17008=Getrennte Verbindung + +ORA-17009=Geschlossene Anweisung + +ORA-17010=Geschlossene Ergebnismenge + +ORA-17011=Ersch\u00f6pfte Ergebnismenge + +ORA-17012=Konflikt bei Parametertyp + +ORA-17014=ResultSet.next wurde nicht aufgerufen + +ORA-17015=Anweisung wurde abgebrochen + +ORA-17016=Zeit\u00fcberschreitung bei Anweisung + +ORA-17017=Cursor schon initialisiert + +ORA-17018=Ung\u00fcltiger Cursor + +ORA-17019=Nur eine Abfrage kann beschrieben werden + +ORA-17020=Ung\u00fcltiger Abruf von Zeilen im voraus + +ORA-17021=Fehlende Defines + +ORA-17022=Fehlende Defines auf Index + +ORA-17023=Nicht unterst\u00fctzte Funktion + +ORA-17024=Keine Daten gelesen + +ORA-17025=Fehler in defines.isNull () + +ORA-17026=Numerischer \u00dcberlauf + +ORA-17027=Stream wurde schon geschlossen + +ORA-17028=Neue Defines sind erst m\u00f6glich, wenn aktuelle ResultSet geschlossen ist + +ORA-17029=setReadOnly: Schreibgesch\u00fctzte Verbindungen nicht unterst\u00fctzt + +ORA-17030=READ_COMMITTED und SERIALIZABLE sind die einzig g\u00fcltigen Transaktionsebenen + +ORA-17031=setAutoClose: Unterst\u00fctzt nur Auto-Close-Modus Ein + +ORA-17032=Abruf von Zeilen im voraus kann nicht auf Null festgelegt werden + +ORA-17033=SQL92-Zeichenfolge in falschem Format in Position + +ORA-17034=Nicht unterst\u00fctztes SQL92-Token in Position + +ORA-17035=Zeichensatz nicht unterst\u00fctzt !! + +ORA-17036=Exception in OracleNumber + +ORA-17037=Konvertierung zwischen UTF8 und UCS2 nicht erfolgreich + +ORA-17038=Byte-Array nicht lang genug + +ORA-17039=Char-Array nicht lang genug + +ORA-17040=Unterprotokoll mu\u00df in Verbindungs-URL angegeben werden + +ORA-17041=Fehlender IN- oder OUT-Parameter auf Index: + +ORA-17042=Ung\u00fcltiger Stapelwert + +ORA-17043=Ung\u00fcltige maximale Stream-Gr\u00f6\u00dfe + +ORA-17044=Interner Fehler: Daten-Array nicht zugewiesen + +ORA-17045=Interner Fehler: Versuch, auf Bindewerte \u00fcber den Stapelwert hinaus zuzugreifen + +ORA-17046=Interner Fehler: Ung\u00fcltiger Index f\u00fcr Datenzugriff + +ORA-17047=Fehler bei Analyse von Typ-Deskriptor + +ORA-17048=Undefinierter Typ + +ORA-17049=Inkonsistente Java- und SQL-Objekttypen + +ORA-17050=Kein derartiges Element in Vektor + +ORA-17051=Diese API kann nicht f\u00fcr Nicht-UDT-Typen benutzt werden + +ORA-17052=Diese Ref ist nicht g\u00fcltig + +ORA-17053=Die Gr\u00f6\u00dfe ist nicht g\u00fcltig + +ORA-17054=Der LOB-Positionsanzeiger ist nicht g\u00fcltig + +ORA-17055=Ung\u00fcltiges Zeichen aufgetreten in + +ORA-17056=Nicht unterst\u00fctzter Zeichensatz + +ORA-17057=Geschlossenes LOB + +ORA-17058=Interner Fehler: Ung\u00fcltige NLS-Konvertierungsrate + +ORA-17059=Konvertierung zu interner Darstellung nicht erfolgreich + +ORA-17060=Deskriptor konnte nicht erstellt werden + +ORA-17061=Fehlender Deskriptor + +ORA-17062=Ref-Cursor ist ung\u00fcltig + +ORA-17063=Nicht in einer Transaktion + +ORA-17064=Ung\u00fcltige Syntax oder Datenbankname ist null + +ORA-17065=Konvertierungsklasse ist null + +ORA-17066=Zugriffsebenen-spezifische Implementierung erforderlich + +ORA-17067=Ung\u00fcltiger Oracle-URL angegeben + +ORA-17068=Ung\u00fcltige Argumente in Aufruf + +ORA-17069=Expliziten XA-Aufruf verwenden + +ORA-17070=Datengr\u00f6\u00dfe gr\u00f6\u00dfer als max. Gr\u00f6\u00dfe f\u00fcr diesen Typ + +ORA-17071=Maximaler VARRAY-Grenzwert \u00fcberschritten + +ORA-17072=Zu gro\u00dfer Wert f\u00fcr Spalte eingef\u00fcgt + +ORA-17073=Logisches Handle nicht mehr g\u00fcltig + +ORA-17074=Ung\u00fcltiges Namensmuster + +ORA-17075=Ung\u00fcltiger Vorgang bei Nur-Weiterleiten-Ergebnismenge + +ORA-17076=Ung\u00fcltiger Vorgang bei schreibgesch\u00fctzter Ergebnismenge + +ORA-17077=REF-Wert konnte nicht festgelegt werden + +ORA-17078=Vorgang kann nicht durchgef\u00fchrt werden, da schon Verbindungen ge\u00f6ffnet sind + +ORA-17079=Benutzer-ID-Daten stimmen nicht mit bestehenden ID-Daten \u00fcberein + +ORA-17080=Ung\u00fcltiger Stapelbefehl + +ORA-17081=Fehler bei Stapelverarbeitung aufgetreten + +ORA-17082=Keine aktuelle Zeile + +ORA-17083=Nicht auf der Einf\u00fcgenzeile + +ORA-17084=Auf der Einf\u00fcgenzeile aufgerufen + +ORA-17085=Wertkonflikte treten auf + +ORA-17086=Undefinierter Spaltenwert auf Einf\u00fcgenzeile + +ORA-17087=Leistungshinweis ignoriert: setFetchDirection() + +ORA-17088=Nicht unterst\u00fctzte Syntax f\u00fcr angeforderten Ergebnismengentyp und Ebene des gleichzeitigen Zugriffs +ORA-17089=Interner Fehler + +ORA-17090=Vorgang nicht zul\u00e4ssig + +ORA-17091=Ergebnismenge mit angefordertem Typ und/oder angeforderter Ebene des gleichzeitigen Zugriffs kann nicht erstellt werden + +ORA-17092=JDBC-Anweisungen k\u00f6nnen nicht erstellt oder am Ende der Aufrufverarbeitung ausgef\u00fchrt werden. + +ORA-17093=OCI-Vorgang hat OCI_SUCCESS_WITH_INFO zur\u00fcckgegeben + +ORA-17094=Nicht \u00fcbereinstimmende Objekttyp-Version + +ORA-17095=Gr\u00f6\u00dfe von Anweisungs-Cache wurde nicht festgelegt + +ORA-17096=Anweisungs-Caching kann f\u00fcr diese logische Verbindung nicht aktiviert werden. + +ORA-17097=Ung\u00fcltiger PL/SQL-Indextabellen-Elementtyp + +ORA-17098=Ung\u00fcltiger leerer LOB-Vorgang + +ORA-17099=Ung\u00fcltige Array-L\u00e4nge bei PL/SQL-Indextabelle + +ORA-17100=Ung\u00fcltiges Java-Datenbankobjekt + +ORA-17101=Ung\u00fcltige Attribute in Objekt von OCI-Verbindungs-Pool + +ORA-17102=Bfile ist schreibgesch\u00fctzt + +ORA-17103=Ung\u00fcltige Verbindungsart zur R\u00fcckgabe \u00fcber getConnection. Verwenden Sie stattdessen getJavaSqlConnection + +ORA-17104=SQL-Anweisung zur Ausf\u00fchrung darf nicht leer oder null sein + +ORA-17105=Zeitzone f\u00fcr Verbindungs-Session nicht festgelegt + +ORA-17106=Ung\u00fcltige Konfiguration von Verbindungs-Pool von JDBC-OCI-Treiber angegeben + +ORA-17107=Ung\u00fcltiger Proxy-Typ angegeben + +ORA-17108=Keine max. L\u00e4nge in defineColumnType angegeben + +ORA-17109=Java-Standardzeichen-Codierung nicht gefunden + +ORA-17110=Ausf\u00fchrung mit Warnung abgeschlossen + +ORA-17111=Ung\u00fcltige TTL-Zeit\u00fcberschreitung bei Verbindungs-Cache angegeben + +ORA-17112=Ung\u00fcltiges Thread-Intervall angegeben + +ORA-17113=Wert von Thread-Intervall ist gr\u00f6\u00dfer als Cache-Zeit\u00fcberschreitungswert + +ORA-17114=Lokales Transaktions-Commit konnte in einer globalen Transaktion nicht benutzt werden + +ORA-17115=Lokales Transaktions-Rollback konnte in einer globalen Transaktion nicht benutzt werden + +ORA-17116=Auto-Commit konnte in einer aktiven globalen Transaktion nicht eingeschaltet werden + +ORA-17117=Savepoint konnte in einer aktiven globalen Transaktion nicht gesetzt werden + +ORA-17118=ID f\u00fcr einen benannten Savepoint + +ORA-17119=Name f\u00fcr einen unbenannten Savepoint konnte nicht abgerufen werden + +ORA-17120=Ein Savepoint konnte bei eingeschaltetem Auto-Commit nicht gesetzt werden. + +ORA-17121=Rollback zu einem Savepoint bei eingeschaltetem Auto-Commit nicht m\u00f6glich + +ORA-17122=Rollback zu einem lokalen Txn-Savepoint in einer globalen Transaktion nicht m\u00f6glich + +ORA-17123=Ung\u00fcltige Gr\u00f6\u00dfe von Anweisungs-Cache angegeben + +ORA-17124=Ung\u00fcltige Inaktivit\u00e4ts-Zeit\u00fcberschreitung f\u00fcr Verbindungs-Cache angegeben + +ORA-17200=Zeichenfolge f\u00fcr \u00d6ffnen von XA kann nicht richtig von Java in C konvertiert werden + +ORA-17201=Zeichenfolge f\u00fcr Schlie\u00dfen von XA kann nicht richtig von Java in C konvertiert werden + +ORA-17202=RM-Name kann nicht richtig von Java in C konvertiert werden + +ORA-17203=Summierungs-Pointer-Typ konnte nicht in jlong konvertiert werden + +ORA-17204=Eingabe-Array zu kurz zur Aufnahme von OCI-Handles + +ORA-17205=OCISvcCtx-Handle konnte nicht aus C-XA mit xaoSvcCtx abgerufen werden + +ORA-17206=OCIEnv-Handle konnte nicht aus C-XA mit xaoEnv abgerufen werden + +ORA-17207=Das Attribut tnsEntry wurde in DataSource nicht festgelegt + +ORA-17213=C-XA hat XAER_RMERR w\u00e4hrend xa_open zur\u00fcckgegeben + +ORA-17215=C-XA hat XAER_INVAL w\u00e4hrend xa_open zur\u00fcckgegeben + +ORA-17216=C-XA hat XAER_PROTO w\u00e4hrend xa_open zur\u00fcckgegeben + +ORA-17233=C-XA hat XAER_RMERR w\u00e4hrend xa_close zur\u00fcckgegeben + +ORA-17235=C-XA hat XAER_INVAL w\u00e4hrend xa_close zur\u00fcckgegeben + +ORA-17236=C-XA hat XAER_PROTO w\u00e4hrend xa_close zur\u00fcckgegeben + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokollverletzung + +ORA-17402=Nur eine RPA-Meldung wird erwartet + +ORA-17403=Nur eine RXH-Meldung wird erwartet + +ORA-17404=Mehr RXDs empfangen als erwartet + +ORA-17405=UAC-L\u00e4nge ist nicht null + +ORA-17406=Maximale Pufferl\u00e4nge wird \u00fcberschritten + +ORA-17407=Ung\u00fcltige Typdarstellung(setRep) + +ORA-17408=Ung\u00fcltige Typdarstellung(getRep) + +ORA-17409=Ung\u00fcltige Pufferl\u00e4nge + +ORA-17410=Keine weiteren Daten aus Socket zu lesen + +ORA-17411=Datentypdarstellungen stimmen nicht \u00fcberein + +ORA-17412=Typl\u00e4nge gr\u00f6\u00dfer als H\u00f6chstwert + +ORA-17413=Schl\u00fcsselgr\u00f6\u00dfe wird \u00fcberschritten + +ORA-17414=Nicht ausreichende Puffergr\u00f6\u00dfe zum Speichern von Spaltennamen + +ORA-17415=Dieser Typ wurde nicht verarbeitet + +ORA-17416=FATAL + +ORA-17417=NLS-Problem, Spaltennamen konnten nicht entschl\u00fcsselt werden + +ORA-17418=Fehler bei Feldl\u00e4nge von interner Struktur + +ORA-17419=Ung\u00fcltige Anzahl von Spalten zur\u00fcckgegeben + +ORA-17420=Oracle-Version nicht definiert + +ORA-17421=Typen oder Verbindung nicht definiert + +ORA-17422=Ung\u00fcltige Klasse in Factory + +ORA-17423=PLSQL-Block ohne Definition von IOV benutzt + +ORA-17424=Anderer Marshaling-Vorgang wird versucht + +ORA-17425=Stream wird in PLSQL-Block zur\u00fcckgegeben + +ORA-17426=Sowohl IN- als auch OUT-Bindevorg\u00e4nge sind NULL + +ORA-17427=Nicht initialisierter OAC benutzt + +ORA-17428=Anmeldung mu\u00df nach Verbindung aufgerufen werden + +ORA-17429=Mindestens Verbindung zum Server mu\u00df hergestellt sein + +ORA-17430=Anmeldung beim Server mu\u00df erfolgt sein + +ORA-17431=Zu analysierende SQL-Anweisung ist null + +ORA-17432=Ung\u00fcltige Optionen in all7 + +ORA-17433=Ung\u00fcltige Argumente in Aufruf + +ORA-17434=Nicht in Streaming-Modus + +ORA-17435=Ung\u00fcltige Anzahl von in_out_binds in IOV + +ORA-17436=Ung\u00fcltige Anzahl von Out-Bindevorg\u00e4ngen + +ORA-17437=Fehler in IN/OUT-Argument(en) von PLSQL-Block + +ORA-17438=Intern - Unerwarteter Wert + +ORA-17439=Ung\u00fcltiger SQL-Typ + +ORA-17440=DBItem/DBType ist null + +ORA-17441=Oracle-Version nicht unterst\u00fctzt. Minimale unterst\u00fctzte Version ist 7.2.3. + +ORA-17442=Wert von Ref-Cursor ist ung\u00fcltig + +ORA-17443=Keine Benutzer- oder Kennwortangabe in THIN-Treiber nicht unterst\u00fctzt + +ORA-17444=Vom Server empfangene TTC-Protokollversion nicht unterst\u00fctzt + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_el.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_el.properties new file mode 100644 index 0000000..8d9fe8a --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_el.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 + +ORA-17002=\u0395\u03be\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u0395\u0395 + +ORA-17003=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17004=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17005=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17006=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03cc\u03bd\u03bf\u03bc\u03b1 \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 + +ORA-17007=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b4\u03c5\u03bd\u03b1\u03bc\u03b9\u03ba\u03ae \u03c3\u03c4\u03ae\u03bb\u03b7 + +ORA-17008=\u0397 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17009=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17010=\u03a4\u03bf \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17011=\u03a4\u03bf \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03b5\u03be\u03b1\u03bd\u03c4\u03bb\u03ae\u03b8\u03b7\u03ba\u03b5 + +ORA-17012=\u0394\u03b9\u03ad\u03bd\u03b5\u03be\u03b7 \u03c4\u03cd\u03c0\u03c9\u03bd \u03c0\u03b1\u03c1\u03b1\u03bc\u03ad\u03c4\u03c1\u03c9\u03bd + +ORA-17014=\u0394\u03b5\u03bd \u03ad\u03b3\u03b9\u03bd\u03b5 \u03ba\u03bb\u03ae\u03c3\u03b7 \u03c3\u03c4\u03bf ResultSet.next + +ORA-17015=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 \u03b1\u03ba\u03c5\u03c1\u03ce\u03b8\u03b7\u03ba\u03b5 + +ORA-17016=\u03a5\u03c0\u03ad\u03c1\u03b2\u03b1\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c7\u03c1\u03bf\u03bd\u03b9\u03ba\u03bf\u03cd \u03bf\u03c1\u03af\u03bf\u03c5 \u03c4\u03b7\u03c2 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7\u03c2 + +ORA-17017=O Cursor \u03ad\u03c7\u03b5\u03b9 \u03b1\u03c1\u03c7\u03b9\u03ba\u03bf\u03c0\u03bf\u03b9\u03b7\u03b8\u03b5\u03af \u03ae\u03b4\u03b7 + +ORA-17018=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 cursor + +ORA-17019=\u0395\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03bc\u03cc\u03bd\u03bf \u03b7 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae \u03b5\u03bd\u03cc\u03c2 \u03b5\u03c1\u03c9\u03c4\u03ae\u03bc\u03b1\u03c4\u03bf\u03c2 + +ORA-17020=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03c0\u03c1\u03bf-\u03c0\u03c1\u03bf\u03c3\u03ba\u03cc\u03bc\u03b9\u03c3\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2 + +ORA-17021=\u039f\u03c1\u03b9\u03c3\u03bc\u03bf\u03af \u03c0\u03bf\u03c5 \u03bb\u03b5\u03af\u03c0\u03bf\u03c5\u03bd + +ORA-17022=\u039b\u03b5\u03af\u03c0\u03bf\u03c5\u03bd \u03bf\u03c1\u03b9\u03c3\u03bc\u03bf\u03af \u03b1\u03c0\u03cc \u03c4\u03bf \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf + +ORA-17023=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03b7 \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1 + +ORA-17024=\u0394\u03b5\u03bd \u03ad\u03b3\u03b9\u03bd\u03b5 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd + +ORA-17025=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03c4\u03bf defines.isNull () + +ORA-17026=\u0391\u03c1\u03b9\u03b8\u03bc\u03b7\u03c4\u03b9\u03ba\u03ae \u03c5\u03c0\u03b5\u03c1\u03c7\u03b5\u03af\u03bb\u03b9\u03c3\u03b7 + +ORA-17027=\u03a4\u03bf stream \u03ad\u03c7\u03b5\u03b9 \u03ba\u03bb\u03b5\u03af\u03c3\u03b5\u03b9 \u03ae\u03b4\u03b7 + +ORA-17028=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03bd\u03ad\u03c9\u03bd \u03bf\u03c1\u03b9\u03c3\u03bc\u03ce\u03bd \u03bc\u03ad\u03c7\u03c1\u03b9 \u03bd\u03b1 \u03ba\u03bb\u03b5\u03af\u03c3\u03b5\u03b9 \u03c4\u03bf \u03c4\u03c1\u03ad\u03c7\u03bf\u03bd \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd + +ORA-17029=\u039f\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03bc\u03cc\u03bd\u03bf \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7\u03c2: \u0394\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03bf\u03bd\u03c4\u03b1\u03b9 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03b9\u03c2 \u03bc\u03cc\u03bd\u03bf \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7\u03c2 + +ORA-17030=\u03a4\u03b1 \u03bc\u03cc\u03bd\u03b1 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ac \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03b1 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 READ_COMMITTED \u03ba\u03b1\u03b9 SERIALIZABLE + +ORA-17031=\u039f\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03c3\u03af\u03bc\u03b1\u03c4\u03bf\u03c2: \u03a5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03b7 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03c4\u03c1\u03cc\u03c0\u03bf\u03c5 \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03c3\u03af\u03bc\u03b1\u03c4\u03bf\u03c2 + +ORA-17032=\u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc \u03bd\u03b1 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03c1\u03bf-\u03c0\u03c1\u03bf\u03c3\u03ba\u03cc\u03bc\u03b9\u03c3\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2 \u03b7 \u03c4\u03b9\u03bc\u03ae \u03bc\u03b7\u03b4\u03ad\u03bd + +ORA-17033=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b1\u03bb\u03c6\u03b1\u03c1\u03b9\u03b8\u03bc\u03b7\u03c4\u03b9\u03ba\u03cc SQL92 \u03c3\u03c4\u03b7 \u03b8\u03ad\u03c3\u03b7 + +ORA-17034=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf \u03c3\u03cd\u03bc\u03b2\u03bf\u03bb\u03bf SQL92 \u03c3\u03c4\u03b7 \u03b8\u03ad\u03c3\u03b7 + +ORA-17035=\u0394\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03c4\u03bf \u03c3\u03b5\u03c4 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03c9\u03bd !! + +ORA-17036=\u03b5\u03be\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c3\u03c4\u03bf\u03bd \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc Oracle + +ORA-17037=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 \u03c4\u03bf\u03c5 UTF8 \u03c3\u03b5 UCS2 \u03ae \u03c4\u03bf\u03c5 UCS2 \u03c3\u03b5 UTF8 + +ORA-17038=\u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03c4\u03c9\u03bd Bytes \u03b4\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b1\u03c1\u03ba\u03b5\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 + +ORA-17039=\u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03c4\u03cd\u03c0\u03bf\u03c5 Char \u03b4\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b1\u03c1\u03ba\u03b5\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 + +ORA-17040=\u03a0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03c4\u03bf \u03b4\u03b5\u03c5\u03c4\u03b5\u03c1\u03b5\u03cd\u03bf\u03bd \u03c0\u03c1\u03c9\u03c4\u03cc\u03ba\u03bf\u03bb\u03bb\u03bf \u03c3\u03c4\u03b7 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 + +ORA-17041=\u039b\u03b5\u03af\u03c0\u03bf\u03c5\u03bd \u03bf\u03b9 \u03c0\u03b1\u03c1\u03ac\u03bc\u03b5\u03c4\u03c1\u03bf\u03b9 IN \u03ba\u03b1\u03b9 OUT \u03b1\u03c0\u03cc \u03c4\u03bf \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf: + +ORA-17042=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03c4\u03b9\u03bc\u03ae \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17043=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 stream + +ORA-17044=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b4\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b4\u03b5\u03c3\u03bc\u03b5\u03c5\u03c4\u03b5\u03af + +ORA-17045=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u03a0\u03c1\u03bf\u03c3\u03c0\u03ac\u03b8\u03b5\u03b9\u03b1 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 \u03c3\u03b5 \u03b4\u03b5\u03c3\u03bc\u03b5\u03c5\u03bc\u03ad\u03bd\u03b5\u03c2 \u03c4\u03b9\u03bc\u03ad\u03c2 \u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03b7\u03c2 \u03c4\u03b9\u03bc\u03ae\u03c2 \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17046=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b5\u03c5\u03c1\u03b5\u03c4\u03ae\u03c1\u03b9\u03bf \u03b3\u03b9\u03b1 \u03c0\u03c1\u03bf\u03c3\u03c0\u03ad\u03bb\u03b1\u03c3\u03b7 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd + +ORA-17047=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03c4\u03b7\u03bd \u03b1\u03bd\u03ac\u03bb\u03c5\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c5 + +ORA-17048=\u039c\u03b7 \u03bf\u03c1\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 + +ORA-17049=\u039c\u03b7 \u03c3\u03c5\u03bd\u03b5\u03c0\u03b5\u03af\u03c2 \u03c4\u03cd\u03c0\u03bf\u03b9 \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03c9\u03bd java \u03ba\u03b1\u03b9 sql + +ORA-17050=\u03b4\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03b5\u03b9 \u03c4\u03ad\u03c4\u03bf\u03b9\u03bf \u03c3\u03c4\u03bf\u03b9\u03c7\u03b5\u03af\u03bf \u03c3\u03c4\u03bf \u03b4\u03b9\u03ac\u03bd\u03c5\u03c3\u03bc\u03b1 + +ORA-17051=\u0391\u03c5\u03c4\u03cc \u03c4\u03bf API \u03b4\u03b5\u03bd \u03bc\u03c0\u03bf\u03c1\u03b5\u03af \u03bd\u03b1 \u03c7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03b7\u03b8\u03b5\u03af \u03b3\u03b9\u03b1 \u03c4\u03cd\u03c0\u03bf\u03c5\u03c2 \u03c0\u03bf\u03c5 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 UDT + +ORA-17052=\u0391\u03c5\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae + +ORA-17053=\u03a4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc + +ORA-17054=\u039f \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1\u03c2 \u03b5\u03bd\u03c4\u03bf\u03c0\u03b9\u03c3\u03bc\u03bf\u03cd LOB \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 + +ORA-17055=\u0392\u03c1\u03ad\u03b8\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03b1\u03c2 \u03c3\u03c4\u03bf + +ORA-17056=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf \u03c3\u03b5\u03c4 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03c9\u03bd + +ORA-17057=\u03a4\u03bf LOB \u03ad\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 + +ORA-17058=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1: \u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c3\u03c5\u03bd\u03c4\u03b5\u03bb\u03b5\u03c3\u03c4\u03ae\u03c2 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 NLS + +ORA-17059=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 \u03c3\u03c4\u03b7\u03bd \u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03ae \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 + +ORA-17060=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03ba\u03b1\u03c4\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae\u03c2 \u03c4\u03bf\u03c5 \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae\u03c2 + +ORA-17061=\u039b\u03b5\u03af\u03c0\u03b5\u03b9 \u03bf \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1\u03c2 \u03c0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae\u03c2 + +ORA-17062=\u039f cursor \u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 + +ORA-17063=\u0394\u03b5\u03bd \u03b1\u03bd\u03ae\u03ba\u03b5\u03b9 \u03c3\u03b5 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae + +ORA-17064=\u0395\u03af\u03c4\u03b5 \u03b7 \u03c3\u03cd\u03bd\u03c4\u03b1\u03be\u03b7 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b5\u03af\u03c4\u03b5 \u03c4\u03bf \u03cc\u03bd\u03bf\u03bc\u03b1 \u03c4\u03b7\u03c2 \u03b2\u03ac\u03c3\u03b7\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17065=\u0397 \u03ba\u03bb\u03ac\u03c3\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17066=\u03a7\u03c1\u03b5\u03b9\u03ac\u03b6\u03b5\u03c4\u03b1\u03b9 \u03b5\u03b9\u03b4\u03b9\u03ba\u03ae \u03c5\u03bb\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03bf \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03bf \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 + +ORA-17067=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1\u03c2 Oracle + +ORA-17068=\u03a5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03ad\u03bd\u03b1 \u03ae \u03c0\u03b5\u03c1\u03b9\u03c3\u03c3\u03cc\u03c4\u03b5\u03c1\u03b1 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ac \u03bf\u03c1\u03af\u03c3\u03bc\u03b1\u03c4\u03b1 \u03c3\u03c4\u03b7\u03bd \u03ba\u03bb\u03ae\u03c3\u03b7 + +ORA-17069=\u03a7\u03c1\u03ae\u03c3\u03b7 \u03c1\u03b7\u03c4\u03ae\u03c2 \u03ba\u03bb\u03ae\u03c3\u03b7\u03c2 XA + +ORA-17070=\u03a4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b5\u03b3\u03b1\u03bb\u03cd\u03c4\u03b5\u03c1\u03bf \u03b1\u03c0\u03cc \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b3\u03b9\u03b1 \u03b1\u03c5\u03c4\u03cc\u03bd \u03c4\u03bf \u03c4\u03cd\u03c0\u03bf + +ORA-17071=\u039e\u03b5\u03c0\u03b5\u03c1\u03ac\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03cc\u03c1\u03b9\u03bf VARRAY + +ORA-17072=\u0388\u03b3\u03b9\u03bd\u03b5 \u03b5\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03c4\u03b9\u03bc\u03ae\u03c2 \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03c0\u03bf\u03bb\u03cd \u03bc\u03b5\u03b3\u03ac\u03bb\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7 \u03c3\u03c4\u03ae\u03bb\u03b7 + +ORA-17073=\u039f \u03bb\u03bf\u03b3\u03b9\u03ba\u03cc\u03c2 \u03c0\u03b1\u03c1\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1\u03c2 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03c0\u03b9\u03b1 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 + +ORA-17074=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03c0\u03c1\u03cc\u03c4\u03c5\u03c0\u03bf \u03bf\u03bd\u03cc\u03bc\u03b1\u03c4\u03bf\u03c2 + +ORA-17075=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b3\u03b9\u03b1 \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b3\u03b9\u03b1 \u03c0\u03c1\u03bf\u03ce\u03b8\u03b7\u03c3\u03b7 \u03bc\u03cc\u03bd\u03bf + +ORA-17076=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b3\u03b9\u03b1 \u03c3\u03cd\u03bd\u03bf\u03bb\u03bf \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b3\u03b9\u03b1 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 \u03bc\u03cc\u03bd\u03bf + +ORA-17077=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03bf\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd \u03c4\u03b7\u03c2 \u03c4\u03b9\u03bc\u03ae\u03c2 REF + +ORA-17078=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03b5\u03c0\u03b5\u03b9\u03b4\u03ae \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03b9\u03c2 \u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03ae\u03b4\u03b7 \u03b1\u03bd\u03bf\u03b9\u03ba\u03c4\u03ad\u03c2 + +ORA-17079=\u03a4\u03b1 \u03b4\u03b9\u03b1\u03c0\u03b9\u03c3\u03c4\u03b5\u03c5\u03c4\u03ae\u03c1\u03b9\u03b1 \u03c7\u03c1\u03ae\u03c3\u03c4\u03b7 \u03b4\u03b5\u03bd \u03c3\u03c5\u03bc\u03c6\u03c9\u03bd\u03bf\u03cd\u03bd \u03bc\u03b5 \u03c4\u03b1 \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03bd\u03c4\u03b1 + +ORA-17080=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b5\u03bd\u03c4\u03bf\u03bb\u03ae \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17081=\u03c0\u03c1\u03bf\u03ad\u03ba\u03c5\u03c8\u03b5 \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7 \u03b4\u03b9\u03ac\u03c1\u03ba\u03b5\u03b9\u03b1 \u03c4\u03b7\u03c2 \u03bc\u03b1\u03b6\u03b9\u03ba\u03ae\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 + +ORA-17082=\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03b5\u03b9 \u03c4\u03c1\u03ad\u03c7\u03bf\u03c5\u03c3\u03b1 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae + +ORA-17083=\u0394\u03b5\u03bd \u03b2\u03c1\u03af\u03c3\u03ba\u03b5\u03c4\u03b1\u03b9 \u03c3\u03c4\u03b7\u03bd \u03b5\u03b9\u03c3\u03b1\u03b3\u03cc\u03bc\u03b5\u03bd\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae + +ORA-17084=\u0388\u03b3\u03b9\u03bd\u03b5 \u03ba\u03bb\u03ae\u03c3\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae \u03b5\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae\u03c2 + +ORA-17085=\u03a0\u03c1\u03bf\u03ba\u03cd\u03c0\u03c4\u03bf\u03c5\u03bd \u03b4\u03b9\u03b5\u03bd\u03ad\u03be\u03b5\u03b9\u03c2 \u03c4\u03b9\u03bc\u03ce\u03bd + +ORA-17086=\u039c\u03b7 \u03bf\u03c1\u03b9\u03c3\u03bc\u03ad\u03bd\u03b7 \u03c4\u03b9\u03bc\u03ae \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 \u03c3\u03c4\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae \u03b5\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae\u03c2 + +ORA-17087=\u0397 \u03c5\u03c0\u03cc\u03b4\u03b5\u03b9\u03be\u03b7 \u03b1\u03c0\u03cc\u03b4\u03bf\u03c3\u03b7\u03c2 \u03b1\u03b3\u03bd\u03bf\u03ae\u03b8\u03b7\u03ba\u03b5: setFetchDirection() + +ORA-17088=\u039c\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03b7 \u03c3\u03cd\u03bd\u03c4\u03b1\u03be\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03bf\u03bd \u03c4\u03cd\u03c0\u03bf \u03c4\u03bf\u03c5 \u03c3\u03c5\u03bd\u03cc\u03bb\u03bf\u03c5 \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03ba\u03b1\u03b9 \u03c4\u03bf \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03bf \u03c4\u03b1\u03c5\u03c4\u03cc\u03c7\u03c1\u03bf\u03bd\u03b7\u03c2 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7\u03c2 \u03c0\u03bf\u03c5 \u03b6\u03b7\u03c4\u03ae\u03b8\u03b7\u03ba\u03b5 +ORA-17089=\u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 + +ORA-17090=\u03b7 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b4\u03b5\u03bd \u03b5\u03c0\u03b9\u03c4\u03c1\u03ad\u03c0\u03b5\u03c4\u03b1\u03b9 + +ORA-17091=\u0397 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03c4\u03bf\u03c5 \u03c3\u03c5\u03bd\u03cc\u03bb\u03bf\u03c5 \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03b5\u03c3\u03bc\u03ac\u03c4\u03c9\u03bd \u03c3\u03c4\u03bf \u03b6\u03b7\u03c4\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf \u03b5\u03c0\u03af\u03c0\u03b5\u03b4\u03bf \u03c4\u03cd\u03c0\u03bf\u03c5 \u03ba\u03b1\u03b9/\u03ae \u03c4\u03b1\u03c5\u03c4\u03cc\u03c7\u03c1\u03bf\u03bd\u03b7\u03c2 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae + +ORA-17092=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03ae \u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03c0\u03c1\u03bf\u03c4\u03ac\u03c3\u03b5\u03c9\u03bd JDBC \u03c3\u03c4\u03bf \u03c4\u03ad\u03bb\u03bf\u03c2 \u03c4\u03b7\u03c2 \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1\u03c2 \u03ba\u03bb\u03ae\u03c3\u03b5\u03c9\u03bd + +ORA-17093=\u0397 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 OCI \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u0397 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03bf\u03c5 \u03b4\u03b5\u03bd \u03c3\u03c5\u03bc\u03c6\u03c9\u03bd\u03b5\u03af + +ORA-17095=\u0394\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03ba\u03c1\u03c5\u03c6\u03ae \u03bc\u03bd\u03ae\u03bc\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 + +ORA-17096=\u0397 \u03b5\u03b3\u03b3\u03c1\u03b1\u03c6\u03ae \u03c0\u03c1\u03bf\u03c4\u03ac\u03c3\u03b5\u03c9\u03bd \u03c3\u03c4\u03b7\u03bd \u03ba\u03c1\u03c5\u03c6\u03ae \u03bc\u03bd\u03ae\u03bc\u03b7 \u03b4\u03b5\u03bd \u03bc\u03c0\u03bf\u03c1\u03b5\u03af \u03bd\u03b1 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03b8\u03b5\u03af \u03b3\u03b9\u03b1 \u03b1\u03c5\u03c4\u03ae \u03c4\u03b7 \u03bb\u03bf\u03b3\u03b9\u03ba\u03ae \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7. + +ORA-17097=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03c4\u03bf\u03b9\u03c7\u03b5\u03af\u03bf\u03c5 \u03b3\u03b9\u03b1 \u03c0\u03af\u03bd\u03b1\u03ba\u03b1 \u03b5\u03c5\u03c1\u03b5\u03c4\u03b7\u03c1\u03af\u03bf\u03c5 PL/SQL + +ORA-17098=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03ba\u03b5\u03bd\u03bf\u03cd lob + +ORA-17099=M\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ae\u03ba\u03bf\u03c2 \u03bc\u03ae\u03c4\u03c1\u03b1\u03c2 \u03b3\u03b9\u03b1 \u03c0\u03af\u03bd\u03b1\u03ba\u03b1 \u03b5\u03c5\u03c1\u03b5\u03c4\u03b7\u03c1\u03af\u03bf\u03c5 PL/SQL + +ORA-17100=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03af\u03bc\u03b5\u03bd\u03bf Java \u03c4\u03b7\u03c2 \u0392\u0394 + +ORA-17101=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ad\u03c2 \u03b9\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b5\u03c2 \u03c3\u03c4\u03bf \u03b1\u03bd\u03c4\u03b9\u03ba\u03b5\u03af\u03bc\u03b5\u03bd\u03bf \u03c0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae\u03c2 \u03c3\u03c5\u03b3\u03ba\u03ad\u03bd\u03c4\u03c1\u03c9\u03c3\u03b7\u03c2 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03c9\u03bd OCI + +ORA-17102=\u03a4\u03bf Bfile \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03b3\u03b9\u03b1 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 + +ORA-17103=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 \u03b3\u03b9\u03b1 \u03b5\u03c0\u03b9\u03c3\u03c4\u03c1\u03bf\u03c6\u03ae \u03bc\u03ad\u03c3\u03c9 getConnection. \u0391\u03bd\u03c4\u03af \u03b1\u03c5\u03c4\u03ae\u03c2, \u03c7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03c4\u03b5 \u03c4\u03b7\u03bd getJavaSqlConnection + +ORA-17104=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 SQL \u03c0\u03c1\u03bf\u03c2 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03b4\u03b5\u03bd \u03bc\u03c0\u03bf\u03c1\u03b5\u03af \u03bd\u03b1 \u03b5\u03af\u03bd\u03b1\u03b9 \u03ba\u03b5\u03bd\u03ae \u03ae null + +ORA-17105=\u03b4\u03b5\u03bd \u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03b6\u03ce\u03bd\u03b7 \u03ce\u03c1\u03b1\u03c2 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03b5\u03c1\u03af\u03bf\u03b4\u03bf \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03c4\u03b7\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 + +ORA-17106=\u03ad\u03c7\u03b5\u03b9 \u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03c0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae\u03c2 \u03c3\u03c5\u03b3\u03ba\u03ad\u03bd\u03c4\u03c1\u03c9\u03c3\u03b7\u03c2 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03b5\u03c9\u03bd \u03c4\u03bf\u03c5 \u03bf\u03b4\u03b7\u03b3\u03bf\u03cd JDBC-OCI + +ORA-17107=\u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03bf\u03c5 server + +ORA-17108=\u0394\u03b5\u03bd \u03ba\u03b1\u03b8\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ae\u03ba\u03bf\u03c2 \u03c3\u03c4\u03bf defineColumnType + +ORA-17109=\u03b4\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b5 \u03c4\u03c5\u03c0\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03b7 \u03ba\u03c9\u03b4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03c9\u03bd Java + +ORA-17110=\u03b7 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7 \u03bf\u03bb\u03bf\u03ba\u03bb\u03b7\u03c1\u03ce\u03b8\u03b7\u03ba\u03b5 \u03bc\u03b5 \u03c0\u03c1\u03bf\u03b5\u03b9\u03b4\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 + +ORA-17111=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2 \u03b1\u03bd\u03b1\u03bc\u03bf\u03bd\u03ae\u03c2 TTL + +ORA-17112=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03b4\u03b9\u03ac\u03c3\u03c4\u03b7\u03bc\u03b1 \u03bd\u03ae\u03bc\u03b1\u03c4\u03bf\u03c2 (thread) + +ORA-17113=\u03a4\u03bf \u03c7\u03c1\u03bf\u03bd\u03b9\u03ba\u03cc \u03b4\u03b9\u03ac\u03c3\u03c4\u03b7\u03bc\u03b1 \u03bd\u03ae\u03bc\u03b1\u03c4\u03bf\u03c2 (thread) \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b5\u03b3\u03b1\u03bb\u03cd\u03c4\u03b5\u03c1\u03bf \u03b1\u03c0\u03cc \u03c4\u03bf\u03bd \u03c7\u03c1\u03cc\u03bd\u03bf \u03b1\u03bd\u03b1\u03bc\u03bf\u03bd\u03ae\u03c2 + +ORA-17114=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03c7\u03c1\u03ae\u03c3\u03b7 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c0\u03b9\u03ba\u03ae\u03c2 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 \u03bc\u03af\u03b1 \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae + +ORA-17115=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c4\u03bf\u03c0\u03b9\u03ba\u03ae\u03c2 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 \u03bc\u03af\u03b1 \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae + +ORA-17116=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b7\u03c2 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2 \u03c3\u03b5 \u03bc\u03b9\u03b1 \u03b5\u03bd\u03b5\u03c1\u03b3\u03cc \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae (global transaction) + +ORA-17117=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc\u03c2 \u03bf \u03bf\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 savepoint \u03c3\u03b5 \u03bc\u03b9\u03b1 \u03b5\u03bd\u03b5\u03c1\u03b3\u03cc \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae (global transaction) + +ORA-17118=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03bb\u03ae\u03c8\u03b7 \u03b1\u03bd\u03b1\u03b3\u03bd\u03c9\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03cd \u03b3\u03b9\u03b1 \u03ad\u03bd\u03b1 \u03bf\u03bd\u03bf\u03bc\u03b1\u03c3\u03bc\u03ad\u03bd\u03bf savepoint + +ORA-17119=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03bb\u03ae\u03c8\u03b7 \u03bf\u03bd\u03cc\u03bc\u03b1\u03c4\u03bf\u03c2 \u03b3\u03b9\u03b1 \u03ad\u03bd\u03b1 savepoint \u03c7\u03c9\u03c1\u03af\u03c2 \u03cc\u03bd\u03bf\u03bc\u03b1 + +ORA-17120=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03cc\u03c2 \u03bf \u03bf\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 savepoint \u03bc\u03b5 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03b7 \u03c4\u03b7\u03bd \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b7 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 + +ORA-17121=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 savepoint \u03bc\u03b5 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03b7 \u03c4\u03b7\u03bd \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b7 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 + +ORA-17122=\u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b1\u03bd\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 \u03c3\u03b5 \u03c4\u03bf\u03c0\u03b9\u03ba\u03cc Savepoint \u03ba\u03b1\u03b8\u03bf\u03bb\u03b9\u03ba\u03ae\u03c2 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2 + +ORA-17123=\u0388\u03c7\u03b5\u03b9 \u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03ba\u03c1\u03c5\u03c6\u03ae\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 + +ORA-17124=\u03a0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2 \u03b1\u03bd\u03b1\u03bc\u03bf\u03bd\u03ae\u03c2 \u03ba\u03c1\u03c5\u03c6\u03ae\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 \u03c3\u03b5 \u03c0\u03b5\u03c1\u03af\u03c0\u03c4\u03c9\u03c3\u03b7 \u03b1\u03b4\u03c1\u03ac\u03bd\u03b5\u03b9\u03b1\u03c2 + +ORA-17200=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03ba\u03b1\u03c4\u03ac\u03bb\u03bb\u03b7\u03bb\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae \u03c4\u03b7\u03c2 \u03c3\u03c5\u03bc\u03b2\u03bf\u03bb\u03bf\u03c3\u03b5\u03b9\u03c1\u03ac\u03c2 \u03b1\u03bd\u03bf\u03af\u03b3\u03bc\u03b1\u03c4\u03bf\u03c2 XA \u03b1\u03c0\u03cc Java \u03c3\u03b5 C + +ORA-17201=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03ba\u03b1\u03c4\u03ac\u03bb\u03bb\u03b7\u03bb\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae \u03c4\u03b7\u03c2 \u03c3\u03c5\u03bc\u03b2\u03bf\u03bb\u03bf\u03c3\u03b5\u03b9\u03c1\u03ac\u03c2 \u03ba\u03bb\u03b5\u03b9\u03c3\u03af\u03bc\u03b1\u03c4\u03bf\u03c2 XA \u03b1\u03c0\u03cc Java \u03c3\u03b5 C + +ORA-17202=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03ba\u03b1\u03c4\u03ac\u03bb\u03bb\u03b7\u03bb\u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae \u03c4\u03bf\u03c5 \u03bf\u03bd\u03cc\u03bc\u03b1\u03c4\u03bf\u03c2 RM \u03b1\u03c0\u03cc Java \u03c3\u03b5 C + +ORA-17203=\u0394\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03bc\u03b5\u03c4\u03b1\u03c4\u03c1\u03bf\u03c0\u03ae (casting) \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 \u03b4\u03b5\u03af\u03ba\u03c4\u03b7 \u03c3\u03b5 jlong + +ORA-17204=\u0397 \u03bc\u03ae\u03c4\u03c1\u03b1 \u03b5\u03b9\u03c3\u03cc\u03b4\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03c0\u03bf\u03bb\u03cd \u03bc\u03b9\u03ba\u03c1\u03ae \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03c0\u03b5\u03c1\u03b9\u03bb\u03ac\u03b2\u03b5\u03b9 \u03c4\u03bf\u03c5\u03c2 \u03b4\u03b5\u03af\u03ba\u03c4\u03b5\u03c2 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd OCI + +ORA-17205=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03c4\u03b7 \u03bb\u03ae\u03c8\u03b7 \u03c4\u03bf\u03c5 \u03b4\u03b5\u03af\u03ba\u03c4\u03b7 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd OCISvcCtx \u03b1\u03c0\u03cc C-XA \u03bc\u03b5 \u03c7\u03c1\u03ae\u03c3\u03b7 xaoSvcCtx + +ORA-17206=\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03c4\u03b7 \u03bb\u03ae\u03c8\u03b7 \u03c4\u03bf\u03c5 \u03b4\u03b5\u03af\u03ba\u03c4\u03b7 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03bf\u03cd OCIEnv \u03b1\u03c0\u03cc C-XA \u03bc\u03b5 \u03c7\u03c1\u03ae\u03c3\u03b7 xaoEnv + +ORA-17207=\u0397 \u03b9\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b1 tnsEntry \u03b4\u03b5\u03bd \u03bf\u03c1\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c3\u03c4\u03bf DataSource + +ORA-17213=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_RMERR \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_open + +ORA-17215=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_INVAL \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_open + +ORA-17216=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_PROTO \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_open + +ORA-17233=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_RMERR \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_close + +ORA-17235=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_INVAL \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_close + +ORA-17236=C-XA \u03b5\u03c0\u03ad\u03c3\u03c4\u03c1\u03b5\u03c8\u03b5 XAER_PROTO \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7\u03bd xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u03a0\u03b1\u03c1\u03b1\u03b2\u03af\u03b1\u03c3\u03b7 \u03c0\u03c1\u03c9\u03c4\u03bf\u03ba\u03cc\u03bb\u03bb\u03bf\u03c5 + +ORA-17402=\u0391\u03bd\u03b1\u03bc\u03ad\u03bd\u03b5\u03c4\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03ad\u03bd\u03b1 \u03bc\u03ae\u03bd\u03c5\u03bc\u03b1 RPA + +ORA-17403=\u0391\u03bd\u03b1\u03bc\u03ad\u03bd\u03b5\u03c4\u03b1\u03b9 \u03bc\u03cc\u03bd\u03bf \u03ad\u03bd\u03b1 \u03bc\u03ae\u03bd\u03c5\u03bc\u03b1 RXH + +ORA-17404=\u0388\u03b3\u03b9\u03bd\u03b5 \u03bb\u03ae\u03c8\u03b7 \u03c0\u03b5\u03c1\u03b9\u03c3\u03c3\u03cc\u03c4\u03b5\u03c1\u03c9\u03bd RXD \u03b1\u03c0\u03cc \u03c4\u03b1 \u03b1\u03bd\u03b1\u03bc\u03b5\u03bd\u03cc\u03bc\u03b5\u03bd\u03b1 + +ORA-17405=\u03a4\u03bf \u03bc\u03ae\u03ba\u03bf\u03c2 UAC \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7\u03b4\u03b5\u03bd\u03b9\u03ba\u03cc + +ORA-17406=\u039e\u03b5\u03c0\u03b5\u03c1\u03ac\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03c4\u03b7\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03b7\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 + +ORA-17407=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 \u03c4\u03cd\u03c0\u03bf\u03c5(setRep) + +ORA-17408=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 \u03c4\u03cd\u03c0\u03bf\u03c5(getRep) + +ORA-17409=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03b7\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 + +ORA-17410=\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03ac\u03bb\u03bb\u03b1 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03b1 \u03b3\u03b9\u03b1 \u03b1\u03bd\u03ac\u03b3\u03bd\u03c9\u03c3\u03b7 \u03b1\u03c0\u03cc \u03c4\u03b7\u03bd \u03c5\u03c0\u03bf\u03b4\u03bf\u03c7\u03ae + +ORA-17411=\u0391\u03c3\u03c5\u03bc\u03c6\u03c9\u03bd\u03af\u03b1 \u03b1\u03bd\u03b1\u03c0\u03b1\u03c1\u03b1\u03c3\u03c4\u03ac\u03c3\u03b5\u03c9\u03bd \u03c4\u03cd\u03c0\u03c9\u03bd \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd + +ORA-17412=\u03a4\u03bf \u03bc\u03ae\u03ba\u03bf\u03c2 \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b5\u03b3\u03b1\u03bb\u03cd\u03c4\u03b5\u03c1\u03bf \u03b1\u03c0\u03cc \u03c4\u03bf \u03bc\u03ad\u03b3\u03b9\u03c3\u03c4\u03bf \u03b5\u03c0\u03b9\u03c4\u03c1\u03b5\u03c0\u03c4\u03cc + +ORA-17413=\u03a5\u03c0\u03ad\u03c1\u03b2\u03b1\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03bc\u03ae\u03ba\u03bf\u03c5\u03c2 \u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03b4\u03b9\u03bf\u03cd + +ORA-17414=\u03a4\u03bf \u03bc\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2 \u03c4\u03b7\u03c2 \u03b5\u03bd\u03b4\u03b9\u03ac\u03bc\u03b5\u03c3\u03b7\u03c2 \u03bc\u03bd\u03ae\u03bc\u03b7\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03bd\u03b5\u03c0\u03b1\u03c1\u03ba\u03ad\u03c2 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03b1\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7 \u03c4\u03c9\u03bd \u03bf\u03bd\u03bf\u03bc\u03ac\u03c4\u03c9\u03bd \u03c3\u03c4\u03b7\u03bb\u03ce\u03bd + +ORA-17415=\u0394\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03b3\u03af\u03bd\u03b5\u03b9 \u03c7\u03b5\u03b9\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03b1\u03c5\u03c4\u03bf\u03cd \u03c4\u03bf\u03c5 \u03c4\u03cd\u03c0\u03bf\u03c5 + +ORA-17416=FATAL + +ORA-17417=\u03a0\u03c1\u03cc\u03b2\u03bb\u03b7\u03bc\u03b1 NLS, \u03b1\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03b1\u03c0\u03bf\u03ba\u03c9\u03b4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2 \u03bf\u03bd\u03bf\u03bc\u03ac\u03c4\u03c9\u03bd \u03c3\u03c4\u03b7\u03bb\u03ce\u03bd + +ORA-17418=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03bc\u03ae\u03ba\u03bf\u03c5\u03c2 \u03c0\u03b5\u03b4\u03af\u03bf\u03c5 \u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03ae\u03c2 \u03b4\u03bf\u03bc\u03ae\u03c2 + +ORA-17419=\u0395\u03c0\u03b9\u03c3\u03c4\u03c1\u03bf\u03c6\u03ae \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03bf\u03cd \u03b1\u03c1\u03b9\u03b8\u03bc\u03bf\u03cd \u03c3\u03c4\u03b7\u03bb\u03ce\u03bd + +ORA-17420=\u0394\u03b5\u03bd \u03ad\u03c7\u03b5\u03b9 \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03b7 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03b7\u03c2 Oracle + +ORA-17421=\u0394\u03b5\u03bd \u03ad\u03c7\u03bf\u03c5\u03bd \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03bf\u03b9 \u03c4\u03cd\u03c0\u03bf\u03b9 \u03ae \u03b7 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 + +ORA-17422=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae \u03ba\u03bb\u03ac\u03c3\u03b7 \u03c3\u03b5 \u03b5\u03c1\u03b3\u03bf\u03c3\u03c4\u03ac\u03c3\u03b9\u03bf + +ORA-17423=\u03a7\u03c1\u03ae\u03c3\u03b7 \u03bc\u03c0\u03bb\u03bf\u03ba PLSQL \u03c7\u03c9\u03c1\u03af\u03c2 \u03bf\u03c1\u03b9\u03c3\u03bc\u03cc IOV + +ORA-17424=\u0391\u03c0\u03cc\u03c0\u03b5\u03b9\u03c1\u03b1 \u03b5\u03ba\u03c4\u03ad\u03bb\u03b5\u03c3\u03b7\u03c2 \u03b4\u03b9\u03b1\u03c6\u03bf\u03c1\u03b5\u03c4\u03b9\u03ba\u03ae\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03b4\u03b9\u03b5\u03c5\u03b8\u03ad\u03c4\u03b7\u03c3\u03b7\u03c2 (marshaling) + +ORA-17425=\u0395\u03c0\u03b9\u03c3\u03c4\u03c1\u03bf\u03c6\u03ae \u03b5\u03bd\u03cc\u03c2 stream \u03c3\u03b5 \u03bc\u03c0\u03bb\u03bf\u03ba \u03b5\u03bd\u03c4\u03bf\u03bb\u03ce\u03bd PLSQL + +ORA-17426=\u03a4\u03cc\u03c3\u03bf \u03bf\u03b9 \u03b4\u03b5\u03c3\u03bc\u03b5\u03c5\u03bc\u03ad\u03bd\u03b5\u03c2 \u03bc\u03b5\u03c4\u03b1\u03b2\u03bb\u03b7\u03c4\u03ad\u03c2 IN \u03cc\u03c3\u03bf \u03ba\u03b1\u03b9 \u03bf\u03b9 OUT \u03b5\u03af\u03bd\u03b1\u03b9 NULL + +ORA-17427=\u03a7\u03c1\u03ae\u03c3\u03b7 \u03bc\u03b7 \u03b1\u03c1\u03c7\u03b9\u03ba\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03bf\u03c5 OAC + +ORA-17428=\u0397 \u03b4\u03b9\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1 Logon \u03c0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03ba\u03bb\u03b7\u03b8\u03b5\u03af \u03bc\u03b5\u03c4\u03ac \u03c4\u03b7\u03bd \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 + +ORA-17429=\u03a0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03c4\u03bf\u03c5\u03bb\u03ac\u03c7\u03b9\u03c3\u03c4\u03bf\u03bd \u03bd\u03b1 \u03c5\u03c0\u03ac\u03c1\u03c7\u03b5\u03b9 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 \u03bc\u03b5 \u03c4\u03bf\u03bd server + +ORA-17430=\u03a0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03b5\u03af\u03c3\u03c4\u03b5 \u03c3\u03c5\u03bd\u03b4\u03b5\u03b4\u03b5\u03bc\u03ad\u03bd\u03bf\u03b9 \u03bc\u03b5 \u03c4\u03bf\u03bd server + +ORA-17431=\u0397 \u03c0\u03c1\u03cc\u03c4\u03b1\u03c3\u03b7 SQL \u03c0\u03bf\u03c5 \u03b8\u03b1 \u03b1\u03bd\u03b1\u03bb\u03c5\u03b8\u03b5\u03af \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17432=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ad\u03c2 \u03b5\u03c0\u03b9\u03bb\u03bf\u03b3\u03ad\u03c2 \u03ba\u03b1\u03b9 \u03c3\u03c4\u03b9\u03c2 7 \u03b5\u03bd\u03c4\u03bf\u03bb\u03ad\u03c2 + +ORA-17433=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ac \u03bf\u03c1\u03af\u03c3\u03bc\u03b1\u03c4\u03b1 \u03c3\u03c4\u03b7\u03bd \u03ba\u03bb\u03ae\u03c3\u03b7 + +ORA-17434=\u039f \u03c4\u03c1\u03cc\u03c0\u03bf\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 streaming + +ORA-17435=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc\u03c2 in_out_binds \u03c3\u03c4\u03bf IOV + +ORA-17436=\u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc\u03c2 outbinds + +ORA-17437=\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03c4\u03b1 \u03bf\u03c1\u03af\u03c3\u03bc\u03b1\u03c4\u03b1 IN/OUT \u03c4\u03bf\u03c5 \u03bc\u03c0\u03bb\u03bf\u03ba \u03b5\u03bd\u03c4\u03bf\u03bb\u03ce\u03bd PLSQL + +ORA-17438=\u0395\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1 - \u039c\u03b7 \u03b1\u03bd\u03b1\u03bc\u03b5\u03bd\u03cc\u03bc\u03b5\u03bd\u03b7 \u03c4\u03b9\u03bc\u03ae + +ORA-17439=\u039c\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03cc\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c2 SQL + +ORA-17440=\u039f\u03b9 \u03c0\u03b1\u03c1\u03ac\u03bc\u03b5\u03c4\u03c1\u03bf\u03b9 DBItem/DBType \u03b5\u03af\u03bd\u03b1\u03b9 null + +ORA-17441=\u0394\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03b1\u03c5\u03c4\u03ae \u03b7 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03b7\u03c2 Oracle. \u0397 \u03c0\u03b1\u03bb\u03b1\u03b9\u03cc\u03c4\u03b5\u03c1\u03b7 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c0\u03bf\u03c5 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b7 7.2.3. + +ORA-17442=\u0397 \u03c4\u03b9\u03bc\u03ae \u03c4\u03bf\u03c5 cursor \u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b4\u03b5\u03ba\u03c4\u03ae + +ORA-17443=\u0395\u03af\u03c4\u03b5 Null \u03c7\u03c1\u03ae\u03c3\u03c4\u03b7\u03c2 \u03b5\u03af\u03c4\u03b5 \u03bc\u03b7 \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03b9\u03b6\u03cc\u03bc\u03b5\u03bd\u03bf\u03c2 \u03ba\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 \u03c3\u03c4\u03bf\u03bd \u03bf\u03b4\u03b7\u03b3\u03cc \u03a0\u0395\u03a1\u0399\u039f\u03a1\u0399\u03a3\u039c\u0395\u039d\u03a9\u039d \u0394\u03a5\u039d\u0391\u03a4\u039f\u03a4\u0397\u03a4\u03a9\u039d (THIN) + +ORA-17444=\u0397 \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c0\u03c1\u03c9\u03c4\u03bf\u03ba\u03cc\u03bb\u03bb\u03bf\u03c5 TTC \u03c0\u03bf\u03c5 \u03bb\u03ae\u03c6\u03b8\u03b7\u03ba\u03b5 \u03b1\u03c0\u03cc \u03c4\u03bf\u03bd server \u03b4\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_es.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_es.properties new file mode 100644 index 0000000..43f6f9b --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_es.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Error interno + +ORA-17002=Excepci\u00f3n de E/S + +ORA-17003=\u00cdndice de columna no v\u00e1lido + +ORA-17004=Tipo de columna no v\u00e1lido + +ORA-17005=Tipo de columna no soportado + +ORA-17006=Nombre de columna no v\u00e1lido + +ORA-17007=Columna din\u00e1mica no v\u00e1lida + +ORA-17008=Conexi\u00f3n cerrada + +ORA-17009=Sentencia cerrada + +ORA-17010=Juego de resultados cerrado + +ORA-17011=Juego de resultados agotado + +ORA-17012=Conflicto de tipo de par\u00e1metro + +ORA-17014=No se ha llamado a ResultSet.next + +ORA-17015=Se ha cancelado la sentencia + +ORA-17016=Timeout de sentencia + +ORA-17017=Ya se ha inicializado el cursor + +ORA-17018=Cursor no v\u00e1lido + +ORA-17019=S\u00f3lo puede describir una consulta + +ORA-17020=Recuperaci\u00f3n previa de fila no v\u00e1lida + +ORA-17021=Faltan definiciones + +ORA-17022=Faltan definiciones en el \u00edndice + +ORA-17023=Funci\u00f3n no soportada + +ORA-17024=No hay lectura de datos + +ORA-17025=Error en defines.isNull () + +ORA-17026=Desbordamiento Num\u00e9rico + +ORA-17027=El flujo ya se ha cerrado + +ORA-17028=No se pueden realizar nuevas definiciones hasta que no se cierre el juego de resultados actual + +ORA-17029=setReadOnly: Conexiones de s\u00f3lo lectura no soportadas + +ORA-17030=READ_COMMITTED y SERIALIZABLE son los \u00fanicos niveles de transacci\u00f3n v\u00e1lidos + +ORA-17031=setAutoClose: S\u00f3lo soporta el modo de cierre autom\u00e1tico + +ORA-17032=no se puede definir la recuperaci\u00f3n previa de fila en cero + +ORA-17033=Cadena SQL92 con formato incorrecto en la posici\u00f3n + +ORA-17034=Elemento SQL92 no soportado en la posici\u00f3n + +ORA-17035=\u00a1\u00a1Juego de caracteres no soportado!! + +ORA-17036=excepci\u00f3n en OracleNumber + +ORA-17037=Fallo al convertir entre UTF8 y UCS2 + +ORA-17038=La matriz de bytes no es suficientemente larga + +ORA-17039=La matriz de caracteres no es suficientemente larga + +ORA-17040=El subprotocolo se debe especificar en la direcci\u00f3n URL de conexi\u00f3n + +ORA-17041=Falta el par\u00e1metro IN o OUT en el \u00edndice: + +ORA-17042=Valor de lote no v\u00e1lido + +ORA-17043=Tama\u00f1o m\u00e1ximo de flujo no v\u00e1lido + +ORA-17044=Error interno: No se ha asignado la matriz de datos + +ORA-17045=Error interno: Se ha intentado acceder a valores de enlace aparte del valor de lote + +ORA-17046=Error interno: \u00cdndice no v\u00e1lido para el acceso a los datos + +ORA-17047=Error en el an\u00e1lisis del descriptor de tipo + +ORA-17048=Tipo no definido + +ORA-17049=Tipos de objeto JAVA y SQL inconsistentes + +ORA-17050=no existe ese elemento en el vector + +ORA-17051=Esta API no se puede utilizar para tipos que no sean UDT + +ORA-17052=Esta referencia no es v\u00e1lida + +ORA-17053=El tama\u00f1o no es v\u00e1lido + +ORA-17054=El localizador LOB no es v\u00e1lido + +ORA-17055=Se ha encontrado un car\u00e1cter no v\u00e1lido en + +ORA-17056=Juego de caracteres no soportado + +ORA-17057=LOB cerrado + +ORA-17058=Error interno: Ratio de conversi\u00f3n NLS no v\u00e1lida + +ORA-17059=Fallo al convertir a representaci\u00f3n interna + +ORA-17060=Fallo al construir el descriptor + +ORA-17061=Falta el descriptor + +ORA-17062=El cursor de referencia no es v\u00e1lido + +ORA-17063=No est\u00e1 en una transacci\u00f3n + +ORA-17064=La sintaxis no es v\u00e1lida o el nombre de la base de datos es nulo + +ORA-17065=La clase de conversi\u00f3n es nula + +ORA-17066=Se necesita implementaci\u00f3n concreta del nivel de acceso + +ORA-17067=La direcci\u00f3n URL de Oracle especificada no es v\u00e1lida + +ORA-17068=Argumento(s) no v\u00e1lido(s) en la llamada + +ORA-17069=Utilizar llamada XA expl\u00edcita + +ORA-17070=El tama\u00f1o de los datos es mayor que el tama\u00f1o m\u00e1ximo para este tipo + +ORA-17071=Se ha excedido el l\u00edmite m\u00e1ximo de VARRAY + +ORA-17072=El valor insertado es demasiado largo para la columna + +ORA-17073=El manejador l\u00f3gico ya no es v\u00e1lido + +ORA-17074=patr\u00f3n de nombre no v\u00e1lido + +ORA-17075=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo reenv\u00edo + +ORA-17076=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo lectura + +ORA-17077=Fallo al definir el valor REF + +ORA-17078=No se puede realizar la operaci\u00f3n ya que las conexiones ya est\u00e1n abiertas + +ORA-17079=Las credenciales del usuario no coinciden con las existentes + +ORA-17080=comando por lotes no v\u00e1lido + +ORA-17081=se ha producido un error durante el procesamiento por lotes + +ORA-17082=No es la fila actual + +ORA-17083=No est\u00e1 en la fila de inserci\u00f3n + +ORA-17084=Llamada en la fila de inserci\u00f3n + +ORA-17085=Se ha producido un conflicto de valores + +ORA-17086=El valor de la columna no est\u00e1 definido en la fila de inserci\u00f3n + +ORA-17087=Indicaci\u00f3n de rendimiento ignorada: setFetchDirection() + +ORA-17088=Sintaxis no soportada para el tipo de juego de resultados y el nivel de simultaneidad solicitados +ORA-17089=error interno + +ORA-17090=operaci\u00f3n no permitida + +ORA-17091=No se puede crear el juego de resultados en el tipo y/o nivel de simultaneidad solicitados + +ORA-17092=Las sentencias JDBC no se pueden crear o ejecutar al final del procesamiento de la llamada + +ORA-17093=La operaci\u00f3n OCI ha devuelto OCI_SUCCESS_WITH_INFO + +ORA-17094=Las versiones de tipo de objeto no coinciden + +ORA-17095=No se ha definido el tama\u00f1o de la cach\u00e9 de sentencias + +ORA-17096=La cach\u00e9 de sentencias no se puede activar para esta conexi\u00f3n l\u00f3gica. + +ORA-17097=Tipo de elemento de tabla indexada PL/SQL no v\u00e1lido + +ORA-17098=Operaci\u00f3n LOB vac\u00eda no v\u00e1lida + +ORA-17099=Longitud de matriz de tabla indexada PL/SQL no v\u00e1lida + +ORA-17100=Objeto Java de la base de datos no v\u00e1lido + +ORA-17101=Propiedades no v\u00e1lidas del objeto del conjunto de conexiones de OCI + +ORA-17102=Bfile es de s\u00f3lo lectura + +ORA-17103=tipo de conexi\u00f3n no v\u00e1lido para volver mediante getConnection. En su lugar, utilice getJavaSqlConnection + +ORA-17104=La sentencia SQL de ejecuci\u00f3n no puede estar vac\u00eda ni ser nula + +ORA-17105=no se ha definido la zona horaria de la sesi\u00f3n de conexi\u00f3n + +ORA-17106=se ha especificado una configuraci\u00f3n de conjunto de conexiones de controlador JDBC-OCI no v\u00e1lida + +ORA-17107=el tipo de proxy especificado no es v\u00e1lido + +ORA-17108=No se ha especificado la longitud m\u00e1xima en defineColumnType + +ORA-17109=no se ha encontrado la codificaci\u00f3n de car\u00e1cter Java est\u00e1ndar + +ORA-17110=la ejecuci\u00f3n ha terminado con advertencias + +ORA-17111=Se ha especificado un timeout de TTL de cach\u00e9 de conexiones no v\u00e1lido + +ORA-17112=Se ha especificado un intervalo de thread no v\u00e1lido + +ORA-17113=El valor del intervalo de thread es mayor que el valor del timeout de cach\u00e9 + +ORA-17114=no se ha podido utilizar la validaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17115=no se ha podido utilizar el rollback de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17116=no se ha podido activar la validaci\u00f3n autom\u00e1tica en una transacci\u00f3n global activa + +ORA-17117=no se ha podido definir el punto de grabaci\u00f3n en una transacci\u00f3n global activa + +ORA-17118=no se ha podido obtener el identificador de un punto de grabaci\u00f3n denominado + +ORA-17119=no se ha podido obtener el nombre de un punto de grabaci\u00f3n no denominado + +ORA-17120=no se ha podido definir un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17121=no se ha podido realizar rollback en un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17122=no se ha podido realizar rollback en un punto de grabaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17123=Se ha especificado un tama\u00f1o de cach\u00e9 de sentencias no v\u00e1lido + +ORA-17124=Se ha especificado un timout de inactividad de cach\u00e9 de conexi\u00f3n no v\u00e1lido + +ORA-17200=No se ha podido convertir correctamente la cadena de apertura de XA de Java a C + +ORA-17201=No se ha podido convertir correctamente la cadena de cierre de XA de Java a C + +ORA-17202=No se ha podido convertir correctamente el nombre de RM de Java a C + +ORA-17203=No se ha podido convertir el tipo de puntero a jlong + +ORA-17204=Matriz de entrada demasiado peque\u00f1a para contener los manejadores OCI + +ORA-17205=Fallo al obtener el manejador OCISvcCtx de C-XA mediante xaoSvcCtx + +ORA-17206=Fallo al obtener el manejador OCIEnv de C-XA mediante xaoEnv + +ORA-17207=No se ha definido la propiedad tnsEntry en el origen de datos + +ORA-17213=C-XA ha devuelto XAER_RMERR durante xa_open + +ORA-17215=C-XA ha devuelto XAER_INVAL durante xa_open + +ORA-17216=C-XA ha devuelto XAER_PROTO durante xa_open + +ORA-17233=C-XA ha devuelto XAER_RMERR durante xa_close + +ORA-17235=C-XA ha devuelto XAER_INVAL durante xa_close + +ORA-17236=C-XA ha devuelto XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violaci\u00f3n de protocolo + +ORA-17402=S\u00f3lo se espera un mensaje RPA + +ORA-17403=S\u00f3lo se espera un mensaje RXH + +ORA-17404=Se han recibido m\u00e1s RXD de los esperados + +ORA-17405=La longitud UAC no es cero + +ORA-17406=Se ha excedido la longitud m\u00e1xima del buffer + +ORA-17407=representaci\u00f3n de tipo (setRep) no v\u00e1lida + +ORA-17408=representaci\u00f3n de tipo (getRep) no v\u00e1lida + +ORA-17409=longitud de buffer no v\u00e1lida + +ORA-17410=No hay m\u00e1s datos para leer del socket + +ORA-17411=No coinciden las representaciones de Tipo de Dato + +ORA-17412=Longitud de tipo mayor que el m\u00e1ximo permitido + +ORA-17413=Se ha excedido el tama\u00f1o de la clave + +ORA-17414=Tama\u00f1o de buffer insuficiente para almacenar nombres de columnas + +ORA-17415=Este tipo no ha sido tratado + +ORA-17416=FATAL + +ORA-17417=Problema NLS, fallo al descodificar nombres de columna + +ORA-17418=Error interno de longitud de campo de la estructura + +ORA-17419=El sistema ha devuelto un n\u00famero de columnas no v\u00e1lido + +ORA-17420=No se ha definido la versi\u00f3n de Oracle + +ORA-17421=La conexi\u00f3n o los tipos no se han definido + +ORA-17422=Clase no v\u00e1lida en el tipo de objeto Factory + +ORA-17423=Se est\u00e1 utilizando un bloque PLSQL sin haber definido un IOV + +ORA-17424=Se est\u00e1 intentando realizar una operaci\u00f3n de canalizaci\u00f3n de datos entre sistemas diferente + +ORA-17425=Se est\u00e1 devolviendo un flujo en el bloque PLSQL + +ORA-17426=Los enlaces IN y OUT son NULL + +ORA-17427=Se est\u00e1 utilizando OAC no inicializado + +ORA-17428=Logon se debe llamar despu\u00e9s de Connect + +ORA-17429=Debe estar conectado al servidor + +ORA-17430=Debe estar conectado al servidor + +ORA-17431=La sentencia SQL que se va a analizar es nula + +ORA-17432=opciones no v\u00e1lidas en all7 + +ORA-17433=argumentos no v\u00e1lidos en la llamada + +ORA-17434=no est\u00e1 en modo de lectura/escritura continuo + +ORA-17435=n\u00famero no v\u00e1lido de in_out_binds en IOV + +ORA-17436=n\u00famero no v\u00e1lido de par\u00e1metros OUT + +ORA-17437=Error en el argumento o argumentos IN/OUT del bloque PLSQL + +ORA-17438=Error interno - Valor inesperado + +ORA-17439=Tipo SQL no v\u00e1lido + +ORA-17440=DBItem/DBType nulo + +ORA-17441=Versi\u00f3n de Oracle no soportada. La versi\u00f3n m\u00ednima soportada es la 7.2.3. + +ORA-17442=El valor del cursor de referencia no es v\u00e1lido + +ORA-17443=Usuario nulo o contrase\u00f1a no soportada en el controlador THIN + +ORA-17444=Versi\u00f3n no soportada del protocolo TTC recibido del servidor + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_es_ES.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_es_ES.properties new file mode 100644 index 0000000..43f6f9b --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_es_ES.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Error interno + +ORA-17002=Excepci\u00f3n de E/S + +ORA-17003=\u00cdndice de columna no v\u00e1lido + +ORA-17004=Tipo de columna no v\u00e1lido + +ORA-17005=Tipo de columna no soportado + +ORA-17006=Nombre de columna no v\u00e1lido + +ORA-17007=Columna din\u00e1mica no v\u00e1lida + +ORA-17008=Conexi\u00f3n cerrada + +ORA-17009=Sentencia cerrada + +ORA-17010=Juego de resultados cerrado + +ORA-17011=Juego de resultados agotado + +ORA-17012=Conflicto de tipo de par\u00e1metro + +ORA-17014=No se ha llamado a ResultSet.next + +ORA-17015=Se ha cancelado la sentencia + +ORA-17016=Timeout de sentencia + +ORA-17017=Ya se ha inicializado el cursor + +ORA-17018=Cursor no v\u00e1lido + +ORA-17019=S\u00f3lo puede describir una consulta + +ORA-17020=Recuperaci\u00f3n previa de fila no v\u00e1lida + +ORA-17021=Faltan definiciones + +ORA-17022=Faltan definiciones en el \u00edndice + +ORA-17023=Funci\u00f3n no soportada + +ORA-17024=No hay lectura de datos + +ORA-17025=Error en defines.isNull () + +ORA-17026=Desbordamiento Num\u00e9rico + +ORA-17027=El flujo ya se ha cerrado + +ORA-17028=No se pueden realizar nuevas definiciones hasta que no se cierre el juego de resultados actual + +ORA-17029=setReadOnly: Conexiones de s\u00f3lo lectura no soportadas + +ORA-17030=READ_COMMITTED y SERIALIZABLE son los \u00fanicos niveles de transacci\u00f3n v\u00e1lidos + +ORA-17031=setAutoClose: S\u00f3lo soporta el modo de cierre autom\u00e1tico + +ORA-17032=no se puede definir la recuperaci\u00f3n previa de fila en cero + +ORA-17033=Cadena SQL92 con formato incorrecto en la posici\u00f3n + +ORA-17034=Elemento SQL92 no soportado en la posici\u00f3n + +ORA-17035=\u00a1\u00a1Juego de caracteres no soportado!! + +ORA-17036=excepci\u00f3n en OracleNumber + +ORA-17037=Fallo al convertir entre UTF8 y UCS2 + +ORA-17038=La matriz de bytes no es suficientemente larga + +ORA-17039=La matriz de caracteres no es suficientemente larga + +ORA-17040=El subprotocolo se debe especificar en la direcci\u00f3n URL de conexi\u00f3n + +ORA-17041=Falta el par\u00e1metro IN o OUT en el \u00edndice: + +ORA-17042=Valor de lote no v\u00e1lido + +ORA-17043=Tama\u00f1o m\u00e1ximo de flujo no v\u00e1lido + +ORA-17044=Error interno: No se ha asignado la matriz de datos + +ORA-17045=Error interno: Se ha intentado acceder a valores de enlace aparte del valor de lote + +ORA-17046=Error interno: \u00cdndice no v\u00e1lido para el acceso a los datos + +ORA-17047=Error en el an\u00e1lisis del descriptor de tipo + +ORA-17048=Tipo no definido + +ORA-17049=Tipos de objeto JAVA y SQL inconsistentes + +ORA-17050=no existe ese elemento en el vector + +ORA-17051=Esta API no se puede utilizar para tipos que no sean UDT + +ORA-17052=Esta referencia no es v\u00e1lida + +ORA-17053=El tama\u00f1o no es v\u00e1lido + +ORA-17054=El localizador LOB no es v\u00e1lido + +ORA-17055=Se ha encontrado un car\u00e1cter no v\u00e1lido en + +ORA-17056=Juego de caracteres no soportado + +ORA-17057=LOB cerrado + +ORA-17058=Error interno: Ratio de conversi\u00f3n NLS no v\u00e1lida + +ORA-17059=Fallo al convertir a representaci\u00f3n interna + +ORA-17060=Fallo al construir el descriptor + +ORA-17061=Falta el descriptor + +ORA-17062=El cursor de referencia no es v\u00e1lido + +ORA-17063=No est\u00e1 en una transacci\u00f3n + +ORA-17064=La sintaxis no es v\u00e1lida o el nombre de la base de datos es nulo + +ORA-17065=La clase de conversi\u00f3n es nula + +ORA-17066=Se necesita implementaci\u00f3n concreta del nivel de acceso + +ORA-17067=La direcci\u00f3n URL de Oracle especificada no es v\u00e1lida + +ORA-17068=Argumento(s) no v\u00e1lido(s) en la llamada + +ORA-17069=Utilizar llamada XA expl\u00edcita + +ORA-17070=El tama\u00f1o de los datos es mayor que el tama\u00f1o m\u00e1ximo para este tipo + +ORA-17071=Se ha excedido el l\u00edmite m\u00e1ximo de VARRAY + +ORA-17072=El valor insertado es demasiado largo para la columna + +ORA-17073=El manejador l\u00f3gico ya no es v\u00e1lido + +ORA-17074=patr\u00f3n de nombre no v\u00e1lido + +ORA-17075=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo reenv\u00edo + +ORA-17076=Operaci\u00f3n no v\u00e1lida para el juego de resultados de s\u00f3lo lectura + +ORA-17077=Fallo al definir el valor REF + +ORA-17078=No se puede realizar la operaci\u00f3n ya que las conexiones ya est\u00e1n abiertas + +ORA-17079=Las credenciales del usuario no coinciden con las existentes + +ORA-17080=comando por lotes no v\u00e1lido + +ORA-17081=se ha producido un error durante el procesamiento por lotes + +ORA-17082=No es la fila actual + +ORA-17083=No est\u00e1 en la fila de inserci\u00f3n + +ORA-17084=Llamada en la fila de inserci\u00f3n + +ORA-17085=Se ha producido un conflicto de valores + +ORA-17086=El valor de la columna no est\u00e1 definido en la fila de inserci\u00f3n + +ORA-17087=Indicaci\u00f3n de rendimiento ignorada: setFetchDirection() + +ORA-17088=Sintaxis no soportada para el tipo de juego de resultados y el nivel de simultaneidad solicitados +ORA-17089=error interno + +ORA-17090=operaci\u00f3n no permitida + +ORA-17091=No se puede crear el juego de resultados en el tipo y/o nivel de simultaneidad solicitados + +ORA-17092=Las sentencias JDBC no se pueden crear o ejecutar al final del procesamiento de la llamada + +ORA-17093=La operaci\u00f3n OCI ha devuelto OCI_SUCCESS_WITH_INFO + +ORA-17094=Las versiones de tipo de objeto no coinciden + +ORA-17095=No se ha definido el tama\u00f1o de la cach\u00e9 de sentencias + +ORA-17096=La cach\u00e9 de sentencias no se puede activar para esta conexi\u00f3n l\u00f3gica. + +ORA-17097=Tipo de elemento de tabla indexada PL/SQL no v\u00e1lido + +ORA-17098=Operaci\u00f3n LOB vac\u00eda no v\u00e1lida + +ORA-17099=Longitud de matriz de tabla indexada PL/SQL no v\u00e1lida + +ORA-17100=Objeto Java de la base de datos no v\u00e1lido + +ORA-17101=Propiedades no v\u00e1lidas del objeto del conjunto de conexiones de OCI + +ORA-17102=Bfile es de s\u00f3lo lectura + +ORA-17103=tipo de conexi\u00f3n no v\u00e1lido para volver mediante getConnection. En su lugar, utilice getJavaSqlConnection + +ORA-17104=La sentencia SQL de ejecuci\u00f3n no puede estar vac\u00eda ni ser nula + +ORA-17105=no se ha definido la zona horaria de la sesi\u00f3n de conexi\u00f3n + +ORA-17106=se ha especificado una configuraci\u00f3n de conjunto de conexiones de controlador JDBC-OCI no v\u00e1lida + +ORA-17107=el tipo de proxy especificado no es v\u00e1lido + +ORA-17108=No se ha especificado la longitud m\u00e1xima en defineColumnType + +ORA-17109=no se ha encontrado la codificaci\u00f3n de car\u00e1cter Java est\u00e1ndar + +ORA-17110=la ejecuci\u00f3n ha terminado con advertencias + +ORA-17111=Se ha especificado un timeout de TTL de cach\u00e9 de conexiones no v\u00e1lido + +ORA-17112=Se ha especificado un intervalo de thread no v\u00e1lido + +ORA-17113=El valor del intervalo de thread es mayor que el valor del timeout de cach\u00e9 + +ORA-17114=no se ha podido utilizar la validaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17115=no se ha podido utilizar el rollback de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17116=no se ha podido activar la validaci\u00f3n autom\u00e1tica en una transacci\u00f3n global activa + +ORA-17117=no se ha podido definir el punto de grabaci\u00f3n en una transacci\u00f3n global activa + +ORA-17118=no se ha podido obtener el identificador de un punto de grabaci\u00f3n denominado + +ORA-17119=no se ha podido obtener el nombre de un punto de grabaci\u00f3n no denominado + +ORA-17120=no se ha podido definir un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17121=no se ha podido realizar rollback en un punto de grabaci\u00f3n con la validaci\u00f3n autom\u00e1tica activada + +ORA-17122=no se ha podido realizar rollback en un punto de grabaci\u00f3n de transacci\u00f3n local en una transacci\u00f3n global + +ORA-17123=Se ha especificado un tama\u00f1o de cach\u00e9 de sentencias no v\u00e1lido + +ORA-17124=Se ha especificado un timout de inactividad de cach\u00e9 de conexi\u00f3n no v\u00e1lido + +ORA-17200=No se ha podido convertir correctamente la cadena de apertura de XA de Java a C + +ORA-17201=No se ha podido convertir correctamente la cadena de cierre de XA de Java a C + +ORA-17202=No se ha podido convertir correctamente el nombre de RM de Java a C + +ORA-17203=No se ha podido convertir el tipo de puntero a jlong + +ORA-17204=Matriz de entrada demasiado peque\u00f1a para contener los manejadores OCI + +ORA-17205=Fallo al obtener el manejador OCISvcCtx de C-XA mediante xaoSvcCtx + +ORA-17206=Fallo al obtener el manejador OCIEnv de C-XA mediante xaoEnv + +ORA-17207=No se ha definido la propiedad tnsEntry en el origen de datos + +ORA-17213=C-XA ha devuelto XAER_RMERR durante xa_open + +ORA-17215=C-XA ha devuelto XAER_INVAL durante xa_open + +ORA-17216=C-XA ha devuelto XAER_PROTO durante xa_open + +ORA-17233=C-XA ha devuelto XAER_RMERR durante xa_close + +ORA-17235=C-XA ha devuelto XAER_INVAL durante xa_close + +ORA-17236=C-XA ha devuelto XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violaci\u00f3n de protocolo + +ORA-17402=S\u00f3lo se espera un mensaje RPA + +ORA-17403=S\u00f3lo se espera un mensaje RXH + +ORA-17404=Se han recibido m\u00e1s RXD de los esperados + +ORA-17405=La longitud UAC no es cero + +ORA-17406=Se ha excedido la longitud m\u00e1xima del buffer + +ORA-17407=representaci\u00f3n de tipo (setRep) no v\u00e1lida + +ORA-17408=representaci\u00f3n de tipo (getRep) no v\u00e1lida + +ORA-17409=longitud de buffer no v\u00e1lida + +ORA-17410=No hay m\u00e1s datos para leer del socket + +ORA-17411=No coinciden las representaciones de Tipo de Dato + +ORA-17412=Longitud de tipo mayor que el m\u00e1ximo permitido + +ORA-17413=Se ha excedido el tama\u00f1o de la clave + +ORA-17414=Tama\u00f1o de buffer insuficiente para almacenar nombres de columnas + +ORA-17415=Este tipo no ha sido tratado + +ORA-17416=FATAL + +ORA-17417=Problema NLS, fallo al descodificar nombres de columna + +ORA-17418=Error interno de longitud de campo de la estructura + +ORA-17419=El sistema ha devuelto un n\u00famero de columnas no v\u00e1lido + +ORA-17420=No se ha definido la versi\u00f3n de Oracle + +ORA-17421=La conexi\u00f3n o los tipos no se han definido + +ORA-17422=Clase no v\u00e1lida en el tipo de objeto Factory + +ORA-17423=Se est\u00e1 utilizando un bloque PLSQL sin haber definido un IOV + +ORA-17424=Se est\u00e1 intentando realizar una operaci\u00f3n de canalizaci\u00f3n de datos entre sistemas diferente + +ORA-17425=Se est\u00e1 devolviendo un flujo en el bloque PLSQL + +ORA-17426=Los enlaces IN y OUT son NULL + +ORA-17427=Se est\u00e1 utilizando OAC no inicializado + +ORA-17428=Logon se debe llamar despu\u00e9s de Connect + +ORA-17429=Debe estar conectado al servidor + +ORA-17430=Debe estar conectado al servidor + +ORA-17431=La sentencia SQL que se va a analizar es nula + +ORA-17432=opciones no v\u00e1lidas en all7 + +ORA-17433=argumentos no v\u00e1lidos en la llamada + +ORA-17434=no est\u00e1 en modo de lectura/escritura continuo + +ORA-17435=n\u00famero no v\u00e1lido de in_out_binds en IOV + +ORA-17436=n\u00famero no v\u00e1lido de par\u00e1metros OUT + +ORA-17437=Error en el argumento o argumentos IN/OUT del bloque PLSQL + +ORA-17438=Error interno - Valor inesperado + +ORA-17439=Tipo SQL no v\u00e1lido + +ORA-17440=DBItem/DBType nulo + +ORA-17441=Versi\u00f3n de Oracle no soportada. La versi\u00f3n m\u00ednima soportada es la 7.2.3. + +ORA-17442=El valor del cursor de referencia no es v\u00e1lido + +ORA-17443=Usuario nulo o contrase\u00f1a no soportada en el controlador THIN + +ORA-17444=Versi\u00f3n no soportada del protocolo TTC recibido del servidor + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_fi.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_fi.properties new file mode 100644 index 0000000..61b978c --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_fi.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Sis\u00e4inen virhe + +ORA-17002=IO-poikkeus + +ORA-17003=Virheellinen sarakeindeksi + +ORA-17004=Virheellinen saraketyyppi + +ORA-17005=Saraketyyppi\u00e4 ei tueta + +ORA-17006=Virheellinen sarakkeen nimi + +ORA-17007=Virheellinen dynaaminen sarake + +ORA-17008=Suljettu yhteys + +ORA-17009=Suljettu lause + +ORA-17010=Suljettu tulosjoukko + +ORA-17011=Tulosjoukko t\u00e4ynn\u00e4 + +ORA-17012=Parametrityypin ristiriita + +ORA-17014=ResultSet.next-funktiota ei kutsuttu + +ORA-17015=Lause peruutettiin + +ORA-17016=Lause aikakatkaistiin + +ORA-17017=Kohdistin on jo alustettu + +ORA-17018=Virheellinen kohdistin + +ORA-17019=Voi vain kuvata kysely\u00e4 + +ORA-17020=Virheellinen rivin esihaku + +ORA-17021=M\u00e4\u00e4ritykset puuttuvat + +ORA-17022=M\u00e4\u00e4ritykset puuttuvat indeksist\u00e4 + +ORA-17023=Ominaisuutta ei tueta + +ORA-17024=Ei luettuja tietoja + +ORA-17025=Virhe: defines.isNull () + +ORA-17026=Numeerinen ylivuoto + +ORA-17027=Tietovirta on jo suljettu + +ORA-17028=Uusia m\u00e4\u00e4rityksi\u00e4 ei voi tehd\u00e4, ennen kuin nykyinen tulosjoukko on suljettu + +ORA-17029=setReadOnly: Vain luku -yhteyksi\u00e4 ei tueta + +ORA-17030=READ_COMMITTED ja SERIALIZABLE ovat ainoat sallitut tapahtumatasot + +ORA-17031=setAutoClose: Tuetaan vain Automaattinen sulkeminen -tilaa + +ORA-17032=rivin esihakuarvoa ei voi asettaa nollaksi + +ORA-17033=V\u00e4\u00e4r\u00e4nmuotoinen SQL92-merkkijono kohdassa + +ORA-17034=Ei-tuettu SQL92-merkki kohdassa + +ORA-17035=Merkist\u00f6\u00e4 ei tueta!! + +ORA-17036=poikkeus kohdassa OracleNumber + +ORA-17037=Muunto UTF8:n ja UCS2:n v\u00e4lill\u00e4 ei onnistunut + +ORA-17038=Tavutaulukko on liian lyhyt + +ORA-17039=Merkkitaulukko on liian lyhyt + +ORA-17040=Aliyhteysk\u00e4yt\u00e4nt\u00f6 on m\u00e4\u00e4ritett\u00e4v\u00e4 yhteyden URL:ia varten + +ORA-17041=Puuttuva IN- tai OUT-parametri indeksiss\u00e4: + +ORA-17042=Virheellinen er\u00e4n arvo + +ORA-17043=Virheellinen tietovirran enimm\u00e4iskoko + +ORA-17044=Sis\u00e4inen virhe: Datataulukkoa ei ole varattu + +ORA-17045=Sis\u00e4inen virhe: Er\u00e4n arvoa suurempia sidosarvoja ei voi k\u00e4ytt\u00e4\u00e4 + +ORA-17046=Sis\u00e4inen virhe: Virheellinen tietojen k\u00e4yt\u00f6n indeksi + +ORA-17047=Virhe tyyppikuvaajan j\u00e4sennyksess\u00e4 + +ORA-17048=M\u00e4\u00e4ritt\u00e4m\u00e4t\u00f6n tyyppi + +ORA-17049=Java- ja sql-objektityypit eiv\u00e4t ole yhdenmukaisia + +ORA-17050=vektorissa ei ole t\u00e4llaista elementti\u00e4 + +ORA-17051=T\u00e4t\u00e4 APIa ei voi k\u00e4ytt\u00e4\u00e4 muille kuin UDT-tyypeille + +ORA-17052=Virheellinen viite + +ORA-17053=Virheellinen koko + +ORA-17054=Virheellinen LOB-paikannin + +ORA-17055=Virheellinen merkki havaittu kohdassa + +ORA-17056=Merkist\u00f6\u00e4 ei tueta + +ORA-17057=Suljettu LOB + +ORA-17058=Sis\u00e4inen virhe: Virheellinen NLS-muuntosuhde + +ORA-17059=Sis\u00e4iseksi vastaavuudeksi muuntaminen ei onnistunut + +ORA-17060=Kuvaajan rakentaminen ei onnistunut + +ORA-17061=Puuttuva kuvaaja + +ORA-17062=Virheellinen viitekohdistin + +ORA-17063=Ei tapahtumassa + +ORA-17064=Virheellinen syntaksi tai tietokannan nimell\u00e4 on tyhj\u00e4 arvo + +ORA-17065=Muuntoluokalla on tyhj\u00e4 arvo + +ORA-17066=Tarvitaan k\u00e4ytt\u00f6oikeustasokohtainen toteutus + +ORA-17067=Virheellinen Oraclen URL-osoite + +ORA-17068=Virheellinen argumentti tai argumentteja kutsussa + +ORA-17069=K\u00e4yt\u00e4 omaa XA-kutsua + +ORA-17070=Tietojen koko on suurempi kuin t\u00e4m\u00e4n tyypin enimm\u00e4iskoko + +ORA-17071=VARRAY-enimm\u00e4israja on ylitetty + +ORA-17072=Lis\u00e4tty arvo liian suuri sarakkeeseen + +ORA-17073=Looginen kahva ei ole en\u00e4\u00e4 sallittu + +ORA-17074=virheellinen nimirakenne + +ORA-17075=Virheellinen toiminto vain eteenp\u00e4in suuntautuvassa tulosjoukossa + +ORA-17076=Virheellinen toiminto vain luku -tyyppisess\u00e4 tulosjoukossa + +ORA-17077=REF-arvoa ei voi asettaa + +ORA-17078=Toimintoa ei voi tehd\u00e4, sill\u00e4 yhteys on jo muodostettu + +ORA-17079=K\u00e4ytt\u00e4j\u00e4n valtuudet eiv\u00e4t vastaa olemassa olevia valtuuksia + +ORA-17080=virheellinen er\u00e4komento + +ORA-17081=virhe er\u00e4ajon aikana + +ORA-17082=Nykyist\u00e4 rivi\u00e4 ei ole + +ORA-17083=Ei lis\u00e4tt\u00e4v\u00e4ll\u00e4 rivill\u00e4 + +ORA-17084=Kutsuttiin lis\u00e4tt\u00e4v\u00e4\u00e4 rivi\u00e4 + +ORA-17085=Arvoristiriitoja + +ORA-17086=M\u00e4\u00e4ritt\u00e4m\u00e4t\u00f6n sarakkeen arvo lis\u00e4tt\u00e4v\u00e4ll\u00e4 rivill\u00e4 + +ORA-17087=Suorityskykyvihje ohitettiin: setFetchDirection() + +ORA-17088=Syntaksia ei tueta pyydetylle tulosjoukkotyypille ja tausta-ajotasolle +ORA-17089=sis\u00e4inen virhe + +ORA-17090=toiminto ei ole sallittu + +ORA-17091=Tulosjoukkoa ei voi luoda pyydetyss\u00e4 tyypiss\u00e4 ja/tai tausta-ajotasossa + +ORA-17092=JDBC-lauseita ei voi luoda tai k\u00e4sitell\u00e4 kutsuprosessin lopussa + +ORA-17093=OCI-operaatio palautti OCI_SUCCESS_WITH_INFO + +ORA-17094=Objektityypin versiot eiv\u00e4t ole yhteensopivia + +ORA-17095=Lausev\u00e4limuistin kokoa ei ole m\u00e4\u00e4ritetty + +ORA-17096=Lauseen v\u00e4limuistiin tallennusta ei voi ottaa k\u00e4ytt\u00f6\u00f6n t\u00e4m\u00e4n loogisen yhteyden yhteydess\u00e4. + +ORA-17097=Virheellinen PL/SQL-indeksitaulun elementtityyppi + +ORA-17098=Virheellinen tyhj\u00e4 lob-operaatio + +ORA-17099=Virheellinen PL/SQL-indeksitaulun taulukon pituus + +ORA-17100=Virheellinen tietokannan Java-objekti + +ORA-17101=Virheelliset ominaisuudet OCI-yhteysvaranto-objektissa + +ORA-17102=Kohdetta Bfile voi vain lukea + +ORA-17103=virheellinen yhteystyyppi getConnection. K\u00e4yt\u00e4 getJavaSqlConnection-rutiinia + +ORA-17104=suoritettava SQL-lause ei voi olla tyhj\u00e4 tai nolla + +ORA-17105=yhteydenottoistunnon aikavy\u00f6hykett\u00e4 ei m\u00e4\u00e4ritetty + +ORA-17106=m\u00e4\u00e4ritettiin virheellinen JDBC-OCI-ohjainyhteysvarannon kokoonpano + +ORA-17107=m\u00e4\u00e4ritettiin virheellinen v\u00e4lipalvelintyyppi + +ORA-17108=Kohteessa defineColumnType ei ole m\u00e4\u00e4ritetty enimm\u00e4ispituutta + +ORA-17109=Java-vakiomerkkikoodausta ei l\u00f6ydy + +ORA-17110=suoritus valmis, aiheutti varoituksen + +ORA-17111=M\u00e4\u00e4ritettiin virheellinen yhteysv\u00e4limuistin TTL-aikakatkaisu + +ORA-17112=M\u00e4\u00e4ritettiin virheellinen s\u00e4iev\u00e4li + +ORA-17113=S\u00e4ikeen v\u00e4lin arvo on suurempi kuin v\u00e4limuistin aikakatkaisuarvo + +ORA-17114=paikallisen tapahtuman vahvistusta ei voi k\u00e4ytt\u00e4\u00e4 yleisess\u00e4 tapahtumassa + +ORA-17115=paikallisen tapahtuman peruutusta ei voi k\u00e4ytt\u00e4\u00e4 yleisess\u00e4 tapahtumassa + +ORA-17116=automaattista vahvistusta ei voi ottaa k\u00e4ytt\u00f6\u00f6n aktiivisessa yleisess\u00e4 tapahtumassa + +ORA-17117=tallennuspistett\u00e4 ei voi asettaa aktiivisessa yleisess\u00e4 tapahtumassa + +ORA-17118=nimetyn tallennuspisteen tunnistetta ei voi hakea + +ORA-17119=nimett\u00f6m\u00e4n tallennuspisteen nime\u00e4 ei voi hakea + +ORA-17120=tallennuspistett\u00e4 ei voi m\u00e4\u00e4ritt\u00e4\u00e4, kun automaattinen vahvistus on k\u00e4yt\u00f6ss\u00e4 + +ORA-17121=tallennuspisteeseen ei voi peruuttaa, kun automaattinen vahvistus on k\u00e4yt\u00f6ss\u00e4 + +ORA-17122=paikalliseen txn-tallennuspisteeseen ei voi peruuttaa yleisess\u00e4 tapahtumassa + +ORA-17123=M\u00e4\u00e4ritettiin virheellinen lausev\u00e4limuistin koko + +ORA-17124=M\u00e4\u00e4ritettiin virheellinen yhteysv\u00e4limuistin toimettomuuden aikakatkaisu + +ORA-17200=XA-avausmerkkijonoa ei voi muuntaa oikein Javasta C:hen + +ORA-17201=XA-sulkemismerkkijonoa ei voi muuntaa oikein Javasta C:hen + +ORA-17202=RM-nime\u00e4 ei voi muuntaa oikein Javasta C:hen + +ORA-17203=Osoitintyyppi\u00e4 ei voi muuntaa jlong-tyypiksi + +ORA-17204=Sy\u00f6tetaulukko on liian lyhyt OCI-kahvojen pit\u00e4miseen + +ORA-17205=OCISvcCtx-kahvan nouto C-XA:sta k\u00e4ytt\u00e4m\u00e4ll\u00e4 xaoSvcCtx:\u00e4\u00e4 ei onnistunut + +ORA-17206=OCIEnv-kahvan nouto C-XA:sta k\u00e4ytt\u00e4m\u00e4ll\u00e4 xaoEnv:i\u00e4 ei onnistunut + +ORA-17207=Ominaisuutta tnsEntry ei m\u00e4\u00e4ritetty kohteessa DataSource + +ORA-17213=C-XA palautti xa_open-rutiinin aikana XAER_RMERR-arvon + +ORA-17215=C-XA palautti xa_open-rutiinin aikana XAER_INVAL-arvon + +ORA-17216=C-XA palautti xa_open-rutiinin aikana XAER_PROTO-arvon + +ORA-17233=C-XA palautti xa_close-rutiinin aikana XAER_RMERR-arvon + +ORA-17235=C-XA palautti xa_close-rutiinin aikana XAER_INVAL-arvon + +ORA-17236=C-XA palautti xa_close-rutiinin aikana XAER_PROTO-arvon + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Yhteysk\u00e4yt\u00e4nt\u00f6virhe + +ORA-17402=Vain yht\u00e4 RPA-sanomaa odotetaan + +ORA-17403=Vain yht\u00e4 RXH-sanomaa odotetaan + +ORA-17404=Vastaanotettu odotettua useampia RXD:it\u00e4 + +ORA-17405=UAC:n pituus ei ole nolla + +ORA-17406=Puskurin enimm\u00e4ispituus ylittyy + +ORA-17407=virheellinen Type Representation(setRep) + +ORA-17408=virheellinen Type Representation(getRep) + +ORA-17409=virheellinen puskurin pituus + +ORA-17410=Vastakkeessa ei en\u00e4\u00e4 luettavia tietoja + +ORA-17411=Tietotyyppien vastaavuusvirhe + +ORA-17412=Tyypin pituus ylitt\u00e4\u00e4 enimm\u00e4ispituuden + +ORA-17413=Avaimen koko ylittyy + +ORA-17414=Puskurin koko ei riit\u00e4 sarakkeiden nimien tallentamiseen + +ORA-17415=T\u00e4t\u00e4 tyyppi\u00e4 ei ole k\u00e4sitelty + +ORA-17416=FATAL + +ORA-17417=NLS-ongelma, sarakkeiden nimien tulkinta ep\u00e4onnistui + +ORA-17418=Sis\u00e4isen rakenteen kent\u00e4n pituusvirhe + +ORA-17419=Virheellinen sarakkeiden m\u00e4\u00e4r\u00e4 palautettu + +ORA-17420=Oraclen versiota ei m\u00e4\u00e4ritetty + +ORA-17421=Tyyppej\u00e4 tai yhteytt\u00e4 ei m\u00e4\u00e4ritetty + +ORA-17422=Virheellinen luokka factory-objektityypiss\u00e4 + +ORA-17423=PLSQL-lohkoa k\u00e4ytet\u00e4\u00e4n ilman IOV-m\u00e4\u00e4rityst\u00e4 + +ORA-17424=Yritet\u00e4\u00e4n toista j\u00e4rjestelytoimintoa + +ORA-17425=PLSQL-lohkon tietovirta palautetaan + +ORA-17426=Sek\u00e4 IN- ett\u00e4 OUT-sidosten arvo on tyhj\u00e4 (NULL) + +ORA-17427=Alustamaton OAC k\u00e4yt\u00f6ss\u00e4 + +ORA-17428=Yhteyden j\u00e4lkeen on kutsuttava sis\u00e4\u00e4nkirjautumista + +ORA-17429=Ainakin palvelimeen on oltava yhteydess\u00e4 + +ORA-17430=Palvelimeen on oltava kirjautuneena + +ORA-17431=J\u00e4sennett\u00e4v\u00e4 SQL-lause on tyhj\u00e4 + +ORA-17432=virheelliset valinnat All7:ss\u00e4 + +ORA-17433=kutsussa virheellisi\u00e4 argumentteja + +ORA-17434=ei tietovirtatilassa + +ORA-17435=virheellinen m\u00e4\u00e4r\u00e4 in_out_binds-sidoksia IOV:ssa + +ORA-17436=virheellinen m\u00e4\u00e4r\u00e4 Out-sidoksia + +ORA-17437=Virhe PLSQL-lohkon IN/OUT-argument(e)issa + +ORA-17438=Sis\u00e4inen - Odottamaton arvo + +ORA-17439=Virheellinen SQL-tyyppi + +ORA-17440=DBItem/DBType on tyhj\u00e4 (NULL) + +ORA-17441=Oraclen versiota ei tueta. Vanhin tuettu versio on 7.2.3. + +ORA-17442=Virheellinen viitekohdistimen arvo + +ORA-17443=THIN-ohjain ei tue k\u00e4ytt\u00e4j\u00e4tunnuksen tai salasanan tyhj\u00e4\u00e4 arvoa + +ORA-17444=Palvelimelta vastaanotettua TTC-yhteysk\u00e4yt\u00e4nn\u00f6n versiota ei tueta + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_fr.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_fr.properties new file mode 100644 index 0000000..471a3db --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_fr.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Erreur interne + +ORA-17002=Exception d\'E/S + +ORA-17003=Index de colonne non valide + +ORA-17004=Type de colonne non valide + +ORA-17005=Type de colonne non pris en charge + +ORA-17006=Nom de colonne non valide + +ORA-17007=Colonne dynamique non valide + +ORA-17008=Connexion interrompue + +ORA-17009=Instruction ferm\u00e9e + +ORA-17010=Ensemble de r\u00e9sultats ferm\u00e9 + +ORA-17011=Ensemble de r\u00e9sultats \u00e9puis\u00e9 + +ORA-17012=Conflit de type de param\u00e8tre + +ORA-17014=ResultSet.next n\'a pas \u00e9t\u00e9 appel\u00e9 + +ORA-17015=Instruction annul\u00e9e + +ORA-17016=D\u00e9lai de l\'instruction d\u00e9pass\u00e9 + +ORA-17017=Curseur d\u00e9j\u00e0 initialis\u00e9 + +ORA-17018=Curseur non valide + +ORA-17019=Peut uniquement d\u00e9crire une interrogation + +ORA-17020=Pr\u00e9-extraction de ligne non valide + +ORA-17021=D\u00e9finitions manquantes + +ORA-17022=D\u00e9finitions manquantes dans l\'index + +ORA-17023=Fonction non prise en charge + +ORA-17024=Aucune donn\u00e9e n\'a \u00e9t\u00e9 lue + +ORA-17025=Erreur dans defines.isNull () + +ORA-17026=D\u00e9passement num\u00e9rique + +ORA-17027=Le flux de donn\u00e9es est d\u00e9j\u00e0 ferm\u00e9 + +ORA-17028=Nouvelles d\u00e9finitions impossibles avant la fermeture de l\'ensemble de r\u00e9sultats courant + +ORA-17029=setReadOnly: connexions en lecture seule non prises en charge + +ORA-17030=READ_COMMITTED et SERIALIZABLE sont les seuls niveaux de transaction valides + +ORA-17031=setAutoClose: ne prend en charge que le mode auto close on + +ORA-17032=impossible de d\u00e9finir la pr\u00e9-extraction de ligne \u00e0 z\u00e9ro + +ORA-17033=Cha\u00eene SQL92 mal formul\u00e9e \u00e0 l\'emplacement + +ORA-17034=Token SQL92 non pris en charge \u00e0 l\'emplacement + +ORA-17035=Jeu de caract\u00e8res non pris en charge + +ORA-17036=exception dans OracleNumber + +ORA-17037=Echec de conversion entre UTF8 et UCS2 + +ORA-17038=Tableau d\'octets trop court + +ORA-17039=Tableau de caract\u00e8res trop court + +ORA-17040=Le sous-protocole doit \u00eatre pr\u00e9cis\u00e9 dans l\'URL de la connexion + +ORA-17041=Param\u00e8tre IN ou OUT absent dans l\'index : + +ORA-17042=Valeur de lot non valide + +ORA-17043=Taille maximale du flux de donn\u00e9es non valide + +ORA-17044=Erreur interne : tableau de donn\u00e9es non allou\u00e9 + +ORA-17045=Erreur interne : tentative d\'acc\u00e8s \u00e0 des valeurs de lien sup\u00e9rieures \u00e0 la valeur de lot + +ORA-17046=Erreur interne : index non valide pour l\'acc\u00e8s aux donn\u00e9es + +ORA-17047=Erreur dans l\'analyse du descripteur de type + +ORA-17048=Type non d\u00e9termin\u00e9 + +ORA-17049=Types d\'objet JAVA et SQL incoh\u00e9rents + +ORA-17050=\u00e9l\u00e9ment inexistant dans le vecteur + +ORA-17051=Cette API ne peut pas \u00eatre utilis\u00e9e pour les types autres que UDT + +ORA-17052=R\u00e9f\u00e9rence non valide + +ORA-17053=Taille non valide + +ORA-17054=Indicateur LOB non valide + +ORA-17055=Caract\u00e8re non valide rencontr\u00e9 dans + +ORA-17056=Jeu de caract\u00e8res non pris en charge + +ORA-17057=LOB ferm\u00e9 + +ORA-17058=Erreur interne : taux de conversion NLS non valide + +ORA-17059=Echec de conversion dans la repr\u00e9sentation interne + +ORA-17060=Echec de construction du descripteur + +ORA-17061=Descripteur absent + +ORA-17062=Curseur REF non valide + +ORA-17063=Pas dans une transaction + +ORA-17064=La syntaxe n\'est pas valide ou le nom de la base de donn\u00e9es est NULL + +ORA-17065=La classe de conversion a la valeur NULL + +ORA-17066=N\u00e9cessite une mise en oeuvre sp\u00e9cifique \u00e0 la couche d\'acc\u00e8s + +ORA-17067=L\'URL Oracle indiqu\u00e9e n\'est pas valide + +ORA-17068=Arguments non valides dans l\'appel + +ORA-17069=Utiliser un appel XA explicite + +ORA-17070=La taille des donn\u00e9es est sup\u00e9rieure \u00e0 la taille max. pour ce type + +ORA-17071=Limite VARRAY maximale d\u00e9pass\u00e9e + +ORA-17072=La valeur ins\u00e9r\u00e9e est trop grande pour la colonne + +ORA-17073=Le descripteur logique n\'est plus valide + +ORA-17074=Le mod\u00e8le de nom n\'est pas valide + +ORA-17075=Op\u00e9ration non valide sur un ensemble de r\u00e9sultats de type forward-only + +ORA-17076=Op\u00e9ration non valide sur un ensemble de r\u00e9sultats de type read-only + +ORA-17077=Echec de la d\u00e9finition de la valeur REF + +ORA-17078=Impossible d\'effectuer l\'op\u00e9ration car des connexions sont d\u00e9j\u00e0 ouvertes + +ORA-17079=Les informations d\'identification et de connexion de l\'utilisateur ne correspondent pas \u00e0 celles existantes + +ORA-17080=commande par lot non valide + +ORA-17081=erreur pendant le traitement par lots + +ORA-17082=Aucune ligne en cours + +ORA-17083=Pas sur la ligne d\'insertion + +ORA-17084=Appel\u00e9 sur la ligne d\'insertion + +ORA-17085=Un conflit de valeur s\'est produit + +ORA-17086=Valeur de colonne non d\u00e9finie sur la ligne d\'insertion + +ORA-17087=Conseil de performance ignor\u00e9 : setFetchDirection() + +ORA-17088=Syntaxe non prise en charge pour le type d\'ensemble de r\u00e9sultats et le niveau de simultan\u00e9it\u00e9 requis +ORA-17089=erreur interne + +ORA-17090=op\u00e9ration interdite + +ORA-17091=Impossible de cr\u00e9er un ensemble de r\u00e9sultats avec le type et/ou le niveau de simultan\u00e9it\u00e9 requis + +ORA-17092=Impossible de cr\u00e9er ou d\'ex\u00e9cuter des instructions JDBC \u00e0 la fin du traitement d\'appel + +ORA-17093=L\'op\u00e9ration OCI a renvoy\u00e9 OCI_SUCCESS_WITH_INFO + +ORA-17094=Non-concordance de la version de type d\'objet + +ORA-17095=La taille du cache d'instruction n'a pas \u00e9t\u00e9 d\u00e9fini + +ORA-17096=La mise en m\u00e9moire cache d\'instruction ne peut pas \u00eatre activ\u00e9e pour cette connexion logique. + +ORA-17097=Type d\'\u00e9l\u00e9ment de table d\'index PL/SQL non valide + +ORA-17098=Op\u00e9ration LOB vide non valide + +ORA-17099=Longueur de tableau de table d\'index PL/SQL non valide + +ORA-17100=Objet Java de base de donn\u00e9es non valide + +ORA-17101=Propri\u00e9t\u00e9s non valides dans l\'objet de pool de connexions OCI + +ORA-17102=Le fichier BFILE est en lecture seule + +ORA-17103=type de connexion non valide \u00e0 renvoyer via getConnection. Utilisez getJavaSqlConnection \u00e0 la place + +ORA-17104=L\'instruction SQL \u00e0 ex\u00e9cuter ne peut \u00eatre ni vide ni null + +ORA-17105=fuseau horaire de la session de connexion non d\u00e9fini + +ORA-17106=La configuration de pool de connexions de pilote JDBC-OCI indiqu\u00e9e n'est pas valide + +ORA-17107=Type proxy indiqu\u00e9 non valide + +ORA-17108=Aucune longueur max. indiqu\u00e9e dans defineColumnType + +ORA-17109=encodage de caract\u00e8res Java standard introuvable + +ORA-17110=ex\u00e9cution termin\u00e9e avec avertissement + +ORA-17111=Le d\u00e9lai de temporisation de cache de connexion TTL indiqu\u00e9 n'est pas valide + +ORA-17112=L'intervalle de thread indiqu\u00e9 n'est pas valide + +ORA-17113=La valeur de l'intervalle de thread est sup\u00e9rieure \u00e0 la valeur de temporisation du cache + +ORA-17114=impossible d'utiliser une validation (commit) de transaction locale dans une transaction globale + +ORA-17115=impossible d'utiliser une annulation (rollback) de transaction locale dans une transaction globale + +ORA-17116=impossible d'activer le mode autocommit dans une transaction globale active + +ORA-17117=impossible de d\u00e9finir un savepoint dans une transaction globale active + +ORA-17118=impossible d'obtenir l'ID d'un savepoint nomm\u00e9 + +ORA-17119=impossible d'obtenir le nom d'un savepoint sans nom + +ORA-17120=impossible de d\u00e9finir un savepoint lorsque le mode autocommit est activ\u00e9 + +ORA-17121=impossible d'annuler (rollback) un savepoint lorsque le mode autocommit est activ\u00e9 + +ORA-17122=impossible d'annuler (rollback) un savepoint de transaction locale dans une transaction globale + +ORA-17123=La taille de cache d'instruction indiqu\u00e9e n'est pas valide + +ORA-17124=Le d\u00e9lai d'inactivit\u00e9 de cache de connexion indiqu\u00e9 n'est pas valide + +ORA-17200=Impossible de convertir correctement la cha\u00eene XA open de Java en C + +ORA-17201=Impossible de convertir correctement la cha\u00eene de XA close de Java en C + +ORA-17202=Impossible de convertir correctement le nom RM de Java en C + +ORA-17203=Impossible de convertir le type de pointeur en jlong + +ORA-17204=Tableau d\'entr\u00e9e trop court pour contenir les descripteurs OCI + +ORA-17205=Echec d\'obtention du descripteur OCISvcCtx \u00e0 partir de C-XA \u00e0 l\'aide de xaoSvcCtx + +ORA-17206=Echec d\'obtention du descripteur OCIEnv \u00e0 partir de C-XA \u00e0 l\'aide de xaoEnv + +ORA-17207=La propri\u00e9t\u00e9 tnsEntry n\'a pas \u00e9t\u00e9 d\u00e9finie dans la source de donn\u00e9es + +ORA-17213=C-XA a renvoy\u00e9 XAER_RMERR au cours de xa_open + +ORA-17215=C-XA a renvoy\u00e9 XAER_INVAL au cours de xa_open + +ORA-17216=C-XA a renvoy\u00e9 XAER_PROTO au cours de xa_open + +ORA-17233=C-XA a renvoy\u00e9 XAER_RMERR au cours de xa_close + +ORA-17235=C-XA a renvoy\u00e9 XAER_INVAL au cours de xa_close + +ORA-17236=C-XA a renvoy\u00e9 XAER_PROTO au cours de xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violation de protocole + +ORA-17402=Un seul message RPA est attendu + +ORA-17403=Un seul message RXH est attendu + +ORA-17404=Plus de messages RXD re\u00e7us que pr\u00e9vu + +ORA-17405=La longueur UAC n\'est pas \u00e9gale \u00e0 z\u00e9ro + +ORA-17406=D\u00e9passement de la taille maximale du tampon + +ORA-17407=repr\u00e9sentation de type (setRep) non valide + +ORA-17408=repr\u00e9sentation de type (getRep) non valide + +ORA-17409=taille de tampon non valide + +ORA-17410=Il n\'y a plus de donn\u00e9es \u00e0 lire dans le socket + +ORA-17411=Non-concordance des repr\u00e9sentations de type de donn\u00e9es + +ORA-17412=La longueur du type est sup\u00e9rieure \u00e0 la valeur maximale + +ORA-17413=D\u00e9passement de la taille de la cl\u00e9 + +ORA-17414=Taille de tampon insuffisante pour le stockage des noms de colonnes + +ORA-17415=Ce type n\'a pas \u00e9t\u00e9 g\u00e9r\u00e9 + +ORA-17416=FATAL + +ORA-17417=Probl\u00e8me NLS, \u00e9chec de d\u00e9codage des noms de colonne + +ORA-17418=Erreur de longueur de champ de la structure interne + +ORA-17419=Nombre de colonnes renvoy\u00e9 non valide + +ORA-17420=Version d\'Oracle non d\u00e9finie + +ORA-17421=Connexion ou types non d\u00e9finis + +ORA-17422=Classe non valide dans l\'objet COM cr\u00e9ateur de classes + +ORA-17423=Utilisation d\'un bloc PLSQL sans d\u00e9finition d\'IOV + +ORA-17424=Tentative de r\u00e9alisation d\'une autre op\u00e9ration de conversion et de canalisation du flux de donn\u00e9es + +ORA-17425=Renvoi d\'une cha\u00eene dans le bloc PLSQL + +ORA-17426=Les liens IN et OUT ont la valeur NULL + +ORA-17427=Utilisation d\'une OAC non initialis\u00e9e + +ORA-17428=La commande Logon doit \u00eatre appel\u00e9e apr\u00e8s la connexion + +ORA-17429=Doit \u00eatre au moins connect\u00e9 au serveur + +ORA-17430=Doit \u00eatre connect\u00e9 au serveur + +ORA-17431=L\'instruction SQL \u00e0 analyser a la valeur NULL + +ORA-17432=options non valides dans all7 + +ORA-17433=arguments non valides dans l\'appel + +ORA-17434=mode d\'\u00e9criture en continu non activ\u00e9 + +ORA-17435=nombre de in_out_binds dans IOV non valide + +ORA-17436=nombre incorrect de liens outbinds + +ORA-17437=Erreur dans les arguments IN/OUT du bloc PLSQL + +ORA-17438=Interne - Valeur inattendue + +ORA-17439=Type SQL non valide + +ORA-17440=DBItem/DBType a la valeur NULL + +ORA-17441=Version d\'Oracle non prise en charge. La premi\u00e8re version support\u00e9e est la 7.2.3. + +ORA-17442=Valeur de Refcursor non valide + +ORA-17443=Utilisateur ou mot de passe NULL non pris en charge par le pilote THIN + +ORA-17444=La version de protocole TTC re\u00e7ue du serveur n\'est pas prise en charge + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_hu.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_hu.properties new file mode 100644 index 0000000..74e5424 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_hu.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Bels\u0151 hiba + +ORA-17002=Io kiv\u00e9tel + +ORA-17003=\u00c9rv\u00e9nytelen oszlopindex + +ORA-17004=\u00c9rv\u00e9nytelen oszlopt\u00edpus + +ORA-17005=Nem t\u00e1mogatott oszlopt\u00edpus + +ORA-17006=\u00c9rv\u00e9nytelen oszlopn\u00e9v + +ORA-17007=\u00c9rv\u00e9nytelen dinamikus oszlop + +ORA-17008=Bez\u00e1rt kapcsolat + +ORA-17009=Bez\u00e1rt utas\u00edt\u00e1s + +ORA-17010=Bez\u00e1rt eredm\u00e9nyhalmaz + +ORA-17011=Kimer\u00fclt eredm\u00e9nyhalmaz + +ORA-17012=Param\u00e9tert\u00edpus-\u00fctk\u00f6z\u00e9s + +ORA-17014=A ResultSet.next nem ker\u00fclt megh\u00edv\u00e1sra. + +ORA-17015=Az utas\u00edt\u00e1s v\u00e9grehajt\u00e1sa meg lett szak\u00edtva. + +ORA-17016=Az utas\u00edt\u00e1s v\u00e9grehajt\u00e1sa id\u0151t\u00fall\u00e9p\u00e9s miatt meg lett szak\u00edtva. + +ORA-17017=A kurzor m\u00e1r inicializ\u00e1lva van. + +ORA-17018=\u00c9rv\u00e9nytelen kurzor. + +ORA-17019=Csak lek\u00e9rdez\u00e9s \u00edrhat\u00f3 le. + +ORA-17020=\u00c9rv\u00e9nytelen az el\u0151re behozott sorok sz\u00e1ma. + +ORA-17021=Hi\u00e1nyz\u00f3 defin\u00edci\u00f3k + +ORA-17022=Hi\u00e1nyz\u00f3 defin\u00edci\u00f3k a k\u00f6vetkez\u0151 indexn\u00e9l: + +ORA-17023=Nem t\u00e1mogatott tulajdons\u00e1g + +ORA-17024=Nem ker\u00fclt beolvas\u00e1sra adat. + +ORA-17025=Hiba a k\u00f6vetkez\u0151ben: defines.isNull (). + +ORA-17026=Numerikus t\u00falcsordul\u00e1s + +ORA-17027=Az adatfolyam m\u00e1r le van z\u00e1rva. + +ORA-17028=Nem lehet \u00faj defin\u00edci\u00f3t megadni, am\u00edg az aktu\u00e1lis eredm\u00e9nyhalmaz (ResultSet) nincs lez\u00e1rva. + +ORA-17029=setReadOnly: a csak olvashat\u00f3 kapcsolatok nem t\u00e1mogatottak. + +ORA-17030=Csak READ_COMMITTED \u00e9s SERIALIZABLE adhat\u00f3 meg \u00e9rv\u00e9nyes tranzakci\u00f3szintk\u00e9nt. + +ORA-17031=setAutoClose: csak az automatikus bez\u00e1r\u00e1si m\u00f3d bekapcsolt \u00e1llapota haszn\u00e1lhat\u00f3. + +ORA-17032=az el\u0151re behozott sorok sz\u00e1ma nem lehet nulla. + +ORA-17033=Helytelen form\u00e1j\u00fa SQL92 karakterl\u00e1nc a k\u00f6vetkez\u0151 helyen: + +ORA-17034=Nem t\u00e1mogatott SQL92 token a k\u00f6vetkez\u0151 helyen: + +ORA-17035=Nem t\u00e1mogatott karakterk\u00e9szlet. + +ORA-17036=kiv\u00e9tel az OracleNumber elemben + +ORA-17037=Sikertelen a konvert\u00e1l\u00e1s UTF8 \u00e9s UCS2 k\u00f6z\u00f6tt. + +ORA-17038=A b\u00e1jtt\u00f6mb nem el\u00e9g hossz\u00fa. + +ORA-17039=A karaktert\u00f6mb nem el\u00e9g hossz\u00fa. + +ORA-17040=Az alprotokollt meg kell adni a kapcsol\u00f3d\u00e1si URL c\u00edmben. + +ORA-17041=Hi\u00e1nyz\u00f3 IN vagy OUT param\u00e9ter a k\u00f6vetkez\u0151 indexn\u00e9l: + +ORA-17042=\u00c9rv\u00e9nytelen k\u00f6teg\u00e9rt\u00e9k + +ORA-17043=\u00c9rv\u00e9nytelen az adatfolyam maxim\u00e1lis m\u00e9rete. + +ORA-17044=Bels\u0151 hiba: az adatt\u00f6mb helye nincs lefoglalva. + +ORA-17045=Bels\u0151 hiba: a k\u00f6teg\u00e9rt\u00e9ken t\u00fali k\u00f6t\u00e9si \u00e9rt\u00e9kek el\u00e9r\u00e9s\u00e9re t\u00f6rt\u00e9nt k\u00eds\u00e9rlet. + +ORA-17046=Bels\u0151 hiba: \u00e9rv\u00e9nytelen index az adathozz\u00e1f\u00e9r\u00e9shez. + +ORA-17047=Hiba t\u00f6rt\u00e9nt a t\u00edpusle\u00edr\u00f3 elemz\u00e9se k\u00f6zben. + +ORA-17048=Nem defini\u00e1lt t\u00edpus. + +ORA-17049=Nem \u00f6sszeill\u0151 java \u00e9s sql objektumt\u00edpusok. + +ORA-17050=nincs ilyen elem a vektort\u00f6mbben. + +ORA-17051=Ez az API nem haszn\u00e1lhat\u00f3 nem UDT t\u00edpusokhoz. + +ORA-17052=Ez a hivatkoz\u00e1s nem \u00e9rv\u00e9nyes. + +ORA-17053=A m\u00e9ret nem \u00e9rv\u00e9nyes. + +ORA-17054=A LOB helymeghat\u00e1roz\u00f3ja nem \u00e9rv\u00e9nyes. + +ORA-17055=\u00c9rv\u00e9nytelen karakter a k\u00f6vetkez\u0151 helyen: + +ORA-17056=Nem t\u00e1mogatott karakterk\u00e9szlet, + +ORA-17057=Bez\u00e1rt LOB + +ORA-17058=Bels\u0151 hiba: \u00e9rv\u00e9nytelen NLS konverzi\u00f3s ar\u00e1ny. + +ORA-17059=A bels\u0151 \u00e1br\u00e1zol\u00e1sm\u00f3dra val\u00f3 konverzi\u00f3 sikertelen volt. + +ORA-17060=A le\u00edr\u00f3 l\u00e9trehoz\u00e1sa sikertelen volt. + +ORA-17061=Hi\u00e1nyz\u00f3 le\u00edr\u00f3 + +ORA-17062=A hivatkoz\u00e1si kurzor \u00e9rv\u00e9nytelen. + +ORA-17063=Nem szerepel tranzakci\u00f3ban. + +ORA-17064=\u00c9rv\u00e9nytelen szintaxis vagy \u00fcres adatb\u00e1zisn\u00e9v. + +ORA-17065=\u00dcres konverzi\u00f3s oszt\u00e1ly. + +ORA-17066=A hozz\u00e1f\u00e9r\u00e9si r\u00e9tegre jellemz\u0151 implement\u00e1l\u00e1s sz\u00fcks\u00e9ges. + +ORA-17067=\u00c9rv\u00e9nytelen a megadott Oracle URL. + +ORA-17068=\u00c9rv\u00e9nytelen argumentumok a h\u00edv\u00e1s(ok)ban. + +ORA-17069=Explicit XA h\u00edv\u00e1st kell haszn\u00e1lni. + +ORA-17070=Az adatm\u00e9ret nagyobb a t\u00edpusra enged\u00e9lyezett legnagyobb m\u00e9retn\u00e9l. + +ORA-17071=T\u00fall\u00e9pte a VARRAY fels\u0151 hat\u00e1r\u00e1t. + +ORA-17072=A beillesztett \u00e9rt\u00e9k t\u00fal nagy az oszlop sz\u00e1m\u00e1ra. + +ORA-17073=Ez a logikai kezel\u0151 m\u00e1r nem \u00e9rv\u00e9nyes. + +ORA-17074=\u00e9rv\u00e9nytelen n\u00e9vminta + +ORA-17075=\u00c9rv\u00e9nytelen m\u0171velet a csak tov\u00e1bb\u00edthat\u00f3 eredm\u00e9nyk\u00e9szlethez. + +ORA-17076=\u00c9rv\u00e9nytelen m\u0171velet a csak olvashat\u00f3 eredm\u00e9nyk\u00e9szlethez. + +ORA-17077=A REF \u00e9rt\u00e9k be\u00e1ll\u00edt\u00e1sa nem siker\u00fclt. + +ORA-17078=A m\u0171velet nem hajthat\u00f3 v\u00e9gre, mert a kapcsolatok m\u00e1r meg vannak nyitva. + +ORA-17079=A felhaszn\u00e1l\u00f3i azonos\u00edt\u00f3 \u00e9s jelsz\u00f3 nem egyezik a l\u00e9tez\u0151kkel. + +ORA-17080=\u00e9rv\u00e9nytelen k\u00f6tegparancs + +ORA-17081=hiba t\u00f6rt\u00e9nt a k\u00f6tegel\u00e9s sor\u00e1n + +ORA-17082=Nincs aktu\u00e1lis sor. + +ORA-17083=Nincs a beilleszt\u00e9si sorban. + +ORA-17084=H\u00edv\u00e1s \u00e9rkezett a beilleszt\u00e9si sorra. + +ORA-17085=\u00c9rt\u00e9k\u00fctk\u00f6z\u00e9sek t\u00f6rt\u00e9ntek. + +ORA-17086=\u00c9rv\u00e9nytelen oszlop\u00e9rt\u00e9k a beilleszt\u00e9si sorban. + +ORA-17087=Figyelmen k\u00edv\u00fcl hagyott teljes\u00edtm\u00e9nytipp: setFetchDirection() + +ORA-17088=Nem t\u00e1mogatott szintaxis a k\u00e9rt eredm\u00e9nyk\u00e9szlet-t\u00edpushoz \u00e9s konkurenciaszinthez. +ORA-17089=bels\u0151 hiba + +ORA-17090=a m\u0171velet nem enged\u00e9lyezett + +ORA-17091=Nem hozhat\u00f3 l\u00e9tre az eredm\u00e9nyk\u00e9szlet a k\u00e9rt t\u00edpus-, illetve p\u00e1rhuzamoss\u00e1gi szinten. + +ORA-17092=A h\u00edv\u00e1sfeldolgoz\u00e1s v\u00e9g\u00e9n nem hozhat\u00f3k l\u00e9tre \u00e9s nem hajthat\u00f3k v\u00e9gre JDBC utas\u00edt\u00e1sok. + +ORA-17093=Az OCI m\u0171velet OCI_SUCCESS_WITH_INFO \u00e9rt\u00e9kkel t\u00e9rt vissza. + +ORA-17094=Nem egyez\u0151 objektumt\u00edpus-verzi\u00f3k + +ORA-17095=Az utas\u00edt\u00e1s-gyors\u00edt\u00f3 m\u00e9rete nem lett be\u00e1ll\u00edtva. + +ORA-17096=Ehhez a logikai kapcsolathoz nem haszn\u00e1lhat\u00f3 utas\u00edt\u00e1st\u00e1rol\u00e1s. + +ORA-17097=\u00c9rv\u00e9nytelen elemt\u00edpus a PL/SQL-indext\u00e1bl\u00e1ban + +ORA-17098=\u00c9rv\u00e9nytelen \u00fcres lob m\u0171velet + +ORA-17099=\u00c9r\u00e9vnytelen a PL/SQL indext\u00e1blat\u00f6mbj\u00e9nek hossza. + +ORA-17100=\u00c9rv\u00e9nytelen adatb\u00e1zis Java-objektum + +ORA-17101=\u00c9rv\u00e9nytelen tulajdons\u00e1gok tal\u00e1lhat\u00f3k az OCI kapcsolatigy\u0171jt\u0151sor-objektumban. + +ORA-17102=A Bfile csak olvashat\u00f3. + +ORA-17103=A kapcsolati t\u00edpus nem \u00e9rv\u00e9nyes a getConnection met\u00f3duson kereszt\u00fcli visszat\u00e9r\u00e9shez. Haszn\u00e1lja ink\u00e1bb a getJavaSqlConnection met\u00f3dust. + +ORA-17104=A v\u00e9grehajtand\u00f3 SQL-utas\u00edt\u00e1s nem lehet \u00fcres vagy null \u00e9rt\u00e9k\u0171. + +ORA-17105=A kapcsolati munkamenet id\u0151z\u00f3n\u00e1ja nem lett be\u00e1ll\u00edtva. + +ORA-17106=a megadott JDBC-OCI illeszt\u0151program kapcsolatpool-konfigur\u00e1ci\u00f3ja \u00e9rv\u00e9nytelen. + +ORA-17107=\u00e9rv\u00e9nytelen a megadott proxyt\u00edpus + +ORA-17108=A defineColumnType-hoz nincs megadva maxim\u00e1lis hossz\u00fas\u00e1g. + +ORA-17109=az alap\u00e9rtelmezett Java karakterk\u00f3dol\u00e1s nem tal\u00e1lhat\u00f3 + +ORA-17110=a v\u00e9grehajt\u00e1s figyelmeztet\u00e9ssel z\u00e1rult + +ORA-17111=\u00c9rv\u00e9nytelen a kapcsolatgyors\u00edt\u00f3-TTL megadott id\u0151t\u00fall\u00e9p\u00e9se. + +ORA-17112=A sz\u00e1lak megadott k\u00e9sleltet\u00e9si ideje \u00e9rv\u00e9nytelen. + +ORA-17113=A sz\u00e1lak k\u00e9sleltet\u00e9si ideje nagyobb, mint a gyors\u00edt\u00f3t\u00e1r id\u0151t\u00fall\u00e9p\u00e9si ideje. + +ORA-17114=A helyi tranzakci\u00f3-j\u00f3v\u00e1hagy\u00e1s nem haszn\u00e1lhat\u00f3 a glob\u00e1lis tranzakci\u00f3ban. + +ORA-17115=A helyi tranzakci\u00f3-visszag\u00f6rget\u00e9s nem haszn\u00e1lhat\u00f3 a glob\u00e1lis tranzakci\u00f3ban. + +ORA-17116=nem lehetett bekapcsolni az automatikus j\u00f3v\u00e1hagy\u00e1st az egyik akt\u00edv glob\u00e1lis tranzakci\u00f3ban + +ORA-17117=nem lehetett l\u00e9trehozni a ment\u00e9si pontot az egyik akt\u00edv glob\u00e1lis tranzakci\u00f3ban + +ORA-17118=Nem siker\u00fclt azonos\u00edt\u00f3t szerezni az egyik n\u00e9vvel rendelkez\u0151 ment\u00e9si pontnak. + +ORA-17119=Nem siker\u00fclt nevet szerezni az egyik n\u00e9vvel nem rendelkez\u0151 ment\u00e9si pontnak. + +ORA-17120=Nem siker\u00fclt ment\u00e9si pontot be\u00e1ll\u00edtani az automatikus j\u00f3v\u00e1hagy\u00e1s bekapcsolt \u00e1llapota mellett. + +ORA-17121=Nem siker\u00fclt a visszag\u00f6rget\u00e9s az automatikus j\u00f3v\u00e1hagy\u00e1s bekapcsolt \u00e1llapota mellett. + +ORA-17122=Nem siker\u00fclt a visszag\u00f6rget\u00e9s egy helyi txn ment\u00e9si ponthoz az egyik helyi tranzakci\u00f3ban. + +ORA-17123=\u00c9rv\u00e9nytelen utas\u00edt\u00e1sgyors\u00edt\u00f3t\u00e1r-m\u00e9ret lett megadva. + +ORA-17124=\u00c9rv\u00e9nytelen kapcsolatgyors\u00edt\u00f3-inaktivit\u00e1si id\u0151t\u00fall\u00e9p\u00e9s lett megadva. + +ORA-17200=Az XA megnyit\u00e1si karakterl\u00e1ncot nem siker\u00fclt megfelel\u0151en Java-r\u00f3l C-re konvert\u00e1lni. + +ORA-17201=Az XA bez\u00e1r\u00e1si karakterl\u00e1ncot nem siker\u00fclt megfelel\u0151en Java-r\u00f3l C-re konvert\u00e1lni. + +ORA-17202=Az RM nevet nem siker\u00fclt megfelel\u0151en Java-r\u00f3l C-re konvert\u00e1lni. + +ORA-17203=A mutat\u00f3t\u00edpust nem siker\u00fclt jlong t\u00edpusra m\u00f3dos\u00edtani. + +ORA-17204=A beviteli t\u00f6mb t\u00fal r\u00f6vid az OCI kezel\u0151k t\u00e1rol\u00e1s\u00e1hoz. + +ORA-17205=Nem siker\u00fclt az OCISvcCtx kezel\u0151 xaoSvcCtx \u00e1ltali bek\u00e9r\u00e9se az C-XA elemt\u0151l. + +ORA-17206=Nem siker\u00fclt az OCIEnv kezel\u0151 xaoEnv \u00e1ltali bek\u00e9r\u00e9se az C-XA elemt\u0151l. + +ORA-17207=A tnsEntry tulajdons\u00e1g nem lett be\u00e1ll\u00edtva a DataSource elemn\u00e9l. + +ORA-17213=A C-XA XAER_RMERR hiba\u00fczenetet adott vissza az xa_open v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17215=A C-XA XAER_INVAL hiba\u00fczenetet adott vissza az xa_open v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17216=A C-XA XAER_PROTO hiba\u00fczenetet adott vissza az xa_open v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17233=A C-XA XAER_RMERR hiba\u00fczenetet adott vissza az xa_close v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17235=A C-XA XAER_INVAL hiba\u00fczenetet adott vissza az xa_close v\u00e9grehajt\u00e1sa k\u00f6zben. + +ORA-17236=A C-XA XAER_PROTO hiba\u00fczenetet adott vissza az xa_close v\u00e9grehajt\u00e1sa k\u00f6zben. + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokoll megs\u00e9rt\u00e9se + +ORA-17402=Csak egy RPA \u00fczenet \u00e9rkez\u00e9s\u00e9re sz\u00e1m\u00edt. + +ORA-17403=Csak egy RXH \u00fczenet \u00e9rkez\u00e9s\u00e9re sz\u00e1m\u00edt. + +ORA-17404=A v\u00e1rtn\u00e1l t\u00f6bb RXD \u00e9rkezett. + +ORA-17405=Az UAC hossza nem nulla. + +ORA-17406=T\u00fall\u00e9pte a maxim\u00e1lis pufferm\u00e9retet. + +ORA-17407=\u00e9rv\u00e9nytelen t\u00edpus\u00e1br\u00e1zol\u00e1s(setRep) + +ORA-17408=\u00e9rv\u00e9nytelen t\u00edpus\u00e1br\u00e1zol\u00e1s(getRep) + +ORA-17409=\u00e9rv\u00e9nytelen pufferhossz + +ORA-17410=Nem olvashat\u00f3 t\u00f6bb adat a programcsatorn\u00e1r\u00f3l. + +ORA-17411=Az adatt\u00edpusok \u00e1br\u00e1zol\u00e1si m\u00f3dja nem egyezik. + +ORA-17412=A megengedettn\u00e9l nagyobb a t\u00edpushossz. + +ORA-17413=T\u00fall\u00e9pte a kulcs m\u00e9ret\u00e9t. + +ORA-17414=A puffer m\u00e9rete nem el\u00e9gs\u00e9ges az oszlopnevek t\u00e1rol\u00e1s\u00e1hoz. + +ORA-17415=Ennek a t\u00edpusnak a kezel\u00e9se nem t\u00f6rt\u00e9nt meg. + +ORA-17416=FATAL + +ORA-17417=NLS probl\u00e9ma, az oszlopnevek dek\u00f3dol\u00e1sa nem siker\u00fclt. + +ORA-17418=Hiba a bels\u0151 strukt\u00fara mez\u0151hossz\u00e1ban. + +ORA-17419=\u00c9rv\u00e9nytelen sz\u00e1m\u00fa oszlopot kapott vissza a rendszer. + +ORA-17420=Az Oracle verzi\u00f3sz\u00e1ma nincs megadva. + +ORA-17421=A t\u00edpusok vagy a kapcsol\u00f3d\u00e1s nincs defini\u00e1lva. + +ORA-17422=\u00c9rv\u00e9nytelen oszt\u00e1ly a factory-ban. + +ORA-17423=PLSQL blokk haszn\u00e1lata IOV defini\u00e1l\u00e1sa n\u00e9lk\u00fcl + +ORA-17424=K\u00eds\u00e9rlet k\u00fcl\u00f6nb\u00f6z\u0151 rendez\u0151m\u0171veletek v\u00e9grehajt\u00e1s\u00e1ra. + +ORA-17425=Folyam visszaad\u00e1sa egy PLSQL blokkban + +ORA-17426=Az IN \u00e9s OUT param\u00e9terek egyar\u00e1nt NULL \u00e9rt\u00e9k\u0171ek. + +ORA-17427=Nem inicializ\u00e1lt OAC haszn\u00e1lata + +ORA-17428=A bejelentkez\u00e9st a kapcsol\u00f3d\u00e1s ut\u00e1n kell megh\u00edvni. + +ORA-17429=Legal\u00e1bb kapcsol\u00f3dni kell egy kiszolg\u00e1l\u00f3hoz. + +ORA-17430=Be kell jelentkezni egy kiszolg\u00e1l\u00f3ra. + +ORA-17431=Az elemezni k\u00edv\u00e1nt SQL utas\u00edt\u00e1s NULL \u00e9rt\u00e9k\u0171. + +ORA-17432=\u00e9rv\u00e9nytelen opci\u00f3k a h\u00edv\u00e1sban + +ORA-17433=\u00e9rv\u00e9nytelen argumentumok a h\u00edv\u00e1sban + +ORA-17434=nem folyamkezel\u0151 \u00fczemm\u00f3dban van. + +ORA-17435=\u00e9rv\u00e9nytelen az in_out_binds sz\u00e1m az IOV-ben. + +ORA-17436=\u00e9rv\u00e9nytelen a kimen\u0151 param\u00e9terek (outbinds) sz\u00e1ma. + +ORA-17437=Hiba a PLSQL blokk bemeneti, illetve kimeneti argumentumaiban. + +ORA-17438=Bels\u0151 - V\u00e1ratlan \u00e9rt\u00e9k + +ORA-17439=\u00c9rv\u00e9nytelen SQL t\u00edpus + +ORA-17440=A DBItem/DBType \u00e9rt\u00e9k \u00fcres. + +ORA-17441=Ezen Oracle verzi\u00f3 haszn\u00e1lata nem t\u00e1mogatott. A legr\u00e9gebbi t\u00e1mogatott verzi\u00f3 a 7.2.3-as. + +ORA-17442=A Refcursor \u00e9rt\u00e9ke \u00e9rv\u00e9nytelen. + +ORA-17443=\u00dcres felhaszn\u00e1l\u00f3n\u00e9v vagy nem t\u00e1mogatott THIN meghajt\u00f3. + +ORA-17444=A kiszolg\u00e1l\u00f3t\u00f3l kapott TTC protokollverzi\u00f3 nem t\u00e1mogatott. + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_it.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_it.properties new file mode 100644 index 0000000..d6dab30 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_it.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Errore interno + +ORA-17002=Eccezione IO + +ORA-17003=Indice di colonna non valido + +ORA-17004=Tipo di colonna non valido + +ORA-17005=Tipo di colonna non supportato + +ORA-17006=Nome di colonna non valido + +ORA-17007=Colonna dinamica non valida + +ORA-17008=Connessione chiusa + +ORA-17009=Connessione chiusa + +ORA-17010=Resultset chiuso + +ORA-17011=Resultset esaurito + +ORA-17012=Conflitto tipo di parametro + +ORA-17014=ResultSet.next non \u00e8 stato richiamato + +ORA-17015=L\'istruzione \u00e8 stata annullata + +ORA-17016=Si \u00e8 verificato un timeout dell\'istruzione + +ORA-17017=Cursore gi\u00e0 inizializzato + +ORA-17018=Cursore non valido + +ORA-17019=\u00c8 possibile solo descrivere una query + +ORA-17020=Preestrazione di riga non corretta + +ORA-17021=Definizione mancante + +ORA-17022=Definizioni mancanti nell\'indice + +ORA-17023=Funzione non supportata + +ORA-17024=Nessun dato letto + +ORA-17025=Errore in defines.isNull () + +ORA-17026=Overflow numerico + +ORA-17027=Il flusso \u00e8 gi\u00e0 stato chiuso + +ORA-17028=Impossibile effettuare nuove definizioni fino a che il ResultSet corrente \u00e8 chiuso + +ORA-17029=setReadOnly: Connessioni di sola lettura non supportate + +ORA-17030=READ_COMMITTED e SERIALIZABLE sono i soli livelli di transazione validi + +ORA-17031=setAutoClose: \u00c8 supportata solo la modalit\u00e0 di chiusura automatica attivata + +ORA-17032=impossibile impostare a zero la preestrazione delle righe + +ORA-17033=Stringa SQL92 di formato non valido nella posizione + +ORA-17034=Token SQL92 non supportato nella posizione + +ORA-17035=Set di caratteri non supportato + +ORA-17036=eccezione in OracleNumber + +ORA-17037=Conversione non riuscita tra UTF8 e UCS2 + +ORA-17038=Lunghezza insufficiente di array di byte + +ORA-17039=Lunghezza insufficiente di array di caratteri + +ORA-17040=Nell\'URL di connessione \u00e8 necessario specificare un protocollo secondario + +ORA-17041=Parametro IN o OUT mancante nell\'indice: + +ORA-17042=Valore batch non valido + +ORA-17043=La dimensione massima del flusso non \u00e8 valida + +ORA-17044=Errore interno: Array di dati non allocato + +ORA-17045=Errore interno: Tentativo di accesso a valori di associazione oltre il valore batch + +ORA-17046=Errore interno: Indice non valido per l\'accesso ai dati + +ORA-17047=Errore durante l\'analisi del descrittore di tipo + +ORA-17048=Tipo non definito + +ORA-17049=I tipi di oggetto sql e java non sono congruenti + +ORA-17050=nessun elemento analogo nel vettore + +ORA-17051=Impossibile usare questa interfaccia API per tipi diversi da UDT + +ORA-17052=Questo riferimento non \u00e8 valido + +ORA-17053=La dimensione non \u00e8 valida + +ORA-17054=Il locator LOB non \u00e8 valido + +ORA-17055=Carattere non valido rilevato in + +ORA-17056=Set di caratteri non supportato + +ORA-17057=LOB chiuso + +ORA-17058=Errore interno: Rapporto di conversione NLS non valido + +ORA-17059=Conversione in rappresentazione interna non riuscita + +ORA-17060=Creazione descrittore non riuscita + +ORA-17061=Descrittore mancante + +ORA-17062=Cursore di riferimento non valido + +ORA-17063=Non in una transazione + +ORA-17064=Sintassi non valida o nome di database nullo + +ORA-17065=Classe di conversione nulla + +ORA-17066=\u00c8 necessaria l\\'implementazione specifica del layer di accesso + +ORA-17067=\u00c8 stato specificato un URL Oracle non valido + +ORA-17068=Argomenti non validi nella chiamata + +ORA-17069=Utilizzare la chiamata XA esplicita + +ORA-17070=La dimensione dei dati \u00e8 superiore alla dimensione massima per questo tipo + +ORA-17071=\u00c8 stato superato il limite massimo di VARRAY + +ORA-17072=Il valore inserito \u00e8 troppo grande per la colonna + +ORA-17073=L\'handle logico non \u00e8 pi\u00f9 valido + +ORA-17074=Nome pattern non valido + +ORA-17075=Operazione non valida nel resultset di solo inoltro + +ORA-17076=Operazione non valida nel resultset di sola lettura + +ORA-17077=Errore di impostazione del valore REF + +ORA-17078=Impossibile effettuare l\'operazione poich\u00e9 le connessioni sono gi\u00e0 aperte + +ORA-17079=Le credenziali utente non corrispondono a quelle esistenti + +ORA-17080=comando batch non valido + +ORA-17081=errore durante l\'esecuzione batch + +ORA-17082=Nessuna riga corrente + +ORA-17083=Non nella riga di inserimento + +ORA-17084=Richiamo sulla riga di inserimento + +ORA-17085=Sono presenti conflitti di valore + +ORA-17086=Valore di colonna non definito nella riga di inserimento + +ORA-17087=Indicazione per le prestazioni ignorata: setFetchDirection() + +ORA-17088=Sintassi non supportata per il tipo e il livello di concorrenza richiesti del resultset +ORA-17089=errore interno + +ORA-17090=operazione non consentita + +ORA-17091=Impossibile creare un resultset del tipo e/o al livello di concorrenza richiesti + +ORA-17092=Impossibile creare o eseguire istruzioni JDBC alla fine dell\'elaborazione di una chiamata + +ORA-17093=L\'operazione OCI ha restituito OCI_SUCCESS_WITH_INFO + +ORA-17094=Versione non corrispondente del tipo di oggetto + +ORA-17095=Dimensione della cache delle istruzioni non impostata + +ORA-17096=Impossibile attivare l\'inserimento nella cache delle istruzioni per questa connessione logica. + +ORA-17097=Tipo di elemento tabella indice PL/SQL non valido + +ORA-17098=Operazione svuotamento LOB non valida + +ORA-17099=Lunghezza di array tabella indice PL/SQL non valida + +ORA-17100=Oggetto Java di database non valido + +ORA-17101=Propriet\u00e0 non valide nell\'oggetto OCI Connection Pool + +ORA-17102=Bfile \u00e8 di sola lettura + +ORA-17103=questo tipo di connessione non pu\u00f2 essere restituita mediante getConnection. Utilizzare getJavaSqlConnection + +ORA-17104=L\'istruzione SQL da eseguire non pu\u00f2 essere vuota o nulla + +ORA-17105=il fuso orario della sessione di connessione non \u00e8 stato impostato + +ORA-17106=la configurazione specificata per il connection pool del driver JDBC-OCI non \u00e8 valida + +ORA-17107=il tipo di proxy specificato non \u00e8 valido + +ORA-17108=Nessuna lunghezza massima specificata in defineColumnType + +ORA-17109=codifica dei caratteri Java standard non trovata + +ORA-17110=esecuzione completata con avvertenze + +ORA-17111=Il timeout TTL della cache di connessione specificato non \u00e8 valido + +ORA-17112=L'intervallo di thread specificato non \u00e8 valido + +ORA-17113=Il valore dell'intervallo di thread \u00e8 maggiore del valore di timeout della cache + +ORA-17114=impossibile utilizzare il commit delle transazioni locali in una transazione globale + +ORA-17115=impossibile utilizzare il rollback delle transazioni locali in una transazione globale + +ORA-17116=impossibile attivare il commit automatico in una transazione globale attiva + +ORA-17117=impossibile impostare un savepoint in una transazione globale attiva + +ORA-17118=impossibile ottenere l'ID per un savepoint denominato + +ORA-17119=impossibile ottenere il nome per un savepoint non denominato + +ORA-17120=impossibile impostare un savepoint con commit automatico abilitato + +ORA-17121=impossibile eseguire il rollback a un savepoint con commit automatico abilitato + +ORA-17122=impossibile eseguire il rollback a un savepoint txn locale in una transazione globale + +ORA-17123=La dimensione della cache delle istruzioni specificata non \u00e8 valida + +ORA-17124=Il timeout di inattivit\u00e0 della cache di connessione specificato non \u00e8 valido + +ORA-17200=Impossibile convertire correttamente la stringa di apertura XA da Java in C + +ORA-17201=Impossibile convertire correttamente la stringa di chiusura XA da Java in C + +ORA-17202=Impossibile convertire correttamente il nome RM da Java in C + +ORA-17203=Impossibile eseguire il casting del tipo di puntatore in jlong + +ORA-17204=Array di input troppo piccolo per contenere gli handle OCI + +ORA-17205=Recupero handle OCISvcCtx da C-XA mediante xaoSvcCtx non riuscito + +ORA-17206=Recupero handle OCIEnv da C-XA mediante xaoEnv non riuscito + +ORA-17207=La propriet\u00e0 tnsEntry non \u00e8 stata impostata in DataSource + +ORA-17213=C-XA ha restituito XAER_RMERR durante xa_open + +ORA-17215=C-XA ha restituito XAER_INVAL durante xa_open + +ORA-17216=C-XA ha restituito XAER_PROTO durante xa_open + +ORA-17233=C-XA ha restituito XAER_RMERR durante xa_close + +ORA-17235=C-XA ha restituito XAER_INVAL durante xa_close + +ORA-17236=C-XA ha restituito XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violazione di protocollo + +ORA-17402=\u00c8 previsto un solo messaggio RPA + +ORA-17403=\u00c8 previsto un solo messaggio RXH + +ORA-17404=Sono stati ricevuti pi\u00f9 RXD di quelli previsti + +ORA-17405=La lunghezza UAC \u00e8 diversa da zero + +ORA-17406=Superamento della lunghezza massima del buffer + +ORA-17407=Rappresentazione del tipo (setRep) non valida + +ORA-17408=Rappresentazione del tipo (getRep) non valida + +ORA-17409=lunghezza del buffer non valida + +ORA-17410=Non vi sono altri dati da leggere nel socket + +ORA-17411=Le rappresentazioni dei tipi di dati non corrispondono + +ORA-17412=La lunghezza del tipo \u00e8 superiore al valore massimo + +ORA-17413=Superamento dimensione della chiave + +ORA-17414=La dimensione del buffer non \u00e8 sufficiente per memorizzare i nomi di colonna + +ORA-17415=Questo tipo non \u00e8 stato gestito + +ORA-17416=FATAL + +ORA-17417=Problema NLS, la decodifica dei nomi di colonna non \u00e8 riuscita + +ORA-17418=Errore di lunghezza campo della struttura interna + +ORA-17419=Restituito numero di colonne non valido + +ORA-17420=Versione Oracle non definita + +ORA-17421=Tipi o connessione non definita + +ORA-17422=Classe non valida in factory + +ORA-17423=Uso di un lock PLSQL senza un IOV definito in corso + +ORA-17424=Tentativo differente operazione di marshalling in corso + +ORA-17425=Restituzione di un flusso in blocco PLSQL in corso + +ORA-17426=Entrambe le associazioni IN ed OUT sono NULL + +ORA-17427=Uso di OAC non inizializzato in corso + +ORA-17428=Il collegamento deve essere richiamato dopo la connessione + +ORA-17429=\u00c8 necessaria almeno la connessione al server + +ORA-17430=\u00c8 necessario il collegamento al server + +ORA-17431=L\'istruzione SQL da analizzare \u00e8 nulla + +ORA-17432=opzioni non valide in all7 + +ORA-17433=argomenti non validi nella chiamata + +ORA-17434=non in modalit\u00e0 di flusso + +ORA-17435=numero non valido di in_out_binds in IOV + +ORA-17436=numero non valido di outbinds + +ORA-17437=Errore negli argomenti IN/OUT del blocco PLSQL + +ORA-17438=Interno - valore non previsto + +ORA-17439=Tipo SQL non valido + +ORA-17440=Il tipo DBItem/DBType \u00e8 nullo + +ORA-17441=Versione Oracle non supportata. La versione minima supportata \u00e8 la 7.2.3. + +ORA-17442=Valore di Refcursor non valido + +ORA-17443=Utente nullo o password non supportata nel driver THIN + +ORA-17444=La versione del protocollo TTC ricevuta dal server non \u00e8 supportata + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_iw.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_iw.properties new file mode 100644 index 0000000..51057a0 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_iw.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea + +ORA-17002=\u05d7\u05e8\u05d9\u05d2\u05ea Io + +ORA-17003=\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17004=\u05e1\u05d5\u05d2 \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17005=\u05e1\u05d5\u05d2 \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05e0\u05ea\u05de\u05da + +ORA-17006=\u05e9\u05dd \u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17007=\u05d4\u05e2\u05de\u05d5\u05d3\u05d4 \u05d4\u05d3\u05d9\u05e0\u05de\u05d9\u05ea \u05d0\u05d9\u05e0\u05d4 \u05ea\u05e7\u05e4\u05d4 + +ORA-17008=\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05e1\u05d2\u05e8\u05d4 + +ORA-17009=\u05de\u05e9\u05e4\u05d8 \u05e1\u05d2\u05d5\u05e8 + +ORA-17010=\u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05e1\u05d2\u05d5\u05e8 + +ORA-17011=\u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05de\u05e8\u05d5\u05e7\u05df + +ORA-17012=\u05e1\u05ea\u05d9\u05e8\u05d4 \u05d1\u05e1\u05d5\u05d2 \u05d4\u05e4\u05e8\u05de\u05d8\u05e8 + +ORA-17014=\u05dc\u05d0 \u05d1\u05d5\u05e6\u05e2\u05d4 \u05e7\u05e8\u05d9\u05d0\u05d4 \u05dc- ResultSet.next + +ORA-17015=\u05d4\u05de\u05e9\u05e4\u05d8 \u05d1\u05d5\u05d8\u05dc + +ORA-17016=\u05e4\u05e1\u05e7-\u05d6\u05de\u05df \u05d1\u05de\u05e9\u05e4\u05d8 + +ORA-17017=\u05d4\u05e1\u05de\u05df \u05db\u05d1\u05e8 \u05d0\u05d5\u05ea\u05d7\u05dc + +ORA-17018=\u05d4\u05e1\u05de\u05df \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17019=\u05e0\u05d9\u05ea\u05df \u05e8\u05e7 \u05dc\u05ea\u05d0\u05e8 \u05e9\u05d0\u05d9\u05dc\u05ea\u05d4 + +ORA-17020=\u05d4\u05d1\u05d0\u05d4 \u05de\u05d5\u05e7\u05d3\u05de\u05ea \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05e9\u05dc \u05e9\u05d5\u05e8\u05d4 + +ORA-17021=\u05d7\u05e1\u05e8\u05d5\u05ea \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea + +ORA-17022=\u05d7\u05e1\u05e8\u05d5\u05ea \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05d1\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 + +ORA-17023=\u05d4\u05ea\u05db\u05d5\u05e0\u05d4 \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea + +ORA-17024=\u05dc\u05d0 \u05e0\u05e7\u05e8\u05d0\u05d5 \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17025=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05d4\u05d2\u05d3\u05e8\u05d5\u05ea. \u05d4\u05df \u05e8\u05d9\u05e7\u05d5\u05ea (Null) () + +ORA-17026=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05de\u05e1\u05e4\u05e8\u05d9\u05ea + +ORA-17027=\u05d4\u05d6\u05e8\u05dd \u05db\u05d1\u05e8 \u05e0\u05e1\u05d2\u05e8 + +ORA-17028=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05e7\u05d1\u05d5\u05e2 \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05d7\u05d3\u05e9\u05d5\u05ea \u05e2\u05d3 \u05e9\u05d9\u05d9\u05e1\u05d2\u05e8 \u05e1\u05dc \u05d4\u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05d4\u05e0\u05d5\u05db\u05d7\u05d9 + +ORA-17029=setReadOnly: \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4-\u05d1\u05dc\u05d1\u05d3 \u05d0\u05d9\u05e0\u05df \u05e0\u05ea\u05de\u05db\u05d5\u05ea + +ORA-17030=READ_COMMITTED \u05d5- SERIALIZABLE \u05d4\u05df \u05e8\u05de\u05d5\u05ea \u05d4\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d4\u05d9\u05d7\u05d9\u05d3\u05d5\u05ea \u05d4\u05ea\u05e7\u05e4\u05d5\u05ea + +ORA-17031=setAutoClose: \u05e8\u05e7 \u05de\u05e6\u05d1 \u05d4\u05e1\u05d2\u05d9\u05e8\u05d4 \u05d4\u05d0\u05d5\u05d8\u05d5\u05de\u05d8\u05d9\u05ea \u05e9\u05dc \u05d4\u05ea\u05de\u05d9\u05db\u05d4 \u05de\u05d5\u05e4\u05e2\u05dc + +ORA-17032=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d0\u05e4\u05e1 \u05d0\u05ea \u05d4\u05d4\u05d2\u05d3\u05e8\u05d4 \u05d4\u05de\u05d5\u05e7\u05d3\u05de\u05ea \u05e9\u05dc \u05d4\u05e9\u05d5\u05e8\u05d4 + +ORA-17033=\u05de\u05d7\u05e8\u05d5\u05d6\u05ea SQL92 \u05dc\u05d0 \u05ea\u05e7\u05d9\u05e0\u05d4 \u05d1\u05de\u05d9\u05e7\u05d5\u05dd + +ORA-17034=\u05d0\u05e1\u05d9\u05de\u05d5\u05df SQL92 \u05dc\u05d0 \u05e0\u05ea\u05de\u05da \u05d1\u05de\u05d9\u05e7\u05d5\u05dd + +ORA-17035=\u05de\u05e2\u05e8\u05db\u05ea \u05d4\u05ea\u05d5\u05d5\u05d9\u05dd \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea! + +ORA-17036=\u05d7\u05e8\u05d9\u05d2 \u05d1-OracleNumber + +ORA-17037=\u05d4\u05d4\u05de\u05e8\u05d4 \u05d1\u05d9\u05df UTF8 \u05d5- UCS2 \u05e0\u05db\u05e9\u05dc\u05d4 + +ORA-17038=\u05de\u05e2\u05e8\u05da \u05d4\u05d1\u05d9\u05d9\u05d8\u05d9\u05dd \u05e7\u05e6\u05e8 \u05de\u05d3\u05d9 + +ORA-17039=\u05de\u05e2\u05e8\u05da \u05d4\u05ea\u05d5\u05d5\u05d9\u05dd \u05e7\u05e6\u05e8 \u05de\u05d3\u05d9 + +ORA-17040=\u05d9\u05e9 \u05dc\u05e6\u05d9\u05d9\u05df \u05d0\u05ea \u05e4\u05e8\u05d5\u05d8\u05d5\u05e7\u05d5\u05dc \u05d4\u05de\u05e9\u05e0\u05d4 \u05d1-URL \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea + +ORA-17041=\u05d7\u05e1\u05e8 \u05e4\u05e8\u05de\u05d8\u05e8 IN \u05d0\u05d5 OUT \u05d1\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1: + +ORA-17042=\u05e2\u05e8\u05da \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17043=\u05d2\u05d5\u05d3\u05dc \u05d4\u05d6\u05e8\u05dd \u05d4\u05de\u05e8\u05d1\u05d9 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17044=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05dc\u05d0 \u05d4\u05d5\u05e7\u05e6\u05d4 \u05de\u05e2\u05e8\u05da \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17045=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05e0\u05e2\u05e9\u05d4 \u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d2\u05e9\u05ea \u05dc\u05e2\u05e8\u05db\u05d9 \u05db\u05e8\u05d9\u05db\u05d4 \u05e9\u05de\u05e2\u05d1\u05e8 \u05dc\u05e2\u05e8\u05da \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 + +ORA-17046=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05d4\u05d2\u05d9\u05e9\u05d4 \u05dc\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17047=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05e0\u05d9\u05ea\u05d5\u05d7 \u05de\u05ea\u05d0\u05e8 \u05d4\u05e1\u05d5\u05d2 + +ORA-17048=\u05d4\u05e1\u05d5\u05d2 \u05d0\u05d9\u05e0\u05d5 \u05de\u05d5\u05d2\u05d3\u05e8 + +ORA-17049=\u05d7\u05d5\u05e1\u05e8 \u05d0\u05d7\u05d9\u05d3\u05d5\u05ea \u05d1\u05d9\u05df \u05e1\u05d5\u05d2\u05d9 \u05d4\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8\u05d9\u05dd \u05e9\u05dc java \u05d5- sql + +ORA-17050=\u05d0\u05dc\u05de\u05e0\u05d8 \u05d6\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05e7\u05d9\u05d9\u05dd \u05d1\u05d5\u05e7\u05d8\u05d5\u05e8 + +ORA-17051=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1- API \u05d6\u05d4 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05d5\u05d2\u05d9\u05dd \u05e9\u05d0\u05d9\u05e0\u05dd UDT + +ORA-17052=\u05d9\u05d7\u05d5\u05e1 \u05d6\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17053=\u05d4\u05d2\u05d5\u05d3\u05dc \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17054=\u05de\u05d0\u05ea\u05e8 \u05d4-LOBS \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17055=\u05e0\u05de\u05e6\u05d0 \u05ea\u05d5 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d1- + +ORA-17056=\u05de\u05e2\u05e8\u05db\u05ea \u05d4\u05ea\u05d5\u05d5\u05d9\u05dd \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea + +ORA-17057=LOB \u05e1\u05d2\u05d5\u05e8 + +ORA-17058=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea: \u05e9\u05d9\u05e2\u05d5\u05e8 \u05d4\u05de\u05e8\u05ea \u05d4- NLS \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17059=\u05d4\u05d4\u05de\u05e8\u05d4 \u05dc\u05d9\u05d9\u05e6\u05d5\u05d2 \u05e4\u05e0\u05d9\u05de\u05d9 \u05e0\u05db\u05e9\u05dc\u05d4 + +ORA-17060=\u05d1\u05e0\u05d9\u05d9\u05ea \u05d4\u05de\u05ea\u05d0\u05e8 \u05e0\u05db\u05e9\u05dc\u05d4 + +ORA-17061=\u05d7\u05e1\u05e8 \u05de\u05ea\u05d0\u05e8 + +ORA-17062=\u05e1\u05de\u05df \u05d4\u05d9\u05d9\u05d7\u05d5\u05e1 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17063=\u05dc\u05d0 \u05e0\u05de\u05e6\u05d0 \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 + +ORA-17064=\u05ea\u05d7\u05d1\u05d9\u05e8 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d0\u05d5 \u05e9\u05e9\u05dd \u05de\u05e1\u05d3 \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05d4\u05d5\u05d0 Null + +ORA-17065=\u05de\u05d7\u05dc\u05e7\u05ea \u05d4\u05d4\u05de\u05e8\u05d4 \u05d4\u05d9\u05d0 Null + +ORA-17066=\u05d9\u05e9 \u05dc\u05d9\u05d9\u05e9\u05dd \u05d1\u05d0\u05d5\u05e4\u05df \u05e1\u05e4\u05e6\u05d9\u05e4\u05d9 \u05d0\u05ea \u05e9\u05db\u05d1\u05ea \u05d4\u05d2\u05d9\u05e9\u05d4 + +ORA-17067=\u05e6\u05d5\u05d9\u05df URL \u05e9\u05dc Oracle \u05e9\u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17068=\u05d1\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d9\u05e9 \u05d0\u05e8\u05d2\u05d5\u05de\u05e0\u05d8\u05d9\u05dd \u05e9\u05d0\u05d9\u05e0\u05dd \u05ea\u05e7\u05e4\u05d9\u05dd + +ORA-17069=\u05d9\u05e9 \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1\u05e7\u05e8\u05d9\u05d0\u05ea XA \u05de\u05e4\u05d5\u05e8\u05e9\u05ea + +ORA-17070=\u05d2\u05d5\u05d3\u05dc \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05e2\u05d5\u05dc\u05d4 \u05e2\u05dc \u05d4\u05d2\u05d5\u05d3\u05dc \u05d4\u05de\u05e8\u05d1\u05d9 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05d5\u05d2 \u05d6\u05d4 + +ORA-17071=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05de\u05d4\u05d2\u05d1\u05d5\u05dc \u05d4\u05de\u05e8\u05d1\u05d9 \u05e9\u05dc VARRAY + +ORA-17072=\u05d4\u05e2\u05e8\u05da \u05e9\u05d4\u05d5\u05db\u05e0\u05e1 \u05d2\u05d3\u05d5\u05dc \u05de\u05d3\u05d9 \u05dc\u05e2\u05de\u05d5\u05d3\u05d4 + +ORA-17073=\u05d4\u05de\u05e6\u05d1\u05d9\u05e2 \u05d4\u05dc\u05d5\u05d2\u05d9 (logical handle) \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 \u05e2\u05d5\u05d3 + +ORA-17074=\u05d3\u05d2\u05dd \u05d4\u05e9\u05dd \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17075=\u05e4\u05e2\u05d5\u05dc\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05dc\u05e7\u05d9\u05d3\u05d5\u05dd \u05d1\u05dc\u05d1\u05d3 + +ORA-17076=\u05e4\u05e2\u05d5\u05dc\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05e2\u05d1\u05d5\u05e8 \u05e1\u05dc \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d1\u05dc\u05d1\u05d3 + +ORA-17077=\u05db\u05d9\u05e9\u05dc\u05d5\u05df \u05d1\u05e7\u05d1\u05d9\u05e2\u05ea \u05e2\u05e8\u05da REF + +ORA-17078=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d1\u05e6\u05e2 \u05d0\u05ea \u05d4\u05e4\u05e2\u05d5\u05dc\u05d4, \u05e9\u05db\u05df \u05d4\u05d7\u05d9\u05d1\u05d5\u05e8\u05d9\u05dd \u05db\u05d1\u05e8 \u05e4\u05ea\u05d5\u05d7\u05d9\u05dd + +ORA-17079=\u05e0\u05ea\u05d5\u05e0\u05d9 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e9\u05dc \u05d4\u05de\u05e9\u05ea\u05de\u05e9 \u05d0\u05d9\u05e0\u05dd \u05ea\u05d5\u05d0\u05de\u05d9\u05dd \u05d0\u05ea \u05d0\u05dc\u05d4 \u05d4\u05e7\u05d9\u05d9\u05de\u05d9\u05dd + +ORA-17080=\u05e4\u05e7\u05d5\u05d3\u05ea \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 \u05d0\u05d9\u05e0\u05d4 \u05ea\u05e7\u05e4\u05d4 + +ORA-17081=\u05d0\u05e8\u05e2\u05d4 \u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05e2\u05ea \u05d9\u05e6\u05d9\u05e8\u05ea \u05d4\u05d0\u05e6\u05d5\u05d5\u05d4 + +ORA-17082=\u05d0\u05d9\u05df \u05e9\u05d5\u05e8\u05d4 \u05db\u05e2\u05ea + +ORA-17083=\u05dc\u05d0 \u05d1\u05e9\u05d5\u05e8\u05d4 \u05e9\u05d4\u05d5\u05db\u05e0\u05e1\u05d4 + +ORA-17084=\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d1\u05e9\u05d5\u05e8\u05d4 \u05dc\u05d4\u05db\u05e0\u05e1\u05d4 + +ORA-17085=\u05e1\u05ea\u05d9\u05e8\u05d4 \u05d1\u05e2\u05e8\u05db\u05d9\u05dd + +ORA-17086=\u05e2\u05e8\u05da \u05e2\u05de\u05d5\u05d3\u05d4 \u05dc\u05d0 \u05de\u05d5\u05d2\u05d3\u05e8 \u05d1\u05e9\u05d5\u05e8\u05d4 \u05e9\u05d4\u05d5\u05db\u05e0\u05e1\u05d4 + +ORA-17087=\u05d4\u05ea\u05e2\u05dc\u05de\u05d5\u05ea \u05de\u05e8\u05de\u05d6 \u05d4\u05d1\u05d9\u05e6\u05d5\u05e2\u05d9\u05dd: setFetchDirection() + +ORA-17088=\u05ea\u05d7\u05d1\u05d9\u05e8 \u05dc\u05d0 \u05e0\u05ea\u05de\u05da \u05e2\u05d1\u05d5\u05e8 \u05e1\u05d5\u05d2 \u05e1\u05d8 \u05d4\u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05d5\u05e8\u05de\u05ea \u05d4\u05de\u05e7\u05d1\u05d9\u05dc\u05d9\u05d5\u05ea \u05d4\u05de\u05d1\u05d5\u05e7\u05e9\u05d9\u05dd +ORA-17089=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea + +ORA-17090=\u05d4\u05e4\u05e2\u05d5\u05dc\u05d4 \u05d0\u05e1\u05d5\u05e8\u05d4 + +ORA-17091=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d9\u05e6\u05d5\u05e8 \u05e1\u05d8 \u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05d1\u05e1\u05d5\u05d2 \u05d5/\u05d0\u05d5 \u05d1\u05e8\u05de\u05ea \u05d4\u05de\u05e7\u05d1\u05d9\u05dc\u05d9\u05d5\u05ea \u05d4\u05de\u05d1\u05d5\u05e7\u05e9\u05d9\u05dd + +ORA-17092=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d9\u05e6\u05d5\u05e8 \u05d0\u05d5 \u05dc\u05d1\u05e6\u05e2 \u05de\u05e9\u05e4\u05d8\u05d9 JDBC \u05d1\u05e1\u05d5\u05e3 \u05e2\u05d9\u05d1\u05d5\u05d3 \u05d4\u05e7\u05e8\u05d9\u05d0\u05d5\u05ea + +ORA-17093=\u05e4\u05e2\u05d5\u05dc\u05ea OCI \u05d4\u05d7\u05d6\u05d9\u05e8\u05d4 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u05d0\u05d9\u05df \u05d4\u05ea\u05d0\u05de\u05d4 \u05dc\u05d2\u05e8\u05e1\u05d4 \u05e9\u05dc \u05e1\u05d5\u05d2 \u05d4\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8 + +ORA-17095=\u05dc\u05d0 \u05e0\u05e7\u05d1\u05e2 \u05d2\u05d5\u05d3\u05dc \u05de\u05d8\u05de\u05d5\u05df \u05d4\u05de\u05e9\u05e4\u05d8\u05d9\u05dd + +ORA-17096=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d0\u05e4\u05e9\u05e8 \u05d4\u05e2\u05d1\u05e8\u05d4 \u05dc\u05de\u05d8\u05de\u05d5\u05df \u05e9\u05dc \u05de\u05e9\u05e4\u05d8\u05d9\u05dd \u05e2\u05d1\u05d5\u05e8 \u05d7\u05d9\u05d1\u05d5\u05e8 \u05dc\u05d5\u05d2\u05d9 \u05d6\u05d4. + +ORA-17097=\u05e1\u05d5\u05d2 \u05d0\u05dc\u05de\u05e0\u05d8 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d1\u05d8\u05d1\u05dc\u05ea \u05d4\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05e9\u05dc PL/SQL + +ORA-17098=\u05e4\u05e2\u05d5\u05dc\u05ea \u05e8\u05d9\u05e7\u05d5\u05df \u05d4- lob \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 + +ORA-17099=\u05d0\u05d5\u05e8\u05da \u05de\u05e2\u05e8\u05da \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05d1\u05d8\u05d1\u05dc\u05ea \u05d4\u05d0\u05d9\u05e0\u05d3\u05e7\u05e1 \u05e9\u05dc PL/SQL + +ORA-17100=\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8 Java \u05e9\u05dc \u05de\u05e1\u05d3 \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05dc\u05d0 \u05ea\u05e7\u05e3 + +ORA-17101=\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9\u05dd \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d9\u05dd \u05d1\u05d0\u05d5\u05d1\u05d9\u05d9\u05e7\u05d8 \u05de\u05d0\u05d2\u05e8 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea OCI + +ORA-17102=Bfile \u05de\u05d9\u05d5\u05e2\u05d3 \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4 \u05d1\u05dc\u05d1\u05d3 + +ORA-17103=\u05e1\u05d5\u05d2 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05dc\u05d4\u05d7\u05d6\u05e8\u05d4 \u05d3\u05e8\u05da getConnection \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3. \u05d9\u05e9 \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1-getJavaSqlConnection + +ORA-17104=\u05de\u05e9\u05e4\u05d8 SQL \u05dc\u05d4\u05e4\u05e2\u05dc\u05d4 \u05d0\u05d9\u05e0\u05d5 \u05d9\u05db\u05d5\u05dc \u05dc\u05d4\u05d9\u05d5\u05ea \u05e8\u05d9\u05e7 \u05d0\u05d5 Null + +ORA-17105=\u05dc\u05d0 \u05e0\u05e7\u05d1\u05e2 \u05d0\u05d6\u05d5\u05e8 \u05d6\u05de\u05df \u05dc\u05de\u05d5\u05e9\u05d1 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea + +ORA-17106=\u05d4\u05d5\u05d2\u05d3\u05e8\u05d4 \u05ea\u05e6\u05d5\u05e8\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05dc\u05de\u05d0\u05d2\u05e8 \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea \u05e9\u05dc \u05d3\u05e8\u05d9\u05d9\u05d1\u05e8 \u05d4-JDBC-OCI + +ORA-17107=\u05d4\u05d5\u05d2\u05d3\u05e8 \u05e1\u05d5\u05d2 proxy \u05dc\u05d0 \u05ea\u05e7\u05e3 + +ORA-17108=\u05dc\u05d0 \u05e6\u05d5\u05d9\u05df \u05d0\u05d5\u05e8\u05da \u05de\u05e8\u05d1\u05d9 \u05d1-defineColumnType + +ORA-17109=\u05dc\u05d0 \u05e0\u05de\u05e6\u05d0\u05d4 \u05d4\u05e6\u05e4\u05e0\u05ea Java character encoding \u05d4\u05e8\u05d2\u05d9\u05dc\u05d4 + +ORA-17110=\u05d4\u05d1\u05d9\u05e6\u05d5\u05e2 \u05d4\u05d5\u05e9\u05dc\u05dd \u05e2\u05dd \u05d0\u05d6\u05d4\u05e8\u05d4 + +ORA-17111=\u05e6\u05d5\u05d9\u05df \u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e2\u05d1\u05d5\u05e8 TTL \u05e9\u05dc \u05de\u05d8\u05de\u05d5\u05df \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea + +ORA-17112=\u05e6\u05d5\u05d9\u05df \u05de\u05e8\u05d5\u05d5\u05d7 thread \u05dc\u05d0 \u05ea\u05e7\u05e3 + +ORA-17113=\u05e2\u05e8\u05da \u05de\u05e8\u05d5\u05d5\u05d7 \u05d4-Thread \u05d2\u05d3\u05d5\u05dc \u05de\u05d4\u05e2\u05e8\u05da \u05e9\u05dc \u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05d4\u05de\u05d8\u05de\u05d5\u05df + +ORA-17114=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1-commit \u05e9\u05dc \u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05de\u05e7\u05d5\u05de\u05d9\u05ea \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea + +ORA-17115=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1-rollback \u05e9\u05dc \u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05de\u05e7\u05d5\u05de\u05d9\u05ea \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea + +ORA-17116=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e4\u05e2\u05d9\u05dc \u05d0\u05ea auto-commit \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea \u05e4\u05e2\u05d9\u05dc\u05d4 + +ORA-17117=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05e7\u05d1\u05d5\u05e2 savepoint \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea \u05e4\u05e2\u05d9\u05dc\u05d4 + +ORA-17118=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05d6\u05d9\u05d4\u05d5\u05d9 \u05e2\u05d1\u05d5\u05e8 Savepoint \u05e9\u05de\u05d9 + +ORA-17119=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05e9\u05dd \u05e2\u05d1\u05d5\u05e8 Savepoint \u05dc\u05dc\u05d0 \u05e9\u05dd + +ORA-17120=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05e7\u05d1\u05d5\u05e2 Savepoint \u05db\u05d0\u05e9\u05e8 \u05de\u05d5\u05e4\u05e2\u05dc\u05ea \u05d4\u05ea\u05db\u05d5\u05e0\u05d4 auto commit + +ORA-17121=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d1\u05e6\u05e2 rollback \u05dc-Savepoint \u05db\u05d0\u05e9\u05e8 \u05de\u05d5\u05e4\u05e2\u05dc\u05ea \u05d4\u05ea\u05db\u05d5\u05e0\u05d4 auto commit + +ORA-17122=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d1\u05e6\u05e2 rollback \u05dc-Savepoint \u05e9\u05dc \u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05de\u05e7\u05d5\u05de\u05d9\u05ea \u05d1\u05d8\u05e8\u05e0\u05d6\u05d0\u05e7\u05e6\u05d9\u05d4 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9\u05ea + +ORA-17123=\u05e6\u05d5\u05d9\u05df \u05d2\u05d5\u05d3\u05dc \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e2\u05d1\u05d5\u05e8 \u05de\u05d8\u05de\u05d5\u05df \u05d4\u05de\u05e9\u05e4\u05d8\u05d9\u05dd + +ORA-17124=\u05e6\u05d5\u05d9\u05df \u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e9\u05dc \u05d7\u05d5\u05e1\u05e8 \u05e4\u05e2\u05d9\u05dc\u05d5\u05ea \u05d1\u05de\u05d8\u05de\u05d5\u05df \u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05d9\u05d5\u05ea + +ORA-17200=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05de\u05d9\u05e8 \u05d1\u05d0\u05d5\u05e4\u05df \u05ea\u05e7\u05d9\u05df \u05d0\u05ea \u05de\u05d7\u05e8\u05d5\u05d6\u05ea \u05e4\u05ea\u05d9\u05d7\u05ea \u05d4-XA \u05de- Java \u05dc\u05e9\u05e4\u05ea C + +ORA-17201=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05de\u05d9\u05e8 \u05d1\u05d0\u05d5\u05e4\u05df \u05ea\u05e7\u05d9\u05df \u05d0\u05ea \u05de\u05d7\u05e8\u05d5\u05d6\u05ea \u05e1\u05d2\u05d9\u05e8\u05ea \u05d4-XA \u05de- Java \u05dc\u05e9\u05e4\u05ea C + +ORA-17202=\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05de\u05d9\u05e8 \u05d1\u05d0\u05d5\u05e4\u05df \u05ea\u05e7\u05d9\u05df \u05d0\u05ea \u05e9\u05dd \u05d4-RM \u05de-Java \u05dc\u05e9\u05e4\u05ea C + +ORA-17203=\u05d4\u05d7\u05dc\u05e4\u05ea \u05e1\u05d5\u05d2 \u05d4\u05de\u05e6\u05d1\u05d9\u05e2 (\u05d1\u05d9\u05e6\u05d5\u05e2 cast) \u05dc-jlong \u05e0\u05db\u05e9\u05dc + +ORA-17204=\u05de\u05e2\u05e8\u05da \u05d4\u05e7\u05dc\u05d8 \u05e7\u05e6\u05e8 \u05de\u05db\u05d3\u05d9 \u05dc\u05d4\u05db\u05d9\u05dc \u05de\u05e6\u05d1\u05d9\u05e2\u05d9\u05dd (handles) \u05e9\u05dc OCI + +ORA-17205=\u05db\u05db\u05e9\u05dc \u05d1\u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05de\u05e6\u05d1\u05d9\u05e2 OCISvcCtx \u05de\u05ea\u05d5\u05da C-XA \u05ea\u05d5\u05da \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1- xaoSvcCtx + +ORA-17206=\u05e0\u05db\u05e9\u05dc \u05d1\u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d4\u05e9\u05d9\u05d2 \u05de\u05e6\u05d1\u05d9\u05e2 OCIEnv \u05de\u05ea\u05d5\u05da C-XA \u05ea\u05d5\u05da \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1- xaoEnv + +ORA-17207=\u05d4\u05de\u05d0\u05e4\u05d9\u05d9\u05df tnsEntry \u05dc\u05d0 \u05d4\u05d5\u05d2\u05d3\u05e8 \u05d1\u05de\u05e7\u05d5\u05e8 \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17213=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 XAER_RMERR \u05d1\u05de\u05d4\u05dc\u05da xa_open + +ORA-17215=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_INVAL \u05d1\u05de\u05d4\u05dc\u05da xa_open + +ORA-17216=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_PROTO \u05d1\u05de\u05d4\u05dc\u05da xa_open + +ORA-17233=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_RMERR \u05d1\u05de\u05d4\u05dc\u05da xa_close + +ORA-17235=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_INVAL \u05d1\u05de\u05d4\u05dc\u05da xa_close + +ORA-17236=C-XA \u05d4\u05d7\u05d6\u05d9\u05e8 \u05d0\u05ea XAER_PROTO \u05d1\u05de\u05d4\u05dc\u05da xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u05d4\u05e4\u05e8\u05ea \u05e4\u05e8\u05d5\u05d8\u05d5\u05e7\u05d5\u05dc + +ORA-17402=\u05e6\u05e4\u05d5\u05d9\u05d4 \u05d4\u05d5\u05d3\u05e2\u05ea RPA \u05d0\u05d7\u05ea \u05d1\u05dc\u05d1\u05d3 + +ORA-17403=\u05e6\u05e4\u05d5\u05d9\u05d4 \u05d4\u05d5\u05d3\u05e2\u05ea RXH \u05d0\u05d7\u05ea \u05d1\u05dc\u05d1\u05d3 + +ORA-17404=\u05d4\u05ea\u05e7\u05d1\u05dc\u05d5 \u05d9\u05d5\u05ea\u05e8 RXD \u05de\u05d4\u05e6\u05e4\u05d5\u05d9 + +ORA-17405=\u05d0\u05d5\u05e8\u05da \u05d4- UAC \u05d0\u05d9\u05e0\u05d5 \u05d0\u05e4\u05e1 + +ORA-17406=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05de\u05d4\u05d0\u05d5\u05e8\u05da \u05d4\u05de\u05e8\u05d1\u05d9 \u05e9\u05dc \u05d4\u05de\u05d0\u05d2\u05e8 (buffer) + +ORA-17407=\u05d9\u05d9\u05e6\u05d5\u05d2 \u05d4\u05e1\u05d5\u05d2 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 (setRep) + +ORA-17408=\u05d9\u05d9\u05e6\u05d5\u05d2 \u05d4\u05e1\u05d5\u05d2 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 (getRep) + +ORA-17409=\u05d0\u05d5\u05e8\u05da \u05d4\u05de\u05d0\u05d2\u05e8 (buffer) \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17410=\u05d0\u05d9\u05df \u05d9\u05d5\u05ea\u05e8 \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05dc\u05e7\u05e8\u05d9\u05d0\u05d4 \u05de\u05d4-socket + +ORA-17411=\u05d7\u05d5\u05e1\u05e8 \u05d4\u05ea\u05d0\u05de\u05d4 \u05d1\u05d9\u05d9\u05e6\u05d5\u05d2\u05d9 \u05e1\u05d5\u05d2 \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd + +ORA-17412=\u05d0\u05d5\u05e8\u05da \u05d4\u05e1\u05d5\u05d2 \u05e2\u05d5\u05dc\u05d4 \u05e2\u05dc \u05d4\u05d0\u05d5\u05e8\u05da \u05d4\u05de\u05e8\u05d1\u05d9 + +ORA-17413=\u05d7\u05e8\u05d9\u05d2\u05d4 \u05d1\u05d2\u05d5\u05d3\u05dc \u05d4\u05de\u05e4\u05ea\u05d7 + +ORA-17414=\u05d0\u05d9\u05df \u05de\u05e1\u05e4\u05d9\u05e7 \u05de\u05e7\u05d5\u05dd \u05d1\u05de\u05d0\u05d2\u05e8 (buffer) \u05dc\u05d0\u05d7\u05e1\u05d5\u05df \u05e9\u05de\u05d5\u05ea \u05d4\u05e2\u05de\u05d5\u05d3\u05d5\u05ea + +ORA-17415=\u05e1\u05d5\u05d2 \u05d6\u05d4 \u05dc\u05d0 \u05d8\u05d5\u05e4\u05dc + +ORA-17416=FATAL + +ORA-17417=\u05d1\u05e2\u05d9\u05d4 \u05d1- NLS, \u05e4\u05e2\u05e0\u05d5\u05d7 \u05e9\u05de\u05d5\u05ea \u05d4\u05e2\u05de\u05d5\u05d3\u05d5\u05ea \u05e0\u05db\u05e9\u05dc + +ORA-17418=\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05d0\u05d5\u05e8\u05da \u05d4\u05e9\u05d3\u05d4 \u05e9\u05dc \u05d4\u05de\u05d1\u05e0\u05d4 \u05d4\u05e4\u05e0\u05d9\u05de\u05d9 + +ORA-17419=\u05de\u05e1\u05e4\u05e8 \u05d4\u05e2\u05de\u05d5\u05d3\u05d5\u05ea \u05e9\u05d4\u05d5\u05d7\u05d6\u05e8 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17420=\u05d2\u05e8\u05e1\u05ea Oracle \u05dc\u05d0 \u05de\u05d5\u05d2\u05d3\u05e8\u05ea + +ORA-17421=\u05d4\u05e1\u05d5\u05d2\u05d9\u05dd \u05d0\u05d5 \u05d4\u05d7\u05d9\u05d1\u05d5\u05e8 \u05d0\u05d9\u05e0\u05dd \u05de\u05d5\u05d2\u05d3\u05e8\u05d9\u05dd + +ORA-17422=\u05de\u05d7\u05dc\u05e7\u05d4 \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d4 \u05d1-factory + +ORA-17423=\u05e0\u05e2\u05e9\u05d4 \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1\u05d1\u05dc\u05d5\u05e7 PLSQL \u05de\u05d1\u05dc\u05d9 \u05dc\u05d4\u05d2\u05d3\u05d9\u05e8 IOV + +ORA-17424=\u05de\u05e0\u05e1\u05d4 \u05e4\u05e2\u05d5\u05dc\u05ea Marsahling \u05d0\u05d7\u05e8\u05ea + +ORA-17425=\u05de\u05d5\u05d7\u05d6\u05e8 \u05d6\u05e8\u05dd \u05d1\u05d1\u05dc\u05d5\u05e7 PLSQL + +ORA-17426=\u05db\u05e8\u05d9\u05db\u05ea \u05d4\u05d9\u05e6\u05d9\u05d0\u05d4 \u05d5\u05d2\u05dd \u05db\u05e8\u05d9\u05db\u05ea \u05d4\u05db\u05e0\u05d9\u05e1\u05d4 \u05d4\u05df NULL + +ORA-17427=\u05e0\u05e2\u05e9\u05d4 \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1- OAC \u05e9\u05dc\u05d0 \u05d0\u05d5\u05ea\u05d7\u05dc + +ORA-17428=\u05d9\u05e9 \u05dc\u05d1\u05e6\u05e2 \u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea (logon) \u05dc\u05d0\u05d7\u05e8 \u05d4\u05d4\u05ea\u05e7\u05e9\u05e8\u05d5\u05ea (connect) + +ORA-17429=\u05d7\u05d9\u05d9\u05d1 \u05dc\u05d4\u05d9\u05d5\u05ea \u05dc\u05db\u05dc \u05d4\u05e4\u05d7\u05d5\u05ea \u05de\u05d7\u05d5\u05d1\u05e8 \u05dc\u05e9\u05e8\u05ea + +ORA-17430=\u05d7\u05d9\u05d9\u05d1 \u05dc\u05d4\u05d9\u05d5\u05ea \u05de\u05d7\u05d5\u05d1\u05e8 \u05dc\u05e9\u05e8\u05ea + +ORA-17431=\u05de\u05e9\u05e4\u05d8 \u05d4- SQL \u05dc\u05e0\u05d9\u05ea\u05d5\u05d7 \u05e8\u05d9\u05e7 + +ORA-17432=\u05d0\u05e4\u05e9\u05e8\u05d5\u05d9\u05d5\u05ea \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d5\u05ea \u05d1- all7 + +ORA-17433=\u05d0\u05e8\u05d2\u05d5\u05de\u05e0\u05d8\u05d9\u05dd \u05dc\u05d0 \u05ea\u05e7\u05e4\u05d9\u05dd \u05d1\u05e7\u05e8\u05d9\u05d0\u05d4 + +ORA-17434=\u05d0\u05d9\u05e0\u05d5 \u05e0\u05de\u05e6\u05d0 \u05d1\u05de\u05e6\u05d1 \'\u05d6\u05e8\u05d9\u05de\u05d4\' + +ORA-17435=\u05de\u05e1\u05e4\u05e8 \u05d4- in_out_binds \u05d1- IOV \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17436=\u05de\u05e1\u05e4\u05e8 \u05dc\u05d0 \u05ea\u05e7\u05e3 \u05e9\u05dc \u05d9\u05e6\u05d9\u05d0\u05d5\u05ea (outbinds) + +ORA-17437=\u05d4\u05d0\u05e8\u05d2\u05d5\u05de\u05e0\u05d8\u05d9\u05dd IN/OUT \u05d1\u05d1\u05dc\u05d5\u05e7 PLSQL \u05e9\u05d2\u05d5\u05d9\u05d9\u05dd + +ORA-17438=\u05e4\u05e0\u05d9\u05de\u05d9 - \u05e2\u05e8\u05da \u05d1\u05dc\u05ea\u05d9 \u05e6\u05e4\u05d5\u05d9 + +ORA-17439=\u05e1\u05d5\u05d2 \u05d4- SQL \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17440=DBItem/DBType \u05d4\u05d5\u05d0 null + +ORA-17441=\u05d2\u05e8\u05e1\u05ea Oracle \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea. \u05d4\u05d2\u05e8\u05e1\u05d4 \u05d4\u05de\u05d9\u05e0\u05d9\u05de\u05dc\u05d9\u05ea \u05d4\u05e0\u05ea\u05de\u05db\u05ea \u05d4\u05d9\u05d0 7.2.3. + +ORA-17442=\u05e2\u05e8\u05da \u05e1\u05de\u05df \u05d4\u05d9\u05d9\u05d7\u05d5\u05e1 \u05d0\u05d9\u05e0\u05d5 \u05ea\u05e7\u05e3 + +ORA-17443=\u05d0\u05d9\u05df \u05ea\u05de\u05d9\u05db\u05d4 \u05dc\u05de\u05e9\u05ea\u05de\u05e9 \u05d0\u05d5 \u05e1\u05d9\u05e1\u05de\u05d4 \u05e9\u05d4\u05dd null \u05d1\u05d3\u05e8\u05d9\u05d9\u05d1\u05e8 THIN + +ORA-17444=\u05d2\u05e8\u05e1\u05ea \u05d4\u05e4\u05e8\u05d5\u05d8\u05d5\u05e7\u05d5\u05dc TTC \u05e9\u05d4\u05ea\u05e7\u05d1\u05dc\u05d4 \u05de\u05d4\u05e9\u05e8\u05ea \u05d0\u05d9\u05e0\u05d4 \u05e0\u05ea\u05de\u05db\u05ea + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ja.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ja.properties new file mode 100644 index 0000000..0a732b2 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ja.properties @@ -0,0 +1,407 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u5185\u90e8\u30a8\u30e9\u30fc + +ORA-17002=I/O\u4f8b\u5916\u3067\u3059\u3002 + +ORA-17003=\u5217\u7d22\u5f15\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17004=\u5217\u306e\u578b\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17005=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u5217\u306e\u578b\u3067\u3059\u3002 + +ORA-17006=\u5217\u540d\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17007=\u52d5\u7684\u5217\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17008=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305f\u63a5\u7d9a\u3067\u3059\u3002 + +ORA-17009=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305f\u6587\u3067\u3059\u3002 + +ORA-17010=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305f\u7d50\u679c\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17011=\u7a7a\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17012=\u30d1\u30e9\u30e1\u30fc\u30bf\u306e\u578b\u304c\u7af6\u5408\u3057\u307e\u3059\u3002 + +ORA-17014=ResultSet.next\u306f\u30b3\u30fc\u30eb\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17015=\u6587\u306f\u53d6\u308a\u6d88\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17016=\u6587\u306f\u6642\u9593\u5207\u308c\u306b\u306a\u308a\u307e\u3057\u305f\u3002 + +ORA-17017=\u30ab\u30fc\u30bd\u30eb\u306f\u3059\u3067\u306b\u521d\u671f\u5316\u6e08\u3067\u3059\u3002 + +ORA-17018=\u7121\u52b9\u306a\u30ab\u30fc\u30bd\u30eb\u3067\u3059\u3002 + +ORA-17019=1\u3064\u306e\u554f\u5408\u305b\u306e\u307f\u8a18\u8ff0\u3067\u304d\u307e\u3059\u3002 + +ORA-17020=\u884c\u306e\u30d7\u30ea\u30d5\u30a7\u30c3\u30c1\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17021=\u5b9a\u7fa9\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17022=\u7d22\u5f15\u306b\u5b9a\u7fa9\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17023=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u6a5f\u80fd\u3067\u3059\u3002 + +ORA-17024=\u8aad\u307f\u8fbc\u3080\u30c7\u30fc\u30bf\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17025=defines.isNull()\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17026=\u6570\u5024\u306e\u30aa\u30fc\u30d0\u30fc\u30d5\u30ed\u30fc\u3067\u3059\u3002 + +ORA-17027=\u30b9\u30c8\u30ea\u30fc\u30e0\u306f\u3059\u3067\u306b\u30af\u30ed\u30fc\u30ba\u6e08\u3067\u3059\u3002 + +ORA-17028=\u73fe\u884c\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u304c\u30af\u30ed\u30fc\u30ba\u3055\u308c\u308b\u307e\u3067\u3001\u65b0\u898f\u7d50\u679c\u30bb\u30c3\u30c8\u3092\u5b9f\u884c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17029=setReadOnly: \u8aad\u8fbc\u307f\u5c02\u7528\u306e\u63a5\u7d9a\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002 + +ORA-17030=READ_COMMITTED\u304a\u3088\u3073SERIALIZABLE\u306e\u307f\u304c\u6709\u52b9\u306a\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30ec\u30d9\u30eb\u3067\u3059\u3002 + +ORA-17031=setAutoClose: \u81ea\u52d5\u30af\u30ed\u30fc\u30ba\u30fb\u30e2\u30fc\u30c9\u304c\u300c\u30aa\u30f3\u300d\u306e\u5834\u5408\u306e\u307f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u3059\u3002 + +ORA-17032=\u884c\u306e\u30d7\u30ea\u30d5\u30a7\u30c3\u30c1\u3092\u30bc\u30ed\u306b\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17033=\u4e0d\u5b8c\u5168\u306aSQL92\u6587\u5b57\u5217\u3067\u3059 - \u4f4d\u7f6e + +ORA-17034=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044SQL92\u30c8\u30fc\u30af\u30f3\u3067\u3059 - \u4f4d\u7f6e + +ORA-17035=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u30ad\u30e3\u30e9\u30af\u30bf\u30fb\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17036=OracleNumber\u3067\u4f8b\u5916\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17037=UTF8\u3068UCS2\u3068\u306e\u9593\u306e\u5909\u63db\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17038=\u30d0\u30a4\u30c8\u914d\u5217\u306e\u9577\u3055\u304c\u4e0d\u5341\u5206\u3067\u3059\u3002 + +ORA-17039=\u6587\u5b57\u914d\u5217\u306e\u9577\u3055\u304c\u4e0d\u5341\u5206\u3067\u3059\u3002 + +ORA-17040=\u63a5\u7d9aURL\u306b\u30b5\u30d6\u30fb\u30d7\u30ed\u30c8\u30b3\u30eb\u306e\u6307\u5b9a\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17041=IN\u307e\u305f\u306fOUT\u30d1\u30e9\u30e1\u30fc\u30bf\u304c\u3042\u308a\u307e\u305b\u3093 - \u7d22\u5f15: + +ORA-17042=\u30d0\u30c3\u30c1\u306e\u5024\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17043=\u30b9\u30c8\u30ea\u30fc\u30e0\u306e\u6700\u5927\u30b5\u30a4\u30ba\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17044=\u5185\u90e8\u30a8\u30e9\u30fc: \u30c7\u30fc\u30bf\u914d\u5217\u3092\u5272\u5f53\u3066\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17045=\u5185\u90e8\u30a8\u30e9\u30fc: \u30d0\u30c3\u30c1\u306e\u5024\u7bc4\u56f2\u3092\u8d85\u3048\u3066\u30d0\u30a4\u30f3\u30c9\u5909\u6570\u306b\u30a2\u30af\u30bb\u30b9\u3057\u3088\u3046\u3068\u3057\u307e\u3057\u305f\u3002 + +ORA-17046=\u5185\u90e8\u30a8\u30e9\u30fc: \u30c7\u30fc\u30bf\u30fb\u30a2\u30af\u30bb\u30b9\u306b\u5bfe\u3059\u308b\u7d22\u5f15\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17047=\u578b\u8a18\u8ff0\u5b50\u306e\u89e3\u6790\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17048=\u578b\u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17049=JAVA\u3068SQL\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u578b\u304c\u9069\u5408\u3057\u307e\u305b\u3093\u3002 + +ORA-17050=\u30d9\u30af\u30c8\u30eb\u306b\u305d\u306e\u3088\u3046\u306a\u8981\u7d20\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17051=\u3053\u306eAPI\u306f\u3001UDT\u4ee5\u5916\u306e\u578b\u306b\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17052=\u3053\u306e\u53c2\u7167\u306f\u6709\u52b9\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17053=\u30b5\u30a4\u30ba\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17054=LOB \u30ed\u30b1\u30fc\u30bf\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17055=\u7121\u52b9\u306a\u30ad\u30e3\u30e9\u30af\u30bf\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f - + +ORA-17056=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u30ad\u30e3\u30e9\u30af\u30bf\u30fb\u30bb\u30c3\u30c8\u3067\u3059\u3002 + +ORA-17057=\u30af\u30ed\u30fc\u30ba\u3055\u308c\u305fLOB\u3067\u3059\u3002 + +ORA-17058=\u5185\u90e8\u30a8\u30e9\u30fc: NLS\u5909\u63db\u7387\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17059=\u5185\u90e8\u8868\u73fe\u306e\u5909\u63db\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17060=\u8a18\u8ff0\u5b50\u306e\u69cb\u6210\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17061=\u8a18\u8ff0\u5b50\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17062=\u53c2\u7167\u30ab\u30fc\u30bd\u30eb\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17063=\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u4e2d\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17064=\u69cb\u6587\u304c\u7121\u52b9\u3001\u307e\u305f\u306f\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u540d\u304cNULL\u3067\u3059\u3002 + +ORA-17065=\u5909\u63db\u30af\u30e9\u30b9\u304cNULL\u3067\u3059\u3002 + +ORA-17066=\u30a2\u30af\u30bb\u30b9\u30fb\u30ec\u30a4\u30e4\u30fc\u306b\u306f\u56fa\u6709\u306e\u5b9f\u88c5\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17067=\u7121\u52b9\u306aOracle URL\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17068=\u30b3\u30fc\u30eb\u306b\u7121\u52b9\u306a\u5f15\u6570\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17069=\u660e\u793a\u7684\u306aXA\u30b3\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044\u3002 + +ORA-17070=\u30c7\u30fc\u30bf\u30fb\u30b5\u30a4\u30ba\u304c\u3053\u306e\u578b\u306e\u6700\u5927\u30b5\u30a4\u30ba\u3092\u8d85\u3048\u3066\u3044\u307e\u3059\u3002 + +ORA-17071=\u6700\u5927VARRAY\u5236\u9650\u3092\u8d85\u3048\u307e\u3057\u305f\u3002 + +ORA-17072=\u5217\u306b\u5bfe\u3057\u3066\u633f\u5165\u5024\u304c\u5927\u304d\u3059\u304e\u307e\u3059\u3002 + +ORA-17073=\u8ad6\u7406\u30cf\u30f3\u30c9\u30eb\u306f\u3059\u3067\u306b\u7121\u52b9\u3067\u3059\u3002 + +ORA-17074=\u540d\u524d\u30d1\u30bf\u30fc\u30f3\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17075=\u8ee2\u9001\u5c02\u7528\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u306b\u5bfe\u3059\u308b\u64cd\u4f5c\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17076=\u8aad\u8fbc\u307f\u5c02\u7528\u306e\u7d50\u679c\u30bb\u30c3\u30c8\u306b\u5bfe\u3059\u308b\u64cd\u4f5c\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17077=REF\u5024\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17078=\u63a5\u7d9a\u306f\u3059\u3067\u306b\u30aa\u30fc\u30d7\u30f3\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u64cd\u4f5c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17079=\u65e2\u5b58\u306e\u30e6\u30fc\u30b6\u30fc\u8cc7\u683c\u8a3c\u660e\u3068\u4e00\u81f4\u3057\u307e\u305b\u3093\u3002 + +ORA-17080=\u7121\u52b9\u306a\u30d0\u30c3\u30c1\u30fb\u30b3\u30de\u30f3\u30c9\u3067\u3059\u3002 + +ORA-17081=\u30d0\u30c3\u30c1\u51e6\u7406\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17082=\u73fe\u884c\u306e\u884c\u304c\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17083=\u633f\u5165\u884c\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17084=\u633f\u5165\u884c\u3067\u30b3\u30fc\u30eb\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17085=\u5024\u306e\u7af6\u5408\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 + +ORA-17086=\u633f\u5165\u884c\u306e\u5217\u5024\u304c\u672a\u5b9a\u7fa9\u3067\u3059\u3002 + +ORA-17087=\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u30fb\u30d2\u30f3\u30c8\u304c\u7121\u8996\u3055\u308c\u307e\u3057\u305f: setFetchDirection() + +ORA-17088=\u8981\u6c42\u3057\u305f\u7d50\u679c\u30bb\u30c3\u30c8\u306e\u578b\u3068\u540c\u6642\u5b9f\u884c\u30ec\u30d9\u30eb\u306e\u69cb\u6587\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 +ORA-17089=\u5185\u90e8\u30a8\u30e9\u30fc + +ORA-17090=\u64cd\u4f5c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17091=\u8981\u6c42\u3057\u305f\u578b\u304a\u3088\u3073/\u307e\u305f\u306f\u540c\u6642\u5b9f\u884c\u30ec\u30d9\u30eb\u3067\u7d50\u679c\u30bb\u30c3\u30c8\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17092=JDBC\u6587\u3067\u30b3\u30fc\u30eb\u51e6\u7406\u306e\u7d42\u4e86\u3092\u4f5c\u6210\u307e\u305f\u306f\u5b9f\u884c\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17093=OCI\u64cd\u4f5c\u3067OCI_SUCCESS_WITH_INFO\u304c\u623b\u308a\u307e\u3057\u305f\u3002 + +ORA-17094=\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30fb\u30bf\u30a4\u30d7\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u304c\u9069\u5408\u3057\u307e\u305b\u3093\u3002 + +ORA-17095=\u6587\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u30fb\u30b5\u30a4\u30ba\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17096=\u6587\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u306f\u3053\u306e\u8ad6\u7406\u63a5\u7d9a\u306b\u5bfe\u3057\u3066\u4f7f\u7528\u53ef\u80fd\u306b\u3067\u304d\u307e\u305b\u3093\u3002 + +ORA-17097=PL/SQL\u306e\u7d22\u5f15\u8868\u306e\u8981\u7d20\u30bf\u30a4\u30d7\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17098=\u7a7a\u306eLOB\u64cd\u4f5c\u306f\u7121\u52b9\u3067\u3059\u3002 + +ORA-17099=PL/SQL\u306e\u7d22\u5f15\u8868\u306e\u914d\u5217\u306e\u9577\u3055\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17100=\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306eJava\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17101=OCI\u63a5\u7d9a\u30d7\u30fc\u30eb\u30fb\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u7121\u52b9\u306a\u30d7\u30ed\u30d1\u30c6\u30a3\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17102=Bfile\u306f\u8aad\u8fbc\u307f\u5c02\u7528\u3067\u3059 + +ORA-17103=getConnection\u7d4c\u7531\u3067\u623b\u308b\u63a5\u7d9a\u30bf\u30a4\u30d7\u306f\u7121\u52b9\u3067\u3059\u3002\u304b\u308f\u308a\u306bgetJavaSqlConnection\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044 + +ORA-17104=\u5b9f\u884c\u3059\u308bSQL\u6587\u306f\u7a7a\u307e\u305f\u306fNULL\u306b\u3067\u304d\u307e\u305b\u3093 + +ORA-17105=\u63a5\u7d9a\u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u30bf\u30a4\u30e0\u30fb\u30be\u30fc\u30f3\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093 + +ORA-17106=\u6307\u5b9a\u3055\u308c\u305fJDBC-OCI\u30c9\u30e9\u30a4\u30d0\u306e\u63a5\u7d9a\u30d7\u30fc\u30eb\u69cb\u6210\u304c\u7121\u52b9\u3067\u3059 + +ORA-17107=\u7121\u52b9\u306a\u30d7\u30ed\u30ad\u30b7\u30fb\u30bf\u30a4\u30d7\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f + +ORA-17108=defineColumnType\u306b\u6700\u5927\u9577\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093 + +ORA-17109=\u6a19\u6e96\u306eJava\u6587\u5b57\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093 + +ORA-17110=\u5b9f\u884c\u304c\u8b66\u544a\u3067\u5b8c\u4e86\u3057\u307e\u3057\u305f + +ORA-17111=\u7121\u52b9\u306a\u63a5\u7d9a\u30ad\u30e3\u30c3\u30b7\u30e5TTL\u306e\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17112=\u6307\u5b9a\u3055\u308c\u305f\u30b9\u30ec\u30c3\u30c9\u9593\u9694\u304c\u7121\u52b9\u3067\u3059 + +ORA-17113=\u30b9\u30ec\u30c3\u30c9\u9593\u9694\u5024\u304c\u3001\u30ad\u30e3\u30c3\u30b7\u30e5\u306e\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u5024\u3088\u308a\u5927\u304d\u3044\u3067\u3059 + +ORA-17114=\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30ed\u30fc\u30ab\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30b3\u30df\u30c3\u30c8\u3092\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17115=\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30ed\u30fc\u30ab\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30ed\u30fc\u30eb\u30d0\u30c3\u30af\u3092\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17116=\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u81ea\u52d5\u30b3\u30df\u30c3\u30c8\u3092\u30aa\u30f3\u306b\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f + +ORA-17117=\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f + +ORA-17118=\u540d\u524d\u4ed8\u304d\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306eID\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17119=\u540d\u524d\u4ed8\u304d\u3067\u306a\u3044\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306e\u540d\u524d\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17120=\u81ea\u52d5\u30b3\u30df\u30c3\u30c8\u304c\u30aa\u30f3\u306e\u72b6\u614b\u3067\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17121=\u81ea\u52d5\u30b3\u30df\u30c3\u30c8\u304c\u30aa\u30f3\u306e\u72b6\u614b\u3067\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306b\u30ed\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 + +ORA-17122=\u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u3067\u30ed\u30fc\u30ab\u30eb\u30fb\u30c8\u30e9\u30f3\u30b6\u30af\u30b7\u30e7\u30f3\u30fb\u30bb\u30fc\u30d6\u30dd\u30a4\u30f3\u30c8\u306b\u30ed\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u304d\u307e\u305b\u3093 + +ORA-17123=\u7121\u52b9\u306a\u6587\u30ad\u30e3\u30c3\u30b7\u30e5\u30fb\u30b5\u30a4\u30ba\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17124=\u7121\u52b9\u306a\u63a5\u7d9a\u30ad\u30e3\u30c3\u30b7\u30e5\u306eInactivity\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u304c\u6307\u5b9a\u3055\u308c\u307e\u3057\u305f + +ORA-17125=\u660e\u793a\u7684\u306a\u30ad\u30e3\u30c3\u30b7\u30e5\u306b\u3088\u308a\u4e0d\u9069\u5207\u306a\u6587\u306e\u7a2e\u985e\u304c\u623b\u3055\u308c\u307e\u3057\u305f\u3002 + +ORA-17200=XA open\u6587\u5b57\u5217\u3092Java\u304b\u3089C\u3078\u6b63\u3057\u304f\u5909\u63db\u3067\u304d\u307e\u305b\u3093 + +ORA-17201=XA close\u6587\u5b57\u5217\u3092Java\u304b\u3089C\u3078\u6b63\u3057\u304f\u5909\u63db\u3067\u304d\u307e\u305b\u3093 + +ORA-17202=RA\u540d\u3092Java\u304b\u3089C\u3078\u6b63\u3057\u304f\u5909\u63db\u3067\u304d\u307e\u305b\u3093 + +ORA-17203=\u30dd\u30a4\u30f3\u30bf\u30fb\u30bf\u30a4\u30d7\u3092jlong\u306b\u30ad\u30e3\u30b9\u30c8\u3067\u304d\u307e\u305b\u3093 + +ORA-17204=\u5165\u529b\u914d\u5217\u304c\u77ed\u304b\u3059\u304e\u3066OCI\u30cf\u30f3\u30c9\u30eb\u3092\u4fdd\u6301\u3067\u304d\u307e\u305b\u3093 + +ORA-17205=xaoSvcCtx\u3092\u4f7f\u7528\u3057\u3066C-XA\u304b\u3089OCISvcCtx\u30cf\u30f3\u30c9\u30eb\u3092\u53d6\u5f97\u3059\u308b\u306e\u306b\u5931\u6557\u3057\u307e\u3057\u305f + +ORA-17206=xaoEnv\u3092\u4f7f\u7528\u3057\u3066C-XA\u304b\u3089OCIEnv\u3092\u53d6\u5f97\u3059\u308b\u306e\u306b\u5931\u6557\u3057\u307e\u3057\u305f + +ORA-17207=tnsEntry\u30d7\u30ed\u30d1\u30c6\u30a3\u304cDataSource\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093 + +ORA-17213=xa_open\u3067C-XA\u304b\u3089XAER_RMERR\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17215=xa_open\u3067C-XA\u304b\u3089XAER_INVAL\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17216=xa_open\u3067C-XA\u304b\u3089XAER_PROTO\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17233=xa_close\u3067C-XA\u304b\u3089XAER_RMERR\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17235=xa_close\u3067C-XA\u304b\u3089XAER_INVAL\u304c\u623b\u3055\u308c\u307e\u3057\u305f + +ORA-17236=xa_close\u3067C-XA\u304b\u3089XAER_PROTO\u304c\u623b\u3055\u308c\u307e\u3057\u305f + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u30d7\u30ed\u30c8\u30b3\u30eb\u9055\u53cd\u3067\u3059\u3002 + +ORA-17402=RPA\u30e1\u30c3\u30bb\u30fc\u30b8\u306f1\u3064\u306e\u306f\u305a\u3067\u3059\u3002 + +ORA-17403=RXH\u30e1\u30c3\u30bb\u30fc\u30b8\u306f1\u3064\u306e\u306f\u305a\u3067\u3059\u3002 + +ORA-17404=\u4e88\u5b9a\u3088\u308a\u591a\u3044RXD\u3092\u53d7\u3051\u53d6\u308a\u307e\u3057\u305f\u3002 + +ORA-17405=UAC\u306e\u9577\u3055\u306f\u30bc\u30ed\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17406=\u6700\u5927\u30d0\u30c3\u30d5\u30a1\u9577\u3092\u8d85\u3048\u3066\u3044\u307e\u3059\u3002 + +ORA-17407=\u578b\u8868\u73fe\u304c\u7121\u52b9\u3067\u3059(setRep)\u3002 + +ORA-17408=\u578b\u8868\u73fe\u304c\u7121\u52b9\u3067\u3059(getRep)\u3002 + +ORA-17409=\u30d0\u30c3\u30d5\u30a1\u9577\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17410=\u30bd\u30b1\u30c3\u30c8\u304b\u3089\u8aad\u307f\u8fbc\u3080\u30c7\u30fc\u30bf\u306f\u3053\u308c\u4ee5\u4e0a\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17411=\u30c7\u30fc\u30bf\u578b\u306e\u8868\u73fe\u304c\u9069\u5408\u3057\u307e\u305b\u3093\u3002 + +ORA-17412=\u578b\u306e\u9577\u3055\u304c\u6700\u5927\u3092\u8d85\u3048\u3066\u3044\u307e\u3059\u3002 + +ORA-17413=\u30ad\u30fc\u30fb\u30b5\u30a4\u30ba\u304c\u5927\u304d\u3059\u304e\u307e\u3059\u3002 + +ORA-17414=\u5217\u540d\u3092\u4fdd\u5b58\u3059\u308b\u306b\u306f\u30d0\u30c3\u30d5\u30a1\u30fb\u30b5\u30a4\u30ba\u304c\u4e0d\u5341\u5206\u3067\u3059\u3002 + +ORA-17415=\u3053\u306e\u578b\u306f\u672a\u51e6\u7406\u3067\u3059\u3002 + +ORA-17416=FATAL + +ORA-17417=NLS\u306e\u554f\u984c\u3067\u3001\u5217\u540d\u306e\u30c7\u30b3\u30fc\u30c9\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 + +ORA-17418=\u5185\u90e8\u69cb\u9020\u4f53\u306e\u30d5\u30a3\u30fc\u30eb\u30c9\u9577\u30a8\u30e9\u30fc\u3067\u3059\u3002 + +ORA-17419=\u7121\u52b9\u306a\u5217\u306e\u6570\u304c\u623b\u308a\u307e\u3057\u305f\u3002 + +ORA-17420=Oracle\u30d0\u30fc\u30b8\u30e7\u30f3\u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17421=\u578b\u307e\u305f\u306f\u63a5\u7d9a\u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 + +ORA-17422=\u30d5\u30a1\u30af\u30c8\u30ea\u306b\u7121\u52b9\u306a\u30af\u30e9\u30b9\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17423=IOV\u306e\u5b9a\u7fa9\u306a\u3057\u3067PLSQL\u30d6\u30ed\u30c3\u30af\u3092\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059\u3002 + +ORA-17424=\u7570\u306a\u308b\u914d\u5217\u64cd\u4f5c\u3092\u8a66\u307f\u3066\u3044\u307e\u3059\u3002 + +ORA-17425=PLSQL\u30d6\u30ed\u30c3\u30af\u3067\u30b9\u30c8\u30ea\u30fc\u30e0\u3092\u623b\u3057\u3066\u3044\u307e\u3059\u3002 + +ORA-17426=IN\u30d0\u30a4\u30f3\u30c9\u3001OUT\u30d0\u30a4\u30f3\u30c9\u3068\u3082\u306bNULL\u3067\u3059\u3002 + +ORA-17427=\u521d\u671f\u5316\u3055\u308c\u3066\u3044\u306a\u3044OAC\u3092\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059\u3002 + +ORA-17428=\u63a5\u7d9a\u5f8c\u306b\u30ed\u30b0\u30aa\u30f3\u306e\u30b3\u30fc\u30eb\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17429=\u5c11\u306a\u304f\u3068\u3082\u30b5\u30fc\u30d0\u30fc\u306b\u63a5\u7d9a\u3057\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17430=\u30b5\u30fc\u30d0\u30fc\u3078\u306e\u30ed\u30b0\u30aa\u30f3\u304c\u5fc5\u8981\u3067\u3059\u3002 + +ORA-17431=\u89e3\u6790\u3059\u308bSQL\u6587\u304cNULL\u3067\u3059\u3002 + +ORA-17432=all7\u3067\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17433=\u30b3\u30fc\u30eb\u306e\u5f15\u6570\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17434=\u30b9\u30c8\u30ea\u30fc\u30e0\u30fb\u30e2\u30fc\u30c9\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 + +ORA-17435=IOV\u3067in_out_binds\u306e\u6570\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17436=\u30a2\u30a6\u30c8\u30d0\u30a4\u30f3\u30c9\u306e\u6570\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17437=PLSQL\u30d6\u30ed\u30c3\u30af\u306eIN/OUT\u5f15\u6570\u306b\u30a8\u30e9\u30fc\u304c\u3042\u308a\u307e\u3059\u3002 + +ORA-17438=\u5185\u90e8 - \u4e88\u671f\u3057\u306a\u3044\u5024\u3067\u3059\u3002 + +ORA-17439=SQL\u306e\u578b\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17440=DBItem/DBType\u304cNULL\u3067\u3059\u3002 + +ORA-17441=\u3053\u306eOracle\u30d0\u30fc\u30b8\u30e7\u30f3\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u30027.2.3\u4ee5\u4e0a\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u3059\u3002 + +ORA-17442=Refcursor\u5024\u304c\u7121\u52b9\u3067\u3059\u3002 + +ORA-17443=NULL\u306e\u30e6\u30fc\u30b6\u30fc\u307e\u305f\u306f\u30d1\u30b9\u30ef\u30fc\u30c9\u306f\u3001THIN\u30c9\u30e9\u30a4\u30d0\u3067\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002 + +ORA-17444=\u30b5\u30fc\u30d0\u30fc\u304b\u3089\u53d7\u3051\u53d6\u3063\u305fTTC\u30d7\u30ed\u30c8\u30b3\u30eb\u30fb\u30d0\u30fc\u30b8\u30e7\u30f3\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ko.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ko.properties new file mode 100644 index 0000000..ae7a80a --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ko.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\ub0b4\ubd80 \uc624\ub958 + +ORA-17002=IO \uc608\uc678 \uc0c1\ud669 + +ORA-17003=\ubd80\uc801\ud569\ud55c \uc5f4 \uc778\ub371\uc2a4 + +ORA-17004=\ubd80\uc801\ud569\ud55c \uc5f4 \uc720\ud615 + +ORA-17005=\uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \uc5f4 \uc720\ud615 + +ORA-17006=\ubd80\uc801\ud569\ud55c \uc5f4 \uc774\ub984 + +ORA-17007=\ubd80\uc801\ud569\ud55c \ub3d9\uc801 \uc5f4 + +ORA-17008=\uc811\uc18d \uc885\ub8cc + +ORA-17009=\uba85\ub839\ubb38 \uc885\ub8cc + +ORA-17010=\uacb0\uacfc \uc9d1\ud569\uc744 \uc885\ub8cc\ud588\uc74c + +ORA-17011=\uacb0\uacfc \uc9d1\ud569\uc744 \ubaa8\ub450 \uc18c\ubaa8\ud588\uc74c + +ORA-17012=\ub9e4\uac1c\ubcc0\uc218 \uc720\ud615 \ucda9\ub3cc + +ORA-17014=ResultSet.next\uac00 \ud638\ucd9c\ub418\uc9c0 \uc54a\uc558\uc74c + +ORA-17015=\uba85\ub839\ubb38\uc774 \ucde8\uc18c\ub418\uc5c8\uc74c + +ORA-17016=\uba85\ub839\ubb38\uc774 \uc2dc\uac04 \ucd08\uacfc\ub418\uc5c8\uc74c + +ORA-17017=\ucee4\uc11c\uac00 \uc774\ubbf8 \ucd08\uae30\ud654\ub418\uc5c8\uc74c + +ORA-17018=\ubd80\uc801\ud569\ud55c \ucee4\uc11c + +ORA-17019=\uc9c8\uc758\ub9cc \uc124\uba85\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17020=\ubd80\uc801\ud569\ud55c \ud589 \uc0ac\uc804 \uc778\ucd9c\uc785\ub2c8\ub2e4 + +ORA-17021=\uc815\uc758\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17022=\uc778\ub371\uc2a4\uc5d0 \uc815\uc758\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17023=\uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \uae30\ub2a5\uc785\ub2c8\ub2e4 + +ORA-17024=\uc77d\uc740 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17025=defines.isNull ()\uc5d0 \uc624\ub958\uac00 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17026=\uc22b\uc790 \uc624\ubc84\ud50c\ub85c\uc6b0 + +ORA-17027=\uc2a4\ud2b8\ub9bc\uc774 \uc774\ubbf8 \uc885\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17028=\ud604\uc7ac ResultSet\uc774 \uc885\ub8cc\ub420 \ub54c\uae4c\uc9c0 \uc0c8\ub85c\uc6b4 \uc815\uc758\ub97c \uc218\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17029=setReadOnly: \uc77d\uae30 \uc804\uc6a9 \uc5f0\uacb0\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17030=READ_COMMITTED\uc640 SERIALIZABLE\ub9cc\uc774 \uc801\ud569\ud55c \ud2b8\ub79c\uc7ad\uc158 \ub808\ubca8\uc785\ub2c8\ub2e4 + +ORA-17031=setAutoClose: \uc790\ub3d9 \uc885\ub8cc \ubaa8\ub4dc \uc2e4\ud589\ub9cc \uc9c0\uc6d0\ud569\ub2c8\ub2e4 + +ORA-17032=\ud589 \uc0ac\uc804 \uc778\ucd9c\uc744 0\uc73c\ub85c \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17033=\ud574\ub2f9 \uc704\uce58\uc5d0 \ud3d0\uae30\ub41c SQL92 \ubb38\uc790\uc5f4 + +ORA-17034=\ud574\ub2f9 \uc704\uce58\uc5d0 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 SQL92 \ud1a0\ud070 + +ORA-17035=\ubb38\uc790 \uc9d1\ud569\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4!! + +ORA-17036=OracleNumber\uc5d0 \uc608\uc678 \uc0c1\ud669\uc774 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17037=UTF8\uacfc UCS2 \uac04\uc5d0 \uc11c\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17038=\ubc14\uc774\ud2b8 \ubc30\uc5f4\uc774 \ucda9\ubd84\ud788 \uae38\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17039=\ubb38\uc790 \ubc30\uc5f4\uc774 \ucda9\ubd84\ud788 \uae38\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17040=\uc5f0\uacb0 URL\uc5d0 \ud558\uc704 \ud504\ub85c\ud1a0\ucf5c\uc774 \uc9c0\uc815\ub418\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17041=\uc778\ub371\uc2a4\uc5d0 IN \ub610\ub294 OUT \ub9e4\uac1c\ubcc0\uc218\uac00 \uc5c6\uc74c: + +ORA-17042=\ubd80\uc801\ud569\ud55c \uc77c\uad04\ucc98\ub9ac \uac12\uc785\ub2c8\ub2e4 + +ORA-17043=\ubd80\uc801\ud569\ud55c \uc2a4\ud2b8\ub9bc \ucd5c\ub300 \ud06c\uae30\uc785\ub2c8\ub2e4 + +ORA-17044=\ub0b4\ubd80 \uc624\ub958: \ub370\uc774\ud130 \ubc30\uc5f4\uc774 \ud560\ub2f9\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17045=\ub0b4\ubd80 \uc624\ub958: \uc77c\uad04\ucc98\ub9ac \uac12\uc744 \ucd08\uacfc\ud558\ub294 \ubc14\uc778\ub4dc \uac12\uc5d0 \uc561\uc138\uc2a4\ub97c \uc2dc\ub3c4\ud569\ub2c8\ub2e4 + +ORA-17046=\ub0b4\ubd80 \uc624\ub958: \ub370\uc774\ud130 \uc561\uc138\uc2a4\uc5d0 \ubd80\uc801\ud569\ud55c \uc778\ub371\uc2a4\uc785\ub2c8\ub2e4 + +ORA-17047=\uc720\ud615 \uae30\uc220\uc790 \uad6c\ubb38 \ubd84\uc11d\uc5d0 \uc624\ub958\uac00 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17048=\uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uc720\ud615\uc785\ub2c8\ub2e4 + +ORA-17049=java \ubc0f sql \uac1d\uccb4 \uc720\ud615\uc5d0 \uc77c\uad00\uc131\uc774 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17050=\ud574\ub2f9 \uc694\uc18c\uac00 \ubca1\ud130\uc5d0 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17051=\uc774 API\ub294 UDT\uac00 \uc544\ub2cc \uc720\ud615\uc5d0 \uc0ac\uc6a9\ub420 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17052=\ubd80\uc801\ud569\ud55c \ucc38\uc870\uc785\ub2c8\ub2e4 + +ORA-17053=\ubd80\uc801\ud569\ud55c \ud06c\uae30\uc785\ub2c8\ub2e4 + +ORA-17054=\ubd80\uc801\ud569\ud55c LOB \ub85c\ucf00\uc774\ud130\uc785\ub2c8\ub2e4 + +ORA-17055=\ubd80\uc801\ud569\ud55c \ubb38\uc790\uc785\ub2c8\ub2e4 + +ORA-17056=\uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \ubb38\uc790 \uc9d1\ud569\uc785\ub2c8\ub2e4 + +ORA-17057=LOB\ub97c \uc885\ub8cc\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17058=\ub0b4\ubd80 \uc624\ub958: NLS \ubcc0\ud658 \ube44\uc728\uc774 \ubd80\uc801\ud569\ud569\ub2c8\ub2e4 + +ORA-17059=\ub0b4\ubd80 \ud45c\uae30\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17060=\uae30\uc220\uc790\ub97c \uc0dd\uc131\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17061=\uae30\uc220\uc790\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17062=\ubd80\uc801\ud569\ud55c \ucc38\uc870 \ucee4\uc11c\uc785\ub2c8\ub2e4 + +ORA-17063=\ud2b8\ub79c\uc7ad\uc158 \uc911\uc774 \uc544\ub2d9\ub2c8\ub2e4 + +ORA-17064=\uad6c\ubb38\uc774 \ubd80\uc801\ud569\ud558\uac70\ub098 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc774\ub984\uc774 \ub110\uc785\ub2c8\ub2e4 + +ORA-17065=\ubcc0\ud658 \ud074\ub798\uc2a4\uac00 \ub110\uc785\ub2c8\ub2e4 + +ORA-17066=\uc561\uc138\uc2a4 \uce35\uc5d0 \uc801\ud569\ud55c \uad6c\ud604\uc774 \ud544\uc694\ud569\ub2c8\ub2e4 + +ORA-17067=\ubd80\uc801\ud569\ud55c Oracle URL\uc774 \uc9c0\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17068=\ud638\ucd9c\uc5d0 \ubd80\uc801\ud569\ud55c \uc778\uc218\uc785\ub2c8\ub2e4 + +ORA-17069=\uba85\uc2dc\uc801 XA \ud638\ucd9c\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4 + +ORA-17070=\ub370\uc774\ud130 \ud06c\uae30\uac00 \ud574\ub2f9 \uc720\ud615\uc758 \ucd5c\ub300 \ud06c\uae30\ubcf4\ub2e4 \ud07d\ub2c8\ub2e4 + +ORA-17071=\ucd5c\ub300 VARRAY \ud55c\uacc4\ub97c \ucd08\uacfc\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17072=\uc5f4\uc5d0 \ub108\ubb34 \ud070 \uac12\uc774 \uc0bd\uc785\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17073=\ub17c\ub9ac\uc801 \ud578\ub4e4\uc774 \ub354 \uc774\uc0c1 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17074=\ubd80\uc801\ud569\ud55c \uc774\ub984 \ud328\ud134\uc785\ub2c8\ub2e4 + +ORA-17075=\uc804\ubc29\ud5a5 \uc804\uc6a9 \uacb0\uacfc \uc9d1\ud569\uc5d0 \ubd80\uc801\ud569\ud55c \uc791\uc5c5\uc774 \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17076=\uc77d\uae30 \uc804\uc6a9 \uacb0\uacfc \uc9d1\ud569\uc5d0 \ubd80\uc801\ud569\ud55c \uc791\uc5c5\uc774 \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17077=REF \uac12 \uc124\uc815\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17078=\uc5f0\uacb0\uc774 \uc5f4\ub824 \uc788\uc73c\ubbc0\ub85c \uc791\uc5c5\uc744 \uc218\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17079=\uc0ac\uc6a9\uc790 \uc778\uc99d\uc11c\uac00 \uae30\uc874 \uc778\uc99d\uc11c\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc74c + +ORA-17080=\ubd80\uc801\ud569\ud55c \uc77c\uad04\ucc98\ub9ac \uba85\ub839\uc785\ub2c8\ub2e4 + +ORA-17081=\uc77c\uad04\ucc98\ub9ac \uc791\uc5c5 \uc911 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17082=\ud604\uc7ac \ud589\uc774 \uc544\ub2d9\ub2c8\ub2e4 + +ORA-17083=\uc0bd\uc785 \ud589\uc5d0 \uc788\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17084=\uc0bd\uc785 \ud589\uc5d0\uc11c \ud638\ucd9c\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17085=\uac12 \ucda9\ub3cc\uc774 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4 + +ORA-17086=\uc0bd\uc785 \ud589\uc5d0\uc11c \uc5f4 \uac12\uc774 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17087=\uc131\ub2a5 \ud78c\ud2b8 \ubb34\uc2dc: setFetchDirection() + +ORA-17088=\uc694\uccad\ub41c \uacb0\uacfc \uc9d1\ud569 \uc720\ud615\uacfc \ub3d9\uc2dc\uc131 \uc218\uc900\uc744 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \uad6c\ubb38\uc785\ub2c8\ub2e4 +ORA-17089=\ub0b4\ubd80 \uc624\ub958 + +ORA-17090=\ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc740 \uc791\uc5c5 + +ORA-17091=\uc694\uccad\ub41c \uc720\ud615 \ubc0f \ub3d9\uc2dc\uc131 \uc218\uc900\uc5d0\uc11c \uacb0\uacfc \uc9d1\ud569\uc744 \uc0dd\uc131\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17092=\ud638\ucd9c \ucc98\ub9ac \uc885\ub8cc \uc2dc JDBC \ubb38\uc744 \uc0dd\uc131\ud558\uac70\ub098 \uc2e4\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. + +ORA-17093=OCI \uc791\uc5c5\uc774 OCI_SUCCESS_WITH_INFO\ub97c \ubc18\ud658\ud588\uc2b5\ub2c8\ub2e4. + +ORA-17094=\uac1d\uccb4 \uc720\ud615 \ubc84\uc804\uc774 \ub9de\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. + +ORA-17095=\uba85\ub839\ubb38 \uce90\uc2dc \ud06c\uae30\uac00 \uc124\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17096=\uc774 \ub17c\ub9ac\uc801 \uc811\uc18d\uc5d0 \uba85\ub839\ubb38\uc744 \uce90\uc2dc\ub85c \uc800\uc7a5\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. + +ORA-17097=\ubd80\uc801\ud569\ud55c PL/SQL \uc778\ub371\uc2a4 \ud14c\uc774\ube14 \uc694\uc18c \uc720\ud615 + +ORA-17098=\ubd80\uc801\ud569\ud55c \ube48 lob \uc791\uc5c5 + +ORA-17099=\ubd80\uc801\ud569\ud55c PL/SQL \uc778\ub371\uc2a4 \ud14c\uc774\ube14 \ubc30\uc5f4 \uae38\uc774 + +ORA-17100=\ubd80\uc801\ud569\ud55c \ub370\uc774\ud130\ubca0\uc774\uc2a4 Java \uac1d\uccb4 + +ORA-17101=OCI \uc811\uc18d \ud480 \uac1d\uccb4\uc5d0 \ubd80\uc801\ud569\ud55c \ub4f1\ub85d\uc815\ubcf4 + +ORA-17102=Bfile\uc774 \uc77d\uae30 \uc804\uc6a9\uc784 + +ORA-17103=getConnection\uc744 \ud1b5\ud574 \ubc18\ud658\ud558\uae30\uc5d0 \ubd80\uc801\ud569\ud55c \uc811\uc18d \uc720\ud615\uc785\ub2c8\ub2e4. \ub300\uc2e0 getJavaSqlConnection\uc744 \uc0ac\uc6a9\ud558\uc2ed\uc2dc\uc624. + +ORA-17104=\uc2e4\ud589\ud560 SQL \ubb38\uc740 \ube44\uc5b4 \uc788\uac70\ub098 \ub110\uc77c \uc218 \uc5c6\uc74c + +ORA-17105=\uc811\uc18d \uc138\uc158 \uc2dc\uac04\ub300\uac00 \uc124\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17106=\ubd80\uc801\ud569\ud55c JDBC-OCI \ub4dc\ub77c\uc774\ubc84 \uc811\uc18d \ud480 \uad6c\uc131\uc774 \uc9c0\uc815\ub428 + +ORA-17107=\ubd80\uc801\ud569\ud55c proxy \uc720\ud615\uc774 \uc9c0\uc815\ub428 + +ORA-17108=defineColumnType\uc5d0 \ucd5c\ub300 \uae38\uc774\uac00 \uc9c0\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17109=\ud45c\uc900 Java \ubb38\uc790 \uc778\ucf54\ub529\uc744 \ucc3e\uc744 \uc218 \uc5c6\uc74c + +ORA-17110=\uacbd\uace0\uc640 \ud568\uaed8 \uc2e4\ud589\uc774 \uc644\ub8cc\ub428 + +ORA-17111=\ubd80\uc801\ud569\ud55c \uc811\uc18d \uce90\uc2dc TTL \uc2dc\uac04 \ucd08\uacfc\uac00 \uc9c0\uc815\ub428 + +ORA-17112=\ubd80\uc801\ud569\ud55c \uc2a4\ub808\ub4dc \uac04\uaca9\uc774 \uc9c0\uc815\ub428 + +ORA-17113=\uc2a4\ub808\ub4dc \uac04\uaca9 \uac12\uc774 \uce90\uc2dc \uc2dc\uac04 \ucd08\uacfc \uac12\ubcf4\ub2e4 \ud07c + +ORA-17114=\uc740(\ub294) \uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \ub85c\uceec \ud2b8\ub79c\uc7ad\uc158 \ucee4\ubc0b\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc74c + +ORA-17115=\uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \ub85c\uceec \ud2b8\ub79c\uc7ad\uc158 \ub864\ubc31\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc74c + +ORA-17116=\ud65c\uc131 \uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \uc790\ub3d9 \ucee4\ubc0b\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc74c + +ORA-17117=\ud65c\uc131 \uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc5d0 \uc800\uc7a5\uc810\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc74c + +ORA-17118=\uc774\ub984\uc774 \uc9c0\uc815\ub41c \uc800\uc7a5\uc810\uc5d0 \ub300\ud55c ID\ub97c \uac00\uc838\uc62c \uc218 \uc5c6\uc74c + +ORA-17119=\uc774\ub984\uc774 \uc9c0\uc815\ub418\uc9c0 \uc54a\uc740 \uc800\uc7a5\uc810\uc5d0 \ub300\ud55c \uc774\ub984\uc744 \uac00\uc838\uc62c \uc218 \uc5c6\uc74c + +ORA-17120=\uc790\ub3d9 \ucee4\ubc0b\uc744 \uc124\uc815\ud55c \uc0c1\ud0dc\ub85c \uc800\uc7a5\uc810\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc74c + +ORA-17121=\uc790\ub3d9 \ucee4\ubc0b\uc744 \uc124\uc815\ud55c \uc0c1\ud0dc\ub85c \uc800\uc7a5\uc810\uc73c\ub85c \ub864\ubc31\ud560 \uc218 \uc5c6\uc74c + +ORA-17122=\uc804\uc5ed \ud2b8\ub79c\uc7ad\uc158\uc758 \ub85c\uceec txn \uc800\uc7a5\uc810\uc73c\ub85c \ub864\ubc31\ud560 \uc218 \uc5c6\uc74c + +ORA-17123=\ubd80\uc801\ud569\ud55c \uba85\ub839\ubb38 \uce90\uc2dc \ud06c\uae30\uac00 \uc9c0\uc815\ub428 + +ORA-17124=\ubd80\uc801\ud569\ud55c \uc811\uc18d \uce90\uc2dc \ube44\ud65c\uc131 \uc2dc\uac04 \ucd08\uacfc\uac00 \uc9c0\uc815\ub428 + +ORA-17200=Java\uc5d0\uc11c C\ub85c XA \uc5f4\uae30 \ubb38\uc790\uc5f4\uc744 \uc81c\ub300\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17201=Java\uc5d0\uc11c C\ub85c XA \ub2eb\uae30 \ubb38\uc790\uc5f4\uc744 \uc81c\ub300\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17202=Java\uc5d0\uc11c C\ub85c RM \uc774\ub984\uc744 \uc81c\ub300\ub85c \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17203=jlong\uc73c\ub85c \ud3ec\uc778\ud130 \uc720\ud615\uc744 \ubcc0\ud658\ud560 \uc218 \uc5c6\uc74c + +ORA-17204=\uc785\ub825 \ubc30\uc5f4\uc774 OCI \ud578\ub4e4\uc744 \ubcf4\uc720\ud558\uae30\uc5d0 \ub108\ubb34 \uc9e7\uc74c + +ORA-17205=xaoSvcCtx\ub97c \uc0ac\uc6a9\ud558\uc5ec C-XA\uc5d0\uc11c OCISvcCtx \ud578\ub4e4 \uc5bb\uae30 \uc2e4\ud328 + +ORA-17206=xaoEnv\ub97c \uc0ac\uc6a9\ud558\uc5ec C-XA\uc5d0\uc11c OCIEnv \ud578\ub4e4 \uc5bb\uae30 \uc2e4\ud328 + +ORA-17207=tnsEntry \ub4f1\ub85d\uc815\ubcf4\uac00 DataSource\uc5d0 \uc124\uc815\ub418\uc9c0 \uc54a\uc74c + +ORA-17213=xa_open \ub3c4\uc911 C-XA\uac00 XAER_RMERR \ubc18\ud658 + +ORA-17215=xa_open \ub3c4\uc911 C-XA\uac00 XAER_INVAL \ubc18\ud658 + +ORA-17216=xa_open \ub3c4\uc911 C-XA\uac00 XAER_PROTO \ubc18\ud658 + +ORA-17233=xa_close \ub3c4\uc911 C-XA\uac00 XAER_RMERR \ubc18\ud658 + +ORA-17235=xa_close \ub3c4\uc911 C-XA\uac00 XAER_INVAL \ubc18\ud658 + +ORA-17236=xa_close \ub3c4\uc911 C-XA\uac00 XAER_PROTO \ubc18\ud658 + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\ud504\ub85c\ud1a0\ucf5c \uc704\ubc18 + +ORA-17402=\ud558\ub098\uc758 RPA \uba54\uc2dc\uc9c0\ub9cc \ud544\uc694 + +ORA-17403=\ud558\ub098\uc758 RXH \uba54\uc2dc\uc9c0\ub9cc \ud544\uc694 + +ORA-17404=\uc608\uc0c1\ubcf4\ub2e4 \ub9ce\uc740 RXD \uc218\uc2e0 + +ORA-17405=UAC \uae38\uc774\uac00 0\uc774 \uc544\ub2d8 + +ORA-17406=\ucd5c\ub300 \ubc84\ud37c \uae38\uc774 \ucd08\uacfc + +ORA-17407=\ubd80\uc801\ud569\ud55c \uc720\ud615 \ud45c\uae30(set \ubc29\uc2dd)\r\n + +ORA-17408=\ubd80\uc801\ud569\ud55c \uc720\ud615 \ud45c\uae30(get \ubc29\uc2dd) + +ORA-17409=\ubc84\ud37c \uae38\uc774\uac00 \ubd80\uc801\ud569\ud569\ub2c8\ub2e4 + +ORA-17410=\uc18c\ucf13\uc5d0\uc11c \uc77d\uc744 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17411=\ub370\uc774\ud130 \uc720\ud615 \ud45c\uae30\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17412=\uc720\ud615 \uae38\uc774\uac00 \ucd5c\ub300\uac12\ubcf4\ub2e4 \ud07d\ub2c8\ub2e4 + +ORA-17413=\ud0a4 \ud06c\uae30\ub97c \ucd08\uacfc\ud569\ub2c8\ub2e4 + +ORA-17414=\uc5f4 \uc774\ub984\uc744 \uc800\uc7a5\ud558\uae30\uc5d0 \ubc84\ud37c \ud06c\uae30\uac00 \ubd80\uc871\ud569\ub2c8\ub2e4 + +ORA-17415=\ud574\ub2f9 \uc720\ud615\uc774 \ucc98\ub9ac\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17416=FATAL + +ORA-17417=NLS \ubb38\uc81c, \uc5f4 \uc774\ub984\uc744 \ud574\ub3c5\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 + +ORA-17418=\ub0b4\ubd80 \uad6c\uc870\uc758 \ud544\ub4dc \uae38\uc774\uc5d0 \uc624\ub958\uac00 \uc788\uc2b5\ub2c8\ub2e4 + +ORA-17419=\ubd80\uc801\ud569\ud55c \uac1c\uc218\uc758 \uc5f4\uc774 \ubc18\ud658\ub418\uc5c8\uc2b5\ub2c8\ub2e4 + +ORA-17420=Oracle \ubc84\uc804\uc774 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17421=\uc720\ud615 \ub610\ub294 \uc5f0\uacb0\uc774 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4 + +ORA-17422=factory\uc5d0 \ubd80\uc801\ud569\ud55c \ud074\ub798\uc2a4 + +ORA-17423=\uc815\uc758\ub41c IOV\uac00 \uc5c6\uc774 PLSQL \ube14\ub85d \uc0ac\uc6a9 + +ORA-17424=\ub2e4\ub978 \ub9c8\uc15c\ub9c1 \uc791\uc5c5\uc744 \uc2dc\ub3c4 \uc911 + +ORA-17425=PLSQL \ube14\ub85d\uc5d0 \uc788\ub294 \uc2a4\ud2b8\ub9bc\uc744 \ubc18\ud658 + +ORA-17426=IN \ub9e4\uac1c\ubcc0\uc218\uc640 OUT \ub9e4\uac1c\ubcc0\uc218\uac00 \ubaa8\ub450 NULL\uc784 + +ORA-17427=\ucd08\uae30\ud654\ub418\uc9c0 \uc54a\uc740 OAC\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4 + +ORA-17428=\ub85c\uadf8\uc778\uc740 \uc811\uc18d \ud6c4\uc5d0 \ud638\ucd9c\ub418\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17429=\uc801\uc5b4\ub3c4 \uc11c\ubc84\uc5d0 \uc5f0\uacb0\ub418\uc5b4 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17430=\uc11c\ubc84\uc5d0 \ub85c\uadf8\uc628\ub418\uc5b4 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4 + +ORA-17431=\uad6c\ubb38 \ubd84\uc11d\ud560 SQL \ubb38\uc774 \ub110\uc785\ub2c8\ub2e4 + +ORA-17432=oracle 7\uc5d0 \ubd80\uc801\ud569\ud55c \uc635\uc158 + +ORA-17433=\ud638\ucd9c\uc5d0 \ubd80\uc801\ud569\ud55c \uc778\uc218\uc785\ub2c8\ub2e4 + +ORA-17434=\uc2a4\ud2b8\ub9bc \ubaa8\ub4dc\uac00 \uc544\ub2d9\ub2c8\ub2e4 + +ORA-17435=IOV\uc5d0\uc11c in_out_binds \uc218\uac00 \ubd80\uc801\ud569\ud569\ub2c8\ub2e4 + +ORA-17436=\ubd80\uc801\ud569\ud55c OUT \ub9e4\uac1c\ubcc0\uc218 \uc218 + +ORA-17437=PLSQL \ube14\ub85d\uc758 IN/OUT \uc778\uc218\uc5d0 \uc624\ub958 + +ORA-17438=\ub0b4\ubd80 - \uc608\uae30\uce58 \ubabb\ud55c \uac12\uc785\ub2c8\ub2e4 + +ORA-17439=\ubd80\uc801\ud569\ud55c SQL \uc720\ud615\uc785\ub2c8\ub2e4 + +ORA-17440=DBItem/DBType\uc774 \ub110\uc785\ub2c8\ub2e4 + +ORA-17441=Oracle \ubc84\uc804\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \ucd5c\uc18c\ud55c 7.2.3 \ubc84\uc804 \uc774\uc0c1\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. + +ORA-17442=\ubd80\uc801\ud569\ud55c Refcursor \uac12\uc785\ub2c8\ub2e4 + +ORA-17443=\ub110 \uc0ac\uc6a9\uc790\ub098 \uc554\ud638\uac00 THIN \ub4dc\ub77c\uc774\ubc84\uc5d0\uc11c \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +ORA-17444=\uc11c\ubc84\ub85c\ubd80\ud130 \uc218\uc2e0\ub41c TTC \ud504\ub85c\ud1a0\ucf5c \ubc84\uc804\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_nl.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_nl.properties new file mode 100644 index 0000000..449dadb --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_nl.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Interne fout + +ORA-17002=I/O-uitzondering + +ORA-17003=Ongeldige kolomindex. + +ORA-17004=Ongeldig kolomtype. + +ORA-17005=Kolomtype wordt niet ondersteund. + +ORA-17006=Ongeldige kolomnaam. + +ORA-17007=Ongeldige dynamische kolom + +ORA-17008=Gesloten verbinding + +ORA-17009=Gesloten opdracht + +ORA-17010=Gesloten resultatenset + +ORA-17011=Geen resultatenset meer beschikbaar. + +ORA-17012=Parametertypen conflicteren. + +ORA-17014=ResultSet.next is niet aangeroepen. + +ORA-17015=Opdracht is geannuleerd. + +ORA-17016=Time-out opgetreden voor opdracht. + +ORA-17017=Cursor al ge\u00efnitialiseerd. + +ORA-17018=Ongeldige cursor. + +ORA-17019=Kan alleen een zoekvraag beschrijven. + +ORA-17020=Ongeldige rij-prefetch. + +ORA-17021=Definities ontbreken. + +ORA-17022=Definities ontbreken bij index. + +ORA-17023=Kenmerk wordt niet ondersteund. + +ORA-17024=Geen gegevens gelezen. + +ORA-17025=Fout in defines.isNull (). + +ORA-17026=Numerieke overloop + +ORA-17027=Gegevensstroom is al gesloten. + +ORA-17028=Er kunnen geen nieuwe definities worden gemaakt totdat de huidige resultatenset is gesloten. + +ORA-17029=setReadOnly: alleen-lezen-verbindingen worden niet ondersteund. + +ORA-17030=READ_COMMITTED en SERIALIZABLE zijn de enige geldige transactieniveaus. + +ORA-17031=setAutoClose: alleen de modus automatisch sluiten \\\'aan\\\' wordt ondersteund. + +ORA-17032=Kan rij-prefetch niet op nul instellen. + +ORA-17033=Onjuist opgebouwde SQL92-string op positie + +ORA-17034=Niet-ondersteund SQL92-token op positie + +ORA-17035=Tekenset wordt niet ondersteund! + +ORA-17036=Uitzondering in OracleNumber. + +ORA-17037=Converteren tussen UTF8 en UCS2 is mislukt. + +ORA-17038=Byte-array is niet lang genoeg. + +ORA-17039=Tekenarray is niet lang genoeg. + +ORA-17040=Subprotocol moet worden opgegeven in verbindings-URL. + +ORA-17041=Parameter IN of UIT ontbreekt bij index. + +ORA-17042=Ongeldige batchwaarde. + +ORA-17043=Ongeldige maximumgrootte van gegevensstroom. + +ORA-17044=Interne fout: gegevensarray is niet toegewezen. + +ORA-17045=Interne fout: poging om bindwaarden te benaderen die boven de batchwaarde liggen. + +ORA-17046=Interne fout: ongeldige index voor gegevenstoegang. + +ORA-17047=Fout bij ontleden typedescriptor. + +ORA-17048=Niet-gedefinieerd type. + +ORA-17049=Inconsistente java- en sql-objecttypen + +ORA-17050=Een dergelijk element komt niet voor in de vector. + +ORA-17051=Deze API kan niet worden gebruikt voor andere dan UDT-typen. + +ORA-17052=Deze referentie is niet geldig. + +ORA-17053=De grootte is niet geldig. + +ORA-17054=De LOB-locator is niet geldig. + +ORA-17055=Ongeldig teken aangetroffen in + +ORA-17056=Tekenset wordt niet ondersteund. + +ORA-17057=Gesloten LOB + +ORA-17058=Interne fout: ongeldige NLS-conversieverhouding. + +ORA-17059=Converteren naar interne representatie is mislukt. + +ORA-17060=Maken van descriptor is mislukt. + +ORA-17061=Descriptor ontbreekt. + +ORA-17062=Ongeldige ref.-cursor + +ORA-17063=Niet in een transactie + +ORA-17064=Ongeldige syntaxis of databasenaam is NULL. + +ORA-17065=Conversieklasse is NULL. + +ORA-17066=Specifieke implementatie voor de toegangslaag vereist. + +ORA-17067=Ongeldige Oracle-URL opgegeven. + +ORA-17068=Ongeldig argument of argumenten in aanroep. + +ORA-17069=Gebruik expliciete XA-aanroep. + +ORA-17070=Gegevensgrootte overschrijdt maximumgrootte voor dit type. + +ORA-17071=Maximum VARRAY-limiet overschreden. + +ORA-17072=Ingevoegde waarde is te groot voor kolom. + +ORA-17073=Logische handle is niet langer geldig. + +ORA-17074=Ongeldig naampatroon. + +ORA-17075=Ongeldige bewerking voor alleen-doorsturen resultatenset. + +ORA-17076=Ongeldige bewerking voor alleen-lezen resultatenset. + +ORA-17077=Instellen REF-waarde is mislukt. + +ORA-17078=Kan bewerking niet uitvoeren, omdat de verbindingen al zijn geopend. + +ORA-17079=Validatiegegevens gebruiker komen niet overeen met bestaande gegevens. + +ORA-17080=Ongeldige batchopdracht. + +ORA-17081=Er is een fout opgetreden bij het uitvoeren van de batchopdracht. + +ORA-17082=Geen huidige rij. + +ORA-17083=Niet in de rij voor invoegen. + +ORA-17084=Aangeroepen vanuit de rij voor invoegen. + +ORA-17085=Er is een waardenconflict opgetreden. + +ORA-17086=Ongedefinieerde kolomwaarde in de rij voor invoegen. + +ORA-17087=Genegeerde prestatietip: setFetchDirection(). + +ORA-17088=Syntaxis voor het aangevraagde type resultatenset en het concurrency-niveau wordt niet ondersteund. +ORA-17089=Interne fout. + +ORA-17090=Bewerking is niet toegestaan. + +ORA-17091=Kan geen resultatenset aanmaken van het aangevraagde type en/of concurrency-niveau. + +ORA-17092=JDBC-opdrachten kunnen niet worden aangemaakt of uitgevoerd bij het afhandelen van een aanroep + +ORA-17093=OCI-bewerking heeft OCI_SUCCESS_WITH_INFO teruggegeven. + +ORA-17094=Objecttypeversies komen niet overeen. + +ORA-17095=Grootte van opdrachtencache is niet ingesteld. + +ORA-17096=Opdracht-caching kan niet worden ingeschakeld voor deze logische verbinding. + +ORA-17097=Ongeldig elementtype PL/SQL-indextabel. + +ORA-17098=Ongeldige lege LOB-bewerking. + +ORA-17099=Ongeldige arraylengte PL/SQL-indextabel. + +ORA-17100=Ongeldig Java-object van database. + +ORA-17101=Ongeldige eigenschappen in OCI-verbindingsgroepobject. + +ORA-17102=Bfile is alleen-lezen. + +ORA-17103=Ongeldig verbindingstype om terug te geven via getConnection. Gebruik in plaats daarvan getJavaSqlConnection. + +ORA-17104=De uit te voeren SQL-instructie kan niet leeg of NULL zijn. + +ORA-17105=Tijdzone van verbindingssessie is niet ingesteld. + +ORA-17106=Ongeldige configuratie voor verbindingsgroep JDBC-OCI-driver opgegeven. + +ORA-17107=Er is een ongeldig proxytype opgegeven. + +ORA-17108=Geen maximale lengte opgegeven in defineColumnType. + +ORA-17109=Standaard Java-tekencodering niet gevonden. + +ORA-17110=Uitvoering voltooid met waarschuwing. + +ORA-17111=Ongeldige cache TLL-time-out voor verbinding opgegeven + +ORA-17112=Ongeldig threadinterval opgegeven. + +ORA-17113=Threadintervalwaarde is hoger dan de waarde van de cachetime-out. + +ORA-17114=Kon geen lokale transactie-commit gebruiken in een algemene transactie. + +ORA-17115=Kon geen lokale transactie-rollback gebruiken in een algemene transactie. + +ORA-17116=Kon automatisch vastleggen niet inschakelen in een actieve, algemene transactie. + +ORA-17117=Kon savepoint niet instellen in een actieve, algemene transactie. + +ORA-17118=Kon geen ID krijgen voor een benoemd savepoint. + +ORA-17119=Kon geen naam krijgen voor een niet-benoemd savepoint. + +ORA-17120=Kon geen savepoint instellen als automatisch vastleggen is ingeschakeld. + +ORA-17121=Kon geen rollback naar een savepoint uitvoeren als automatisch vastleggen is ingeschakeld. + +ORA-17122=Kon geen rollback naar een lokaal txn-savepoint in een globale transactie uitvoeren. + +ORA-17123=Ongeldige grootte voor opdrachtencache opgegeven. + +ORA-17124=Ongeldige time-out voor inactiviteit van verbinding cache opgegeven. + +ORA-17200=Kan de XA open-string niet goed converteren van Java naar C. + +ORA-17201=Kan de XA sluit-string niet goed converteren van Java naar C. + +ORA-17202=Kan de RM-naam niet goed converteren van Java naar C. + +ORA-17203=Kon aanwijzertype niet toedelen aan jlong. + +ORA-17204=Capaciteit invoerarray te klein voor OCI-handles. + +ORA-17205=Verkrijgen van OCISvcCtx-handle van C-XA met behulp van xaoSvcCtx is mislukt. + +ORA-17206=Verkrijgen van OCIEnv-handle van C-XA met behulp van xaoEnv is mislukt. + +ORA-17207=De eigenschap tnsEntry is niet ingesteld in DataSource. + +ORA-17213=C-XA retourneert XAER_RMERR tijdens xa_open. + +ORA-17215=C-XA retourneert XAER_INVAL tijdens xa_open. + +ORA-17216=C-XA retourneert XAER_PROTO tijdens xa_open. + +ORA-17233=C-XA retourneert XAER_RMERR tijdens xa_close. + +ORA-17235=C-XA retourneert XAER_INVAL tijdens xa_close. + +ORA-17236=C-XA retourneert XAER_PROTO tijdens xa_close. + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protocolschending + +ORA-17402=Er wordt slechts \u00e9\u00e9n RPA-bericht verwacht. + +ORA-17403=Er wordt slechts \u00e9\u00e9n RXH-bericht verwacht. + +ORA-17404=Er zijn meer RXD\\\'s ontvangen dan verwacht. + +ORA-17405=UAC-lengte is niet nul. + +ORA-17406=Maximumbufferlengte wordt overschreden. + +ORA-17407=Ongeldige typerepresentatie (setRep). + +ORA-17408=Ongeldige typerepresentatie (getRep). + +ORA-17409=Ongeldige bufferlengte. + +ORA-17410=Geen gegevens meer te lezen vanuit socket. + +ORA-17411=Representaties van gegevenstypen komen niet overeen. + +ORA-17412=Typelengte groter dan maximum. + +ORA-17413=Sleutelgrootte wordt overschreden. + +ORA-17414=Niet genoeg bufferruimte om kolomnamen op te slaan. + +ORA-17415=Dit type is niet verwerkt. + +ORA-17416=FATAL + +ORA-17417=NLS-probleem: decoderen van kolomnamen mislukt. + +ORA-17418=Fout in veldlengte van interne structuur. + +ORA-17419=Ongeldig aantal kolommen teruggegeven. + +ORA-17420=Oracle versie niet gedefinieerd. + +ORA-17421=Typen of verbinding niet gedefinieerd. + +ORA-17422=Ongeldige klasse in factory. + +ORA-17423=Er wordt een PLSQL-blok gebruikt zonder dat een IOV is gedefinieerd. + +ORA-17424=Er wordt een poging gedaan een andere Marshalingbewerking uit te voeren. + +ORA-17425=Gegevensstroom wordt teruggegeven in PLSQL-blok. + +ORA-17426=Zowel IN- als OUT-binds zijn NULL. + +ORA-17427=Er wordt een onge\u00efnitaliseerde OAC gebruikt. + +ORA-17428=Inlogprocedure moet worden aangeroepen na verbinding. + +ORA-17429=Moet tenminste met de server zijn verbonden. + +ORA-17430=Moet bij de server zijn ingelogd. + +ORA-17431=SQL-opdracht die moet worden ontleed, is NULL. + +ORA-17432=Ongeldige opties in all7. + +ORA-17433=Ongeldige argumenten in aanroep. + +ORA-17434=Niet in onbeperkt doorgaande modus. + +ORA-17435=Ongeldig aantal in_out_binds in IOV. + +ORA-17436=Ongeldig aantal outbinds. + +ORA-17437=Fout in PLSQL-blok IN/OUT-argumenten. + +ORA-17438=Intern - onverwachte waarde. + +ORA-17439=Ongeldig SQL-type. + +ORA-17440=DBItem/DBType is NULL. + +ORA-17441=Oracle versie wordt niet ondersteund. Laagste ondersteunde versie is 7.2.3. + +ORA-17442=Waarde refcursor is ongeldig. + +ORA-17443=Null-gebruiker of -wachtwoord wordt niet ondersteund in THIN-stuurprogramma. + +ORA-17444=TTC-protocolversie die is ontvangen van server, wordt niet ondersteund. + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_no.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_no.properties new file mode 100644 index 0000000..26cc623 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_no.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Intern feil + +ORA-17002=I/U-unntak + +ORA-17003=Ugyldig kolonneindeks + +ORA-17004=Ugyldig kolonnetype + +ORA-17005=Kolonnetypen st\u00f8ttes ikke + +ORA-17006=Ugyldig kolonnenavn + +ORA-17007=Ugyldig dynamisk kolonne + +ORA-17008=Lukket tilkobling + +ORA-17009=Lukket setning + +ORA-17010=Lukket resultatsett + +ORA-17011=Resultatsettet er for lite + +ORA-17012=Parametertypekonflikt + +ORA-17014=ResultSet.next ble ikke kalt opp + +ORA-17015=Setningen ble annullert + +ORA-17016=Setningen fikk tidsavbrudd + +ORA-17017=Pekeren er allerede initialisert + +ORA-17018=Ugyldig peker + +ORA-17019=Kan bare beskrive en sp\u00f8rring + +ORA-17020=Ugyldig rad-prefetch + +ORA-17021=Manglende definisjoner + +ORA-17022=Manglende definisjoner i indeks + +ORA-17023=Ikke st\u00f8ttet funksjon + +ORA-17024=Ingen data ble lest + +ORA-17025=Feil i defines.isNull () + +ORA-17026=Numerisk overflyt + +ORA-17027=Datastr\u00f8mmen er allerede lukket + +ORA-17028=Kan ikke utf\u00f8re nye definisjoner f\u00f8r gjeldende ResultSet er lukket + +ORA-17029=setReadOnly: Skrivebeskyttede tilkoblinger er ikke st\u00f8ttet + +ORA-17030=READ_COMMITTED og SERIALIZABLE er de eneste gyldige transaksjonsniv\u00e5ene + +ORA-17031=setAutoClose: St\u00f8tter bare modus for automatisk lukking p\u00e5 + +ORA-17032=kan ikke sette rad-prefetch til null + +ORA-17033=Misformet SQL92-streng i posisjon + +ORA-17034=Ikke st\u00f8ttet SQL92-symbol i posisjon + +ORA-17035=Tegnsettet er ikke st\u00f8ttet. + +ORA-17036=unntak i OracleNumber + +ORA-17037=Kan ikke konvertere mellom UTF8 og UCS2 + +ORA-17038=Bytedatatabellen er ikke lang nok + +ORA-17039=Tegndatatabellen er ikke lang nok + +ORA-17040=Underprotokollen m\u00e5 angis i tilkoblings-URLen + +ORA-17041=Manglende IN- eller OUT-parameter i indeks: + +ORA-17042=Ugyldig satsvis verdi + +ORA-17043=Ugyldig maksimumsst\u00f8rrelse for datastr\u00f8mmen + +ORA-17044=Intern feil: Datatabellen er ikke tilordnet + +ORA-17045=Intern feil: Fors\u00f8k p\u00e5 f\u00e5 tilgang til bingingsverdier utenfor den satsvise verdien + +ORA-17046=Intern feil: Ugyldig indeks for datatilgang + +ORA-17047=Feil i analyse av typedeskriptor + +ORA-17048=Udefinert type + +ORA-17049=Ikke samsvarende java- og sql-objekttyper + +ORA-17050=ikke noe slikt element i vektoren + +ORA-17051=Dette APIet kan ikke brukes for ikke-UDT-typer + +ORA-17052=Denne referansen er ikke gyldig + +ORA-17053=St\u00f8rrelsen er ikke gyldig + +ORA-17054=LOB-posisjonsindikatoren er ikke gyldig + +ORA-17055=Ugyldig tegn ble funnet i + +ORA-17056=Ikke st\u00f8ttet tegnsett + +ORA-17057=Lukket LOB + +ORA-17058=Intern feil: Ugyldig forhold for NLS-konvertering + +ORA-17059=Kunne ikke konvertere til intern representasjon + +ORA-17060=Kunne ikke konstruere deskriptoren + +ORA-17061=Manglende deskriptor + +ORA-17062=Referansepekeren er ugyldig + +ORA-17063=Ikke i en transaksjon + +ORA-17064=Ugyldig syntaks eller databasenavnet er null + +ORA-17065=Konverteringsklassen er null + +ORA-17066=Spesifikk implementering av tilgangslaget er n\u00f8dvendig + +ORA-17067=Ugyldig Oracle-URL er angitt + +ORA-17068=Ugyldig(e) argument(er) i kall + +ORA-17069=Bruk eksplisitt XA-kall + +ORA-17070=Datast\u00f8rrelsen er st\u00f8rre en maksimal st\u00f8rrelse for denne typen + +ORA-17071=Maksimal VARRAY-grense er overskredet + +ORA-17072=Innsatt verdi er for stor for kolonnen + +ORA-17073=Logisk referanse er ikke lenger gyldig + +ORA-17074=ugyldig navnem\u00f8nster + +ORA-17075=Ugyldig operasjon for FORWARD-ONLY resultatsett + +ORA-17076=Ugyldig operasjon for skrivebeskyttet resultatsett + +ORA-17077=Kunne ikke definere REF-verdi + +ORA-17078=Kan ikke utf\u00f8re operasjonen fordi tilkoblingene allerede er \u00e5pnet + +ORA-17079=P\u00e5loggingsinformasjon for brukere samsvarer ikke med eksisterende informasjon + +ORA-17080=ugyldig satsvis kommando + +ORA-17081=feil oppstod under satsvis kj\u00f8ring + +ORA-17082=Ingen gjeldende rad + +ORA-17083=Ikke p\u00e5 innsettingsraden + +ORA-17084=Kalt opp p\u00e5 innsettingsraden + +ORA-17085=Verdikonflikter oppst\u00e5r + +ORA-17086=Udefinert kolonneverdi p\u00e5 innsettingsraden + +ORA-17087=Ytelsestips ble ignorert: setFetchDirection() + +ORA-17088=Syntaksen st\u00f8ttes ikke for \u00f8nsket type og samtidighetsniv\u00e5 for resultatsettet +ORA-17089=intern feil + +ORA-17090=operasjonen er ikke tillatt + +ORA-17091=Kan ikke opprette resultatsett med \u00f8nsket type og/eller samtidighetsniv\u00e5 + +ORA-17092=JDBC-setninger kan ikke opprettes eller utf\u00f8res p\u00e5 slutten av kallbehandling + +ORA-17093=OCI-operasjonen returnerte OCI_SUCCESS_WITH_INFO + +ORA-17094=Objekttypeversjonen samsvarer ikke + +ORA-17095=St\u00f8rrelsen p\u00e5 setningshurtigbufferen er ikke definert + +ORA-17096=Setningshurtigbufring kan ikke aktiveres for denne logiske tilkoblingen. + +ORA-17097=Ugyldig elementtype for PL/SQL-indekstabellen + +ORA-17098=Ugyldig tom LOB-operasjon + +ORA-17099=Ugyldig datatabellengde for PL/SQL-indekstabell + +ORA-17100=Ugyldig Java-objekt for databasen + +ORA-17101=Ugyldige egenskaper i objektet for OCI-tilkoblingsgruppe + +ORA-17102=Bfile er skrivebeskyttet + +ORA-17103=ugyldig tilkoblingstype for retur via getConnection. Bruk getJavaSqlConnection i stedet + +ORA-17104=SQL-setningen som skal utf\u00f8res, kan ikke v\u00e6re tom eller null + +ORA-17105=tidssonen for tilkoblingssesjonen var ikke angitt + +ORA-17106=ugyldig konfigurasjon av tilkoblingsgruppen for JDBC-OCI-driveren er angitt + +ORA-17107=en ugyldig proxy-type er angitt + +ORA-17108=Ingen maksimal lengde er angitt i defineColumnType + +ORA-17109=standard Java-tegnkoding ble ikke funnet + +ORA-17110=utf\u00f8ringen ble fullf\u00f8rt med en advarsel + +ORA-17111=Ugyldig tidsavbrudd for tilkobling av hurtigbuffer-TTL er angitt + +ORA-17112=Et ugyldig tr\u00e5dintervall er angitt + +ORA-17113=Verdien for tr\u00e5dintervallet er st\u00f8rre enn tidsavbruddsverdien for hurtigbufring + +ORA-17114=kunne ikke bruke lokal transaksjonsbekreftelse i en global transaksjon + +ORA-17115=kunne ikke bruke lokal tilbakestilling av transaksjonen i en global transaksjon + +ORA-17116=kunne ikke sl\u00e5 p\u00e5 automatisk bekreftelse i en aktiv global transaksjon + +ORA-17117=kunne ikke definere tilbakestillingspunktet i en aktiv global transaksjon + +ORA-17118=kunne ikke f\u00e5 tak i IDen for et navngitt tilbakestillingspunkt + +ORA-17119=kunne ikke f\u00e5 tak i navnet p\u00e5 et tilbakestillingspunkt uten navn + +ORA-17120=kunne ikke definere et tilbakestillingspunkt med automatisk bekreftelse p\u00e5 + +ORA-17121=kunne ikke tilbakestille et tilbakestillingspunkt med automatisk lagring p\u00e5 + +ORA-17122=kunne ikke tilbakestille et lokalt txn-tilbakestillingspunkt i en global transaksjon + +ORA-17123=En ugyldig st\u00f8rrelse p\u00e5 setningshurtigbufferen er angitt + +ORA-17124=Det er angitt ugyldig tidsavbrudd ved inaktivitet for tilkoblingshurtigbufferen + +ORA-17200=Kan ikke konvertere XA open-strengen fra Java til C p\u00e5 riktig m\u00e5te + +ORA-17201=Kan ikke konvertere XA close-strengen fra Java til C p\u00e5 riktig m\u00e5te + +ORA-17202=Kan ikke konvertere RM-navn fra Java til C p\u00e5 riktig m\u00e5te + +ORA-17203=Kunne ikke tilordne pekertypen til jlong + +ORA-17204=Inndatatabellen er for kort til OCI-referansene + +ORA-17205=Kan ikke hente OCISvcCtx-referansen fra C-XA ved hjelp av xaoSvcCtx + +ORA-17206=Kan ikke hente OCIEnv-referansen fra C-XA ved hjelp av xaoEnv + +ORA-17207=Egenskapen tnsEntry var ikke angitt i DataSource + +ORA-17213=C-XA returnerte XAER_RMERR under xa_open + +ORA-17215=C-XA returnerte XAER_INVAL under xa_open + +ORA-17216=C-XA returnerte XAER_PROTO under xa_open + +ORA-17233=C-XA returnerte XAER_RMERR under xa_close + +ORA-17235=C-XA returnerte XAER_INVAL under xa_close + +ORA-17236=C-XA returnerte XAER_PROTO under xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokolloverskridelse + +ORA-17402=Bare \u00e9n RPA-medling er forventet + +ORA-17403=Bare \u00e9n RXH-medling er forventet + +ORA-17404=Mottok flere RXDer enn forventet + +ORA-17405=UAC-lengden er ikke null + +ORA-17406=Overskrider maksimal bufferlengde + +ORA-17407=ugyldig typerepresentasjon (setRep) + +ORA-17408=ugyldig typerepresentasjon (getRep) + +ORA-17409=ugyldig bufferlengde + +ORA-17410=Ikke flere data \u00e5 lese fra porten + +ORA-17411=Manglende samsvar i representasjon av datatype + +ORA-17412=Typelengden er st\u00f8rre enn maksimum + +ORA-17413=Overskrider n\u00f8kkelst\u00f8rrelsen + +ORA-17414=Ikke tilstrekkelig bufferst\u00f8rrelse til \u00e5 lagre kolonnenavn + +ORA-17415=Denne typen er ikke h\u00e5ndtert + +ORA-17416=FATAL + +ORA-17417=NLS-problem, kunne ikke dekode kolonnenavn + +ORA-17418=Feil i den interne strukturens feltlengde + +ORA-17419=Ugyldig antall kolonner ble returnert + +ORA-17420=Oracle-versjonen er ikke definert + +ORA-17421=Typer eller tilkobling er ikke definert + +ORA-17422=Ugyldig klasse i fabrikk + +ORA-17423=Bruker en PLSQL-blokk uten en definert IOV + +ORA-17424=Fors\u00f8ker en annen oppstillingsoperasjon + +ORA-17425=Returnerer en datastr\u00f8m i PLSQL-blokk + +ORA-17426=B\u00e5de IN- og OUT-bindinger er NULL + +ORA-17427=Bruker uinitialisert OAC + +ORA-17428=P\u00e5logging m\u00e5 kalles etter tilkobling + +ORA-17429=M\u00e5 i det minste v\u00e6re tilkoblet tjeneren + +ORA-17430=M\u00e5 v\u00e6re logget p\u00e5 tjeneren + +ORA-17431=SQL-setningen som skal analyseres er null + +ORA-17432=ugyldige valg i all7 + +ORA-17433=ugyldige argumenter i kallet + +ORA-17434=ikke i str\u00f8mmodus + +ORA-17435=ugyldig antall in_out_binds i IOV + +ORA-17436=ugyldig antall outbinds + +ORA-17437=Feil i PLSQL-blokkens IN/OUT-argument(er) + +ORA-17438=Intern - Uventet verdi + +ORA-17439=Ugyldig SQL-type + +ORA-17440=DBItem/DBType er null + +ORA-17441=Oracle-versjonen er ikke st\u00f8ttet. Minste st\u00f8ttede versjon er 7.2.3. + +ORA-17442=Refcursor-verdien er ugyldig + +ORA-17443=Nullbruker eller -passord er ikke st\u00f8ttet i THIN-driver + +ORA-17444=TTC-protokollversjonen som er mottatt fra tjeneren, er ikke st\u00f8ttet + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_pl.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_pl.properties new file mode 100644 index 0000000..9d6f5b8 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_pl.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=B\u0142\u0105d wewn\u0119trzny + +ORA-17002=Wyj\u0105tek we-wy + +ORA-17003=Niepoprawny indeks kolumny + +ORA-17004=Niepoprawny typ kolumny + +ORA-17005=Nieobs\u0142ugiwany typ kolumny + +ORA-17006=Niepoprawna nazwa kolumny + +ORA-17007=Niepoprawna kolumna dynamiczna + +ORA-17008=Zamkni\u0119te po\u0142\u0105czenie + +ORA-17009=Zamkni\u0119ta instrukcja + +ORA-17010=Zamkni\u0119ty zestaw wynik\u00f3w + +ORA-17011=Wyczerpany zestaw wynik\u00f3w + +ORA-17012=Konflikt typu parametru + +ORA-17014=Nie wywo\u0142ano ResultSet.next + +ORA-17015=Instrukcja zosta\u0142a anulowana + +ORA-17016=Przekroczono limit czasu instrukcji + +ORA-17017=Kursor jest ju\u017c zainicjalizowany + +ORA-17018=Niepoprawny kursor + +ORA-17019=Mo\u017cna tylko opisa\u0107 zapytanie + +ORA-17020=Niepoprawne wst\u0119pne pobranie wiersza + +ORA-17021=Brakuj\u0105ce definicje + +ORA-17022=Brakuj\u0105ce definicje w indeksie + +ORA-17023=Funkcja nieobs\u0142ugiwana + +ORA-17024=Nie odczytano danych + +ORA-17025=B\u0142\u0105d w defines.isNull () + +ORA-17026=Nadmiar numeryczny + +ORA-17027=Strumie\u0144 zosta\u0142 ju\u017c zamkni\u0119ty + +ORA-17028=Nie mo\u017cna wykona\u0107 nowych definicji, dop\u00f3ki bie\u017c\u0105cy zestaw wynik\u00f3w nie zostanie zamkni\u0119ty + +ORA-17029=setReadOnly: Po\u0142\u0105czenia \"tylko do odczytu\" nie s\u0105 obs\u0142ugiwane + +ORA-17030=Jedyne poprawne poziomy transakcji to READ_COMMITTED i SERIALIZABLE + +ORA-17031=setAutoClose: obs\u0142ugiwany tylko tryb \"on\" + +ORA-17032=nie mo\u017cna ustawi\u0107 wst\u0119pnego pobierania wierszy na zero + +ORA-17033=Zniekszta\u0142cony ci\u0105g SQL92 - pozycja + +ORA-17034=Nieobs\u0142ugiwany token SQL92 - pozycja + +ORA-17035=Nieobs\u0142ugiwany zestaw znak\u00f3w! + +ORA-17036=wyj\u0105tek w OracleNumber + +ORA-17037=Niepowodzenie konwersji mi\u0119dzy UTF8 i UCS2 + +ORA-17038=Za ma\u0142a tablica bajtowa + +ORA-17039=Za ma\u0142a tablica znakowa + +ORA-17040=Dla URL po\u0142\u0105czenia musi by\u0107 podany protok\u00f3\u0142 podrz\u0119dny + +ORA-17041=Brakuje parametru IN lub OUT przy indeksie: + +ORA-17042=Niepoprawna warto\u015b\u0107 wsadowa + +ORA-17043=Niepoprawny maksymalny rozmiar strumienia + +ORA-17044=B\u0142\u0105d wewn\u0119trzny: nie przydzielono tablicy danych + +ORA-17045=B\u0142\u0105d wewn\u0119trzny: pr\u00f3ba uzyskania dost\u0119pu do warto\u015bci wi\u0105zania poza warto\u015bci\u0105 wsadow\u0105 + +ORA-17046=B\u0142\u0105d wewn\u0119trzny: niepoprawny indeks dost\u0119pu do danych + +ORA-17047=B\u0142\u0105d podczas analizy sk\u0142adniowej deskryptora typu + +ORA-17048=Typ niezdefiniowany + +ORA-17049=Niesp\u00f3jne typy obiekt\u00f3w SQL i obiekt\u00f3w Javy + +ORA-17050=nie ma takiego elementu w wektorze + +ORA-17051=Ten interfejs API nie mo\u017ce by\u0107 u\u017cyty dla typ\u00f3w nie-UDT + +ORA-17052=To odwo\u0142anie jest niepoprawne + +ORA-17053=Ten rozmiar jest niepoprawny + +ORA-17054=Lokalizator LOB jest niepoprawny + +ORA-17055=Napotkano niepoprawny znak w + +ORA-17056=Nieobs\u0142ugiwany zestaw znak\u00f3w + +ORA-17057=Zamkni\u0119ty LOB + +ORA-17058=B\u0142\u0105d wewn\u0119trzny: niepoprawny wsp\u00f3\u0142czynnik konwersji NLS + +ORA-17059=Nie uda\u0142o si\u0119 przekszta\u0142ci\u0107 w reprezentacj\u0119 wewn\u0119trzn\u0105 + +ORA-17060=Nie uda\u0142o si\u0119 utworzy\u0107 deskryptora + +ORA-17061=Brakuj\u0105cy deskryptor + +ORA-17062=Kursor odwo\u0142ania jest niepoprawny + +ORA-17063=Nie w transakcji + +ORA-17064=Niepoprawna sk\u0142adnia lub nazwa bazy danych jest NULL + +ORA-17065=Klasa konwersji jest NULL + +ORA-17066=Wymagana specyficzna implementacja warstwy dost\u0119pu + +ORA-17067=Podano niepoprawny adres Oracle URL + +ORA-17068=Niepoprawne argumenty w wywo\u0142aniu + +ORA-17069=Prosz\u0119 u\u017cy\u0107 bezpo\u015bredniego wywo\u0142ania XA + +ORA-17070=Rozmiar danych jest wi\u0119kszy ni\u017c maksymalny, dopuszczalny dla tego typu + +ORA-17071=Przekroczono maksymaln\u0105 granic\u0119 VARRAY + +ORA-17072=Wstawiana warto\u015b\u0107 jest zbyt du\u017ca dla kolumny + +ORA-17073=Uchwyt logiczny nie jest ju\u017c poprawny + +ORA-17074=niepoprawny wzorzec nazwy + +ORA-17075=Niepoprawna operacja dla zestawu wynik\u00f3w \"tylko do przes\u0142ania\" + +ORA-17076=Niepoprawna operacja dla zestawu wynik\u00f3w \"tylko do odczytu\" + +ORA-17077=Nie uda\u0142o si\u0119 ustawi\u0107 warto\u015bci REF + +ORA-17078=Nie mo\u017cna wykona\u0107 operacji, poniewa\u017c po\u0142\u0105czenia s\u0105 ju\u017c otwarte + +ORA-17079=Uwierzytelnienia u\u017cytkownika r\u00f3\u017cni\u0105 si\u0119 od istniej\u0105cych + +ORA-17080=niepoprawne polecenie wsadowe + +ORA-17081=podczas operacji wsadowej wyst\u0105pi\u0142 b\u0142\u0105d + +ORA-17082=Nie bie\u017c\u0105cy wiersz + +ORA-17083=Nie we wstawianym wierszu + +ORA-17084=Wywo\u0142anie wstawianego wiersza + +ORA-17085=Wyst\u0119puje konflikt warto\u015bci + +ORA-17086=Niezdefiniowana warto\u015b\u0107 kolumny we wstawianym wierszu + +ORA-17087=Zignorowano podpowied\u017a: setFetchDirection() + +ORA-17088=Nieobs\u0142ugiwana sk\u0142adnia dla \u017c\u0105danego typu zestawu wynik\u00f3w i poziomu wsp\u00f3\u0142bie\u017cno\u015bci +ORA-17089=b\u0142\u0105d wewn\u0119trzny + +ORA-17090=niedozwolona operacja + +ORA-17091=Nie mo\u017cna utworzy\u0107 zestawu wyniku \u017c\u0105danego typu i/lub poziomu wsp\u00f3\u0142bie\u017cno\u015bci + +ORA-17092=Instrukcje JDBC nie mog\u0105 by\u0107 utworzone lub wykonane na ko\u0144cu przetwarzania wywo\u0142ania + +ORA-17093=Operacja OCI zwr\u00f3ci\u0142a OCI_SUCCESS_WITH_INFO + +ORA-17094=Niezgodno\u015b\u0107 wersji typu obiektu + +ORA-17095=Nie ustawiono rozmiaru podr\u0119cznej pami\u0119ci instrukcji + +ORA-17096=Buforowanie instrukcji nie mo\u017ce by\u0107 w\u0142\u0105czone dla tego po\u0142\u0105czenia logicznego. + +ORA-17097=Niepoprawny typ elementu tabeli indeksu PL/SQL + +ORA-17098=Niepoprawna operacja opr\u00f3\u017cnienia LOB + +ORA-17099=Niepoprawna d\u0142ugo\u015b\u0107 tablicy dla tabeli indeksu PL/SQL + +ORA-17100=Niepoprawny obiekt Java bazy danych + +ORA-17101=Niepoprawne w\u0142a\u015bciwo\u015bci obiektu puli po\u0142\u0105cze\u0144 OCI + +ORA-17102=BFILE jest tylko do odczytu + +ORA-17103=przez getConnection zostanie zwr\u00f3cony niepoprawny typ po\u0142\u0105czenia. Zamiast tego prosz\u0119 u\u017cy\u0107 getJavaSqlConnection + +ORA-17104=instrukcja SQL do wykonania nie mo\u017ce by\u0107 ani pusta, ani Null + +ORA-17105=nie zosta\u0142a okre\u015blona strefa czasowa po\u0142\u0105czenia sesji + +ORA-17106=okre\u015blono niepoprawn\u0105 konfiguracj\u0119 puli po\u0142\u0105cze\u0144 programu obs\u0142ugi JDBC-OCI + +ORA-17107=podano niepoprawny typ proxy + +ORA-17108=W defineColumnType nie podano maksymalnej d\u0142ugo\u015bci + +ORA-17109=nie znaleziono standardowego kodowania znak\u00f3w w Javie + +ORA-17110=wykonywanie uko\u0144czono z ostrze\u017ceniem + +ORA-17111=Podano niepoprawny limit czasu TTL pami\u0119ci podr\u0119cznej po\u0142\u0105cze\u0144 + +ORA-17112=Podano niepoprawny interwa\u0142 w\u0105tku + +ORA-17113=Interwa\u0142 w\u0105tku jest wi\u0119kszy ni\u017c limit czasu pami\u0119ci podr\u0119cznej + +ORA-17114=nie uda\u0142o si\u0119 u\u017cy\u0107 lokalnego zatwierdzania transakcji w transakcji globalnej + +ORA-17115=nie uda\u0142o si\u0119 u\u017cy\u0107 lokalnego wycofywania transakcji w transakcji globalnej + +ORA-17116=nie uda\u0142o si\u0119 w\u0142\u0105czy\u0107 automatycznego zatwierdzania w aktywnej globalnej transakcji + +ORA-17117=nie uda\u0142o si\u0119 ustawi\u0107 punktu zapisywania w aktywnej globalnej transakcji + +ORA-17118=nie uda\u0142o si\u0119 uzyska\u0107 identyfikatora dla nazwanego punktu zapisywania + +ORA-17119=nie uda\u0142o si\u0119 uzyska\u0107 identyfikatora dla nienazwanego punktu zapisywania + +ORA-17120=nie uda\u0142o si\u0119 ustawi\u0107 punktu zapisywania z w\u0142\u0105czonym automatycznym zatwierdzaniem + +ORA-17121=nie uda\u0142o si\u0119 wycofa\u0107 do punktu zapisywania z w\u0142\u0105czonym automatycznym zatwierdzaniem + +ORA-17122=w transakcji globalnej nie uda\u0142o si\u0119 wycofa\u0107 do lokalnego punktu zapisywania transakcji + +ORA-17123=Podano niepoprawny rozmiar podr\u0119cznej pami\u0119ci instrukcji + +ORA-17124=Podano niepoprawny limit czasu nieaktywno\u015bci pami\u0119ci podr\u0119cznej po\u0142\u0105cze\u0144 + +ORA-17200=Nie mo\u017cna poprawnie przekonwertowa\u0107 ci\u0105gu otwieraj\u0105cego XA z Javy do C + +ORA-17201=Nie mo\u017cna poprawnie przekonwertowa\u0107 ci\u0105gu zamykaj\u0105cego XA z Javy do C + +ORA-17202=Nie mo\u017cna poprawnie przekonwertowa\u0107 nazwy RM z Javy do C + +ORA-17203=Nie uda\u0142o si\u0119 zmieni\u0107 typu wska\u017anika na jlong + +ORA-17204=Tablica wej\u015bciowa zbyt ma\u0142a, aby pomie\u015bci\u0107 uchwyty OCI + +ORA-17205=Nie uda\u0142o si\u0119 uzyska\u0107 uchwytu OCISvcCtx z C-XA u\u017cywaj\u0105c xaoSvcCtx + +ORA-17206=Nie uda\u0142o si\u0119 uzyska\u0107 uchwytu OCIEnv z C-XA u\u017cywaj\u0105c xaoEnv + +ORA-17207=W\u0142a\u015bciwo\u015b\u0107 tnsEntry nie zosta\u0142a okre\u015blona w DataSource + +ORA-17213=C-XA zwr\u00f3ci\u0142o XAER_RMERR podczas xa_open + +ORA-17215=C-XA zwr\u00f3ci\u0142o XAER_INVAL podczas xa_open + +ORA-17216=C-XA zwr\u00f3ci\u0142o XAER_PROTO podczas xa_open + +ORA-17233=C-XA zwr\u00f3ci\u0142o XAER_RMERR podczas xa_close + +ORA-17235=C-XA zwr\u00f3ci\u0142o XAER_INVAL podczas xa_close + +ORA-17236=C-XA zwr\u00f3ci\u0142o XAER_PROTO podczas xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Naruszenie protoko\u0142u + +ORA-17402=Jest oczekiwany tylko jeden komunikat RPA + +ORA-17403=Jest oczekiwany tylko jeden komunikat RXH + +ORA-17404=Otrzymano wi\u0119cej komunikat\u00f3w RXD ni\u017c oczekiwano + +ORA-17405=D\u0142ugo\u015b\u0107 UAC nie jest r\u00f3wna zero + +ORA-17406=Przekroczono maksymalny rozmiar bufora + +ORA-17407=niepoprawna reprezentacja typu (setRep) + +ORA-17408=niepoprawna reprezentacja typu (getRep) + +ORA-17409=niepoprawny rozmiar bufora + +ORA-17410=Nie ma wi\u0119cej danych do odczytu z gniazda + +ORA-17411=Niezgodno\u015b\u0107 reprezentacji typ\u00f3w danych + +ORA-17412=D\u0142ugo\u015b\u0107 typu wi\u0119ksza ni\u017c maksymalna + +ORA-17413=Przekroczono rozmiar klucza + +ORA-17414=Za ma\u0142y rozmiar bufora, aby przechowa\u0107 nazwy kolumn + +ORA-17415=Ten typ nie zosta\u0142 obs\u0142u\u017cony + +ORA-17416=FATAL + +ORA-17417=Problem NLS - nie uda\u0142o si\u0119 zdekodowa\u0107 nazw kolumn + +ORA-17418=B\u0142\u0105d d\u0142ugo\u015bci pola wewn\u0119trznej struktury + +ORA-17419=Zosta\u0142a zwr\u00f3cona niepoprawna liczba kolumn + +ORA-17420=Niezdefiniowana wersja Oracle + +ORA-17421=Niezdefiniowane typy lub niezdefiniowane po\u0142\u0105czenie + +ORA-17422=Niepoprawna klasa w fabryce + +ORA-17423=U\u017cycie bloku PLSQL bez zdefiniowanej IOV + +ORA-17424=Pr\u00f3ba innej operacji zbierania + +ORA-17425=Zwracany strumie\u0144 w bloku PLSQL + +ORA-17426=Oba wi\u0119zy IN i OUT s\u0105 NULL + +ORA-17427=U\u017cycie niezainicjalizowanego OAC + +ORA-17428=Po po\u0142\u0105czeniu trzeba wywo\u0142a\u0107 logowanie (logon) + +ORA-17429=Przynajmniej musi by\u0107 nawi\u0105zane po\u0142\u0105czenie z serwerem + +ORA-17430=Trzeba by\u0107 zalogowanym do serwera + +ORA-17431=Instrukcja SQL przeznaczona do analizy sk\u0142adniowej jest NULL + +ORA-17432=niepoprawne opcje w all7 + +ORA-17433=niepoprawne argumenty w wywo\u0142aniu + +ORA-17434=nie w trybie strumieniowania + +ORA-17435=niepoprawna liczba in_out_binds w IOV + +ORA-17436=niepoprawna liczba wi\u0119z\u00f3w out + +ORA-17437=B\u0142\u0105d w argumencie (argumentach) IN/OUT bloku PLSQL + +ORA-17438=Wewn\u0119trzny - nieoczekiwana warto\u015b\u0107 + +ORA-17439=Niepoprawny typ SQL + +ORA-17440=Element bazy danych/Typ bazy danych jest NULL + +ORA-17441=Nieobs\u0142ugiwana wersja Oracle. Najni\u017csza obs\u0142ugiwana wersja to 7.2.3. + +ORA-17442=Niepoprawna warto\u015b\u0107 kursora odwo\u0142ania + +ORA-17443=W programie obs\u0142ugi THIN nie jest dozwolony ani u\u017cytkownik NULL, ani has\u0142o NULL + +ORA-17444=Uzyskana z serwera wersja protoko\u0142u TTC nie jest obs\u0142ugiwana + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_pt.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_pt.properties new file mode 100644 index 0000000..dee876d --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_pt.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Erro Interno + +ORA-17002=Excep\u00e7\u00e3o de E/S + +ORA-17003=\u00cdndice de coluna inv\u00e1lido + +ORA-17004=Tipo de coluna inv\u00e1lido + +ORA-17005=Tipo de coluna n\u00e3o suportado + +ORA-17006=Nome de coluna inv\u00e1lido + +ORA-17007=Coluna din\u00e2mica inv\u00e1lida + +ORA-17008=Liga\u00e7\u00e3o Fechada + +ORA-17009=Instru\u00e7\u00e3o Fechada + +ORA-17010=Resultset Fechado + +ORA-17011=Resultset Esgotado + +ORA-17012=Conflito do Tipo de Par\u00e2metro + +ORA-17014=ResultSet.next n\u00e3o foi chamado + +ORA-17015=A instru\u00e7\u00e3o foi cancelada + +ORA-17016=O tempo de espera da instru\u00e7\u00e3o esgotou + +ORA-17017=O cursor j\u00e1 foi inicializado + +ORA-17018=Cursor inv\u00e1lido + +ORA-17019=S\u00f3 \u00e9 poss\u00edvel descrever uma consulta + +ORA-17020=Pr\u00e9-extrac\u00e7\u00e3o de linhas inv\u00e1lida + +ORA-17021=Falta defines + +ORA-17022=Falta defines no \u00edndice + +ORA-17023=Funcionalidade n\u00e3o suportada + +ORA-17024=N\u00e3o foram lidos dados + +ORA-17025=Erro em defines.isNull () + +ORA-17026=Excesso de Dados Num\u00e9ricos + +ORA-17027=O fluxo j\u00e1 foi fechado + +ORA-17028=N\u00e3o \u00e9 poss\u00edvel efectuar novos defines enquanto o ResultSet actual n\u00e3o estiver fechado + +ORA-17029=setReadOnly: Liga\u00e7\u00f5es s\u00f3 de leitura n\u00e3o s\u00e3o suportadas + +ORA-17030=READ_COMMITTED e SERIALIZABLE s\u00e3o os \u00fanicos n\u00edveis de transac\u00e7\u00e3o v\u00e1lidos + +ORA-17031=setAutoClose: Suportar apenas modo de fecho autom\u00e1tico activado + +ORA-17032=n\u00e3o \u00e9 poss\u00edvel definir a pr\u00e9-extrac\u00e7\u00e3o de linhas como zero + +ORA-17033=Cadeia de caracteres SQL92 incorrecta na posi\u00e7\u00e3o + +ORA-17034=S\u00edmbolo SQL92 n\u00e3o suportado na posi\u00e7\u00e3o + +ORA-17035=Conjunto de Caracteres N\u00e3o Suportado !! + +ORA-17036=excep\u00e7\u00e3o em OracleNumber + +ORA-17037=Falha na convers\u00e3o entre UTF8 e UCS2 + +ORA-17038=A matriz de bytes n\u00e3o \u00e9 suficientemente extensa + +ORA-17039=A matriz de caracteres n\u00e3o \u00e9 suficientemente extensa + +ORA-17040=\u00c9 necess\u00e1rio especificar o subprotocolo no URL de liga\u00e7\u00e3o + +ORA-17041=Faltam par\u00e2metros IN ou OUT no \u00edndice: + +ORA-17042=Valor Batch Inv\u00e1lido + +ORA-17043=Dimens\u00e3o m\u00e1xima do fluxo inv\u00e1lida + +ORA-17044=Erro interno: Matriz de dados n\u00e3o atribu\u00edda + +ORA-17045=Erro interno: Tentativa de acesso a valores de associa\u00e7\u00e3o fora do intervalo do valor batch + +ORA-17046=Erro interno: \u00cdndice inv\u00e1lido para acesso a dados + +ORA-17047=Erro na an\u00e1lise do Descritor de Tipos + +ORA-17048=Tipo N\u00e3o Definido + +ORA-17049=Tipos de objecto java e sql inconsistentes + +ORA-17050=n\u00e3o existe esse elemento no vector + +ORA-17051=N\u00e3o \u00e9 poss\u00edvel utilizar esta API em tipos n\u00e3o-UDT + +ORA-17052=Esta refer\u00eancia n\u00e3o \u00e9 v\u00e1lida + +ORA-17053=A dimens\u00e3o n\u00e3o \u00e9 v\u00e1lida + +ORA-17054=O identificador de local do LOB n\u00e3o \u00e9 v\u00e1lido + +ORA-17055=Foi encontrado um car\u00e1cter inv\u00e1lido em + +ORA-17056=Conjunto de caracteres n\u00e3o suportado + +ORA-17057=LOB Fechado + +ORA-17058=Erro Interno: Ratio de Convers\u00e3o de NLS inv\u00e1lido + +ORA-17059=Falha na convers\u00e3o para representa\u00e7\u00e3o interna + +ORA-17060=Falha na cria\u00e7\u00e3o do descritor + +ORA-17061=Falta descritor + +ORA-17062=O cursor da refer\u00eancia \u00e9 inv\u00e1lido + +ORA-17063=N\u00e3o numa transac\u00e7\u00e3o + +ORA-17064=Sintaxe Inv\u00e1lida ou o nome da Base de Dados \u00e9 nulo + +ORA-17065=A classe de convers\u00e3o \u00e9 nula + +ORA-17066=\u00c9 necess\u00e1ria uma implementa\u00e7\u00e3o espec\u00edfica por camada de acesso + +ORA-17067=Foi especificado um URL Oracle inv\u00e1lido + +ORA-17068=Argumento(s) inv\u00e1lido(s) na chamada + +ORA-17069=Utilize uma chamada XA espec\u00edfica + +ORA-17070=A dimens\u00e3o dos dados \u00e9 superior \u00e0 dimens\u00e3o m\u00e1xima para este tipo + +ORA-17071=Foi excedido o limite m\u00e1ximo de VARRAY + +ORA-17072=O valor inserido \u00e9 demasiado extenso para a coluna + +ORA-17073=O par\u00e2metro identificador l\u00f3gico j\u00e1 n\u00e3o \u00e9 v\u00e1lido + +ORA-17074=padr\u00e3o de nomes inv\u00e1lido + +ORA-17075=Opera\u00e7\u00e3o inv\u00e1lida para resultset s\u00f3 de encaminhamento + +ORA-17076=Opera\u00e7\u00e3o inv\u00e1lida para resultset s\u00f3 de leitura + +ORA-17077=Falha na defini\u00e7\u00e3o do valor REF + +ORA-17078=N\u00e3o \u00e9 poss\u00edvel efectuar a opera\u00e7\u00e3o porque as liga\u00e7\u00f5es j\u00e1 est\u00e3o abertas + +ORA-17079=As credenciais do utilizador n\u00e3o correspondem \u00e0s existentes + +ORA-17080=comando batch inv\u00e1lido + +ORA-17081=ocorr\u00eancia de erro durante a coloca\u00e7\u00e3o em batch + +ORA-17082=N\u00e3o existe linha actual + +ORA-17083=N\u00e3o se encontra na linha de inser\u00e7\u00e3o + +ORA-17084=Chamado na linha de inser\u00e7\u00e3o + +ORA-17085=Ocorr\u00eancia de conflitos de valores + +ORA-17086=Valor de coluna n\u00e3o definido na linha de inser\u00e7\u00e3o + +ORA-17087=Sugest\u00e3o de desempenho ignorada: setFetchDirection() + +ORA-17088=A sintaxe do tipo de resultset e do n\u00edvel de concorr\u00eancia pedidos n\u00e3o \u00e9 suportada +ORA-17089=erro interno + +ORA-17090=opera\u00e7\u00e3o n\u00e3o permitida + +ORA-17091=Incapaz de criar o resultset com o tipo e/ou o n\u00edvel de concorr\u00eancia pedido + +ORA-17092=N\u00e3o \u00e9 poss\u00edvel criar ou executar instru\u00e7\u00f5es de JDBC no final do processamento de chamadas + +ORA-17093=A opera\u00e7\u00e3o da OCI devolveu OCI_SUCCESS_WITH_INFO + +ORA-17094=N\u00e3o correspond\u00eancia da vers\u00e3o do tipo de objecto + +ORA-17095=A dimens\u00e3o da cache de instru\u00e7\u00f5es n\u00e3o foi definida + +ORA-17096=N\u00e3o \u00e9 poss\u00edvel activar a Coloca\u00e7\u00e3o de Instru\u00e7\u00f5es na Cache para esta liga\u00e7\u00e3o l\u00f3gica. + +ORA-17097=Tipo de elemento da Tabela de \u00cdndice de PL/SQL inv\u00e1lido + +ORA-17098=Opera\u00e7\u00e3o de lob vazio inv\u00e1lida + +ORA-17099=Comprimento da matriz da Tabela de \u00cdndice de PL/SQL inv\u00e1lido + +ORA-17100=Objecto Java da base de dados inv\u00e1lido + +ORA-17101=Propriedades inv\u00e1lidas de Objecto do Pool de Liga\u00e7\u00f5es da OCI + +ORA-17102=Bfile \u00e9 s\u00f3 de leitura + +ORA-17103=tipo de liga\u00e7\u00e3o inv\u00e1lido para devolver atrav\u00e9s de getConnection. Utilize getJavaSqlConnection + +ORA-17104=n\u00e3o \u00e9 poss\u00edvel que a instru\u00e7\u00e3o de SQL para execu\u00e7\u00e3o esteja vazia ou seja nula + +ORA-17105=o fuso hor\u00e1rio da sess\u00e3o de liga\u00e7\u00e3o n\u00e3o foi definido + +ORA-17106=foi especificada uma configura\u00e7\u00e3o inv\u00e1lida do pool de liga\u00e7\u00f5es do driver JDBC-OCI + +ORA-17107=foi especificado um tipo de proxy inv\u00e1lido + +ORA-17108=N\u00e3o foi especificado o comprimento m\u00e1ximo em defineColumnType + +ORA-17109=a codifica\u00e7\u00e3o de caracteres de Java standard n\u00e3o foi encontrada + +ORA-17110=a execu\u00e7\u00e3o foi conclu\u00edda com aviso + +ORA-17111=Foi especificado um tempo de espera de TTL da cache de liga\u00e7\u00f5es inv\u00e1lido + +ORA-17112=Foi especificado um intervalo de processo leve inv\u00e1lido + +ORA-17113=O valor do intervalo do processo leve \u00e9 superior ao valor do tempo de espera da cache + +ORA-17114=n\u00e3o foi poss\u00edvel utilizar a confirma\u00e7\u00e3o de transac\u00e7\u00e3o local na transac\u00e7\u00e3o global + +ORA-17115=n\u00e3o foi poss\u00edvel utilizar a anula\u00e7\u00e3o de transac\u00e7\u00e3o local na transac\u00e7\u00e3o global + +ORA-17116=n\u00e3o foi poss\u00edvel activar a confirma\u00e7\u00e3o autom\u00e1tica na transac\u00e7\u00e3o global activa + +ORA-17117=n\u00e3o foi poss\u00edvel definir o savepoint na transac\u00e7\u00e3o global activa + +ORA-17118=n\u00e3o foi poss\u00edvel obter a ID do Savepoint nomeado + +ORA-17119=n\u00e3o foi poss\u00edvel obter o nome do Savepoint n\u00e3o nomeado + +ORA-17120=n\u00e3o foi poss\u00edvel definir o Savepoint com a confirma\u00e7\u00e3o autom\u00e1tica activada + +ORA-17121=n\u00e3o foi poss\u00edvel anular o Savepoint com a confirma\u00e7\u00e3o autom\u00e1tica activada + +ORA-17122=n\u00e3o foi poss\u00edvel anular o Savepoint da transac\u00e7\u00e3o local na transac\u00e7\u00e3o global + +ORA-17123=A dimens\u00e3o da cache de instru\u00e7\u00f5es especificada \u00e9 inv\u00e1lida + +ORA-17124=Foi especificado um tempo de espera de Inactividade da cache de liga\u00e7\u00f5es inv\u00e1lido + +ORA-17200=Incapaz de converter correctamente a cadeia de caracteres de abertura XA de Java para C + +ORA-17201=Incapaz de converter correctamente a cadeia de caracteres de fecho XA de Java para C + +ORA-17202=Incapaz de converter correctamente o nome de RM de Java para C + +ORA-17203=N\u00e3o foi poss\u00edvel converter o tipo de apontador para jlong + +ORA-17204=A matriz de entrada de dados \u00e9 demasiado curta para conter par\u00e2metros identificadores da OCI + +ORA-17205=Falha na obten\u00e7\u00e3o do par\u00e2metro identificador OCISvcCtx a partir de C-XA atrav\u00e9s da utiliza\u00e7\u00e3o de xaoSvcCtx + +ORA-17206=Falha na obten\u00e7\u00e3o do par\u00e2metro identificador OCIEnv a partir de C-XA atrav\u00e9s da utiliza\u00e7\u00e3o de xaoEnv + +ORA-17207=A propriedade tnsEntry n\u00e3o foi definida em DataSource + +ORA-17213=C-XA devolveu XAER_RMERR durante xa_open + +ORA-17215=C-XA devolveu XAER_INVAL durante xa_open + +ORA-17216=C-XA devolveu XAER_PROTO durante xa_open + +ORA-17233=C-XA devolveu XAER_RMERR durante xa_close + +ORA-17235=C-XA devolveu XAER_INVAL durante xa_close + +ORA-17236=C-XA devolveu XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Viola\u00e7\u00e3o de protocolo + +ORA-17402=Apenas uma mensagem RPA esperada + +ORA-17403=Apenas uma mensagem RXH esperada + +ORA-17404=Foram recebidas mais mensagens RXD do que o esperado + +ORA-17405=O comprimento de UAC n\u00e3o \u00e9 zero + +ORA-17406=Foi excedido o comprimento m\u00e1ximo do buffer + +ORA-17407=Representa\u00e7\u00e3o de Tipo (setRep) inv\u00e1lida + +ORA-17408=Representa\u00e7\u00e3o de Tipo (getRep) inv\u00e1lida + +ORA-17409=comprimento do buffer inv\u00e1lido + +ORA-17410=N\u00e3o existem mais dados para leitura a partir do socket + +ORA-17411=N\u00e3o correspond\u00eancia entre as representa\u00e7\u00f5es do Tipo de Dados + +ORA-17412=Comprimento do tipo superior ao M\u00e1ximo + +ORA-17413=Foi excedida a dimens\u00e3o da chave + +ORA-17414=A dimens\u00e3o do Buffer \u00e9 insuficiente para armazenar Nomes de Colunas + +ORA-17415=Este tipo n\u00e3o foi tratado + +ORA-17416=FATAL + +ORA-17417=Problema de NLS, falha na descodifica\u00e7\u00e3o dos nomes das colunas + +ORA-17418=Erro de comprimento de campo na estrutura interna + +ORA-17419=Foi devolvido um n\u00famero de colunas inv\u00e1lido + +ORA-17420=Vers\u00e3o Oracle n\u00e3o definida + +ORA-17421=Tipos ou Liga\u00e7\u00e3o n\u00e3o definida + +ORA-17422=Classe inv\u00e1lida na factory + +ORA-17423=A utilizar um bloco de PLSQL sem um IOV definido + +ORA-17424=A tentar uma opera\u00e7\u00e3o do tipo marshaling diferente + +ORA-17425=Devolu\u00e7\u00e3o de um fluxo no bloco de PLSQL + +ORA-17426=As associa\u00e7\u00f5es IN e OUT s\u00e3o NULL + +ORA-17427=A utiliza\u00e7\u00e3o OAC N\u00e3o Inicializado + +ORA-17428=A entrada em sess\u00e3o tem de ser chamada depois de efectuada a liga\u00e7\u00e3o + +ORA-17429=\u00c9 necess\u00e1rio estar, pelo menos, ligado ao servidor + +ORA-17430=\u00c9 necess\u00e1rio ter entrado em sess\u00e3o no servidor + +ORA-17431=A Instru\u00e7\u00e3o de SQL para an\u00e1lise \u00e9 nula + +ORA-17432=op\u00e7\u00f5es inv\u00e1lidas em all7 + +ORA-17433=argumentos inv\u00e1lidos na chamada + +ORA-17434=n\u00e3o est\u00e1 em modo de fluxo + +ORA-17435=n\u00famero inv\u00e1lido de in_out_binds em IOV + +ORA-17436=n\u00famero inv\u00e1lido de associa\u00e7\u00f5es de sa\u00edda + +ORA-17437=Erro em argumentos IN/OUT do bloco de PLSQL + +ORA-17438=Interno - Valor inesperado + +ORA-17439=Tipo de SQL inv\u00e1lido + +ORA-17440=DBItem/DBType \u00e9 nulo + +ORA-17441=Vers\u00e3o Oracle n\u00e3o suportada.A vers\u00e3o m\u00ednima suportada \u00e9 a 7.2.3. + +ORA-17442=Valor de refcursor inv\u00e1lido + +ORA-17443=Utilizador ou senha nula n\u00e3o suportados no driver THIN + +ORA-17444=A vers\u00e3o do Protocolo TTC recebida do servidor n\u00e3o \u00e9 suportada + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_pt_BR.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_pt_BR.properties new file mode 100644 index 0000000..73a1168 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_pt_BR.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Erro Interno + +ORA-17002=Exce\u00e7\u00e3o de E/S + +ORA-17003=\u00cdndice de coluna inv\u00e1lido + +ORA-17004=Tipo de coluna inv\u00e1lido + +ORA-17005=Tipo de coluna n\u00e3o suportado + +ORA-17006=Nome de coluna inv\u00e1lido + +ORA-17007=Coluna din\u00e2mica inv\u00e1lida + +ORA-17008=Conex\u00e3o Fechada + +ORA-17009=Instru\u00e7\u00e3o Fechada + +ORA-17010=Conjunto de Resultados Fechado + +ORA-17011=Conjunto de Resultados Esgotado + +ORA-17012=Conflito de Tipo de Par\u00e2metro + +ORA-17014=ResultSet.next n\u00e3o foi chamado + +ORA-17015=Instru\u00e7\u00e3o cancelada + +ORA-17016=Instru\u00e7\u00e3o sofreu timeout + +ORA-17017=Cursor j\u00e1 foi inicializado + +ORA-17018=Cursor inv\u00e1lido + +ORA-17019=S\u00f3 pode descrever uma consulta + +ORA-17020=Pr\u00e9-extra\u00e7\u00e3o de linha inv\u00e1lida + +ORA-17021=Defini\u00e7\u00f5es ausentes + +ORA-17022=Defini\u00e7\u00f5es ausentes no \u00edndice + +ORA-17023=Recurso n\u00e3o suportado + +ORA-17024=Sem leitura de dados + +ORA-17025=Erro em defines.isNull () + +ORA-17026=Overflow Num\u00e9rico + +ORA-17027=Stream j\u00e1 foi fechado + +ORA-17028=N\u00e3o \u00e9 poss\u00edvel criar novas defini\u00e7\u00f5es at\u00e9 que o Conjunto de Resultados seja fechado + +ORA-17029=setReadOnly: Conex\u00f5es somente para leitura n\u00e3o s\u00e3o suportadas + +ORA-17030=READ_COMMITTED e SERIALIZABLE s\u00e3o os \u00fanicos n\u00edveis de transa\u00e7\u00e3o v\u00e1lidos + +ORA-17031=setAutoClose: Suporta apenas o modo de fechamento autom\u00e1tico ativo + +ORA-17032=n\u00e3o \u00e9 poss\u00edvel definir pr\u00e9-extra\u00e7\u00e3o de linha como zero + +ORA-17033=String SQL92 incorreta na posi\u00e7\u00e3o + +ORA-17034=Token SQL92 n\u00e3o suportado na posi\u00e7\u00e3o + +ORA-17035=Conjunto de Caracteres N\u00e3o Suportado! + +ORA-17036=exce\u00e7\u00e3o em OracleNumber + +ORA-17037=Falha ao fazer convers\u00e3o entre UTF8 e UCS2 + +ORA-17038=Array de byte n\u00e3o \u00e9 suficientemente longo + +ORA-17039=Array de caractere n\u00e3o \u00e9 suficientemente longo + +ORA-17040=Subprotocolo deve ser especificado no URL de conex\u00e3o + +ORA-17041=Par\u00e2metro IN ou OUT ausente do \u00edndice: + +ORA-17042=Valor de Lote Inv\u00e1lido + +ORA-17043=Tamanho m\u00e1ximo de stream inv\u00e1lido + +ORA-17044=Erro interno: Array de dados n\u00e3o alocado + +ORA-17045=Erro interno: Tentativa de acessar valores de liga\u00e7\u00e3o ultrapassa o valor do lote + +ORA-17046=Erro interno: \u00cdndice inv\u00e1lido para acesso a dados + +ORA-17047=Erro na an\u00e1lise do Descritor de Tipo + +ORA-17048=Tipo indefinido + +ORA-17049=Tipos de objeto java e sql inconsistentes + +ORA-17050=n\u00e3o existe esse elemento no vetor + +ORA-17051=Esta API n\u00e3o pode ser usada para tipos n\u00e3o-UDT + +ORA-17052=Esta refer\u00eancia n\u00e3o \u00e9 v\u00e1lida + +ORA-17053=Este tamanho n\u00e3o \u00e9 v\u00e1lido + +ORA-17054=Este localizador de LOB n\u00e3o \u00e9 v\u00e1lido + +ORA-17055=Caractere inv\u00e1lido encontrado em + +ORA-17056=Conjunto de caracteres n\u00e3o suportado + +ORA-17057=LOB fechado + +ORA-17058=Erro interno: Raz\u00e3o de Convers\u00e3o NLS inv\u00e1lida + +ORA-17059=Falha ao converter para representa\u00e7\u00e3o interna + +ORA-17060=Falha ao construir descritor + +ORA-17061=Descritor ausente + +ORA-17062=Cursor de refer\u00eancia \u00e9 inv\u00e1lido + +ORA-17063=N\u00e3o \u00e9 uma transa\u00e7\u00e3o + +ORA-17064=Sintaxe Inv\u00e1lida ou nome de Banco de Dados \u00e9 nulo + +ORA-17065=Classe de convers\u00e3o \u00e9 nula + +ORA-17066=\u00c9 necess\u00e1ria uma implementa\u00e7\u00e3o espec\u00edfica para a camada de acesso + +ORA-17067=URL Oracle Inv\u00e1lido especificado + +ORA-17068=Argumento(s) inv\u00e1lido(s) na chamada + +ORA-17069=Use chamada XA expl\u00edcita + +ORA-17070=Tamanho dos dados maior que o tamanho m\u00e1ximo para este tipo + +ORA-17071=Limite m\u00e1ximo de VARRAY excedido + +ORA-17072=Valor inserido grande demais para a coluna + +ORA-17073=Handle l\u00f3gico n\u00e3o \u00e9 mais v\u00e1lido + +ORA-17074=padr\u00e3o de nome inv\u00e1lido + +ORA-17075=Opera\u00e7\u00e3o inv\u00e1lida para encaminhar apenas conjunto de resultados + +ORA-17076=Opera\u00e7\u00e3o inv\u00e1lida para ler apenas conjunto de resultados + +ORA-17077=Falha ao definir o valor REF + +ORA-17078=N\u00e3o foi poss\u00edvel realizar a opera\u00e7\u00e3o uma vez que as conex\u00f5es j\u00e1 est\u00e3o abertas + +ORA-17079=As credenciais de usu\u00e1rio n\u00e3o correspondem \u00e0s existentes + +ORA-17080=comando de lote inv\u00e1lido + +ORA-17081=ocorreu um erro durante a forma\u00e7\u00e3o do lote + +ORA-17082=Nenhuma linha atual + +ORA-17083=Fora da linha de inser\u00e7\u00e3o + +ORA-17084=Chamada na linha de inser\u00e7\u00e3o + +ORA-17085=Conflitos de valores + +ORA-17086=Valor de coluna indefinido na linha de inser\u00e7\u00e3o + +ORA-17087=Dica de desempenho ignorada: setFetchDirection() + +ORA-17088=Sintaxe n\u00e3o suportada para o tipo de conjunto de resultados e o n\u00edvel de concorr\u00eancia solicitados +ORA-17089=erro interno + +ORA-17090=opera\u00e7\u00e3o n\u00e3o permitida + +ORA-17091=N\u00e3o foi poss\u00edvel criar conjunto de resultados no tipo e/ou n\u00edvel de concorr\u00eancia solicitados + +ORA-17092=Instru\u00e7\u00f5es JDBC n\u00e3o podem ser criadas ou executadas no final do processamento da chamada + +ORA-17093=Opera\u00e7\u00e3o OCI retornou OCI_SUCCESS_WITH_INFO + +ORA-17094=Vers\u00e3o do tipo de objeto inv\u00e1lida + +ORA-17095=O tamanho do cache de instru\u00e7\u00f5es n\u00e3o foi definido + +ORA-17096=O Cache de Instru\u00e7\u00f5es n\u00e3o est\u00e1 ativado para esta conex\u00e3o l\u00f3gica. + +ORA-17097=Tipo de elemento de Tabela de \u00cdndice PL/SQL inv\u00e1lido + +ORA-17098=Opera\u00e7\u00e3o de lob vazio inv\u00e1lida + +ORA-17099=Tamanho de array de Tabela de \u00cdndice de PL/SQL inv\u00e1lido + +ORA-17100=Objeto Java de banco de dados inv\u00e1lido + +ORA-17101=Propriedades inv\u00e1lidas no Objeto Pool de Conex\u00f5es OCI + +ORA-17102=Bfile \u00e9 somente para leitura + +ORA-17103=Tipo de conex\u00e3o inv\u00e1lido a ser retornado via getConnection. Use, em vez disso, getJavaSqlConnection + +ORA-17104=A instru\u00e7\u00e3o SQL a ser executada n\u00e3o pode ser vazia ou nula + +ORA-17105=o fuso hor\u00e1rio da sess\u00e3o de conex\u00e3o n\u00e3o foi definido + +ORA-17106=configura\u00e7\u00e3o inv\u00e1lida especificada para o pool de conex\u00e3o do driver OCI JDBC + +ORA-17107=tipo de proxy inv\u00e1lido especificado + +ORA-17108=Tamanho m\u00e1ximo n\u00e3o especificado em defineColumnType + +ORA-17109=codifica\u00e7\u00e3o de caractere Java padr\u00e3o n\u00e3o encontrada + +ORA-17110=execu\u00e7\u00e3o conclu\u00edda com advert\u00eancia + +ORA-17111=Timeout TTL inv\u00e1lido especificado para o cache de conex\u00e3o + +ORA-17112=Intervalo inv\u00e1lido especificado para o thread + +ORA-17113=O valor do intervalo de thread \u00e9 maior que o valor de timeout do cache + +ORA-17114=n\u00e3o foi poss\u00edvel usar o commit de transa\u00e7\u00e3o local em uma transa\u00e7\u00e3o global + +ORA-17115=n\u00e3o foi poss\u00edvel usar o rollback de transa\u00e7\u00e3o local em uma transa\u00e7\u00e3o global + +ORA-17116=n\u00e3o foi poss\u00edvel ativar o commit autom\u00e1tico em uma transa\u00e7\u00e3o global ativa + +ORA-17117=n\u00e3o foi poss\u00edvel definir o ponto de salvamento em uma transa\u00e7\u00e3o global ativa + +ORA-17118=n\u00e3o foi poss\u00edvel obter o ID de um Ponto de Salvamento nomeado + +ORA-17119=n\u00e3o foi poss\u00edvel obter o nome de um Ponto de Salvamento n\u00e3o-nomeado + +ORA-17120=n\u00e3o foi poss\u00edvel definir um Ponto de Salvamento com o commit autom\u00e1tico ativado + +ORA-17121=n\u00e3o foi poss\u00edvel executar rollback para um Ponto de Salvamento com o commit autom\u00e1tico ativado + +ORA-17122=n\u00e3o foi poss\u00edvel executar rollback para um Ponto de Salvamento de trans. local em uma transa\u00e7\u00e3o global + +ORA-17123=O tamanho do cache de instru\u00e7\u00f5es especificado \u00e9 inv\u00e1lido + +ORA-17124=O timeout de Inatividade especificado para o cache de conex\u00e3o \u00e9 inv\u00e1lido + +ORA-17200=N\u00e3o foi poss\u00edvel converter adequadamente a string de abertura XA de Java para C + +ORA-17201=N\u00e3o foi poss\u00edvel converter adequadamente a string de fechamento XA de Java para C + +ORA-17202=N\u00e3o foi poss\u00edvel converter adequadamente o nome RM de Java para C + +ORA-17203=N\u00e3o foi poss\u00edvel transmitir o tipo de ponteiro para jlong + +ORA-17204=Array de entrada muito pequeno para conter handles OCI + +ORA-17205=Falha ao obter handle OCISvcCtx de C-XA usando xaoSvcCtx + +ORA-17206=Falha ao obter handle OCIEnv de C-XA usando xaoEnv + +ORA-17207=A propriedade tnsEntry n\u00e3o foi definida na Origem de Dados + +ORA-17213=C-XA retornou XAER_RMERR durante xa_open + +ORA-17215=C-XA retornou XAER_INVAL durante xa_open + +ORA-17216=C-XA retornou XAER_PROTO durante xa_open + +ORA-17233=C-XA retornou XAER_RMERR durante xa_close + +ORA-17235=C-XA retornou XAER_INVAL durante xa_close + +ORA-17236=C-XA retornou XAER_PROTO durante xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Viola\u00e7\u00e3o de protocolo + +ORA-17402=\u00c9 esperada apenas uma mensagem RPA + +ORA-17403=\u00c9 esperada apenas uma mensagem RXH + +ORA-17404=Recebidos mais RXDs do que o esperado + +ORA-17405=Tamanho UAC n\u00e3o \u00e9 zero + +ORA-17406=Excedendo tamanho m\u00e1ximo do buffer + +ORA-17407=Representa\u00e7\u00e3o (setRep) de tipo inv\u00e1lida + +ORA-17408=Representa\u00e7\u00e3o (setRep) de tipo inv\u00e1lida + +ORA-17409=tamanho do buffer inv\u00e1lido + +ORA-17410=N\u00e3o ser\u00e3o lidos mais dados do soquete + +ORA-17411=Incompatibilidade de representa\u00e7\u00f5es de Tipo de Dados + +ORA-17412=Tamanho de tipo maior que o M\u00e1ximo + +ORA-17413=Tamanho de chave excede + +ORA-17414=Tamanho de Buffer Insuficiente para armazenar Nomes de Colunas + +ORA-17415=Este tipo n\u00e3o foi manipulado + +ORA-17416=FATAL + +ORA-17417=Problema de NLS; falha ao decodificar nomes de colunas + +ORA-17418=Erro de tamanho do campo de estrutura interna + +ORA-17419=N\u00famero inv\u00e1lido de colunas retornado + +ORA-17420=Vers\u00e3o do Oracle n\u00e3o foi definida + +ORA-17421=Tipos ou Conex\u00e3o n\u00e3o foi(ram) definido(s) + +ORA-17422=Classe inv\u00e1lida no factory + +ORA-17423=Usando um bloco PLSQL sem um IOV (I/O vector) definido + +ORA-17424=Tentando outra opera\u00e7\u00e3o de marshaling + +ORA-17425=Retornando um stream no bloco PLSQL + +ORA-17426=As liga\u00e7\u00f5es IN e OUT s\u00e3o NULL + +ORA-17427=Usando OAC N\u00e3o-Inicializado + +ORA-17428=Logon deve ser chamado ap\u00f3s conex\u00e3o + +ORA-17429=Deve estar pelo menos conectado ao servidor + +ORA-17430=Deve ter estabelecido logon no servidor + +ORA-17431=Instru\u00e7\u00e3o SQL a ser analisada \u00e9 nula + +ORA-17432=op\u00e7\u00f5es inv\u00e1lidas em all7 + +ORA-17433=argumentos inv\u00e1lidos na chamada + +ORA-17434=n\u00e3o est\u00e1 no modo de stream + +ORA-17435=n\u00famero inv\u00e1lido de in_out_binds no IOV + +ORA-17436=n\u00famero inv\u00e1lido para liga\u00e7\u00f5es externas + +ORA-17437=Erro no(s) argumento(s) IN/OUT do bloco PLSQL + +ORA-17438=Interno - Valor inesperado + +ORA-17439=Tipo SQL inv\u00e1lido + +ORA-17440=DBItem/DBType \u00e9 nulo + +ORA-17441=Vers\u00e3o do Oracle n\u00e3o \u00e9 suportada. A vers\u00e3o m\u00ednima suportada \u00e9 7.2.3. + +ORA-17442=Valor do cursor de refer\u00eancia \u00e9 inv\u00e1lido + +ORA-17443=Usu\u00e1rio nulo ou senha n\u00e3o suportada no driver THIN + +ORA-17444=Vers\u00e3o do Protocolo TTC recebida do servidor n\u00e3o \u00e9 suportada + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ro.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ro.properties new file mode 100644 index 0000000..5442fea --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ro.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Eroare intern\u0103 + +ORA-17002=Excep\u0163ie I/O + +ORA-17003=Index coloan\u0103 nevalid + +ORA-17004=Tip coloan\u0103 nevalid + +ORA-17005=Tip de coloan\u0103 neacceptat + +ORA-17006=Nume nevalid de coloan\u0103 + +ORA-17007=Coloan\u0103 dinamic\u0103 nevalid\u0103 + +ORA-17008=Conexiunea a fost \u00eenchis\u0103 + +ORA-17009=Instruc\u0163iunea a fost \u00eenchis\u0103 + +ORA-17010=Setul de rezultate a fost \u00eenchis + +ORA-17011=Setul de rezultate este epuizat + +ORA-17012=Tipuri de parametri \u00een conflict + +ORA-17014=ResultSet.next nu a fost apelat\u0103 + +ORA-17015=Instruc\u0163iunea a fost anulat\u0103 + +ORA-17016=Instruc\u0163iunea a expirat + +ORA-17017=Cursorul a fost deja ini\u0163ializat + +ORA-17018=Cursor nevalid + +ORA-17019=Se poate face numai descrierea unei interog\u0103ri + +ORA-17020=Pre-preluare a unui r\u00e2nd nevalid + +ORA-17021=Lipsesc definiri + +ORA-17022=Lipsesc definiri la index + +ORA-17023=Caracteristic\u0103 neacceptat\u0103 + +ORA-17024=Nu au fost citite date + +ORA-17025=Eroare \u00een defines.isNull () + +ORA-17026=Dep\u0103\u015fire numeric\u0103 + +ORA-17027=Fluxul a fost deja \u00eenchis + +ORA-17028=Nu se pot face noi definiri \u00eenainte ca setul de rezultate curent s\u0103 fie \u00eenchis + +ORA-17029=setReadOnly: Conexiunile read-only nu sunt acceptate + +ORA-17030=READ_COMMITTED \u015fi SERIALIZABLE sunt singurele niveluri de tranzac\u0163ie valide + +ORA-17031=setAutoClose: Modul de \u00eenchidere automat\u0103 este acceptat numai \u00een starea activat + +ORA-17032=pre-preluarea r\u00e2ndului nu poate fi setat\u0103 la zero + +ORA-17033=\u015eir SQL92 deformat la pozi\u0163ia + +ORA-17034=Simbol SQL92 neacceptat la pozi\u0163ia + +ORA-17035=Setul de caractere nu este acceptat !! + +ORA-17036=excep\u0163ie \u00een OracleNumber + +ORA-17037=Nu s-a reu\u015fit conversia \u00eentre UTF8 \u015fi UCS2 + +ORA-17038=Masivul de octe\u0163i nu este suficient de lung + +ORA-17039=Masivul de caractere nu este suficient de lung + +ORA-17040=Trebuie specificat un subprotocol \u00een URL-ul de conectare + +ORA-17041=Lipsesc parametrii IN sau OUT la indexul: + +ORA-17042=Valoare Batch nevalid\u0103 + +ORA-17043=Dimensiunea maxim\u0103 a fluxului este nevalid\u0103 + +ORA-17044=Eroare intern\u0103: Masivul de date nu a fost alocat + +ORA-17045=Eroare intern\u0103: S-a \u00eencercat accesarea valorilor de leg\u0103tur\u0103 \u00eenaintea valorii batch + +ORA-17046=Eroare intern\u0103: Index nevalid pentru accesarea datelor + +ORA-17047=Eroare la analizarea descriptorului de tip + +ORA-17048=Tip nedefinit + +ORA-17049=Tipuri de obiecte java \u015fi sql inconsistente + +ORA-17050=nu exist\u0103 un astfel de element \u00een vector + +ORA-17051=Acest API nu poate fi utilizat dec\u00e2t pentru tipuri definite de utilizator + +ORA-17052=Aceast\u0103 referin\u0163\u0103 nu este valid\u0103 + +ORA-17053=Dimensiunea nu este valid\u0103 + +ORA-17054=Identificatorul LOB nu este valid + +ORA-17055=Caracter nevalid existent \u00een + +ORA-17056=Set de caractere neacceptat + +ORA-17057=LOB a fost \u00eenchis + +ORA-17058=Eroare intern\u0103: Rat\u0103 de conversie NLS nevalid\u0103 + +ORA-17059=Nu s-a reu\u015fit conversia \u00een reprezentare intern\u0103 + +ORA-17060=Nu s-a reu\u015fit generarea descriptorului + +ORA-17061=Descriptor absent + +ORA-17062=Cursorul de tip REF este nevalid + +ORA-17063=Nu sunte\u0163i \u00eentr-o tranzac\u0163ie + +ORA-17064=Sintaxa este nevalid\u0103 sau numele BD este nul + +ORA-17065=Clasa de conversie este nul\u0103 + +ORA-17066=Este necesar\u0103 o implementare specific\u0103 nivelului de acces + +ORA-17067=A fost specificat un URL Oracle nevalid + +ORA-17068=Argument(e) nevalid(e) \u00een apel + +ORA-17069=Utiliza\u0163i apelul explicit XA + +ORA-17070=Dimensiunea datelor dep\u0103\u015fe\u015fte valoarea maxim\u0103 admis\u0103 pentru acest tip + +ORA-17071=Limita maxim\u0103 VARRAY a fost dep\u0103\u015fit\u0103 + +ORA-17072=Valoarea introdus\u0103 este prea mare pentru coloan\u0103 + +ORA-17073=Specificatorul logic nu mai este valid + +ORA-17074=model de nume nevalid + +ORA-17075=Opera\u0163iune nevalid\u0103 pentru setul de rezultate forward-only + +ORA-17076=Opera\u0163iune nevalid\u0103 pentru setul de rezultate read-only + +ORA-17077=Setarea valorii REF a e\u015fuat + +ORA-17078=Opera\u0163ia nu se poate efectua deoarece conexiunile sunt deja deschise + +ORA-17079=Acreditivele utilizatorului nu corespund celor existente + +ORA-17080=Comanda batch este nevalid\u0103 + +ORA-17081=Eroare la executarea pe loturi + +ORA-17082=Nu exist\u0103 nici un r\u00e2nd curent + +ORA-17083=Nu exist\u0103 pe r\u00e2ndul inserat + +ORA-17084=Apelat pe r\u00e2ndul inserat + +ORA-17085=Au survenit conflicte de valori + +ORA-17086=Valoare de coloan\u0103 nedefinit\u0103 pe r\u00e2ndul inserat + +ORA-17087=Sugestie de performan\u0163\u0103 ignorat\u0103: setFetchDirection() + +ORA-17088=Sintax\u0103 neacceptat\u0103 pentru tipul setului de rezultate \u015fi nivelul de concuren\u0163\u0103 solicitate +ORA-17089=eroare intern\u0103 + +ORA-17090=opera\u0163ia nu este permis\u0103 + +ORA-17091=Nu s-a putut crea setul de rezultate de tipul \u015fi/sau de nivelul de concuren\u0163\u0103 solicitate + +ORA-17092=Instruc\u0163iunile JDBC nu pot fi create sau executate la sf\u00e2r\u015fitul proces\u0103rii apelurilor + +ORA-17093=Opera\u0163ia OCI a returnat OCI_SUCCESS_WITH_INFO + +ORA-17094=Versiunile tipului de obiect sunt diferite + +ORA-17095=Nu a fost stabilit\u0103 dimensiunea pentru cache-ul de instruc\u0163iuni + +ORA-17096=Stocarea instruc\u0163iunilor \u00een cache nu poate fi activat\u0103 pentru aceast\u0103 conexiune logic\u0103. + +ORA-17097=Tip de element incorect \u00een tabelul de indec\u015fi PL/SQL + +ORA-17098=Opera\u0163ie incorect\u0103 asupra unei LOB vide + +ORA-17099=Lungime de tablou incorect\u0103 \u00een tabelul de indec\u015fi PL/SQL + +ORA-17100=Obiectul Java din BD este nevalid + +ORA-17101=Obiectul din centralizatorul partajat OCI are propriet\u0103\u0163i nevalide + +ORA-17102=Bfile este ReadOnly + +ORA-17103=tip de conexiune nevalid pentru a fi returnat prin getConnection. Utiliza\u0163i \u00een schimb getJavaSqlConnection + +ORA-17104=instruc\u0163iunea SQL de executat nu poate fi necompletat\u0103 sau nul\u0103 + +ORA-17105=nu a fost stabilit fusul orar al sesiunii de conectare + +ORA-17106=a fost specificat\u0103 o configura\u0163ie nevalid\u0103 pentru centralizatorul de conexiuni ale driverului JDBC-OCI + +ORA-17107=a fost specificat un tip nevalid de proxy + +ORA-17108=Nu s-a specificat lungimea maxim\u0103 \u00een defineColumnType + +ORA-17109=nu a fost g\u0103sit\u0103 codificarea standard pentru caracterele Java + +ORA-17110=execu\u0163ia s-a finalizat cu avertisment + +ORA-17111=A fost specificat un timp de expirare TTL nevalid pentru cache-ul de conexiuni + +ORA-17112=A fost specificat un interval nevalid pentru firul de execu\u0163ie + +ORA-17113=Valoarea intervalului pentru firul de execu\u0163ie este mai mare dec\u00e2t valoarea timpului de expirare al cache-ului + +ORA-17114=nu s-a putut utiliza confirmarea tranzac\u0163iei locale \u00eentr-o tranzac\u0163ie global\u0103 + +ORA-17115=nu s-a putut utiliza derularea \u00eenapoi a tranzac\u0163iei locale \u00eentr-o tranzac\u0163ie global\u0103 + +ORA-17116=nu s-a putut activa confirmarea automat\u0103 \u00eentr-o tranzac\u0163ie global\u0103 activ\u0103 + +ORA-17117=nu s-a putut stabili punctul de salvare \u00eentr-o tranzac\u0163ie global\u0103 activ\u0103 + +ORA-17118=nu s-a putut ob\u0163ine ID-ul pentru un punct de salvare denumit + +ORA-17119=nu s-a putut ob\u0163ine numele pentru un punct de salvare nedenumit + +ORA-17120=nu s-a putut stabili un punct de salvare, fiind activat\u0103 confirmarea automat\u0103 + +ORA-17121=nu s-a putut efectua derularea \u00eenapoi la un punct de salvare, fiind activat\u0103 confirmarea automat\u0103 + +ORA-17122=nu s-a putut efectua derularea \u00eenapoi la un punct de salvare local txn, \u00eentr-o tranzac\u0163ie global\u0103 + +ORA-17123=A fost specificat\u0103 o dimensiune nevalid\u0103 pentru cache-ul de instruc\u0163iuni + +ORA-17124=A fost specificat un timp de expirare nevalid pentru Inactivitate, pentru cache-ul de conexiuni + +ORA-17200=Nu se poate efectua corespunz\u0103tor conversia \u015firului de deschidere XA din Java \u00een C + +ORA-17201=Nu se poate efectua corespunz\u0103tor conversia \u015firului de \u00eenchidere XA din Java \u00een C + +ORA-17202=Nu se poate efectua corespunz\u0103tor conversia numelui RM din Java \u00een C + +ORA-17203=Nu s-a putut face conversia tipului pointer \u00een jlong + +ORA-17204=Tabloul de intrare este prea scurt pentru a re\u0163ine specificatorii OCI + +ORA-17205=Nu s-a putut ob\u0163ine specificatorul OCISvcCtx din C-XA utiliz\u00e2nd xaoSvcCtx + +ORA-17206=Nu s-a putut ob\u0163ine specificatorul OCIEnv din C-XA utiliz\u00e2nd xaoEnv + +ORA-17207=Proprietatea tnsEntry nu a fost setat\u0103 \u00een DataSource + +ORA-17213=C-XA a returnat XAER_RMERR la execu\u0163ia subrutinei xa_open + +ORA-17215=C-XA a returnat XAER_INVAL la execu\u0163ia subrutinei xa_open + +ORA-17216=C-XA a returnat XAER_PROTO la execu\u0163ia subrutinei xa_open + +ORA-17233=C-XA a returnat XAER_RMERR la execu\u0163ia subrutinei xa_close + +ORA-17235=C-XA a returnat XAER_INVAL la execu\u0163ia subrutinei xa_close + +ORA-17236=C-XA a returnat XAER_PROTO la execu\u0163ia subrutinei xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Violare de protocol + +ORA-17402=Este a\u015fteptat un singur mesaj RPA + +ORA-17403=Este a\u015fteptat un singur mesaj RXH + +ORA-17404=Au fost recep\u0163ionate mai multe RXD-uri dec\u00e2t erau de a\u015fteptat + +ORA-17405=Lungimea UAC nu este zero + +ORA-17406=Lungimea maxim\u0103 a bufferului a fost dep\u0103\u015fit\u0103 + +ORA-17407=Reprezentare de tip nevalid\u0103 (setRep) + +ORA-17408=Reprezentare de tip nevalid\u0103 (getRep) + +ORA-17409=lungime de buffer nevalid\u0103 + +ORA-17410=Nu mai exist\u0103 date de citit din socket + +ORA-17411=Reprezent\u0103rile tipurilor de date sunt diferite + +ORA-17412=Lungimea tipului dep\u0103\u015fe\u015fte valoarea maxim\u0103 + +ORA-17413=Dimensiunea cheii este dep\u0103\u015fit\u0103 + +ORA-17414=Dimensiunea bufferului este insuficient\u0103 pentru a stoca numele coloanelor + +ORA-17415=Acest tip nu a fost tratat + +ORA-17416=FATAL + +ORA-17417=Problem\u0103 NLS; nu s-a reu\u015fit decodificarea numelor coloanelor + +ORA-17418=Eroare legat\u0103 de lungimea c\u00e2mpului structurii interne + +ORA-17419=A fost returnat un num\u0103r de coloane nevalid + +ORA-17420=Versiunea Oracle nu a fost definit\u0103 + +ORA-17421=Tipurile sau conexiunea nu au fost definite + +ORA-17422=Clas\u0103 nevalid\u0103 \u00een factory + +ORA-17423=Blocul PLSQL este utilizat f\u0103r\u0103 s\u0103 fie definit o LV + +ORA-17424=Se \u00eencearc\u0103 o alt\u0103 opera\u0163ie de dispunere + +ORA-17425=Se returneaz\u0103 un flux \u00een blocul PLSQL + +ORA-17426=Ambele leg\u0103turi, IN \u015fi OUT, au valoarea NULL + +ORA-17427=Se utilizeaz\u0103 OAC neini\u0163ializat + +ORA-17428=Logon trebuie apelat\u0103 dup\u0103 conectare + +ORA-17429=Trebuie s\u0103 fi\u0163i conectat cel pu\u0163in la server + +ORA-17430=Trebuie s\u0103 fi\u0163i conectat la server + +ORA-17431=Instruc\u0163iunea SQL de analizat este nul\u0103 + +ORA-17432=op\u0163iuni nevalide \u00een all7 + +ORA-17433=argumente nevalide \u00een apel + +ORA-17434=nu sunte\u0163i \u00een mod dirijare \u00een flux + +ORA-17435=num\u0103rul in_out_binds din LV este nevalid + +ORA-17436=Num\u0103r nevalid de variabile de leg\u0103tur\u0103 OUT + +ORA-17437=Eroare \u00een argumentele IN/OUT din blocul PLSQL + +ORA-17438=Intern - Valoare nea\u015fteptat\u0103 + +ORA-17439=Tip SQL nevalid + +ORA-17440=DBItem/DBType este nul + +ORA-17441=Versiunea Oracle nu este acceptat\u0103. Versiunea minim\u0103 acceptat\u0103 este 7.2.3. + +ORA-17442=Valoarea Refcursor este nevalid\u0103 + +ORA-17443=Utilizatorii sau parolele nule nu sunt acceptate in driverul THIN + +ORA-17444=Versiunea de protocol TTC recep\u0163ionat\u0103 de la server nu este acceptat\u0103 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ru.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ru.properties new file mode 100644 index 0000000..e080447 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_ru.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430 + +ORA-17002=\u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u0432\u043e\u0434\u0430/\u0432\u044b\u0432\u043e\u0434\u0430 + +ORA-17003=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17004=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17005=\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u0442\u0438\u043f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17006=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0438\u043c\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 + +ORA-17007=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 + +ORA-17008=\u0417\u0430\u043a\u0440\u044b\u0442\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 + +ORA-17009=\u0417\u0430\u043a\u0440\u044b\u0442\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 + +ORA-17010=\u0417\u0430\u043a\u0440\u044b\u0442\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17011=\u0418\u0441\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17012=\u041a\u043e\u043d\u0444\u043b\u0438\u043a\u0442 \u0442\u0438\u043f\u043e\u0432 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 + +ORA-17014=\u041d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d \u0432\u044b\u0437\u043e\u0432 ResultSet.next + +ORA-17015=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0431\u044b\u043b\u0430 \u043e\u0442\u043c\u0435\u043d\u0435\u043d\u0430 + +ORA-17016=\u0412\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0438\u0441\u0442\u0435\u043a\u043b\u043e + +ORA-17017=\u041a\u0443\u0440\u0441\u043e\u0440 \u0443\u0436\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d + +ORA-17018=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c + +ORA-17019=\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043e\u0447\u0435\u0440\u0435\u0434\u0438 + +ORA-17020=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u0443\u043f\u0440\u0435\u0436\u0434\u0430\u044e\u0449\u0430\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430 \u0441\u0442\u0440\u043e\u043a\u0438 + +ORA-17021=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f + +ORA-17022=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0432 \u0438\u043d\u0434\u0435\u043a\u0441\u0435 + +ORA-17023=\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f + +ORA-17024=\u0414\u0430\u043d\u043d\u044b\u0435 \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u043d\u044b + +ORA-17025=\u041e\u0448\u0438\u0431\u043a\u0430 \u0432 defines.isNull () + +ORA-17026=\u041f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 + +ORA-17027=\u041f\u043e\u0442\u043e\u043a \u0443\u0436\u0435 \u0437\u0430\u043a\u0440\u044b\u0442 + +ORA-17028=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f, \u043f\u043e\u043a\u0430 \u0437\u0430\u043a\u0440\u044b\u0442 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17029=setReadOnly: \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \"\u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f\" \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f + +ORA-17030=\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0443\u0440\u043e\u0432\u043d\u0438 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 READ_COMMITTED \u0438 SERIALIZABLE + +ORA-17031=setAutoClose: \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0436\u0438\u043c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f + +ORA-17032=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0432\u044b\u0431\u043e\u0440\u043a\u0443 \u0441\u0442\u0440\u043e\u043a\u0438 \u043d\u0430 \u043d\u043e\u043b\u044c + +ORA-17033=\u0421\u0442\u0440\u043e\u043a\u0430 SQL92 \u043d\u0435\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0432 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 + +ORA-17034=\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u043c\u0430\u0440\u043a\u0435\u0440 SQL92 \u0432 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 + +ORA-17035=\u041d\u0430\u0431\u043e\u0440 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f !! + +ORA-17036=\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432 OracleNumber + +ORA-17037=\u0421\u0431\u043e\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 UTF8 \u0438 UCS2 + +ORA-17038=\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0431\u0430\u0439\u0442\u043e\u0432 + +ORA-17039=\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 char + +ORA-17040=\u0412 URL \u0434\u043b\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u043d \u0441\u0443\u0431\u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b + +ORA-17041=\u0412 \u0438\u043d\u0434\u0435\u043a\u0441\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 IN \u0438\u043b\u0438 OUT: + +ORA-17042=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0430\u043a\u0435\u0442\u0430 + +ORA-17043=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u043e\u0442\u043e\u043a\u0430 + +ORA-17044=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043c\u0430\u0441\u0441\u0438\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d + +ORA-17045=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c \u0432\u043d\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u0430\u043a\u0435\u0442\u0430 + +ORA-17046=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0434\u0430\u043d\u043d\u044b\u043c + +ORA-17047=\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u0440\u0430\u0437\u0431\u043e\u0440\u0435 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430 \u0442\u0438\u043f\u0430 + +ORA-17048=\u041d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0442\u0438\u043f + +ORA-17049=\u041d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u0435 \u0442\u0438\u043f\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 java \u0438 sql + +ORA-17050=\u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u0430\u043a\u043e\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 + +ORA-17051=\u0414\u0430\u043d\u043d\u044b\u0439 API \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0442\u0438\u043f\u043e\u0432, \u043d\u0435 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0445 \u043a UDT + +ORA-17052=\u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u0430 + +ORA-17053=\u0414\u0430\u043d\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c + +ORA-17054=\u0414\u0430\u043d\u043d\u044b\u0439 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f LOB \u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u0435\u043d + +ORA-17055=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0441\u0438\u043c\u0432\u043e\u043b \u0432 + +ORA-17056=\u041d\u0435\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 + +ORA-17057=\u0417\u0430\u043a\u0440\u044b\u0442\u044b\u0439 LOB + +ORA-17058=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430: \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f NLS + +ORA-17059=\u0421\u0431\u043e\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 + +ORA-17060=\u0421\u0431\u043e\u0439 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430 + +ORA-17061=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440 + +ORA-17062=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c Ref + +ORA-17063=\u041d\u0435 \u0432 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17064=\u0421\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u0438\u043b\u0438 \u043f\u0443\u0441\u0442\u043e\u0435 \u0438\u043c\u044f \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 + +ORA-17065=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u043a\u043b\u0430\u0441\u0441 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f + +ORA-17066=\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0443\u0440\u043e\u0432\u043d\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 + +ORA-17067=\u0417\u0430\u0434\u0430\u043d \u043d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 URL Oracle + +ORA-17068=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439(\u0435) \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442(\u044b) \u0432 \u0432\u044b\u0437\u043e\u0432\u0435 + +ORA-17069=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u044f\u0432\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432 XA + +ORA-17070=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d \u0440\u0430\u0437\u043c\u0435\u0440 \u0434\u0430\u043d\u043d\u044b\u0445, \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0442\u0438\u043f\u0430 + +ORA-17071=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 VARRAY + +ORA-17072=\u0412\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0434\u043b\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 + +ORA-17073=\u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u0431\u043e\u043b\u0435\u0435 \u043d\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u0435\u043d + +ORA-17074=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0448\u0430\u0431\u043b\u043e\u043d \u0438\u043c\u0435\u043d\u0438 + +ORA-17075=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17076=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0433\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f \u043d\u0430\u0431\u043e\u0440\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 + +ORA-17077=\u0421\u0431\u043e\u0439 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f REF + +ORA-17078=\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0443\u0436\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u044b + +ORA-17079=\u0420\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u0430\u043c + +ORA-17080=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043f\u0430\u043a\u0435\u0442\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 + +ORA-17081=\u043e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u043f\u0430\u043a\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 + +ORA-17082=\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 + +ORA-17083=\u041d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 + +ORA-17084=\u041e\u0431\u0440\u0430\u0442\u0438\u0432\u0448\u0438\u0439\u0441\u044f \u043a \u0441\u0442\u0440\u043e\u043a\u0435 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 + +ORA-17085=\u0412\u043e\u0437\u043d\u0438\u043a \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 + +ORA-17086=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 + +ORA-17087=\u041f\u0440\u043e\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043e\u0432\u0435\u0442 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438: setFetchDirection() + +ORA-17088=\u041d\u0435\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u0434\u043b\u044f \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u043d\u0430\u0431\u043e\u0440\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0438 \u0443\u0440\u043e\u0432\u043d\u044f \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c\u0430 +ORA-17089=\u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430 + +ORA-17090=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f + +ORA-17091=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0441 \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u044b\u043c \u0442\u0438\u043f\u043e\u043c \u0438/\u0438\u043b\u0438 \u0443\u0440\u043e\u0432\u043d\u0435\u043c \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c\u0430 + +ORA-17092=\u0412 \u043a\u043e\u043d\u0446\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u044b\u0437\u043e\u0432\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 JDBC \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e + +ORA-17093=\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u044f OCI \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b\u0430 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u041d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0442\u0438\u043f\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 + +ORA-17095=\u041d\u0435 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u0440\u0430\u0437\u043c\u0435\u0440 \u043a\u044d\u0448\u0430 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 + +ORA-17096=\u0414\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0430\u043a\u0442\u0438\u0432\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432. + +ORA-17097=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 PL/SQL + +ORA-17098=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0441 \u043f\u0443\u0441\u0442\u044b\u043c LOB + +ORA-17099=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 PL/SQL + +ORA-17100=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 Java-\u043e\u0431\u044a\u0435\u043a\u0442 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 + +ORA-17101=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043f\u0443\u043b\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 OCI + +ORA-17102=\u0414\u0432\u043e\u0438\u0447\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432\u043d\u044b\u0439 \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f + +ORA-17103=\u043d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u0442\u0438\u043f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0430 \u0447\u0435\u0440\u0435\u0437 getConnection. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 getJavaSqlConnection + +ORA-17104=\u041f\u043e\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 SQL \u043d\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0443\u0441\u0442\u044b\u043c \u0438\u043b\u0438 \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c + +ORA-17105=\u043d\u0435 \u0437\u0430\u0434\u0430\u043d \u0447\u0430\u0441\u043e\u0432\u043e\u0439 \u043f\u043e\u044f\u0441 \u0441\u0435\u0430\u043d\u0441\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f + +ORA-17106=\u0437\u0430\u0434\u0430\u043d\u0430 \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043f\u0443\u043b\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 JDBC-OCI + +ORA-17107=\u0437\u0430\u0434\u0430\u043d \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u043c\u043e\u0434\u0443\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 + +ORA-17108=\u0412 defineColumnType \u043d\u0435 \u0437\u0430\u0434\u0430\u043d\u0430 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 + +ORA-17109=\u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0435 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 Java + +ORA-17110=\u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e \u0441 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435\u043c + +ORA-17111=\u0417\u0430\u0434\u0430\u043d\u043e \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0436\u0438\u0437\u043d\u0438 \u0434\u043b\u044f \u043a\u044d\u0448\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 + +ORA-17112=\u0417\u0430\u0434\u0430\u043d \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u0442\u043e\u043a\u0430\u043c\u0438 + +ORA-17113=\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430 \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u0442\u043e\u043a\u0430\u043c\u0438 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u043a\u044d\u0448\u0430 + +ORA-17114=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0438\u043a\u0441\u0430\u0446\u0438\u044e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17115=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u043a\u0430\u0442 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17116=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u0444\u0438\u043a\u0441\u0430\u0446\u0438\u044e \u0432 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17117=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u0442\u043e\u0447\u043a\u0443 \u043e\u0442\u043a\u0430\u0442\u0430 \u0432 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17118=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0434\u043b\u044f \u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u043e\u0442\u043a\u0430\u0442\u0430 + +ORA-17119=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u043c\u044f \u0434\u043b\u044f \u0431\u0435\u0437\u044b\u043c\u044f\u043d\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u043e\u0442\u043a\u0430\u0442\u0430 + +ORA-17120=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c \u0442\u043e\u0447\u043a\u0443 \u043e\u0442\u043a\u0430\u0442\u0430 \u0441\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0430\u0432\u0442\u043e\u0444\u0438\u043a\u0441\u0430\u0446\u0438\u0435\u0439 + +ORA-17121=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u0442\u043e\u0447\u043a\u0435 \u043e\u0442\u043a\u0430\u0442\u0430 \u0441\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0430\u0432\u0442\u043e\u0444\u0438\u043a\u0441\u0430\u0446\u0438\u0435\u0439 + +ORA-17122=\u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435 \u043e\u0442\u043a\u0430\u0442\u0430 txn \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 + +ORA-17123=\u0417\u0430\u0434\u0430\u043d \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043a\u044d\u0448\u0430 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 + +ORA-17124=\u0417\u0430\u0434\u0430\u043d\u043e \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u0431\u0435\u0437\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043a\u044d\u0448\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 + +ORA-17200=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f XA \u0438\u0437 Java \u0432 C + +ORA-17201=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f XA \u0438\u0437 Java \u0432 C + +ORA-17202=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u043c\u044f RM \u0438\u0437 Java \u0432 C + +ORA-17203=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0438\u043f \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f \u0432 jlong + +ORA-17204=\u0412\u0445\u043e\u0434\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0438\u043c\u0435\u0435\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043c\u0430\u043b\u0443\u044e \u0434\u043b\u0438\u043d\u0443 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 OCI + +ORA-17205=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c OCISvcCtx \u0438\u0437 C-XA \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e xaoSvcCtx + +ORA-17206=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c OCIEnv \u0438\u0437 C-XA \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e xaoEnv + +ORA-17207=\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u043e tnsEntry \u043d\u0435 \u0437\u0430\u0434\u0430\u043d\u043e \u0432 DataSource + +ORA-17213=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_RMERR \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_open + +ORA-17215=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_INVAL \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_open + +ORA-17216=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_PROTO \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_open + +ORA-17233=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_RMERR \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_close + +ORA-17235=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_INVAL \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_close + +ORA-17236=C-XA \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0438\u043b XAER_PROTO \u0432\u043e \u0432\u0440\u0435\u043c\u044f xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u041d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 + +ORA-17402=\u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 RPA + +ORA-17403=\u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 RXH + +ORA-17404=\u0427\u0438\u0441\u043b\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 RXD \u0431\u043e\u043b\u044c\u0448\u0435 \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u043e\u0433\u043e + +ORA-17405=\u0414\u043b\u0438\u043d\u0430 UAC \u043d\u0435 \u0440\u0430\u0432\u043d\u0430 \u043d\u0443\u043b\u044e + +ORA-17406=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u0443\u0444\u0435\u0440\u0430 + +ORA-17407=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f Representation(setRep) + +ORA-17408=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f Representation(getRep) + +ORA-17409=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u0443\u0444\u0435\u0440\u0430 + +ORA-17410=\u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438\u0437 \u0441\u043e\u043a\u0435\u0442\u0430 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 + +ORA-17411=\u041d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0432\u043d\u0443\u0442\u0440. \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0438\u043f\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 + +ORA-17412=\u0414\u043b\u0438\u043d\u0430 \u0442\u0438\u043f\u0430 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c + +ORA-17413=\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043a\u043b\u044e\u0447\u0430 + +ORA-17414=\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u0443\u0444\u0435\u0440\u0430 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438\u043c\u0435\u043d \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 + +ORA-17415=\u0414\u0430\u043d\u043d\u044b\u0439 \u0442\u0438\u043f \u043d\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d + +ORA-17416=FATAL + +ORA-17417=\u041e\u0448\u0438\u0431\u043a\u0430 NLS, \u0441\u0431\u043e\u0439 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043c\u0435\u043d \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 + +ORA-17418=\u041e\u0448\u0438\u0431\u043a\u0430 \u0434\u043b\u0438\u043d\u044b \u043f\u043e\u043b\u044f \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b + +ORA-17419=\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u043e \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 + +ORA-17420=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f Oracle + +ORA-17421=\u041d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0442\u0438\u043f\u044b \u0438\u043b\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 + +ORA-17422=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 \u0432 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0435 + +ORA-17423=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u043b\u043e\u043a\u0430 PLSQL \u0431\u0435\u0437 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f IOV + +ORA-17424=\u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0434\u0440\u0443\u0433\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043c\u0430\u0440\u0448\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 + +ORA-17425=\u0412\u043e\u0437\u0432\u0440\u0430\u0442 \u043f\u043e\u0442\u043e\u043a\u0430 \u0432 \u0431\u043b\u043e\u043a PLSQL + +ORA-17426=\u0421\u0432\u044f\u0437\u0438 IN \u0438 OUT \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b + +ORA-17427=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e OAC + +ORA-17428=\u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0437\u043e\u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 + +ORA-17429=\u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c + +ORA-17430=\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u043e\u0439\u0442\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 + +ORA-17431=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 SQL \u0434\u043b\u044f \u0440\u0430\u0437\u0431\u043e\u0440\u0430 \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 + +ORA-17432=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0432 all7 + +ORA-17433=\u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b \u0432 \u0432\u044b\u0437\u043e\u0432\u0435 + +ORA-17434=\u043d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043f\u043e\u0442\u043e\u043a\u043e\u0432\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 + +ORA-17435=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0447\u0438\u0441\u043b\u043e in_out_binds \u0432 IOV + +ORA-17436=\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0441\u0432\u044f\u0437\u0435\u0439 + +ORA-17437=\u041e\u0448\u0438\u0431\u043a\u0430 \u0432 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0435(\u0430\u0445) IN/OUT \u0431\u043b\u043e\u043a\u0430 PLSQL + +ORA-17438=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f - \u043d\u0435\u043f\u0440\u0435\u0434\u0432\u0438\u0434\u0435\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 + +ORA-17439=\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f SQL + +ORA-17440=DBItem/DBType \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d + +ORA-17441=\u042d\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f Oracle \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0435 \u043d\u0438\u0436\u0435 7.2.3. + +ORA-17442=\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 Refcursor + +ORA-17443=\u0412 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0435 THIN \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0438 \u043f\u0430\u0440\u043e\u043b\u0438 + +ORA-17444=\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0430\u044f \u0438\u0437 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 TTC \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_sk.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_sk.properties new file mode 100644 index 0000000..5b16298 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_sk.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Intern\u00e1 chyba + +ORA-17002=Vstupno-v\u00fdstupn\u00e1 chyba + +ORA-17003=Neplatn\u00fd index st\u013apca + +ORA-17004=Neplatn\u00fd typ st\u013apca + +ORA-17005=Nepodporovan\u00fd typ st\u013apca + +ORA-17006=Neplatn\u00fd n\u00e1zov st\u013apca + +ORA-17007=Neplatn\u00fd dynamick\u00fd st\u013apec + +ORA-17008=Uzatvoren\u00e9 spojenie + +ORA-17009=Uzatvoren\u00fd pr\u00edkaz + +ORA-17010=Uzatvoren\u00fd Resultset + +ORA-17011=Vy\u010derpan\u00fd Resultset + +ORA-17012=Konflikt typov parametrov + +ORA-17014=ResultSet.next nebolo volan\u00e9 + +ORA-17015=Pr\u00edkaz bol zru\u0161en\u00fd + +ORA-17016=\u010casov\u00fd limit pr\u00edkazu uplynul + +ORA-17017=Kurzor je u\u017e iniciovan\u00fd + +ORA-17018=Neplatn\u00fd kurzor + +ORA-17019=Op\u00edsa\u0165 mo\u017eno iba dopyt + +ORA-17020=Neplatn\u00e9 predbe\u017en\u00e9 vyvolanie riadka + +ORA-17021=Ch\u00fdba defines + +ORA-17022=Ch\u00fdba defines pri indexe + +ORA-17023=Nepodporovan\u00e1 vlastnos\u0165 + +ORA-17024=Nena\u010d\u00edtali sa \u017eiadne d\u00e1ta + +ORA-17025=Chyba v defines.isNull () + +ORA-17026=Numerick\u00e9 prete\u010denie + +ORA-17027=Tok je u\u017e zatvoren\u00fd + +ORA-17028=Nemo\u017eno robi\u0165 nov\u00e9 defines, k\u00fdm nebude aktu\u00e1lny ResultSet zatvoren\u00fd + +ORA-17029=setReadOnly: Spojenia len na \u010d\u00edtanie nie s\u00fa podporovan\u00e9 + +ORA-17030=READ_COMMITTED a SERIALIZABLE s\u00fa jedin\u00e9 platn\u00e9 transak\u010dn\u00e9 \u00farovne + +ORA-17031=setAutoClose: Podpora len pre zapnut\u00fd re\u017eim auto close + +ORA-17032=nemo\u017eno nastavi\u0165 predbe\u017en\u00e9 vyvolanie riadkov na nulu + +ORA-17033=Deformovan\u00fd re\u0165azec SQL92 na poz\u00edcii + +ORA-17034=Nepodporovan\u00fd token SQL92 na poz\u00edcii + +ORA-17035=Nepodporovan\u00e1 znakov\u00e1 mno\u017eina + +ORA-17036=v\u00fdnimka v OracleNumber + +ORA-17037=Zlyhanie konverzie medzi UTF8 a UCS2 + +ORA-17038=Bajtov\u00e9 pole nie je dos\u0165 dlh\u00e9 + +ORA-17039=Znakov\u00e9 pole nie je dos\u0165 dlh\u00e9 + +ORA-17040=V pripojovacom URL mus\u00ed by\u0165 \u0161pecifikovan\u00fd podprotokol + +ORA-17041=Ch\u00fdba parameter IN alebo OUT pri indexe: + +ORA-17042=Neplatn\u00e1 hodnota d\u00e1vky + +ORA-17043=Neplatn\u00e1 maxim\u00e1lna ve\u013ekos\u0165 toku + +ORA-17044=Intern\u00e1 chyba: D\u00e1tov\u00e9 pole nealokovan\u00e9 + +ORA-17045=Intern\u00e1 chyba: Pokus o pr\u00edstup k v\u00e4zobn\u00fdm hodnot\u00e1m prekra\u010duj\u00facim hodnotu d\u00e1vky + +ORA-17046=Intern\u00e1 chyba: Neplatn\u00fd index pre pr\u00edstup k d\u00e1tam + +ORA-17047=Chyba v syntaktickej anal\u00fdze typov\u00e9ho deskriptora + +ORA-17048=Nedefinovan\u00fd typ + +ORA-17049=Nekonzistentn\u00e9 typy java a sql objektov + +ORA-17050=tento prvok vo vektore neexistuje + +ORA-17051=Toto API nemo\u017eno pou\u017ei\u0165 pre nie-UDT typy + +ORA-17052=Tento odkaz je neplatn\u00fd + +ORA-17053=Ve\u013ekos\u0165 je neplatn\u00e1 + +ORA-17054=Lok\u00e1tor LOB nie je platn\u00fd + +ORA-17055=Neplatn\u00fd znak n\u00e1jden\u00fd v + +ORA-17056=Nepodporovan\u00e1 znakov\u00e1 mno\u017eina + +ORA-17057=Uzavret\u00fd LOB + +ORA-17058=Intern\u00e1 chyba: Neplatn\u00fd pomer konverzie NLS + +ORA-17059=Nepodarilo sa konvertova\u0165 na intern\u00fa reprezent\u00e1ciu + +ORA-17060=Nepodarilo sa skon\u0161truova\u0165 deskriptor + +ORA-17061=Ch\u00fdba deskriptor + +ORA-17062=Referen\u010dn\u00fd kurzor je neplatn\u00fd + +ORA-17063=Nie je v transakcii + +ORA-17064=Neplatn\u00e1 syntax alebo n\u00e1zov datab\u00e1zy je pr\u00e1zdny + +ORA-17065=Trieda konverzie je nulov\u00e1 + +ORA-17066=Je potrebn\u00e1 implement\u00e1cia \u0161pecifick\u00e1 pre pr\u00edstupov\u00fa vrstvu + +ORA-17067=\u0160pecifikovan\u00e9 neplatn\u00e9 Oracle URL + +ORA-17068=Neplatn\u00e9 argumenty vo volan\u00ed + +ORA-17069=Pou\u017eite explicitn\u00e9 XA volanie + +ORA-17070=Ve\u013ekos\u0165 d\u00e1t v\u00e4\u010d\u0161ia ako maxim\u00e1lna ve\u013ekos\u0165 pre tento typ + +ORA-17071=Prekro\u010den\u00fd maxim\u00e1lny limit VARRAY + +ORA-17072=Vlo\u017een\u00e1 hodnota je prive\u013ek\u00e1 pre st\u013apec + +ORA-17073=Logick\u00e1 rukov\u00e4\u0165 u\u017e nie je platn\u00e1 + +ORA-17074=neplatn\u00fd vzor n\u00e1zvu + +ORA-17075=Neplatn\u00e1 oper\u00e1cia pre resultset iba na odoslanie \u010falej + +ORA-17076=Neplatn\u00e1 oper\u00e1cia pre resultset iba na \u010d\u00edtanie + +ORA-17077=Zlyhanie pri nastavovan\u00ed hodnoty REF + +ORA-17078=Nemo\u017eno uskuto\u010dni\u0165 oper\u00e1ciu, lebo s\u00fa u\u017e otvoren\u00e9 spojenia + +ORA-17079=Doklady pou\u017e\u00edvate\u013ea sa nezhoduj\u00fa s existuj\u00facimi + +ORA-17080=neplatn\u00fd d\u00e1vkov\u00fd pr\u00edkaz + +ORA-17081=po\u010das d\u00e1vkovania do\u0161lo k chybe + +ORA-17082=\u017diadny aktu\u00e1lny riadok + +ORA-17083=Nie je na vlo\u017eenom riadku + +ORA-17084=Volan\u00e9 na vlo\u017eenom riadku + +ORA-17085=Vyskytuj\u00fa sa konflikty hodn\u00f4t + +ORA-17086=Nedefinovan\u00e1 hodnota st\u013apca na vlo\u017eenom riadku + +ORA-17087=Ignorovan\u00fd pokyn na zv\u00fd\u0161enie v\u00fdkonnosti: setFetchDirection() + +ORA-17088=Nepodporovan\u00e1 syntax pre po\u017eadovan\u00fd typ resultsetu a \u00farove\u0148 s\u00fabe\u017enosti +ORA-17089=intern\u00e1 chyba + +ORA-17090=oper\u00e1cia nepovolen\u00e1 + +ORA-17091=Nemo\u017eno vytvori\u0165 resultset na po\u017eadovanej \u00farovni typu a/alebo s\u00fabe\u017enosti + +ORA-17092=Pr\u00edkazy JDBC nemo\u017eno vytv\u00e1ra\u0165 alebo vykon\u00e1va\u0165 na konci spracovania volania + +ORA-17093=Oper\u00e1cia OCI vr\u00e1tila OCI_SUCCESS_WITH_INFO + +ORA-17094=Nezhoda verzie typu objektu + +ORA-17095=Ve\u013ekos\u0165 cache pr\u00edkazov nie je nastaven\u00e1 + +ORA-17096=Pre toto logick\u00e9 spojenie nemo\u017eno aktivova\u0165 cacheovanie pr\u00edkazov. + +ORA-17097=Neplatn\u00fd typ prvku indexovej tabu\u013eky PL/SQL + +ORA-17098=Neplatn\u00e1 oper\u00e1cia s pr\u00e1zdnym ve\u013ek\u00fdm objektom + +ORA-17099=Neplatn\u00e1 d\u013a\u017eka po\u013ea tabu\u013eky indexu PL/SQL + +ORA-17100=Neplatn\u00fd datab\u00e1zov\u00fd objekt Java + +ORA-17101=Neplatn\u00e9 vlastnosti v objekte spolo\u010dnej oblasti spojenia OCI + +ORA-17102=Bfile je len na \u010d\u00edtanie + +ORA-17103=neplatn\u00fd typ spojenia na n\u00e1vrat cez getConnection. Pou\u017eite namiesto neho getJavaSqlConnection + +ORA-17104=Pr\u00edkaz SQL na vykonanie nem\u00f4\u017ee by\u0165 pr\u00e1zdny alebo nulov\u00fd + +ORA-17105=\u010dasov\u00e1 z\u00f3na rel\u00e1cie spojenia nebola nastaven\u00e1 + +ORA-17106=\u0161pecifikovan\u00e1 neplatn\u00e1 konfigur\u00e1cia spolo\u010dnej oblasti pripojen\u00ed ovl\u00e1da\u010dov JDBC-OCI + +ORA-17107=zadan\u00fd neplatn\u00fd typ proxy + +ORA-17108=V defineColumnType nie je uveden\u00e1 maxim\u00e1lna d\u013a\u017eka + +ORA-17109=nena\u0161lo sa \u0161tandardn\u00e9 k\u00f3dovanie znakov Java + +ORA-17110=vykonanie dokon\u010den\u00e9 s upozornen\u00edm + +ORA-17111=Zadan\u00fd neplatn\u00fd \u010dasov\u00fd limit TTL cache pripojenia + +ORA-17112=Zadan\u00fd neplatn\u00fd interval pre thread + +ORA-17113=Hodnota intervalu pre thread je vy\u0161\u0161ia ako hodnota \u010dasov\u00e9ho limitu cache + +ORA-17114=nebolo mo\u017en\u00e9 pou\u017ei\u0165 lok\u00e1lne potvrdenie transakcie v glob\u00e1lnej transakcii + +ORA-17115=nebolo mo\u017en\u00e9 pou\u017ei\u0165 lok\u00e1lny rollback transakcie v glob\u00e1lnej transakcii + +ORA-17116=nebolo mo\u017en\u00e9 zapn\u00fa\u0165 automatick\u00e9 potvrdzovanie v akt\u00edvnej glob\u00e1lnej transakcii + +ORA-17117=nebolo mo\u017en\u00e9 nastavi\u0165 bod n\u00e1vratu v akt\u00edvnej glob\u00e1lnej transakcii + +ORA-17118=nebolo mo\u017en\u00e9 z\u00edska\u0165 ID pre pomenovan\u00fd bod n\u00e1vratu + +ORA-17119=nebolo mo\u017en\u00e9 z\u00edska\u0165 n\u00e1zov pre nepomenovan\u00fd bod n\u00e1vratu + +ORA-17120=nebolo mo\u017en\u00e9 nastavi\u0165 bod n\u00e1vratu so zapnut\u00fdm automatick\u00fdm potvrdzovan\u00edm + +ORA-17121=nebolo mo\u017en\u00e9 vykona\u0165 rollback na bod n\u00e1vratu so zapnut\u00fdm automatick\u00fdm potvrdzovan\u00edm + +ORA-17122=nebolo mo\u017en\u00e9 vykona\u0165 rollback na lok\u00e1lny bod n\u00e1vratu transakcie v glob\u00e1lnej transakcii + +ORA-17123=Zadan\u00e1 neplatn\u00e1 ve\u013ekos\u0165 cache pr\u00edkazov + +ORA-17124=Zadan\u00fd neplatn\u00fd \u010dasov\u00fd limit inaktivity cache pripojenia + +ORA-17200=Nie je mo\u017en\u00e9 spr\u00e1vne skonvertova\u0165 re\u0165azec XA open z Java do C + +ORA-17201=Nie je mo\u017en\u00e9 spr\u00e1vne skonvertova\u0165 re\u0165azec XA close z Java do C + +ORA-17202=Nie je mo\u017en\u00e9 spr\u00e1vne skonvertova\u0165 n\u00e1zov RM z Java do C + +ORA-17203=Nie je mo\u017en\u00e9 previes\u0165 typ smern\u00edka na jlong + +ORA-17204=Vstupn\u00e9 pole je prikr\u00e1tke na obsiahnutie rukov\u00e4t\u00ed OCI + +ORA-17205=Zlyhanie pri z\u00edskavan\u00ed rukov\u00e4te OCISvcCtx z C-XA pomocou xaoSvcCtx + +ORA-17206=Zlyhanie pri z\u00edskavan\u00ed rukov\u00e4te OCIEnv z C-XA pomocou xaoEnv + +ORA-17207=Vlastnos\u0165 tnsEntry nebola nastaven\u00e1 v DataSource + +ORA-17213=C-XA vr\u00e1tilo XAER_RMERR po\u010das xa_open + +ORA-17215=C-XA vr\u00e1tilo XAER_INVAL po\u010das xa_open + +ORA-17216=C-XA vr\u00e1tilo XAER_PROTO po\u010das xa_open + +ORA-17233=C-XA vr\u00e1tilo XAER_RMERR po\u010das xa_close + +ORA-17235=C-XA vr\u00e1tilo XAER_INVAL po\u010das xa_close + +ORA-17236=C-XA vr\u00e1tilo XAER_PROTO po\u010das xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Poru\u0161enie protokolu + +ORA-17402=O\u010dak\u00e1va sa iba jedna spr\u00e1va RPA + +ORA-17403=O\u010dak\u00e1va sa iba jedna spr\u00e1va RXH + +ORA-17404=Prijat\u00fdch viac RXD, ako sa o\u010dak\u00e1valo + +ORA-17405=D\u013a\u017eka UAC nie je nulov\u00e1 + +ORA-17406=Prekro\u010denie maxim\u00e1lnej d\u013a\u017eky buffra + +ORA-17407=neplatn\u00e1 typov\u00e1 reprezent\u00e1cia (setRep) + +ORA-17408=neplatn\u00e1 typov\u00e1 reprezent\u00e1cia (getRep) + +ORA-17409=neplatn\u00e1 d\u013a\u017eka buffra + +ORA-17410=V sokete u\u017e nie s\u00fa \u010fal\u0161ie d\u00e1ta na \u010d\u00edtanie + +ORA-17411=Nezhoda reprezent\u00e1ci\u00ed d\u00e1tov\u00e9ho typu + +ORA-17412=Typov\u00e1 d\u013a\u017eka v\u00e4\u010d\u0161ia ako maximum + +ORA-17413=Prekro\u010denie ve\u013ekosti k\u013e\u00fa\u010da + +ORA-17414=Nedostato\u010dn\u00e1 ve\u013ekos\u0165 buffra na ulo\u017eenie n\u00e1zvov st\u013apcov + +ORA-17415=Tento typ nie je o\u0161etren\u00fd + +ORA-17416=FATAL + +ORA-17417=Probl\u00e9m NLS, nepodarilo sa dek\u00f3dova\u0165 n\u00e1zvy st\u013apcov + +ORA-17418=Chyba d\u013a\u017eky po\u013ea internej \u0161trukt\u00fary + +ORA-17419=Vr\u00e1ten\u00fd neplatn\u00fd po\u010det st\u013apcov + +ORA-17420=Nedefinovan\u00e1 verzia Oracle + +ORA-17421=Nedefinovan\u00e9 typy alebo spojenie + +ORA-17422=Neplatn\u00e1 trieda vo factory + +ORA-17423=Pou\u017eitie bloku PLSQL bez definovania IOV + +ORA-17424=Pokus o in\u00fa oper\u00e1ciu radenia + +ORA-17425=Vr\u00e1tenie toku v bloku PLSQL + +ORA-17426=V\u00e4zby IN aj OUT s\u00fa NULL + +ORA-17427=Pou\u017eitie neiniciovan\u00e9ho OAC + +ORA-17428=Logon treba vola\u0165 po connect + +ORA-17429=Treba ma\u0165 aspo\u0148 spojenie na server + +ORA-17430=Treba by\u0165 prihl\u00e1sen\u00fd na server + +ORA-17431=Pr\u00edkaz SQL na syntaktick\u00fa anal\u00fdzu je pr\u00e1zdny + +ORA-17432=neplatn\u00e9 vo\u013eby v all7 + +ORA-17433=neplatn\u00e9 argumenty vo volan\u00ed + +ORA-17434=nie je v tokovom re\u017eime + +ORA-17435=neplatn\u00fd po\u010det in_out_binds v IOV + +ORA-17436=neplatn\u00fd po\u010det outbinds + +ORA-17437=Chyba v IN/OUT argumentoch bloku PLSQL + +ORA-17438=Intern\u00e1 - neo\u010dak\u00e1van\u00e1 hodnota + +ORA-17439=Neplatn\u00fd typ SQL + +ORA-17440=DBItem/DBType je pr\u00e1zdny + +ORA-17441=Verzia Oracle nepodporovan\u00e1. Minim\u00e1lna podporovan\u00e1 verzia je 7.2.3. + +ORA-17442=Hodnota Refcursor je neplatn\u00e1 + +ORA-17443=Pr\u00e1zdny pou\u017e\u00edvate\u013e alebo heslo nepodporovan\u00e9 u THIN ovl\u00e1da\u010da + +ORA-17444=Verzia protokolu TTC prijat\u00e1 zo servera nie je podporovan\u00e1 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_sv.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_sv.properties new file mode 100644 index 0000000..49612cf --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_sv.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Internt fel + +ORA-17002=I/O-undantag + +ORA-17003=Ogiltigt kolumnindex + +ORA-17004=Ogiltig kolumntyp + +ORA-17005=Kolumntypen st\u00f6ds inte + +ORA-17006=Ogiltigt kolumnnamn + +ORA-17007=Ogiltig dynamisk kolumn + +ORA-17008=St\u00e4ngd anslutning + +ORA-17009=St\u00e4ngd sats + +ORA-17010=St\u00e4ngd resultatupps\u00e4ttning + +ORA-17011=Utt\u00f6md resultatupps\u00e4ttning + +ORA-17012=Parametertypskonflikt + +ORA-17014=ResultSet.next anropades inte + +ORA-17015=Satsen avbr\u00f6ts + +ORA-17016=Satsen \u00f6verskred tidsgr\u00e4nsen + +ORA-17017=Mark\u00f6ren har redan initierats + +ORA-17018=Ogiltig mark\u00f6r + +ORA-17019=Kan bara beskriva en fr\u00e5ga + +ORA-17020=Ogiltig f\u00f6rh\u00e4mtning av rader + +ORA-17021=Definitioner saknas + +ORA-17022=Definitioner saknas i index + +ORA-17023=Funktionen st\u00f6ds inte + +ORA-17024=Inga data har l\u00e4sts + +ORA-17025=Fel i defines.isNull () + +ORA-17026=Numeriskt spill + +ORA-17027=Fl\u00f6det har redan st\u00e4ngts + +ORA-17028=Kan inte ta fram n\u00e5gra nya definitioner f\u00f6rr\u00e4n aktuell resultatupps\u00e4ttning har st\u00e4ngts + +ORA-17029=setReadOnly: Skrivskyddade anslutningar st\u00f6ds inte + +ORA-17030=READ_COMMITTED och SERIALIZABLE \u00e4r de enda giltiga transaktionsniv\u00e5erna + +ORA-17031=setAutoClose: St\u00f6der bara aktivt autost\u00e4ngningsl\u00e4ge + +ORA-17032=kan inte ge f\u00f6rh\u00e4mtning av rader v\u00e4rdet noll + +ORA-17033=Felaktigt utformad SQL92-str\u00e4ng i position + +ORA-17034=Ogiltigt SQL92-token i position + +ORA-17035=Teckenupps\u00e4ttningen st\u00f6ds inte!! + +ORA-17036=undantag i OracleNumber + +ORA-17037=Misslyckades att konvertera mellan UTF8 och UCS2 + +ORA-17038=Byte-vektorn \u00e4r inte tillr\u00e4ckligt l\u00e5ng + +ORA-17039=Teckenvektorn \u00e4r inte tillr\u00e4ckligt l\u00e5ng + +ORA-17040=Delprotokollet m\u00e5ste anges i anslutnings-URL + +ORA-17041=IN- eller OUT-parameter saknas i index: + +ORA-17042=Ogiltigt satsv\u00e4rde + +ORA-17043=Ogiltig maxstorlek f\u00f6r fl\u00f6de + +ORA-17044=Internt fel: Datavektor har inte tilldelats + +ORA-17045=Internt fel: Du f\u00f6rs\u00f6kte att h\u00e4mta bindningsv\u00e4rden utanf\u00f6r giltigt satsv\u00e4rde + +ORA-17046=Internt fel: Ogiltigt index f\u00f6r data\u00e5tkomst + +ORA-17047=Fel i typbeskrivningsanalys + +ORA-17048=Odefinierad typ + +ORA-17049=Of\u00f6renliga java- och sql-objekttyper + +ORA-17050=s\u00e5dant element finns inte i vektorn + +ORA-17051=Detta applikationsgr\u00e4nssnitt (API) kan inte anv\u00e4ndas f\u00f6r icke anv\u00e4ndardefinierade typer + +ORA-17052=Referensen \u00e4r inte giltig + +ORA-17053=Storleken \u00e4r inte giltig + +ORA-17054=LOB-pekaren \u00e4r inte giltig + +ORA-17055=Ett ogiltigt tecken har p\u00e5tr\u00e4ffats i + +ORA-17056=Teckenupps\u00e4ttningen st\u00f6ds inte + +ORA-17057=LOB \u00e4r st\u00e4ngd + +ORA-17058=Internt fel: Ogiltig NLS-omvandlingskvot + +ORA-17059=Kunde inte konvertera till intern representation + +ORA-17060=Kunde inte konstruera beskrivning + +ORA-17061=Beskrivning saknas + +ORA-17062=REFCURSOR \u00e4r ogiltig + +ORA-17063=F\u00f6rekommer ej i n\u00e5gon transaktion + +ORA-17064=Syntaxen \u00e4r ogiltig eller databasens namn null + +ORA-17065=Omvandlingsklassen \u00e4r null + +ORA-17066=Implementation specifik f\u00f6r \u00e5tkomstskikt kr\u00e4vs + +ORA-17067=Ogiltig Oracle-URL angavs + +ORA-17068=Anropet inneh\u00e5ller minst ett ogiltigt argument + +ORA-17069=Anv\u00e4nd explicit XA-anrop + +ORA-17070=Datastorleken \u00e4r st\u00f6rre \u00e4n till\u00e5tet f\u00f6r den h\u00e4r typen + +ORA-17071=St\u00f6rsta till\u00e5tna storlek f\u00f6r VARRAY har \u00f6verskridits + +ORA-17072=Det v\u00e4rde som infogades ryms inte i kolumnen + +ORA-17073=Det logiska handtaget \u00e4r inte l\u00e4ngre giltigt + +ORA-17074=ogiltigt namnm\u00f6nster + +ORA-17075=Ogiltig \u00e5tg\u00e4rd f\u00f6r endast vidarebefordrad resultatupps\u00e4ttning + +ORA-17076=Ogiltig \u00e5tg\u00e4rd f\u00f6r skrivskyddad resultatupps\u00e4ttning + +ORA-17077=Kunde inte st\u00e4lla in REF-v\u00e4rde + +ORA-17078=Kan inte utf\u00f6ra \u00e5tg\u00e4rden eftersom anslutningarna redan \u00e4r \u00f6ppnade + +ORA-17079=Anv\u00e4ndarautentiseringarna motsvarar inte de befintliga + +ORA-17080=ogiltigt batchkommando + +ORA-17081=fel uppstod vid satsvis bearbetning + +ORA-17082=Ingen aktuell rad + +ORA-17083=Inte p\u00e5 den infogade raden + +ORA-17084=Anropad p\u00e5 den infogade raden + +ORA-17085=V\u00e4rdekonflikter uppst\u00e5r + +ORA-17086=Odefinierat kolumnv\u00e4rde p\u00e5 den infogade raden + +ORA-17087=Ignorerat prestandaf\u00f6rslag: setFetchDirection() + +ORA-17088=Ogiltig syntax f\u00f6r efterfr\u00e5gad resultatupps\u00e4ttningstyp och samtidighetsniv\u00e5 +ORA-17089=internt fel + +ORA-17090=otill\u00e5ten \u00e5tg\u00e4rd + +ORA-17091=Kan inte skapa resultatupps\u00e4ttning vid efterfr\u00e5gad typ och/eller samtidighetsniv\u00e5 + +ORA-17092=JDBC-satser kan inte skapas eller k\u00f6ras vid slutet av anropsbearbetning + +ORA-17093=OCI-operationen returnerade OCI_SUCCESS_WITH_INFO + +ORA-17094=Objekttypsversionerna \u00e4r inkompatibla + +ORA-17095=Storleken p\u00e5 satscachen har inte st\u00e4llts in + +ORA-17096=Satscachning kan inte aktiveras f\u00f6r den h\u00e4r logiska anslutningen. + +ORA-17097=Ogiltig elementtyp f\u00f6r PL/SQL-indextabell + +ORA-17098=Ogiltig tom LOB-\u00e5tg\u00e4rd + +ORA-17099=Ogiltig vektorl\u00e4ngd f\u00f6r PL/SQL-indextabell + +ORA-17100=Ogiltigt Java-objekt i databasen + +ORA-17101=Ogiltiga egenskaper i OCI-objekt f\u00f6r anslutningspool + +ORA-17102=Bfile \u00e4r skrivskyddad + +ORA-17103=ogiltig anslutningstyp att returnera via getConnection. Anv\u00e4nd getJavaSqlConnection i st\u00e4llet + +ORA-17104=Den SQL-sats som ska k\u00f6ras f\u00e5r inte vara tom eller null + +ORA-17105=tidszon f\u00f6r anslutningssession har inte st\u00e4llts in + +ORA-17106=ogiltig konfiguration f\u00f6r JDBC-OCI-drivrutinens anslutningspool har angetts + +ORA-17107=ogiltig proxy-typ angiven + +ORA-17108=Ingen maxl\u00e4ngd har angetts i defineColumnType + +ORA-17109=standardteckenupps\u00e4ttning f\u00f6r Java saknas + +ORA-17110=k\u00f6rningen slutf\u00f6rd med varning + +ORA-17111=Ogiltig TTL-tidsgr\u00e4ns f\u00f6r anslutningscache har angetts + +ORA-17112=Ogiltigt tr\u00e5dintervall har angetts + +ORA-17113=V\u00e4rdet f\u00f6r tr\u00e5dintervall \u00e4r st\u00f6rre \u00e4n v\u00e4rdet f\u00f6r cachetidsgr\u00e4ns + +ORA-17114=kunde inte anv\u00e4nda lokal transaktionsbekr\u00e4ftelse i en global transaktion + +ORA-17115=kunde inte anv\u00e4nda lokal transaktions\u00e5terst\u00e4llning i en global transaktion + +ORA-17116=kunde inte aktivera automatisk bekr\u00e4ftelse i en aktiv global transaktion + +ORA-17117=kunde inte st\u00e4lla in lagringspunkt i en aktiv global transaktion + +ORA-17118=kunde inte h\u00e4mta id f\u00f6r namngiven lagringspunkt + +ORA-17119=kunde inte h\u00e4mta namn f\u00f6r lagringspunkt utan namn + +ORA-17120=kunde inte st\u00e4lla in en lagringspunkt med aktiverad automatisk bekr\u00e4ftelse + +ORA-17121=kunde inte \u00e5terst\u00e4lla till en lagringspunkt med aktiverad automatisk bekr\u00e4ftelse + +ORA-17122=kunde inte \u00e5terst\u00e4lla till en lokal transaktionslagringspunkt i en global transaktion + +ORA-17123=Ogiltig storlek p\u00e5 satscache har angetts + +ORA-17124=Ogiltig inaktivitetstidsgr\u00e4ns f\u00f6r anslutningscache har angetts + +ORA-17200=Det gick inte att konvertera \u00f6ppen XA-str\u00e4ng fr\u00e5n Java till C + +ORA-17201=Det gick inte att konvertera sluten XA-str\u00e4ng fr\u00e5n Java till C + +ORA-17202=Det gick inte att konvertera RM-namn fr\u00e5n Java till C + +ORA-17203=Det gick inte att konvertera pekartypen till jlong + +ORA-17204=Den inmatade vektorn \u00e4r f\u00f6r liten f\u00f6r att inneh\u00e5lla OCI-handtag + +ORA-17205=Det gick inte att h\u00e4mta handtaget OCISvcCtx fr\u00e5n C-XA med xaoSvcCtx + +ORA-17206=Det gick inte att h\u00e4mta handtaget OCIEnv fr\u00e5n C-XA med xaoEnv + +ORA-17207=Egenskapen tnsEntry har inte st\u00e4llts in i DataSource + +ORA-17213=C-XA returnerade XAER_RMERR vid xa_open + +ORA-17215=C-XA returnerade XAER_INVAL vid xa_open + +ORA-17216=C-XA returnerade XAER_PROTO vid xa_open + +ORA-17233=C-XA returnerade XAER_RMERR vid xa_close + +ORA-17235=C-XA returnerade XAER_INVAL vid xa_close + +ORA-17236=C-XA returnerade XAER_PROTO vid xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Brott mot protokoll + +ORA-17402=Bara ett RPA-meddelande f\u00f6rv\u00e4ntas + +ORA-17403=Bara ett RXH-meddelande f\u00f6rv\u00e4ntas + +ORA-17404=Tog emot fler RXD:er \u00e4n f\u00f6rv\u00e4ntat + +ORA-17405=UAC-l\u00e4ngden \u00e4r inte noll + +ORA-17406=St\u00f6rsta till\u00e5tna buffertl\u00e4ngd har \u00f6verskridits + +ORA-17407=ogiltig Typrepresentation(setRep) + +ORA-17408=ogiltig Typrepresentation(getRep) + +ORA-17409=ogiltig buffertl\u00e4ngd + +ORA-17410=Inga fler data att l\u00e4sa fr\u00e5n socket + +ORA-17411=Datatypsrepresentationerna \u00e4r inkompatibla + +ORA-17412=St\u00f6rre typl\u00e4ngd \u00e4n maximum + +ORA-17413=\u00d6verskrider nyckelstorlek + +ORA-17414=Otillr\u00e4cklig buffertstorlek f\u00f6r att lagra kolumnnamn + +ORA-17415=Den h\u00e4r typen har inte hanterats + +ORA-17416=FATAL + +ORA-17417=NLS-problem: kunde inte avkoda kolumnnamn + +ORA-17418=F\u00e4ltl\u00e4ngdsfel i intern struktur + +ORA-17419=Ett ogiltigt antal kolumner returnerades + +ORA-17420=Oracle-versionen \u00e4r inte definierad + +ORA-17421=Typer eller anslutning \u00e4r inte definierade + +ORA-17422=Ogiltig klass i genereringen + +ORA-17423=Anv\u00e4nder ett PL/SQL-block utan definierad IOV + +ORA-17424=Du f\u00f6rs\u00f6kte anv\u00e4nda en annan \u00f6vervaknings\u00e5tg\u00e4rd + +ORA-17425=Returnerar ett fl\u00f6de i PL/SQL-block + +ORA-17426=B\u00e5de IN- och OUT-bindningar \u00e4r NULL + +ORA-17427=Anv\u00e4nder oinitierad OAC + +ORA-17428=Inloggningen m\u00e5ste anropas efter anslutning + +ORA-17429=M\u00e5ste \u00e5tminstone vara ansluten till servern + +ORA-17430=M\u00e5ste vara inloggad p\u00e5 servern + +ORA-17431=Den SQL-sats som ska analyseras \u00e4r null + +ORA-17432=ogiltiga alternativ i all7 + +ORA-17433=ogiltiga argument i anrop + +ORA-17434=ej i direktuppspelningsl\u00e4ge + +ORA-17435=ogiltigt antal in_out_binds i IOV + +ORA-17436=ogiltigt antal OUT-parametrar + +ORA-17437=Fel i IN/OUT-argument i PL/SQL-block + +ORA-17438=Internt: ov\u00e4ntat v\u00e4rde + +ORA-17439=Ogiltig SQL-typ + +ORA-17440=DBItem/DBType \u00e4r null + +ORA-17441=Oracle-versionen st\u00f6ds inte. Den l\u00e4gsta version som st\u00f6ds \u00e4r 7.2.3. + +ORA-17442=V\u00e4rdet f\u00f6r REFCURSOR \u00e4r ogiltigt + +ORA-17443=Anv\u00e4ndare \u00e4r null eller ocks\u00e5 st\u00f6ds inte l\u00f6senordet i drivrutinen THIN + +ORA-17444=Den version av TTC-protokollet som mottogs fr\u00e5n servern st\u00f6ds inte + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_th.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_th.properties new file mode 100644 index 0000000..c8a2bee --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_th.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19 + +ORA-17002=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14 IO + +ORA-17003=\u0e14\u0e31\u0e0a\u0e19\u0e35\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17004=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17005=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17006=\u0e0a\u0e37\u0e48\u0e2d\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17007=\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e41\u0e1a\u0e1a\u0e44\u0e14\u0e19\u0e32\u0e21\u0e34\u0e04\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17008=\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e17\u0e35\u0e48\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e41\u0e25\u0e49\u0e27 + +ORA-17009=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e17\u0e35\u0e48\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e41\u0e25\u0e49\u0e27 + +ORA-17010=Resultset \u0e17\u0e35\u0e48\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e41\u0e25\u0e49\u0e27 + +ORA-17011=Resultset \u0e17\u0e35\u0e48\u0e40\u0e25\u0e34\u0e01\u0e43\u0e0a\u0e49 + +ORA-17012=\u0e02\u0e49\u0e2d\u0e02\u0e31\u0e14\u0e41\u0e22\u0e49\u0e07\u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e1e\u0e32\u0e23\u0e32\u0e21\u0e34\u0e40\u0e15\u0e2d\u0e23\u0e4c + +ORA-17014=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 ResultSet.next + +ORA-17015=\u0e22\u0e01\u0e40\u0e25\u0e34\u0e01\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e41\u0e25\u0e49\u0e27 + +ORA-17016=\u0e2b\u0e21\u0e14\u0e40\u0e27\u0e25\u0e32\u0e02\u0e2d\u0e07\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e19\u0e35\u0e49\u0e41\u0e25\u0e49\u0e27 + +ORA-17017=\u0e40\u0e23\u0e34\u0e48\u0e21\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e40\u0e04\u0e2d\u0e23\u0e4c\u0e40\u0e0b\u0e2d\u0e23\u0e4c\u0e41\u0e25\u0e49\u0e27 + +ORA-17018=\u0e40\u0e04\u0e2d\u0e23\u0e4c\u0e40\u0e0b\u0e2d\u0e23\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17019=\u0e2d\u0e18\u0e34\u0e1a\u0e32\u0e22\u0e44\u0e14\u0e49\u0e40\u0e09\u0e1e\u0e32\u0e30\u0e01\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e2a\u0e37\u0e1a\u0e04\u0e49\u0e19 + +ORA-17020=\u0e01\u0e32\u0e23\u0e14\u0e36\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e41\u0e16\u0e27\u0e25\u0e48\u0e27\u0e07\u0e2b\u0e19\u0e49\u0e32\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17021=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e01\u0e33\u0e2b\u0e19\u0e14 + +ORA-17022=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e17\u0e35\u0e48\u0e14\u0e31\u0e0a\u0e19\u0e35 + +ORA-17023=\u0e04\u0e38\u0e13\u0e2a\u0e21\u0e1a\u0e31\u0e15\u0e34\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17024=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e2d\u0e48\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 + +ORA-17025=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e43\u0e19 defines.isNull () + +ORA-17026=\u0e40\u0e01\u0e34\u0e19\u0e08\u0e33\u0e19\u0e27\u0e19 + +ORA-17027=\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14\u0e2a\u0e15\u0e23\u0e35\u0e21\u0e41\u0e25\u0e49\u0e27 + +ORA-17028=\u0e40\u0e23\u0e34\u0e48\u0e21\u0e01\u0e32\u0e23\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e43\u0e2b\u0e21\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 \u0e08\u0e19\u0e01\u0e27\u0e48\u0e32\u0e08\u0e30\u0e2a\u0e34\u0e49\u0e19\u0e2a\u0e38\u0e14 ResultSet \u0e1b\u0e31\u0e08\u0e08\u0e38\u0e1a\u0e31\u0e19 + +ORA-17029=setReadOnly: \u0e43\u0e0a\u0e49\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e1a\u0e1a\u0e2d\u0e48\u0e32\u0e19\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17030=\u0e23\u0e30\u0e14\u0e31\u0e1a\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e17\u0e35\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e21\u0e35\u0e40\u0e1e\u0e35\u0e22\u0e07 READ_COMMITTED \u0e41\u0e25\u0e30 SERIALIZABLE + +ORA-17031=setAutoClose: \u0e43\u0e0a\u0e49\u0e44\u0e14\u0e49\u0e43\u0e19\u0e01\u0e23\u0e13\u0e35\u0e17\u0e35\u0e48\u0e42\u0e2b\u0e21\u0e14\u0e1b\u0e34\u0e14\u0e42\u0e14\u0e22\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e44\u0e27\u0e49\u0e40\u0e1b\u0e47\u0e19 \'\u0e40\u0e1b\u0e34\u0e14\' + +ORA-17032=\u0e01\u0e32\u0e23\u0e14\u0e36\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e41\u0e16\u0e27\u0e25\u0e48\u0e27\u0e07\u0e2b\u0e19\u0e49\u0e32\u0e08\u0e30\u0e40\u0e1b\u0e47\u0e19\u0e28\u0e39\u0e19\u0e22\u0e4c\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17033=\u0e1e\u0e1a\u0e2a\u0e15\u0e23\u0e34\u0e07 SQL92 \u0e17\u0e35\u0e48\u0e21\u0e35\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e17\u0e35\u0e48\u0e15\u0e33\u0e41\u0e2b\u0e19\u0e48\u0e07 + +ORA-17034=\u0e1e\u0e1a\u0e42\u0e17\u0e40\u0e04\u0e47\u0e19 SQL92 \u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e17\u0e35\u0e48\u0e15\u0e33\u0e41\u0e2b\u0e19\u0e48\u0e07 + +ORA-17035=\u0e43\u0e0a\u0e49\u0e0a\u0e38\u0e14\u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17036=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e43\u0e19 OracleNumber + +ORA-17037=\u0e41\u0e1b\u0e25\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07 UTF8 \u0e01\u0e31\u0e1a UCS2 \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17038=\u0e02\u0e19\u0e32\u0e14\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e2d\u0e07 Byte \u0e22\u0e32\u0e27\u0e44\u0e21\u0e48\u0e1e\u0e2d + +ORA-17039=\u0e02\u0e19\u0e32\u0e14\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e2d\u0e07 Char \u0e22\u0e32\u0e27\u0e44\u0e21\u0e48\u0e1e\u0e2d + +ORA-17040=\u0e15\u0e49\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e38\u0e42\u0e1b\u0e23\u0e42\u0e15\u0e04\u0e2d\u0e25\u0e22\u0e48\u0e2d\u0e22\u0e43\u0e19\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e1c\u0e48\u0e32\u0e19\u0e17\u0e32\u0e07 URL + +ORA-17041=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e1e\u0e32\u0e23\u0e32\u0e21\u0e34\u0e40\u0e15\u0e2d\u0e23\u0e4c IN \u0e2b\u0e23\u0e37\u0e2d OUT \u0e17\u0e35\u0e48\u0e14\u0e31\u0e0a\u0e19\u0e35: + +ORA-17042=\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07\u0e41\u0e1a\u0e17\u0e0a\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17043=\u0e02\u0e19\u0e32\u0e14\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e2a\u0e15\u0e23\u0e35\u0e21\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17044=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e08\u0e31\u0e14\u0e2a\u0e23\u0e23\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 + +ORA-17045=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e04\u0e48\u0e32\u0e15\u0e31\u0e27\u0e41\u0e1b\u0e23\u0e44\u0e1a\u0e19\u0e14\u0e4c\u0e19\u0e2d\u0e01\u0e40\u0e2b\u0e19\u0e37\u0e2d\u0e08\u0e32\u0e01\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07\u0e41\u0e1a\u0e17\u0e0a\u0e4c + +ORA-17046=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e14\u0e31\u0e0a\u0e19\u0e35\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e40\u0e02\u0e49\u0e32\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17047=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e43\u0e19\u0e01\u0e32\u0e23\u0e1e\u0e32\u0e23\u0e4c\u0e0b Descriptor \u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17 + +ORA-17048=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e44\u0e27\u0e49 + +ORA-17049=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c java \u0e41\u0e25\u0e30 sql \u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e19 + +ORA-17050=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e2d\u0e35\u0e25\u0e34\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e14\u0e31\u0e07\u0e01\u0e25\u0e48\u0e32\u0e27\u0e43\u0e19\u0e40\u0e27\u0e01\u0e40\u0e15\u0e2d\u0e23\u0e4c + +ORA-17051=API \u0e19\u0e35\u0e49\u0e08\u0e30\u0e43\u0e0a\u0e49\u0e01\u0e31\u0e1a\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e37\u0e48\u0e19\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e43\u0e0a\u0e48 UDT \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17052=ref \u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17053=\u0e02\u0e19\u0e32\u0e14\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17054=\u0e42\u0e25\u0e40\u0e04\u0e40\u0e15\u0e2d\u0e23\u0e4c\u0e02\u0e2d\u0e07 LOB \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17055=\u0e1e\u0e1a\u0e15\u0e31\u0e27\u0e2d\u0e31\u0e01\u0e29\u0e23\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19 + +ORA-17056=\u0e0a\u0e38\u0e14\u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17057=\u0e1b\u0e34\u0e14 LOB \u0e41\u0e25\u0e49\u0e27 + +ORA-17058=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19: \u0e2d\u0e31\u0e15\u0e23\u0e32\u0e2a\u0e48\u0e27\u0e19\u0e01\u0e32\u0e23\u0e41\u0e1b\u0e25\u0e07\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07 NLS \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17059=\u0e41\u0e1b\u0e25\u0e07\u0e40\u0e1b\u0e47\u0e19\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e20\u0e32\u0e22\u0e43\u0e19\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17060=\u0e2a\u0e23\u0e49\u0e32\u0e07 Descriptor \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17061=\u0e44\u0e21\u0e48\u0e21\u0e35 Descriptor + +ORA-17062=Ref cursor \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17063=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23 + +ORA-17064=\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 \u0e2b\u0e23\u0e37\u0e2d\u0e0a\u0e37\u0e48\u0e2d\u0e10\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17065=\u0e04\u0e25\u0e32\u0e2a\u0e01\u0e32\u0e23\u0e41\u0e1b\u0e25\u0e07\u0e04\u0e48\u0e32\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17066=\u0e15\u0e49\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e38\u0e01\u0e32\u0e23\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e40\u0e09\u0e1e\u0e32\u0e30\u0e02\u0e2d\u0e07\u0e0a\u0e31\u0e49\u0e19\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19 + +ORA-17067=Oracle URL \u0e17\u0e35\u0e48\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17068=\u0e1e\u0e1a\u0e2d\u0e32\u0e23\u0e4c\u0e01\u0e34\u0e27\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 + +ORA-17069=\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 XA \u0e42\u0e14\u0e22\u0e15\u0e23\u0e07 + +ORA-17070=\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e02\u0e19\u0e32\u0e14\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e19\u0e35\u0e49 + +ORA-17071=\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e02\u0e35\u0e14\u0e08\u0e33\u0e01\u0e31\u0e14\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07 VARRAY + +ORA-17072=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e43\u0e2b\u0e0d\u0e48\u0e01\u0e27\u0e48\u0e32\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c + +ORA-17073=\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25\u0e41\u0e1a\u0e1a\u0e25\u0e2d\u0e08\u0e34\u0e04\u0e31\u0e25\u0e19\u0e35\u0e49\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e41\u0e25\u0e49\u0e27 + +ORA-17074=\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e0a\u0e37\u0e48\u0e2d\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17075=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 'resultset \u0e41\u0e1a\u0e1a\u0e2a\u0e48\u0e07\u0e15\u0e48\u0e2d\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27' \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17076=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 'resultset \u0e41\u0e1a\u0e1a\u0e2d\u0e48\u0e32\u0e19\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27' \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17077=\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e04\u0e48\u0e32 REF \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17078=\u0e40\u0e23\u0e34\u0e48\u0e21\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 \u0e40\u0e19\u0e37\u0e48\u0e2d\u0e07\u0e08\u0e32\u0e01\u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e1b\u0e34\u0e14\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e25\u0e49\u0e27 + +ORA-17079=\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e23\u0e31\u0e1a\u0e23\u0e2d\u0e07\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e1a\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e17\u0e35\u0e48\u0e21\u0e35\u0e2d\u0e22\u0e39\u0e48 + +ORA-17080=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e43\u0e19\u0e41\u0e1a\u0e17\u0e0a\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17081=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e02\u0e13\u0e30\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e41\u0e1a\u0e17\u0e0a\u0e4c + +ORA-17082=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e41\u0e16\u0e27\u0e1b\u0e31\u0e08\u0e08\u0e38\u0e1a\u0e31\u0e19 + +ORA-17083=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e43\u0e19\u0e41\u0e16\u0e27\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01 + +ORA-17084=\u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49\u0e41\u0e16\u0e27\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01 + +ORA-17085=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e02\u0e31\u0e14\u0e41\u0e22\u0e49\u0e07\u0e40\u0e01\u0e35\u0e48\u0e22\u0e27\u0e01\u0e31\u0e1a\u0e04\u0e48\u0e32 + +ORA-17086=\u0e04\u0e48\u0e32\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e43\u0e19\u0e41\u0e16\u0e27\u0e17\u0e35\u0e48\u0e41\u0e17\u0e23\u0e01 + +ORA-17087=\u0e44\u0e21\u0e48\u0e43\u0e0a\u0e49\u0e04\u0e33\u0e41\u0e19\u0e30\u0e19\u0e33\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e40\u0e1e\u0e34\u0e48\u0e21\u0e1b\u0e23\u0e30\u0e2a\u0e34\u0e17\u0e18\u0e34\u0e20\u0e32\u0e1e: setFetchDirection() + +ORA-17088=\u0e44\u0e21\u0e48\u0e2a\u0e19\u0e31\u0e1a\u0e2a\u0e19\u0e38\u0e19\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e41\u0e25\u0e30\u0e23\u0e30\u0e14\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e1e\u0e23\u0e49\u0e2d\u0e21\u0e01\u0e31\u0e19\u0e02\u0e2d\u0e07 resultset \u0e17\u0e35\u0e48\u0e2a\u0e48\u0e07\u0e04\u0e33\u0e02\u0e2d +ORA-17089=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19 + +ORA-17090=\u0e14\u0e33\u0e40\u0e19\u0e34\u0e19\u0e01\u0e32\u0e23\u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17091=\u0e2a\u0e23\u0e49\u0e32\u0e07 resultset \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e41\u0e25\u0e30/\u0e2b\u0e23\u0e37\u0e2d\u0e17\u0e35\u0e48\u0e23\u0e30\u0e14\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e1e\u0e23\u0e49\u0e2d\u0e21\u0e01\u0e31\u0e19\u0e17\u0e35\u0e48\u0e2a\u0e48\u0e07\u0e04\u0e33\u0e02\u0e2d\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17092=\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e2b\u0e23\u0e37\u0e2d\u0e23\u0e31\u0e19\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 JDBC \u0e2b\u0e25\u0e31\u0e07\u0e08\u0e32\u0e01\u0e1b\u0e23\u0e30\u0e21\u0e27\u0e25\u0e1c\u0e25\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49\u0e41\u0e25\u0e49\u0e27\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17093=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 OCI \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 OCI_SUCCESS_WITH_INFO + +ORA-17094=\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c\u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e19 + +ORA-17095=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e02\u0e19\u0e32\u0e14\u0e41\u0e04\u0e0a\u0e02\u0e2d\u0e07\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 + +ORA-17096=\u0e43\u0e0a\u0e49\u0e41\u0e04\u0e0a\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e01\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e1a\u0e1a\u0e25\u0e2d\u0e08\u0e34\u0e04\u0e31\u0e25\u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17097=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2d\u0e35\u0e25\u0e34\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e15\u0e32\u0e23\u0e32\u0e07\u0e14\u0e31\u0e0a\u0e19\u0e35 PL/SQL \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17098=\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 lob \u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e21\u0e35\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17099=\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e02\u0e2d\u0e07\u0e15\u0e32\u0e23\u0e32\u0e07\u0e14\u0e31\u0e0a\u0e19\u0e35 PL/SQL \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17100=\u0e08\u0e32\u0e27\u0e32\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e10\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17101=\u0e04\u0e38\u0e13\u0e2a\u0e21\u0e1a\u0e31\u0e15\u0e34\u0e02\u0e2d\u0e07\u0e2d\u0e2d\u0e1a\u0e40\u0e08\u0e01\u0e15\u0e4c\u0e1e\u0e39\u0e25\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d OCI \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17102=Bfile \u0e43\u0e0a\u0e49\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e2d\u0e48\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e14\u0e35\u0e22\u0e27 + +ORA-17103=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e17\u0e35\u0e48\u0e08\u0e30\u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e1c\u0e48\u0e32\u0e19 getConnection \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 \u0e43\u0e2b\u0e49\u0e43\u0e0a\u0e49 getJavaSqlConnection \u0e41\u0e17\u0e19 + +ORA-17104=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 SQL \u0e17\u0e35\u0e48\u0e08\u0e30\u0e23\u0e31\u0e19\u0e08\u0e30\u0e15\u0e49\u0e2d\u0e07\u0e44\u0e21\u0e48\u0e40\u0e27\u0e49\u0e19\u0e27\u0e48\u0e32\u0e07\u0e44\u0e27\u0e49\u0e2b\u0e23\u0e37\u0e2d\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17105=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e42\u0e0b\u0e19\u0e40\u0e27\u0e25\u0e32\u0e02\u0e2d\u0e07\u0e40\u0e0b\u0e2a\u0e0a\u0e31\u0e19\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d + +ORA-17106=\u0e23\u0e30\u0e1a\u0e38\u0e04\u0e2d\u0e19\u0e1f\u0e34\u0e40\u0e01\u0e2d\u0e40\u0e23\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07\u0e1e\u0e39\u0e25\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e44\u0e14\u0e23\u0e40\u0e27\u0e2d\u0e23\u0e4c JDBC-OCI \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17107=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e1e\u0e23\u0e47\u0e2d\u0e01\u0e0b\u0e35\u0e48\u0e17\u0e35\u0e48\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17108=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e23\u0e30\u0e1a\u0e38\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e43\u0e19 defineColumnType + +ORA-17109=\u0e44\u0e21\u0e48\u0e1e\u0e1a\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e23\u0e2b\u0e31\u0e2a\u0e02\u0e2d\u0e07\u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30\u0e08\u0e32\u0e27\u0e32\u0e41\u0e1a\u0e1a\u0e21\u0e32\u0e15\u0e23\u0e10\u0e32\u0e19 + +ORA-17110=\u0e01\u0e32\u0e23\u0e23\u0e31\u0e19\u0e40\u0e2a\u0e23\u0e47\u0e08\u0e2a\u0e21\u0e1a\u0e39\u0e23\u0e13\u0e4c\u0e42\u0e14\u0e22\u0e21\u0e35\u0e04\u0e33\u0e40\u0e15\u0e37\u0e2d\u0e19 + +ORA-17111=\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e17\u0e21\u0e4c\u0e40\u0e2d\u0e32\u0e15\u0e4c TTL \u0e02\u0e2d\u0e07\u0e41\u0e04\u0e0a\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17112=\u0e23\u0e30\u0e1a\u0e38\u0e23\u0e30\u0e22\u0e30\u0e40\u0e27\u0e25\u0e32\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e40\u0e18\u0e23\u0e14\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17113=\u0e04\u0e48\u0e32\u0e23\u0e30\u0e22\u0e30\u0e40\u0e27\u0e25\u0e32\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e40\u0e18\u0e23\u0e14\u0e21\u0e32\u0e01\u0e01\u0e27\u0e48\u0e32\u0e04\u0e48\u0e32\u0e44\u0e17\u0e21\u0e4c\u0e40\u0e2d\u0e32\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e41\u0e04\u0e0a + +ORA-17114=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e1a\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21 + +ORA-17115=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e23\u0e25\u0e41\u0e1a\u0e47\u0e04\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e1a\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21 + +ORA-17116=\u0e40\u0e1b\u0e34\u0e14\u0e01\u0e32\u0e23\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e2d\u0e22\u0e39\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17117=\u0e01\u0e33\u0e2b\u0e19\u0e14 Savepoint \u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e2d\u0e22\u0e39\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17118=\u0e40\u0e23\u0e35\u0e22\u0e01 ID \u0e02\u0e2d\u0e07 Savepoint \u0e17\u0e35\u0e48\u0e15\u0e31\u0e49\u0e07\u0e0a\u0e37\u0e48\u0e2d\u0e44\u0e27\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17119=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e23\u0e35\u0e22\u0e01\u0e0a\u0e37\u0e48\u0e2d\u0e02\u0e2d\u0e07 Savepoint \u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e15\u0e31\u0e49\u0e07\u0e0a\u0e37\u0e48\u0e2d\u0e44\u0e27\u0e49 + +ORA-17120=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e01\u0e33\u0e2b\u0e19\u0e14 Savepoint \u0e02\u0e13\u0e30\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e01\u0e32\u0e23\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34 + +ORA-17121=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e23\u0e25\u0e41\u0e1a\u0e47\u0e04\u0e44\u0e1b\u0e22\u0e31\u0e07 Savepoint \u0e02\u0e13\u0e30\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e01\u0e32\u0e23\u0e04\u0e2d\u0e21\u0e21\u0e34\u0e15\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34 + +ORA-17122=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e23\u0e25\u0e41\u0e1a\u0e47\u0e04\u0e01\u0e25\u0e31\u0e1a\u0e44\u0e1b\u0e17\u0e35\u0e48 Savepoint \u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e2d\u0e07\u0e23\u0e30\u0e1a\u0e1a\u0e43\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e48\u0e27\u0e21 + +ORA-17123=\u0e23\u0e30\u0e1a\u0e38\u0e02\u0e19\u0e32\u0e14\u0e41\u0e04\u0e0a\u0e02\u0e2d\u0e07\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17124=\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e17\u0e21\u0e4c\u0e40\u0e2d\u0e32\u0e15\u0e4c\u0e02\u0e2d\u0e07\u0e0a\u0e48\u0e27\u0e07\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e21\u0e35\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e43\u0e19\u0e41\u0e04\u0e0a\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17200=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e41\u0e1b\u0e25\u0e07\u0e2a\u0e15\u0e23\u0e34\u0e07\u0e40\u0e1b\u0e34\u0e14\u0e02\u0e2d\u0e07 XA \u0e08\u0e32\u0e01 Java \u0e40\u0e1b\u0e47\u0e19 C \u0e2d\u0e22\u0e48\u0e32\u0e07\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17201=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e41\u0e1b\u0e25\u0e07\u0e2a\u0e15\u0e23\u0e34\u0e07\u0e1b\u0e34\u0e14\u0e02\u0e2d\u0e07 XA \u0e08\u0e32\u0e01 Java \u0e40\u0e1b\u0e47\u0e19 C \u0e2d\u0e22\u0e48\u0e32\u0e07\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17202=\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e41\u0e1b\u0e25\u0e07\u0e0a\u0e37\u0e48\u0e2d RM \u0e08\u0e32\u0e01 Java \u0e40\u0e1b\u0e47\u0e19 C \u0e44\u0e14\u0e49\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17203=\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e1e\u0e2d\u0e22\u0e40\u0e15\u0e2d\u0e23\u0e4c\u0e40\u0e1b\u0e47\u0e19 jlong \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17204=\u0e2d\u0e32\u0e40\u0e23\u0e22\u0e4c\u0e04\u0e48\u0e32\u0e2d\u0e34\u0e19\u0e1e\u0e38\u0e15\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e40\u0e25\u0e47\u0e01\u0e40\u0e01\u0e34\u0e19\u0e44\u0e1b\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e40\u0e01\u0e47\u0e1a\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 OCI + +ORA-17205=\u0e23\u0e31\u0e1a\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 OCISvcCtx \u0e08\u0e32\u0e01 C-XA \u0e42\u0e14\u0e22\u0e43\u0e0a\u0e49 xaoSvcCtx \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17206=\u0e23\u0e31\u0e1a\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 OCIEnv \u0e08\u0e32\u0e01 C-XA \u0e42\u0e14\u0e22\u0e43\u0e0a\u0e49 xaoEnv \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17207=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e04\u0e38\u0e13\u0e2a\u0e21\u0e1a\u0e31\u0e15\u0e34 tnsEntry \u0e44\u0e27\u0e49\u0e43\u0e19 DataSource + +ORA-17213=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_RMERR \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_open + +ORA-17215=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_INVAL \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_open + +ORA-17216=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_PROTO \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_open + +ORA-17233=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_RMERR \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_close + +ORA-17235=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_INVAL \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_close + +ORA-17236=C-XA \u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19 XAER_PROTO \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07 xa_close + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u0e01\u0e32\u0e23\u0e25\u0e30\u0e40\u0e21\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e42\u0e1b\u0e23\u0e42\u0e15\u0e04\u0e2d\u0e25 + +ORA-17402=\u0e15\u0e49\u0e2d\u0e07\u0e01\u0e32\u0e23\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 RPA \u0e40\u0e1e\u0e35\u0e22\u0e07\u0e2b\u0e19\u0e36\u0e48\u0e07\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 + +ORA-17403=\u0e15\u0e49\u0e2d\u0e07\u0e01\u0e32\u0e23\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 RXH \u0e40\u0e1e\u0e35\u0e22\u0e07\u0e2b\u0e19\u0e36\u0e48\u0e07\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21 + +ORA-17404=\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a RXD \u0e21\u0e32\u0e01\u0e01\u0e27\u0e48\u0e32\u0e17\u0e35\u0e48\u0e04\u0e32\u0e14\u0e44\u0e27\u0e49 + +ORA-17405=\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e02\u0e2d\u0e07 UAC \u0e44\u0e21\u0e48\u0e40\u0e17\u0e48\u0e32\u0e01\u0e31\u0e1a\u0e28\u0e39\u0e19\u0e22\u0e4c + +ORA-17406=\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e1a\u0e31\u0e1f\u0e40\u0e1f\u0e2d\u0e23\u0e4c + +ORA-17407=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 (setRep) \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17408=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 (getRep) \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17409=\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e1a\u0e31\u0e1f\u0e40\u0e1f\u0e2d\u0e23\u0e4c\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17410=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e17\u0e35\u0e48\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a\u0e08\u0e32\u0e01\u0e0b\u0e47\u0e2d\u0e01\u0e40\u0e01\u0e47\u0e15 + +ORA-17411=\u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e41\u0e17\u0e19\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e44\u0e21\u0e48\u0e15\u0e23\u0e07\u0e01\u0e31\u0e19 + +ORA-17412=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e40\u0e01\u0e34\u0e19\u0e01\u0e27\u0e48\u0e32\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e2a\u0e39\u0e07\u0e2a\u0e38\u0e14 + +ORA-17413=\u0e40\u0e01\u0e34\u0e19\u0e02\u0e19\u0e32\u0e14\u0e02\u0e2d\u0e07\u0e04\u0e35\u0e22\u0e4c + +ORA-17414=\u0e02\u0e19\u0e32\u0e14\u0e1a\u0e31\u0e1f\u0e40\u0e1f\u0e2d\u0e23\u0e4c\u0e17\u0e35\u0e48\u0e08\u0e30\u0e40\u0e01\u0e47\u0e1a\u0e0a\u0e37\u0e48\u0e2d\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e40\u0e1e\u0e35\u0e22\u0e07\u0e1e\u0e2d + +ORA-17415=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e19\u0e35\u0e49\u0e22\u0e31\u0e07\u0e44\u0e21\u0e48\u0e21\u0e35\u0e41\u0e2e\u0e19\u0e40\u0e14\u0e34\u0e25 + +ORA-17416=FATAL + +ORA-17417=\u0e40\u0e01\u0e34\u0e14\u0e1b\u0e31\u0e0d\u0e2b\u0e32\u0e40\u0e01\u0e35\u0e48\u0e22\u0e27\u0e01\u0e31\u0e1a NLS \u0e16\u0e2d\u0e14\u0e23\u0e2b\u0e31\u0e2a\u0e0a\u0e37\u0e48\u0e2d\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17418=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e08\u0e32\u0e01\u0e04\u0e27\u0e32\u0e21\u0e22\u0e32\u0e27\u0e1f\u0e34\u0e25\u0e14\u0e4c\u0e02\u0e2d\u0e07\u0e42\u0e04\u0e23\u0e07\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e20\u0e32\u0e22\u0e43\u0e19 + +ORA-17419=\u0e08\u0e33\u0e19\u0e27\u0e19\u0e04\u0e2d\u0e25\u0e31\u0e21\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e41\u0e2a\u0e14\u0e07\u0e1c\u0e25\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17420=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07 Oracle + +ORA-17421=\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2b\u0e23\u0e37\u0e2d\u0e01\u0e32\u0e23\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d + +ORA-17422=\u0e04\u0e25\u0e32\u0e2a\u0e43\u0e19\u0e41\u0e1f\u0e04\u0e15\u0e2d\u0e23\u0e35\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17423=\u0e01\u0e32\u0e23\u0e43\u0e0a\u0e49\u0e1a\u0e25\u0e47\u0e2d\u0e04 PLSQL \u0e42\u0e14\u0e22\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14 IOV + +ORA-17424=\u0e01\u0e33\u0e25\u0e31\u0e07\u0e40\u0e23\u0e34\u0e48\u0e21\u0e1b\u0e0f\u0e34\u0e1a\u0e31\u0e15\u0e34\u0e01\u0e32\u0e23\u0e21\u0e32\u0e23\u0e4c\u0e41\u0e0a\u0e25\u0e2d\u0e37\u0e48\u0e19 + +ORA-17425=\u0e43\u0e2b\u0e49\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e40\u0e1b\u0e47\u0e19\u0e2a\u0e15\u0e23\u0e35\u0e21\u0e43\u0e19\u0e1a\u0e25\u0e47\u0e2d\u0e04 PLSQL + +ORA-17426=\u0e04\u0e48\u0e32\u0e02\u0e2d\u0e07\u0e15\u0e31\u0e27\u0e41\u0e1b\u0e23\u0e44\u0e1a\u0e19\u0e14\u0e4c\u0e17\u0e31\u0e49\u0e07 IN \u0e41\u0e25\u0e30 OUT \u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17427=\u0e43\u0e0a\u0e49 OAC \u0e17\u0e35\u0e48\u0e22\u0e31\u0e07\u0e44\u0e21\u0e48\u0e40\u0e23\u0e34\u0e48\u0e21\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19 + +ORA-17428=\u0e15\u0e49\u0e2d\u0e07\u0e25\u0e47\u0e2d\u0e01\u0e2d\u0e2d\u0e19\u0e2b\u0e25\u0e31\u0e07\u0e08\u0e32\u0e01\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e41\u0e25\u0e49\u0e27 + +ORA-17429=\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e40\u0e02\u0e49\u0e32\u0e01\u0e31\u0e1a\u0e40\u0e0b\u0e34\u0e23\u0e4c\u0e1f\u0e40\u0e27\u0e2d\u0e23\u0e4c + +ORA-17430=\u0e15\u0e49\u0e2d\u0e07\u0e25\u0e47\u0e2d\u0e01\u0e2d\u0e2d\u0e19\u0e40\u0e02\u0e49\u0e32\u0e01\u0e31\u0e1a\u0e40\u0e0b\u0e34\u0e23\u0e4c\u0e1f\u0e40\u0e27\u0e2d\u0e23\u0e4c + +ORA-17431=\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 SQL \u0e17\u0e35\u0e48\u0e08\u0e30\u0e1e\u0e32\u0e23\u0e4c\u0e0b\u0e21\u0e35\u0e04\u0e48\u0e32\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17432=\u0e1e\u0e1a\u0e15\u0e31\u0e27\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19 all7 + +ORA-17433=\u0e1e\u0e1a\u0e2d\u0e32\u0e23\u0e4c\u0e01\u0e34\u0e27\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e19\u0e01\u0e32\u0e23\u0e40\u0e23\u0e35\u0e22\u0e01\u0e43\u0e0a\u0e49 + +ORA-17434=\u0e44\u0e21\u0e48\u0e21\u0e35\u0e43\u0e19\u0e42\u0e2b\u0e21\u0e14\u0e2a\u0e15\u0e23\u0e35\u0e21 + +ORA-17435=\u0e08\u0e33\u0e19\u0e27\u0e19 in_out_binds \u0e43\u0e19 IOV \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17436=\u0e08\u0e33\u0e19\u0e27\u0e19 outbinds \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17437=\u0e40\u0e01\u0e34\u0e14\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e01\u0e31\u0e1a\u0e2d\u0e32\u0e23\u0e4c\u0e01\u0e34\u0e27\u0e40\u0e21\u0e19\u0e15\u0e4c IN/OUT \u0e43\u0e19\u0e1a\u0e25\u0e47\u0e2d\u0e04 PLSQL + +ORA-17438=\u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e20\u0e32\u0e22\u0e43\u0e19 - \u0e04\u0e48\u0e32\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e04\u0e32\u0e14\u0e2b\u0e21\u0e32\u0e22 + +ORA-17439=\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17 SQL \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17440=DBItem/DBType \u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25 + +ORA-17441=\u0e43\u0e0a\u0e49\u0e01\u0e31\u0e1a Oracle \u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e19\u0e35\u0e49\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 \u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e15\u0e48\u0e33\u0e2a\u0e38\u0e14\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e44\u0e14\u0e49\u0e04\u0e37\u0e2d 7.2.3 + +ORA-17442=\u0e04\u0e48\u0e32 Refcursor \u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 + +ORA-17443=\u0e23\u0e30\u0e1a\u0e38\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e2b\u0e23\u0e37\u0e2d\u0e23\u0e2b\u0e31\u0e2a\u0e1c\u0e48\u0e32\u0e19\u0e40\u0e1b\u0e47\u0e19\u0e19\u0e31\u0e25\u0e01\u0e31\u0e1a\u0e44\u0e14\u0e23\u0e40\u0e27\u0e2d\u0e23\u0e4c THIN \u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +ORA-17444=\u0e43\u0e0a\u0e49\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e02\u0e2d\u0e07\u0e42\u0e1b\u0e23\u0e42\u0e15\u0e04\u0e2d\u0e25 TTC \u0e17\u0e35\u0e48\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a\u0e08\u0e32\u0e01\u0e40\u0e0b\u0e34\u0e23\u0e4c\u0e1f\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49 + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_tr.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_tr.properties new file mode 100644 index 0000000..9e2c745 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_tr.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=Dahili Hata + +ORA-17002=G/\u00c7 istisnas\u0131 + +ORA-17003=Ge\u00e7ersiz s\u00fctun dizini + +ORA-17004=Ge\u00e7ersiz s\u00fctun t\u00fcr\u00fc + +ORA-17005=Desteklenmeyen s\u00fctun t\u00fcr\u00fc + +ORA-17006=Ge\u00e7ersiz s\u00fctun ad\u0131 + +ORA-17007=Ge\u00e7ersiz dinamik s\u00fctun + +ORA-17008=Kapal\u0131 Ba\u011flant\u0131 + +ORA-17009=Kapal\u0131 Deyim + +ORA-17010=Kapal\u0131 Sonu\u00e7 K\u00fcmesi + +ORA-17011=Yetersiz Sonu\u00e7 K\u00fcmesi + +ORA-17012=Parametre T\u00fcr\u00fc \u00c7ak\u0131\u015fmas\u0131 + +ORA-17014=ResultSet.next \u00e7a\u011fr\u0131lmad\u0131 + +ORA-17015=Deyim iptal edildi + +ORA-17016=Deyim zaman a\u015f\u0131m\u0131na u\u011frad\u0131 + +ORA-17017=\u0130mle\u00e7 zaten ba\u015flat\u0131lm\u0131\u015f + +ORA-17018=Ge\u00e7ersiz imle\u00e7 + +ORA-17019=Yaln\u0131zca bir sorgu tan\u0131mlanabilir + +ORA-17020=Ge\u00e7ersiz sat\u0131r getirme + +ORA-17021=Eksik tan\u0131mlama + +ORA-17022=Dizinde eksik tan\u0131mlama + +ORA-17023=Desteklenmeyen \u00f6zellik + +ORA-17024=Veri okunmad\u0131 + +ORA-17025=Defines.isNull () fonksiyonunda hata + +ORA-17026=Say\u0131sal Ta\u015fma + +ORA-17027=Veri ak\u0131\u015f\u0131 zaten kapat\u0131lm\u0131\u015f + +ORA-17028=Ge\u00e7erli Sonu\u00e7 K\u00fcmesi kapat\u0131l\u0131ncaya kadar yeni tan\u0131mlamalar yap\u0131lamaz + +ORA-17029=setReadOnly: Salt okunur ba\u011flant\u0131lar desteklenmiyor + +ORA-17030=Ge\u00e7erli hareket d\u00fczeyleri yaln\u0131zca READ_COMMITTED ve SERIALIZABLE''d\u0131r + +ORA-17031=setAutoClose: Yaln\u0131zca otomatik kapatma modunun a\u00e7\u0131k olmas\u0131n\u0131 destekler + +ORA-17032=sat\u0131r getirme, s\u0131f\u0131r olarak ayarlanamaz + +ORA-17033=Hatal\u0131 olu\u015fturulan SQL92 dizesinin konumu: + +ORA-17034=Desteklenmeyen SQL92 belirtecinin konumu: + +ORA-17035=Karakter K\u00fcmesi Desteklenmiyor !! + +ORA-17036=OracleNumber istisnas\u0131 + +ORA-17037=UTF8 ile UCS2 aras\u0131nda d\u00f6n\u00fc\u015ft\u00fcrme ba\u015far\u0131s\u0131z + +ORA-17038=Byte dizisi yeterince uzun de\u011fil + +ORA-17039=Char dizisi yeterince uzun de\u011fil + +ORA-17040=Ba\u011flant\u0131 URL''sinde Alt Protokol belirlenmeli + +ORA-17041=IN veya OUT parametresinin eksik oldu\u011fu dizin: + +ORA-17042=Ge\u00e7ersiz Toplu \u0130\u015flem De\u011feri + +ORA-17043=Ge\u00e7ersiz maksimum veri ak\u0131\u015f\u0131 de\u011feri + +ORA-17044=Dahili hata: Veri dizisi ayr\u0131lmad\u0131 + +ORA-17045=Dahili hata: Toplu i\u015flem de\u011ferinin sonras\u0131ndaki ba\u011flama de\u011ferine eri\u015fim denemesi + +ORA-17046=Dahili hata: Veri eri\u015fimi i\u00e7in ge\u00e7ersiz dizin + +ORA-17047=T\u00fcr A\u00e7\u0131klay\u0131c\u0131s\u0131 ayr\u0131\u015ft\u0131rma hatas\u0131 + +ORA-17048=Tan\u0131ms\u0131z t\u00fcr + +ORA-17049=Tutars\u0131z java ve sql nesne t\u00fcrleri + +ORA-17050=vekt\u00f6rde b\u00f6yle \u00f6\u011fe yok + +ORA-17051=Bu API, UDT d\u0131\u015f\u0131ndaki t\u00fcrlerde kullan\u0131lamaz + +ORA-17052=Bu ba\u015fvuru ge\u00e7ersiz + +ORA-17053=Boyut ge\u00e7erli de\u011fil + +ORA-17054=\u0130\u015eK yerle\u015ftiricisi ge\u00e7erli de\u011fil + +ORA-17055=Ge\u00e7ersiz karakterlerle kar\u015f\u0131la\u015f\u0131ld\u0131 + +ORA-17056=Desteklenmeyen karakter k\u00fcmesi + +ORA-17057=Kapal\u0131 \u0130\u015eK + +ORA-17058=Dahili hata: Ge\u00e7ersiz NLS D\u00f6n\u00fc\u015ft\u00fcrme oran\u0131 + +ORA-17059=Dahili g\u00f6sterime d\u00f6n\u00fc\u015ft\u00fcr\u00fclemedi + +ORA-17060=A\u00e7\u0131klay\u0131c\u0131y\u0131 olu\u015fturulamad\u0131 + +ORA-17061=Eksik a\u00e7\u0131klay\u0131c\u0131 + +ORA-17062=Ba\u015fvuru imleci ge\u00e7ersiz + +ORA-17063=Hareket i\u00e7inde de\u011fil + +ORA-17064=Ge\u00e7ersiz s\u00f6zdizimi veya veritaban\u0131 ad\u0131 bo\u015f + +ORA-17065=D\u00f6n\u00fc\u015ft\u00fcrme s\u0131n\u0131f\u0131 bo\u015f + +ORA-17066=Eri\u015fim katman\u0131na \u00f6zel uygulama gerekiyor + +ORA-17067=Ge\u00e7ersiz Oracle URL''si belirlendi + +ORA-17068=\u00c7a\u011fr\u0131da ge\u00e7ersiz ba\u011f\u0131ms\u0131z de\u011fi\u015fkenler var + +ORA-17069=Belirtilik XA \u00e7a\u011fr\u0131s\u0131 kullan + +ORA-17070=Veri boyutu, bu t\u00fcr\u00fcn maksimum de\u011ferinden daha b\u00fcy\u00fck + +ORA-17071=Maksimum VARRAY s\u0131n\u0131r\u0131 a\u015f\u0131ld\u0131 + +ORA-17072=Girilen de\u011fer s\u00fctun i\u00e7in \u00e7ok b\u00fcy\u00fck + +ORA-17073=Mant\u0131ksal kontrol noktas\u0131 art\u0131k ge\u00e7erli de\u011fil + +ORA-17074=ge\u00e7ersiz ad deseni + +ORA-17075=Salt iletilen sonu\u00e7 k\u00fcmesi i\u00e7in ge\u00e7ersiz i\u015flem + +ORA-17076=Salt okunur sonu\u00e7 k\u00fcmesi i\u00e7in ge\u00e7ersiz i\u015flem + +ORA-17077=REF de\u011feri ayarlanamad\u0131 + +ORA-17078=Ba\u011flant\u0131lar zaten a\u00e7\u0131k oldu\u011fundan i\u015flem yap\u0131lam\u0131yor + +ORA-17079=Kullan\u0131c\u0131n\u0131n kimlik bilgileri mevcut olanlarla e\u015fle\u015fmiyor + +ORA-17080=ge\u00e7ersiz toplu i\u015flem komutu + +ORA-17081=toplu i\u015flem s\u0131ras\u0131nda hata olu\u015ftu + +ORA-17082=Ge\u00e7erli sat\u0131r yok + +ORA-17083=Araya eklenen sat\u0131rda de\u011fil + +ORA-17084=Araya eklenen sat\u0131rda \u00e7a\u011fr\u0131ld\u0131 + +ORA-17085=De\u011fer \u00e7ak\u0131\u015fmas\u0131 olu\u015ftu + +ORA-17086=Ekleme sat\u0131r\u0131nda tan\u0131mlanmam\u0131\u015f s\u00fctun de\u011feri + +ORA-17087=Yoksay\u0131lan sistem performans\u0131 ipucu: setFetchDirection() + +ORA-17088=\u0130stenen sonu\u00e7 k\u00fcmesi t\u00fcr\u00fc ve verilere e\u015fzamanl\u0131 eri\u015fim d\u00fczeyi i\u00e7in desteklenmeyen s\u00f6zdizimi +ORA-17089=dahili hata + +ORA-17090=i\u015fleme izin verilmedi + +ORA-17091=\u0130stenen t\u00fcrde ve/veya verilere e\u015fzamanl\u0131 eri\u015fim d\u00fczeyinde sonu\u00e7 k\u00fcmesi yarat\u0131lam\u0131yor + +ORA-17092=\u00c7a\u011fr\u0131 i\u015fleminin sonunda JDBC deyimleri yarat\u0131lamaz veya y\u00fcr\u00fct\u00fclemez + +ORA-17093=OCI i\u015flemi OCI_SUCCESS_WITH_INFO d\u00f6nd\u00fcrd\u00fc + +ORA-17094=Nesne t\u00fcr\u00fc s\u00fcr\u00fcm uyu\u015fmazl\u0131\u011f\u0131 + +ORA-17095=Deyim \u00f6nbellek boyutu ayarlanmam\u0131\u015f + +ORA-17096=Bu mant\u0131ksal ba\u011flant\u0131 i\u00e7in Deyimi \u00d6nbelle\u011fe Alma etkinle\u015ftirilemez. + +ORA-17097=Ge\u00e7ersiz PL/SQL Dizin Tablosu \u00f6\u011fe t\u00fcr\u00fc + +ORA-17098=Ge\u00e7ersiz bo\u015f i\u015f kolu i\u015flemi + +ORA-17099=Ge\u00e7ersiz PL/SQL Dizin Tablosu dizi uzunlu\u011fu + +ORA-17100=Ge\u00e7ersiz veritaban\u0131 Java Nesnesi + +ORA-17101=OCI Ba\u011flant\u0131 Havuzu Nesnesi'nde ge\u00e7ersiz nitelikler + +ORA-17102=Bfile salt okunur + +ORA-17103=getConnection \u00fczerinden d\u00f6nmek i\u00e7in ba\u011flant\u0131 t\u00fcr\u00fc ge\u00e7ersiz. Yerine GetJavaSqlConnection'\u0131 kullan\u0131n + +ORA-17104=Y\u00fcr\u00fct\u00fclecek SQL deyimi bo\u015f veya NULL olamaz + +ORA-17105=ba\u011flant\u0131 oturumu saat dilimi ayarlanmad\u0131 + +ORA-17106=ge\u00e7ersiz JDBC-OCI s\u00fcr\u00fcc\u00fcs\u00fc ba\u011flant\u0131 havuzu konfig\u00fcrasyonu belirlendi + +ORA-17107=ge\u00e7ersiz proxy t\u00fcr\u00fc belirlendi + +ORA-17108=defineColumnType y\u00f6nteminde maksimum uzunluk belirlenmemi\u015f + +ORA-17109=standart Java karakter kodlamas\u0131 bulunamad\u0131 + +ORA-17110=y\u00fcr\u00fctme uyar\u0131 ile tamamland\u0131 + +ORA-17111=Ge\u00e7ersiz ba\u011flant\u0131 \u00f6nbelle\u011fi TTL zaman a\u015f\u0131m\u0131 belirlendi + +ORA-17112=Ge\u00e7ersiz thread aral\u0131\u011f\u0131 belirlendi + +ORA-17113=Thread aral\u0131k de\u011feri, \u00f6nbellek zaman a\u015f\u0131m\u0131 de\u011ferinden b\u00fcy\u00fck + +ORA-17114=yerel i\u015flemi kaydetme, genel i\u015flemde kullan\u0131lamad\u0131 + +ORA-17115=yerel i\u015flem geri alma, genel i\u015flemde kullan\u0131lamad\u0131 + +ORA-17116=etkin genel hareket i\u00e7inde otomatik kaydetme a\u00e7\u0131lamad\u0131 + +ORA-17117=etkin genel hareket i\u00e7inde kay\u0131t noktas\u0131 ayarlanamad\u0131 + +ORA-17118=adland\u0131r\u0131lan bir Kaydetme Noktas\u0131n\u0131n No.'su al\u0131namad\u0131 + +ORA-17119=adland\u0131r\u0131lmayan bir Kaydetme Noktas\u0131n\u0131n ad\u0131 al\u0131namad\u0131 + +ORA-17120=otomatik kaydetme a\u00e7\u0131kken bir Kaydetme Noktas\u0131 ayarlanamad\u0131 + +ORA-17121=otomatik kaydetme a\u00e7\u0131kken bir Kaydetme Noktas\u0131na geri d\u00f6n\u00fclemedi + +ORA-17122=genel bir i\u015flemde yerel bir i\u015flem Kaydetme Noktas\u0131na geri d\u00f6n\u00fclemedi + +ORA-17123=Ge\u00e7ersiz deyim \u00f6nbellek boyutu belirlendi + +ORA-17124=Ge\u00e7ersiz ba\u011flant\u0131 \u00f6nbelle\u011fi Edilgenlik zaman a\u015f\u0131m\u0131 belirlendi + +ORA-17200=XA a\u00e7ma dizesi Java'dan C'ye d\u00fczg\u00fcn bi\u00e7imde d\u00f6n\u00fc\u015ft\u00fcr\u00fclemiyor + +ORA-17201=XA kapatma dizesi Java'dan C'ye d\u00fczg\u00fcn bi\u00e7imde d\u00f6n\u00fc\u015ft\u00fcr\u00fclemiyor + +ORA-17202=RM ad\u0131 Java'dan C'ye d\u00fczg\u00fcn bi\u00e7imde d\u00f6n\u00fc\u015ft\u00fcr\u00fclemiyor + +ORA-17203=\u0130\u015faret\u00e7i t\u00fcr\u00fc jlong t\u00fcr\u00fcne d\u00f6n\u00fc\u015ft\u00fcr\u00fclemedi + +ORA-17204=Girdi dizisi, OCI tutama\u00e7lar\u0131n\u0131 tutamayacak kadar k\u0131sa + +ORA-17205=OCISvcCtx tutamac\u0131 xaoSvcCtx kullan\u0131larak C-XA'dan al\u0131namad\u0131 + +ORA-17206=OCIEnv tutamac\u0131 xaoEnv kullan\u0131larak C-XA'dan al\u0131namad\u0131 + +ORA-17207=TnsEntry niteli\u011fi, Veri Kayna\u011f\u0131 i\u00e7inde ayarlanmad\u0131 + +ORA-17213=xa_open s\u0131ras\u0131nda C-XA, XAER_RMERR d\u00f6nd\u00fcrd\u00fc + +ORA-17215=xa_open s\u0131ras\u0131nda C-XA, XAER_INVAL d\u00f6nd\u00fcrd\u00fc + +ORA-17216=xa_open s\u0131ras\u0131nda C-XA, XAER_PROTO d\u00f6nd\u00fcrd\u00fc + +ORA-17233=xa_close s\u0131ras\u0131nda C-XA, XAER_RMERR d\u00f6nd\u00fcrd\u00fc + +ORA-17235=xa_close s\u0131ras\u0131nda C-XA, XAER_INVAL d\u00f6nd\u00fcrd\u00fc + +ORA-17236=xa_close s\u0131ras\u0131nda C-XA, XAER_PROTO d\u00f6nd\u00fcrd\u00fc + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=Protokol ihlali + +ORA-17402=Tek bir RPA mesaj\u0131 bekleniyor + +ORA-17403=Yaln\u0131zca bir RXH mesaj\u0131 bekleniyor + +ORA-17404=Beklenenden daha \u00e7ok say\u0131da RXD al\u0131nd\u0131 + +ORA-17405=UAC uzunlu\u011fu s\u0131f\u0131r de\u011fil + +ORA-17406=Maksimum arabellek uzunlu\u011fu a\u015f\u0131l\u0131yor + +ORA-17407=ge\u00e7ersiz T\u00fcr Temsili (setRep) + +ORA-17408=Ge\u00e7ersiz T\u00fcr Sunumu (getRep) + +ORA-17409=ge\u00e7ersiz arabellek uzunlu\u011fu + +ORA-17410=Yuvadan okunacak ba\u015fka veri yok + +ORA-17411=Veri T\u00fcr\u00fc sunumlar\u0131 uyumsuzlu\u011fu + +ORA-17412=T\u00fcr uzunlu\u011fu maksimum de\u011ferden daha b\u00fcy\u00fck + +ORA-17413=Anahtar boyutu a\u015f\u0131l\u0131yor + +ORA-17414=S\u00fctun Adlar\u0131n\u0131 saklamak i\u00e7in yetersiz Arabellek boyutu + +ORA-17415=Bu t\u00fcr i\u015flenmedi + +ORA-17416=FATAL + +ORA-17417=NLS Sorunu, s\u00fctun adlar\u0131n\u0131n kodlamas\u0131 \u00e7\u00f6z\u00fclemedi + +ORA-17418=Dahili yap\u0131n\u0131n alan uzunlu\u011funda hata + +ORA-17419=Ge\u00e7ersiz say\u0131da s\u00fctun d\u00f6nd\u00fcr\u00fcld\u00fc + +ORA-17420=Oracle S\u00fcr\u00fcm\u00fc tan\u0131mlanmam\u0131\u015f + +ORA-17421=T\u00fcrler veya Ba\u011flant\u0131 tan\u0131mlanmam\u0131\u015f + +ORA-17422=Factory i\u00e7inde ge\u00e7ersiz s\u0131n\u0131f + +ORA-17423=Tan\u0131ml\u0131 bir IOV olmaks\u0131z\u0131n PLSQL blo\u011fu kullan\u0131l\u0131yor + +ORA-17424=Farkl\u0131 marshaling i\u015flemi deneniyor + +ORA-17425=PLSQL blo\u011funda veri ak\u0131\u015f\u0131 d\u00f6nd\u00fcr\u00fcl\u00fcyor + +ORA-17426=Hem IN hem de OUT ba\u011flar\u0131 NULL + +ORA-17427=Ba\u015flat\u0131lmam\u0131\u015f OAC kullan\u0131l\u0131yor + +ORA-17428=Connect sonras\u0131nda logon \u00e7a\u011fr\u0131lmal\u0131d\u0131r + +ORA-17429=En az\u0131ndan sunucuya ba\u011fl\u0131 olmal\u0131d\u0131r + +ORA-17430=Sunucuda oturum a\u00e7m\u0131\u015f olmal\u0131d\u0131r + +ORA-17431=Ayr\u0131\u015ft\u0131r\u0131lacak SQL Deyimi bo\u015f + +ORA-17432=all7 i\u00e7inde ge\u00e7ersiz se\u00e7enekler + +ORA-17433=\u00e7a\u011fr\u0131da ge\u00e7ersiz ba\u011f\u0131ms\u0131z de\u011fi\u015fkenler + +ORA-17434=veri ak\u0131\u015f\u0131 modunda de\u011fil + +ORA-17435=IOV i\u00e7inde ge\u00e7ersiz say\u0131da in_out_binds + +ORA-17436=ge\u00e7ersiz say\u0131da outbind + +ORA-17437=PLSQL blo\u011fu IN/OUT ba\u011f\u0131ms\u0131z de\u011fi\u015fkenlerinde hata + +ORA-17438=Dahili - Beklenmeyen de\u011fer + +ORA-17439=Ge\u00e7ersiz SQL t\u00fcr\u00fc + +ORA-17440=DBItem/DBType bo\u015f + +ORA-17441=Oracle S\u00fcr\u00fcm\u00fc desteklenmiyor. Desteklenen en eski s\u00fcr\u00fcm 7.2.3. + +ORA-17442=Refcursor de\u011feri ge\u00e7ersiz + +ORA-17443=THIN s\u00fcr\u00fcc\u00fcs\u00fcnde bo\u015f kullan\u0131c\u0131 ad\u0131 veya parola desteklenmiyor + +ORA-17444=Sunucudan al\u0131nan TTC Protokol\u00fc s\u00fcr\u00fcm\u00fc desteklenmiyor + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_zh_CN.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_zh_CN.properties new file mode 100644 index 0000000..44abbf7 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_zh_CN.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u5185\u90e8\u9519\u8bef + +ORA-17002=Io \u5f02\u5e38 + +ORA-17003=\u65e0\u6548\u7684\u5217\u7d22\u5f15 + +ORA-17004=\u65e0\u6548\u7684\u5217\u7c7b\u578b + +ORA-17005=\u4e0d\u652f\u6301\u7684\u5217\u7c7b\u578b + +ORA-17006=\u5217\u540d\u65e0\u6548 + +ORA-17007=\u65e0\u6548\u7684\u52a8\u6001\u5217 + +ORA-17008=\u5173\u95ed\u7684\u8fde\u63a5 + +ORA-17009=\u5173\u95ed\u7684\u8bed\u53e5 + +ORA-17010=\u5173\u95ed\u7684 Resultset + +ORA-17011=\u7528\u5c3d\u7684 Resultset + +ORA-17012=\u53c2\u6570\u7c7b\u578b\u51b2\u7a81 + +ORA-17014=\u672a\u8c03\u7528 ResultSet.next + +ORA-17015=\u8bed\u53e5\u88ab\u53d6\u6d88 + +ORA-17016=\u8bed\u53e5\u8d85\u65f6 + +ORA-17017=\u5df2\u521d\u59cb\u5316\u6e38\u6807 + +ORA-17018=\u65e0\u6548\u7684\u6e38\u6807 + +ORA-17019=\u53ea\u80fd\u63cf\u8ff0\u67e5\u8be2 + +ORA-17020=\u65e0\u6548\u7684\u884c\u9884\u53d6 + +ORA-17021=\u5b9a\u4e49\u4e22\u5931 + +ORA-17022=\u5728\u7d22\u5f15\u5904\u5b9a\u4e49\u4e22\u5931 + +ORA-17023=\u4e0d\u652f\u6301\u7684\u7279\u6027 + +ORA-17024=\u672a\u8bfb\u53d6\u6570\u636e + +ORA-17025=defines.isNull () \u4e2d\u51fa\u73b0\u9519\u8bef + +ORA-17026=\u6570\u5b57\u6ea2\u51fa + +ORA-17027=\u6d41\u5df2\u88ab\u5173\u95ed + +ORA-17028=\u76f4\u5230\u5173\u95ed\u5f53\u524d\u7684 ResultSet \u624d\u80fd\u8fdb\u884c\u65b0\u7684\u5b9a\u4e49 + +ORA-17029=setReadOnly: \u4e0d\u652f\u6301\u53ea\u8bfb\u8fde\u63a5 + +ORA-17030=\u4ec5 READ_COMMITTED \u548c SERIALIZABLE \u662f\u6709\u6548\u7684\u4e8b\u52a1\u5904\u7406\u7ea7 + +ORA-17031=setAutoClose: \u4ec5\u652f\u6301\u81ea\u52a8\u5173\u95ed\u6a21\u5f0f\u6253\u5f00\u7684\u60c5\u51b5 + +ORA-17032=\u884c\u9884\u53d6\u4e0d\u80fd\u8bbe\u7f6e\u4e3a\u96f6 + +ORA-17033=\u51fa\u73b0\u683c\u5f0f\u4e0d\u6b63\u786e\u7684 SQL92 \u4e32 + +ORA-17034=\u51fa\u73b0\u4e0d\u652f\u6301\u7684 SQL92 \u6807\u8bb0 + +ORA-17035=\u4e0d\u652f\u6301\u7684\u5b57\u7b26\u96c6 \uff01\uff01 + +ORA-17036=OracleNumber \u4e2d\u7684\u5f02\u5e38 + +ORA-17037=\u4e0d\u80fd\u5728 UTF8 \u548c UCS2 \u4e4b\u95f4\u8f6c\u6362 + +ORA-17038=\u5b57\u8282\u6570\u7ec4\u4e0d\u591f\u957f + +ORA-17039=Char \u6570\u7ec4\u4e0d\u591f\u957f + +ORA-17040=\u5fc5\u987b\u5728\u8fde\u63a5 URL \u4e2d\u6307\u5b9a\u5b50\u534f\u8bae + +ORA-17041=\u7d22\u5f15\u4e2d\u4e22\u5931 IN \u6216 OUT \u53c2\u6570: + +ORA-17042=\u65e0\u6548\u7684\u6279\u503c + +ORA-17043=\u6d41\u7684\u6700\u5927\u957f\u5ea6\u65e0\u6548 + +ORA-17044=\u5185\u90e8\u9519\u8bef: \u672a\u5206\u914d\u6570\u636e\u6570\u7ec4 + +ORA-17045=\u5185\u90e8\u9519\u8bef: \u8bd5\u56fe\u8bbf\u95ee\u6279\u503c\u4e4b\u5916\u7684\u7ed1\u5b9a\u503c + +ORA-17046=\u5185\u90e8\u9519\u8bef: \u6570\u636e\u8bbf\u95ee\u7684\u7d22\u5f15\u65e0\u6548 + +ORA-17047=\u8bed\u6cd5\u5206\u6790\u7c7b\u578b\u63cf\u8ff0\u7b26\u65f6\u51fa\u9519 + +ORA-17048=\u672a\u5b9a\u4e49\u7684\u7c7b\u578b + +ORA-17049=\u4e0d\u4e00\u81f4\u7684 java \u548c sql \u5bf9\u8c61\u7c7b\u578b + +ORA-17050=\u77e2\u91cf\u4e2d\u6ca1\u6709\u8fd9\u6837\u7684\u5143\u7d20 + +ORA-17051=\u6b64 API \u4e0d\u80fd\u7528\u4e8e\u975e UDT \u7c7b\u578b + +ORA-17052=\u6b64 ref \u65e0\u6548 + +ORA-17053=\u957f\u5ea6\u65e0\u6548 + +ORA-17054=LOB \u5b9a\u4f4d\u5668\u65e0\u6548 + +ORA-17055=\u9047\u5230\u65e0\u6548\u5b57\u7b26\uff0c\u5728 + +ORA-17056=\u4e0d\u652f\u6301\u7684\u5b57\u7b26\u96c6 + +ORA-17057=\u5173\u95ed\u7684 LOB + +ORA-17058=\u5185\u90e8\u9519\u8bef: \u65e0\u6548\u7684 NLS \u8f6c\u6362\u7387 + +ORA-17059=\u65e0\u6cd5\u8f6c\u6362\u4e3a\u5185\u90e8\u8868\u793a + +ORA-17060=\u65e0\u6cd5\u6784\u9020\u63cf\u8ff0\u7b26 + +ORA-17061=\u4e22\u5931\u63cf\u8ff0\u7b26 + +ORA-17062=Ref \u6e38\u6807\u65e0\u6548 + +ORA-17063=\u4e0d\u5728\u4e8b\u52a1\u5904\u7406\u4e2d + +ORA-17064=\u65e0\u6548\u7684\u8bed\u6cd5\u6216\u6570\u636e\u5e93\u540d\u4e3a\u7a7a + +ORA-17065=\u8f6c\u6362\u7c7b\u4e3a\u7a7a + +ORA-17066=\u8bbf\u95ee\u5c42\u9700\u8981\u5177\u4f53\u5b9e\u65bd + +ORA-17067=\u6307\u5b9a\u4e86\u65e0\u6548\u7684 Oracle URL + +ORA-17068=\u8c03\u7528\u4e2d\u7684\u65e0\u6548\u53c2\u6570 + +ORA-17069=\u4f7f\u7528\u660e\u786e\u7684 XA \u8c03\u7528 + +ORA-17070=\u6570\u636e\u5927\u5c0f\u8d85\u51fa\u6b64\u7c7b\u578b\u7684\u6700\u5927\u503c + +ORA-17071=\u8d85\u51fa VARRAY \u7684\u6700\u5927\u9650\u5236 + +ORA-17072=\u5bf9\u5217\u6765\u8bf4\u63d2\u5165\u7684\u503c\u592a\u5927 + +ORA-17073=\u903b\u8f91\u53e5\u67c4\u4e0d\u518d\u6709\u6548 + +ORA-17074=\u65e0\u6548\u7684\u540d\u79f0\u6a21\u5f0f + +ORA-17075=\u5bf9\u53ea\u8f6c\u53d1\u7ed3\u679c\u96c6\u7684\u65e0\u6548\u64cd\u4f5c + +ORA-17076=\u5bf9\u53ea\u8bfb\u7ed3\u679c\u96c6\u7684\u65e0\u6548\u64cd\u4f5c + +ORA-17077=\u65e0\u6cd5\u8bbe\u7f6e REF \u503c + +ORA-17078=\u65e0\u6cd5\u8fdb\u884c\u8be5\u64cd\u4f5c\uff0c\u56e0\u4e3a\u8fde\u63a5\u5df2\u6253\u5f00 + +ORA-17079=\u7528\u6237\u8eab\u4efd\u8bc1\u660e\u4e0e\u73b0\u6709\u8eab\u4efd\u8bc1\u660e\u4e0d\u5339\u914d + +ORA-17080=\u65e0\u6548\u7684\u6279\u5904\u7406\u547d\u4ee4 + +ORA-17081=\u6279\u5904\u7406\u4e2d\u51fa\u73b0\u9519\u8bef + +ORA-17082=\u6ca1\u6709\u5f53\u524d\u884c + +ORA-17083=\u4e0d\u5728\u63d2\u5165\u884c\u4e0a + +ORA-17084=\u8bbf\u95ee\u63d2\u5165\u884c + +ORA-17085=\u51fa\u73b0\u503c\u51b2\u7a81 + +ORA-17086=\u63d2\u5165\u884c\u4e0a\u7684\u672a\u5b9a\u4e49\u5217\u503c + +ORA-17087=\u53ef\u5ffd\u7565\u7684\u6267\u884c\u63d0\u793a: setFetchDirection() + +ORA-17088=\u8bf7\u6c42\u7684\u7ed3\u679c\u7c7b\u578b\u548c\u5e76\u53d1\u7ea7\u522b\u7684\u8bed\u6cd5\u4e0d\u53d7\u652f\u6301 +ORA-17089=\u5185\u90e8\u9519\u8bef + +ORA-17090=\u4e0d\u5141\u8bb8\u7684\u64cd\u4f5c + +ORA-17091=\u5728\u6240\u8bf7\u6c42\u7684\u7c7b\u578b\u548c (\u6216) \u5e76\u53d1\u7ea7\u522b\u65e0\u6cd5\u521b\u5efa\u7ed3\u679c\u96c6 + +ORA-17092=\u65e0\u6cd5\u5728\u8c03\u7528\u5904\u7406\u64cd\u4f5c\u7ed3\u675f\u65f6\u521b\u5efa\u6216\u6267\u884c JDBC \u8bed\u53e5 + +ORA-17093=OCI \u64cd\u4f5c\u8fd4\u56de OCI_SUCCESS_WITH_INFO + +ORA-17094=\u5bf9\u8c61\u7c7b\u578b\u7248\u672c\u4e0d\u5339\u914d + +ORA-17095=\u8bed\u53e5\u9ad8\u901f\u7f13\u5b58\u5927\u5c0f\u672a\u4f5c\u8bbe\u7f6e + +ORA-17096=\u4e0d\u80fd\u4e3a\u6b64\u903b\u8f91\u8fde\u63a5\u542f\u7528\u8bed\u53e5\u9ad8\u901f\u7f13\u5b58\u3002 + +ORA-17097=PL/SQL \u7d22\u5f15\u8868\u7684\u5143\u7d20\u7c7b\u578b\u65e0\u6548 + +ORA-17098=\u7a7a\u4e8c\u8fdb\u5236\u5927\u5bf9\u8c61\u64cd\u4f5c\u65e0\u6548 + +ORA-17099=PL/SQL \u7d22\u5f15\u8868\u6570\u7ec4\u957f\u5ea6\u65e0\u6548 + +ORA-17100=\u6570\u636e\u5e93 Java \u5bf9\u8c61\u65e0\u6548 + +ORA-17101=OCI \u8fde\u63a5\u6c60\u5bf9\u8c61\u4e2d\u7684\u5c5e\u6027\u65e0\u6548 + +ORA-17102=Bfile \u4e3a\u53ea\u8bfb + +ORA-17103=\u901a\u8fc7 getConnection \u8fd4\u56de\u7684\u8fde\u63a5\u7c7b\u578b\u65e0\u6548\u3002\u6539\u7528 getJavaSqlConnection + +ORA-17104=\u8981\u6267\u884c\u7684 SQL \u8bed\u53e5\u4e0d\u5f97\u4e3a\u7a7a\u767d\u6216\u7a7a\u503c + +ORA-17105=\u672a\u8bbe\u7f6e\u8fde\u63a5\u4f1a\u8bdd\u65f6\u533a + +ORA-17106=\u6307\u5b9a\u7684 JDBC-OCI \u9a71\u52a8\u7a0b\u5e8f\u8fde\u63a5\u6c60\u914d\u7f6e\u65e0\u6548 + +ORA-17107=\u6307\u5b9a\u7684\u4ee3\u7406\u7c7b\u578b\u65e0\u6548 + +ORA-17108=\u6ca1\u6709\u5728 defineColumnType \u4e2d\u6307\u5b9a\u6700\u5927\u957f\u5ea6 + +ORA-17109=\u627e\u4e0d\u5230\u6807\u51c6 Java \u5b57\u7b26\u7f16\u7801 + +ORA-17110=\u6267\u884c\u5b8c\u6bd5, \u4f46\u5e26\u6709\u8b66\u544a + +ORA-17111=\u6307\u5b9a\u7684\u8fde\u63a5\u9ad8\u901f\u7f13\u5b58 TTL \u8d85\u65f6\u65f6\u95f4\u6ea2\u51fa + +ORA-17112=\u6307\u5b9a\u7684\u7ebf\u7a0b\u65f6\u95f4\u95f4\u9694\u65e0\u6548 + +ORA-17113=\u7ebf\u7a0b\u65f6\u95f4\u95f4\u9694\u503c\u5927\u4e8e\u9ad8\u901f\u7f13\u5b58\u8d85\u65f6\u503c + +ORA-17114=\u65e0\u6cd5\u5728\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u4f7f\u7528\u672c\u5730\u4e8b\u52a1\u5904\u7406\u63d0\u4ea4 + +ORA-17115=\u65e0\u6cd5\u5728\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u4f7f\u7528\u672c\u5730\u4e8b\u52a1\u5904\u7406\u56de\u9000 + +ORA-17116=\u65e0\u6cd5\u5728\u6d3b\u52a8\u7684\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u542f\u7528\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd + +ORA-17117=\u65e0\u6cd5\u5728\u6d3b\u52a8\u7684\u5168\u5c40\u4e8b\u52a1\u5904\u7406\u4e2d\u8bbe\u7f6e\u4fdd\u5b58\u70b9 + +ORA-17118=\u65e0\u6cd5\u83b7\u53d6\u5df2\u547d\u540d\u4fdd\u5b58\u70b9\u7684 ID + +ORA-17119=\u65e0\u6cd5\u83b7\u53d6\u672a\u547d\u540d\u4fdd\u5b58\u70b9\u7684\u540d\u79f0 + +ORA-17120=\u65e0\u6cd5\u8bbe\u7f6e\u542f\u7528\u4e86\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd\u7684\u4fdd\u5b58\u70b9 + +ORA-17121=\u65e0\u6cd5\u56de\u9000\u5230\u542f\u7528\u4e86\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd\u7684\u4fdd\u5b58\u70b9 + +ORA-17122=\u65e0\u6cd5\u56de\u9000\u5230\u542f\u7528\u4e86\u81ea\u52a8\u63d0\u4ea4\u529f\u80fd\u7684\u4fdd\u5b58\u70b9 + +ORA-17123=\u6307\u5b9a\u7684\u8bed\u53e5\u9ad8\u901f\u7f13\u5b58\u5927\u5c0f\u65e0\u6548 + +ORA-17124=\u6307\u5b9a\u7684\u8fde\u63a5\u9ad8\u901f\u7f13\u5b58\u5931\u6d3b\u8d85\u65f6\u65f6\u95f4\u65e0\u6548 + +ORA-17200=\u65e0\u6cd5\u6b63\u786e\u5730\u5c06 XA \u6253\u5f00\u5b57\u7b26\u4e32\u4ece Java \u8f6c\u6362\u6210 C + +ORA-17201=\u65e0\u6cd5\u6b63\u786e\u5730\u5c06 XA \u5173\u95ed\u5b57\u7b26\u4e32\u4ece Java \u8f6c\u6362\u6210 C + +ORA-17202=\u65e0\u6cd5\u6b63\u786e\u5730\u5c06 RM \u540d\u79f0\u4ece Java \u8f6c\u6362\u6210 C + +ORA-17203=\u65e0\u6cd5\u5c06\u6307\u9488\u7c7b\u578b\u5f3a\u5236\u8f6c\u6362\u6210 jlong + +ORA-17204=\u8f93\u5165\u6570\u7ec4\u8fc7\u77ed, \u65e0\u6cd5\u5bb9\u7eb3 OCI \u53e5\u67c4 + +ORA-17205=\u65e0\u6cd5\u4f7f\u7528 xaoSvcCtx \u4ece C-XA \u83b7\u53d6 OCISvcCtx \u53e5\u67c4 + +ORA-17206=\u65e0\u6cd5\u4f7f\u7528 xaoEnv \u4ece C-XA \u83b7\u53d6 OCIEnv \u53e5\u67c4 + +ORA-17207=\u672a\u5728\u6570\u636e\u6e90\u4e2d\u8bbe\u7f6e tnsEntry \u5c5e\u6027 + +ORA-17213=C-XA \u5728 xa_open \u671f\u95f4\u8fd4\u56de XAER_RMERR + +ORA-17215=C-XA \u5728 xa_open \u671f\u95f4\u8fd4\u56de XAER_INVAL + +ORA-17216=C-XA \u5728 xa_open \u671f\u95f4\u8fd4\u56de XAER_PROTO + +ORA-17233=C-XA \u5728 xa_close \u671f\u95f4\u8fd4\u56de XAER_RMERR + +ORA-17235=C-XA \u5728 xa_close \u671f\u95f4\u8fd4\u56de XAER_INVAL + +ORA-17236=C-XA \u5728 xa_close \u671f\u95f4\u8fd4\u56de XAER_PROTO + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u8fdd\u53cd\u534f\u8bae + +ORA-17402=\u53ea\u671f\u671b\u5f97\u5230\u4e00\u4e2a RPA \u6d88\u606f + +ORA-17403=\u53ea\u671f\u671b\u5f97\u5230\u4e00\u4e2a RXH \u6d88\u606f + +ORA-17404=\u6536\u5230\u8d85\u8fc7\u9884\u671f\u7684 RXD + +ORA-17405=UAC \u957f\u5ea6\u4e0d\u4e3a\u96f6 + +ORA-17406=\u8d85\u51fa\u7f13\u51b2\u533a\u7684\u6700\u5927\u957f\u5ea6 + +ORA-17407=\u65e0\u6548\u7684\u7c7b\u578b\u8868\u793a (setRep) + +ORA-17408=\u65e0\u6548\u7684\u7c7b\u578b\u8868\u793a (getRep) + +ORA-17409=\u65e0\u6548\u7684\u7f13\u51b2\u533a\u957f\u5ea6 + +ORA-17410=\u65e0\u6cd5\u4ece\u5957\u63a5\u5b57\u8bfb\u53d6\u66f4\u591a\u7684\u6570\u636e + +ORA-17411=\u6570\u636e\u7c7b\u578b\u8868\u793a\u4e0d\u5339\u914d + +ORA-17412=\u7c7b\u578b\u957f\u5ea6\u5927\u4e8e\u6700\u5927\u503c + +ORA-17413=\u8d85\u51fa\u5173\u952e\u5b57\u5927\u5c0f + +ORA-17414=\u7f13\u51b2\u533a\u5bb9\u91cf\u4e0d\u8db3\u4ee5\u5b58\u50a8\u5217\u540d + +ORA-17415=\u5c1a\u672a\u5904\u7406\u6b64\u7c7b\u578b + +ORA-17416=FATAL + +ORA-17417=NLS \u95ee\u9898\uff0c\u65e0\u6cd5\u5bf9\u5217\u540d\u8fdb\u884c\u89e3\u7801 + +ORA-17418=\u5185\u90e8\u7ed3\u6784\u7684\u5b57\u6bb5\u957f\u5ea6\u9519\u8bef + +ORA-17419=\u8fd4\u56de\u7684\u5217\u6570\u65e0\u6548 + +ORA-17420=\u672a\u5b9a\u4e49 Oracle \u7248\u672c + +ORA-17421=\u672a\u5b9a\u4e49\u7c7b\u578b\u6216\u8fde\u63a5 + +ORA-17422=\u5de5\u5382\u4e2d\u7684\u65e0\u6548\u7c7b + +ORA-17423=\u5728\u672a\u5b9a\u4e49 IOV \u7684\u60c5\u51b5\u4e0b\u4f7f\u7528 PLSQL \u5757 + +ORA-17424=\u5c1d\u8bd5\u4e0d\u540c\u7684\u7f16\u7ec4\u64cd\u4f5c + +ORA-17425=\u8fd4\u56de PLSQL \u5757\u4e2d\u7684\u6d41 + +ORA-17426=IN \u548c OUT \u7684\u7ed1\u5b9a\u5747\u4e3a NULL + +ORA-17427=\u4f7f\u7528\u672a\u521d\u59cb\u5316\u7684 OAC + +ORA-17428=\u8fde\u63a5\u540e\u5fc5\u987b\u8c03\u7528\u767b\u5f55 + +ORA-17429=\u5fc5\u987b\u81f3\u5c11\u4e0e\u670d\u52a1\u5668\u8fde\u63a5 + +ORA-17430=\u5fc5\u987b\u767b\u5f55\u5230\u670d\u52a1\u5668 + +ORA-17431=\u8981\u5206\u6790\u7684 SQL \u8bed\u53e5\u4e3a\u7a7a + +ORA-17432=all7 \u4e2d\u7684\u65e0\u6548\u9009\u9879 + +ORA-17433=\u8c03\u7528\u4e2d\u65e0\u6548\u7684\u53c2\u6570 + +ORA-17434=\u4e0d\u5728\u6d41\u6a21\u5f0f\u4e0b + +ORA-17435=IOV \u4e2d\u65e0\u6548\u7684 in_out_binds \u4e2a\u6570 + +ORA-17436=\u65e0\u6548\u7684 outbinds \u6570 + +ORA-17437=PLSQL \u5757 IN/OUT \u53c2\u6570\u4e2d\u51fa\u73b0\u9519\u8bef + +ORA-17438=\u5185\u90e8 - \u4e0d\u671f\u671b\u7684\u503c + +ORA-17439=\u65e0\u6548\u7684 SQL \u7c7b\u578b + +ORA-17440=DBItem/DBType \u4e3a\u7a7a + +ORA-17441=\u4e0d\u652f\u6301\u7684 Oracle \u7248\u672c\u3002\u652f\u6301\u7684\u6700\u4f4e\u7248\u672c\u4e3a 7.2.3\u3002 + +ORA-17442=Refcursor \u503c\u65e0\u6548 + +ORA-17443=THIN \u9a71\u52a8\u7a0b\u5e8f\u4e2d\u4e0d\u652f\u6301\u4e3a\u7a7a\u7684\u7528\u6237\u6216\u53e3\u4ee4 + +ORA-17444=\u4e0d\u652f\u6301\u4ece\u670d\u52a1\u5668\u63a5\u6536\u5230\u7684 TTC \u534f\u8bae\u7248\u672c + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_zh_TW.properties b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_zh_TW.properties new file mode 100644 index 0000000..c9eb2d7 --- /dev/null +++ b/workspace/RequeteSimple/oracle/jdbc/dbaccess/Messages_zh_TW.properties @@ -0,0 +1,405 @@ +# +# US English Error messages for JDBC +# +# Note: +# - Error codes are defined in DBError.java. +# +# Message Guidelines: +# (The existing messages are not consistent, but do follow this guideline +# when you are creating new ones, or changing old ones.) +# +# - Messages start in lower-cases (eg. "invalid data type"). +# - Do not put signs in message. This is bad: "-> NULL". +# - Use past tense (eg. "failed to convert data"). +# + +#-------------------------------------------------------------------------- +# +# Messages +# +#-------------------------------------------------------------------------- + +ORA-17001=\u5167\u90e8\u932f\u8aa4 + +ORA-17002=IO \u7570\u5e38 + +ORA-17003=\u4e0d\u6b63\u78ba\u7684\u8cc7\u6599\u6b04\u7d22\u5f15 + +ORA-17004=\u8cc7\u6599\u6b04\u985e\u578b\u7121\u6548 + +ORA-17005=\u4e0d\u652f\u63f4\u7684\u8cc7\u6599\u6b04\u985e\u578b + +ORA-17006=\u4e0d\u6b63\u78ba\u7684\u8cc7\u6599\u6b04\u540d\u7a31 + +ORA-17007=\u4e0d\u6b63\u78ba\u7684\u52d5\u614b\u8cc7\u6599\u6b04 + +ORA-17008=\u95dc\u9589\u7684\u9023\u7dda + +ORA-17009=\u95dc\u9589\u7684\u6558\u8ff0\u53e5 + +ORA-17010=\u95dc\u9589\u7684\u7d50\u679c\u96c6 + +ORA-17011=\u8017\u640d\u7684\u7d50\u679c\u96c6 + +ORA-17012=\u53c3\u6578\u985e\u578b\u885d\u7a81 + +ORA-17014=\u672a\u547c\u53eb ResultSet.next + +ORA-17015=\u5df2\u53d6\u6d88\u6558\u8ff0\u53e5 + +ORA-17016=\u6558\u8ff0\u53e5\u903e\u6642 + +ORA-17017=\u5df2\u521d\u59cb\u5316\u6e38\u6a19 + +ORA-17018=\u4e0d\u6b63\u78ba\u7684\u6e38\u6a19 + +ORA-17019=\u53ea\u80fd\u63cf\u8ff0\u67e5\u8a62 + +ORA-17020=\u4e0d\u6b63\u78ba\u7684\u9810\u5148\u8cc7\u6599\u5217\u64f7\u53d6 + +ORA-17021=\u5b9a\u7fa9\u907a\u5931 + +ORA-17022=\u907a\u5931\u7d22\u5f15\u5b9a\u7fa9 + +ORA-17023=\u4e0d\u652f\u63f4\u7684\u529f\u80fd + +ORA-17024=\u7121\u8b80\u53d6\u8cc7\u6599 + +ORA-17025=defines.isNull () \u4e2d\u767c\u751f\u932f\u8aa4 + +ORA-17026=\u6578\u503c\u6ea2\u4f4d + +ORA-17027=\u4e32\u6d41\u5df2\u95dc\u9589 + +ORA-17028=\u5728\u76ee\u524d\u7684\u7d50\u679c\u96c6\u95dc\u9589\u4e4b\u524d, \u7121\u6cd5\u9032\u884c\u65b0\u5b9a\u7fa9 + +ORA-17029=setReadOnly: \u4e0d\u652f\u63f4\u552f\u8b80\u9023\u7dda + +ORA-17030=READ_COMMITTED \u548c SERIALIZABLE \u662f\u552f\u4e00\u6709\u6548\u7684\u4ea4\u6613\u5c64\u6b21 + +ORA-17031=setAutoClose: \u53ea\u652f\u63f4\u81ea\u52d5\u95dc\u9589\u6a21\u5f0f\u958b\u555f + +ORA-17032=\u7121\u6cd5\u5c07\u9810\u5148\u64f7\u53d6\u7684\u8cc7\u6599\u5217\u8a2d\u5b9a\u70ba\u96f6 + +ORA-17033=\u8b8a\u5f62 SQL92 \u5b57\u4e32\u7684\u4f4d\u7f6e + +ORA-17034=\u672a\u652f\u63f4 SQL92 \u7b26\u865f\u7684\u4f4d\u7f6e + +ORA-17035=\u4e0d\u652f\u63f4\u7684\u5b57\u5143\u96c6 !! + +ORA-17036=\u7570\u5e38 OracleNumber + +ORA-17037=\u7121\u6cd5\u8f49\u63db UTF8 \u548c UCS2 + +ORA-17038=\u4f4d\u5143\u7d44\u9663\u5217\u9577\u5ea6\u4e0d\u8db3 + +ORA-17039=\u5b57\u5143\u9663\u5217\u9577\u5ea6\u4e0d\u8db3 + +ORA-17040=\u9023\u7dda URL \u4e2d \u5fc5\u9808\u6307\u5b9a\u6b21\u5354\u5b9a + +ORA-17041=\u907a\u5931 IN \u6216 OUT \u53c3\u6578, \u6240\u5728\u7d22\u5f15: + +ORA-17042=\u4e0d\u6b63\u78ba\u7684\u6279\u6b21\u503c + +ORA-17043=\u4e0d\u6b63\u78ba\u7684\u6700\u5927\u4e32\u6d41\u5927\u5c0f + +ORA-17044=\u5167\u90e8\u932f\u8aa4: \u672a\u914d\u7f6e\u8cc7\u6599\u9663\u5217 + +ORA-17045=\u5167\u90e8\u932f\u8aa4: \u5617\u8a66\u5b58\u53d6\u6279\u6b21\u503c\u4e4b\u5f8c\u7684\u9023\u7d50\u503c + +ORA-17046=\u5167\u90e8\u932f\u8aa4: \u4e0d\u6b63\u78ba\u7684\u8cc7\u6599\u5b58\u53d6\u7d22\u5f15 + +ORA-17047=\u985e\u578b\u63cf\u8ff0\u5340\u5256\u6790\u767c\u751f\u932f\u8aa4 + +ORA-17048=\u672a\u5b9a\u7fa9\u7684\u985e\u578b + +ORA-17049=\u4e0d\u4e00\u81f4\u7684 java \u548c sql \u7269\u4ef6\u985e\u578b + +ORA-17050=\u5411\u91cf\u4e2d\u7121\u6b64\u5143\u7d20 + +ORA-17051=API \u7121\u6cd5\u7528\u65bc\u975e UDT \u985e\u578b + +ORA-17052=\u6b64\u53c3\u8003\u4e0d\u6b63\u78ba + +ORA-17053=\u6b64\u5927\u5c0f\u4e0d\u6b63\u78ba + +ORA-17054=LOB \u5b9a\u4f4d\u5668\u4e0d\u6b63\u78ba + +ORA-17055=\u4e0d\u6b63\u78ba\u7684\u5b57\u5143\u767c\u751f\u4f4d\u7f6e + +ORA-17056=\u4e0d\u652f\u63f4\u7684\u5b57\u5143\u96c6 + +ORA-17057=\u95dc\u9589\u7684 LOB + +ORA-17058=\u5167\u90e8\u932f\u8aa4: \u4e0d\u6b63\u78ba\u7684 NLS \u8f49\u63db\u7387 + +ORA-17059=\u7121\u6cd5\u8f49\u63db\u70ba\u5167\u90e8\u65b9\u5f0f + +ORA-17060=\u7121\u6cd5\u5efa\u69cb\u63cf\u8ff0\u5340 + +ORA-17061=\u907a\u6f0f\u8ff0\u5340 + +ORA-17062=\u4e0d\u6b63\u78ba\u7684\u53c3\u8003\u6e38\u6a19 + +ORA-17063=\u4e0d\u5728\u7570\u52d5\u4e2d + +ORA-17064=\u4e0d\u6b63\u78ba\u7684\u8a9e\u6cd5\u6216\u8cc7\u6599\u5eab\u540d\u7a31\u70ba\u7a7a\u503c + +ORA-17065=\u8f49\u63db\u985e\u5225\u70ba\u7a7a\u503c + +ORA-17066=\u9700\u8981\u5b58\u53d6\u5c64\u7279\u5b9a\u5be6\u65bd\u57f7\u884c + +ORA-17067=\u6240\u6307\u5b9a\u7684 Oracle URL \u4e0d\u6b63\u78ba + +ORA-17068=\u547c\u53eb\u53c3\u6578\u7121\u6548 + +ORA-17069=\u4f7f\u7528\u5916\u986f XA \u547c\u53eb + +ORA-17070=\u8cc7\u6599\u5927\u5c0f\u5927\u65bc\u6b64\u985e\u578b\u7684\u6700\u5927\u5927\u5c0f + +ORA-17071=\u8d85\u904e VARRAY \u7684\u6700\u5927\u9650\u5236 + +ORA-17072=\u8cc7\u6599\u6b04\u7684\u63d2\u5165\u503c\u592a\u5927 + +ORA-17073=\u908f\u8f2f\u8655\u7406\u4e0d\u6b63\u78ba + +ORA-17074=\u4e0d\u6b63\u78ba\u7684\u540d\u7a31\u683c\u5f0f + +ORA-17075=\u4e0d\u6b63\u78ba\u7684\u50c5\u8f49\u9001\u7d50\u679c\u96c6\u4f5c\u696d + +ORA-17076=\u4e0d\u6b63\u78ba\u7684\u552f\u8b80\u7d50\u679c\u96c6\u4f5c\u696d + +ORA-17077=\u7121\u6cd5\u8a2d\u5b9a REF \u503c + +ORA-17078=\u7576\u5df2\u958b\u555f\u9023\u7dda\u6642\u7121\u6cd5\u57f7\u884c\u6b64\u4f5c\u696d + +ORA-17079=\u4f7f\u7528\u8005\u8b49\u660e\u8207\u73fe\u6709\u7684\u4e0d\u7b26 + +ORA-17080=\u4e0d\u6b63\u78ba\u7684\u6279\u6b21\u547d\u4ee4 + +ORA-17081=\u6279\u6b21\u4f5c\u696d\u6642\u767c\u751f\u932f\u8aa4 + +ORA-17082=\u7121\u76ee\u524d\u8cc7\u6599\u5217 + +ORA-17083=\u4e0d\u5728\u6b64\u63d2\u5165\u8cc7\u6599\u5217\u4e2d + +ORA-17084=\u547c\u53eb\u65bc\u6b64\u63d2\u5165\u8cc7\u6599\u5217 + +ORA-17085=\u767c\u751f\u885d\u7a81\u503c + +ORA-17086=\u5728\u63d2\u5165\u8cc7\u6599\u5217\u4e2d\u767c\u751f\u672a\u5b9a\u7fa9\u7684\u8cc7\u6599\u6b04\u503c + +ORA-17087=\u5ffd\u7565\u6548\u7387\u6697\u793a: setFetchDirection() + +ORA-17088=\u672a\u652f\u63f4\u7684\u8981\u6c42\u7d50\u679c\u96c6\u985e\u578b\u548c\u4e26\u884c\u5c64\u6b21\u8a9e\u6cd5 +ORA-17089=\u5167\u90e8\u932f\u8aa4 + +ORA-17090=\u4e0d\u5141\u8a31\u6b64\u4f5c\u696d + +ORA-17091=\u7121\u6cd5\u5728\u8981\u6c42\u7684\u985e\u578b\u548c(\u6216)\u4e26\u884c\u5c64\u6b21\u5efa\u7acb\u7d50\u679c\u96c6 + +ORA-17092=JDBC \u6558\u8ff0\u53e5\u7121\u6cd5\u5728\u547c\u53eb\u8655\u7406\u7d50\u675f\u6642\u5efa\u7acb\u6216\u57f7\u884c + +ORA-17093=OCI \u4f5c\u696d\u50b3\u56de OCI_SUCCESS_WITH_INFO + +ORA-17094=\u7269\u4ef6\u985e\u578b\u7248\u672c\u4e0d\u7b26\u5408 + +ORA-17095=\u5c1a\u672a\u8a2d\u5b9a\u6558\u8ff0\u53e5\u5feb\u53d6\u5927\u5c0f + +ORA-17096=\u7121\u6cd5\u555f\u7528\u6b64\u908f\u8f2f\u9023\u7dda\u7684\u6558\u8ff0\u53e5\u5feb\u53d6. + +ORA-17097=PL/SQL \u7d22\u5f15\u8868\u683c\u5143\u7d20\u985e\u578b\u7121\u6548 + +ORA-17098=\u7a7a\u7684 lob \u4f5c\u696d\u7121\u6548 + +ORA-17099=PL/SQL \u7d22\u5f15\u8868\u683c\u9663\u5217\u9577\u5ea6\u7121\u6548 + +ORA-17100=\u8cc7\u6599\u5eab Java \u7269\u4ef6\u7121\u6548 + +ORA-17101=OCI \u9023\u7dda\u5340\u7269\u4ef6\u7684\u5c6c\u6027\u7121\u6548 + +ORA-17102=Bfile \u662f\u552f\u8b80\u7684 + +ORA-17103=getConnection \u50b3\u56de\u7684\u9023\u7dda\u985e\u578b\u7121\u6548. \u8acb\u4f7f\u7528 getJavaSqlConnection + +ORA-17104=\u8981\u57f7\u884c\u7684 SQL \u6558\u8ff0\u53e5\u4e0d\u80fd\u662f\u7a7a\u7684\u6216\u7a7a\u503c + +ORA-17105=\u672a\u8a2d\u5b9a\u9023\u7dda\u968e\u6bb5\u4f5c\u696d\u6642\u9593\u5340 + +ORA-17106=\u6307\u5b9a\u7684 JDBC-OCI \u9a45\u52d5\u7a0b\u5f0f\u9023\u7dda\u96c6\u5340\u7d44\u614b\u7121\u6548 + +ORA-17107=\u6307\u5b9a\u7684\u4ee3\u7406\u4e3b\u6a5f\u985e\u578b\u7121\u6548 + +ORA-17108=defineColumnType \u4e26\u672a\u6307\u5b9a\u9577\u5ea6\u4e0a\u9650 + +ORA-17109=\u627e\u4e0d\u5230\u6a19\u6e96\u7684 Java \u5b57\u5143\u7de8\u78bc + +ORA-17110=\u5b8c\u6210\u57f7\u884c, \u4f46\u6709\u8b66\u544a + +ORA-17111=\u6307\u5b9a\u7684\u9023\u7dda\u5feb\u53d6 TTL \u903e\u6642\u7121\u6548 + +ORA-17112=\u6307\u5b9a\u7684\u7e6b\u7dda\u9593\u9694\u7121\u6548 + +ORA-17113=\u7e6b\u7dda\u9593\u9694\u503c\u5927\u65bc\u5feb\u53d6\u903e\u6642\u503c + +ORA-17114=\u7121\u6cd5\u5728\u5168\u57df\u4ea4\u6613\u4e2d\u4f7f\u7528\u5340\u57df\u4ea4\u6613\u78ba\u8a8d + +ORA-17115=\u7121\u6cd5\u5728\u5168\u57df\u4ea4\u6613\u4e2d\u4f7f\u7528\u5340\u57df\u4ea4\u6613\u5012\u56de + +ORA-17116=\u7121\u6cd5\u958b\u555f\u4f5c\u7528\u4e2d\u5168\u57df\u4ea4\u6613\u7684\u81ea\u52d5\u78ba\u8a8d + +ORA-17117=\u7121\u6cd5\u8a2d\u5b9a\u4f5c\u7528\u4e2d\u5168\u57df\u4ea4\u6613\u7684\u5132\u5b58\u9ede + +ORA-17118=\u7121\u6cd5\u53d6\u5f97\u6307\u5b9a\u4e4b\u300c\u5132\u5b58\u9ede\u300d\u7684 ID + +ORA-17119=\u7121\u6cd5\u53d6\u5f97\u672a\u6307\u5b9a\u4e4b\u300c\u5132\u5b58\u9ede\u300d\u7684\u540d\u7a31 + +ORA-17120=\u7121\u6cd5\u8a2d\u5b9a\u5df2\u958b\u555f\u81ea\u52d5\u78ba\u8a8d\u7684\u300c\u5132\u5b58\u9ede\u300d + +ORA-17121=\u7121\u6cd5\u5012\u56de\u81f3\u5df2\u958b\u555f\u81ea\u52d5\u78ba\u8a8d\u7684\u300c\u5132\u5b58\u9ede\u300d + +ORA-17122=\u7121\u6cd5\u5012\u56de\u81f3\u5168\u57df\u4ea4\u6613\u7684\u5340\u57df txn\u300c\u5132\u5b58\u9ede\u300d + +ORA-17123=\u6307\u5b9a\u7684\u6558\u8ff0\u53e5\u5feb\u53d6\u5927\u5c0f\u7121\u6548 + +ORA-17124=\u6307\u5b9a\u7684\u9023\u7dda\u5feb\u53d6\u300c\u7121\u6d3b\u52d5\u300d\u903e\u6642\u7121\u6548 + +ORA-17200=\u7121\u6cd5\u6b63\u78ba\u7684\u5c07 XA \u958b\u555f\u5b57\u4e32\u5f9e Java \u8f49\u63db\u70ba C + +ORA-17201=\u7121\u6cd5\u6b63\u78ba\u7684\u5c07 XA \u95dc\u9589\u5b57\u4e32\u5f9e Java \u8f49\u63db\u70ba C + +ORA-17202=\u7121\u6cd5\u6b63\u78ba\u7684\u5c07 RM \u540d\u7a31\u5f9e Java \u8f49\u63db\u70ba C + +ORA-17203=\u7121\u6cd5\u5c07\u6307\u6a19\u985e\u578b\u8f49\u578b\u70ba jlong + +ORA-17204=\u8f38\u5165\u9663\u5217\u592a\u77ed, \u7121\u6cd5\u4fdd\u7559 OCI \u6a19\u793a\u5143 + +ORA-17205=\u7121\u6cd5\u4f7f\u7528 xaoSvcCtx \u53d6\u5f97 C-XA \u7684 OCISvcCtx \u6a19\u793a\u5143 + +ORA-17206=\u7121\u6cd5\u4f7f\u7528 xaoEnv \u53d6\u5f97 C-XA \u7684 OCIEnv \u6a19\u793a\u5143 + +ORA-17207=DataSource \u672a\u8a2d\u5b9a tnsEntry \u5c6c\u6027 + +ORA-17213=C-XA \u5728 xa_open \u6642\u50b3\u56de XAER_RMERR + +ORA-17215=C-XA \u5728 xa_open \u6642\u50b3\u56de XAER_INVAL + +ORA-17216=C-XA \u5728 xa_open \u6642\u50b3\u56de XAER_PROTO + +ORA-17233=C-XA \u5728 xa_close \u6642\u50b3\u56de XAER_RMERR + +ORA-17235=C-XA \u5728 xa_close \u6642\u50b3\u56de XAER_INVAL + +ORA-17236=C-XA \u5728 xa_close \u6642\u50b3\u56de XAER_PROTO + + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# + + +#-------------------------------------------------------------------------- +# +# TTC Messages +# +#-------------------------------------------------------------------------- + +ORA-17401=\u9055\u53cd\u5354\u5b9a + +ORA-17402=\u53ea\u9810\u671f\u4e00\u500b RPA \u8a0a\u606f + +ORA-17403=\u53ea\u9810\u671f\u4e00\u500b RXH \u8a0a\u606f + +ORA-17404=\u6536\u5230\u8d85\u51fa\u9810\u671f\u7684 RXD + +ORA-17405=UAC \u9577\u5ea6\u4e0d\u70ba\u96f6 + +ORA-17406=\u8d85\u51fa\u7de9\u885d\u5340\u7684\u6700\u5927\u9577\u5ea6 + +ORA-17407=\u985e\u578b\u8868\u793a\u6cd5 (setRep) \u7121\u6548 + +ORA-17408=\u985e\u578b\u8868\u793a\u6cd5 (getRep) \u7121\u6548 + +ORA-17409=\u4e0d\u6b63\u78ba\u7684\u7de9\u885d\u5340\u9577\u5ea6 + +ORA-17410=\u6c92\u6709\u5f9e\u57e0\u5ea7\u8b80\u53d6\u8cc7\u6599 + +ORA-17411=\u8cc7\u6599\u985e\u578b\u8868\u793a\u6cd5\u4e0d\u76f8\u7b26 + +ORA-17412=\u8d85\u904e\u6700\u5927\u7684\u985e\u578b\u9577\u5ea6 + +ORA-17413=\u8d85\u904e\u7d22\u5f15\u9375\u5927\u5c0f + +ORA-17414=\u7de9\u885d\u5340\u5927\u5c0f\u4e0d\u8db3\u4ee5\u5132\u5b58\u8cc7\u6599\u6b04\u540d\u7a31 + +ORA-17415=\u672a\u8655\u7406\u6b64\u985e\u578b + +ORA-17416=FATAL + +ORA-17417=NLS \u554f\u984c, \u6b04\u4f4d\u540d\u7a31\u89e3\u78bc\u5931\u6557 + +ORA-17418=\u5167\u90e8\u7d50\u69cb\u6b04\u4f4d\u9577\u5ea6\u932f\u8aa4 + +ORA-17419=\u50b3\u56de\u7684\u8cc7\u6599\u6b04\u6578\u76ee\u4e0d\u6b63\u78ba + +ORA-17420=\u672a\u5b9a\u7fa9 Oracle \u7248\u672c + +ORA-17421=\u672a\u5b9a\u7fa9\u985e\u578b\u6216\u9023\u7dda + +ORA-17422=\u4e0d\u6b63\u78ba\u7684\u7d44\u7e54\u985e\u5225 + +ORA-17423=\u4f7f\u7528\u7121 IOV \u5b9a\u7fa9\u7684 PLSQL \u5340\u584a + +ORA-17424=\u5617\u8a66\u4e0d\u540c\u7684\u6392\u5217\u4f5c\u696d + +ORA-17425=\u50b3\u56de PLSQL \u5340\u584a\u4e2d\u7684\u4e32\u6d41 + +ORA-17426=IN \u548c OUT \u9023\u7d50\u7686\u70ba\u7a7a\u503c + +ORA-17427=\u4f7f\u7528\u672a\u521d\u59cb\u5316\u7684 OAC + +ORA-17428=\u5fc5\u9808\u5728\u9023\u7dda\u5f8c\u547c\u53eb\u767b\u5165 + +ORA-17429=\u81f3\u5c11\u5fc5\u9808\u9023\u7dda\u81f3\u4f3a\u670d\u5668 + +ORA-17430=\u5fc5\u9808\u767b\u5165\u4f3a\u670d\u5668 + +ORA-17431=SQL Statement \u5256\u6790\u70ba\u7a7a\u503c + +ORA-17432=\u4e0d\u6b63\u78ba\u7684 O7 \u9078\u9805 + +ORA-17433=\u547c\u53eb\u53c3\u6578\u7121\u6548 + +ORA-17434=\u4e0d\u662f\u4e32\u6d41\u6a21\u5f0f + +ORA-17435=IOV \u4e2d\u4e0d\u6b63\u78ba\u7684 in_out_binds \u6578 + +ORA-17436=\u4e0d\u6b63\u78ba\u7684\u5916\u90e8\u9023\u7d50\u6578 + +ORA-17437=PLSQL \u5340\u584a IN/OUT \u53c3\u6578\u4e2d\u6709\u932f\u8aa4 + +ORA-17438=\u5167\u90e8 - \u672a\u9810\u671f\u503c + +ORA-17439=SQL \u985e\u578b\u7121\u6548 + +ORA-17440=DBItem/DBType \u70ba\u7a7a\u503c + +ORA-17441=\u4e0d\u652f\u63f4\u7684 Oracle \u7248\u672c. \u6240\u652f\u63f4\u7684\u6700\u65e9\u7248\u672c\u70ba 7.2.3. + +ORA-17442=Refcursor \u503c\u4e0d\u6b63\u78ba + +ORA-17443=\u7a7a\u503c\u7684\u4f7f\u7528\u8005\u6216\u5bc6\u78bc\u4e0d\u652f\u63f4\u65bc THIN \u9a45\u52d5\u7a0b\u5f0f + +ORA-17444=\u4e0d\u652f\u63f4\u7531\u4f3a\u670d\u5668\u6240\u63a5\u6536\u7684 TTC \u5354\u5b9a\u7248\u672c + +# ^ ^ ^ ^ +# | | | | P L E A S E R E A D +# +# Add new message above this comment. +# Before you add a new message, please read "Message Guideline" at the +# top of this file first. +# diff --git a/workspace/RequeteSimple/oracle/net/mesg/Message.properties b/workspace/RequeteSimple/oracle/net/mesg/Message.properties new file mode 100644 index 0000000..7e5f5e7 --- /dev/null +++ b/workspace/RequeteSimple/oracle/net/mesg/Message.properties @@ -0,0 +1,71 @@ +# US English Message file for Net components + +# ## Internal [ 0, 19] +GOT_MINUS_ONE=Got minus one from a read call +ASSERTION_FAILED=Internal Error + +# ## NT Errors [ 20, 99] +NT_CONNECTION_FAILED=The Network Adapter could not establish the connection +INVALID_NT_ADAPTER=The Network Adapter in use is Invalid + +# ## Naming Errors [100, 199] +PROTOCOL_NOT_SPECIFIED=The Protocol Value Pair is missing +CSTRING_PARSING=TNS Address String Parsing error +INVALID_CONNECT_DATA=The Connect Data in the TNS Address is not valid +HOSTNAME_NOT_SPECIFIED=The hostname in the TNS Address was not specified +PORT_NOT_SPECIFIED=The port number in the the address was not specified +CONNECT_DATA_MISSING=The CONNECT_DATA in the TNS Address is missing +SID_INFORMATION_MISSING=The SID or SERVICE_NAME in the TNS Address is missing +ADDRESS_NOT_DEFINED=An ADDRESS Value pair was not defined in the TNS Address +JNDI_THREW_EXCEPTION=JNDI Package failure +JNDI_NOT_INITIALIZED=JNDI Access package not initialized +JNDI_CLASSES_NOT_FOUND=JNDI Package failure +USER_PROPERTIES_NOT_DEFINED=User Properties not Initialized, JNDI Access can't be used +NAMING_FACTORY_NOT_DEFINED=Naming factory not defined, JNDI access can't complete +NAMING_PROVIDER_NOT_DEFINED=Naming provider not defined, JNDI access can't complete +PROFILE_NAME_NOT_DEFINED=Profile Name not defined, JNDI access can't complete +HOST_PORT_SID_EXPECTED=Invalid connection string format, a valid format is: "host:port:sid" +PORT_NUMBER_ERROR=Invalid number format for port number +HOST_PORT_SN_EXPECTED=Invalid connection string format, a valid format is: "//host:port/service_name" + +# ## NS Errors [200, 299] +NOT_CONNECTED=Invalid Operation, NOT Connected +CONNECTED_ALREADY=Connected Already +DATA_EOF=End of TNS data channel +SDU_MISMATCH=Size Data Unit (SDU) mismatch +BAD_PKT_TYPE=Bad packet type +UNEXPECTED_PKT=Unexpected packet +REFUSED_CONNECT=Connection refused +INVALID_PKT_LENGTH=Invalid Packet Lenght +CONNECTION_STRING_NULL=Connection String was NULL + +# ##Ano Exception [300, 399] +FAILED_TO_TURN_ENCRYPTION_ON=Failed to Turn encryption On +WRONG_BYTES_IN_NAPACKET=Wrong byte number in na packet +WRONG_MAGIC_NUMBER=Wrong Magic number in na packet +UNKNOWN_ALGORITHM_12649=Unknown Encryption or Data Integrity algorithm +INVALID_ENCRYPTION_PARAMETER=Invalid parameter, use one of ACCEPTED, REJECTED, REQUESTED and REQUIRED +WRONG_SERVICE_SUBPACKETS=Wrong Number of service subpackets +SUPERVISOR_STATUS_FAILURE=Supervisor service received status failure +AUTHENTICATION_STATUS_FAILURE=Authentication service received status failure +SERVICE_CLASSES_NOT_INSTALLED=Service Classes not found in oracle.net.ano package +INVALID_DRIVER=Invalid Ano Driver +ARRAY_HEADER_ERROR=Error in array header received +RECEIVED_UNEXPECTED_LENGTH_FOR_TYPE=Received Unexpected length for a variable length NA type +INVALID_NA_PACKET_TYPE_LENGTH=Invalid length for an NA type +INVALID_NA_PACKET_TYPE=Invalid NA packet type received +UNEXPECTED_NA_PACKET_TYPE_RECEIVED=Unexpected NA Packet Type received +UNKNOWN_ENC_OR_DATAINT_ALGORITHM=Unkown encryption or DataIntegrity algorithm +INVALID_ENCRYPTION_ALGORITHM_FROM_SERVER=Invalid Encryption Algorithm from server +ENCRYPTION_CLASS_NOT_INSTALLED=Encryption Class not installed +DATAINTEGRITY_CLASS_NOT_INSTALLED=Data Integrity Class not installed +INVALID_DATAINTEGRITY_ALGORITHM_FROM_SERVER=Invalid DataIntegrity Algorithm received from server +INVALID_SERVICES_FROM_SERVER=Received Invalid Services from Server +INCOMPLETE_SERVICES_FROM_SERVER=Received Incomplete services from server +INVALID_LEVEL=Level should be one of ACCEPTED, REJECTED, REQUESTED and REQUIRED +INVALID_SERVICES=The service in process is not supported. + +# ##Break Exception [500, ] +NS_BREAK=Break packet was received +NL_EXCEPTION=NL Exception was generated +SO_EXCEPTION=SO Exception was generated diff --git a/workspace/RequeteSimple/oracle/sql/converter_xcharset/CharacterConverter0001.glb b/workspace/RequeteSimple/oracle/sql/converter_xcharset/CharacterConverter0001.glb new file mode 100644 index 0000000..44c4e0b Binary files /dev/null and b/workspace/RequeteSimple/oracle/sql/converter_xcharset/CharacterConverter0001.glb differ diff --git a/workspace/RequeteSimple/oracle/sql/converter_xcharset/CharacterConverter0002.glb b/workspace/RequeteSimple/oracle/sql/converter_xcharset/CharacterConverter0002.glb new file mode 100644 index 0000000..c48b504 Binary files /dev/null and b/workspace/RequeteSimple/oracle/sql/converter_xcharset/CharacterConverter0002.glb differ diff --git a/workspace/RequeteSimple/oracle/sql/converter_xcharset/CharacterConverter001f.glb b/workspace/RequeteSimple/oracle/sql/converter_xcharset/CharacterConverter001f.glb new file mode 100644 index 0000000..b858751 Binary files /dev/null and b/workspace/RequeteSimple/oracle/sql/converter_xcharset/CharacterConverter001f.glb differ diff --git a/workspace/monProjet.jar b/workspace/monProjet.jar new file mode 100644 index 0000000..204ae7d Binary files /dev/null and b/workspace/monProjet.jar differ diff --git a/workspace/webapps/.project b/workspace/webapps/.project new file mode 100644 index 0000000..f8fe37b --- /dev/null +++ b/workspace/webapps/.project @@ -0,0 +1,11 @@ + + + webapps + + + + + + + + diff --git a/workspace/webapps/Matdelavegas/Java/Article.java b/workspace/webapps/Matdelavegas/Java/Article.java new file mode 100644 index 0000000..eef381f --- /dev/null +++ b/workspace/webapps/Matdelavegas/Java/Article.java @@ -0,0 +1,78 @@ +public class Article +{ + private String ref = ""; + private String categ = ""; + private String marque = ""; + private String modele = ""; + private double prix = 0; + private String photo = ""; + private String description = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + public String getCateg() + { + return this.categ; + } + public String getMarque() + { + return this.marque; + } + public String getModele() + { + return this.modele; + } + public double getPrix() + { + return this.prix; + } + public String getPhoto() + { + return this.photo; + } + public String getDescription() + { + return this.description; + } + + public void setRef(String ref) + { + this.ref = ref; + } + public void setCateg(String categ) + { + this.categ = categ; + } + public void setMarque(String marque) + { + this.marque = marque; + } + public void setModele(String modele) + { + this.modele = modele; + } + public void setPrix(double prix) + { + this.prix = prix; + } + public void setPhoto(String photo) + { + this.photo = photo; + } + public void setDescription(String description) + { + this.description = description; + } + + public int getQuantite() + { + return this.quantite; + } + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/workspace/webapps/Matdelavegas/Java/Article.java~ b/workspace/webapps/Matdelavegas/Java/Article.java~ new file mode 100644 index 0000000..de19f5b --- /dev/null +++ b/workspace/webapps/Matdelavegas/Java/Article.java~ @@ -0,0 +1,80 @@ +package java; + +public class Article +{ + private String ref = ""; + private String categ = ""; + private String marque = ""; + private String modele = ""; + private double prix = 0; + private String photo = ""; + private String description = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + public String getCateg() + { + return this.categ; + } + public String getMarque() + { + return this.marque; + } + public String getModele() + { + return this.modele; + } + public double getPrix() + { + return this.prix; + } + public String getPhoto() + { + return this.photo; + } + public String getDescription() + { + return this.description; + } + + public void setRef(String ref) + { + this.ref = ref; + } + public void setCateg(String categ) + { + this.categ = categ; + } + public void setMarque(String marque) + { + this.marque = marque; + } + public void setModele(String modele) + { + this.modele = modele; + } + public void setPrix(double prix) + { + this.prix = prix; + } + public void setPhoto(String photo) + { + this.photo = photo; + } + public void setDescription(String description) + { + this.description = description; + } + + public int getQuantite() + { + return this.quantite; + } + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/workspace/webapps/Matdelavegas/Java/ArticlePanier.java b/workspace/webapps/Matdelavegas/Java/ArticlePanier.java new file mode 100644 index 0000000..6e68ca0 --- /dev/null +++ b/workspace/webapps/Matdelavegas/Java/ArticlePanier.java @@ -0,0 +1,25 @@ +public class ArticlePanier +{ + private String ref = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + + public void setRef(String ref) + { + this.ref = ref; + } + + public int getQuantite() + { + return this.quantite; + } + + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/workspace/webapps/Matdelavegas/Java/ArticlePanier.java~ b/workspace/webapps/Matdelavegas/Java/ArticlePanier.java~ new file mode 100644 index 0000000..61b7ad3 --- /dev/null +++ b/workspace/webapps/Matdelavegas/Java/ArticlePanier.java~ @@ -0,0 +1,27 @@ +package articles; + +public class ArticlePanier +{ + private String ref = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + + public void setRef(String ref) + { + this.ref = ref; + } + + public int getQuantite() + { + return this.quantite; + } + + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/workspace/webapps/Matdelavegas/Java/ArticlesTag.java b/workspace/webapps/Matdelavegas/Java/ArticlesTag.java new file mode 100644 index 0000000..5f34425 --- /dev/null +++ b/workspace/webapps/Matdelavegas/Java/ArticlesTag.java @@ -0,0 +1,35 @@ +import javax.servlet.jsp.JspException; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import java.io.IOException; +import java.util.Vector; +import com.articles.Article; + +public class ArticlesTag + extends SimpleTagSupport +{ + private String var; + + public void doTag() + throws JspException, IOException + { + Vector
    vArts = (Vector
    )getJspContext().getAttribute("articles"); + + if (vArts == null) + { + getJspContext().setAttribute(this.var, new Article() ); + getJspBody().invoke(null); + return; + } + + for (int i=0; i vArts = (Vector
    )getJspContext().getAttribute("articles"); + + if (vArts == null) + { + getJspContext().setAttribute(this.var, new Article() ); + getJspBody().invoke(null); + return; + } + + for (int i=0; i vs_erreurs = null; + private Vector vs_anomalies = null; + + + public GestionConnexion() + throws ClassNotFoundException, Exception + { + + this.statement = null; + this.resultSet = null; + this.requeteSQL = ""; + + this.paramsConn = new ParametresConnexion(); + + this.vs_erreurs = new Vector(); + this.vs_anomalies = new Vector(); + + try + { + Class.forName(ParametresConnexion.CLASSE).newInstance(); + } + catch (ClassNotFoundException ex) + { + throw ex; + } + catch (Exception ex) + { + throw ex; + } + } + + + public void ouvrir(ParametresConnexion params) + { + if (params == null) + throw new NullPointerException(); + + this.paramsConn.CopierDepuis(params); + + this.ouvrir(); + } + + public void ouvrir() + { + try + { + this.fermerConnexion(); + + this.connection = DriverManager.getConnection(this.paramsConn.getUrl(), + this.paramsConn.Utilisateur, this.paramsConn.Pwd); + + this.traiterWarning(this.connection.getWarnings()); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerConnexion(); + } + } + + public boolean estOuverte() + { + boolean bOuverte = false; + + try + { + if (this.connection != null) + bOuverte = !this.connection.isClosed(); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return bOuverte; + } + + public void fermerRessourcesRequete() + { + try + { + if (this.resultSet != null) + { + this.resultSet.close(); + this.resultSet = null; + } + + if (this.statement != null) + { + this.statement.close(); + this.statement = null; + } + + this.requeteSQL = ""; + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public void fermerConnexion() + { + try + { + this.fermerRessourcesRequete(); + + if (this.connection != null) + { + this.connection.close(); + this.connection = null; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public boolean lancerRequeteSelection(String query) + { + boolean res = true; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + this.traiterWarning(this.statement.getWarnings()); + + this.resultSet = this.statement.executeQuery(query); + this.traiterWarning(this.resultSet.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = false; + } + + return res; + } + + public int lancerRequeteModifBDD(String query) + { + int res = 0; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + + res = this.statement.executeUpdate(query); + this.traiterWarning(this.statement.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = -1; + } + + return res; + } + + public ParametresConnexion getParametresConnexion() + { + return new ParametresConnexion(this.paramsConn); + } + + public String getRequeteSQL() + { + return this.requeteSQL; + } + + public Vector getInfosConnexion() + { + Vector vs_infosConn = new Vector(); + DatabaseMetaData dmd; + + try + { + if (this.estOuverte()) + { + vs_infosConn.add("Etat de la connexion : ouverte"); + vs_infosConn.add("------------------------------"); + + dmd = this.connection.getMetaData(); + + vs_infosConn.add("Connexion : " + dmd.getURL()); + vs_infosConn.add("Driver : " + dmd.getDriverName()); + vs_infosConn.add("Version : " + dmd.getDriverVersion()); + } + else + { + vs_infosConn.add("Etat de la connexion : ferm�e"); + vs_infosConn.add("------------------------------"); + + vs_infosConn.add("Connexion : " + this.paramsConn.getUrl()); + vs_infosConn.add("Utilisateur : " + this.paramsConn.Utilisateur); + vs_infosConn.add("Mot de passe : " + this.paramsConn.Pwd.length() + " caract�re(s)"); + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_infosConn; + } + + public Vector getNomsColonnes() + { + Vector vs_cols = new Vector(); + ResultSetMetaData rsmd; + + try + { + if (this.resultSet != null) + { + rsmd = this.resultSet.getMetaData(); + int nbrCols = rsmd.getColumnCount(); + + for (int idCol = 1; idCol <= nbrCols; idCol++) + if (rsmd.isSearchable(idCol)) + vs_cols.add(rsmd.getColumnName(idCol)); + } + else if (this.statement == null) + this.vs_anomalies.add("Vous n'avez pas encore lanc� la requ�te!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_cols; + } + + public Vector> getDataVector() + { + Vector> v_datas = new Vector>(); + ResultSetMetaData rsmd; + + try + { + rsmd = this.resultSet.getMetaData(); + if (rsmd.getColumnCount() > 0) + { + while (this.resultSet.next()) + { + Vector vo_ligne = new Vector(); + for (int idCol = 1; idCol <= rsmd.getColumnCount(); idCol++) + vo_ligne.add(this.resultSet.getObject(idCol)); + v_datas.add(vo_ligne); + } + } + + if (v_datas.isEmpty()) + this.vs_anomalies.add("Aucune donn�e trouv�e!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return v_datas; + } + + public void traiterSQLException(SQLException ex) + { + String str_ex; + + str_ex = "********* SQLException *********\n"; + while (ex != null) + { + str_ex = "SQLState : " + ex.getSQLState() + "\n"; + str_ex += "Message : " + ex.getMessage() + "\n"; + str_ex += "------------------------------\n"; + this.vs_erreurs.add(str_ex); + + ex = ex.getNextException(); + } + } + + public void traiterWarning(SQLWarning warn) + { + String str_an; + + str_an = "********* SQLWarning *********\n"; + while (warn != null) + { + str_an = "SQLState : " + warn.getSQLState() + "\n"; + str_an += "Message : " + warn.getMessage() + "\n"; + str_an += "------------------------------\n"; + this.vs_anomalies.add(str_an); + + warn = warn.getNextWarning(); + } + } + + public Vector getErreurs() + { + return new Vector(this.vs_erreurs); + } + + public Vector getAnomalies() + { + return new Vector(this.vs_anomalies); + } + + public void effaceErreurs() + { + this.vs_erreurs.clear(); + } + + public void effaceAnomalies() + { + this.vs_anomalies.clear(); + } +} diff --git a/workspace/webapps/Matdelavegas/Java/GestionConnexion.java~ b/workspace/webapps/Matdelavegas/Java/GestionConnexion.java~ new file mode 100644 index 0000000..088e8a1 --- /dev/null +++ b/workspace/webapps/Matdelavegas/Java/GestionConnexion.java~ @@ -0,0 +1,359 @@ +package com.articles; + +import java.sql.*; +import java.util.Vector; + +enum OperationBDD +{ + OP_BDD_SELECTION, + OP_BDD_CREER_TABLE, + OP_BDD_SUPPR_TABLE +} + +public class GestionConnexion +{ + + private ParametresConnexion paramsConn; + + private Connection connection = null; + private Statement statement = null; + + private String requeteSQL = ""; + private ResultSet resultSet = null; + + private Vector vs_erreurs = null; + private Vector vs_anomalies = null; + + + public GestionConnexion() + throws ClassNotFoundException, Exception + { + + this.statement = null; + this.resultSet = null; + this.requeteSQL = ""; + + this.paramsConn = new ParametresConnexion(); + + this.vs_erreurs = new Vector(); + this.vs_anomalies = new Vector(); + + try + { + Class.forName(ParametresConnexion.CLASSE).newInstance(); + } + catch (ClassNotFoundException ex) + { + throw ex; + } + catch (Exception ex) + { + throw ex; + } + } + + + public void ouvrir(ParametresConnexion params) + { + if (params == null) + throw new NullPointerException(); + + this.paramsConn.CopierDepuis(params); + + this.ouvrir(); + } + + public void ouvrir() + { + try + { + this.fermerConnexion(); + + this.connection = DriverManager.getConnection(this.paramsConn.getUrl(), + this.paramsConn.Utilisateur, this.paramsConn.Pwd); + + this.traiterWarning(this.connection.getWarnings()); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerConnexion(); + } + } + + public boolean estOuverte() + { + boolean bOuverte = false; + + try + { + if (this.connection != null) + bOuverte = !this.connection.isClosed(); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return bOuverte; + } + + public void fermerRessourcesRequete() + { + try + { + if (this.resultSet != null) + { + this.resultSet.close(); + this.resultSet = null; + } + + if (this.statement != null) + { + this.statement.close(); + this.statement = null; + } + + this.requeteSQL = ""; + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public void fermerConnexion() + { + try + { + this.fermerRessourcesRequete(); + + if (this.connection != null) + { + this.connection.close(); + this.connection = null; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public boolean lancerRequeteSelection(String query) + { + boolean res = true; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + this.traiterWarning(this.statement.getWarnings()); + + this.resultSet = this.statement.executeQuery(query); + this.traiterWarning(this.resultSet.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = false; + } + + return res; + } + + public int lancerRequeteModifBDD(String query) + { + int res = 0; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + + res = this.statement.executeUpdate(query); + this.traiterWarning(this.statement.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = -1; + } + + return res; + } + + public ParametresConnexion getParametresConnexion() + { + return new ParametresConnexion(this.paramsConn); + } + + public String getRequeteSQL() + { + return this.requeteSQL; + } + + public Vector getInfosConnexion() + { + Vector vs_infosConn = new Vector(); + DatabaseMetaData dmd; + + try + { + if (this.estOuverte()) + { + vs_infosConn.add("Etat de la connexion : ouverte"); + vs_infosConn.add("------------------------------"); + + dmd = this.connection.getMetaData(); + + vs_infosConn.add("Connexion : " + dmd.getURL()); + vs_infosConn.add("Driver : " + dmd.getDriverName()); + vs_infosConn.add("Version : " + dmd.getDriverVersion()); + } + else + { + vs_infosConn.add("Etat de la connexion : ferm�e"); + vs_infosConn.add("------------------------------"); + + vs_infosConn.add("Connexion : " + this.paramsConn.getUrl()); + vs_infosConn.add("Utilisateur : " + this.paramsConn.Utilisateur); + vs_infosConn.add("Mot de passe : " + this.paramsConn.Pwd.length() + " caract�re(s)"); + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_infosConn; + } + + public Vector getNomsColonnes() + { + Vector vs_cols = new Vector(); + ResultSetMetaData rsmd; + + try + { + if (this.resultSet != null) + { + rsmd = this.resultSet.getMetaData(); + int nbrCols = rsmd.getColumnCount(); + + for (int idCol = 1; idCol <= nbrCols; idCol++) + if (rsmd.isSearchable(idCol)) + vs_cols.add(rsmd.getColumnName(idCol)); + } + else if (this.statement == null) + this.vs_anomalies.add("Vous n'avez pas encore lanc� la requ�te!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_cols; + } + + public Vector> getDataVector() + { + Vector> v_datas = new Vector>(); + ResultSetMetaData rsmd; + + try + { + rsmd = this.resultSet.getMetaData(); + if (rsmd.getColumnCount() > 0) + { + while (this.resultSet.next()) + { + Vector vo_ligne = new Vector(); + for (int idCol = 1; idCol <= rsmd.getColumnCount(); idCol++) + vo_ligne.add(this.resultSet.getObject(idCol)); + v_datas.add(vo_ligne); + } + } + + if (v_datas.isEmpty()) + this.vs_anomalies.add("Aucune donn�e trouv�e!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return v_datas; + } + + public void traiterSQLException(SQLException ex) + { + String str_ex; + + str_ex = "********* SQLException *********\n"; + while (ex != null) + { + str_ex = "SQLState : " + ex.getSQLState() + "\n"; + str_ex += "Message : " + ex.getMessage() + "\n"; + str_ex += "------------------------------\n"; + this.vs_erreurs.add(str_ex); + + ex = ex.getNextException(); + } + } + + public void traiterWarning(SQLWarning warn) + { + String str_an; + + str_an = "********* SQLWarning *********\n"; + while (warn != null) + { + str_an = "SQLState : " + warn.getSQLState() + "\n"; + str_an += "Message : " + warn.getMessage() + "\n"; + str_an += "------------------------------\n"; + this.vs_anomalies.add(str_an); + + warn = warn.getNextWarning(); + } + } + + public Vector getErreurs() + { + return new Vector(this.vs_erreurs); + } + + public Vector getAnomalies() + { + return new Vector(this.vs_anomalies); + } + + public void effaceErreurs() + { + this.vs_erreurs.clear(); + } + + public void effaceAnomalies() + { + this.vs_anomalies.clear(); + } +} diff --git a/workspace/webapps/Matdelavegas/Java/ListeArticles.java b/workspace/webapps/Matdelavegas/Java/ListeArticles.java new file mode 100644 index 0000000..70de912 --- /dev/null +++ b/workspace/webapps/Matdelavegas/Java/ListeArticles.java @@ -0,0 +1,84 @@ +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class ListeArticles + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + String sAction; + String sInfoArtRef; + String sPageAffichage; + Vector
    vArts = new Vector
    (); + Article tmpArt = null; + + sAction = request.getParameter("action"); + if (sAction.equals("info")) + { + sInfoArtRef = request.getParameter("artRef"); + + tmpArt = new Article(); + tmpArt.setRef(sInfoArtRef); + + request.setAttribute("art", tmpArt); + sPageAffichage = "/infos.jsp"; + } + else + { + for (int i=0; i<5; i++) + { + tmpArt = new Article(); + tmpArt.setRef("refArt"+i); + tmpArt.setCateg("cat"+i); + tmpArt.setDescription("desc"+1); + vArts.add(tmpArt); + } + + if (!vArts.isEmpty()) + { + request.setAttribute("articles", vArts); + + sPageAffichage = "/listeArticles.jsp"; + } + else + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur("Articles non disponibles")); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + } + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + public String getServletInfo() { + return "Gestion du panier"; + } +} diff --git a/workspace/webapps/Matdelavegas/Java/ListeArticles.java~ b/workspace/webapps/Matdelavegas/Java/ListeArticles.java~ new file mode 100644 index 0000000..7716d68 --- /dev/null +++ b/workspace/webapps/Matdelavegas/Java/ListeArticles.java~ @@ -0,0 +1,86 @@ +package com.servlets; + +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class ListeArticles + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + String sAction; + String sInfoArtRef; + String sPageAffichage; + Vector
    vArts = new Vector
    (); + Article tmpArt = null; + + sAction = request.getParameter("action"); + if (sAction.equals("info")) + { + sInfoArtRef = request.getParameter("artRef"); + + tmpArt = new Article(); + tmpArt.setRef(sInfoArtRef); + + request.setAttribute("art", tmpArt); + sPageAffichage = "/infos.jsp"; + } + else + { + for (int i=0; i<5; i++) + { + tmpArt = new Article(); + tmpArt.setRef("refArt"+i); + tmpArt.setCateg("cat"+i); + tmpArt.setDescription("desc"+1); + vArts.add(tmpArt); + } + + if (!vArts.isEmpty()) + { + request.setAttribute("articles", vArts); + + sPageAffichage = "/listeArticles.jsp"; + } + else + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur("Articles non disponibles")); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + } + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + public String getServletInfo() { + return "Gestion du panier"; + } +} diff --git a/workspace/webapps/Matdelavegas/Java/Panier.java b/workspace/webapps/Matdelavegas/Java/Panier.java new file mode 100644 index 0000000..dfcbfa4 --- /dev/null +++ b/workspace/webapps/Matdelavegas/Java/Panier.java @@ -0,0 +1,93 @@ +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.lang.*; +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class Panier + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + HttpSession session = request.getSession(true); + Vector vArtsPan = null; + Vector
    vArts = new Vector
    (); + Article tmpArt = null; + String sAction; + String sPageAffichage; + + GestionnairePanier panier = (GestionnairePanier)session.getAttribute("caddy"); + if ( panier == null ) + { + panier = new GestionnairePanier(); + + session.setAttribute("caddy", panier) ; + } + + sAction = request.getParameter("action"); + if (sAction == null) + { + ; + } + else if (sAction.equals("add")) + { + panier.ajouterAchat(request.getParameter("artRef"), Integer.parseInt(request.getParameter("artQuant"))); + } + else if (sAction.equals("del")) + { + panier.enleverAchat(request.getParameter("artRef")); + } + + vArtsPan = panier.donneContenu(); + + for (int i=0; i vArtsPan = null; + Vector
    vArts = new Vector
    (); + Article tmpArt = null; + String sAction; + String sPageAffichage; + + GestionnairePanier panier = (GestionnairePanier)session.getAttribute("caddy"); + if ( panier == null ) + { + panier = new GestionnairePanier(); + + session.setAttribute("caddy", panier) ; + } + + sAction = request.getParameter("action"); + if (sAction == null) + { + ; + } + else if (sAction.equals("add")) + { + panier.ajouterAchat(request.getParameter("artRef"), Integer.parseInt(request.getParameter("artQuant"))); + } + else if (sAction.equals("del")) + { + panier.enleverAchat(request.getParameter("artRef")); + } + + vArtsPan = panier.donneContenu(); + + for (int i=0; i +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + Contenu du Panier + + + +

    Contenu du Panier

    +

    + +
    + + + + + + + + + + + + + + + + + + +
    DescriptionComplmntPanier
    + + + + + + + + + + + + + + + + + + +
    Référence : ${artRef.ref}
    Marque : ${artRef.marque}
    Modèle : ${artRef.modele}
    Description : ${artRef.description}
    Prix : ${artRef.prix}
    +
    + Quantit : ${artRef.quantite} + + ajouter au panier +
    + +
    + + Continuez vos achats + + diff --git a/workspace/webapps/Matdelavegas/listeArticles.jsp b/workspace/webapps/Matdelavegas/listeArticles.jsp new file mode 100644 index 0000000..d9e4398 --- /dev/null +++ b/workspace/webapps/Matdelavegas/listeArticles.jsp @@ -0,0 +1,58 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> + + + + + + + + Contenu du Panier + + + +

    Liste des articles

    +

    + + + + + + + + + + + + + + + +
    DescriptionComplment
    + + + + + + + + + + + + + + + + + + +
    Référence : ${artRef.ref}
    Marque : ${artRef.marque}
    Modèle : ${artRef.modele}
    Description : ${artRef.description}
    Prix : ${artRef.prix}
    +
    + infos +
    + + + \ No newline at end of file diff --git a/workspace/webapps/Matdelavegas/panierVide.jsp b/workspace/webapps/Matdelavegas/panierVide.jsp new file mode 100644 index 0000000..b043b41 --- /dev/null +++ b/workspace/webapps/Matdelavegas/panierVide.jsp @@ -0,0 +1,20 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> + + + + + + + + Panier + + + +

    Panier

    +

    panier vide

    + Continuez vos achats + + \ No newline at end of file diff --git a/workspace/webapps/Matdelavegas/penser au c s s b/workspace/webapps/Matdelavegas/penser au c s s new file mode 100644 index 0000000..8d1c8b6 --- /dev/null +++ b/workspace/webapps/Matdelavegas/penser au c s s @@ -0,0 +1 @@ + diff --git a/workspace/webapps/WEB-INF/classes/Article.java b/workspace/webapps/WEB-INF/classes/Article.java new file mode 100644 index 0000000..eef381f --- /dev/null +++ b/workspace/webapps/WEB-INF/classes/Article.java @@ -0,0 +1,78 @@ +public class Article +{ + private String ref = ""; + private String categ = ""; + private String marque = ""; + private String modele = ""; + private double prix = 0; + private String photo = ""; + private String description = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + public String getCateg() + { + return this.categ; + } + public String getMarque() + { + return this.marque; + } + public String getModele() + { + return this.modele; + } + public double getPrix() + { + return this.prix; + } + public String getPhoto() + { + return this.photo; + } + public String getDescription() + { + return this.description; + } + + public void setRef(String ref) + { + this.ref = ref; + } + public void setCateg(String categ) + { + this.categ = categ; + } + public void setMarque(String marque) + { + this.marque = marque; + } + public void setModele(String modele) + { + this.modele = modele; + } + public void setPrix(double prix) + { + this.prix = prix; + } + public void setPhoto(String photo) + { + this.photo = photo; + } + public void setDescription(String description) + { + this.description = description; + } + + public int getQuantite() + { + return this.quantite; + } + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/workspace/webapps/WEB-INF/classes/ArticlePanier.java b/workspace/webapps/WEB-INF/classes/ArticlePanier.java new file mode 100644 index 0000000..6e68ca0 --- /dev/null +++ b/workspace/webapps/WEB-INF/classes/ArticlePanier.java @@ -0,0 +1,25 @@ +public class ArticlePanier +{ + private String ref = ""; + private int quantite = 0; + + public String getRef() + { + return this.ref; + } + + public void setRef(String ref) + { + this.ref = ref; + } + + public int getQuantite() + { + return this.quantite; + } + + public void setQuantite(int quantite) + { + this.quantite = quantite; + } +} diff --git a/workspace/webapps/WEB-INF/classes/ArticlesTag.java b/workspace/webapps/WEB-INF/classes/ArticlesTag.java new file mode 100644 index 0000000..5f34425 --- /dev/null +++ b/workspace/webapps/WEB-INF/classes/ArticlesTag.java @@ -0,0 +1,35 @@ +import javax.servlet.jsp.JspException; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import java.io.IOException; +import java.util.Vector; +import com.articles.Article; + +public class ArticlesTag + extends SimpleTagSupport +{ + private String var; + + public void doTag() + throws JspException, IOException + { + Vector
    vArts = (Vector
    )getJspContext().getAttribute("articles"); + + if (vArts == null) + { + getJspContext().setAttribute(this.var, new Article() ); + getJspBody().invoke(null); + return; + } + + for (int i=0; i vs_erreurs = null; + private Vector vs_anomalies = null; + + + public GestionConnexion() + throws ClassNotFoundException, Exception + { + + this.statement = null; + this.resultSet = null; + this.requeteSQL = ""; + + this.paramsConn = new ParametresConnexion(); + + this.vs_erreurs = new Vector(); + this.vs_anomalies = new Vector(); + + try + { + Class.forName(ParametresConnexion.CLASSE).newInstance(); + } + catch (ClassNotFoundException ex) + { + throw ex; + } + catch (Exception ex) + { + throw ex; + } + } + + + public void ouvrir(ParametresConnexion params) + { + if (params == null) + throw new NullPointerException(); + + this.paramsConn.CopierDepuis(params); + + this.ouvrir(); + } + + public void ouvrir() + { + try + { + this.fermerConnexion(); + + this.connection = DriverManager.getConnection(this.paramsConn.getUrl(), + this.paramsConn.Utilisateur, this.paramsConn.Pwd); + + this.traiterWarning(this.connection.getWarnings()); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerConnexion(); + } + } + + public boolean estOuverte() + { + boolean bOuverte = false; + + try + { + if (this.connection != null) + bOuverte = !this.connection.isClosed(); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return bOuverte; + } + + public void fermerRessourcesRequete() + { + try + { + if (this.resultSet != null) + { + this.resultSet.close(); + this.resultSet = null; + } + + if (this.statement != null) + { + this.statement.close(); + this.statement = null; + } + + this.requeteSQL = ""; + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public void fermerConnexion() + { + try + { + this.fermerRessourcesRequete(); + + if (this.connection != null) + { + this.connection.close(); + this.connection = null; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + } + + public boolean lancerRequeteSelection(String query) + { + boolean res = true; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + this.traiterWarning(this.statement.getWarnings()); + + this.resultSet = this.statement.executeQuery(query); + this.traiterWarning(this.resultSet.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = false; + } + + return res; + } + + public int lancerRequeteModifBDD(String query) + { + int res = 0; + + try + { + if (this.connection != null) + { + this.fermerRessourcesRequete(); + + this.statement = this.connection.createStatement(); + + res = this.statement.executeUpdate(query); + this.traiterWarning(this.statement.getWarnings()); + + this.requeteSQL = query; + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + + this.fermerRessourcesRequete(); + + res = -1; + } + + return res; + } + + public ParametresConnexion getParametresConnexion() + { + return new ParametresConnexion(this.paramsConn); + } + + public String getRequeteSQL() + { + return this.requeteSQL; + } + + public Vector getInfosConnexion() + { + Vector vs_infosConn = new Vector(); + DatabaseMetaData dmd; + + try + { + if (this.estOuverte()) + { + vs_infosConn.add("Etat de la connexion : ouverte"); + vs_infosConn.add("------------------------------"); + + dmd = this.connection.getMetaData(); + + vs_infosConn.add("Connexion : " + dmd.getURL()); + vs_infosConn.add("Driver : " + dmd.getDriverName()); + vs_infosConn.add("Version : " + dmd.getDriverVersion()); + } + else + { + vs_infosConn.add("Etat de la connexion : ferm�e"); + vs_infosConn.add("------------------------------"); + + vs_infosConn.add("Connexion : " + this.paramsConn.getUrl()); + vs_infosConn.add("Utilisateur : " + this.paramsConn.Utilisateur); + vs_infosConn.add("Mot de passe : " + this.paramsConn.Pwd.length() + " caract�re(s)"); + } + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_infosConn; + } + + public Vector getNomsColonnes() + { + Vector vs_cols = new Vector(); + ResultSetMetaData rsmd; + + try + { + if (this.resultSet != null) + { + rsmd = this.resultSet.getMetaData(); + int nbrCols = rsmd.getColumnCount(); + + for (int idCol = 1; idCol <= nbrCols; idCol++) + if (rsmd.isSearchable(idCol)) + vs_cols.add(rsmd.getColumnName(idCol)); + } + else if (this.statement == null) + this.vs_anomalies.add("Vous n'avez pas encore lanc� la requ�te!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return vs_cols; + } + + public Vector> getDataVector() + { + Vector> v_datas = new Vector>(); + ResultSetMetaData rsmd; + + try + { + rsmd = this.resultSet.getMetaData(); + if (rsmd.getColumnCount() > 0) + { + while (this.resultSet.next()) + { + Vector vo_ligne = new Vector(); + for (int idCol = 1; idCol <= rsmd.getColumnCount(); idCol++) + vo_ligne.add(this.resultSet.getObject(idCol)); + v_datas.add(vo_ligne); + } + } + + if (v_datas.isEmpty()) + this.vs_anomalies.add("Aucune donn�e trouv�e!!"); + } + catch (SQLException ex) + { + this.traiterSQLException(ex); + } + + return v_datas; + } + + public void traiterSQLException(SQLException ex) + { + String str_ex; + + str_ex = "********* SQLException *********\n"; + while (ex != null) + { + str_ex = "SQLState : " + ex.getSQLState() + "\n"; + str_ex += "Message : " + ex.getMessage() + "\n"; + str_ex += "------------------------------\n"; + this.vs_erreurs.add(str_ex); + + ex = ex.getNextException(); + } + } + + public void traiterWarning(SQLWarning warn) + { + String str_an; + + str_an = "********* SQLWarning *********\n"; + while (warn != null) + { + str_an = "SQLState : " + warn.getSQLState() + "\n"; + str_an += "Message : " + warn.getMessage() + "\n"; + str_an += "------------------------------\n"; + this.vs_anomalies.add(str_an); + + warn = warn.getNextWarning(); + } + } + + public Vector getErreurs() + { + return new Vector(this.vs_erreurs); + } + + public Vector getAnomalies() + { + return new Vector(this.vs_anomalies); + } + + public void effaceErreurs() + { + this.vs_erreurs.clear(); + } + + public void effaceAnomalies() + { + this.vs_anomalies.clear(); + } +} diff --git a/workspace/webapps/WEB-INF/classes/ListeArticles.java b/workspace/webapps/WEB-INF/classes/ListeArticles.java new file mode 100644 index 0000000..70de912 --- /dev/null +++ b/workspace/webapps/WEB-INF/classes/ListeArticles.java @@ -0,0 +1,84 @@ +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class ListeArticles + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + String sAction; + String sInfoArtRef; + String sPageAffichage; + Vector
    vArts = new Vector
    (); + Article tmpArt = null; + + sAction = request.getParameter("action"); + if (sAction.equals("info")) + { + sInfoArtRef = request.getParameter("artRef"); + + tmpArt = new Article(); + tmpArt.setRef(sInfoArtRef); + + request.setAttribute("art", tmpArt); + sPageAffichage = "/infos.jsp"; + } + else + { + for (int i=0; i<5; i++) + { + tmpArt = new Article(); + tmpArt.setRef("refArt"+i); + tmpArt.setCateg("cat"+i); + tmpArt.setDescription("desc"+1); + vArts.add(tmpArt); + } + + if (!vArts.isEmpty()) + { + request.setAttribute("articles", vArts); + + sPageAffichage = "/listeArticles.jsp"; + } + else + { + Vector vErrs = new Vector(); + vErrs.add(new Erreur("Articles non disponibles")); + request.setAttribute("erreurs", vErrs); + + sPageAffichage = "/erreurs.jsp"; + } + } + + ServletContext ctx = getServletContext(); + RequestDispatcher rd = ctx.getRequestDispatcher(sPageAffichage); + rd.forward(request,response); + } + + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + this.traiteRequeteHttp(request, response); + } + + public String getServletInfo() { + return "Gestion du panier"; + } +} diff --git a/workspace/webapps/WEB-INF/classes/MesHaricots/utilisateur.class b/workspace/webapps/WEB-INF/classes/MesHaricots/utilisateur.class new file mode 100644 index 0000000..943b95b Binary files /dev/null and b/workspace/webapps/WEB-INF/classes/MesHaricots/utilisateur.class differ diff --git a/workspace/webapps/WEB-INF/classes/MesHaricots/utilisateur.java b/workspace/webapps/WEB-INF/classes/MesHaricots/utilisateur.java new file mode 100644 index 0000000..f505425 --- /dev/null +++ b/workspace/webapps/WEB-INF/classes/MesHaricots/utilisateur.java @@ -0,0 +1,18 @@ +package MesHaricots; + +public class utilisateur { + + private String identifiant; + + public utilisateur() { + } + + + public String getId() { + return identifiant; + } + + public void setId(String id) { + this.identifiant = id; + } +} diff --git a/workspace/webapps/WEB-INF/classes/Panier.java b/workspace/webapps/WEB-INF/classes/Panier.java new file mode 100644 index 0000000..dfcbfa4 --- /dev/null +++ b/workspace/webapps/WEB-INF/classes/Panier.java @@ -0,0 +1,93 @@ +import java.io.*; + +import javax.servlet.*; +import javax.servlet.http.*; + +import java.lang.*; +import java.util.Vector; +import com.articles.Article; +import com.articles.ArticlePanier; +import com.gestionnaires.Erreur; +import com.gestionnaires.GestionnairePanier; + +public class Panier + extends HttpServlet +{ + com.gestionnaires.GestionnaireArticles gestArts = null; + + private void traiteRequeteHttp(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException + { + HttpSession session = request.getSession(true); + Vector vArtsPan = null; + Vector
    vArts = new Vector
    (); + Article tmpArt = null; + String sAction; + String sPageAffichage; + + GestionnairePanier panier = (GestionnairePanier)session.getAttribute("caddy"); + if ( panier == null ) + { + panier = new GestionnairePanier(); + + session.setAttribute("caddy", panier) ; + } + + sAction = request.getParameter("action"); + if (sAction == null) + { + ; + } + else if (sAction.equals("add")) + { + panier.ajouterAchat(request.getParameter("artRef"), Integer.parseInt(request.getParameter("artQuant"))); + } + else if (sAction.equals("del")) + { + panier.enleverAchat(request.getParameter("artRef")); + } + + vArtsPan = panier.donneContenu(); + + for (int i=0; i + + XML LIBRARY + <%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %> + + FMT LIBRARY + <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> + + SQL LIBRARY + <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %> + + FUNCTIONS LIBRARY + <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> + +--------------------------------------------------------------------------- +COMPATIBILITY + +The 1.1 version of the Standard Taglib has been tested under Tomcat 5.0.3 +and should work in any compliant JSP 2.0 container. + +--------------------------------------------------------------------------- +COMMENTS AND QUESTIONS + +Please join the taglibs-user@jakarta.apache.org mailing list if you have +general usage questions about JSTL. + +Comments about the JSTL specification itself should be sent to +jsr-52-comments@jcp.org. + +Enjoy! + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/GettingStarted.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/GettingStarted.html new file mode 100644 index 0000000..3561998 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/GettingStarted.html @@ -0,0 +1,343 @@ + + +Getting Started + + + + +

    Getting Started with the Standard Tag Library

    + +

    This document describes how to get up and running quickly with the +Standard Taglib, an implementation of the Java Server Pages™ Standard +Tag Library (JSTL). This document may be useful to page authors and tag +developers who are interested in JSTL's functionality. Using the +"standard-examples" application is also a great way to familiarize +yourself with JSTL's functionality and use.

    + +
    +

    Introduction

    + + +

    What is JSTL? Where does it come from?

    + +

    JSTL is the Java Server Pages Standard Tag Library. It is an +effort of the Java Community Process (JCP) and comes out of the +JSR-052 expert group.

    + + +

    What does JSTL do?

    + +

    JSTL encapsulates, as simple tags, core functionality common to many +JSP applications. For example, instead of suggesting that you iterate +over lists using a scriptlet or different iteration tags from +numerous vendors, JSTL defines a standard <forEach> tag that works +the same everywhere.

    + +

    This standardization lets you learn a single tag and use it on multiple +JSP containers. Also, when tags are standard, containers can recognize +them and optimize their implementations.

    + +

    JSTL provides support for core iteration +and control-flow features, text inclusion, internationalizaton-capable +formatting tags, and XML-manipulation tags. The expression language that +JSTL defined in the 1.0 version of the specification is now an integral part +of the JSP 2.0 specification. +Developers may also be interested in JSTL's current extensibility +mechanisms; JSTL currently provides a framework for integrating custom +tags with JSTL tags.

    + +

    What has changed in this Standard taglib release?

    +

    Please see the Release Notes document for + information on any release changes.

    + +

    How can I learn more about JSTL

    + +

    Sun's official JSTL page at http://java.sun.com/products/jstl lists books and other +resources that will help you learn JSTL.

    + +
    +

    Getting started quickly

    + +

    JSTL 1.1 requires a JSP 2.0 container. We recommend you +test the Standard Taglib with Tomcat 5.x. JSTL 1.0 only required +a JSP 1.2 container and is also available for download from +Jakarta Taglibs.

    + +

    To install Tomcat, follow the instructions at http://jakarta.apache.org/tomcat. + +

    To use the Standard Taglib from its Jakarta Taglibs distribution, +simply copy the JAR files in the distribution's 'lib' directory to your +application's WEB-INF/lib directory. The following JAR files are included +in the Standard Taglib distribution and need to be copied to your +application's WEB-INF/lib directory:

    + + + + + + + + + + + + + + + + + +
    NameDescriptionJar File Name
    + + +
    JSTL API classes
    +
    +
    jstl.jar
    +
    + + +
    Standard Taglib JSTL implementation classes
    +
    +
    standard.jar
    +
    + +

    The standard tag library also has the following dependencies:

    +
      +
    • JAXP 1.2
    • +
    • Xalan 2.5
    • +
    • JDBC Standard Extension 2.0
    • +
    + +

    +However, since all of these dependencies are included in J2SE 1.4.2 and higher, +it is therefore recommended to use J2SE 1.4.2 or higher to avoid having to +worry about these other dependencies. +

    + +

    +If the java platform under which you run your JSP container does not +provide these dependencies, they must be made available either globally +to all web-applications by your container, or individually within the +WEB-INF/lib directory of your web-application.

    + +

    +For convenience, these jar files have been included in directory +lib/old-dependencies of this distribution.

    + + + + + + + + + + + + + + + + + + + + + + +
    NameDescriptionJar File Name
    + + +
    +

    JDBC implementation classes.

    +

    Already present in J2SE 1.4.

    +
    +
    +
    jdbc2_0-stdext.jar
    +
    + + +
    Standard Taglib requires a JAXP 1.2 compliant parser
    +
    +
    + + + + + +
    example of JAXP 1.2 impl classes +
      +
    • jaxp-api.jar
    • +
    • dom.jar
    • +
    • sax.jar
    • +
    • xercesImpl.jar
    • +
    +
    +
    +
    + + +

    Apache XML Xalan XSLT
    + Transformation Processor.
    +

    +
    +
    xalan.jar
    +
    + + + +

    Multiple tag libraries

    + +

    +The constituent tag libraries of Standard Taglib are as follows: +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Funtional AreaURIPrefixExample
    Corehttp://java.sun.com/jsp/jstl/core +
    c
    +
    <c:tagname ...>
    XML processinghttp://java.sun.com/jsp/jstl/xml +
    x
    +
    <x:tagname ...>
    I18N capable formattinghttp://java.sun.com/jsp/jstl/fmt +
    fmt
    +
    <fmt:tagname ...>
    Database access (SQL)http://java.sun.com/jsp/jstl/sql +
    sql
    +
    <sql:tagname ...>
    Functionshttp://java.sun.com/jsp/jstl/functions +
    fn
    +
    fn:functionName(...)
    + +

    Using the Standard Taglib libraries is simple; you simply need to import +them into your JSP pages using the taglib directive. For +instance, to import the 'core' JSTL library into your page, you would +include the following line at the top of your JSP page, as +follows:

    + +
    +    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    +
    + +

    Expression language

    + +

    The EL makes it easy for page authors to +access and manipulate application data. +For an overview of the EL, see +Chapter 3 of the JSTL Specification.

    + +

    Topics covered in JSTL

    + +

    As we mentioned above, JSTL includes core tags to support iteration, +conditionals, and expression-language support. It also supports EL functions +for string manipulation. For more information on +precisely how these tags work, you should read the JSTL specification. Here, we +just offer a quick roadmap of each feature in order to help orient +you.

    + +
    +
    Iteration
    +
    The core iteration tag is <forEach>, which iterates over most collections + and similar objects you'd think to iterate over. <forTokens> lets you + iterate over tokens in a String object; it lets you specify the String + and the delimiters.
    +
    Conditionals
    +
    JSTL supports a simple conditional <if> tag along with a collection + of tags -- <choose>, <when>, and <otherwise> -- that support + mutually exclusive conditionals. These latter three tags let you implement + a typical if/else if/else if/else structure.
    +
    Expression language
    +
    JSTL provides a few tags to facilitate use of the expression language. <out> + prints out the value of a particular expression in the current EL, similar + to the way that the scriptlet expression (<%= ... %>) syntax prints + out the value of a expression in the scripting language (typically Java). + <set> lets you set a scoped attribute (e.g., a value in the request, + page, session, or application scopes) with the value of an expression.
    +
    Text inclusion
    +
    JSP supports the jsp:include tag, but this standard action is limited + in that it only supports relative URLs. JSTL introduces the c:import + tag, which lets you retrieve absolute URLs. For instance, you can use c:import + to retrieve information from the web using HTTP URLs, or from a file server + using an FTP URL. The tag also has some advanced support for performance optimizations, + avoiding unnecessary buffering of data that's retrieved.
    +
    I18N-capable text formatting
    +
    Formatting data is one of the key tasks in many JSP pages. JSTL introduces + tags to support data formatting and parsing. These tags rely on convenient + machinery to support internationalized applications.
    +
    XML manipulation
    +
    You can't look anywhere these days without seeing XML, and JSTL gives you + convenient support for manipulating it from your JSP pages. Parse documents, + use XPath to select content, and perform XSLT transformations from within + your JSP pages.
    +
    Database access
    +
    Easily access relational databases using the SQL actions. You can perform database queries, easily access results, perform updates, and group several operations into a transaction.
    +
    Functions
    +
    String manipulations can be performed using the functions provided in +JSTL.
    +
     
    +
    + +

    For tag developers...

    + +

    Developers of custom tags should also read the JSTL specification. JSTL +defines some abstract classes that assist with rapid development of tags +and promote integration of custom tags with JSTL's tag set.

    + +

    For instance, extending +javax.servlet.jsp.jstl.core.ConditionalTagSupport lets you write a +conditional tag by merely implementing a single method that returns a +boolean value correspondent with your tag's desired conditional +behavior; also, this base class promotes JSTL's recommended model of +conditional-tag design.

    + +

    Similarly, javax.servlet.jsp.jstl.core.IteratorTagSupport lets +you easily implement iteration tags. The handlers for the <forEach> +and <forTokens> tags extend this class and thus implement the +javax.servlet.jsp.jstl.core.IteratorTag interface, which provides +a well-defined mechanism for iteration tags to communicate with custom +subtags you can write. See the "standard-examples" application for one +example of how you might use such custom subtags.

    + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/ReleaseNotes.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/ReleaseNotes.html new file mode 100644 index 0000000..76f032c --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/ReleaseNotes.html @@ -0,0 +1,750 @@ + + +Standard 1.1 Release Notes + + + + +
    +

    +Standard: An Implementation of the JSP™ Standard Tag Library (JSTL)
    +

    +Version: 1.1.2
    +Release Notes +

    +
    + +

    The Standard 1.1.2 release is an implementation of the JSTL 1.1 Specification.

    + +

    The Standard Taglib, which is hosted at Apache, is used as the source repository for the JSTL reference implementation supplied by Sun Microsystems, Inc.

    +
    + +

    Release History

    + + +
    October 2004 • Standard 1.1.2
    +

    The latest implementation is available from the Nightly Builds.

    +
    Bugs fixed since Standard 1.1.1 Taglib release:
    +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + +
      +
      + Bug Id
      +
      Summary
      + + +

      Close statement created in update tag. It is good programming pro-active to close statements as soon as they are finished even though they will also be closed when the connection that created them is closed.

      +
      + + +

      According to the W3C document the schemaLocation declaration is made up of a pair of URI references. One defines the namespace name and the other is a hint as to the location of the schema document. The space in the schemaLocation definition separates the two declarations.

      +

      For a complete explanation you can take a look at Section 4.3.2 of W3C Xml Schema Document +

      In the JSTL case the location is not an absolute URI which can be confusing especially to some IDE's. Went ahead and changed it to be an absolute URI pointing to the schema document location.

      +
      + + +

      Fixed implementation so that it compiles under J2SE 5.0. Changed the J2SE 5.0 reserved keyword "enum" to "enum_".

      +

      NOTE: the JAXP 1.2 classes will need to be specified with J2SE 5.0 since the the 5.0 bundled JAXP 1.3 packages have been moved around and re-named.

      +
      + + +

      Followed the BluePrints Guidelines for web application project structure. Most IDEs assume the BluePrints structure so abiding by these guidelines will help them integrate the examples.

      +

      The following changes were made to the examples directory structure:

      +
        +
      • moved the examples deployment descriptor to the web/WEB-INF directory out from conf
      • +
      • moved the jstl-examples.tld to web/WEB-INF/tlds
      • +
      • updated build.xml to reflect new directory structure
      • +
      +
      + + +

      Fixed XPath Expression evaluation so that the expressions are evaluated relative to the document Node as opposed to the document Root.

      +
      +
      +
    +
    +

    Other changes and additions:

    +
      +
    • In JstlUriResolver when external entitities are resolved the 'base' varies from different Xalan implementations. Fixed how base is handled.
    • +
    +
    + + +
    July 2004 • Standard 1.1.1

    +
    Bugs fixed since Standard 1.1.0 Taglib release:
    +
      +
      + + + + + + + + + + + + + + + + + + + + + +
      +
      + Bug Id
      +
      Summary
      + + Substituted static values where Boolean objects were created.
      + + Optimization of the xml escaping used by JSTL Functions and the out tag handlers.
      + + Removed synchronization on getEvaluatorByName() method. Now synchronizing on nameMap and allowing reads to occur without blocking. Should be a performance improvement.
      + + Remove quotes from prefix when throwing an exception
      +
      +
    +
    +

    Other changes and additions:

    +
      +
    • Fixed Core TLV to allow EL and RT based actions to be mixed as allowed by the JSTL specification.
    • +
    • Trimmed sql dataSource attribute tokens so any spaces in the comma delimited list are ignored.
    • +
    • Added Junit and Cactus testing framework. Documentation is in README_src.txt available in the source distribution.
    • +
    • Updated licenses to the new Apache License, Version 2.0.
    • +
    +
    +
    January 2004 • Standard 1.1.0 +

    +This is a complete implementation of the JSTL 1.1 Maintenance Release. +

    +

    Bugs fixed since Standard 1.1.0-B1 Taglib release:
    +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      +
      Bug Id
      +
      Summary
      + + Illegal scope attribute without var in "fmt:setLocale" tag
      + + ResultImpl should implement java.io.Serializable
      + + IteratorTagSupport example is missing
      + + tag url generate invalid result for root context
      + + accept-language header missing and fallback locale
      + + permittedTaglibs.tld and scriptfree.tld do not validate in xml parser
      + + Xml filter example doesn't work
      + + <c:out> doesn't work properly when tag handlers are pooling
      +
      +
    + +
    +

    Other changes and additions:

    +
      +
    • Regarding bug #24892, it's important to note that relying on the serializability of Result objects might not be portable across different implementations of the JSTL spec. Also, ResultImpl will be serializable only if the values returned by the ResultSet are serializable too, which depends on the JDBC driver being used. +
    +
    + + +
    September 2003 • Standard 1.1.0-B1
    +

    +This is a complete implementation of the JSTL 1.1 Maintenance Release. +

    +

    Bugs fixed since Standard 1.0.3 Taglib release:
    +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      +
      Bug Id
      +
      Summary
      + + +fmt:formatNumber now removes the scoped variable when the +value is null or empty. +
      + + +c:param now encodes URL with URLEncoder.encode(str, encoding) +
      + + +PreparedStatement used in sql:query closed immediately after use to avoid leaks. +
      + + +Advisory character encoding now properly fetched from "charset" attribute +of "content-type" header (required change to spec)
      + + +Fixed processing of Locale when variant is used. +
      + + +<sql:setDataSource> did not allow the specification of a scope without +a var attribute to set the SQl DataSource configuration setting. Fixed. +
      + + +Page scope not properly set with <c:if>. Fixed. +
      + + +Config.find() fails on invalidated sessions. Fixed. +
      + + +Consistent use JspTagException: (1) always include original exception when +available. (2) use ex.toString() instead of getMessage(). +
      + + +Type conversion rules now properly applied when setting a bean property using +<c:set>. +
      +
      +
    + +
    +

    Other changes and additions:

    +
      +
    • Added Version class to easily tell the version of the jar file.
    • +
    • Added a few sample cases to highlight url rewriting and encoding.
    • +
    • New sample JSP page demoing I18N-Formatting capabilities.
    • +
    • Our dependency on jaxen and saxpath has been removed by switching + our XPath support to Xalan.
    • +
    • Added attribute descriptions in the TLDs.
    • +
    • javax.servlet.jsp.jstl.sql.ResultImpl now implements java.io.Serializable, +and insert a comment in the Release Notes stating that relying on the +serializability of Result objects might not be portable across +different implementations of the JSTL spec +
    +
    + + +
    February 2003 • Standard 1.0.3
    +

    Bugs fixed since Standard 1.0.2 Taglib release:
    +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      +
      Bug Id
      +
      Summary
      + + + Tag-handler reuse discovered a bug in 's processing of default + values. This bug was fixed by initializing an instance variable + in doStartTag(). +
      + + We revisited this bug prompted by a +report from a user of the J2EE RI and adjusted the EL implementation to +accommodate the J2EE RI's default security restrictions. +
      + + + Minor display-related bug in ScriptFreeTLV +
      + + +There still was a bug when the fmt:message tag was pooled +and reused, and a bundle was not specified explicitely. +
      + + +Added <uri> definition in WEB-INF/jstl-examples.tld for +/jstl-examples-taglib. +
      + + +If is used to set a property of a bean, and a setter method +does not exist for that bean, a NullPointerException was thrown. +A JspException with an appropriate error message is now thrown instead. +
      + + +The tag handler for <fmt:requestEncoding> was not resetting the encoding value it picks up from the +javax.servlet.jsp.jstl.fmt.request.charset session attribute between invokations. +
      + + +We now expose the exception object thrown by a bean property evaluated by the +EL (not just the exception message). +
      + + +Improved the exception message when there is a failure accessing an absolute URL. +
      + + +Fixed minor typos in standard-examples. +
      +
      +
    +
    +

    Other changes and additions:

    +
      +
    • Fixed minor typos in JSTL API Javadoc documentation.
    • +
    • Added TLV examples (scriptFree and PermittedTaglibs)
    • +
    • Fixed minor typo on standard/examples/web/xml/ForEach.jsp
    • +
    • Improved Japanese localization
    • +
    +
    + +
    13 October 2002 • Standard 1.0.2 Taglib released
    +

    +

    Bugs fixed since Standard 1.0.1 Taglib release:
    +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      +
      Bug Id
      +
      Summary
      + + The fmt tags used to store the BodyContent + from one tag in the same field variable they use for value. This caused problems + in a container that supported tag re-use since the old BodyContent was used.
      + + The xml:transform tag can now be used with a series of imported + stylesheets.
      + + There was a bug in the EL grammar that caused attribute values like "$${X}" to be parsed as a single string instead of a string followed by an expression.
      + + The <c:url> value attribute and the + <c:redirect> url attribute are required as defined in the JSTL specification.
      + + According to the JDBC specification, a null can be passed to the PreparedStatement.setObject() and the parameter will be set to JDBC NULL properly. The broken PreparedStatment.setNull() call has been removed. +
      + + There was a typographical error in our sample TLDs for the PermittedTaglibTLV and ScriptFreeTLV validators. +
      +
      +
    +
    +

    Other changes and additions:

    +
      +
    • Wrapped number formatting examples that use browser-based locale inside . Now the parse + exception that occurs with "de_DE" locale due to a bug in java.text.NumberFormat + (Bugtraq bugid: 4709840) can be documented appropriately. +
    • +
    • The "jsp20el.build" target was modified so that the JSTP 2.0 EL packages were renamed to avoid potential + JSTL 1.0 conflict. +
    • +
    • Root cause now exposed when an EL expression evaluation fails. +
    • +
    • New regression tests for the EL parser.
    • +
    +
    + +
    26 July 2002 • Standard 1.0.1 Taglib released
    +

    Bugs fixed since Standard 1.0 Taglib +Final release:
    + +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      +
      Bug Id
      +
      Summary
      + + Fixed 'xslt' attribute for <x:transform> + to only accept an
      + object exported by <x:parse> if it's a String, + Reader, or
      + javax.xml.transform.Source.
      + + Added "UNICODE_INPUT = true" + to the ELParser.jj
      + options so that non-ascii values can be parsed.
      + + GettingStarted.html guide updated to include + all jar dependency information.
      + + SQL examples updated to allow for the inputting of dataSource + username and password.
      + + c:url tag no longer prepends path to page + relative URLs.
      + + Added a <welcome-file-list> element + to the example application's deployment descriptor. Modified standard-doc + in a corresponding fashion.
      + + +

      BundleSupport modified to use the current context classloader + instead of the classloader that loaded it. This change was necessary + in order for BundleSupport to properly find resources + in a web application.

      +

      The SQL DataSourceWrapper also modified to properly + use classloader delegation to load resources.

      +
      + + Fixed incorrect x:param error message.
      +
      +
    +
    +

    Other changes and additions:

    +
      +
    • Improved x:parse action's EntityResolver to + work with JAXP 1.2. URI's normalized so they can be processed consistently.
    • +
    • The JSTL 1.0 Specification + has all the official functional descriptions; out of date documentation + removed.
    • +
    • Hard-coded and browser-based locales separated into distinct pages in + order to avoid conflicting response encodings.
    • +
    • Formatting web application examples updated to use EL to access request + parameters.
    • +
    • query and update tags modified to catch a more + generic JDBC driver implementation generated exception when it occurs and + provide a meaningful error message.
    • +
    • DateParam tag modified to have an empty body content as defined + by the spec.
    • +
    • PreparedStatement.setNull(parameterIndex, java.sql.Types.NULL) + now used when specifying null parameter values.
    • +
    • XPath performance improved by caching parsed representations of XPath + expressions.
    • +
    • Support for relative system ID's in <x:transform> simplified.
    • +
    • Improved TimeZoneSupport javadocs
    • +
    • Added Japanese resources
    • +
    • Added support for JSP + 2.0 functionality in the JSTL EL. By default, none of the new features + are enabled in order to comply with the JSTL + 1.0 Specification. The functionality will be triggered by a particular + way of calling the interpreter. +
        +
      • Created new new "jsp20" parser directory.
      • +
      • Added new "jsp20el" build target for JSP + 2.0 specific features.
      • +
      • Added copy of *.properties to JSP + 2.0 EL jar.
      • +
      +
    • +
    +
    +
    21 Jun 2002
    +
    Final Standard Taglib 1.0 release
    + +

    17 Jun 2002
    +
    Standard Taglib RC1 released.
    +
     
    + +
    19 Apr 2002
    +
    Standard 1.0 Beta2 released, which is compliant with the JSTL Proposed Final Draft.
    + +

    12 Mar 2002
    +
    Standard 1.0 Beta1 released, which is compliant with the JSTL Public Review Draft.
    + +

    12 Dec 2001
    +
    Standard 1.0 EA3 released. Version includes the following +changes and additions: +
      +
    • Introduction of SQL tags ("sql:*" library).
    • +
    • A performance improvement to the XML "transform" tag.
    • +
    • Minor changes and bug fixes to the i18n and XML libraries.
    • +
    • Distribution JAR files are now 'standard.jar' (RI) and 'jstl.jar' + (API).
    • +
    • showSource.jsp no longer depends on raw file I/O (and so + should work even when standard-examples is deployed as a WAR).
    • +
    +
    + +
    21 Nov 2001
    +
    Standard 1.0 EA2 introduced. Version includes the following +major changes and additions: +
      +
    • JSPTL has been renamed to JSTL.
    • +
    • The "jsptl" library at Jakarta Taglibs has been renamed to + "standard."
    • +
    • Tags for text inclusion and URL encoding introduced.
    • +
    • Tags for i18n-capable text formatting introduced.
    • +
    • Tags for XML manipulation introduced.
    • +
    • JSTL now divides functionality among multiple TLDs. Each TLD represents + a cohesive unit of functionality, such as "XML manipulation" and + "formatting." 'jx' and 'jr' are no longer used; they are replaced + with shorter abbreviations for the common cases (e.g., 'c', 'x'). +
    • ECMAScript is now the default expression evaluator. Since the + first release of 1.0 EA1, new languages include JXPath and ECMAScript.
    • +
    • The RI has been thoroughly repackaged; many classes have moved.
    • +
    • The package name for the JSTL API is now javax.servlet.jsp.jstl + and is subdivided into cohesive packages. (The old package for the + API was javax.servlet.jsptl.)
    • +
    • A small number of minor changes were made to the code. By and large, + these changes are not significant; the easiest way to discover + further details is to look at the CVS archive itself.
    • +
    +
    + +

    09 Oct 2001
    +
    JSTL 1.0 EA1 RI, version 1.2, introduced. This version includes support +for ECMAScript.
    + +

    23 Jul 2001
    +
    JSTL 1.0 EA1 RI, version 1.1, is released. This version is compatible +with Tomcat 4.0 B6 and Tomcat 4.0 release.
    + +

    10 Jul 2001
    +
    JSTL 1.0 EA1 RI first made available for download.
    + +

    08 Jul 2001
    +
    Initial version of JSTL RI contributed by JSR-052 Expert Group and imported + into Jakarta CVS archive.
    + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/index.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/index.html new file mode 100644 index 0000000..d2ce977 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/doc/index.html @@ -0,0 +1,83 @@ + + +Standard: An Implementation of the JSP™ Standard Tag Library (JSTL) + + + + +

    Standard: An Implementation of the JavaServer Pages™ Standard Tag Library +(JSTL)

    + + +

    Included in this distribution:

    + +

    Documentation ('doc/web' directory)

    + + + +Sun's JSTL web site + is the official website for JSTL, providing access to the specification +(the specification is a formal description of the functionality and + features of the JSTL tag set), as well as +lists several tutorials and books about JSTL that are available. + + +

    Examples ('examples' directory)

    + +

    The standard-examples application included with this distribution + demonstrates the current capabilities of JSTL, exploring idioms + and usage patterns when appropriate.

    + +

    Implementation of JSTL ('src' and 'conf' directories)

    + +

    Every effort has been made to provide a functional, robust, and + speedy implementation of JSTL. + For developers, the code is commented thoroughly + to help provide an understanding of design considerations and + salient implementation details.

    + +

    Classes in any of the subpackages of javax.servlet.jsp.jstl represent + JSTL API classes. Classes under org.apache.* represent implementation + classes. The implementation's package structure is organized as + follows:

    + +
    +  org.apache.taglibs.standard
    +   .tag         tag handlers and routines related to them
    +      .common      handlers and support routines common for RT/EL attributes
    +          .core    core library (common)
    +          .fmt     i18n-capable formatting tags (common)
    +          .xml     XML manipulation library (common)
    +	  .sql	   SQL library (common)
    +      .el          handlers specific to expression language (EL) evaluation
    +          .core    core library (EL)
    +          .fmt     i18n-capable formatting tags (EL)
    +          .xml     XML manipulation library (EL)
    +	  .sql	   SQL library (EL)
    +      .rt          handlers specific to rtexprvalue (rt) evaluation
    +          .core    core library (rt)
    +          .fmt     i18n-capable formatting tags (rt)
    +          .xml     XML manipulation library (rt)
    +	  .sql	   SQL library (rt)
    +   .functions   EL Functions library
    +   .tei         TagExtraInfo classes (common to both libraries)
    +   .tlv         TagLibraryValidator classes (and associated helpers)
    +   .lang        expression-language support and implementation
    +      .support     ExpressionEvaluator, ExpressionEvaluatorManager
    +      .jstl        JSTL 1.0 expression language
    +   .resources   Resources for internationalization
    +
    + +

    The javax.servlet.jsp.jstl.* tree is discussed in the JSTL +specification.

    + +

    Enjoy!

    + +
    +  -- Shawn Bayern <bayern@essentially.net>
    +     (on behalf of JSR-052 (JSTL) Expert Group)
    +
    diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-frame.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-frame.html new file mode 100644 index 0000000..f51adbc --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-frame.html @@ -0,0 +1,52 @@ + + + + + + +All Classes + + + + + + + + + + +All Classes +
    + + + + + +
    ConditionalTagSupport +
    +Config +
    +LocaleSupport +
    +LocalizationContext +
    +LoopTag +
    +LoopTagStatus +
    +LoopTagSupport +
    +PermittedTaglibsTLV +
    +Result +
    +ResultSupport +
    +SQLExecutionTag +
    +ScriptFreeTLV +
    +
    + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-noframe.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-noframe.html new file mode 100644 index 0000000..0c5540b --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/allclasses-noframe.html @@ -0,0 +1,52 @@ + + + + + + +All Classes + + + + + + + + + + +All Classes +
    + + + + + +
    ConditionalTagSupport +
    +Config +
    +LocaleSupport +
    +LocalizationContext +
    +LoopTag +
    +LoopTagStatus +
    +LoopTagSupport +
    +PermittedTaglibsTLV +
    +Result +
    +ResultSupport +
    +SQLExecutionTag +
    +ScriptFreeTLV +
    +
    + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/constant-values.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/constant-values.html new file mode 100644 index 0000000..3b1d1c0 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/constant-values.html @@ -0,0 +1,194 @@ + + + + + + +Constant Field Values + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Constant Field Values

    +
    +
    +Contents + + + + + + +
    +javax.servlet.*
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    javax.servlet.jsp.jstl.core.Config
    +public static final java.lang.StringFMT_FALLBACK_LOCALE"javax.servlet.jsp.jstl.fmt.fallbackLocale"
    +public static final java.lang.StringFMT_LOCALE"javax.servlet.jsp.jstl.fmt.locale"
    +public static final java.lang.StringFMT_LOCALIZATION_CONTEXT"javax.servlet.jsp.jstl.fmt.localizationContext"
    +public static final java.lang.StringFMT_TIME_ZONE"javax.servlet.jsp.jstl.fmt.timeZone"
    +public static final java.lang.StringSQL_DATA_SOURCE"javax.servlet.jsp.jstl.sql.dataSource"
    +public static final java.lang.StringSQL_MAX_ROWS"javax.servlet.jsp.jstl.sql.maxRows"
    + +

    + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/deprecated-list.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/deprecated-list.html new file mode 100644 index 0000000..5a2895e --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/deprecated-list.html @@ -0,0 +1,132 @@ + + + + + + +Deprecated List + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Deprecated API

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/help-doc.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/help-doc.html new file mode 100644 index 0000000..49f14f0 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/help-doc.html @@ -0,0 +1,187 @@ + + + + + + +API Help + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +How This API Document Is Organized

    +
    +This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

    +Overview

    +
    + +

    +The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

    +

    +Package

    +
    + +

    +Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:

      +
    • Interfaces (italic)
    • Classes
    • Exceptions
    • Errors
    +
    +

    +Class/Interface

    +
    + +

    +Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

      +
    • Class inheritance diagram
    • Direct Subclasses
    • All Known Subinterfaces
    • All Known Implementing Classes
    • Class/interface declaration
    • Class/interface description +

      +

    • Nested Class Summary
    • Field Summary
    • Constructor Summary
    • Method Summary +

      +

    • Field Detail
    • Constructor Detail
    • Method Detail
    +Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
    +

    +Tree (Class Hierarchy)

    +
    +There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object.
      +
    • When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
    • When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.
    +
    +

    +Deprecated API

    +
    +The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.
    +

    +Index

    +
    +The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.
    +

    +Prev/Next

    +These links take you to the next or previous class, interface, package, or related page.

    +Frames/No Frames

    +These links show and hide the HTML frames. All pages are available with or without frames. +

    +

    +Serialized Form

    +Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description. +

    + + +This help file applies to API documentation generated using the standard doclet. + +
    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index-all.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index-all.html new file mode 100644 index 0000000..626eb3a --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index-all.html @@ -0,0 +1,498 @@ + + + + + + +Index + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +A B C D E F G H I J L N P R S T V
    +

    +A

    +
    +
    addSQLParameter(Object) - +Method in interface javax.servlet.jsp.jstl.sql.SQLExecutionTag +
    Adds a PreparedStatement parameter value. +
    +
    +

    +B

    +
    +
    begin - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Starting index ('begin' attribute) +
    beginSpecified - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Boolean flag indicating whether 'begin' was specified. +
    +
    +

    +C

    +
    +
    ConditionalTagSupport - class javax.servlet.jsp.jstl.core.ConditionalTagSupport.
    Abstract class that facilitates implementation of conditional actions + where the boolean result is exposed as a JSP scoped variable.
    ConditionalTagSupport() - +Constructor for class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
    Base constructor to initialize local state. +
    Config - class javax.servlet.jsp.jstl.core.Config.
    Class supporting access to configuration settings.
    Config() - +Constructor for class javax.servlet.jsp.jstl.core.Config +
      +
    condition() - +Method in class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
    Subclasses implement this method to compute the boolean result + of the conditional action. +
    +
    +

    +D

    +
    +
    doAfterBody() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Continues the iteration when appropriate -- that is, if we (a) have + more items and (b) don't run over our 'end' (given our 'step'). +
    doCatch(Throwable) - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Rethrows the given Throwable. +
    doFinally() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Removes any attributes that this LoopTagSupport set. +
    doStartTag() - +Method in class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
    Includes its body if condition() evaluates to true. +
    doStartTag() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Begins iterating by processing the first item. +
    +
    +

    +E

    +
    +
    end - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Ending index of the iteration ('end' attribute). +
    endSpecified - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Boolean flag indicating whether 'end' was specified. +
    +
    +

    +F

    +
    +
    FMT_FALLBACK_LOCALE - +Static variable in class javax.servlet.jsp.jstl.core.Config +
    Name of configuration setting for fallback locale +
    FMT_LOCALE - +Static variable in class javax.servlet.jsp.jstl.core.Config +
    Name of configuration setting for application- (as opposed to browser-) + based preferred locale +
    FMT_LOCALIZATION_CONTEXT - +Static variable in class javax.servlet.jsp.jstl.core.Config +
    Name of configuration setting for i18n localization context +
    FMT_TIME_ZONE - +Static variable in class javax.servlet.jsp.jstl.core.Config +
    Name of localization setting for time zone +
    find(PageContext, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Finds the value associated with a specific configuration setting + identified by its context initialization parameter name. +
    +
    +

    +G

    +
    +
    get(PageContext, String, int) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Looks up a configuration variable in the given scope. +
    get(ServletRequest, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Looks up a configuration variable in the "request" scope. +
    get(HttpSession, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Looks up a configuration variable in the "session" scope. +
    get(ServletContext, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Looks up a configuration variable in the "application" scope. +
    getBegin() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
    Returns the value of the 'begin' attribute for the associated tag, + or null if no 'begin' attribute was specified. +
    getColumnNames() - +Method in interface javax.servlet.jsp.jstl.sql.Result +
    Returns the names of the columns in the result. +
    getCount() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
    Retrieves the "count" of the current round of the iteration. +
    getCurrent() - +Method in interface javax.servlet.jsp.jstl.core.LoopTag +
    Retrieves the current item in the iteration. +
    getCurrent() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
    Retrieves the current item in the iteration. +
    getCurrent() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
      +
    getEnd() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
    Returns the value of the 'end' attribute for the associated tag, + or null if no 'end' attribute was specified. +
    getIndex() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
    Retrieves the index of the current round of the iteration. +
    getLocale() - +Method in class javax.servlet.jsp.jstl.fmt.LocalizationContext +
    Gets the locale of this I18N localization context. +
    getLocalizedMessage(PageContext, String) - +Static method in class javax.servlet.jsp.jstl.fmt.LocaleSupport +
    Retrieves the localized message corresponding to the given key. +
    getLocalizedMessage(PageContext, String, String) - +Static method in class javax.servlet.jsp.jstl.fmt.LocaleSupport +
    Retrieves the localized message corresponding to the given key. +
    getLocalizedMessage(PageContext, String, Object[]) - +Static method in class javax.servlet.jsp.jstl.fmt.LocaleSupport +
    Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args. +
    getLocalizedMessage(PageContext, String, Object[], String) - +Static method in class javax.servlet.jsp.jstl.fmt.LocaleSupport +
    Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args. +
    getLoopStatus() - +Method in interface javax.servlet.jsp.jstl.core.LoopTag +
    Retrieves a 'status' object to provide information about the + current round of the iteration. +
    getLoopStatus() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
      +
    getResourceBundle() - +Method in class javax.servlet.jsp.jstl.fmt.LocalizationContext +
    Gets the resource bundle of this I18N localization context. +
    getRowCount() - +Method in interface javax.servlet.jsp.jstl.sql.Result +
    Returns the number of rows in the cached ResultSet +
    getRows() - +Method in interface javax.servlet.jsp.jstl.sql.Result +
    Returns the result of the query as an array of SortedMap objects. +
    getRowsByIndex() - +Method in interface javax.servlet.jsp.jstl.sql.Result +
    Returns the result of the query as an array of arrays. +
    getStep() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
    Returns the value of the 'step' attribute for the associated tag, + or null if no 'step' attribute was specified. +
    +
    +

    +H

    +
    +
    hasNext() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Returns information concerning the availability of more items + over which to iterate. +
    +
    +

    +I

    +
    +
    isFirst() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
    Returns information about whether the current round of the + iteration is the first one. +
    isLast() - +Method in interface javax.servlet.jsp.jstl.core.LoopTagStatus +
    Returns information about whether the current round of the + iteration is the last one. +
    isLimitedByMaxRows() - +Method in interface javax.servlet.jsp.jstl.sql.Result +
    Returns true if the query was limited by a maximum row setting +
    itemId - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Attribute-exposing control +
    +
    +

    +J

    +
    +
    javax.servlet.jsp.jstl.core - package javax.servlet.jsp.jstl.core
     
    javax.servlet.jsp.jstl.fmt - package javax.servlet.jsp.jstl.fmt
     
    javax.servlet.jsp.jstl.sql - package javax.servlet.jsp.jstl.sql
     
    javax.servlet.jsp.jstl.tlv - package javax.servlet.jsp.jstl.tlv
     
    +
    +

    +L

    +
    +
    LocaleSupport - class javax.servlet.jsp.jstl.fmt.LocaleSupport.
    Class which exposes the locale-determination logic for resource bundles + through convenience methods.
    LocaleSupport() - +Constructor for class javax.servlet.jsp.jstl.fmt.LocaleSupport +
      +
    LocalizationContext - class javax.servlet.jsp.jstl.fmt.LocalizationContext.
    Class representing an I18N localization context.
    LocalizationContext() - +Constructor for class javax.servlet.jsp.jstl.fmt.LocalizationContext +
    Constructs an empty I18N localization context. +
    LocalizationContext(ResourceBundle, Locale) - +Constructor for class javax.servlet.jsp.jstl.fmt.LocalizationContext +
    Constructs an I18N localization context from the given resource bundle + and locale. +
    LocalizationContext(ResourceBundle) - +Constructor for class javax.servlet.jsp.jstl.fmt.LocalizationContext +
    Constructs an I18N localization context from the given resource bundle. +
    LoopTag - interface javax.servlet.jsp.jstl.core.LoopTag.
    JSTL allows developers to write custom iteration tags by + implementing the LoopTag interface.
    LoopTagStatus - interface javax.servlet.jsp.jstl.core.LoopTagStatus.
    Exposes the current status of + an iteration.
    LoopTagSupport - class javax.servlet.jsp.jstl.core.LoopTagSupport.
    Base support class to facilitate implementation of iteration tags.
    LoopTagSupport() - +Constructor for class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Constructs a new LoopTagSupport. +
    +
    +

    +N

    +
    +
    next() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Returns the next object over which the tag should iterate. +
    +
    +

    +P

    +
    +
    PermittedTaglibsTLV - class javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV.
    A TagLibraryValidator class to allow a TLD to restrict what + taglibs (in addition to itself) may be imported on a page where it's + used.
    PermittedTaglibsTLV() - +Constructor for class javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV +
      +
    prepare() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Prepares for a single tag invocation. +
    +
    +

    +R

    +
    +
    Result - interface javax.servlet.jsp.jstl.sql.Result.
    This interface represents the result of a <sql:query> + action.
    ResultSupport - class javax.servlet.jsp.jstl.sql.ResultSupport.
    Supports the creation of a javax.servlet.jsp.jstl.sql.Result object + from a source java.sql.ResultSet object.
    ResultSupport() - +Constructor for class javax.servlet.jsp.jstl.sql.ResultSupport +
      +
    release() - +Method in class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
    Releases any resources this ConditionalTagSupport may have (or inherit). +
    release() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Releases any resources this LoopTagSupport may have (or inherit). +
    release() - +Method in class javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV +
      +
    remove(PageContext, String, int) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Removes a configuration variable from the given scope. +
    remove(ServletRequest, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Removes a configuration variable from the "request" scope. +
    remove(HttpSession, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Removes a configuration variable from the "session" scope. +
    remove(ServletContext, String) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Removes a configuration variable from the "application" scope. +
    +
    +

    +S

    +
    +
    SQLExecutionTag - interface javax.servlet.jsp.jstl.sql.SQLExecutionTag.
    This interface allows tag handlers implementing it to receive + values for parameter markers in their SQL statements.
    SQL_DATA_SOURCE - +Static variable in class javax.servlet.jsp.jstl.core.Config +
    Name of configuration setting for SQL data source +
    SQL_MAX_ROWS - +Static variable in class javax.servlet.jsp.jstl.core.Config +
    Name of configuration setting for maximum number of rows to be included + in SQL query result +
    ScriptFreeTLV - class javax.servlet.jsp.jstl.tlv.ScriptFreeTLV.
    A TagLibraryValidator for enforcing restrictions against + the use of JSP scripting elements.
    ScriptFreeTLV() - +Constructor for class javax.servlet.jsp.jstl.tlv.ScriptFreeTLV +
    Constructs a new validator instance. +
    set(PageContext, String, Object, int) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Sets the value of a configuration variable in the given scope. +
    set(ServletRequest, String, Object) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Sets the value of a configuration variable in the "request" scope. +
    set(HttpSession, String, Object) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Sets the value of a configuration variable in the "session" scope. +
    set(ServletContext, String, Object) - +Static method in class javax.servlet.jsp.jstl.core.Config +
    Sets the value of a configuration variable in the "application" scope. +
    setInitParameters(Map) - +Method in class javax.servlet.jsp.jstl.tlv.ScriptFreeTLV +
    Sets the values of the initialization parameters, as supplied in the TLD. +
    setScope(String) - +Method in class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
    Sets the 'scope' attribute. +
    setVar(String) - +Method in class javax.servlet.jsp.jstl.core.ConditionalTagSupport +
    Sets the 'var' attribute. +
    setVar(String) - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Sets the 'var' attribute. +
    setVarStatus(String) - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Sets the 'varStatus' attribute. +
    statusId - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Attribute-exposing control +
    step - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Iteration step ('step' attribute) +
    stepSpecified - +Variable in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Boolean flag indicating whether 'step' was specified. +
    +
    +

    +T

    +
    +
    toResult(ResultSet) - +Static method in class javax.servlet.jsp.jstl.sql.ResultSupport +
    Converts a ResultSet object to a Result object. +
    toResult(ResultSet, int) - +Static method in class javax.servlet.jsp.jstl.sql.ResultSupport +
    Converts maxRows of a ResultSet object to a + Result object. +
    +
    +

    +V

    +
    +
    validate(String, String, PageData) - +Method in class javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV +
      +
    validate(String, String, PageData) - +Method in class javax.servlet.jsp.jstl.tlv.ScriptFreeTLV +
    Validates a single JSP page. +
    validateBegin() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Ensures the "begin" property is sensible, throwing an exception + expected to propagate up if it isn't +
    validateEnd() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Ensures the "end" property is sensible, throwing an exception + expected to propagate up if it isn't +
    validateStep() - +Method in class javax.servlet.jsp.jstl.core.LoopTagSupport +
    Ensures the "step" property is sensible, throwing an exception + expected to propagate up if it isn't +
    +
    +A B C D E F G H I J L N P R S T V + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index.html new file mode 100644 index 0000000..67ab2cd --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/index.html @@ -0,0 +1,26 @@ + + + + + + +Generated Documentation (Untitled) + + + + + + + + + +<H2> +Frame Alert</H2> + +<P> +This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. +<BR> +Link to<A HREF="overview-summary.html">Non-frame version.</A> + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/ConditionalTagSupport.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/ConditionalTagSupport.html new file mode 100644 index 0000000..01ec1b8 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/ConditionalTagSupport.html @@ -0,0 +1,421 @@ + + + + + + +ConditionalTagSupport + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.core +
    +Class ConditionalTagSupport

    +
    +java.lang.Object
    +  extended byjavax.servlet.jsp.tagext.TagSupport
    +      extended byjavax.servlet.jsp.jstl.core.ConditionalTagSupport
    +
    +
    +
    All Implemented Interfaces:
    javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, java.io.Serializable, javax.servlet.jsp.tagext.Tag
    +
    +
    +
    +
    public abstract class ConditionalTagSupport
    extends javax.servlet.jsp.tagext.TagSupport
    + +

    +

    Abstract class that facilitates implementation of conditional actions + where the boolean result is exposed as a JSP scoped variable. The + boolean result may then be used as the test condition in a <c:when> + action.

    + +

    This base class provides support for:

    + +
      +
    • Conditional processing of the action's body based on the returned value + of the abstract method condition().
    • +
    • Storing the result of condition() as a Boolean object + into a JSP scoped variable identified by attributes var and + scope. +
    +

    + +

    +

    +
    Author:
    +
    Shawn Bayern
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class javax.servlet.jsp.tagext.TagSupport
    id, pageContext
    + + + + + + + +
    Fields inherited from interface javax.servlet.jsp.tagext.IterationTag
    EVAL_BODY_AGAIN
    + + + + + + + +
    Fields inherited from interface javax.servlet.jsp.tagext.Tag
    EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
    +  + + + + + + + + + + +
    +Constructor Summary
    ConditionalTagSupport() + +
    +          Base constructor to initialize local state.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +protected abstract  booleancondition() + +
    +          Subclasses implement this method to compute the boolean result + of the conditional action.
    + intdoStartTag() + +
    +          Includes its body if condition() evaluates to true.
    + voidrelease() + +
    +          Releases any resources this ConditionalTagSupport may have (or inherit).
    + voidsetScope(java.lang.String scope) + +
    +          Sets the 'scope' attribute.
    + voidsetVar(java.lang.String var) + +
    +          Sets the 'var' attribute.
    + + + + + + + +
    Methods inherited from class javax.servlet.jsp.tagext.TagSupport
    doAfterBody, doEndTag, findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + + + + +
    +Constructor Detail
    + +

    +ConditionalTagSupport

    +
    +public ConditionalTagSupport()
    +
    +
    Base constructor to initialize local state. As with TagSupport, + subclasses should not implement constructors with arguments, and + no-argument constructors implemented by subclasses must call the + superclass constructor. +

    +

    + + + + + + + + +
    +Method Detail
    + +

    +condition

    +
    +protected abstract boolean condition()
    +                              throws javax.servlet.jsp.JspTagException
    +
    +

    Subclasses implement this method to compute the boolean result + of the conditional action. This method is invoked once per tag invocation + by doStartTag(). +

    +

    + +
    Returns:
    a boolean representing the condition that a particular subclass + uses to drive its conditional logic. +
    Throws: +
    javax.servlet.jsp.JspTagException
    +
    +
    +
    + +

    +doStartTag

    +
    +public int doStartTag()
    +               throws javax.servlet.jsp.JspException
    +
    +
    Includes its body if condition() evaluates to true. +

    +

    + +
    Throws: +
    javax.servlet.jsp.JspException
    +
    +
    +
    + +

    +release

    +
    +public void release()
    +
    +
    Releases any resources this ConditionalTagSupport may have (or inherit). +

    +

    +
    +
    +
    +
    + +

    +setVar

    +
    +public void setVar(java.lang.String var)
    +
    +
    Sets the 'var' attribute. +

    +

    +
    Parameters:
    var - Name of the exported scoped variable storing the result of + condition().
    +
    +
    +
    + +

    +setScope

    +
    +public void setScope(java.lang.String scope)
    +
    +
    Sets the 'scope' attribute. +

    +

    +
    Parameters:
    scope - Scope of the 'var' attribute
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/Config.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/Config.html new file mode 100644 index 0000000..cadedf7 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/Config.html @@ -0,0 +1,771 @@ + + + + + + +Config + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.core +
    +Class Config

    +
    +java.lang.Object
    +  extended byjavax.servlet.jsp.jstl.core.Config
    +
    +
    +
    +
    public class Config
    extends java.lang.Object
    + +

    +Class supporting access to configuration settings. +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static java.lang.StringFMT_FALLBACK_LOCALE + +
    +          Name of configuration setting for fallback locale
    +static java.lang.StringFMT_LOCALE + +
    +          Name of configuration setting for application- (as opposed to browser-) + based preferred locale
    +static java.lang.StringFMT_LOCALIZATION_CONTEXT + +
    +          Name of configuration setting for i18n localization context
    +static java.lang.StringFMT_TIME_ZONE + +
    +          Name of localization setting for time zone
    +static java.lang.StringSQL_DATA_SOURCE + +
    +          Name of configuration setting for SQL data source
    +static java.lang.StringSQL_MAX_ROWS + +
    +          Name of configuration setting for maximum number of rows to be included + in SQL query result
    +  + + + + + + + + + + +
    +Constructor Summary
    Config() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static java.lang.Objectfind(javax.servlet.jsp.PageContext pc, + java.lang.String name) + +
    +          Finds the value associated with a specific configuration setting + identified by its context initialization parameter name.
    +static java.lang.Objectget(javax.servlet.http.HttpSession session, + java.lang.String name) + +
    +          Looks up a configuration variable in the "session" scope.
    +static java.lang.Objectget(javax.servlet.jsp.PageContext pc, + java.lang.String name, + int scope) + +
    +          Looks up a configuration variable in the given scope.
    +static java.lang.Objectget(javax.servlet.ServletContext context, + java.lang.String name) + +
    +          Looks up a configuration variable in the "application" scope.
    +static java.lang.Objectget(javax.servlet.ServletRequest request, + java.lang.String name) + +
    +          Looks up a configuration variable in the "request" scope.
    +static voidremove(javax.servlet.http.HttpSession session, + java.lang.String name) + +
    +          Removes a configuration variable from the "session" scope.
    +static voidremove(javax.servlet.jsp.PageContext pc, + java.lang.String name, + int scope) + +
    +          Removes a configuration variable from the given scope.
    +static voidremove(javax.servlet.ServletContext context, + java.lang.String name) + +
    +          Removes a configuration variable from the "application" scope.
    +static voidremove(javax.servlet.ServletRequest request, + java.lang.String name) + +
    +          Removes a configuration variable from the "request" scope.
    +static voidset(javax.servlet.http.HttpSession session, + java.lang.String name, + java.lang.Object value) + +
    +          Sets the value of a configuration variable in the "session" scope.
    +static voidset(javax.servlet.jsp.PageContext pc, + java.lang.String name, + java.lang.Object value, + int scope) + +
    +          Sets the value of a configuration variable in the given scope.
    +static voidset(javax.servlet.ServletContext context, + java.lang.String name, + java.lang.Object value) + +
    +          Sets the value of a configuration variable in the "application" scope.
    +static voidset(javax.servlet.ServletRequest request, + java.lang.String name, + java.lang.Object value) + +
    +          Sets the value of a configuration variable in the "request" scope.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +FMT_LOCALE

    +
    +public static final java.lang.String FMT_LOCALE
    +
    +
    Name of configuration setting for application- (as opposed to browser-) + based preferred locale +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +FMT_FALLBACK_LOCALE

    +
    +public static final java.lang.String FMT_FALLBACK_LOCALE
    +
    +
    Name of configuration setting for fallback locale +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +FMT_LOCALIZATION_CONTEXT

    +
    +public static final java.lang.String FMT_LOCALIZATION_CONTEXT
    +
    +
    Name of configuration setting for i18n localization context +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +FMT_TIME_ZONE

    +
    +public static final java.lang.String FMT_TIME_ZONE
    +
    +
    Name of localization setting for time zone +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SQL_DATA_SOURCE

    +
    +public static final java.lang.String SQL_DATA_SOURCE
    +
    +
    Name of configuration setting for SQL data source +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SQL_MAX_ROWS

    +
    +public static final java.lang.String SQL_MAX_ROWS
    +
    +
    Name of configuration setting for maximum number of rows to be included + in SQL query result +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Config

    +
    +public Config()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +get

    +
    +public static java.lang.Object get(javax.servlet.jsp.PageContext pc,
    +                                   java.lang.String name,
    +                                   int scope)
    +
    +
    Looks up a configuration variable in the given scope. + +

    The lookup of configuration variables is performed as if each scope + had its own name space, that is, the same configuration variable name + in one scope does not replace one stored in a different scope. +

    +

    +
    Parameters:
    pc - Page context in which the configuration variable is to be + looked up
    name - Configuration variable name
    scope - Scope in which the configuration variable is to be looked + up +
    Returns:
    The java.lang.Object associated with the configuration + variable, or null if it is not defined.
    +
    +
    +
    + +

    +get

    +
    +public static java.lang.Object get(javax.servlet.ServletRequest request,
    +                                   java.lang.String name)
    +
    +
    Looks up a configuration variable in the "request" scope. + +

    The lookup of configuration variables is performed as if each scope + had its own name space, that is, the same configuration variable name + in one scope does not replace one stored in a different scope. +

    +

    +
    Parameters:
    request - Request object in which the configuration variable is to + be looked up
    name - Configuration variable name +
    Returns:
    The java.lang.Object associated with the configuration + variable, or null if it is not defined.
    +
    +
    +
    + +

    +get

    +
    +public static java.lang.Object get(javax.servlet.http.HttpSession session,
    +                                   java.lang.String name)
    +
    +
    Looks up a configuration variable in the "session" scope. + +

    The lookup of configuration variables is performed as if each scope + had its own name space, that is, the same configuration variable name + in one scope does not replace one stored in a different scope.

    +

    +

    +
    Parameters:
    session - Session object in which the configuration variable is to + be looked up
    name - Configuration variable name +
    Returns:
    The java.lang.Object associated with the configuration + variable, or null if it is not defined, if session is null, or if the session + is invalidated.
    +
    +
    +
    + +

    +get

    +
    +public static java.lang.Object get(javax.servlet.ServletContext context,
    +                                   java.lang.String name)
    +
    +
    Looks up a configuration variable in the "application" scope. + +

    The lookup of configuration variables is performed as if each scope + had its own name space, that is, the same configuration variable name + in one scope does not replace one stored in a different scope. +

    +

    +
    Parameters:
    context - Servlet context in which the configuration variable is + to be looked up
    name - Configuration variable name +
    Returns:
    The java.lang.Object associated with the configuration + variable, or null if it is not defined.
    +
    +
    +
    + +

    +set

    +
    +public static void set(javax.servlet.jsp.PageContext pc,
    +                       java.lang.String name,
    +                       java.lang.Object value,
    +                       int scope)
    +
    +
    Sets the value of a configuration variable in the given scope. + +

    Setting the value of a configuration variable is performed as if + each scope had its own namespace, that is, the same configuration + variable name in one scope does not replace one stored in a different + scope. +

    +

    +
    Parameters:
    pc - Page context in which the configuration variable is to be set
    name - Configuration variable name
    value - Configuration variable value
    scope - Scope in which the configuration variable is to be set
    +
    +
    +
    + +

    +set

    +
    +public static void set(javax.servlet.ServletRequest request,
    +                       java.lang.String name,
    +                       java.lang.Object value)
    +
    +
    Sets the value of a configuration variable in the "request" scope. + +

    Setting the value of a configuration variable is performed as if + each scope had its own namespace, that is, the same configuration + variable name in one scope does not replace one stored in a different + scope. +

    +

    +
    Parameters:
    request - Request object in which the configuration variable is to + be set
    name - Configuration variable name
    value - Configuration variable value
    +
    +
    +
    + +

    +set

    +
    +public static void set(javax.servlet.http.HttpSession session,
    +                       java.lang.String name,
    +                       java.lang.Object value)
    +
    +
    Sets the value of a configuration variable in the "session" scope. + +

    Setting the value of a configuration variable is performed as if + each scope had its own namespace, that is, the same configuration + variable name in one scope does not replace one stored in a different + scope. +

    +

    +
    Parameters:
    session - Session object in which the configuration variable is to + be set
    name - Configuration variable name
    value - Configuration variable value
    +
    +
    +
    + +

    +set

    +
    +public static void set(javax.servlet.ServletContext context,
    +                       java.lang.String name,
    +                       java.lang.Object value)
    +
    +
    Sets the value of a configuration variable in the "application" scope. + +

    Setting the value of a configuration variable is performed as if + each scope had its own namespace, that is, the same configuration + variable name in one scope does not replace one stored in a different + scope. +

    +

    +
    Parameters:
    context - Servlet context in which the configuration variable is to + be set
    name - Configuration variable name
    value - Configuration variable value
    +
    +
    +
    + +

    +remove

    +
    +public static void remove(javax.servlet.jsp.PageContext pc,
    +                          java.lang.String name,
    +                          int scope)
    +
    +
    Removes a configuration variable from the given scope. + +

    Removing a configuration variable is performed as if each scope had + its own namespace, that is, the same configuration variable name in one + scope does not impact one stored in a different scope. +

    +

    +
    Parameters:
    pc - Page context from which the configuration variable is to be + removed
    name - Configuration variable name
    scope - Scope from which the configuration variable is to be + removed
    +
    +
    +
    + +

    +remove

    +
    +public static void remove(javax.servlet.ServletRequest request,
    +                          java.lang.String name)
    +
    +
    Removes a configuration variable from the "request" scope. + +

    Removing a configuration variable is performed as if each scope had + its own namespace, that is, the same configuration variable name in one + scope does not impact one stored in a different scope. +

    +

    +
    Parameters:
    request - Request object from which the configuration variable is + to be removed
    name - Configuration variable name
    +
    +
    +
    + +

    +remove

    +
    +public static void remove(javax.servlet.http.HttpSession session,
    +                          java.lang.String name)
    +
    +
    Removes a configuration variable from the "session" scope. + +

    Removing a configuration variable is performed as if each scope had + its own namespace, that is, the same configuration variable name in one + scope does not impact one stored in a different scope. +

    +

    +
    Parameters:
    session - Session object from which the configuration variable is + to be removed
    name - Configuration variable name
    +
    +
    +
    + +

    +remove

    +
    +public static void remove(javax.servlet.ServletContext context,
    +                          java.lang.String name)
    +
    +
    Removes a configuration variable from the "application" scope. + +

    Removing a configuration variable is performed as if each scope had + its own namespace, that is, the same configuration variable name in one + scope does not impact one stored in a different scope. +

    +

    +
    Parameters:
    context - Servlet context from which the configuration variable is + to be removed
    name - Configuration variable name
    +
    +
    +
    + +

    +find

    +
    +public static java.lang.Object find(javax.servlet.jsp.PageContext pc,
    +                                    java.lang.String name)
    +
    +
    Finds the value associated with a specific configuration setting + identified by its context initialization parameter name. + +

    For each of the JSP scopes (page, request, session, application), + get the value of the configuration variable identified by name + using method get(). Return as soon as a non-null value is + found. If no value is found, get the value of the context initialization + parameter identified by name. +

    +

    +
    Parameters:
    pc - Page context in which the configuration setting is to be + searched
    name - Context initialization parameter name of the configuration + setting +
    Returns:
    The java.lang.Object associated with the configuration + setting identified by name, or null if it is not defined.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTag.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTag.html new file mode 100644 index 0000000..72a499d --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTag.html @@ -0,0 +1,293 @@ + + + + + + +LoopTag + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.core +
    +Interface LoopTag

    +
    +
    All Superinterfaces:
    javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag
    +
    +
    +
    All Known Implementing Classes:
    LoopTagSupport
    +
    +
    +
    +
    public interface LoopTag
    extends javax.servlet.jsp.tagext.Tag
    + +

    +

    JSTL allows developers to write custom iteration tags by + implementing the LoopTag interface. This is not to be confused + with javax.servlet.jsp.tagext.IterationTag as defined in JSP 1.2. + LoopTag establishes a mechanism for iteration tags to be recognized + and for type-safe implicit collaboration with custom subtags. + +

    In most cases, it will not be necessary to implement this interface + manually, for a base support class (LoopTagSupport) is provided + to facilitate implementation.

    +

    + +

    +

    +
    Author:
    +
    Shawn Bayern
    +
    +
    + +

    + + + + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from interface javax.servlet.jsp.tagext.Tag
    EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
    +  + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.ObjectgetCurrent() + +
    +          Retrieves the current item in the iteration.
    + LoopTagStatusgetLoopStatus() + +
    +          Retrieves a 'status' object to provide information about the + current round of the iteration.
    + + + + + + + +
    Methods inherited from interface javax.servlet.jsp.tagext.Tag
    doEndTag, doStartTag, getParent, release, setPageContext, setParent
    +  +

    + + + + + + + + + + + + + + +
    +Method Detail
    + +

    +getCurrent

    +
    +public java.lang.Object getCurrent()
    +
    +
    Retrieves the current item in the iteration. Behaves + idempotently; calling getCurrent() repeatedly should return the same + Object until the iteration is advanced. (Specifically, calling + getCurrent() does not advance the iteration.) +

    +

    +
    +
    +
    + +
    Returns:
    the current item as an object
    +
    +
    +
    + +

    +getLoopStatus

    +
    +public LoopTagStatus getLoopStatus()
    +
    +
    Retrieves a 'status' object to provide information about the + current round of the iteration. +

    +

    +
    +
    +
    + +
    Returns:
    The LoopTagStatus for the current LoopTag.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagStatus.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagStatus.html new file mode 100644 index 0000000..31f2005 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagStatus.html @@ -0,0 +1,419 @@ + + + + + + +LoopTagStatus + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.core +
    +Interface LoopTagStatus

    +
    +
    +
    public interface LoopTagStatus
    + +

    +

    Exposes the current status of + an iteration. JSTL provides a mechanism for LoopTags to + return information about the current index of the iteration and + convenience methods to determine whether or not the current round is + either the first or last in the iteration. It also lets authors + use the status object to obtain information about the iteration range, + step, and current object.

    + +

    Environments that require more status can extend this interface.

    +

    + +

    +

    +
    Author:
    +
    Shawn Bayern
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.IntegergetBegin() + +
    +          Returns the value of the 'begin' attribute for the associated tag, + or null if no 'begin' attribute was specified.
    + intgetCount() + +
    +          Retrieves the "count" of the current round of the iteration.
    + java.lang.ObjectgetCurrent() + +
    +          Retrieves the current item in the iteration.
    + java.lang.IntegergetEnd() + +
    +          Returns the value of the 'end' attribute for the associated tag, + or null if no 'end' attribute was specified.
    + intgetIndex() + +
    +          Retrieves the index of the current round of the iteration.
    + java.lang.IntegergetStep() + +
    +          Returns the value of the 'step' attribute for the associated tag, + or null if no 'step' attribute was specified.
    + booleanisFirst() + +
    +          Returns information about whether the current round of the + iteration is the first one.
    + booleanisLast() + +
    +          Returns information about whether the current round of the + iteration is the last one.
    +  +

    + + + + + + + + + + + + + + +
    +Method Detail
    + +

    +getCurrent

    +
    +public java.lang.Object getCurrent()
    +
    +
    Retrieves the current item in the iteration. Behaves + idempotently; calling getCurrent() repeatedly should return the same + Object until the iteration is advanced. (Specifically, calling + getCurrent() does not advance the iteration.) +

    +

    + +
    Returns:
    the current item as an object
    +
    +
    +
    + +

    +getIndex

    +
    +public int getIndex()
    +
    +
    Retrieves the index of the current round of the iteration. If + iteration is being performed over a subset of an underlying + array, java.lang.Collection, or other type, the index returned + is absolute with respect to the underlying collection. Indices + are 0-based. +

    +

    + +
    Returns:
    the 0-based index of the current round of the iteration
    +
    +
    +
    + +

    +getCount

    +
    +public int getCount()
    +
    +

    Retrieves the "count" of the current round of the iteration. The + count is a relative, 1-based sequence number identifying the + current "round" of iteration (in context with all rounds the + current iteration will perform).

    + +

    As an example, an iteration with begin = 5, end = 15, and step = + 5 produces the counts 1, 2, and 3 in that order.

    +

    +

    + +
    Returns:
    the 1-based count of the current round of the iteration
    +
    +
    +
    + +

    +isFirst

    +
    +public boolean isFirst()
    +
    +
    Returns information about whether the current round of the + iteration is the first one. This current round may be the 'first' + even when getIndex() != 0, for 'index' refers to the absolute + index of the current 'item' in the context of its underlying + collection. It is always that case that a true result from + isFirst() implies getCount() == 1. +

    +

    + +
    Returns:
    true if the current round is the first in the + iteration, false otherwise.
    +
    +
    +
    + +

    +isLast

    +
    +public boolean isLast()
    +
    +
    Returns information about whether the current round of the + iteration is the last one. As with isFirst(), subsetting is + taken into account. isLast() doesn't necessarily refer to the + status of the underlying Iterator; it refers to whether or not + the current round will be the final round of iteration for the + tag associated with this LoopTagStatus. +

    +

    + +
    Returns:
    true if the current round is the last in the + iteration, false otherwise.
    +
    +
    +
    + +

    +getBegin

    +
    +public java.lang.Integer getBegin()
    +
    +
    Returns the value of the 'begin' attribute for the associated tag, + or null if no 'begin' attribute was specified. +

    +

    + +
    Returns:
    the 'begin' value for the associated tag, or null + if no 'begin' attribute was specified
    +
    +
    +
    + +

    +getEnd

    +
    +public java.lang.Integer getEnd()
    +
    +
    Returns the value of the 'end' attribute for the associated tag, + or null if no 'end' attribute was specified. +

    +

    + +
    Returns:
    the 'end' value for the associated tag, or null + if no 'end' attribute was specified
    +
    +
    +
    + +

    +getStep

    +
    +public java.lang.Integer getStep()
    +
    +
    Returns the value of the 'step' attribute for the associated tag, + or null if no 'step' attribute was specified. +

    +

    + +
    Returns:
    the 'step' value for the associated tag, or null + if no 'step' attribute was specified
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagSupport.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagSupport.html new file mode 100644 index 0000000..ecca8c4 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/LoopTagSupport.html @@ -0,0 +1,935 @@ + + + + + + +LoopTagSupport + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.core +
    +Class LoopTagSupport

    +
    +java.lang.Object
    +  extended byjavax.servlet.jsp.tagext.TagSupport
    +      extended byjavax.servlet.jsp.jstl.core.LoopTagSupport
    +
    +
    +
    All Implemented Interfaces:
    javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, LoopTag, java.io.Serializable, javax.servlet.jsp.tagext.Tag, javax.servlet.jsp.tagext.TryCatchFinally
    +
    +
    +
    +
    public abstract class LoopTagSupport
    extends javax.servlet.jsp.tagext.TagSupport
    implements LoopTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.TryCatchFinally
    + +

    +

    Base support class to facilitate implementation of iteration tags.

    + +

    Since most iteration tags will behave identically with respect to + actual iterative behavior, JSTL provides this + base support class to facilitate implementation. Many iteration tags + will extend this and merely implement the hasNext() and + next() methods + to provide contents for the handler to iterate over.

    + +

    In particular, this base class provides support for:

    + +
      +
    • Iteration control, based on protected prepare(), next(), + and hasNext() methods +
    • Subsetting (begin, end, step>functionality, + including validation + of subset parameters for sensibility) +
    • item retrieval (getCurrent()) +
    • status retrieval (LoopTagStatus) +
    • exposing attributes (set by var and varStatus attributes) +
    + +

    In providing support for these tasks, LoopTagSupport contains + certain control variables that act to modify the iteration. Accessors + are provided for these control variables when the variables represent + information needed or wanted at translation time (e.g., var, + varStatus). For + other variables, accessors cannot be provided here since subclasses + may differ on their implementations of how those accessors are received. + For instance, one subclass might accept a String and convert it into + an object of a specific type by using an expression evaluator; others + might accept objects directly. Still others might not want to expose + such information to outside control.

    +

    + +

    +

    +
    Author:
    +
    Shawn Bayern
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  intbegin + +
    +          Starting index ('begin' attribute)
    +protected  booleanbeginSpecified + +
    +          Boolean flag indicating whether 'begin' was specified.
    +protected  intend + +
    +          Ending index of the iteration ('end' attribute).
    +protected  booleanendSpecified + +
    +          Boolean flag indicating whether 'end' was specified.
    +protected  java.lang.StringitemId + +
    +          Attribute-exposing control
    +protected  java.lang.StringstatusId + +
    +          Attribute-exposing control
    +protected  intstep + +
    +          Iteration step ('step' attribute)
    +protected  booleanstepSpecified + +
    +          Boolean flag indicating whether 'step' was specified.
    + + + + + + + +
    Fields inherited from class javax.servlet.jsp.tagext.TagSupport
    id, pageContext
    + + + + + + + +
    Fields inherited from interface javax.servlet.jsp.tagext.Tag
    EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
    + + + + + + + +
    Fields inherited from interface javax.servlet.jsp.tagext.IterationTag
    EVAL_BODY_AGAIN
    +  + + + + + + + + + + +
    +Constructor Summary
    LoopTagSupport() + +
    +          Constructs a new LoopTagSupport.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + intdoAfterBody() + +
    +          Continues the iteration when appropriate -- that is, if we (a) have + more items and (b) don't run over our 'end' (given our 'step').
    + voiddoCatch(java.lang.Throwable t) + +
    +          Rethrows the given Throwable.
    + voiddoFinally() + +
    +          Removes any attributes that this LoopTagSupport set.
    + intdoStartTag() + +
    +          Begins iterating by processing the first item.
    + java.lang.ObjectgetCurrent() + +
    +          Retrieves the current item in the iteration.
    + LoopTagStatusgetLoopStatus() + +
    +          Retrieves a 'status' object to provide information about the + current round of the iteration.
    +protected abstract  booleanhasNext() + +
    +          Returns information concerning the availability of more items + over which to iterate.
    +protected abstract  java.lang.Objectnext() + +
    +          Returns the next object over which the tag should iterate.
    +protected abstract  voidprepare() + +
    +          Prepares for a single tag invocation.
    + voidrelease() + +
    +          Releases any resources this LoopTagSupport may have (or inherit).
    + voidsetVar(java.lang.String id) + +
    +          Sets the 'var' attribute.
    + voidsetVarStatus(java.lang.String statusId) + +
    +          Sets the 'varStatus' attribute.
    +protected  voidvalidateBegin() + +
    +          Ensures the "begin" property is sensible, throwing an exception + expected to propagate up if it isn't
    +protected  voidvalidateEnd() + +
    +          Ensures the "end" property is sensible, throwing an exception + expected to propagate up if it isn't
    +protected  voidvalidateStep() + +
    +          Ensures the "step" property is sensible, throwing an exception + expected to propagate up if it isn't
    + + + + + + + +
    Methods inherited from class javax.servlet.jsp.tagext.TagSupport
    doEndTag, findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    + + + + + + + +
    Methods inherited from interface javax.servlet.jsp.tagext.Tag
    doEndTag, getParent, setPageContext, setParent
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +begin

    +
    +protected int begin
    +
    +
    Starting index ('begin' attribute) +

    +

    +
    +
    +
    + +

    +end

    +
    +protected int end
    +
    +
    Ending index of the iteration ('end' attribute). + A value of -1 internally indicates 'no end + specified', although accessors for the core JSTL tags do not + allow this value to be supplied directly by the user. +

    +

    +
    +
    +
    + +

    +step

    +
    +protected int step
    +
    +
    Iteration step ('step' attribute) +

    +

    +
    +
    +
    + +

    +beginSpecified

    +
    +protected boolean beginSpecified
    +
    +
    Boolean flag indicating whether 'begin' was specified. +

    +

    +
    +
    +
    + +

    +endSpecified

    +
    +protected boolean endSpecified
    +
    +
    Boolean flag indicating whether 'end' was specified. +

    +

    +
    +
    +
    + +

    +stepSpecified

    +
    +protected boolean stepSpecified
    +
    +
    Boolean flag indicating whether 'step' was specified. +

    +

    +
    +
    +
    + +

    +itemId

    +
    +protected java.lang.String itemId
    +
    +
    Attribute-exposing control +

    +

    +
    +
    +
    + +

    +statusId

    +
    +protected java.lang.String statusId
    +
    +
    Attribute-exposing control +

    +

    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +LoopTagSupport

    +
    +public LoopTagSupport()
    +
    +
    Constructs a new LoopTagSupport. As with TagSupport, subclasses + should not implement constructors with arguments, and no-arguments + constructors implemented by subclasses must call the superclass + constructor. +

    +

    + + + + + + + + +
    +Method Detail
    + +

    +next

    +
    +protected abstract java.lang.Object next()
    +                                  throws javax.servlet.jsp.JspTagException
    +
    +

    Returns the next object over which the tag should iterate. This + method must be provided by concrete subclasses of LoopTagSupport + to inform the base logic about what objects it should iterate over.

    + +

    It is expected that this method will generally be backed by an + Iterator, but this will not always be the case. In particular, if + retrieving the next object raises the possibility of an exception + being thrown, this method allows that exception to propagate back + to the JSP container as a JspTagException; a standalone Iterator + would not be able to do this. (This explains why LoopTagSupport + does not simply call for an Iterator from its subtags.)

    +

    +

    +
    +
    +
    + +
    Returns:
    the java.lang.Object to use in the next round of iteration +
    Throws: +
    java.util.NoSuchElementException - if next() is called but no new elements are available +
    javax.servlet.jsp.JspTagException - for other, unexpected exceptions
    +
    +
    +
    + +

    +hasNext

    +
    +protected abstract boolean hasNext()
    +                            throws javax.servlet.jsp.JspTagException
    +
    +

    Returns information concerning the availability of more items + over which to iterate. This method must be provided by concrete + subclasses of LoopTagSupport to assist the iterative logic + provided by the supporting base class.

    + +

    See next for more information about the + purpose and expectations behind this tag.

    +

    +

    +
    +
    +
    + +
    Returns:
    true if there is at least one more item to iterate + over, false otherwise +
    Throws: +
    javax.servlet.jsp.JspTagException
    See Also:
    next()
    +
    +
    +
    + +

    +prepare

    +
    +protected abstract void prepare()
    +                         throws javax.servlet.jsp.JspTagException
    +
    +

    Prepares for a single tag invocation. Specifically, allows + subclasses to prepare for calls to hasNext() and next(). + Subclasses can assume that prepare() will be called once for + each invocation of doStartTag() in the superclass.

    +

    +

    +
    +
    +
    + +
    Throws: +
    javax.servlet.jsp.JspTagException
    +
    +
    +
    + +

    +release

    +
    +public void release()
    +
    +
    Releases any resources this LoopTagSupport may have (or inherit). +

    +

    +
    Specified by:
    release in interface javax.servlet.jsp.tagext.Tag
    +
    +
    +
    +
    +
    +
    + +

    +doStartTag

    +
    +public int doStartTag()
    +               throws javax.servlet.jsp.JspException
    +
    +
    Begins iterating by processing the first item. +

    +

    +
    Specified by:
    doStartTag in interface javax.servlet.jsp.tagext.Tag
    +
    +
    + +
    Throws: +
    javax.servlet.jsp.JspException
    +
    +
    +
    + +

    +doAfterBody

    +
    +public int doAfterBody()
    +                throws javax.servlet.jsp.JspException
    +
    +
    Continues the iteration when appropriate -- that is, if we (a) have + more items and (b) don't run over our 'end' (given our 'step'). +

    +

    +
    Specified by:
    doAfterBody in interface javax.servlet.jsp.tagext.IterationTag
    +
    +
    + +
    Throws: +
    javax.servlet.jsp.JspException
    +
    +
    +
    + +

    +doFinally

    +
    +public void doFinally()
    +
    +
    Removes any attributes that this LoopTagSupport set. + +

    These attributes are intended to support scripting variables with + NESTED scope, so we don't want to pollute attribute space by leaving + them lying around. +

    +

    +
    Specified by:
    doFinally in interface javax.servlet.jsp.tagext.TryCatchFinally
    +
    +
    +
    +
    +
    +
    + +

    +doCatch

    +
    +public void doCatch(java.lang.Throwable t)
    +             throws java.lang.Throwable
    +
    +
    Rethrows the given Throwable. +

    +

    +
    Specified by:
    doCatch in interface javax.servlet.jsp.tagext.TryCatchFinally
    +
    +
    + +
    Throws: +
    java.lang.Throwable
    +
    +
    +
    + +

    +getCurrent

    +
    +public java.lang.Object getCurrent()
    +
    +
    Description copied from interface: LoopTag
    +
    Retrieves the current item in the iteration. Behaves + idempotently; calling getCurrent() repeatedly should return the same + Object until the iteration is advanced. (Specifically, calling + getCurrent() does not advance the iteration.) +

    +

    +
    Specified by:
    getCurrent in interface LoopTag
    +
    +
    + +
    Returns:
    the current item as an object
    +
    +
    +
    + +

    +getLoopStatus

    +
    +public LoopTagStatus getLoopStatus()
    +
    +
    Description copied from interface: LoopTag
    +
    Retrieves a 'status' object to provide information about the + current round of the iteration. +

    +

    +
    Specified by:
    getLoopStatus in interface LoopTag
    +
    +
    + +
    Returns:
    The LoopTagStatus for the current LoopTag.
    +
    +
    +
    + +

    +setVar

    +
    +public void setVar(java.lang.String id)
    +
    +
    Sets the 'var' attribute. +

    +

    +
    +
    +
    +
    Parameters:
    id - Name of the exported scoped variable storing the current item + of the iteration.
    +
    +
    +
    + +

    +setVarStatus

    +
    +public void setVarStatus(java.lang.String statusId)
    +
    +
    Sets the 'varStatus' attribute. +

    +

    +
    +
    +
    +
    Parameters:
    statusId - Name of the exported scoped variable storing the status + of the iteration.
    +
    +
    +
    + +

    +validateBegin

    +
    +protected void validateBegin()
    +                      throws javax.servlet.jsp.JspTagException
    +
    +
    Ensures the "begin" property is sensible, throwing an exception + expected to propagate up if it isn't +

    +

    +
    +
    +
    + +
    Throws: +
    javax.servlet.jsp.JspTagException
    +
    +
    +
    + +

    +validateEnd

    +
    +protected void validateEnd()
    +                    throws javax.servlet.jsp.JspTagException
    +
    +
    Ensures the "end" property is sensible, throwing an exception + expected to propagate up if it isn't +

    +

    +
    +
    +
    + +
    Throws: +
    javax.servlet.jsp.JspTagException
    +
    +
    +
    + +

    +validateStep

    +
    +protected void validateStep()
    +                     throws javax.servlet.jsp.JspTagException
    +
    +
    Ensures the "step" property is sensible, throwing an exception + expected to propagate up if it isn't +

    +

    +
    +
    +
    + +
    Throws: +
    javax.servlet.jsp.JspTagException
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-frame.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-frame.html new file mode 100644 index 0000000..2558e66 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-frame.html @@ -0,0 +1,49 @@ + + + + + + +javax.servlet.jsp.jstl.core + + + + + + + + + + + +javax.servlet.jsp.jstl.core + + + + +
    +Interfaces  + +
    +LoopTag +
    +LoopTagStatus
    + + + + + + +
    +Classes  + +
    +ConditionalTagSupport +
    +Config +
    +LoopTagSupport
    + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-summary.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-summary.html new file mode 100644 index 0000000..d60c989 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-summary.html @@ -0,0 +1,175 @@ + + + + + + +javax.servlet.jsp.jstl.core + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package javax.servlet.jsp.jstl.core +

    + + + + + + + + + + + + + +
    +Interface Summary
    LoopTagJSTL allows developers to write custom iteration tags by + implementing the LoopTag interface.
    LoopTagStatusExposes the current status of + an iteration.
    +  + +

    + + + + + + + + + + + + + + + + + +
    +Class Summary
    ConditionalTagSupportAbstract class that facilitates implementation of conditional actions + where the boolean result is exposed as a JSP scoped variable.
    ConfigClass supporting access to configuration settings.
    LoopTagSupportBase support class to facilitate implementation of iteration tags.
    +  + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-tree.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-tree.html new file mode 100644 index 0000000..c9cd358 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/core/package-tree.html @@ -0,0 +1,156 @@ + + + + + + +javax.servlet.jsp.jstl.core Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package javax.servlet.jsp.jstl.core +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    +
      +
    • class java.lang.Object
        +
      • class javax.servlet.jsp.jstl.core.Config
      • class javax.servlet.jsp.tagext.TagSupport (implements javax.servlet.jsp.tagext.IterationTag, java.io.Serializable) +
          +
        • class javax.servlet.jsp.jstl.core.ConditionalTagSupport
        • class javax.servlet.jsp.jstl.core.LoopTagSupport (implements javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.jstl.core.LoopTag, javax.servlet.jsp.tagext.TryCatchFinally) +
        +
      +
    +

    +Interface Hierarchy +

    +
      +
    • interface javax.servlet.jsp.tagext.JspTag
        +
      • interface javax.servlet.jsp.tagext.Tag
          +
        • interface javax.servlet.jsp.jstl.core.LoopTag
        +
      +
    • interface javax.servlet.jsp.jstl.core.LoopTagStatus
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocaleSupport.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocaleSupport.html new file mode 100644 index 0000000..1dc3b6a --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocaleSupport.html @@ -0,0 +1,390 @@ + + + + + + +LocaleSupport + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.fmt +
    +Class LocaleSupport

    +
    +java.lang.Object
    +  extended byjavax.servlet.jsp.jstl.fmt.LocaleSupport
    +
    +
    +
    +
    public class LocaleSupport
    extends java.lang.Object
    + +

    +Class which exposes the locale-determination logic for resource bundles + through convenience methods. + +

    This class may be useful to any tag handler implementation that needs + to produce localized messages. For example, this might be useful for + exception messages that are intended directly for user consumption on an + error page. +

    + +

    +

    +
    Author:
    +
    Jan Luehe
    +
    +
    + +

    + + + + + + + + + + + + + + + + +
    +Constructor Summary
    LocaleSupport() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static java.lang.StringgetLocalizedMessage(javax.servlet.jsp.PageContext pageContext, + java.lang.String key) + +
    +          Retrieves the localized message corresponding to the given key.
    +static java.lang.StringgetLocalizedMessage(javax.servlet.jsp.PageContext pageContext, + java.lang.String key, + java.lang.Object[] args) + +
    +          Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args.
    +static java.lang.StringgetLocalizedMessage(javax.servlet.jsp.PageContext pageContext, + java.lang.String key, + java.lang.Object[] args, + java.lang.String basename) + +
    +          Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args.
    +static java.lang.StringgetLocalizedMessage(javax.servlet.jsp.PageContext pageContext, + java.lang.String key, + java.lang.String basename) + +
    +          Retrieves the localized message corresponding to the given key.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + + + + +
    +Constructor Detail
    + +

    +LocaleSupport

    +
    +public LocaleSupport()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getLocalizedMessage

    +
    +public static java.lang.String getLocalizedMessage(javax.servlet.jsp.PageContext pageContext,
    +                                                   java.lang.String key)
    +
    +
    Retrieves the localized message corresponding to the given key. + +

    The given key is looked up in the resource bundle of the default + I18N localization context, which is retrieved from the + javax.servlet.jsp.jstl.fmt.localizationContext configuration + setting. + +

    If the configuration setting is empty, or the default I18N + localization context does not contain any resource bundle, or the given + key is undefined in its resource bundle, the string "???<key>???" is + returned, where "<key>" is replaced with the given key. +

    +

    +
    Parameters:
    pageContext - the page in which to get the localized message + corresponding to the given key
    key - the message key +
    Returns:
    the localized message corresponding to the given key
    +
    +
    +
    + +

    +getLocalizedMessage

    +
    +public static java.lang.String getLocalizedMessage(javax.servlet.jsp.PageContext pageContext,
    +                                                   java.lang.String key,
    +                                                   java.lang.String basename)
    +
    +
    Retrieves the localized message corresponding to the given key. + +

    The given key is looked up in the resource bundle with the given + base name. + +

    If no resource bundle with the given base name exists, or the given + key is undefined in the resource bundle, the string "???<key>???" is + returned, where "<key>" is replaced with the given key. +

    +

    +
    Parameters:
    pageContext - the page in which to get the localized message + corresponding to the given key
    key - the message key
    basename - the resource bundle base name +
    Returns:
    the localized message corresponding to the given key
    +
    +
    +
    + +

    +getLocalizedMessage

    +
    +public static java.lang.String getLocalizedMessage(javax.servlet.jsp.PageContext pageContext,
    +                                                   java.lang.String key,
    +                                                   java.lang.Object[] args)
    +
    +
    Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args. + +

    See the specification of the <fmt:message> action for a description + of how parametric replacement is implemented. + +

    The localized message is retrieved as in + getLocalizedMessage(pageContext, key). +

    +

    +
    Parameters:
    pageContext - the page in which to get the localized message + corresponding to the given key
    key - the message key
    args - the arguments for parametric replacement +
    Returns:
    the localized message corresponding to the given key
    +
    +
    +
    + +

    +getLocalizedMessage

    +
    +public static java.lang.String getLocalizedMessage(javax.servlet.jsp.PageContext pageContext,
    +                                                   java.lang.String key,
    +                                                   java.lang.Object[] args,
    +                                                   java.lang.String basename)
    +
    +
    Retrieves the localized message corresponding to the given key, and + performs parametric replacement using the arguments specified via + args. + +

    See the specification of the <fmt:message> action for a description + of how parametric replacement is implemented. + +

    The localized message is retrieved as in + getLocalizedMessage(pageContext, key, basename). +

    +

    +
    Parameters:
    pageContext - the page in which to get the localized message + corresponding to the given key
    key - the message key
    args - the arguments for parametric replacement
    basename - the resource bundle base name +
    Returns:
    the localized message corresponding to the given key
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocalizationContext.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocalizationContext.html new file mode 100644 index 0000000..6ee1024 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/LocalizationContext.html @@ -0,0 +1,338 @@ + + + + + + +LocalizationContext + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.fmt +
    +Class LocalizationContext

    +
    +java.lang.Object
    +  extended byjavax.servlet.jsp.jstl.fmt.LocalizationContext
    +
    +
    +
    +
    public class LocalizationContext
    extends java.lang.Object
    + +

    +Class representing an I18N localization context. + +

    An I18N localization context has two components: a resource bundle and + the locale that led to the resource bundle match. + +

    The resource bundle component is used by <fmt:message> for mapping + message keys to localized messages, and the locale component is used by the + <fmt:message>, <fmt:formatNumber>, <fmt:parseNumber>, <fmt:formatDate>, + and <fmt:parseDate> actions as their formatting or parsing locale, respectively. +

    + +

    +

    +
    Author:
    +
    Jan Luehe
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    LocalizationContext() + +
    +          Constructs an empty I18N localization context.
    LocalizationContext(java.util.ResourceBundle bundle) + +
    +          Constructs an I18N localization context from the given resource bundle.
    LocalizationContext(java.util.ResourceBundle bundle, + java.util.Locale locale) + +
    +          Constructs an I18N localization context from the given resource bundle + and locale.
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    + java.util.LocalegetLocale() + +
    +          Gets the locale of this I18N localization context.
    + java.util.ResourceBundlegetResourceBundle() + +
    +          Gets the resource bundle of this I18N localization context.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + + + + +
    +Constructor Detail
    + +

    +LocalizationContext

    +
    +public LocalizationContext()
    +
    +
    Constructs an empty I18N localization context. +

    +

    +
    + +

    +LocalizationContext

    +
    +public LocalizationContext(java.util.ResourceBundle bundle,
    +                           java.util.Locale locale)
    +
    +
    Constructs an I18N localization context from the given resource bundle + and locale. + +

    The specified locale is the application- or browser-based preferred + locale that led to the resource bundle match. +

    +

    Parameters:
    bundle - The localization context's resource bundle
    locale - The localization context's locale
    +
    + +

    +LocalizationContext

    +
    +public LocalizationContext(java.util.ResourceBundle bundle)
    +
    +
    Constructs an I18N localization context from the given resource bundle. + +

    The localization context's locale is taken from the given + resource bundle. +

    +

    Parameters:
    bundle - The resource bundle
    + + + + + + + + +
    +Method Detail
    + +

    +getResourceBundle

    +
    +public java.util.ResourceBundle getResourceBundle()
    +
    +
    Gets the resource bundle of this I18N localization context. +

    +

    + +
    Returns:
    The resource bundle of this I18N localization context, or null + if this I18N localization context is empty
    +
    +
    +
    + +

    +getLocale

    +
    +public java.util.Locale getLocale()
    +
    +
    Gets the locale of this I18N localization context. +

    +

    + +
    Returns:
    The locale of this I18N localization context, or null if this + I18N localization context is empty, or its resource bundle is a + (locale-less) root resource bundle.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-frame.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-frame.html new file mode 100644 index 0000000..6907197 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-frame.html @@ -0,0 +1,34 @@ + + + + + + +javax.servlet.jsp.jstl.fmt + + + + + + + + + + + +javax.servlet.jsp.jstl.fmt + + + + +
    +Classes  + +
    +LocaleSupport +
    +LocalizationContext
    + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-summary.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-summary.html new file mode 100644 index 0000000..840f9da --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-summary.html @@ -0,0 +1,151 @@ + + + + + + +javax.servlet.jsp.jstl.fmt + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package javax.servlet.jsp.jstl.fmt +

    + + + + + + + + + + + + + +
    +Class Summary
    LocaleSupportClass which exposes the locale-determination logic for resource bundles + through convenience methods.
    LocalizationContextClass representing an I18N localization context.
    +  + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-tree.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-tree.html new file mode 100644 index 0000000..4c80005 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/fmt/package-tree.html @@ -0,0 +1,143 @@ + + + + + + +javax.servlet.jsp.jstl.fmt Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package javax.servlet.jsp.jstl.fmt +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/Result.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/Result.html new file mode 100644 index 0000000..fd3a564 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/Result.html @@ -0,0 +1,342 @@ + + + + + + +Result + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.sql +
    +Interface Result

    +
    +
    +
    public interface Result
    + +

    +

    This interface represents the result of a <sql:query> + action. It provides access to the following information in the + query result:

    + +
      +
    • The result rows (getRows() and getRowsByIndex()) +
    • The column names (getColumnNames()) +
    • The number of rows in the result (getRowCount()) +
    • An indication whether the rows returned represent the complete result + or just a subset that is limited by a maximum row setting + (isLimitedByMaxRows()) +
    + +

    An implementation of the Result interface provides a + disconnected view into the result of a query. +

    + +

    +

    +
    Author:
    +
    Justyna Horwat
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.String[]getColumnNames() + +
    +          Returns the names of the columns in the result.
    + intgetRowCount() + +
    +          Returns the number of rows in the cached ResultSet
    + java.util.SortedMap[]getRows() + +
    +          Returns the result of the query as an array of SortedMap objects.
    + java.lang.Object[][]getRowsByIndex() + +
    +          Returns the result of the query as an array of arrays.
    + booleanisLimitedByMaxRows() + +
    +          Returns true if the query was limited by a maximum row setting
    +  +

    + + + + + + + + + + + + + + +
    +Method Detail
    + +

    +getRows

    +
    +public java.util.SortedMap[] getRows()
    +
    +

    Returns the result of the query as an array of SortedMap objects. + Each item of the array represents a specific row in the query result.

    + +

    A row is structured as a SortedMap object where the key is the column name, + and where the value is the value associated with the column identified by + the key. The column value is an Object of the Java type corresponding + to the mapping between column types and Java types defined by the JDBC + specification when the ResultSet.getObject() method is used.

    + +

    The SortedMap must use the Comparator + java.util.String.CASE_INSENSITIVE_ORDER. + This makes it possible to access the key as a case insensitive representation + of a column name. This method will therefore work regardless of the case of + the column name returned by the database.

    +

    +

    + +
    Returns:
    The result rows as an array of SortedMap objects
    +
    +
    +
    + +

    +getRowsByIndex

    +
    +public java.lang.Object[][] getRowsByIndex()
    +
    +
    Returns the result of the query as an array of arrays. + The first array dimension represents a specific row in the query result. + The array elements for each row are Object instances of the Java type + corresponding to the mapping between column types and Java types defined + by the JDBC specification when the ResultSet.getObject() method is used. +

    +

    + +
    Returns:
    the result rows as an array of Object[] objects
    +
    +
    +
    + +

    +getColumnNames

    +
    +public java.lang.String[] getColumnNames()
    +
    +
    Returns the names of the columns in the result. The order of the names in the array + matches the order in which columns are returned in method getRowsByIndex(). +

    +

    + +
    Returns:
    the column names as an array of String objects
    +
    +
    +
    + +

    +getRowCount

    +
    +public int getRowCount()
    +
    +
    Returns the number of rows in the cached ResultSet +

    +

    + +
    Returns:
    the number of rows in the result
    +
    +
    +
    + +

    +isLimitedByMaxRows

    +
    +public boolean isLimitedByMaxRows()
    +
    +
    Returns true if the query was limited by a maximum row setting +

    +

    + +
    Returns:
    true if the query was limited by a maximum + row setting
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/ResultSupport.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/ResultSupport.html new file mode 100644 index 0000000..5c6102c --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/ResultSupport.html @@ -0,0 +1,291 @@ + + + + + + +ResultSupport + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.sql +
    +Class ResultSupport

    +
    +java.lang.Object
    +  extended byjavax.servlet.jsp.jstl.sql.ResultSupport
    +
    +
    +
    +
    public class ResultSupport
    extends java.lang.Object
    + +

    +

    Supports the creation of a javax.servlet.jsp.jstl.sql.Result object + from a source java.sql.ResultSet object. A Result object makes it much + easier for page authors to access and manipulate the data resulting + from a SQL query.

    +

    + +

    +

    +
    Author:
    +
    Justyna Horwat
    +
    +
    + +

    + + + + + + + + + + + + + + + + +
    +Constructor Summary
    ResultSupport() + +
    +           
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    +static ResulttoResult(java.sql.ResultSet rs) + +
    +          Converts a ResultSet object to a Result object.
    +static ResulttoResult(java.sql.ResultSet rs, + int maxRows) + +
    +          Converts maxRows of a ResultSet object to a + Result object.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + + + + +
    +Constructor Detail
    + +

    +ResultSupport

    +
    +public ResultSupport()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +toResult

    +
    +public static Result toResult(java.sql.ResultSet rs)
    +
    +
    Converts a ResultSet object to a Result object. +

    +

    +
    Parameters:
    rs - the ResultSet object +
    Returns:
    The Result object created from the ResultSet
    +
    +
    +
    + +

    +toResult

    +
    +public static Result toResult(java.sql.ResultSet rs,
    +                              int maxRows)
    +
    +
    Converts maxRows of a ResultSet object to a + Result object. +

    +

    +
    Parameters:
    rs - the ResultSet object
    maxRows - the maximum number of rows to be cached into the Result object. +
    Returns:
    The Result object created from the ResultSet, + limited by maxRows
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/SQLExecutionTag.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/SQLExecutionTag.html new file mode 100644 index 0000000..bf1ada5 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/SQLExecutionTag.html @@ -0,0 +1,247 @@ + + + + + + +SQLExecutionTag + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.sql +
    +Interface SQLExecutionTag

    +
    +
    +
    public interface SQLExecutionTag
    + +

    +

    This interface allows tag handlers implementing it to receive + values for parameter markers in their SQL statements.

    + +

    This interface is implemented by both <sql:query> and + <sql:update>. Its addSQLParameter() method + is called by nested parameter actions (such as <sql:param>) + to substitute PreparedStatement parameter values for + "?" parameter markers in the SQL statement of the enclosing + SQLExecutionTag action.

    + +

    The given parameter values are converted to their corresponding + SQL type (following the rules in the JDBC specification) before + they are sent to the database.

    + +

    Keeping track of the index of the parameter values being added + is the responsibility of the tag handler implementing this + interface

    + +

    The SQLExcecutionTag interface is exposed in order + to support custom parameter actions which may retrieve their + parameters from any source and process them before substituting + them for a parameter marker in the SQL statement of the + enclosing SQLExecutionTag action

    +

    + +

    +

    +
    Author:
    +
    Justyna Horwat
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidaddSQLParameter(java.lang.Object value) + +
    +          Adds a PreparedStatement parameter value.
    +  +

    + + + + + + + + + + + + + + +
    +Method Detail
    + +

    +addSQLParameter

    +
    +public void addSQLParameter(java.lang.Object value)
    +
    +
    Adds a PreparedStatement parameter value. + Must behave as if it calls PreparedStatement.setObject(int, Object). + For each tag invocation, the integral index passed logically to setObject() + must begin with 1 and must be incremented by 1 for each subsequent invocation + of addSQLParameter(). The Object logically passed to setObject() must be the + unmodified object received in the value argument. +

    +

    +
    Parameters:
    value - the PreparedStatement parameter value
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-frame.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-frame.html new file mode 100644 index 0000000..4f578dd --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-frame.html @@ -0,0 +1,45 @@ + + + + + + +javax.servlet.jsp.jstl.sql + + + + + + + + + + + +javax.servlet.jsp.jstl.sql + + + + +
    +Interfaces  + +
    +Result +
    +SQLExecutionTag
    + + + + + + +
    +Classes  + +
    +ResultSupport
    + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-summary.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-summary.html new file mode 100644 index 0000000..30f5c59 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-summary.html @@ -0,0 +1,167 @@ + + + + + + +javax.servlet.jsp.jstl.sql + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package javax.servlet.jsp.jstl.sql +

    + + + + + + + + + + + + + +
    +Interface Summary
    ResultThis interface represents the result of a <sql:query> + action.
    SQLExecutionTagThis interface allows tag handlers implementing it to receive + values for parameter markers in their SQL statements.
    +  + +

    + + + + + + + + + +
    +Class Summary
    ResultSupportSupports the creation of a javax.servlet.jsp.jstl.sql.Result object + from a source java.sql.ResultSet object.
    +  + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-tree.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-tree.html new file mode 100644 index 0000000..06b51f5 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/sql/package-tree.html @@ -0,0 +1,148 @@ + + + + + + +javax.servlet.jsp.jstl.sql Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package javax.servlet.jsp.jstl.sql +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    +
      +
    • class java.lang.Object +
    +

    +Interface Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/PermittedTaglibsTLV.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/PermittedTaglibsTLV.html new file mode 100644 index 0000000..884d321 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/PermittedTaglibsTLV.html @@ -0,0 +1,300 @@ + + + + + + +PermittedTaglibsTLV + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.tlv +
    +Class PermittedTaglibsTLV

    +
    +java.lang.Object
    +  extended byjavax.servlet.jsp.tagext.TagLibraryValidator
    +      extended byjavax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV
    +
    +
    +
    +
    public class PermittedTaglibsTLV
    extends javax.servlet.jsp.tagext.TagLibraryValidator
    + +

    +

    A TagLibraryValidator class to allow a TLD to restrict what + taglibs (in addition to itself) may be imported on a page where it's + used.

    + +

    This TLV supports the following initialization parameter:

    +
      +
    • permittedTaglibs: A whitespace-separated list of URIs corresponding + to tag libraries permitted to be imported on the page in addition to the tag + library that references PermittedTaglibsTLV (which is allowed implicitly). +
    +

    + +

    +

    +
    Author:
    +
    Shawn Bayern
    +
    +
    + +

    + + + + + + + + + + + + + + + + +
    +Constructor Summary
    PermittedTaglibsTLV() + +
    +           
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    + voidrelease() + +
    +           
    + javax.servlet.jsp.tagext.ValidationMessage[]validate(java.lang.String prefix, + java.lang.String uri, + javax.servlet.jsp.tagext.PageData page) + +
    +           
    + + + + + + + +
    Methods inherited from class javax.servlet.jsp.tagext.TagLibraryValidator
    getInitParameters, setInitParameters
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + + + + +
    +Constructor Detail
    + +

    +PermittedTaglibsTLV

    +
    +public PermittedTaglibsTLV()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +release

    +
    +public void release()
    +
    +
    +
    +
    +
    +
    + +

    +validate

    +
    +public javax.servlet.jsp.tagext.ValidationMessage[] validate(java.lang.String prefix,
    +                                                             java.lang.String uri,
    +                                                             javax.servlet.jsp.tagext.PageData page)
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/ScriptFreeTLV.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/ScriptFreeTLV.html new file mode 100644 index 0000000..85a7d5d --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/ScriptFreeTLV.html @@ -0,0 +1,321 @@ + + + + + + +ScriptFreeTLV + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +javax.servlet.jsp.jstl.tlv +
    +Class ScriptFreeTLV

    +
    +java.lang.Object
    +  extended byjavax.servlet.jsp.tagext.TagLibraryValidator
    +      extended byjavax.servlet.jsp.jstl.tlv.ScriptFreeTLV
    +
    +
    +
    +
    public class ScriptFreeTLV
    extends javax.servlet.jsp.tagext.TagLibraryValidator
    + +

    +

    A TagLibraryValidator for enforcing restrictions against + the use of JSP scripting elements.

    +

    This TLV supports four initialization parameters, for controlling + which of the four types of scripting elements are allowed or prohibited:

    +
      +
    • allowDeclarations: if true, indicates that declaration elements + are not prohibited. +
    • allowScriptlets: if true, indicates that scriptlets are not + prohibited +
    • allowExpressions: if true, indicates that top-level expression + elements (i.e., expressions not associated with request-time attribute + values) are not prohibited. +
    • allowRTExpressions: if true, indicates that expression elements + associated with request-time attribute values are not prohibited. +
    +

    The default value for all for initialization parameters is false, + indicating all forms of scripting elements are to be prohibited.

    +

    + +

    +

    +
    Author:
    +
    Mark A. Kolb, Shawn Bayern (minor changes)
    +
    +
    + +

    + + + + + + + + + + + + + + + + +
    +Constructor Summary
    ScriptFreeTLV() + +
    +          Constructs a new validator instance.
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    + voidsetInitParameters(java.util.Map initParms) + +
    +          Sets the values of the initialization parameters, as supplied in the TLD.
    + javax.servlet.jsp.tagext.ValidationMessage[]validate(java.lang.String prefix, + java.lang.String uri, + javax.servlet.jsp.tagext.PageData page) + +
    +          Validates a single JSP page.
    + + + + + + + +
    Methods inherited from class javax.servlet.jsp.tagext.TagLibraryValidator
    getInitParameters, release
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + + + + +
    +Constructor Detail
    + +

    +ScriptFreeTLV

    +
    +public ScriptFreeTLV()
    +
    +
    Constructs a new validator instance. + Initializes the parser factory to create non-validating, namespace-aware + SAX parsers. +

    +

    + + + + + + + + +
    +Method Detail
    + +

    +setInitParameters

    +
    +public void setInitParameters(java.util.Map initParms)
    +
    +
    Sets the values of the initialization parameters, as supplied in the TLD. +

    +

    +
    Parameters:
    initParms - a mapping from the names of the initialization parameters + to their values, as specified in the TLD.
    +
    +
    +
    + +

    +validate

    +
    +public javax.servlet.jsp.tagext.ValidationMessage[] validate(java.lang.String prefix,
    +                                                             java.lang.String uri,
    +                                                             javax.servlet.jsp.tagext.PageData page)
    +
    +
    Validates a single JSP page. +

    +

    +
    Parameters:
    prefix - the namespace prefix specified by the page for the + custom tag library being validated.
    uri - the URI specified by the page for the TLD of the + custom tag library being validated.
    page - a wrapper around the XML representation of the page + being validated. +
    Returns:
    null, if the page is valid; otherwise, a ValidationMessage[] + containing one or more messages indicating why the page is not valid.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-frame.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-frame.html new file mode 100644 index 0000000..170b7c0 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-frame.html @@ -0,0 +1,34 @@ + + + + + + +javax.servlet.jsp.jstl.tlv + + + + + + + + + + + +javax.servlet.jsp.jstl.tlv + + + + +
    +Classes  + +
    +PermittedTaglibsTLV +
    +ScriptFreeTLV
    + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-summary.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-summary.html new file mode 100644 index 0000000..81d3b1f --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-summary.html @@ -0,0 +1,153 @@ + + + + + + +javax.servlet.jsp.jstl.tlv + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package javax.servlet.jsp.jstl.tlv +

    + + + + + + + + + + + + + +
    +Class Summary
    PermittedTaglibsTLVA TagLibraryValidator class to allow a TLD to restrict what + taglibs (in addition to itself) may be imported on a page where it's + used.
    ScriptFreeTLVA TagLibraryValidator for enforcing restrictions against + the use of JSP scripting elements.
    +  + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-tree.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-tree.html new file mode 100644 index 0000000..d9ca33f --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/javax/servlet/jsp/jstl/tlv/package-tree.html @@ -0,0 +1,145 @@ + + + + + + +javax.servlet.jsp.jstl.tlv Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package javax.servlet.jsp.jstl.tlv +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    +
      +
    • class java.lang.Object +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-frame.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-frame.html new file mode 100644 index 0000000..1676571 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-frame.html @@ -0,0 +1,48 @@ + + + + + + +Overview + + + + + + + + + + + + + + + +
    +
    + + + + + +
    All Classes +

    + +Packages +
    +javax.servlet.jsp.jstl.core +
    +javax.servlet.jsp.jstl.fmt +
    +javax.servlet.jsp.jstl.sql +
    +javax.servlet.jsp.jstl.tlv +
    +

    + +

    +  + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-summary.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-summary.html new file mode 100644 index 0000000..6bac130 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-summary.html @@ -0,0 +1,154 @@ + + + + + + +Overview + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +


    + + + + + + + + + + + + + + + + + + + + + +
    +Packages
    javax.servlet.jsp.jstl.core 
    javax.servlet.jsp.jstl.fmt 
    javax.servlet.jsp.jstl.sql 
    javax.servlet.jsp.jstl.tlv 
    + +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-tree.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-tree.html new file mode 100644 index 0000000..673cb08 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/overview-tree.html @@ -0,0 +1,157 @@ + + + + + + +Class Hierarchy + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For All Packages

    +
    +
    +
    Package Hierarchies:
    javax.servlet.jsp.jstl.core, javax.servlet.jsp.jstl.fmt, javax.servlet.jsp.jstl.sql, javax.servlet.jsp.jstl.tlv
    +
    +

    +Class Hierarchy +

    +
      +
    • class java.lang.Object
        +
      • class javax.servlet.jsp.jstl.core.Config
      • class javax.servlet.jsp.jstl.fmt.LocaleSupport
      • class javax.servlet.jsp.jstl.fmt.LocalizationContext
      • class javax.servlet.jsp.jstl.sql.ResultSupport
      • class javax.servlet.jsp.tagext.TagLibraryValidator +
      • class javax.servlet.jsp.tagext.TagSupport (implements javax.servlet.jsp.tagext.IterationTag, java.io.Serializable) +
          +
        • class javax.servlet.jsp.jstl.core.ConditionalTagSupport
        • class javax.servlet.jsp.jstl.core.LoopTagSupport (implements javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.jstl.core.LoopTag, javax.servlet.jsp.tagext.TryCatchFinally) +
        +
      +
    +

    +Interface Hierarchy +

    +
      +
    • interface javax.servlet.jsp.tagext.JspTag
        +
      • interface javax.servlet.jsp.tagext.Tag
          +
        • interface javax.servlet.jsp.jstl.core.LoopTag
        +
      +
    • interface javax.servlet.jsp.jstl.core.LoopTagStatus
    • interface javax.servlet.jsp.jstl.sql.Result
    • interface javax.servlet.jsp.jstl.sql.SQLExecutionTag
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/package-list b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/package-list new file mode 100644 index 0000000..3de700a --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/package-list @@ -0,0 +1,4 @@ +javax.servlet.jsp.jstl.core +javax.servlet.jsp.jstl.fmt +javax.servlet.jsp.jstl.sql +javax.servlet.jsp.jstl.tlv diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/packages.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/packages.html new file mode 100644 index 0000000..062d00f --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/packages.html @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + +
    + +
    + +
    +
    +The front page has been relocated.Please see: +
    +          Frame version +
    +          Non-frame version.
    + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/resources/inherit.gif b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/resources/inherit.gif new file mode 100644 index 0000000..c814867 Binary files /dev/null and b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/resources/inherit.gif differ diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/serialized-form.html b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/serialized-form.html new file mode 100644 index 0000000..734a151 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/serialized-form.html @@ -0,0 +1,355 @@ + + + + + + +Serialized Form + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Serialized Form

    +
    +
    + + + + + +
    +Package javax.servlet.jsp.jstl.core
    + +

    + + + + + +
    +Class javax.servlet.jsp.jstl.core.ConditionalTagSupport extends javax.servlet.jsp.tagext.TagSupport implements Serializable
    + +

    + + + + + +
    +Serialized Fields
    + +

    +result

    +
    +boolean result
    +
    +
    +
    +
    +
    + +

    +var

    +
    +java.lang.String var
    +
    +
    +
    +
    +
    + +

    +scope

    +
    +int scope
    +
    +
    +
    +
    + +

    + + + + + +
    +Class javax.servlet.jsp.jstl.core.LoopTagSupport extends javax.servlet.jsp.tagext.TagSupport implements Serializable
    + +

    + + + + + +
    +Serialized Fields
    + +

    +begin

    +
    +int begin
    +
    +
    Starting index ('begin' attribute) +

    +

    +
    +
    +
    + +

    +end

    +
    +int end
    +
    +
    Ending index of the iteration ('end' attribute). + A value of -1 internally indicates 'no end + specified', although accessors for the core JSTL tags do not + allow this value to be supplied directly by the user. +

    +

    +
    +
    +
    + +

    +step

    +
    +int step
    +
    +
    Iteration step ('step' attribute) +

    +

    +
    +
    +
    + +

    +beginSpecified

    +
    +boolean beginSpecified
    +
    +
    Boolean flag indicating whether 'begin' was specified. +

    +

    +
    +
    +
    + +

    +endSpecified

    +
    +boolean endSpecified
    +
    +
    Boolean flag indicating whether 'end' was specified. +

    +

    +
    +
    +
    + +

    +stepSpecified

    +
    +boolean stepSpecified
    +
    +
    Boolean flag indicating whether 'step' was specified. +

    +

    +
    +
    +
    + +

    +itemId

    +
    +java.lang.String itemId
    +
    +
    Attribute-exposing control +

    +

    +
    +
    +
    + +

    +statusId

    +
    +java.lang.String statusId
    +
    +
    Attribute-exposing control +

    +

    +
    +
    +
    + +

    +status

    +
    +LoopTagStatus status
    +
    +
    +
    +
    +
    + +

    +item

    +
    +java.lang.Object item
    +
    +
    +
    +
    +
    + +

    +index

    +
    +int index
    +
    +
    +
    +
    +
    + +

    +count

    +
    +int count
    +
    +
    +
    +
    +
    + +

    +last

    +
    +boolean last
    +
    +
    +
    +
    + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/stylesheet.css b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/stylesheet.css new file mode 100644 index 0000000..14c3737 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/javadoc/stylesheet.css @@ -0,0 +1,29 @@ +/* Javadoc style sheet */ + +/* Define colors, fonts and other style attributes here to override the defaults */ + +/* Page background color */ +body { background-color: #FFFFFF } + +/* Headings */ +h1 { font-size: 145% } + +/* Table colors */ +.TableHeadingColor { background: #CCCCFF } /* Dark mauve */ +.TableSubHeadingColor { background: #EEEEFF } /* Light mauve */ +.TableRowColor { background: #FFFFFF } /* White */ + +/* Font used in left-hand frame lists */ +.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif } +.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif } +.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif } + +/* Navigation bar fonts and colors */ +.NavBarCell1 { background-color:#EEEEFF;} /* Light mauve */ +.NavBarCell1Rev { background-color:#00008B;} /* Dark Blue */ +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;} +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;} + +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/jstl.jar b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/jstl.jar new file mode 100644 index 0000000..a02abec Binary files /dev/null and b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/jstl.jar differ diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/standard.jar b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/standard.jar new file mode 100644 index 0000000..bc528ac Binary files /dev/null and b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/lib/standard.jar differ diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-doc.war b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-doc.war new file mode 100644 index 0000000..927eda7 Binary files /dev/null and b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-doc.war differ diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-examples.war b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-examples.war new file mode 100644 index 0000000..484f8dd Binary files /dev/null and b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/standard-examples.war differ diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0-rt.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0-rt.tld new file mode 100644 index 0000000..2203657 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0-rt.tld @@ -0,0 +1,393 @@ + + + + 1.0 + 1.2 + c_rt + http://java.sun.com/jstl/core_rt + JSTL core RT + JSTL 1.0 core library + + + + org.apache.taglibs.standard.tlv.JstlCoreTLV + + + Provides core validation features for JSTL tags. + + + + + catch + org.apache.taglibs.standard.tag.common.core.CatchTag + JSP + + Catches any Throwable that occurs in its body and optionally + exposes it. + + + var + false + false + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + if + org.apache.taglibs.standard.tag.rt.core.IfTag + JSP + + Simple conditional tag, which evalutes its body if the + supplied condition is true and optionally exposes a Boolean + scripting variable representing the evaluation of this condition + + + test + true + true + boolean + + + var + false + false + + + scope + false + false + + + + + import + org.apache.taglibs.standard.tag.rt.core.ImportTag + org.apache.taglibs.standard.tei.ImportTEI + JSP + + Retrieves an absolute or relative URL and exposes its contents + to either the page, a String in 'var', or a Reader in 'varReader'. + + + url + true + true + + + var + false + false + + + scope + false + false + + + varReader + false + false + + + context + false + true + + + charEncoding + false + true + + + + + forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag + org.apache.taglibs.standard.tei.ForEachTEI + JSP + + The basic iteration tag, accepting many different + collection types and supporting subsetting and other + functionality + + + items + false + true + java.lang.Object + + + begin + false + true + int + + + end + false + true + int + + + step + false + true + int + + + var + false + false + + + varStatus + false + false + + + + + forTokens + org.apache.taglibs.standard.tag.rt.core.ForTokensTag + JSP + + Iterates over tokens, separated by the supplied delimeters + + + items + true + true + java.lang.String + + + delims + true + true + java.lang.String + + + begin + false + true + int + + + end + false + true + int + + + step + false + true + int + + + var + false + false + + + varStatus + false + false + + + + + out + org.apache.taglibs.standard.tag.rt.core.OutTag + JSP + + Like <%= ... >, but for expressions. + + + value + true + true + + + default + false + true + + + escapeXml + false + true + + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.rt.core.ParamTag + JSP + + Adds a parameter to a containing 'import' tag's URL. + + + name + true + true + + + value + false + true + + + + + redirect + org.apache.taglibs.standard.tag.rt.core.RedirectTag + JSP + + Redirects to a new URL. + + + var + false + false + + + scope + false + false + + + url + false + true + + + context + false + true + + + + + remove + org.apache.taglibs.standard.tag.common.core.RemoveTag + empty + + Removes a scoped variable (from a particular scope, if specified). + + + var + true + false + + + scope + false + false + + + + + set + org.apache.taglibs.standard.tag.rt.core.SetTag + JSP + + Sets the result of an expression evaluation in a 'scope' + + + var + false + false + + + value + false + true + + + target + false + true + + + property + false + true + + + scope + false + false + + + + + url + org.apache.taglibs.standard.tag.rt.core.UrlTag + JSP + + Creates a URL with optional query parameters. + + + var + false + false + + + scope + false + false + + + value + false + true + + + context + false + true + + + + + when + org.apache.taglibs.standard.tag.rt.core.WhenTag + JSP + + Subtag of <choose> that includes its body if its + condition evalutes to 'true' + + + test + true + true + boolean + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0.tld new file mode 100644 index 0000000..ce80e8d --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c-1_0.tld @@ -0,0 +1,416 @@ + + + + 1.0 + 1.2 + c + http://java.sun.com/jstl/core + JSTL core + JSTL 1.0 core library + + + + org.apache.taglibs.standard.tlv.JstlCoreTLV + + + expressionAttributes + + out:value + out:default + out:escapeXml + if:test + import:url + import:context + import:charEncoding + forEach:items + forEach:begin + forEach:end + forEach:step + forTokens:items + forTokens:begin + forTokens:end + forTokens:step + param:encode + param:name + param:value + redirect:context + redirect:url + set:property + set:target + set:value + url:context + url:value + when:test + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + catch + org.apache.taglibs.standard.tag.common.core.CatchTag + JSP + + Catches any Throwable that occurs in its body and optionally + exposes it. + + + var + false + false + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + out + org.apache.taglibs.standard.tag.el.core.OutTag + JSP + + Like <%= ... >, but for expressions. + + + value + true + false + + + default + false + false + + + escapeXml + false + false + + + + + if + org.apache.taglibs.standard.tag.el.core.IfTag + JSP + + Simple conditional tag, which evalutes its body if the + supplied condition is true and optionally exposes a Boolean + scripting variable representing the evaluation of this condition + + + test + true + false + + + var + false + false + + + scope + false + false + + + + + import + org.apache.taglibs.standard.tag.el.core.ImportTag + org.apache.taglibs.standard.tei.ImportTEI + JSP + + Retrieves an absolute or relative URL and exposes its contents + to either the page, a String in 'var', or a Reader in 'varReader'. + + + url + true + false + + + var + false + false + + + scope + false + false + + + varReader + false + false + + + context + false + false + + + charEncoding + false + false + + + + + forEach + org.apache.taglibs.standard.tag.el.core.ForEachTag + org.apache.taglibs.standard.tei.ForEachTEI + JSP + + The basic iteration tag, accepting many different + collection types and supporting subsetting and other + functionality + + + items + false + false + + + begin + false + false + + + end + false + false + + + step + false + false + + + var + false + false + + + varStatus + false + false + + + + + forTokens + org.apache.taglibs.standard.tag.el.core.ForTokensTag + JSP + + Iterates over tokens, separated by the supplied delimeters + + + items + true + false + + + delims + true + false + + + begin + false + false + + + end + false + false + + + step + false + false + + + var + false + false + + + varStatus + false + false + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.el.core.ParamTag + JSP + + Adds a parameter to a containing 'import' tag's URL. + + + name + true + false + + + value + false + false + + + + + redirect + org.apache.taglibs.standard.tag.el.core.RedirectTag + JSP + + Redirects to a new URL. + + + var + false + false + + + scope + false + false + + + url + true + false + + + context + false + false + + + + + remove + org.apache.taglibs.standard.tag.common.core.RemoveTag + empty + + Removes a scoped variable (from a particular scope, if specified). + + + var + true + false + + + scope + false + false + + + + + set + org.apache.taglibs.standard.tag.el.core.SetTag + JSP + + Sets the result of an expression evaluation in a 'scope' + + + var + false + false + + + value + false + false + + + target + false + false + + + property + false + false + + + scope + false + false + + + + + url + org.apache.taglibs.standard.tag.el.core.UrlTag + JSP + + Prints or exposes a URL with optional query parameters + (via the c:param tag). + + + var + false + false + + + scope + false + false + + + value + true + false + + + context + false + false + + + + + when + org.apache.taglibs.standard.tag.el.core.WhenTag + JSP + + Subtag of <choose> that includes its body if its + condition evalutes to 'true' + + + test + true + false + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c.tld new file mode 100644 index 0000000..22698c9 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/c.tld @@ -0,0 +1,563 @@ + + + + + JSTL 1.1 core library + JSTL core + 1.1 + c + http://java.sun.com/jsp/jstl/core + + + + Provides core validation features for JSTL tags. + + + org.apache.taglibs.standard.tlv.JstlCoreTLV + + + + + + Catches any Throwable that occurs in its body and optionally + exposes it. + + catch + org.apache.taglibs.standard.tag.common.core.CatchTag + JSP + + +Name of the exported scoped variable for the +exception thrown from a nested action. The type of the +scoped variable is the type of the exception thrown. + + var + false + false + + + + + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + + + + Simple conditional tag, which evalutes its body if the + supplied condition is true and optionally exposes a Boolean + scripting variable representing the evaluation of this condition + + if + org.apache.taglibs.standard.tag.rt.core.IfTag + JSP + + +The test condition that determines whether or +not the body content should be processed. + + test + true + true + boolean + + + +Name of the exported scoped variable for the +resulting value of the test condition. The type +of the scoped variable is Boolean. + + var + false + false + + + +Scope for var. + + scope + false + false + + + + + + Retrieves an absolute or relative URL and exposes its contents + to either the page, a String in 'var', or a Reader in 'varReader'. + + import + org.apache.taglibs.standard.tag.rt.core.ImportTag + org.apache.taglibs.standard.tei.ImportTEI + JSP + + +The URL of the resource to import. + + url + true + true + + + +Name of the exported scoped variable for the +resource's content. The type of the scoped +variable is String. + + var + false + false + + + +Scope for var. + + scope + false + false + + + +Name of the exported scoped variable for the +resource's content. The type of the scoped +variable is Reader. + + varReader + false + false + + + +Name of the context when accessing a relative +URL resource that belongs to a foreign +context. + + context + false + true + + + +Character encoding of the content at the input +resource. + + charEncoding + false + true + + + + + + The basic iteration tag, accepting many different + collection types and supporting subsetting and other + functionality + + forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag + org.apache.taglibs.standard.tei.ForEachTEI + JSP + + +Collection of items to iterate over. + + items + false + true + java.lang.Object + + + +If items specified: +Iteration begins at the item located at the +specified index. First item of the collection has +index 0. +If items not specified: +Iteration begins with index set at the value +specified. + + begin + false + true + int + + + +If items specified: +Iteration ends at the item located at the +specified index (inclusive). +If items not specified: +Iteration ends when index reaches the value +specified. + + end + false + true + int + + + +Iteration will only process every step items of +the collection, starting with the first one. + + step + false + true + int + + + +Name of the exported scoped variable for the +current item of the iteration. This scoped +variable has nested visibility. Its type depends +on the object of the underlying collection. + + var + false + false + + + +Name of the exported scoped variable for the +status of the iteration. Object exported is of type +javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped variable has nested +visibility. + + varStatus + false + false + + + + + + Iterates over tokens, separated by the supplied delimeters + + forTokens + org.apache.taglibs.standard.tag.rt.core.ForTokensTag + JSP + + +String of tokens to iterate over. + + items + true + true + java.lang.String + + + +The set of delimiters (the characters that +separate the tokens in the string). + + delims + true + true + java.lang.String + + + +Iteration begins at the token located at the +specified index. First token has index 0. + + begin + false + true + int + + + +Iteration ends at the token located at the +specified index (inclusive). + + end + false + true + int + + + +Iteration will only process every step tokens +of the string, starting with the first one. + + step + false + true + int + + + +Name of the exported scoped variable for the +current item of the iteration. This scoped +variable has nested visibility. + + var + false + false + + + +Name of the exported scoped variable for the +status of the iteration. Object exported is of +type +javax.servlet.jsp.jstl.core.LoopTag +Status. This scoped variable has nested +visibility. + + varStatus + false + false + + + + + + Like <%= ... >, but for expressions. + + out + org.apache.taglibs.standard.tag.rt.core.OutTag + JSP + + +Expression to be evaluated. + + value + true + true + + + +Default value if the resulting value is null. + + default + false + true + + + +Determines whether characters <,>,&,'," in the +resulting string should be converted to their +corresponding character entity codes. Default value is +true. + + escapeXml + false + true + + + + + + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + + + + Adds a parameter to a containing 'import' tag's URL. + + param + org.apache.taglibs.standard.tag.rt.core.ParamTag + JSP + + +Name of the query string parameter. + + name + true + true + + + +Value of the parameter. + + value + false + true + + + + + + Redirects to a new URL. + + redirect + org.apache.taglibs.standard.tag.rt.core.RedirectTag + JSP + + +The URL of the resource to redirect to. + + url + false + true + + + +Name of the context when redirecting to a relative URL +resource that belongs to a foreign context. + + context + false + true + + + + + + Removes a scoped variable (from a particular scope, if specified). + + remove + org.apache.taglibs.standard.tag.common.core.RemoveTag + empty + + +Name of the scoped variable to be removed. + + var + true + false + + + +Scope for var. + + scope + false + false + + + + + + Sets the result of an expression evaluation in a 'scope' + + set + org.apache.taglibs.standard.tag.rt.core.SetTag + JSP + + +Name of the exported scoped variable to hold the value +specified in the action. The type of the scoped variable is +whatever type the value expression evaluates to. + + var + false + false + + + +Expression to be evaluated. + + value + false + true + + + +Target object whose property will be set. Must evaluate to +a JavaBeans object with setter property property, or to a +java.util.Map object. + + target + false + true + + + +Name of the property to be set in the target object. + + property + false + true + + + +Scope for var. + + scope + false + false + + + + + + Creates a URL with optional query parameters. + + url + org.apache.taglibs.standard.tag.rt.core.UrlTag + JSP + + +Name of the exported scoped variable for the +processed url. The type of the scoped variable is +String. + + var + false + false + + + +Scope for var. + + scope + false + false + + + +URL to be processed. + + value + false + true + + + +Name of the context when specifying a relative URL +resource that belongs to a foreign context. + + context + false + true + + + + + + Subtag of <choose> that includes its body if its + condition evalutes to 'true' + + when + org.apache.taglibs.standard.tag.rt.core.WhenTag + JSP + + +The test condition that determines whether or not the +body content should be processed. + + test + true + true + boolean + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0-rt.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0-rt.tld new file mode 100644 index 0000000..45d1545 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0-rt.tld @@ -0,0 +1,403 @@ + + + + 1.0 + 1.2 + fmt_rt + http://java.sun.com/jstl/fmt_rt + JSTL fmt RT + JSTL 1.0 i18n-capable formatting library + + + + org.apache.taglibs.standard.tlv.JstlFmtTLV + + + Provides core validation features for JSTL tags. + + + + + requestEncoding + org.apache.taglibs.standard.tag.rt.fmt.RequestEncodingTag + empty + + Sets the request character encoding + + + value + false + true + + + + + setLocale + org.apache.taglibs.standard.tag.rt.fmt.SetLocaleTag + empty + + Stores the given locale in the locale configuration variable + + + value + true + true + + + variant + false + true + + + scope + false + false + + + + + timeZone + org.apache.taglibs.standard.tag.rt.fmt.TimeZoneTag + JSP + + Specifies the time zone for any time formatting or parsing actions + nested in its body + + + value + true + true + + + + + setTimeZone + org.apache.taglibs.standard.tag.rt.fmt.SetTimeZoneTag + empty + + Stores the given time zone in the time zone configuration variable + + + value + true + true + + + var + false + false + + + scope + false + false + + + + + bundle + org.apache.taglibs.standard.tag.rt.fmt.BundleTag + JSP + + Loads a resource bundle to be used by its tag body + + + basename + true + true + + + prefix + false + true + + + + + setBundle + org.apache.taglibs.standard.tag.rt.fmt.SetBundleTag + empty + + Loads a resource bundle and stores it in the named scoped variable or + the bundle configuration variable + + + basename + true + true + + + var + false + false + + + scope + false + false + + + + + message + org.apache.taglibs.standard.tag.rt.fmt.MessageTag + JSP + + Maps key to localized message and performs parametric replacement + + + key + false + true + + + bundle + false + true + + + var + false + false + + + scope + false + false + + + + + param + org.apache.taglibs.standard.tag.rt.fmt.ParamTag + JSP + + Supplies an argument for parametric replacement to a containing + <message> tag + + + value + false + true + + + + + formatNumber + org.apache.taglibs.standard.tag.rt.fmt.FormatNumberTag + JSP + + Formats a numeric value as a number, currency, or percentage + + + value + false + true + + + type + false + true + + + pattern + false + true + + + currencyCode + false + true + + + currencySymbol + false + true + + + groupingUsed + false + true + + + maxIntegerDigits + false + true + + + minIntegerDigits + false + true + + + maxFractionDigits + false + true + + + minFractionDigits + false + true + + + var + false + false + + + scope + false + false + + + + + parseNumber + org.apache.taglibs.standard.tag.rt.fmt.ParseNumberTag + JSP + + Parses the string representation of a number, currency, or percentage + + + value + false + true + + + type + false + true + + + pattern + false + true + + + parseLocale + false + true + + + integerOnly + false + true + + + var + false + false + + + scope + false + false + + + + + formatDate + org.apache.taglibs.standard.tag.rt.fmt.FormatDateTag + empty + + Formats a date and/or time using the supplied styles and pattern + + + value + true + true + + + type + false + true + + + dateStyle + false + true + + + timeStyle + false + true + + + pattern + false + true + + + timeZone + false + true + + + var + false + false + + + scope + false + false + + + + + parseDate + org.apache.taglibs.standard.tag.rt.fmt.ParseDateTag + JSP + + Parses the string representation of a date and/or time + + + value + false + true + + + type + false + true + + + dateStyle + false + true + + + timeStyle + false + true + + + pattern + false + true + + + timeZone + false + true + + + parseLocale + false + true + + + var + false + false + + + scope + false + false + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0.tld new file mode 100644 index 0000000..20523ee --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt-1_0.tld @@ -0,0 +1,442 @@ + + + + 1.0 + 1.2 + fmt + http://java.sun.com/jstl/fmt + JSTL fmt + JSTL 1.0 i18n-capable formatting library + + + + org.apache.taglibs.standard.tlv.JstlFmtTLV + + + expressionAttributes + + requestEncoding:value + setLocale:value + setLocale:variant + timeZone:value + setTimeZone:value + bundle:basename + bundle:prefix + setBundle:basename + message:key + message:bundle + param:value + formatNumber:value + formatNumber:pattern + formatNumber:currencyCode + formatNumber:currencySymbol + formatNumber:groupingUsed + formatNumber:maxIntegerDigits + formatNumber:minIntegerDigits + formatNumber:maxFractionDigits + formatNumber:minFractionDigits + parseNumber:value + parseNumber:pattern + parseNumber:parseLocale + parseNumber:integerOnly + formatDate:value + formatDate:pattern + formatDate:timeZone + parseDate:value + parseDate:pattern + parseDate:timeZone + parseDate:parseLocale + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + requestEncoding + org.apache.taglibs.standard.tag.el.fmt.RequestEncodingTag + empty + + Sets the request character encoding + + + value + false + false + + + + + setLocale + org.apache.taglibs.standard.tag.el.fmt.SetLocaleTag + empty + + Stores the given locale in the locale configuration variable + + + value + true + false + + + variant + false + false + + + scope + false + false + + + + + timeZone + org.apache.taglibs.standard.tag.el.fmt.TimeZoneTag + JSP + + Specifies the time zone for any time formatting or parsing actions + nested in its body + + + value + true + false + + + + + setTimeZone + org.apache.taglibs.standard.tag.el.fmt.SetTimeZoneTag + empty + + Stores the given time zone in the time zone configuration variable + + + value + true + false + + + var + false + false + + + scope + false + false + + + + + bundle + org.apache.taglibs.standard.tag.el.fmt.BundleTag + JSP + + Loads a resource bundle to be used by its tag body + + + basename + true + false + + + prefix + false + false + + + + + setBundle + org.apache.taglibs.standard.tag.el.fmt.SetBundleTag + empty + + Loads a resource bundle and stores it in the named scoped variable or + the bundle configuration variable + + + basename + true + false + + + var + false + false + + + scope + false + false + + + + + message + org.apache.taglibs.standard.tag.el.fmt.MessageTag + JSP + + Maps key to localized message and performs parametric replacement + + + key + false + false + + + bundle + false + false + + + var + false + false + + + scope + false + false + + + + + param + org.apache.taglibs.standard.tag.el.fmt.ParamTag + JSP + + Supplies an argument for parametric replacement to a containing + <message> tag + + + value + false + false + + + + + formatNumber + org.apache.taglibs.standard.tag.el.fmt.FormatNumberTag + JSP + + Formats a numeric value as a number, currency, or percentage + + + value + false + false + + + type + false + false + + + pattern + false + false + + + currencyCode + false + false + + + currencySymbol + false + false + + + groupingUsed + false + false + + + maxIntegerDigits + false + false + + + minIntegerDigits + false + false + + + maxFractionDigits + false + false + + + minFractionDigits + false + false + + + var + false + false + + + scope + false + false + + + + + parseNumber + org.apache.taglibs.standard.tag.el.fmt.ParseNumberTag + JSP + + Parses the string representation of a number, currency, or percentage + + + value + false + false + + + type + false + false + + + pattern + false + false + + + parseLocale + false + false + + + integerOnly + false + false + + + var + false + false + + + scope + false + false + + + + + formatDate + org.apache.taglibs.standard.tag.el.fmt.FormatDateTag + empty + + Formats a date and/or time using the supplied styles and pattern + + + value + true + false + + + type + false + false + + + dateStyle + false + false + + + timeStyle + false + false + + + pattern + false + false + + + timeZone + false + false + + + var + false + false + + + scope + false + false + + + + + parseDate + org.apache.taglibs.standard.tag.el.fmt.ParseDateTag + JSP + + Parses the string representation of a date and/or time + + + value + false + false + + + type + false + false + + + dateStyle + false + false + + + timeStyle + false + false + + + pattern + false + false + + + timeZone + false + false + + + parseLocale + false + false + + + var + false + false + + + scope + false + false + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt.tld new file mode 100644 index 0000000..3b9a54a --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fmt.tld @@ -0,0 +1,671 @@ + + + + + JSTL 1.1 i18n-capable formatting library + JSTL fmt + 1.1 + fmt + http://java.sun.com/jsp/jstl/fmt + + + + Provides core validation features for JSTL tags. + + + org.apache.taglibs.standard.tlv.JstlFmtTLV + + + + + + Sets the request character encoding + + requestEncoding + org.apache.taglibs.standard.tag.rt.fmt.RequestEncodingTag + empty + + +Name of character encoding to be applied when +decoding request parameters. + + value + false + true + + + + + + Stores the given locale in the locale configuration variable + + setLocale + org.apache.taglibs.standard.tag.rt.fmt.SetLocaleTag + empty + + +A String value is interpreted as the +printable representation of a locale, which +must contain a two-letter (lower-case) +language code (as defined by ISO-639), +and may contain a two-letter (upper-case) +country code (as defined by ISO-3166). +Language and country codes must be +separated by hyphen (-) or underscore +(_). + + value + true + true + + + +Vendor- or browser-specific variant. +See the java.util.Locale javadocs for +more information on variants. + + variant + false + true + + + +Scope of the locale configuration variable. + + scope + false + false + + + + + + Specifies the time zone for any time formatting or parsing actions + nested in its body + + timeZone + org.apache.taglibs.standard.tag.rt.fmt.TimeZoneTag + JSP + + +The time zone. A String value is interpreted as +a time zone ID. This may be one of the time zone +IDs supported by the Java platform (such as +"America/Los_Angeles") or a custom time zone +ID (such as "GMT-8"). See +java.util.TimeZone for more information on +supported time zone formats. + + value + true + true + + + + + + Stores the given time zone in the time zone configuration variable + + setTimeZone + org.apache.taglibs.standard.tag.rt.fmt.SetTimeZoneTag + empty + + +The time zone. A String value is interpreted as +a time zone ID. This may be one of the time zone +IDs supported by the Java platform (such as +"America/Los_Angeles") or a custom time zone +ID (such as "GMT-8"). See java.util.TimeZone for +more information on supported time zone +formats. + + value + true + true + + + +Name of the exported scoped variable which +stores the time zone of type +java.util.TimeZone. + + var + false + false + + + +Scope of var or the time zone configuration +variable. + + scope + false + false + + + + + + Loads a resource bundle to be used by its tag body + + bundle + org.apache.taglibs.standard.tag.rt.fmt.BundleTag + JSP + + +Resource bundle base name. This is the bundle's +fully-qualified resource name, which has the same +form as a fully-qualified class name, that is, it uses +"." as the package component separator and does not +have any file type (such as ".class" or ".properties") +suffix. + + basename + true + true + + + +Prefix to be prepended to the value of the message +key of any nested <fmt:message> action. + + prefix + false + true + + + + + + Loads a resource bundle and stores it in the named scoped variable or + the bundle configuration variable + + setBundle + org.apache.taglibs.standard.tag.rt.fmt.SetBundleTag + empty + + +Resource bundle base name. This is the bundle's +fully-qualified resource name, which has the same +form as a fully-qualified class name, that is, it uses +"." as the package component separator and does not +have any file type (such as ".class" or ".properties") +suffix. + + basename + true + true + + + +Name of the exported scoped variable which stores +the i18n localization context of type +javax.servlet.jsp.jstl.fmt.LocalizationC +ontext. + + var + false + false + + + +Scope of var or the localization context +configuration variable. + + scope + false + false + + + + + + Maps key to localized message and performs parametric replacement + + message + org.apache.taglibs.standard.tag.rt.fmt.MessageTag + JSP + + +Message key to be looked up. + + key + false + true + + + +Localization context in whose resource +bundle the message key is looked up. + + bundle + false + true + + + +Name of the exported scoped variable +which stores the localized message. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Supplies an argument for parametric replacement to a containing + <message> tag + + param + org.apache.taglibs.standard.tag.rt.fmt.ParamTag + JSP + + +Argument used for parametric replacement. + + value + false + true + + + + + + Formats a numeric value as a number, currency, or percentage + + formatNumber + org.apache.taglibs.standard.tag.rt.fmt.FormatNumberTag + JSP + + +Numeric value to be formatted. + + value + false + true + + + +Specifies whether the value is to be +formatted as number, currency, or +percentage. + + type + false + true + + + +Custom formatting pattern. + + pattern + false + true + + + +ISO 4217 currency code. Applied only +when formatting currencies (i.e. if type is +equal to "currency"); ignored otherwise. + + currencyCode + false + true + + + +Currency symbol. Applied only when +formatting currencies (i.e. if type is equal +to "currency"); ignored otherwise. + + currencySymbol + false + true + + + +Specifies whether the formatted output +will contain any grouping separators. + + groupingUsed + false + true + + + +Maximum number of digits in the integer +portion of the formatted output. + + maxIntegerDigits + false + true + + + +Minimum number of digits in the integer +portion of the formatted output. + + minIntegerDigits + false + true + + + +Maximum number of digits in the +fractional portion of the formatted output. + + maxFractionDigits + false + true + + + +Minimum number of digits in the +fractional portion of the formatted output. + + minFractionDigits + false + true + + + +Name of the exported scoped variable +which stores the formatted result as a +String. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Parses the string representation of a number, currency, or percentage + + parseNumber + org.apache.taglibs.standard.tag.rt.fmt.ParseNumberTag + JSP + + +String to be parsed. + + value + false + true + + + +Specifies whether the string in the value +attribute should be parsed as a number, +currency, or percentage. + + type + false + true + + + +Custom formatting pattern that determines +how the string in the value attribute is to be +parsed. + + pattern + false + true + + + +Locale whose default formatting pattern (for +numbers, currencies, or percentages, +respectively) is to be used during the parse +operation, or to which the pattern specified +via the pattern attribute (if present) is +applied. + + parseLocale + false + true + + + +Specifies whether just the integer portion of +the given value should be parsed. + + integerOnly + false + true + + + +Name of the exported scoped variable which +stores the parsed result (of type +java.lang.Number). + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Formats a date and/or time using the supplied styles and pattern + + formatDate + org.apache.taglibs.standard.tag.rt.fmt.FormatDateTag + empty + + +Date and/or time to be formatted. + + value + true + true + + + +Specifies whether the time, the date, or both +the time and date components of the given +date are to be formatted. + + type + false + true + + + +Predefined formatting style for dates. Follows +the semantics defined in class +java.text.DateFormat. Applied only +when formatting a date or both a date and +time (i.e. if type is missing or is equal to +"date" or "both"); ignored otherwise. + + dateStyle + false + true + + + +Predefined formatting style for times. Follows +the semantics defined in class +java.text.DateFormat. Applied only +when formatting a time or both a date and +time (i.e. if type is equal to "time" or "both"); +ignored otherwise. + + timeStyle + false + true + + + +Custom formatting style for dates and times. + + pattern + false + true + + + +Time zone in which to represent the formatted +time. + + timeZone + false + true + + + +Name of the exported scoped variable which +stores the formatted result as a String. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Parses the string representation of a date and/or time + + parseDate + org.apache.taglibs.standard.tag.rt.fmt.ParseDateTag + JSP + + +Date string to be parsed. + + value + false + true + + + +Specifies whether the date string in the +value attribute is supposed to contain a +time, a date, or both. + + type + false + true + + + +Predefined formatting style for days +which determines how the date +component of the date string is to be +parsed. Applied only when formatting a +date or both a date and time (i.e. if type +is missing or is equal to "date" or "both"); +ignored otherwise. + + dateStyle + false + true + + + +Predefined formatting styles for times +which determines how the time +component in the date string is to be +parsed. Applied only when formatting a +time or both a date and time (i.e. if type +is equal to "time" or "both"); ignored +otherwise. + + timeStyle + false + true + + + +Custom formatting pattern which +determines how the date string is to be +parsed. + + pattern + false + true + + + +Time zone in which to interpret any time +information in the date string. + + timeZone + false + true + + + +Locale whose predefined formatting styles +for dates and times are to be used during +the parse operation, or to which the +pattern specified via the pattern +attribute (if present) is applied. + + parseLocale + false + true + + + +Name of the exported scoped variable in +which the parsing result (of type +java.util.Date) is stored. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fn.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fn.tld new file mode 100644 index 0000000..12d4ca8 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/fn.tld @@ -0,0 +1,207 @@ + + + + + JSTL 1.1 functions library + JSTL functions + 1.1 + fn + http://java.sun.com/jsp/jstl/functions + + + + Tests if an input string contains the specified substring. + + contains + org.apache.taglibs.standard.functions.Functions + boolean contains(java.lang.String, java.lang.String) + + <c:if test="${fn:contains(name, searchString)}"> + + + + + + Tests if an input string contains the specified substring in a case insensitive way. + + containsIgnoreCase + org.apache.taglibs.standard.functions.Functions + boolean containsIgnoreCase(java.lang.String, java.lang.String) + + <c:if test="${fn:containsIgnoreCase(name, searchString)}"> + + + + + + Tests if an input string ends with the specified suffix. + + endsWith + org.apache.taglibs.standard.functions.Functions + boolean endsWith(java.lang.String, java.lang.String) + + <c:if test="${fn:endsWith(filename, ".txt")}"> + + + + + + Escapes characters that could be interpreted as XML markup. + + escapeXml + org.apache.taglibs.standard.functions.Functions + java.lang.String escapeXml(java.lang.String) + + ${fn:escapeXml(param:info)} + + + + + + Returns the index withing a string of the first occurrence of a specified substring. + + indexOf + org.apache.taglibs.standard.functions.Functions + int indexOf(java.lang.String, java.lang.String) + + ${fn:indexOf(name, "-")} + + + + + + Joins all elements of an array into a string. + + join + org.apache.taglibs.standard.functions.Functions + java.lang.String join(java.lang.String[], java.lang.String) + + ${fn:join(array, ";")} + + + + + + Returns the number of items in a collection, or the number of characters in a string. + + length + org.apache.taglibs.standard.functions.Functions + int length(java.lang.Object) + + You have ${fn:length(shoppingCart.products)} in your shopping cart. + + + + + + Returns a string resulting from replacing in an input string all occurrences + of a "before" string into an "after" substring. + + replace + org.apache.taglibs.standard.functions.Functions + java.lang.String replace(java.lang.String, java.lang.String, java.lang.String) + + ${fn:replace(text, "-", "•")} + + + + + + Splits a string into an array of substrings. + + split + org.apache.taglibs.standard.functions.Functions + java.lang.String[] split(java.lang.String, java.lang.String) + + ${fn:split(customerNames, ";")} + + + + + + Tests if an input string starts with the specified prefix. + + startsWith + org.apache.taglibs.standard.functions.Functions + boolean startsWith(java.lang.String, java.lang.String) + + <c:if test="${fn:startsWith(product.id, "100-")}"> + + + + + + Returns a subset of a string. + + substring + org.apache.taglibs.standard.functions.Functions + java.lang.String substring(java.lang.String, int, int) + + P.O. Box: ${fn:substring(zip, 6, -1)} + + + + + + Returns a subset of a string following a specific substring. + + substringAfter + org.apache.taglibs.standard.functions.Functions + java.lang.String substringAfter(java.lang.String, java.lang.String) + + P.O. Box: ${fn:substringAfter(zip, "-")} + + + + + + Returns a subset of a string before a specific substring. + + substringBefore + org.apache.taglibs.standard.functions.Functions + java.lang.String substringBefore(java.lang.String, java.lang.String) + + Zip (without P.O. Box): ${fn:substringBefore(zip, "-")} + + + + + + Converts all of the characters of a string to lower case. + + toLowerCase + org.apache.taglibs.standard.functions.Functions + java.lang.String toLowerCase(java.lang.String) + + Product name: ${fn.toLowerCase(product.name)} + + + + + + Converts all of the characters of a string to upper case. + + toUpperCase + org.apache.taglibs.standard.functions.Functions + java.lang.String toUpperCase(java.lang.String) + + Product name: ${fn.UpperCase(product.name)} + + + + + + Removes white spaces from both ends of a string. + + trim + org.apache.taglibs.standard.functions.Functions + java.lang.String trim(java.lang.String) + + Name: ${fn.trim(name)} + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/permittedTaglibs.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/permittedTaglibs.tld new file mode 100644 index 0000000..8c0c404 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/permittedTaglibs.tld @@ -0,0 +1,34 @@ + + + + + Restricts JSP pages to the JSTL tag libraries + + permittedTaglibs + 1.1 + permittedTaglibs + http://jakarta.apache.org/taglibs/standard/permittedTaglibs + + + + javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV + + + + Whitespace-separated list of taglib URIs to permit. This example + TLD for the Standard Taglib allows only JSTL 'el' taglibs to be + imported. + + permittedTaglibs + + http://java.sun.com/jsp/jstl/core + http://java.sun.com/jsp/jstl/fmt + http://java.sun.com/jsp/jstl/sql + http://java.sun.com/jsp/jstl/xml + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/scriptfree.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/scriptfree.tld new file mode 100644 index 0000000..62ceb43 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/scriptfree.tld @@ -0,0 +1,51 @@ + + + + + Validates JSP pages to prohibit use of scripting elements. + + 1.1 + scriptfree + http://jakarta.apache.org/taglibs/standard/scriptfree + + + + Validates prohibitions against scripting elements. + + + javax.servlet.jsp.jstl.tlv.ScriptFreeTLV + + + + Controls whether or not declarations are considered valid. + + allowDeclarations + false + + + + Controls whether or not scriptlets are considered valid. + + allowScriptlets + false + + + + Controls whether or not top-level expressions are considered valid. + + allowExpressions + false + + + + Controls whether or not expressions used to supply request-time + attribute values are considered valid. + + allowRTExpressions + false + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0-rt.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0-rt.tld new file mode 100644 index 0000000..c2fe525 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0-rt.tld @@ -0,0 +1,188 @@ + + + + 1.0 + 1.2 + sql_rt + http://java.sun.com/jstl/sql_rt + JSTL sql RT + JSTL 1.0 sql library + + + + org.apache.taglibs.standard.tlv.JstlSqlTLV + + + Provides core validation features for JSTL tags. + + + + + transaction + org.apache.taglibs.standard.tag.rt.sql.TransactionTag + JSP + + Provides nested database action elements with a shared Connection, + set up to execute all statements as one transaction. + + + dataSource + false + true + + + isolation + false + true + + + + + query + org.apache.taglibs.standard.tag.rt.sql.QueryTag + JSP + + Executes the SQL query defined in its body or through the + sql attribute. + + + var + true + false + + + scope + false + false + + + sql + false + true + + + dataSource + false + true + + + startRow + false + true + + + maxRows + false + true + + + + + update + org.apache.taglibs.standard.tag.rt.sql.UpdateTag + JSP + + Executes the SQL update defined in its body or through the + sql attribute. + + + var + false + false + + + scope + false + false + + + sql + false + true + + + dataSource + false + true + + + + + param + org.apache.taglibs.standard.tag.rt.sql.ParamTag + JSP + + Sets a parameter in an SQL statement to the specified value. + + + value + false + true + + + + + dateParam + org.apache.taglibs.standard.tag.rt.sql.DateParamTag + empty + + Sets a parameter in an SQL statement to the specified java.util.Date value. + + + value + true + true + + + type + false + true + + + + + setDataSource + org.apache.taglibs.standard.tag.rt.sql.SetDataSourceTag + empty + + Creates a simple DataSource suitable only for prototyping. + + + var + false + false + + + scope + false + false + + + dataSource + false + true + + + driver + false + true + + + url + false + true + + + user + false + true + + + password + false + true + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0.tld new file mode 100644 index 0000000..2f8a328 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql-1_0.tld @@ -0,0 +1,213 @@ + + + + 1.0 + 1.2 + sql + http://java.sun.com/jstl/sql + JSTL sql + JSTL 1.0 sql library + + + + org.apache.taglibs.standard.tlv.JstlSqlTLV + + + expressionAttributes + + transaction:dataSource + transaction:isolation + query:sql + query:dataSource + query:startRow + query:maxRows + update:sql + update:dataSource + param:value + dateParam:value + dateParam:type + setDataSource:dataSource + setDataSource:driver + setDataSource:url + setDataSource:user + setDataSource:password + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + transaction + org.apache.taglibs.standard.tag.el.sql.TransactionTag + JSP + + Provides nested database action elements with a shared Connection, + set up to execute all statements as one transaction. + + + dataSource + false + false + + + isolation + false + false + + + + + query + org.apache.taglibs.standard.tag.el.sql.QueryTag + JSP + + Executes the SQL query defined in its body or through the + sql attribute. + + + var + true + false + + + scope + false + false + + + sql + false + false + + + dataSource + false + false + + + startRow + false + false + + + maxRows + false + false + + + + + update + org.apache.taglibs.standard.tag.el.sql.UpdateTag + JSP + + Executes the SQL update defined in its body or through the + sql attribute. + + + var + false + false + + + scope + false + false + + + sql + false + false + + + dataSource + false + false + + + + + param + org.apache.taglibs.standard.tag.el.sql.ParamTag + JSP + + Sets a parameter in an SQL statement to the specified value. + + + value + false + false + + + + + dateParam + org.apache.taglibs.standard.tag.el.sql.DateParamTag + empty + + Sets a parameter in an SQL statement to the specified java.util.Date val +ue. + + + value + true + true + + + type + false + true + + + + + setDataSource + org.apache.taglibs.standard.tag.el.sql.SetDataSourceTag + empty + + Creates a simple DataSource suitable only for prototyping. + + + var + false + false + + + scope + false + false + + + dataSource + false + false + + + driver + false + false + + + url + false + false + + + user + false + false + + + password + false + false + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql.tld new file mode 100644 index 0000000..e53445b --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/sql.tld @@ -0,0 +1,289 @@ + + + + + JSTL 1.1 sql library + JSTL sql + 1.1 + sql + http://java.sun.com/jsp/jstl/sql + + + + Provides core validation features for JSTL tags. + + + org.apache.taglibs.standard.tlv.JstlSqlTLV + + + + + + Provides nested database action elements with a shared Connection, + set up to execute all statements as one transaction. + + transaction + org.apache.taglibs.standard.tag.rt.sql.TransactionTag + JSP + + +DataSource associated with the database to access. A +String value represents a relative path to a JNDI +resource or the parameters for the JDBC +DriverManager facility. + + dataSource + false + true + + + +Transaction isolation level. If not specified, it is the +isolation level the DataSource has been configured +with. + + isolation + false + true + + + + + + Executes the SQL query defined in its body or through the + sql attribute. + + query + org.apache.taglibs.standard.tag.rt.sql.QueryTag + JSP + + +Name of the exported scoped variable for the +query result. The type of the scoped variable is +javax.servlet.jsp.jstl.sql. +Result (see Chapter 16 "Java APIs"). + + var + true + false + + + +Scope of var. + + scope + false + false + + + +SQL query statement. + + sql + false + true + + + +Data source associated with the database to +query. A String value represents a relative path +to a JNDI resource or the parameters for the +DriverManager class. + + dataSource + false + true + + + +The returned Result object includes the rows +starting at the specified index. The first row of +the original query result set is at index 0. If not +specified, rows are included starting from the +first row at index 0. + + startRow + false + true + + + +The maximum number of rows to be included in +the query result. If not specified, or set to -1, no +limit on the maximum number of rows is +enforced. + + maxRows + false + true + + + + + + Executes the SQL update defined in its body or through the + sql attribute. + + update + org.apache.taglibs.standard.tag.rt.sql.UpdateTag + JSP + + +Name of the exported scoped variable for the result +of the database update. The type of the scoped +variable is java.lang.Integer. + + var + false + false + + + +Scope of var. + + scope + false + false + + + +SQL update statement. + + sql + false + true + + + +Data source associated with the database to update. +A String value represents a relative path to a JNDI +resource or the parameters for the JDBC +DriverManager class. + + dataSource + false + true + + + + + + Sets a parameter in an SQL statement to the specified value. + + param + org.apache.taglibs.standard.tag.rt.sql.ParamTag + JSP + + +Parameter value. + + value + false + true + + + + + + Sets a parameter in an SQL statement to the specified java.util.Date value. + + dateParam + org.apache.taglibs.standard.tag.rt.sql.DateParamTag + empty + + +Parameter value for DATE, TIME, or +TIMESTAMP column in a database table. + + value + true + true + + + +One of "date", "time" or "timestamp". + + type + false + true + + + + + + Creates a simple DataSource suitable only for prototyping. + + setDataSource + org.apache.taglibs.standard.tag.rt.sql.SetDataSourceTag + empty + + +Name of the exported scoped variable +for the data source specified. Type can +be String or DataSource. + + var + false + false + + + +If var is specified, scope of the +exported variable. Otherwise, scope of +the data source configuration variable. + + scope + false + false + + + +Data source. If specified as a string, it +can either be a relative path to a JNDI +resource, or a JDBC parameters string +as defined in Section 10.1.1. + + dataSource + false + true + + + +JDBC parameter: driver class name. + + driver + false + true + + + +JDBC parameter: URL associated with +the database. + + url + false + true + + + +JDBC parameter: database user on +whose behalf the connection to the +database is being made. + + user + false + true + + + +JDBC parameter: user password + + password + false + true + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0-rt.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0-rt.tld new file mode 100644 index 0000000..e7062b7 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0-rt.tld @@ -0,0 +1,256 @@ + + + + 1.0 + 1.2 + x_rt + http://java.sun.com/jstl/xml_rt + JSTL XML RT + JSTL 1.0 XML library + + + + org.apache.taglibs.standard.tlv.JstlXmlTLV + + + Provides validation features for JSTL XML tags. + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + out + org.apache.taglibs.standard.tag.rt.xml.ExprTag + empty + + Like <%= ... >, but for XPath expressions. + + + select + true + false + + + escapeXml + false + true + + + + + if + org.apache.taglibs.standard.tag.common.xml.IfTag + JSP + + XML conditional tag, which evalutes its body if the + supplied XPath expression evalutes to 'true' as a boolean + + + select + true + false + + + var + false + false + + + scope + false + false + + + + + forEach + org.apache.taglibs.standard.tag.common.xml.ForEachTag + JSP + + XML iteration tag. + + + var + false + false + + + select + true + false + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.rt.xml.ParamTag + JSP + + Adds a parameter to a containing 'transform' tag's Transformer + + + name + true + true + + + value + false + true + + + + + parse + org.apache.taglibs.standard.tag.rt.xml.ParseTag + org.apache.taglibs.standard.tei.XmlParseTEI + JSP + + Parses XML content from 'source' attribute or 'body' + + + var + false + false + + + varDom + false + false + + + scope + false + false + + + scopeDom + false + false + + + xml + false + true + + + systemId + false + true + + + filter + false + true + + + + + set + org.apache.taglibs.standard.tag.common.xml.SetTag + empty + + Saves the result of an XPath expression evaluation in a 'scope' + + + var + true + false + + + select + false + false + + + scope + false + false + + + + + transform + org.apache.taglibs.standard.tag.rt.xml.TransformTag + org.apache.taglibs.standard.tei.XmlTransformTEI + JSP + + Conducts a transformation given a source XML document + and an XSLT stylesheet + + + var + false + false + + + scope + false + false + + + result + false + true + + + xml + false + true + + + xmlSystemId + false + true + + + xslt + false + true + + + xsltSystemId + false + true + + + + + when + org.apache.taglibs.standard.tag.common.xml.WhenTag + JSP + + Subtag of <choose> that includes its body if its + expression evalutes to 'true' + + + select + true + false + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0.tld new file mode 100644 index 0000000..2237ccb --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x-1_0.tld @@ -0,0 +1,273 @@ + + + + 1.0 + 1.2 + x + http://java.sun.com/jstl/xml + JSTL XML + JSTL 1.0 XML library + + + + org.apache.taglibs.standard.tlv.JstlXmlTLV + + + expressionAttributes + + out:escapeXml + parse:xml + parse:systemId + parse:filter + transform:xml + transform:xmlSystemId + transform:xslt + transform:xsltSystemId + transform:result + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + out + org.apache.taglibs.standard.tag.el.xml.ExprTag + empty + + Like <%= ... >, but for XPath expressions. + + + select + true + false + + + escapeXml + false + false + + + + + if + org.apache.taglibs.standard.tag.common.xml.IfTag + JSP + + XML conditional tag, which evalutes its body if the + supplied XPath expression evalutes to 'true' as a boolean + + + select + true + false + + + var + false + false + + + scope + false + false + + + + + forEach + org.apache.taglibs.standard.tag.common.xml.ForEachTag + JSP + + XML iteration tag. + + + var + false + false + + + select + true + false + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.el.xml.ParamTag + JSP + + Adds a parameter to a containing 'transform' tag's Transformer + + + name + true + false + + + value + false + false + + + + + parse + org.apache.taglibs.standard.tag.el.xml.ParseTag + org.apache.taglibs.standard.tei.XmlParseTEI + JSP + + Parses XML content from 'source' attribute or 'body' + + + var + false + false + + + varDom + false + false + + + scope + false + false + + + scopeDom + false + false + + + xml + false + false + + + systemId + false + false + + + filter + false + false + + + + + set + org.apache.taglibs.standard.tag.common.xml.SetTag + empty + + Saves the result of an XPath expression evaluation in a 'scope' + + + var + true + false + + + select + false + false + + + scope + false + false + + + + + transform + org.apache.taglibs.standard.tag.el.xml.TransformTag + org.apache.taglibs.standard.tei.XmlTransformTEI + JSP + + Conducts a transformation given a source XML document + and an XSLT stylesheet + + + var + false + false + + + scope + false + false + + + result + false + false + + + xml + false + false + + + xmlSystemId + false + false + + + xslt + false + false + + + xsltSystemId + false + false + + + + + when + org.apache.taglibs.standard.tag.common.xml.WhenTag + JSP + + Subtag of <choose> that includes its body if its + expression evalutes to 'true' + + + select + true + false + + + + diff --git a/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x.tld b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x.tld new file mode 100644 index 0000000..e52ffe8 --- /dev/null +++ b/workspace/webapps/WEB-INF/lib/jakarta-taglibs-standard-1.1.2/tld/x.tld @@ -0,0 +1,448 @@ + + + + + JSTL 1.1 XML library + JSTL XML + 1.1 + x + http://java.sun.com/jsp/jstl/xml + + + + Provides validation features for JSTL XML tags. + + + org.apache.taglibs.standard.tlv.JstlXmlTLV + + + + + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + + + + Like <%= ... >, but for XPath expressions. + + out + org.apache.taglibs.standard.tag.rt.xml.ExprTag + empty + + +XPath expression to be evaluated. + + select + true + false + + + +Determines whether characters <,>,&,'," in the +resulting string should be converted to their +corresponding character entity codes. Default +value is true. + + escapeXml + false + true + + + + + + XML conditional tag, which evalutes its body if the + supplied XPath expression evalutes to 'true' as a boolean + + if + org.apache.taglibs.standard.tag.common.xml.IfTag + JSP + + +The test condition that tells whether or not the +body content should be processed. + + select + true + false + + + +Name of the exported scoped variable for the +resulting value of the test condition. The type +of the scoped variable is Boolean. + + var + false + false + + + +Scope for var. + + scope + false + false + + + + + + XML iteration tag. + + forEach + org.apache.taglibs.standard.tag.common.xml.ForEachTag + JSP + + +Name of the exported scoped variable for the +current item of the iteration. This scoped variable +has nested visibility. Its type depends on the +result of the XPath expression in the select +attribute. + + var + false + false + + + +XPath expression to be evaluated. + + select + true + false + + + +Iteration begins at the item located at the +specified index. First item of the collection has +index 0. + + begin + false + true + int + + + +Iteration ends at the item located at the specified +index (inclusive). + + end + false + true + int + + + +Iteration will only process every step items of +the collection, starting with the first one. + + step + false + true + int + + + +Name of the exported scoped variable for the +status of the iteration. Object exported is of type +javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped variable has nested visibility. + + varStatus + false + false + + + + + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + + + + Adds a parameter to a containing 'transform' tag's Transformer + + param + org.apache.taglibs.standard.tag.rt.xml.ParamTag + JSP + + +Name of the transformation parameter. + + name + true + true + + + +Value of the parameter. + + value + false + true + + + + + + Parses XML content from 'source' attribute or 'body' + + parse + org.apache.taglibs.standard.tag.rt.xml.ParseTag + org.apache.taglibs.standard.tei.XmlParseTEI + JSP + + +Name of the exported scoped variable for +the parsed XML document. The type of the +scoped variable is implementation +dependent. + + var + false + false + + + +Name of the exported scoped variable for +the parsed XML document. The type of the +scoped variable is +org.w3c.dom.Document. + + varDom + false + false + + + +Scope for var. + + scope + false + false + + + +Scope for varDom. + + scopeDom + false + false + + + +Deprecated. Use attribute 'doc' instead. + + xml + false + true + + + +Source XML document to be parsed. + + doc + false + true + + + +The system identifier (URI) for parsing the +XML document. + + systemId + false + true + + + +Filter to be applied to the source +document. + + filter + false + true + + + + + + Saves the result of an XPath expression evaluation in a 'scope' + + set + org.apache.taglibs.standard.tag.common.xml.SetTag + empty + + +Name of the exported scoped variable to hold +the value specified in the action. The type of the +scoped variable is whatever type the select +expression evaluates to. + + var + true + false + + + +XPath expression to be evaluated. + + select + false + false + + + +Scope for var. + + scope + false + false + + + + + + Conducts a transformation given a source XML document + and an XSLT stylesheet + + transform + org.apache.taglibs.standard.tag.rt.xml.TransformTag + org.apache.taglibs.standard.tei.XmlTransformTEI + JSP + + +Name of the exported +scoped variable for the +transformed XML +document. The type of the +scoped variable is +org.w3c.dom.Document. + + var + false + false + + + +Scope for var. + + scope + false + false + + + +Result +Object that captures or +processes the transformation +result. + + result + false + true + + + +Deprecated. Use attribute +'doc' instead. + + xml + false + true + + + +Source XML document to be +transformed. (If exported by +<x:set>, it must correspond +to a well-formed XML +document, not a partial +document.) + + doc + false + true + + + +Deprecated. Use attribute +'docSystemId' instead. + + xmlSystemId + false + true + + + +The system identifier (URI) +for parsing the XML +document. + + docSystemId + false + true + + + +javax.xml.transform.Source +Transformation stylesheet as +a String, Reader, or +Source object. + + xslt + false + true + + + +The system identifier (URI) +for parsing the XSLT +stylesheet. + + xsltSystemId + false + true + + + + + + Subtag of <choose> that includes its body if its + expression evalutes to 'true' + + when + org.apache.taglibs.standard.tag.common.xml.WhenTag + JSP + + +The test condition that tells whether or +not the body content should be +processed + + select + true + false + + + + diff --git a/workspace/webapps/WEB-INF/lib/jstl.jar b/workspace/webapps/WEB-INF/lib/jstl.jar new file mode 100644 index 0000000..a02abec Binary files /dev/null and b/workspace/webapps/WEB-INF/lib/jstl.jar differ diff --git a/workspace/webapps/WEB-INF/lib/standard.jar b/workspace/webapps/WEB-INF/lib/standard.jar new file mode 100644 index 0000000..bc528ac Binary files /dev/null and b/workspace/webapps/WEB-INF/lib/standard.jar differ diff --git a/workspace/webapps/WEB-INF/tld/librairie.tld b/workspace/webapps/WEB-INF/tld/librairie.tld new file mode 100644 index 0000000..548f131 --- /dev/null +++ b/workspace/webapps/WEB-INF/tld/librairie.tld @@ -0,0 +1,14 @@ + + + +Description de ma libraire de balises simples. +1.0 +LibrairieDeBase +/LibrairieBalise + + Affichage du nom et mot de passe de l'utilisateur + afficheutilisateur + balise.afficheutilisateur + empty + + diff --git a/workspace/webapps/WEB-INF/web.xml b/workspace/webapps/WEB-INF/web.xml new file mode 100644 index 0000000..a0a107c --- /dev/null +++ b/workspace/webapps/WEB-INF/web.xml @@ -0,0 +1,64 @@ + + + + + + Bienvenue sur I comme Herse + Boutique de vente par correspondance + + + + + boutique + ServletController + Controleur de servlets + Ma première servlet + + + + boutique + /connexion + + + + + Toutes les pages + *.jsp + UTF-8 + /includes/entete.jsp + /includes/enqueue.jsp + + + + diff --git a/workspace/webapps/includes/enqueue.jsp b/workspace/webapps/includes/enqueue.jsp new file mode 100644 index 0000000..fb4d749 --- /dev/null +++ b/workspace/webapps/includes/enqueue.jsp @@ -0,0 +1,6 @@ + + +

    Propulsé par J2EE sur Tomcat5, écrit à l'aide de VIM

    + + + diff --git a/workspace/webapps/includes/entete.jsp b/workspace/webapps/includes/entete.jsp new file mode 100644 index 0000000..9b52827 --- /dev/null +++ b/workspace/webapps/includes/entete.jsp @@ -0,0 +1,28 @@ + + + +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + I comme Herse + + + +
    + +

    I, comme Herse

    + + + +
    diff --git a/workspace/webapps/index.jsp b/workspace/webapps/index.jsp new file mode 100644 index 0000000..7210e84 --- /dev/null +++ b/workspace/webapps/index.jsp @@ -0,0 +1 @@ +

    Ceci est du contenu

    diff --git a/workspace/webapps/public/css/peinture.css b/workspace/webapps/public/css/peinture.css new file mode 100644 index 0000000..45b68ed --- /dev/null +++ b/workspace/webapps/public/css/peinture.css @@ -0,0 +1,116 @@ +body, html { + width: 100%; + height: 100%; + margin: 0; + padding: 0; +} + +div#contenu_principal { + width: 100%; + height: 100%; + margin: 0; + padding: 0; + background-color: black; + color: orange; +} + +div#contenu_principal div#tete { + width: 100%; + height: 70px; + margin: 0; + position: absolute; + top: 0; + left: 0; + background-color: #00bb00; + color: white; + text-align: center; +} + +div#contenu_principal div#tete h1 { + margin: 0; + position: absolute; + left: 22%; + top: 22%; + color: lightgreen; +} + +div#contenu_principal div#tete h1:after { + display: block; + margin-top: -1.15em; + margin-left: -0.1em; + color: green; + content: attr(title); +} + +div#contenu_principal div#menu { + position: absolute; + width: 100%; + height: 25px; + margin: 0; + padding: 0; + top: 70px; + left: 0; + background-color: lightblue; +} + +div#contenu_principal div#menu ul#menu_principal +{ + height: 25px ; + margin: 0 ; + padding: 0 ; + background-color: #009933; + list-style-type: none ; +} + +div#contenu_principal div#menu ul#menu_principal li +{ + float: left ; + text-align: center ; +} + +div#contenu_principal div#menu ul#menu_principal li a +{ + width: 125px ; + line-height: 25px ; + font-size: 1.2em ; + font-weight: bold ; + letter-spacing: 2px ; + color: #fff ; + display: block ; + text-decoration: none ; + border-right: 2px solid #8BB18B ; +} + +div#contenu_principal div#menu ul#menu_principal li a:hover +{ + color: #AFCAAF; + background-color: #ceb; +} + +div#contenu_principal div#contenu_secondaire { + width: 100%; + height: auto; + margin: 0; + padding: 0; + position: absolute; + top: 95px; + right: 0; + color: green; + overflow: auto; +} + +div#contenu_principal div#pied { + width: auto; + height: 15px; + margin: -14px 0 0 0; + padding-right: 3px; + position: absolute; + top: 70px; + right: 0; + color: green; +} + +div#contenu_principal div#pied p { + margin: 0; + font-size: 13px; +} diff --git a/workspace/webapps/test.agi b/workspace/webapps/test.agi new file mode 100644 index 0000000..a1dc69b --- /dev/null +++ b/workspace/webapps/test.agi @@ -0,0 +1 @@ +Bah voilà quoi diff --git a/workspace/webapps/vues/contenuPanier.jsp b/workspace/webapps/vues/contenuPanier.jsp new file mode 100644 index 0000000..192da55 --- /dev/null +++ b/workspace/webapps/vues/contenuPanier.jsp @@ -0,0 +1,69 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + + + + + + + Contenu du Panier + + + +

    Contenu du Panier

    +

    + + + + + + + + + + + + + + + + + + + + +
    DescriptionComplmntPanier
    + + + + + + + + + + + + + + + + + + +
    Référence : ${artRef.ref}
    Marque : ${artRef.marque}
    Modèle : ${artRef.modele}
    Description : ${artRef.description}
    Prix : ${artRef.prix}
    +
    + Quantit : ${artRef.quantite} + + ajouter au panier +
    + +
    + + Continuez vos achats + + diff --git a/workspace/webapps/vues/listeArticles.jsp b/workspace/webapps/vues/listeArticles.jsp new file mode 100644 index 0000000..d9e4398 --- /dev/null +++ b/workspace/webapps/vues/listeArticles.jsp @@ -0,0 +1,58 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> + + + + + + + + Contenu du Panier + + + +

    Liste des articles

    +

    + + + + + + + + + + + + + + + +
    DescriptionComplment
    + + + + + + + + + + + + + + + + + + +
    Référence : ${artRef.ref}
    Marque : ${artRef.marque}
    Modèle : ${artRef.modele}
    Description : ${artRef.description}
    Prix : ${artRef.prix}
    +
    + infos +
    + + + \ No newline at end of file diff --git a/workspace/webapps/vues/loginForm.jsp b/workspace/webapps/vues/loginForm.jsp new file mode 100644 index 0000000..e9b3e68 --- /dev/null +++ b/workspace/webapps/vues/loginForm.jsp @@ -0,0 +1,12 @@ +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + +

    Authentification

    +

    + + + + "/>
    + + "/>
    + + diff --git a/workspace/webapps/vues/panierVide.jsp b/workspace/webapps/vues/panierVide.jsp new file mode 100644 index 0000000..b043b41 --- /dev/null +++ b/workspace/webapps/vues/panierVide.jsp @@ -0,0 +1,20 @@ +<%@page contentType="text/html" %> +<%@page pageEncoding="UTF-8" %> +<%@page language="java" %> + + + + + + + + Panier + + + +

    Panier

    +

    panier vide

    + Continuez vos achats + + \ No newline at end of file diff --git a/workspace/webapps/vues/salut.jsp b/workspace/webapps/vues/salut.jsp new file mode 100644 index 0000000..a4311b4 --- /dev/null +++ b/workspace/webapps/vues/salut.jsp @@ -0,0 +1,6 @@ +<%@ taglib prefix="balise" uri="/WEB-INF/tld/librairie.tld" %> + +<% +String identifiant = request.getParameter("id"); +out.println("Votre identifiant est: " + identifiant); +%>